基于HSV颜色空间的辅助车牌定位

HSV颜色空间(H代表色调,S即饱和度,V是亮度)

色调H

用角度度量,取值范围为0°~360°,从红色开始按逆时针方向计算,红色为0°,绿色为120°,蓝色为240°。它们的补色是:黄色为60°,青色为180°,品红为300°;

饱和度S

饱和度S表示颜色接近光谱色的程度。一种颜色,可以看成是某种光谱色与白色混合的结果。其中光谱色所占的比例愈大,颜色接近光谱色的程度就愈高,颜色的饱和度也就愈高。饱和度高,颜色则深而艳。光谱色的白光成分为0,饱和度达到最高。通常取值范围为0%~100%,值越大,颜色越饱和。

 

RGB颜色

色度

饱和度

亮度

蓝色

240

1

1

黄色

60

1

1

白色

无意义

0

1

黑色

无意义

0

0

获取HSV的原理:




颜色分割(辅助定位):

H(i,j)s(i,j)分别是i,j处像素的色调和分量,B(i,j)是分割的二值图像。

参考文献:复杂场景下车牌定位与字符切分方法研究_侯永顺

 
 

根据实际情况多次实验修改参数后得到

0.6、0.620.5是经实验后调整所得的值,适用于蓝色车牌(车身颜色在色调筛选范围内的情况并不适用)。如果是警车、新能源汽车车牌则需要另外设置参数,在此未做过多的探讨。

辅助定位流程图:

 

效果图:

 

RGB—HSV 

方法一:

I=imread('C:\Users\admin\Desktop\photo\lenna256c.bmp','bmp'); 

H=double(I);%HRGB图像

 [hue,s,v]=rgb2hsv(H); 

 subplot(1,4,1);imshow(I);title('原图'); 

 subplot(1,4,2);imshow(hue);title('H'); 

subplot(1,4,3);imshow(s);title('S'); 

subplot(1,4,4);imshow(v);title('V');%直接转为HSV三图层

方法二:

RGB=imread('C:\Users\admin\Desktop\photo\lenna256c.bmp','bmp'); 

I=rgb2hsv(RGB); 

imshow(I),title('HSV'); 

H=double(I);%HRGB图像

[hue,s,v]=rgb2hsv(H); 

 subplot(1,4,1);imshow(I);title('原图'); 

subplot(1,4,2);imshow(hue);title('H'); 

subplot(1,4,3);imshow(s);title('S'); 

subplot(1,4,4);imshow(v);title('V');%RGB先转HSV,再转为HSV

猜你喜欢

转载自blog.csdn.net/revitalise/article/details/79341419