生产管理机械化岗位
徐丽明 王烁烁 刘星星 袁全春 马帅 牛丛 闫成功 赵诗建
0 引 言
现有方法均为采集图像、图像预处理、特征提取、建立分类器实现分级,需要花费时间制作数据集用于分类器训练且方法为静态识别。市场上用于葡萄干分级的产品多对图像利用加权平均的方法灰度化,直接通过不同颜色葡萄干表面的亮度差异进行分级,算法实现简单、速度快,但由于黄、绿葡萄干表面亮度相近,无法很好地对其进行区分。
本文研究了运动状态的葡萄干色泽识别算法,对序列帧动态图像中的每一帧图像进行简单、有效的处理,实现实时、动态、多条输送通道条件下不同颜色葡萄干的色泽识别、提高识别效率并对不同颜色葡萄干有较好的区分效果。
1 图像识别系统的搭建和葡萄干图像的采集
1.1 葡萄干表面色泽识别系统的搭建(图1)
1.2 葡萄干RGB图像的采集
选取绿、黄、褐色葡萄干各40粒,利用OpenCV库函数驱动工业相机获取图像。(图2)
2 基于OpenCV的图像处理
2.1 图像预处理
(1)原始RGB葡萄干图像灰度化。采用分量法首先获得R、G、B三通道灰度图(图3a、3c、3e),并计算其灰度直方图(图3b、3d、3f)。其中B通道有明显的双峰结构,适合进行后续的二值化处理。
(2)阈值分割。本文选取全局阈值分割进行二值化操作,通过图3f可知,取55为分割阈值。效果如图4所示。
(3)形态学处理。经试验可知,开运算时采用椭圆形、内核尺寸为5×5的卷积核可有效消除二值图像中出现在葡萄干轮廓周边的小范围“255值”区域,并且可使得类似图5a中A区域的“毛刺”更加平滑。如图5b所示。
2.2 边缘不完整葡萄干轮廓的处理
(1)图像边界扩充。对经过预处理的二值图像进行上、下、左、右扩展像素数为10,扩充边缘类型采用常量法,填充值为255(图6a方框圈定区域)。扩充后的二值图像大小为820×620(像素)。
(2)漫水填充。操作扩充后的二值图像,漫水填充起始点坐标设为(5,5),填充值设为0(图6b方框圈定区域),图像边缘不完整葡萄干轮廓区域(图6a中A、B、C)经处理后得到去除(图6b中A′、B′、C′)。
(3) 图像裁剪。创建一个矩形类Rect对象,其变量为x 、y、width、height。裁剪尺寸设置(x,y )=(10,10),width、height为原二值图像尺寸。此时A′、B′、C′已得到滤除且尺寸相比于原二值图像不变。
2.3 多输送通道识别掩膜的建立
(1)建立上、下区域掩膜。利用Rect函数得到上、下区域掩膜,命名为掩膜A(图7a)、掩膜B(图7c)。
(2)找寻最靠近图像右侧的完整葡萄干轮廓。首先利用的轮廓查找函数findCountours()对掩膜A 、B 进行处理,返回有序的点集(轮廓);利用最小外接矩形函数minAreaRect()对轮廓进行包围,保存最小外接矩形对角线交点的X坐标作为该葡萄干轮廓重心的X 坐标;分别比较上、下区域掩膜所保存的X坐标值并保留其最大值,则X坐标最大的葡萄干轮廓即为最靠近图像右侧的完整葡萄干轮廓;得到上、下区域掩膜,分别命名为掩膜C、D(图7b、7d)。
2.4 识别阈值的确定
2.4.1 颜色模型的选择
本文在HSV颜色空间模型下描述葡萄干的颜色特征,颜色空间转换完成后如图8所示。
2.4.2 HSV分量均值的提取与分析
利用均值函数mean()和掩膜C、D(图7b、7d)作为模板对采集到的原图像进行操作,得到三通道均值。在原图像上将所识别的葡萄干进行框定并且把获得的分量均值分别输出打印在图像上,如图9所示。分别选取绿、黄、褐色葡萄干各40粒取值,利用MATLAB对获得的数据绘制三维离散点图,如图10所示。
3 葡萄干色泽识别算法验证试验和结果分析
3.1 试验方法
随机选取绿、黄、褐色葡萄干各150粒进行试验,结果如表1。
3.2 结果与分析
保存最小外接矩形对角线交点的X坐标作为该葡萄干轮廓重心的X 坐标;分别比较上、下区域掩膜所保存的X坐标值并保留其最大值,则X坐标最大的葡萄干轮廓即为最靠近图像右侧的完整葡萄干轮廓;得到上、下区域掩膜,分别命名为掩膜C、D(图7b、7d)。
2.4 识别阈值的确定
2.4.1 颜色模型的选择
本文在HSV颜色空间模型下描述葡萄干的颜色特征,颜色空间转换完成后如图8所示。
2.4.2 HSV分量均值的提取与分析
利用均值函数mean()和掩膜图8 HSV空间下相对应的ROI区域由表1,绿色葡萄干的识别正确率为89.33%,黄色为92.00%,褐色为96.67%,其识别效率为21 s/百粒;相比已有研究方法,本文省去制作数据集并训练特征模型的步骤,算法简单、参数修改方便,方便算法移植。相比于市场上现有的葡萄干分级设备,本文方法对于区分黄、绿色葡萄干有较好的效果。
4 结论
(1)对获取的葡萄干图像进行预处理,选取B通道图像并以灰度值55作为阈值进行全局阈值分割。
(2)提出了一种边缘不完整葡萄干轮廓的滤除方法;建立上、下ROI区域、比较图像中所有的葡萄干轮廓的中心坐标、制作了仅保留图像最靠近右侧边缘处完整葡萄干轮廓的多通道掩膜,从而实现对多个葡萄干同时进行识别。
(3)对各色葡萄干共120粒进行了H、S、V 通道均值的提取,得到H 为23和V 为80的识别阈值,并进行了试验验证,得到绿、黄、褐色葡萄干的识别正确率分别为89.33%、92.00%和96.67%,识别效率为21 s/百粒。