halcon学习之颜色与纹理

*颜色分析
*在彩色图像上进行分割区域,有时候更有优势,如果目标物是颜色分明或者颜色相近的可以通过转换到
*HSV和HSI进行处理,其中HSV分别代表:色调(Hue)、饱和度(Saturation)、纯度(Value)
*HSI表示色调(Hue)、饱和度(Saturation)、亮度(Intensity)
*色调反应了人眼对颜色的感觉,如是红色还是蓝色
*饱和度反应了颜色中所含颜色数量的差别,如果红色和粉红就不同
*纯度或者亮度反应了光线对颜色的影响程度、或者说颜色的密度如深灰和浅灰的差别

read_image (Image, 'F:/机器视觉/Halcon机器视觉算法原理与编程实战/code/code/data/beads')
*把彩色图片分为三通道
decompose3 (Image, Red, Green, Blue)
sub_image (Blue, Red, ImageSub, 1, 128)
* sub_image (Red, Blue, ImageSub2, 1, 128)
* sub_image (Red, Green, ImageSub3, 1, 128)
sub_image (ImageSub, Green, ImageSub1, 1, 128)
threshold (ImageSub1, Regions, 0, 53)

*例子
read_image (Image1, 'F:/机器视觉/Halcon机器视觉算法原理与编程实战/code/code/data/m105.jpg')
*将彩色图片进行通道分离得到红、绿、蓝三通道图像
decompose3 (Image1, Red, Green, Blue)
*将RGB三通道图像转化为H(色调)、S(饱和度)、V(明度)图像、
trans_from_rgb (Red, Green, Blue, ImageResultH, ImageResultS, ImageResultV, 'hsv')
*对饱和度图像进行阈值处理,以此分割出高饱和度区域
threshold (ImageResultS, Regions1, 192, 255)
*分割区域
reduce_domain (ImageResultH, Regions1, ImageReduced)
*膨胀处理
dilation_circle (Regions1, RegionDilation, 3.5)
*开运算处理
opening_circle (RegionDilation, RegionOpening, 5.5)

文理分析

*纹理分析
read_image (Image2, 'F:/机器视觉/Halcon机器视觉算法原理与编程实战/code/code/data/cloth')
*将彩色图片进行通道分离得到红、绿、蓝三通道图像
decompose3 (Image2, Red2, Green2, Blue2)
*将RGB三通道图像转化为H(色调)、S(饱和度)、V(明度)图像、
trans_from_rgb (Red2, Green2, Blue2, ImageResultH2, ImageResultS2, ImageResultV2, 'hsv')
*进行纹理检测
texture_laws (ImageResultH2, ImageTexture, 'ls', 2, 7)
mean_image (ImageTexture, ImageMean, 11, 11)
threshold (ImageMean, Regions2, 60, 255)
connection (Regions2, ConnectedRegions)
area_center (ConnectedRegions, Area, Row, Column)

猜你喜欢

转载自blog.csdn.net/weixin_42398658/article/details/105749066