一种酶标板培养孔颜色特征提取的图像检测方法

2018-12-28 03:56赵立宏
自动化仪表 2018年12期
关键词:孔位白平衡轮廓

邹 盛,赵立宏

(南华大学机械工程学院,湖南 衡阳 421001)

0 引言

微生物培养在生物、医药、食品、污水处理等领域具有重要的意义,是微生物学研究、生物制药、食品检测、水质检测等操作过程中的基本技术之一。由于微生物的种类繁多且微生物培养的过程十分繁杂,需要多步操作处理,故将微生物培养过程中的某些重复且容易失误的操作步骤自动化,是行业的迫切需求。这可以减少大量人力、物力和财力的投入。

基于上述情况,要实现微生物自动化培养,首先要完成菌体生长的自动识别。本课题在微生物培养过程中,在酶标(enzyme linked immunosorbent assay,ELISA)板上进行菌落培养时自动通过机器视觉输入[1-2],并对摄像头捕捉到的图像进行实时处理,从而实现对培养孔菌体生长时颜色变化的特征提取[3-4],为之后符合要求的菌体自动筛选和选取提供依据。

1 图像检测算法流程设计

本研究采用的图像采集设备为罗技的C270i型号摄像头,最大分辨率为1 280×960。针对采集的图像,对微生物培养的自动化的需求进行分析,完成对酶标板孔区域定位。根据孔中微生物生长时的颜色变化进行筛选的要求,该研究主要有两个难点。其一是酶标板位置矫正进行孔位的准确定位;其二是摄像头目标图像采集时,酶标板培养孔会发生变形。在进行孔位颜色特征提取时,要选取合适的孔区域。颜色提取算法流程如图1所示。

图1 颜色提取算法流程图

2 酶标板目标区域的识别

根据图1,首先要采集酶标板图像。但通过摄像头采集到的原始图像区域范围比较大,无法准确计算并定位酶标板每个培养孔的孔位,因此需要识别原图片中的酶标板区域,从而分割出酶标板区域。摄像头在某一场景采集到的图像信息,会因为环境、采集设备、大小等因素造成分辨率低、光照不均等问题。这些问题将会影响后期图像识别的各个流程。因此,在对摄像头采集到图像进行识别处理之前,需对图像进行必要的预处理,从而提高定位和识别的正确率。

2.1 边缘检测

边缘检测是通过标记数字图像中亮度变化明显的点,提取出文字的边缘,在文字识别中起着重要作用。本方法采用Canny算子[5],对经过灰度化和高斯滤波预处理的图像进行边缘检测,剔除了与识别不相关的信息,通过大幅度减少数据量来节省识别时间;保留了图像重要的结构属性,提升了对酶标板外围轮廓检测的效率。酶标板外围轮廓识别图如图2所示。

图2 酶标板外围轮廓识别图

2.2 酶标板轮廓识别及倾斜矫正

由于最终需求是准确定位每个孔位区域,故首先要在整个图像上找到酶标板区域,并进行酶标板目标区域的选取。在实际的培养过程中,酶标板在培养箱的位置可能会产生有一定的倾斜。在这种情况下,必须将其位置矫正为水平垂直方向,才能准确定位培养孔。本次试验主要通过图像的凸包检测、寻找外围轮廓、寻找最小包围矩形、仿射变换、感兴趣区域选取等关键步骤,准确获取酶标板区域。

2.2.1 凸包检测及寻找外围轮廓

凸包是几何学中一个常见的图形概念,通俗来讲就是在二维平面上通过给定的点集数据,将图像轮廓最外层的点都连接起来,形成一个凸多边形。凸包包含了轮廓点集上的所有点。利用凸包检测,可以将Canny边缘检测的图像在最外层用一个封闭的多边形进行包围,形成一层外围轮廓,为下一步寻找真正的外层轮廓作准备。利用OpenCV的findContours()函数完成对图像中酶标板外围轮廓检测,通过对函数参数的设置,可以只检测图像的最外层轮廓。但这要求原图的边缘图像轮廓为封闭的图像,否则就会识别出很多不是最外层的轮廓。试验证明,利用凸包检测后的图像寻找图像的外围轮廓,可以有效识别物体的外围轮廓[6]。

2.2.2 寻找轮廓的最小包围矩形

此前获得的外围轮廓只是酶标板的大概外围轮廓,是由一些线段连接起来的,会有一些误差,并不能真正确定酶标板的矩形区域。对此,需要在得到的外围轮廓外面寻找一个最小的包围矩形,通过这个矩形确定酶标板的具体位置,并由OpenCV的minAreaRect()函数求出这个轮廓的最小的外接矩形。该函数的返回值是RotatedRect类矩形对象,其主要数据成员有center、size、 angle、points,因此可以得到这个外接矩形的的质心坐标、大小及倾斜角度。

当得到的最小外接矩形有一定倾角时,可以通过仿射变换使目标区域旋转到水平和垂直方向。仿射变换就是一个向量空间乘以一个矩阵 (线性变换),再加上一个向量 (平移),从而变换到另一个向量空间的过程。其代表两副图片之间的关系。它的变化包括旋转、平移、伸缩。

通常使用 2×3 矩阵M来表示仿射变换。

在摄像头对目标区域进行采集的过程中,酶标板倾斜可能会出现两种情况,倾斜矫正情况如图3所示。在OpenCV中,设width与x轴的夹角为θ。第一种情况如图3(a)所示,为绕c点逆时针旋转(90-|θ|)。第二种情况如图3(b)所示,为绕B点顺时针旋转|θ|。这样就可以保证得到的是方向相同的、处于水平和垂直的酶标板图像。

图3 酶标板倾斜矫正示意图

2.2.3 酶标板培养孔区域定位与选取

在利用机器视觉进行外部图像数据采集的过程中,常常需要对所采集图像的特定区域进行处理,从而简化操作处理过程。将这个区域选定为感兴趣区域,便可对图像数据进行下一阶段的处理。通过获取的最小包围矩形得到的顶点坐标及矩形的width和height,即可使用RIO函数圈定想要处理的酶标板区域。在确定酶标板区域后,可以通过像素和实际尺寸的比例关系,准确计算并定位到各个培养孔的实际圆心位置。

酶标板的每个孔里都培养了一种菌体,这就要求根据酶标板的孔位进行分割[7],提取出每个不同的区域进行单独颜色识别。本试验矩形区域采用RIO函数进行感兴趣区域选取,圆孔区域采用mask掩膜的方法进行区域分割提取。

图像掩膜指的是使用选定的图像、图形或物体,对处理图片的全部或局部进行遮挡,来控制和选取图像处理的区域。掩膜可以提取图片中任意形状的区域。其具体实现原理是用预先制作、想要截取处理图片形状的掩膜与待处理图像进行运算,得到特定形状区域的图像。选取区域内图像的像素值保持不变,而区外图像值都为0(即为纯黑色)。

3 酶标板培养孔孔区域的颜色特征提取

3.1 颜色空间的选取

颜色空间的用途是在某些标准下用通常可接受的方式对彩色加以说明。常用的颜色空间有 RGB、CMY、HSV、HSI等[8]。RGB是最基本的颜色空间,主要由红色、绿色、蓝色三种基本原色描述其他颜色,常用于显示领域。HSV中:H代表色调,通常用来区分颜色种类;S代表纯度,用来表示和描述彩色的纯洁特性和色调的深浅程;V代表明度,一般用来描述色彩的明暗、深浅程度。HSV[9]是一种更直观且符合人眼视觉特性的颜色模型。本试验采用普通摄像头读入 RGB 颜色,记录图片每个像素点的 RGB 值,并在算法中将RGB转换到HSV。由RGB向HSV的转换公式为:

V=max(R,G,B)

(1)

(2)

(3)

3.2 图像校正之白平衡算法

在不同光线条件下,物体本身的颜色会发生变化。而相对于人眼而言,电子设备自身并不能根据光线的改变进行自我修正,输出的图像可能会出现色彩失真,图像偏红或偏蓝。对此,引入了图像的白平衡处理。图像白平衡是针对偏色图像进行校正的主要处理方法。本文使用基于白点检测的自动白平衡算法实现白平衡处理[10]。

本文使用的白平衡处理算法需要以下三个操作步骤:①色温估计,把图像从RGB转为YCbCr,估计图像在YCbCr的平均色差;②增益计算,计算图像R和B通道的增益u、v;③色温校正,将图像每个像素的R和B通道分别与校正因子u、v相乘,实现白平衡。

色温估计最常用的方法就是计算图像的平均色差。为了减少计算量,基于白点检测的色温估计通过约束条件Y-|Cb|-|Cr|>phi挑选白色像素,提高色差计算的精度。phi在文献[9] 给定的值为180。在图像色温估计的基础上,通过迭代的方法得到校正因子;然后,在图像的红蓝通道上乘以各自的校正因子,来调节RGB三通道颜色的比例;最后,达到图像颜色校正的目的。

3.3 培养孔颜色特征计算

提取的每个孔位区域保留了原有孔位区域的H、S、V值,每个像素点都对应一个H、S、V值,具体到本试验就是要利用最小包围矩形获取圆心坐标和半径,并制作掩膜来提取每一个特定圆孔区域。由于对细菌整体生长情况进行筛选时,需要观察整个区域且要求具备较高的自动化水平,所以本次试验采用提取每个截取圆形区域的HSV平均值AVG_H、AVG_V、AVG_S作为判定依据。

4 试验及结论

对每个酶标板的孔位用移液枪滴入等量20 mL的同颜色液体进行多次试验,如图4所示。采用获取圆孔的最大内接圆和获取孔的最大内接正方形这两种方式,计算每一个孔位区域的AVG_H、AVG_V、AVG_S颜色平均值,如图4(a)和图4(b)所示。考虑到摄像头在垂直方向拍摄时酶标板四周的孔位区域会发生变型,如果选取整个区域就会造成结果出现更大的误差,所以本试验在方案一和方法二的基础上进行了组合,提出了如图4(c)所示的方案三。采用这三种方案分别计算代表酶标板96个孔位区域的AVG_H、AVG_V、AVG_S值,以及三种方案96孔位区域HSV三通道颜色值标准误差。多次试验的三通道颜色误差平均值结果如表1所示。

图4 酶标板孔位区域选取方案

表1 三种方案酶标板培养孔HSV颜色分量误差

由以上试验结果可知,该试验方法可以对酶标板孔位颜色特征进行提取。综合了方案一和方案二的方案三的测得96孔位的HSV平均值波动性更小,能更准确地得到酶标板培养孔的颜色特征值,为培养孔菌体的筛选提供更准确的判断。

5 结束语

本研究方法实现了在OpenCV平台上,对摄像头输入目标图像酶标板区域的准确识别和送取 ,以及对酶标板孔位定位和孔位区域合理的选取;计算了每个区域的HSV平均值,为颜色的识别提供了数据,为细菌生长的筛选提供了依据,为后续对生长状况符合要求的细菌的转移奠定了基础。此外,如果要更好地将此识别系统应用于微生物生产实践中,还需要更快的识别速度和更高的识别精度,这都有待于进一步研究。

猜你喜欢
孔位白平衡轮廓
自动制孔孔位修正技术应用
OPENCV轮廓识别研究与实践
基于Kriging模型插值的孔位修正策略
基于实时轮廓误差估算的数控系统轮廓控制
技术橱窗
高速公路主动发光轮廓标应用方案设计探讨
环形轨自动化制孔系统孔位修正方法
灌浆法处理公路高填方路基滑坡
你的白平衡准确吗?
准确的白平衡管理