在RGB到HSV的转换中,V=max(R,G,B),V不是RGB中的最大值吗?范围应该是在0~255之间,怎么会在0~1之间?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在RGB到HSV的转换中,V=max(R,G,B),V不是RGB中的最大值吗?范围应该是在0~255之间,怎么会在0~1之间?相关的知识,希望对你有一定的参考价值。
参考技术A 亮度V:取值范围为0.0(黑色)~1.0(白色)。 V是亮度 HSV中 色调(H),饱和度(S),亮度(V)色调H:用角度度量,取值范围为0°~360°,从红色开始按逆时针方向计算,红色为0°,绿色为120°,蓝色为240°。它们的补色是:黄色为60°,青色为180°,品红为300°;
饱和度S:取值范围为0.0~1.0;
亮度V:取值范围为0.0(黑色)~1.0(白色)。
RGB和CMY颜色模型都是面向硬件的,而HSV(Hue Saturation Value)颜色模型是面向用户的。
图像处理——RGB-YRK-YUV-YCrCb的转换
一、和rgb之间换算公式的差异 yuv<-->rgb Y‘= 0.299*R‘ + 0.587*G‘ + 0.114*B‘ U‘= -0.147*R‘ - 0.289*G‘ + 0.436*B‘ = 0.492*(B‘- Y‘) V‘= 0.615*R‘ - 0.515*G‘ - 0.100*B‘ = 0.877*(R‘- Y‘) R‘ = Y‘ + 1.140*V‘ G‘ = Y‘ - 0.394*U‘ - 0.581*V‘ B‘ = Y‘ + 2.032*U‘ yCbCr<-->rgb Y’ = 0.257*R‘ + 0.504*G‘ + 0.098*B‘ + 16 Cb‘ = -0.148*R‘ - 0.291*G‘ + 0.439*B‘ + 128 Cr‘ = 0.439*R‘ - 0.368*G‘ - 0.071*B‘ + 128 R‘ = 1.164*(Y’-16) + 1.596*(Cr‘-128) G‘ = 1.164*(Y’-16) - 0.813*(Cr‘-128) - 0.392*(Cb‘-128) B‘ = 1.164*(Y’-16) + 2.017*(Cb‘-128) Note: 上面各个符号都带了一撇,表示该符号在原值基础上进行了gamma correction
二、来源上的差异 yuv色彩模型来源于rgb模型, 该模型的特点是将亮度和色度分离开,从而适合于图像处理领域。 应用:basic color model used in analogue color TV broadcasting.
YCbCr模型来源于yuv模型。YCbCr is a scaled and offset version of the YUV color space. 应用:数字视频,ITU-R BT.601 recommendation
ps: 通过上面的比较可以确定,我们在h.264,mpeg等编码标准中用的yuv其实是YcbCr,大家不要被名称搞混淆了 |
以上是关于在RGB到HSV的转换中,V=max(R,G,B),V不是RGB中的最大值吗?范围应该是在0~255之间,怎么会在0~1之间?的主要内容,如果未能解决你的问题,请参考以下文章