灯珠CCD或CMOS成像RGB数据 光谱重建

1. 源由

本文主要为了通过摄像头CCD或者CMOS传感器对灯珠成像数据分析、重建灯珠可见光范围光谱数据的研究,从原理和方法上论证可行性。

随着照明技术迅猛发展,LED技术日渐成熟。LED产品由于具备经久耐用、节能且价格低等优势,已成为照明行业的绝对力量,被广泛应用于生活及工作的方方面面,与人们如影随形,密不可分。
近日,医学专家担忧LED蓝光会对视网膜造成损害,甚至是失明。早在1966年Nell等研究发现蓝光的照射可以引起视网膜细胞的损伤,导致视力下降甚至丧失。其中,波长400-460纳米之间的短波蓝光对视网膜的危害程度最大。在2010年国际光协会年会中,世界顶尖光学专家一致指出:短波蓝光具有极高能量,能够穿透晶状体直达视网膜。蓝光照射视网膜会产生自由基,而这些自由基会导致视网膜色素上皮细胞衰亡,上皮细胞的衰亡会导致光敏感细胞缺少养分从而引起视力损伤,而且这些损伤是不可逆的。
蓝光对人眼的危害,主要表现在导致近视、白内障以及黄斑病变的眼睛病理危害和人体节律危害。

  • 损结构:有害蓝光具有极高能量,能够穿透晶状体直达视网膜,引起视网膜色素上皮细胞的萎缩甚至死亡。光敏感细胞的死亡将会导致视力下降甚至完全丧失,这种损坏是不可逆的。蓝光还会导致黄斑病变。人眼中的晶状体会吸收部分蓝光渐渐混浊形成白内障,而大部份的蓝光会穿透晶状体,尤其是儿童晶状体较清澈,无法有效抵挡蓝光,从而更容易导致黄斑病变以及白内障。
  • 视疲劳:由于蓝光波长短,聚焦点并不是落在视网膜中心位置,而是离视网膜更靠前一点的位置。要想看清楚,眼球会长时间处于紧张状态,引起视疲劳。长时间视觉疲劳,可能导致人们近视加深、出现复视、阅读时易串行、注意力无法集中等症状,影响正常学习与工作。
  • 睡不好:蓝光会抑制褪黑色素的分泌。褪黑色素是影响睡眠的一种重要激素,是促进睡眠、调节时差。

按照现行的国内外标准GB/T 20145-2006/CIE S009/E:2002和CTL-0744_2009-laser决议,对各类LED照明产品进行的光生物安全的检测及评判结果,并且较客观地分析了目前我国LED照明产品的蓝光危害的实际情况。
鉴于光谱采集和分析设备具有专业化程度高,价格成本高,且通常在专业实验室或者研究机构。本文从日常环境入手,期望通过具备CCD或CMOS的设备(比如:手机,摄像头等)进行光源(灯珠)成像数据逆向重构光谱,进而由光谱数据对光源(灯珠)健康指数进行量化评估。

2. CCD和CMOS传感器结构和原理

CCD/CMOS作为记录光线变化的半导体,通常以百万像素〈megapixel〉为单位。规格中的多少百万像素,指的就是CCD/CMOS的解析度,也代表着有多少感光元件。
CCD/CMOS传感器是当前被普遍采用的两种图像传感器,两者都是利用感光二极管(photodiode)进行光电转换,将图像转换为数字数据,而其主要差异是数字数据传送的方式不同。 这种转换的原理与 “太阳能电池”效应相近,光线越强、电力越强;反之,光线越弱、电力也越弱的道理,将光影像转换为电子数字信号。

在这里插入图片描述

CCD 和 CMOS 在结构上,ADC的位置和数量是最大的不同。简单的说,CCD每曝光一次,在快门关闭后进行像素转移处理,将每一行中每一个像素(pixel)的电荷信号依序传入“缓冲器”中,由底端的线路引导输出至 CCD 旁的放大器进行放大,再串联 ADC 输出;相对地,CMOS 的设计中每个像素旁就直接连着 ADC(放大兼类比数字信号转换器),讯号直接放大并转换成数字信号。
由于构造上的基本差异,两者在性能上的表现之不同。CCD的特色在于充分保持信号在传输时不失真(专属通道设计),透过每一个像素集合至单一放大器上再做统一处理,可以保持资料的完整性;CMOS的制程较简单,没有专属通道的设计,因此必须先行放大再整合各个像素的资料。

3. 相机工作原理

光线照射在物体上面,形成反射;反射光线进入镜头(通过光圈、透镜、棱镜等光学器件)照射在CCD/CMOS芯片的感光微观结构上,通过光电效应产生电子,进而形成电流,产生电压。在曝光结束后,每个微观结构所形成的电压从CCD/CMOS芯片中读取,并由相机内部处理器处理,生成数字图像。
根据CCD/CMOS传感器结构和工作原理,CCD/CMOS是感知光线中的光子,当微观粒子光子撞击微观结构通过光电效应转换成电子,而光子和电子的数目互成比例,从而进行量化转换。

3.1 单色相机

由于单色相机只感知光的强度,因此每个像素只有一个电压信号,最终产生的一张和亮度相关的灰度数字图像。而实际上很多工业相机以及实验室光谱仪采用的也都是类似工作原理,只是在CCD/CMOS前端有较多的光学设备(滤镜,棱镜等)。

在这里插入图片描述

3.2 彩色相机

由于彩色相机每个像素具备红绿蓝三色分量,因此最终获取到的是三个电压信号,记录三种颜色,最终形成一张RGB彩色图片。
从原理的角度,可以采用分光棱镜将RGB三个基本色分开,通过3个CCD/CMOS分别记录,然后再将RGB数据合成。鉴于该方法需要较多光学设备和传感器,通常彩色相机采用只含红绿蓝三色的马赛克滤镜,再加上对其输出信号的处理算法发,就可以实现一个CCD/CMOS记录彩色图像数字信号。这个设计理念最初有拜耳(Bayer)先生提出,这种滤镜也被称作拜耳滤镜。
该滤镜的色彩搭配形式为:一行使用蓝绿元素,下一行使用红绿元素,如此交替;换言之,每4个像素中有2个绿色分量感光,另外两个像素中,一个对蓝色感光,一个对红色感光。由于滤镜具有天生的传感器微观几何位置的误差,与期望的每个像素含有3种颜色(RGB)所矛盾,就需要做色彩空间插值法处理,目前最为成熟的色彩插值算法也会在图片中产生低通效应。从价格成本的考虑,上述常用单CCD/CMOS方案相比3CCD/CMOS方案生成图像更加模糊,精度不高的问题。

在这里插入图片描述

4. CIE1931RGB真实三原色表色原理

CIE1931RGB真实三原色表色原理
国际照明委员会(CIE)规定红、绿、蓝三原色的波长分别为700nm、546.1nm、435.8nm,在颜色匹配实验中,当这三原色光的相对亮度比例为1.0000:4.5907:0.0601时就能匹配出等能白光,所以CIE选取这一比例作为红、绿、蓝三原色的单位量,即(R):(G):(B)=1:1:1。尽管这时三原色的亮度值并不等,但CIE却把每一原色的亮度值作为一个单位看待,所以色光加色法中红、绿、蓝三原色光等比例混合结果为白光,即(R)+(G)+(B)=(W)。
把两个颜色调整到视觉相同的方法叫颜色匹配,颜色匹配实验是利用色光加色来实现的。下图中左方是一块白色屏幕,上方为红R、绿G、蓝B三原色光,下方为待配色光C,三原色光照射白屏幕的上半部,待配色光照射白屏幕的下半部,白屏幕上下两部分用一黑挡屏隔开,由白屏幕反射出来的光通过小孔抵达右方观察者的眼内。人眼看到的视场如图右下方所示,视场范围在2°左右,被分成两部分。图右上方还有一束光,照射在小孔周围的背景白版上,使视场周围有一圈色光做为背景。在此实验装置上可以进行一系列的颜色匹配实验。待配色光可以通过调节上方三原色的强度来混合形成,当视场中的两部分色光相同时,视场中的分界线消失,两部分合为同一视场,此时认为待配色光的光色与三原色光的混合光色达到色匹配。不同的待配色光达到匹配时三原色光亮度不同,可用颜色方程表示:

C = r ( R ) + g ( G ) + b ( B ) C= r(R) + g(G) + b(B) C=rR+gG+bB

式中C 表示待配色光;(R)、(G)、(B)代表产生混合色的红、绿、蓝三原色的单位量;r、g、b分别为匹配待配色所需要的红、绿、蓝三原色的数量,称为三刺激值;“o”表示视觉上相等,即颜色匹配。

在这里插入图片描述
颜色匹配实验 颜色匹配实验 颜色匹配实验

5. LED灯珠样品和太阳光光谱数据

在这里插入图片描述阳光健康全光谱特性:

  • 光谱连续性更好;
  • 更接近自然光(太阳地表辐射光谱);
  • 不含高能量短波的紫光成分。

在这里插入图片描述 太阳辐射光谱 太阳辐射光谱 太阳辐射光谱

6. CCD/CMOS成像数据光谱分析

借鉴上述CIE1931RGB比色原理,采用RGB单色基础光谱作为三种基础光谱,根据灯珠样品RGB成像CCD/CMOS数据,对三种基础光谱进行加权叠加,重建灯珠样品的光谱数据。
通过类似CIE1931比色原理和专利【1】上均由有相关可行性描述。在精度、准度要求不高,从补充经验信息和定性分析的角度,可以作为一种基于经验的大数据健康光谱数据评估方法。

具体步骤如下:

  1. 建立各单色基础光谱数据;
  2. 搭建标准化拍摄照明环境;
  3. 设定好彩色数码相机各项拍摄参数;
  4. 拍摄暗电流噪声RGB图像;
  5. 拍摄各单色基础样品RGB图像;
  6. 对各单色基础样品RGB图像的暗电流噪声和不均匀性进行校准;
  7. 建立各单色基础样品RGB图像(对光谱数据)响应值;
  8. 拍摄训练样本RGB图像;
  9. 对训练样本RGB图像的暗电流噪声和不均匀性进行校准;
  10. 提取训练样本RGB图像(对光谱数据)响应值;
  11. 拍摄重建样本RGB图像;
  12. 对重建样本RGB图像的暗电流噪声和不均匀性进行校准;
  13. 计算重建样本RGB图像(对光谱数据)响应值;
  14. 评估真实光谱数据与重建光谱数据差异;

专业方面考虑如下:

  1. 评估真实光谱数据与重建光谱数据差异的有效算法;
  2. RGB图像与各单色基础光谱数据响应模型;
  3. 环境因素(非标场景:室内,室外等)对响应模型的影响;
  4. 模型收敛最终判定依据和有效样本数问题(大数据分析);

7. CCD/CMOS成像数据光谱风险评估

鉴于光谱数据直接来源于光本身特性,传统检测手法采用将光从频域空间经过棱镜转换到空间域上进行信息采集。目前通过RGB重建光谱,学术界及工业界均尚未提出合理有效解决方法【1】的情况下,逆向重建光谱存在精度、准度和数据一致性的问题。
当采用CCD/CMOS相机通过RGB数据伪逆方法求解和重建光谱数据,存在以下不精确性风险:

  1. 技术角度来说,该方法导致熵增加(信息丢失)问题,不可克服;
  2. CMOS传感器存在光电感应单元ADC不统一而信息不一致问题;
  3. 通常相机RGB滤镜存在几何上的数据不一致问题;
    报告是在欠缺实验数据和缺少专业考虑点(文献)的情况下进行,存在技术奇点(比如:真实光谱数据与重建光谱数据差异的有效算法、RGB图像与各单色基础光谱数据响应模型、环境因素(非标场景:室内,室外等)对响应模型的影响、大数据分析问题)

从充要条件的逻辑思路分析:材料物理学所给出的光谱数据与CCD/CMOS相机中RGB数据逆向求解光谱数据之间的关系属于充分条件。换言之,材料物理学所给出的光谱数据可以演绎出CCD/CMOS相机中RGB数据逆向求解光谱数据;反之,则不然。这里存在一个典型的信息缺失问题,因而从大数据分析角度,如果逆向求解存在可行性,材料物理理论模型以及实验室数据对于逆向求解具有关键意义。

8. 参考资料

【1】一种基于彩色数码相机单幅RGB图像的光谱重建方法,专利申请号:CN201710222003.3,公开(公告)号:CN106896069B

9. 附录一:充分条件、必要条件和充分必要条件

假设有两个条件a和b:

  • “充分条件”是a演绎b;
  • “必要条件”是b演绎a;
  • “充分必要条件”是a可以演绎b,b也可以演绎a。

充分条件、必要条件和充分必要条件的区别:在于范围、逻辑推理和相互推理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3030895.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

python中的数据可视化:二维直方图 hist2d()

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 python中的数据可视化: 二维直方图 hist2d() 选择题 关于以下代码输出结果的说法中正确的是? import matplotlib.pyplot as plt import numpy as np x np.random.normal(0, 1, …

如何打开远程桌面连接?

远程桌面连接是一项强大的功能,它允许我们远程访问其他计算机,并在远程计算机上进行操作。这对于远程办公、技术支持和远程培训等场景非常有用。本文将介绍如何在不同操作系统中打开远程桌面连接。 Windows系统 在Windows操作系统中,打开远程…

【动态规划】子数组、子串系列II|等差数列划分|最长湍流子数组|单词拆分|环绕字符串中唯一的子字符串

一、等差数列划分 413. 等差数列划分 算法原理 💡细节: 1.如果当前nums数组中i位置的数和前面两个数可以构成等差数列,那么当前位置所有子数组构成的等差数列个数dp[i]就等于前一个位置有子数组构成的等差数列个数1(这个1代表增加…

【Qt 学习笔记】Qt常用控件 | 多元素控件 | Table Widget的说明及介绍

博客主页:Duck Bro 博客主页系列专栏:Qt 专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ Qt常用控件 | 多元素控件 | Table Widget的说明及介绍 文章编号&#…

Java面试——MyBatis

优质博文:IT-BLOG-CN 一、MyBatis 与 JDBC 的区别 【1】JDBC 是 Java 提供操作数据库的 API;MyBatis 是一个持久层 ORM 框架,底层是对 JDBC 的封装。 【2】使用 JDBC 需要连接数据库,注册驱动和数据库信息工作量大,每…

【C++】CentOS环境搭建-快速升级G++版本

【C】CentOS环境搭建-快速升级G版本 1. 安装CentOS的软件集仓库:2. 安装你想要的devtoolset版本,例如devtoolset-9:3. 启用新版本的编译器:4. 检查G版本: 在CentOS系统中升级G编译器通常涉及使用devtoolset或者SCL&…

为什么要学Python?学Python有什么用?

为什么要学Python?学Python有什么用? 在当今的数字化时代,编程已成为一项宝贵的技能。Python,作为一种流行的编程语言,因其易于学习和强大的功能而受到全球开发者的青睐。本文将探讨学习Python的原因和它的实际应用&am…

【组合博弈】介绍

本文为学习笔记,详细内容参考"Lessons in Play,Michael H. Albert Richard J. Nowakowski David Wolfe" 文章目录 组合博弈介绍(Combinatorial Games)DOMINEERING游戏组合游戏选手介绍Options博弈树(game tree) 组合博弈介绍(Combi…

基于SSM框架多人命题系统

采用技术 基于SSM框架多人命题系统的设计与实现~ 开发语言:Java 数据库:MySQL 技术:SpringMVCMyBatis 工具:IDEA/Ecilpse、Navicat、Maven 页面展示效果 学生端 登录 个人中心 公告信息 试题信息 管理员 登录 个人信息…

苹果M4芯片:推动AI时代的革新力量

随着科技的飞速发展,苹果公司一直以其创新精神引领着行业潮流。其中,M4芯片的推出无疑是苹果在人工智能领域迈出的重要一步。这款专为机器学习和AI计算而设计的芯片,不仅在新款iPad Pro等消费电子产品上亮相,更是预示着苹果即将开…

【linux】vmtouch文件缓存管理工具

目录 vmtouch简介 用法 例子 统计文件或者目录在缓存中的记录 缓存文件到内存 其他类似工具 vmtouch简介 vmtouch是用c语言编写的文件缓存管理工具,适用用于所有类Unix系统。 作用: 1,查看文件系统缓存情况 2,将文件或目…

JUC下CountDownLatch详解

详细介绍 CountDownLatch是Java并发包java.util.concurrent中提供的一个同步工具类,它允许一个或多个线程等待其他线程完成操作后再继续执行。这个工具类基于一个计数器,计数器的初始值可以由构造函数设定。线程调用countDown()方法会将计数器减1&#x…

Spring Framework-简介

Spring Framework Java Spring是一个开源的Java应用框架,它的主要目的是简化企业级应用开发的复杂性。Spring框架为开发者提供了许多基础功能,使得开发者能够更专注于业务逻辑的实现,而不是底层的细节。 主要特点和功能: 控制反…

Java设计模式 _行为型模式_命令模式

一、命令模式 1、命令模式 命令模式(Command Pattern)是一种行为型模式,一种数据驱动的设计模式。命令模式中请求以命令的形式包裹在对象中,即将命令封装为类,从而可以使用不同的请求,队列等操作具体的对象…

基于STM32移植lvgl(V8.2)(SPI接口的LCD)

目录 概述 1 认识LVGL 1.1 LVGL官网 1.2 LVGL库文件下载 2 认识SPI接口型LCD 2.1 PIN引脚定义 2.2 MCU IO与LCD PIN对应关系 3 实现LCD驱动 3.1 使用STM32Cube配置Project 3.2 STM32Cube生成工程 4 移植LVGL 4.1 准备移植文件 4.2 添加lvgl库文件到项目 4.2.1 src下…

信息系统项目管理师0101:项目建议与立项申请(7项目立项管理—7.1项目建议与立项申请)

点击查看专栏目录 文章目录 第七章 项目立项管理7.1项目建议与立项申请1.立项申请概念2.项目建议书内容记忆要点总结第七章 项目立项管理 项目立项管理是对拟规划和实施的项目技术上的先进性、适用性,经济上的合理性、效益性,实施上的可能性、风险性以及社会价值的有效性、可…

今日总结2024/5/10

今日复习01背包,完全背包,多重背包DP,以及多重背包优化 01背包 每个物品只能选一次,可以选或不选 f[i,j]表示选到前i个物品体积不超过j的最大价值 状态转移方程为f[i][j]max(f[i-1][j],f[i-1][j-v[i]]w[i]) 优化空间采用滚动数组,从大到小枚举体积即可 完全背…

14:java基础-Tomcat-Web容器

文章目录 面试题Web 容器是什么?HTTP 的本质 面试题 Web 容器是什么? 让我们先来简单回顾一下 Web 技术的发展历史,可以帮助你理解 Web 容器的由来。早期的 Web 应用主要用于浏览新闻等静态页面,HTTP 服务器(比如Apa…

学习Java的日子 Day45 HTML常用的标签

Day45 HTML 1.掌握常用的标签 1.1 标题标签 h1-h6 <h1>一级标签</h1> <h2>二级标签</h2> <h3>三级标签</h3> <h4>四级标签</h4> <h5>五级标签</h5> <h6>六级标签</h6> 显示特点&#xff1a; * 文字…

【Java难点】多线程-终极【更新中...】

Java内存模型之JMM 为什么需要JMM 计算机存储结构&#xff1a;从本地磁盘到主存到CPU缓存&#xff0c;也就是从硬盘到内存&#xff0c;到CPU。一般对应的程序的操作就是从数据库查数据到内存然后到CPU进行计算。 CPU和物理主内存的速度不一致&#xff0c;所以设置多级缓存&am…