HSV 量化

Posted gccbuaa

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HSV 量化相关的知识,希望对你有一定的参考价值。

function L=hsvquan(hsv) 
%对HSV进行量化,把3个颜色分量合成为一维特征矢量: 
h=hsv(:,:,1); 
s=hsv(:,:,2); 
v=hsv(:,:,3); 
 
% 假设对HSV 空间进行适当的量化后再计算直方图, 则计算量要少得多. 我们将H , S ,V 3个分量依照人的颜色感知进行非等间隔的量化, 从对颜色模型的大量分析, 我们把 
% 色调H 空间分成8份, 饱和度S 和亮度V 空间分别分成3份, 并依据色彩的不同范围进行量化, 量化后的色 
% 调、饱和度和亮度值分别为H , S ,V. 
h=h*360; 
H=zeros(size(hsv,1),size(hsv,2)); 
H(h>=316|h<=20)=0; 
H(h>=21&h<=40)=1; 
H(h>=41&h<=75)=2; 
H(h>=76&h<=155)=3; 
H(h>=156&h<=190)=4; 
H(h>=191&h<=270)=5; 
H(h>=271&h<=295)=6; 
H(h>=296&h<=351)=7; 
 
 
 
S=zeros(size(hsv,1),size(hsv,2)); 
S(s>=0&s<=0.2)=0; 
S(s>0.2&s<=0.7)=1; 
S(s>0.7&s<=1)=2; 
 
 
V=zeros(size(v)); 
V(v>=0&v<=0.2)=0; 
V(v>0.2&v<=0.7)=1; 
V(v>0.7&v<=1)=2; 
 
 l=9*H+3*S+V; 
 
% L=mat2gray(l); 
% histL=imhist(L,72); 
for i=0:71 
    L(i+1)=numel(l(l==i)); 
end 

以上是关于HSV 量化的主要内容,如果未能解决你的问题,请参考以下文章

将 Opencv hsv 转换为 Matlab Hsv

使用 imshow 绘制 hsv 值

如何将 RGB 颜色转换为 HSV?

OpenCV Java,读取中心像素的 HSV 值

javascript中的RGB到HSV颜色? [关闭]

Python图片颜色特征提取——HSV中心距法(附代码及注释)