在网上找了一些图片,提取了一部分肤色的RGB和HBV模型的参数值。
I=imread('C:\Users\83543\Desktop\fuse\1.jpg')%读取图片并得到他的三维矩阵
%imshow(I);
R=I(:,:,1); %红色通道 转化为unit8类型 0-255 取其中一维
G=I(:,:,2); %绿色通道
B=I(:,:,3); %蓝色通道
id=R>150&G>100&G<210&B>90&B<200&(G-B)<40&(R-G)>20&(R-G)<60&((R-G)./(G-B))<9; %阈值
figure,subplot(3,1,1),imshow(I),title('原图'),
subplot(3,1,2),imshow(id),title('RGB模式') %显示原始图像和改变后的对比
I1=rgb2hsv(I); %把RGB转换为HSV
H=I1(:,:,1); %得到色调...
S=I1(:,:,2);
V=I1(:,:,3);
id1=H>0.01&H<0.2&S<0.68&S>0.1&V>0.5;
subplot(3,1,3),imshow(id1),title('HSV模式')
检测效果:
参考:https://blog.csdn.net/qq_42037746/article/details/92399077