颜色传感器介绍

1 光及颜色

1.光:是人类眼睛可以看见的一种电磁波,也称可见光谱。在科学上的定义,光是指所有的电磁波谱。光是由光子为基本粒子组成,具有粒子性与波动性,称为波粒二象性,一般人的眼睛所能接受的光的波长在380—760nm之间。
不会发光的物体的颜色从何而来:各种物体在光源的照射下呈现出
不同的颜色,原因就在于物体固有的对落在它表面的光谱成分选择性透射,吸收和反射的特性,

2.颜色:是光作用于人眼后所引起的一种除位置,形态以外的视觉反应。光源,眼睛,物体,大脑是颜色视觉产生的四大要素。人眼将不同波长的光刺激转化为相应的神经冲动,最终由大脑内的视觉中枢判断分析产生颜色感觉。

3.颜色模式:是将某种颜色表现为数字形式的模型,或者说是一种记录图像颜色的方式。分为:RGB模式、CMYK模式、HSB模式、Lab颜色模式、位图模式、灰度模式、索引颜色模式、双色调模式和多通道模式。

4.颜色原理:颜色的实质是一种光波(电磁波 它的波长介于380—760nm,可被人类看见的波段)。它的存在是因为有三个实体:光线、被观察的对象以及观察者。人眼是把颜色当作由被观察对象吸收或者反射不同波长的光波形成的。例如,当在一个晴朗的日子里,我们看到阳光下的某物体呈现红色时,那是因为该物体吸收了其它波长的光,而把红色波长的光反射到我们人眼里的缘故。当然,我们人眼所能感受到的只是波长在可见光范围内的光波信号。当各种不同波长的光信号一同进入我们的眼睛的某一点时,我们的视觉器官会将它们混合起来,作为一种颜色接受下来。同样我们在对图像进行颜色处理时,也要进行颜色的混合,但我们要遵循一定的规则,即我们是在不同颜色模式下对颜色进行处理的。

5.RGB颜色模式: 虽然可见光的波长有一定的范围,但我们在处理颜色时并不需要将每一种波长的颜色都单独表示。因为自然界中所有的颜色都可以用红、绿、蓝(RGB)这三种颜色波长的不同强度组合而得,这就是人们常说的三基色原理。因此,这三种光常被人们称为三基色或三原色。有时候我们亦称这三种基色为添加色(Additive Colors),这是因为当我们把不同光的波长加到一起的时候,得到的将会是更加明亮的颜色。把三种基色交互重叠,就产生了次混合色:青(Cyan)、洋红(Magenta)、黄(Yellow)。这同时也引出了互补色(Complement Colors)的概念。基色和次混合色是彼此的互补色,即彼此之间最不一样的颜色。例如青色由蓝色和绿色构成,而红色是缺少的一种颜色,因此青色和红色构成了彼此的互补色。在数字视频中,对RGB三基色各进行8位编码就构成了大约1677万种颜色,这就是我们常说的真彩色。顺便提一句,电视机和计算机的监视器都是基于RGB颜色模式来创建其颜色的。RGB模式是一种发光的色彩模式,你在一间黑暗的房间内仍然可以看见屏幕上的内容RGB是一种依赖于设备的颜色空间:不同设备对特定RGB值的检测和重现都不一样,因为颜色物质(荧光剂或者染料)和它们对红、绿和蓝的单独响应水平随着制造商的不同而不同三原色的原理不是出于物理原因,而是由于生理原因造成的。人的眼睛内有几种辨别颜色的锥形感光细胞,

6.CMYK模式: CMYK颜色模式是一种印刷模式。其中四个字母分别指青(Cyan)、洋红(Magenta)、黄(Yellow)、黑(Black)(K取Black最后一个字母防止和Blue混淆),在印刷中代表四种颜色的油墨。CMYK模式在本质上与RGB模式没有什么区别,只是产生色彩的原理不同,在RGB模式中由光源发出的色光混合生成颜色,而在CMYK模式中由光线照到有不同比例C、M、Y、K油墨的纸上,部分光谱被吸收后,反射到人眼的光产生颜色。由于C、M、Y、K在混合成色时,随着C、M、Y、K四种成分的增多,反射到人眼的光会越来越少,光线的亮度会越来越低,所有CMYK模式产生颜色的方法又被称为色光减色法。CMYK是一种依靠反光的色彩模式,我们是怎样阅读报纸的内容呢?是由阳光或灯光照射到报纸上,再反射到我们的眼中,才看到内容。它需要由外界光源,如果你在黑暗房间内是无法阅读报纸的 7>:RGB三原色光显示 三原色光显示主要用于电视和计算机的显示器,有阴极射线管显示、液晶显示和等离子显示等方法,将三种原色光在每一象素中组合成从全黑色到全白色之间各种不同的颜色光,目前在计算机硬件中采取每一象素用24比特(位元)表示的方法,所以三种原色光各分到8比特,每一种原色的强度依照8比特的最高值28分为256个值。用这种方法可以组合16777216种颜色,但人眼实际只能分辨出1000万种颜色。

2 数字图象及原理

1.数字图象:图象数字化是电脑图象处理最基本的步骤,其意义就在于把真实的图象,转变成电脑所能接受的格式,也就是一连串特定的数字。常见的扫描仪就是这个过程,通常这个数字化的过程还可以分为“采样”与“量化”处理两个步骤。其中“采样”的结果就是通常所说的图象分辨率,而“量化”的结果则是图象所能容纳的颜色总数。

2.采样处理:采样的意义就是要使用多少点(像素点)来表示一张图象,例如:一幅640*480的图象是由307200个点所组成,当然,想要有更清楚的图象质量,就得使用更多的点,来表示图象,也就是让这幅图象拥有较高的分辨率。

3.量化处理:量化的意义是指要使用多大范围的数值(颜色数),来表示图象采样之后的每一个点。这个数值范围包含了图象上所能使用的颜色总数,eg:以4个Bits存储一个点,就表示图象只能有16中颜色。数值范围越大,表示图象可以拥有更多的颜色,自然可以产生更为逼真的图象效果。

4.图象数据存储:有两种方式 ----(1) 位映射 (2)向量处理 位映射:可以将图象的每一点数值存放在以字节为单位的矩阵里,比如:当图象是单色时(黑白色),一个字节(8位)可存放8点(像素点)图象数据,16色图象则是以一个字节存2点,256色图象则是一个字节存储1点。这种存储方式适合内容复杂的图象。 向量处理:只记录图象内容的轮廓部分,而不存储图象数据的每一点,比如:一个圆形图案只要存储圆心的坐标位置和半径长度,还有圆形边线及内部的颜色,适合存储商用图表和工程设计图。

5.图象文件的结构和编码原理:每种图象文件内除了图象数据之外,都免不了要存储一些识别信息,如图象的宽度和高度,颜色种类,调色板数据…等等(这些数据都在最前端),方便程序正确读取数据。图象文件通常有一批庞大的数据,所以要经过压缩处理,减少存储图象所需的数据量,以达到节省存储空间的效果,所以,在图象文件结构中,图象数据和识别信息是必不可少的两项基本单元,而压缩原理是经常被采用的要素。目前图象文件之所以会有种种不同类型的格式,主要在于文件编码的过程中,定义了不同的识别信息和压缩方法。若能理解识别信息的用途和压缩原理的编码规则,就不难读写各类图象文件,及自行设计出一种图象文件格式。

6.图象文件常用的压缩原理:可行的压缩方式是非常多样化,但是,在实际上,图象文件经常采用的只有少数几种类型。

A>:RLE压缩:Run—Length —Encoding

B>:LZW压缩

C>:Huffman压缩

D>:JPEG压缩:

数据压缩编码之前,图象数据得先经过三道处理程序:彩色模式变换及采用,DCT变换和量化。

彩色模式变换是将RGB全彩色值变换成YCbCr图象数据。

采样则是只保留Cb和Cr数据。

DCT变换全名为离散余弦变换,将YCbCr图象数据变换成频率系数,这些频率系数都是浮点数,必须再一次量化手续转换成整数,然后才开始进行压缩编码。

JPEG是目前压缩效率最高的图象压缩方法,它主要是运用了修改数据内容和数据采样的方式,来提高数据压缩的效率。

通常具有良好压缩效率的方法,往往有着较为复杂的演算方法,需要花费比较多的时间来转换编码,至于像RLE这种压缩原理虽然简单压缩效果不佳,但演算方法很简单,使得读写图象文件的速度相对提高很多,就因为有着这种存储空间和读写时间快慢的冲突,才会造成不同压缩效率的方法并存于世。

3 颜色识别传感器

TCS3200颜色传感器概述:

TCS3200颜色传感器是一款全彩的颜色检测器,包括了一块TAOS TCS3200RGB感应芯片和4个白光LED灯,TCS3200能在一定的范围内检测和测量几乎所有的可见光。它适合于色度计测量应用领域。比如彩色打印、医疗诊断、计算机彩色监视器校准以及油漆、纺织品、化妆品和印刷材料的过程控制。
通常所看到的物体颜色,实际上是物体表面吸收了照射到它上面的白光(日光)中的一部分有色成分,而反射出的另一部分有色光在人眼中的反应。白色是由各种频率的可见光混合在一起构成的,也就是说白光中包含着各种颜色的色光(如红R、黄Y、绿G、青V、蓝B、紫P)。根据德国物理学家赫姆霍兹(Helinholtz)的三原色理论可知,各种颜色是由不同比例的三原色(红、绿、蓝)混合而成的。
由上面的三原色感应原理可知,如果知道构成各种颜色的三原色的值,就能够知道所测试物体的颜色。对于TCS3200D 来说,当选定一个颜色滤波器时,它只允许某种特定的原色通过,阻止其它原色的通过。例如:当选择红色滤波器时,入射光中只有红色可以通过,蓝色和绿色都被阻止,这样就可以得到红色光的光强;同理,选择其它的滤波器,就可以得到蓝色光和绿色光的光强。通过这三个光强值,就可以分析出反射到TCS3200D传感器上的光的颜色。

TCS3200颜色传感器实物展示:

TCS3200颜色传感器描述:
  • 感应芯片:TCS3200(全彩颜色检测器)
  • 静态识别物体颜色,不同颜色输出不同频率方波
  • 支持LED灯补光控制
TCS3200颜色传感器参数:
  • 工作电压:2.7V ~ 5.5V
  • 推荐检测距离:10mm
  • 尺寸:36.0mm * 20.6mm
  • 固定孔尺寸:2.0mm
TCS3200颜色传感器主要用途:

颜色排序、感应与校准环境光、测试条阅读和颜色匹配等。

接口说明:(以接入MCU为例)
  • VCC:接2.7V ~ 5.5V
  • GND:接电源地
  • LED:接MCU.IO (控制四个白色LED灯的状态)
  • OUT:接MCU.IO (RGB三原色对应的输出频率)
  • S0/S1:接MCU.IO (选择不同的输出比例因子)
  • S2/S3:接MCU.IO (选择不同色光的滤波器)
操作说明:


S0/S1选择输出频率的比例因子,S2/S3依次选择三原色的滤波器类型,此时OUT端口输出的就是相应三原色的频率,与RGB颜色对照表比对即可得到所测物体的颜色。

注意:
  • 颜色识别时要避免外界光线的干扰
  • 首次使用该模块、模块重启或更换光源时,需进行白平衡调整
  • 5
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
#include //包含头文件,这个嘛,就不用多说了~~ #include "L1602.h" //#define hong 10000 //out接p3.5 sbit tcs230_en=P1^0; sbit tcs230_s2=P1^1; sbit tcs230_s3=P1^2; uint ryz,gyz,byz; uint rb,gb,bb; //白平衡子程序 void celiang() { //*********求R值************************************ TH0=(65536-10000)/256; TL0=(65536-10000)%256; TH1=0; TL1=0; tcs230_s2=0; tcs230_s3=0;//选择红色滤光器 tcs230_en=0; TR0=1;//10毫秒开始计时 TR1=1;//开始计数 while(TF0==0);//等待定时器溢出 TF0=0;//清楚定时器0溢出标志 TR0=0;//关闭定时0 TR1=0; rb=(unsigned long)(TH1*256+TL1)*255/ryz; if(rb>255)rb=255;//判断RGB值是否合法 //***********求B值************************************** TH0=(65536-10000)/256; TL0=(65536-10000)%256; TH1=0; TL1=0; tcs230_s2=0; tcs230_s3=1;//选择蓝色滤光器 TR0=1;//10毫秒开始计时 TR1=1;//开始计数 while(TF0==0);//等待定时器溢出 TF0=0;//清楚定时器0溢出标志 TR0=0;//关闭定时0 TR1=0; bb=(unsigned long)(TH1*256+TL1)*255/byz; if(bb>255)bb=255;//判断RGB值是否合法 //***********求G值************************************** TH0=(65536-10000)/256; TL0=(65536-10000)%256; TH1=0; TL1=0; tcs230_s2=1; tcs230_s3=1;//选择绿色滤光器 TR0=1;//10毫秒开始计时 TR1=1;//开始计数 while(TF0==0);//等待定时器溢出 TF0=0;//清楚定时器0溢出标志 TR0=0;//关闭定时0 TR1=0; tcs230_en=1; gb=(unsigned long)(TH1*256+TL1)*255/gyz; if(gb>255)gb=255;//判断RGB值是否合法 } //****************************************************** //白平衡子程序 void baipingheng() { //**************求取红色因子*********************** TH0=(65536-10000)/256; TL0=(65536-10000)%256; TH1=0; TL1=0; tcs230_s2=0; tcs230_s3=0;//选择红色滤光器 tcs230_en=0; TR0=1;//10毫秒开始计时 TR1=1;//开始计数 while(TF0==0);//等待定时器溢出 TF0=0;//清楚定时器0溢出标志 TR0=0;//关闭定时0 TR1=0; ryz=TH1*256+TL1;//其实这里的比例因子应该为255/(TH1*256+TL1) //**************求取蓝色因子*********************** TH0=(65536-10000)/256; TL0=(65536-10000)%256;
型号 光源 反应时间 指示灯 错误显示 校准方法 公差值调节 差异辨认模式 计时器功能 输出模式选择 外部同步输入 外部校准输入 记录颜色选择 控制输出 保护电路 电源 消耗电流 环境光度 环境温度1. 相对湿度 耐振动性 耐冲击性 外壳材料 重量(含2m缆线) 红色LED,绿色LED,蓝色LED 300μs/1ms(可用开关选择) 输出:红色LED,校准:橙色LED 外部同步输入:绿色LED 匹配率/接收光强:LCD(红色/绿色) 过度光强、不足光强、不足色差 单点/两点校准(可用开关选择) 数字显示上数目值设定 C模式/ C+I模式/ I模式(可用开关选择) 计时器关/延时计时器关(40ms)(可用开关选择) 匹配输出:当目标物颜色符合记录颜色时打开 不匹配输出:当目标物颜色与记录颜色有所差异 时打开(可用开关选择) 无电压输入,反应速度:最大500μs 无电压输入,输入反应时间:最小20ms 8资料库选择(由外部输入或键操作), 无电压输入,输入反应时间:最小20ms NPN集电极开路:最大40VDC(最大100mA) 剩余电压:最大1.0V 逆电极保护(电源)、过电流保护(输出)、过电压(输出) 12至24VDC±10% ,脉动(P-P):最大10% 最大75mA 白炽灯:最高5,000lux, 日光:最高10,000lux 10至55Hz,1.5mm双振幅以 X、Y、Z 方向,每个方向2小时 500m/s2以X、Y、Z方向,每个方向3次 聚碳酸盐 约115g -10至55°C 35至85% CZ-V1 1. 当连接多个模块时,可接受的环境温度视下列情况而异。要连接多个模块时,切 记需将它们安装在DIN轨道上。确保输出电流最大为20mA。 • 当连接3至10个模块时: -10 至 +50°C

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值