标注Halcon用比较简单的方法进行颜色识别(但此方法对光线的干扰较大)
步骤方法:
- 加载原图
- 转成hsv图像
- 对通道图像进行二值化
- 分离通道-选择区域-合并区域
- 闭运算(增加像素点)先膨胀再腐蚀
- 合并mask
read_image (Squire1, 'D:/tu/squire1.jpeg')
* 转化hsv颜色通道
decompose3(Squire1, Image1, Image2, Image3)
trans_from_rgb(Image1, Image2, Image3, ImageResult1, ImageResult2, ImageResult3, 'hsv')
* 二值化
threshold (ImageResult3, Regions, 0, 127)
* 分离区域
connection(Regions, ConnectedRegions)
* 根据自己需要筛选图像范围
select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 15253.6, 24891.3)
* 合并区域
union1(SelectedRegions, RegionUnion)
* 闭运算(增加像素点)先膨胀再腐蚀
closing_rectangle1(RegionUnion, RegionClosing, 15, 15)
* 合并mask
reduce_domain(Squire1, RegionUnion, ImageReduced)
key:使用这两个选项选择阈值参数和逻辑参数:
过程效果图: