matlab程序 图像合成-电视抠像技术基础()
收藏的资料,分享给大家可以将一个蓝色背景下的图分割出来,再与另一个彩色背景结合
附件包含源程序和图片
f=imread('plane.png');
figure,imshow(f,[]);
X=40;Y=50;
fR=double(f(:,:,1));
fG=double(f(:,:,2));
fB=double(f(:,:,3));
for i=1:165
for j=1:273
if abs(fR(i,j)-65)<40&&abs(fG(i,j)-60)<40&&abs(fB(i,j)-200)<=55
fR(i,j)=0;
fG(i,j)=0;
fB(i,j)=0;
end
end
end
for i=1:165
for j=1:273
if i>160||j>267
fR(i,j)=0;
fG(i,j)=0;
fB(i,j)=0;
end
end
end
f1=fR(1:2:end,1:2:end);
f2=fG(1:2:end,1:2:end);
f3=fB(1:2:end,1:2:end);
ff(:,:,1)=f1;
ff(:,:,2)=f2;
ff(:,:,3)=f3;
ff=mat2gray(ff);
figure,imshow(ff);
g=imread('background.png');
g=mat2gray(double(g));
figure,imshow(g);
ff1=zeros(210,274,3);
ff1(X:X+82,Y:Y+136,1)=f1;
ff1(X:X+82,Y:Y+136,2)=f2;
ff1(X:X+82,Y:Y+136,3)=f3;
ff1=mat2gray(ff1);
figure,imshow(ff1);
for i=1:210
for j=1:274
for k=1:3
if ff1(i,j,k)==0
ff1(i,j,k)=g(i,j,k);
end
end
end
end
figure,imshow(ff1,[]);
这个厉害 ,果断收藏啦 帮顶下,{:smile:} 顶,图像处理
页:
[1]