设为首页 加入收藏

TOP

OpenCV HSV 颜色模型(H通道取值 && CV_BGR2HSV_FULL)
2014-11-23 17:37:59 】 浏览:327
Tags:OpenCV HSV 颜色 模型 通道 CV_BGR2HSV FULL

之前知道,利用OpenCV把RGB图片像HSV颜色空间转变的时候,


H通道的值范围为: 0-180


S: 0-255


V:0-255


利用直方图显示三个通道的时候,H通道都集中在前半部分,想让它取值范围扩大~~~~~~~


后来发现了 CV_BGR2HSV_FULL ,


CV_BGR2HSV 在转换图像的时候是将 H / 2 ---> H ,我们知道图像中色相H的取值范围为 0-360 ,所以利用opencv转换之后得到的H的范围为 0-180


而 CV_BGR2HSV_FULL 实现的映射是 H * 255 / 360 --->H , 所以利用_FULL 这个转换得到的H通道图像的范围为 0-255


这两种方式都是opencv把[0-360] 的数据压缩到一个字节可以处理的数据。[ 所以这里说的图像的depth = 8, 刚好能表示的最大值是 255]


上面说的图像的 depth = 8, 如果你的图像 位深不是 8位,比如 32 位, 那么你就可以得到 [0, 360] 表示的 H通道图像了。


in fact, HSV颜色模型规定的各通道取值范围为:


H : 0-360 S:0-1 V: 0-1


可以利用 CV_BGR2HSV 得到的 H S V 的  S V /255 转换得到。


对于同一幅图片:


采用CV_BGR2HSV得到的 h s v 三个通道的 直方图分布如下:


OpenCV HSV 颜色模型(H通道取值 && CV_BGR2HSV_FULL)


采用CV_BGR2HSV_FULL得到的 h s v 三个通道的 直方图分布如下:


OpenCV HSV 颜色模型(H通道取值 && CV_BGR2HSV_FULL)


--------------------------------------分割线 --------------------------------------


--------------------------------------分割线 --------------------------------------


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇用OpenCV调整视频大小 下一篇初探JNI技术,HelloWorld 图文详..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目