基于机器视觉的有色溶液浓度检测*
2022-08-26骆东松梁俊卫
骆东松 梁俊卫
(兰州理工大学电气工程与信息工程学院 兰州 730050)
1 引言
在化学化工领域中,对有色溶液浓度的检测一般是基于比尔-郎伯定律[1],采用分光光度法。该方法是根据溶液中的显色物质对光的吸收度来对溶液溶度进行检测,此方法受自然光的影响较大,且分光光度计的造价昂贵。随着机器视觉技术[2]与计算机技术的快速发展,作为一种非接触式的检测测量方式,引起了国内外广大学者的研究兴趣。Tominaga[3]利用光的反射原理通过彩色图像识别不同材质的物质;Nayar[4]提出了图像中像素亮度的表示方法。目前,机器视觉广泛应用于物体的表面缺陷检测、医学影像分析、材料识别等领域[5]。本文利用工业相机拍摄有色溶液的彩色图像,在自己编写的软件中对图像进行处理、特征提取,最后识别匹配得到溶液浓度。
2 检测系统
机器视觉系统主要有两部分组成,一部分为硬件系统。利用光学成像原理,通过图像传感器采集被测物体的图像;另一部分为软件系统。主要是对采集的图像预处理,然后提取图像信息,并对其数据进行分析得到所需结果。
2.1 硬件系统
本文是对有色溶液进行浓度检测,采用的硬件系统是由华睿科技的工业相机,型号为A5201CG50;光源采用LED白色环形光源,在密闭容器中采用白色背景板对其中的溶液进行拍摄,采集图像。具体的实现硬件系统示意图如图1所示。
图1 硬件系统实验装置示意图
2.2 软件系统
本文的软件系统是基于OpenCVSharp[6]在VS 2012 下编写的软件系统。主要是对采集的图像进行预处理、特征提取、图像识别与匹配,最后将匹配的图像与检测溶液的浓度显示。系统的处理过程流程图如图2所示。
图2 系统处理过程流程图
3 图像预处理
图像的预处理就是在对图像信息未提取之前对图像的一系列必要处理,目的是提高图像质量,让图像更加清晰,为提取图像信息做好前提准备。图像预处理结果的好坏将直接影响图像识别匹配的准确度[7]。
3.1 颜色空间[8]选择
对于计算机而言,一种颜色可以有不同的表达方式,也就形成了不同的颜色空间。没有一种颜色空间可以适用所有的领域,就需要我们选择合适的颜色空间来处理相应的事件。常用的颜色空间有RGB、Yab、HSV、HSI 等颜色空间,本文选择HSI 颜色空间来对溶液图像进行处理。HSI 颜色空间是更好的数字化处理提出来的,其中H 表示色度,S表示饱和度,I表示亮度,在对图像的颜色特征提取和图像识别时,只需要关注色度与饱和度,亮度与颜色信息无关,可以减少计算量[9]。
对于工业相机来说,所拍摄的图像都是RGB颜色空间,在提取图像信息之前需要将RGB 值转到HIS的值。相互转换公式[10]如下所示:
RGB转到HIS:
式中,R、G、B、H、S、I分别为一像素点中三通道的像素值。
对溶液图像转换颜色空间后的效果图如图3所示。
图3 RGB颜色空间转到HIS颜色空间效果图
3.2 图像滤波处理
在图像的拍摄过程中会存在或多或少的干扰,其中椒盐噪声就是最为典型的一种,这些噪声会对之后的颜色特征的提取造成很大的干扰,对图像的滤波处理就是去除图像中的噪声让图像变的更加平滑。
典型的图像滤波方法有均值滤波、中值滤波、高斯滤波等滤波处理[11~12]。本文采用滤波方法是高斯滤波,是用图像每一像素值与高斯内核卷积,将卷积作为图像的输出像素。该滤波方法是利用高斯函数的权值进行滤波的线性低通滤波,其滤波效果较为柔和。二维高斯函数数学表达式如下:
式中,G(x,y)表示像素值,σ表示像素的标准差。溶液图像滤波处理结果如图4所示。
图4 溶液图像滤波效果图
4 图像特征提取
本文是针对品红溶液,在对其拍摄图像处理后显示的是红色的近纯色图像,提取的图像特征为图像的颜色特征。
颜色特征[13]的描述方法有颜色直方图、颜色矩、颜色集等。本文提取图像的颜色矩特征来对图像进行描述,该方法不需要对颜色空间进行量化,且向量维数低,可以减少计算量。由于图像的颜色信息主要分布在低阶矩阵中,故用图像的一阶矩、二阶矩和三阶矩便足以表达图像的颜色信息。图像颜色矩的数学表达式[14]如下所示:
式中,Pi,j为图像i通道第j像素的像素值,N为像素个数,μi为i通道的一阶矩,σi为i通道的二阶矩,si为i通道的三阶矩。在HSI 颜色空间中图像的颜色矩特征的表示为一个9 维向量,表达方式如下:)
为解决利用颜色矩特征进行图像识别匹配时效率过慢的问题,可以将样本的颜色矩特征提前提取并保存到数据库中,以提高图像的检索效率。数据库中的颜色矩特征如图5所示。
图5 数据库中的颜色矩特征
5 图像识别匹配
5.1 相似性度量[15]
图像的识别匹配就是通过提取的图像特征计算两张图像的相似度,比较样本库中的图像与采集图像的相似度,相似度最高的则为最相似的图像。
本文中提取的是颜色矩特征,可以通过计算两张图像的欧式距离[16]来判断图像的相似度,欧式距离越小,图像越相似。在m维空间中欧式距离的数学表达式如下:
式中:(x1,x2,x3,…,xm)和(y1,y2,y3,…,ym)为点X和点Y的坐标。本文中则是目标图像与样本图像提取的颜色矩的9维向量。
在HSI 颜色空间中I 为亮度,与颜色信息无关。在颜色矩中的一阶矩、二阶矩和三阶矩所拥有的颜色信息也不同,为能更准确的计算图像的相似度,其在计算时所占的权重是不同的。在HIS 颜色空间中的权值使用情况如表1所示。
表1 HIS颜色空间中颜色矩的权值选择
5.2 实验测试及结果
配制浓度分别为1mg/ml,2mg/ml,…,20mg/ml的20 组品红溶液作为样本,并将其图像处理后提取颜色矩特征,然后将颜色矩特征储存到Access数据库中,用作识别特征。
重新配制溶液,浓度分别为1mg/ml,2.5mg/ml,5mg/ml,7.5mg/ml,10mg/ml,12.5mg/ml,15mg/ml,17.5mg/ml,20mg/ml 的9 组溶液作为测试样本。其结果如表2所示。
表2 试验测试结果
6 结语
从上述结果可以看出,对于样本中已有的溶液浓度,识别匹配的结果可以达到100%,对于样本中没有的溶液浓度,识别匹配的结果误差在±5%,此误差实在可允许范围之内。
目前,机器视觉技术在各行业中具有很大的发展潜力,也是研究热点。本文将其运用到有色溶液浓度的检测上,实验了对样本的非接触式的检测,同时利用OpenCVSharp 与数据库技术将检测结果快速的显示。而且该系统更具普遍性,可以适用于大多数的有色溶液的检测。