基于颜色属性的信号指示灯检测识别

2018-04-24 07:54胡灿林肖尚华
现代计算机 2018年7期
关键词:像素点指示灯颜色

胡灿林,肖尚华

(四川大学计算机学院,成都610065)

0 引言

在工业生产中,信号指示灯可以用来指示相应设备的运行情况。由于通常情况下,工业生产中会有大量信号指示灯存在,每个指示灯指示设备各不相同、指示的报警状态也各不相同,这就要求工作人员对每个指示灯进行长时间甚至实时监视,很容易出现遗漏或者误判的情况,造成较严重的生产损失。随着计算机图像处理技术的不断发展,可以充分利用图像处理技术为信号指示灯检测识别提供帮助,将图像处理技术部署在监控或巡检的工业机器人内,可以实现实时信号指示灯状态检测识别。

在图像处理研究和应用中,往往对图像数据集中的某些特定的、具有独特性质的特征感兴趣,通过将有利于分类识别的特征分离提取出来,形成特征图像,并在此基础上对目标进一步采取一些处理。信号指示灯识别属于图像模式识别,由于信号指示灯在识别过程中,色彩特征作为其最大区分特征,因此以往研究都基于信号指示灯的颜色特征进行指示灯检测和状态识别。文献[1]设计了一种数字信号等的识别方法,该识别方法分为两部分,第一部分为预处理,采用基于颜色-形状特征的目标检测算法对信号灯和环境背景进行抽取分离,第二部分为采用基于BP神经网络的识别算法对数字指示灯进行识别,其图像预处理部分采用RGB图像转换为HIS色彩空间图像。文献[2]对视频监控中指示灯闪烁状态和颜色的变化进行了讨论,其利用色差信息来判断指示灯红绿颜色的变化,在算法颜色亮度计算时,会把RGB颜色图像转化为YUV模式。上述算法迎合了人的视觉系统,提取了颜色亮度特征信息,提高了颜色亮度敏感度,但对于存在光照变化的图像及多颜色状态的信号指示灯,算法效果易受颜色失真而影响检测识别效果。

1 颜色属性

1.1 颜色属性空间

颜色属性是由文献[3,4]提出的一种基于潜在语义模型的特殊颜色空间算法,其很大程度改善了原始观测的RGB颜色的鲁棒性,通过从带有颜色标签信息的自然图像中,选取了11种较为常见的基本颜色(黑色、蓝色、棕色、灰色、绿色、橘色、粉色、紫色、红色、白色以及黄色)作为颜色属性,建立起原始三维RGB空间到11维颜色属性空间的概率映射关系,并用概率分布来代替原始的像素值。由于颜色属性建立起了观测颜色和本质颜色之间的映射关系,因而能够适应光照等变化造成的颜色失真,实现了颜色特征的鲁棒表示,颜色属性空间应用到目标跟踪和检测领域,取得了较好的效果。

1.2 颜色属性训练

颜色属性的训练基于概率潜在语义分析(PLSA)算法。PLSA算法来源于自然语言处理研究,通过将显性的文档和词汇关系抽象出潜在主题并以概率的形式表达出来。假设分别表示为文档和词汇集合,表示潜在主题集合,n(d,w)表示词汇w出每个文档d的次数。PLSA只考虑单词在文档中的出现频率,忽略其出现的先后次序。假设“文档—单词”之间以及它们所包含的潜在主题都是独立分布的,那么,一个在D×W上的联合概率分布p(d,w)可定义为:

则在PLSA模型中,词汇w在文档d中的条件概率p(w|d)可定义为:

上式表示潜在主题在文档d中出现的概率,表示单词w属于潜在主题z的概率,且和都服从离散多项分布,属于隐含变量,因此和可以采用最大期望(EM)算法最大化其似然函数来进行求解,似然函数如下所示:

颜色属性训练采用PLSA算法,图像和像素点作为已知样本,分别对应文档d和词汇w,图像内的颜色属性对应于潜在主题z。如图1所示,首先为带颜色标签图像建立LAB空间颜色直方图,带颜色标签的图像可以为自然图像,此处以信号指示灯为例,但在训练颜色属性时,信号指示灯图像的bin对颜色属性的训练不作为参考。由于LAB颜色空间是惯用来描述人眼可见的所有颜色的最完备的色彩模型,因此先将原始RGB图像转换为LAB图像,LAB颜色空间直方图中的每个bin对应PLSA模型中的单词,可以计算出每个bin在图像中出现的概率,因此可以作为先验分布。然后,将颜色属性数量设为11,每种颜色属性为上述11种基本颜色。由于PLSA算法本质在于计算出最能表示先验分布的潜在主题(颜色主题),这一步骤可以用图1中的矩阵分解来表示,因此可以通过EM算法来估计,其中表示每幅图像中各种颜色属性的特定混合系数,图像中与已知标签相同的颜色被赋予会拥有较高的概率;而作为算法最终要求得的颜色属性分布,其每一列代表颜色属性在LAB颜色空间的分布情况,每一行每个bin对应属于某一颜色属性的概率,且每一行的概率和为1。

图1 基于PLSA算法的颜色属性训练

2 算法实现及实验

2.1 指示灯状态检测识别流程

根据颜色属性训练可以得到每个bin在颜色属性空间上的分布概率,对每一张包含信号指示灯的输入图像,首先计算每一个像素所对应的bin(文章将每个通道划分为32个bin),再根据该bin从中找出其对应11种颜色属性对应的概率值,依次遍历输入图像所有像素点,最终可以得到一个11维的概率特征图像,每一维的概率特征图像对应输入图像在每一个颜色属性上的空间映射。在信号指示灯识别过程中,每一帧图像都可以作为输入图像,然后根据识别指示灯的颜色类别,选择其中一维或多维概率特征图像进行融合以及二值化,得到该类颜色指示灯的一个颜色分割图像,最终可以将输入图像中含指示灯类似颜色的像素归为1,不含指示灯的像素归为0。由于输入图像可能存在和指示灯不同状态颜色相似的像素点,得到的颜色分割图像存在部分噪声,结合腐蚀、膨胀及开闭等形态学图像处理方法及指示灯形状特征进行去噪,最后可以获取还原指示灯轮廓的二值图像,进而可以获取指示灯状态及指示灯在原图像中的位置。以识别红色、绿色两种信号指示灯为例,图2为指示灯状态检测识别流程图。

图2 指示灯状态检测识别流程图

2.2 仿真实验

实验数据采集自发电站站内巡检机器人在巡检过程中所拍摄的照片,本文选取了带有信号指示灯的机柜图像作为实验数据,部分数据如图3所示。

图3 部分带信号指示灯的机柜图片

(1)获取颜色属性特征图像

根据已经训练好的每个bin在颜色属性空间上的分布概率p(w|z),对每一张输入的图像,都为RGB三通道图像,将每个通道划分为32个bin,并计算三通道图像每个位置像素点归属的bin,再根据,在映射处理时,找到“bin-颜色属性”对应关系,最终将该像素点映射到颜色属性空间,可以得到11维的颜色属性特征图像,在实验过程中,计算每个颜色特征图像时,将属于该颜色属性的像素点设为[255,255,255],否则设为[0,0,0],图4为输入图像和11维颜色属性特征图像,从左至右、从上至下依次为原图像、黑色、蓝色、棕色、灰色、绿色、橘色、粉色、紫色、红色、白色、黄色特征图像。

(2)指示灯检测和状态识别

由图4可以看出,红色特征图像可以很好地将信号指示灯与背景分离开来,从而实现指示灯分割。在红色特征图像中的指示灯区域,虽然整体出现高亮,但其边缘出现一些像素空洞,从而导致对同一指示灯区域出现多个颜色分割块的现象,此外,当背景出现同样红色像素点时,在非指示灯区域,有可能会出现高亮区域,形成噪音像素区域。为了解决这一问题,本实验采用形态学方法来解决指示灯区域内空洞问题并去除噪音像素点。图5为采用形态学中的闭运算处理的对比效果图,从图中可以看出,形态学处理后的图像,指示灯分割区域完整,且非指示灯区域无噪音像素点出现。

图4 输入图像和11维颜色属性特征图像

图5 形态学图像处理对比图

对特征图像进行形态学处理后,原始图像中的指示灯轮廓已经较为完整,再利用MATLAB中的二值图像轮廓提取函数以及轮廓最小外接矩形计算函数,即可完成信号指示灯的定位任务。

对于信号指示灯状态识别问题,由于信号指示灯有多种颜色,且每种颜色的信号指示灯有开和关这两种状态,因此对于同一指示灯的不同状态,需要借助多个颜色的特征图像来分别完成。

在实验中,“红色关闭状态”的指示灯,提取了红色特征图像进行辅助检测识别;“红色打开状态”的指示灯,则提取了红色特征图像和白色特征图像进行辅助检测识别,因为红色指示灯在打开状态下,指示灯中心部分为白色,边缘为红色,因此将红色特征图像和白色特征图像中的轮廓中心进行对比,当白色特征图像中的轮廓中心的像素值为[255,255,255],而该位置在红色特征图像对应的轮廓中心像素值为[0,0,0]时,再将两个轮廓进行合并,即可将其归类为“红色打开状态”的信号指示灯;“绿色关闭状态”的指示灯,提取了绿色特征图像进行辅助检测识别;与红色打开状态的指示灯的处理方式类似,对“绿色打开状态”的指示灯,提取了绿色特征图像和白色特征图像进行辅助检测识别。在实际应用中,可以先将颜色进行分类,并为每种状态封装一个算法接口,在检测识别过程中,依次调用每个算法接口即可完成检测识别任务。图6为部分实验数据的检测识别效果图。

3 结语

本文基于颜色属性来完成对信号指示灯的检测识别。颜色特征作为信号指示灯最突出的特征,文章采用基于颜色属性的方法进行颜色特征提取,建立了观测颜色和本质颜色之间的映射关系,完成了颜色特征的有效提取,一定程度上解决了由于光照、视角等因素造成的图像失真问题。该选取了发电站内带信号指示灯的机柜图像作为实验数据,实验结果表明,该方法能很好地检测出输入图像中出现的信号指示灯,并能准确识别信号指示灯的开、关状态。

图6 信号指示灯的检测识别效果图

参考文献:

[1]任勇,彭静玉.基于BP神经网络的交通信号数字指示灯识别[J].计算机与现代化,2013(4):77-80.

[2]黄战华,姜永奎,张旺,等.基于视频图像的指示灯状态监测识别技术研究[J].传感技术学报,2010,23(4):543-547.

[3]Weijer,Joost Van De,C.Schmid,J.Verbeek.Learning Color Names from Real-World Images.Computer Vision and Pattern Recognition,2007.CVPR'07.IEEEConferenceon IEEE,2007:1-8.

[4]Van d W J,Schmid C,Verbeek J,etal.Learning Color Names for Real-World Applications[J].IEEE Transactions on Image Processing A Publication of the IEEESignalProcessing Society,2009,18(7):1512-23.

猜你喜欢
像素点指示灯颜色
图像二值化处理硬件加速引擎的设计
基于局部相似性的特征匹配筛选算法
一闪一闪亮晶晶浅析笔记本身上的指示灯
一种X射线图像白点噪声去除算法
基于canvas的前端数据加密
特殊颜色的水
上海大众POLO充电指示灯点亮
2013年波罗车充电指示灯异常点亮
太阳能楼牌指示灯