赞
踩
RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是运用最广的颜色系统之一。
HSV 是根据颜色的直观特性创建的一种颜色空间, 也称六角锥体模型(Hexcone Model)。 H(Hue)色度,用角度度量,取值范围为0°~360°,从红色开始按逆时针方向计算,红色为0°,绿色为120°,蓝色为240°。它们的补色是:黄色为60°,青色为180°,紫色为300°;S(Saturation)表示颜色接近光谱色的程度。
一种颜色,可以看成是某种光谱色与白色混合的结果。其中光谱色所占的比例愈大,颜色接近光谱色的程度就愈高,颜色的饱和度也就愈高。饱和度高,颜色则深而艳。光谱色的白光成分为0,饱和度达到最高。通常取值范围为0%~100%,值越大,颜色越饱和。S(Intenstity)饱和度,表示颜色明亮的程度,对于光源色,明度值与发光体的光亮度有关;对于物体色,此值和物体的透射比或反射比有关。通常取值范围为0%(黑)到100%(白)。
利用HSV不同分量具有不同特点,在H或者S通道进行颜色选择
实例程序位置
原图
采取黄色的部分
代码
- * color_simple.hdev: segment yellow cable in HSV color space
- dev_close_window ()
- dev_open_window (0, 0, 640, 480, 'black', WindowHandle)
- for i := 1 to 2 by 1
- read_image (Image, 'cable' + i)
- * 第一步拆分颜色
- decompose3 (Image, Red, Green, Blue)
- * 第二步颜色转换
- trans_from_rgb (Red, Green, Blue, Hue, Saturation, Intensity, 'hsv')
- *第三步 分析H/S分量,Blob分析
- threshold (Saturation, HighSaturation, 100, 255)
- reduce_domain (Hue, HighSaturation, HueHighSaturation)
- threshold (HueHighSaturation, Yellow, 20, 50)
- connection (Yellow, ConnectedRegions)
- *第四步特征提取
- *选择面积最大那个区域
- select_shape_std (ConnectedRegions, SelectedRegions, 'max_area', 0)
- *闭运算:先膨胀后腐蚀
- closing_circle (SelectedRegions, Yellow, 3.5)
- reduce_domain (Image, Yellow, ImageReduced)
- dev_display (HueHighSaturation)
- dev_display (ImageReduced)
- stop ()
- endfor

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。