颜色是物体表面的固有特征,在目标识别和图像分割中有着无法替代的作用。
机器视觉利用光电成像系统和图像处理模块对物体进行尺寸、形状、颜色等的识别。这样就把计算机的快速性、可重复性与人眼视觉的高度智能化和抽象能力相结合,用机器代替人眼来作各种测量和判断,大大提高了生产的柔性和自动化程度。
图像处理中最适合显示系统的颜色空间是RGB颜色空间,但其R、G、B3个分量高度相关,阈值选择困难。
本项目选择静态图像识别和动态实时检测两种模式,检测图像中RGB颜色。原理是通过计算机对获取的图像经过颜色变换与设定的阈值纪念性比较,对平滑处理的前馈图像进行分割识别,从而检测出画面中不同RGB颜色的目标区域/物体。
静态检测可以识别示例图像中的RGB颜色,也可以通过相机拍摄识别拍摄采集到的画面当中的RGB颜色。首先拍摄一张待检测图片,并打开拍摄得到的图像,选择待检测颜色后,点击开始检测,如下图所示:
动态检测需要设置摄像头帧率,一般设置100帧比较合适,点击设置后开始检测,在右方的预览框中可以看到实时画面和颜色识别画面。如下图所示:
实验结束后,点击重置按钮,及时释放资源,或者切换识别模式。
项目资源下载请参见:MATLAB实现物体颜色识别【图像处理实战】