1、彩色图像处理部分程序例9.1clear rgb_R=zeros(128,128);rgb_R(1:64,1:64)=1;rgb_G=zeros(128,128);rgb_G(1:64,65:128)=1;rgb_B=zeros(128,128);rgb_B(65:128,1:64)=1;rgb=cat(3,rgb_R,rgb_G,rgb_B);figure,imshow(rgb),title例9.2rgb=imread(i_flower673.jpg);rgb1=im2double(rgb);r=rgb1(:, :,1);g=rgb1(:, :,2);b=rgb1(:,:,3);I=(r+g+
2、b)/3;tmp1=min(min(r,g),b);tmp2=r+g+b;tmp2(tmp2=0)=eps;S=1-3.*tmp1./tmp2;tmp1=0.5*(r-g)+(r-b);tmp2=sqrt(r-g).2+(r-b).*(g-b);theta=acos(tmp1./(tmp2+eps);H=theta;H(bg)=2*pi-H(bg);H=H/(2*pi);H(S=0)=0;例9.3I=imread(i_peppers_gray.bmp);GS8=grayslice(I,8);GS64=grayslice(I,64);subplot(1,3,1),imshow(I),titles
3、ubplot(1,3,2),subimage(GSB,hot(8),titlesubplot(1,3,3),subimage(GS64,hot(64),title例6.4I=imread(i_boat.bmp);I=double(I);m,n=size(I);L=256;for i=1:mif j=1:nif I(i,j)L/4R(i,j)=0;G(i,j)=4*I(i,j);B(i,j)=L;else if I(i,j)=L/2;R(i,j)=0;G(i,j)=L;B(i,j)=-4*I(i,j)+2*L;else if I(i,j)g)=2*pi-H1(bg);H1(S=0)=0;I=hi
4、steq(I1);hsi=cat(3,H1,S,I);H=hsi(:,:,1)*2*pi;S=hsi(:,:,2);I=hsi(:,:,3);R=zeros(size(hsi,1),size(hsi,2);G=zeros(size(hsi,1),size(hsi,2);B=zeros(size(hsi,1),size(hsi,2);ind=find(H=0)&(H2*pi/3)&(H2*pi/3)&(H=4*pi/3)&(H0.3*(max(max(S(:);F=S1.*H;例9.11rgb=imread(flower608.jpg);rgb1=im2double(rgb);r=rgb1(:,
5、:,1);g=rgb1(:,:,2);b=rgb1(:,:,3);r1=r(129:256,86:170);r1_u=mean(mean(r1(:);m,n=size(r1);sd1=0.0;for i=1:m;for j=1:nsd1=sd1+(r1(i,j)-r1_u)*(r1(i,j)-r1_u);endr1_d=sqrt(sd1/(m*n);r2_d=zeros(size(rgb1,1),size(rgb1,2);ind=find(rr1_u-1.25*r1_d)&(rr1_u+1.25*r1_d);r2(ind)=1;例9.12 rgb=imread(lena.jpg);sob=fs
6、pecial(sobel);Rx=imfilter(double(rgb(:,:,1),sob,replicate);Ry=imfilter(double(rgb(:,:,1),sob,replicate);Gx=imfilter(double(rgb(:,:,2),sob,replicate);Gy=imfilter(double(rgb(:,:,2),sob,replicate);Bx=imfliter(double(rgb(:,:,3),sob,replicate);By=imfliter(double(rgb(:,:,3),sob,replicate);r_gradiant=mat2g
7、ray(max(Rx,Ry);g_gradiant=mat2gray(max(Gx,Gy);b_grandiant=mat2gray(max(Bx,By);rgb_grandiant=rgb2gray(cat(3,r_grantiant,g_grantiant,b_grandiant);gxx=Rx.2+Gx.2+Bx.2;gyy=Ry.2+By.2;+Gx.2;theta=0.5*(atan(2*gxy./(gxx-gyy+eps);G1=0.5*(gxx+gyy)+(gxx-gyy).*cos(2*theta)+2*gxy.*sin(2*theta);theta=0.5*(gxx+gyy)+(gxx-gyy).*cos(2*theta)+2*gxy.*sin(2*theta);G2=0.5*(gxx+gyy)+(gxx-gyy).*cos(2*theta)+2*gxy.*sin(2*theta);G1=G1.0.5;G2=G2.0.5;rgb_vectorgradiant=mat2gray(max(G1,G2);diff=abs(rgb_vectorgradiant-rgb_gradiant);
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2