转自/Eagleest/article/details/34849947
函数 实现将彩色图像转化为直方图分量向量
[html]view plaincopycalcrgb2hist.m文件[plain]view plaincopyfunctionhist=calcrgb2hist(picname) pic1=imread(picname); pic1R=pic1(:,:,1); pic1G=pic1(:,:,2); pic1B=pic1(:,:,3); figure,imshow(pic1R) title('R分量的图像') %二,绘制直方图 [m,n]=size(pic1R);%测量图像尺寸参数 rhist=zeros(1,256);%预创建存放灰度出现概率的向量 fork=0:255 rhist(k+1)=length(find(pic1R==k))/(m*n);%计算每级灰度出现的概率,将其存入rhist中相应位置 end figure,bar(0:255,rhist,'r')%绘制直方图 title('R像直方图') xlabel('灰度值') ylabel('出现概率') %% ghist=zeros(1,256); fork=0:255 ghist(k+1)=length(find(pic1G==k))/(m*n); end figure,bar(0:255,ghist,'g') title('G像直方图') xlabel('灰度值') ylabel('出现概率') %% bhist=zeros(1,256); fork=0:255 bhist(k+1)=length(find(pic1B==k))/(m*n); end figure,bar(0:255,bhist,'b') title('B像直方图') xlabel('灰度值') ylabel('出现概率') hist=[reshape(rhist',1,256),reshape(ghist',1,256),reshape(bhist',1,256)];%将直方图拼接成256*3的向量。 end
下面是执行的主函数[plain]view plaincopyp1=calcrgb2hist('frame22.bmp'); p2=calcrgb2hist('frame22.bmp'); g=corrcoef(p1,p2); fprintf('相关系数为=%d\n',g(1,2));
如果觉得《matlab实现将彩色图像(R G B)色分量的直方图匹配 并计算其相关性》对你有帮助,请点赞、收藏,并留下你的观点哦!