文档介绍:图像Demosaic算法
马赛克成因
一般的数码相机采用CDC或CMOS做传感器,约占数码相机总本钱的10%一25%,是相机的最昂贵的部件之一"对于专业相机,如用在科学或医学中的,使用了三个传感器,每一个像素点都可以直接获得R确立之时,已
经获得了整个图片的亮度信号。经过这两个步骤的处理,可以获得 Bayer 图片的重构图像。
以上所述,即是自适应插值法的过程。
实验结果
原图
Bayer阵列
非自适应插值〔双线性〕
自适应插值法
总结
通过三类图像的比较,可以看出真彩色图像的三个颜色通道之间有很强的相
关性,插值最好结合其相关性,而不能依赖于单通道独立插值;其次,由于图片
的失真往往出现在高频区域,必须考虑基于边界的插值方案,对图像的区域细节
特征进行分析,使得插值尽可能沿着边界方向,或是使得边界方向插值核的加权
系数尽可能大。
附录:
Matlab代码
%双线性插值
clear;
clc;
I=imread('');
figure
imshow(I);
[h,w,c]=size(I);
[m,n]=size(I);
m=h,
n=w;
for i=1:2:h
for j=1:w
if mod(j,2)==1
IMG(i,j,1)=I(i,j,1);
else
IMG(i,j,2)=I(i,j,2);
end
end
end
for i=2:2:h
for j=1:w
if mod(j,2)==1
IMG(i,j,2)=I(i,j,2);
else
IMG(i,j,3)=I(i,j,3);
end
end
end
figure
imshow(IMG);
%IMG11=rgb2gray(IMG);
%save('','IMG11')
IMG=double(IMG);
for i=2:2:m-1
for j=2:2:n-1
x11 = IMG(i-1,j-1,1);
x12 =IMG(i-1,j+1,1);
x21 = IMG(i+1,j-1,1);
x22 = IMG(i+1,j+1,1);
IMG(i,j,1) = uint8( ( x11+x21+x12+x22)/4 );
end
end
for i=2:m-1
for j=2:n-1
if IMG(i,j,1)==0
IMG(i,j,1)=*(IMG(i,j+1,1)+IMG(i,j-1,1)+IMG(i+1,j,1)+IMG(i-1,j,1));
else
IMG(i,j,1)=IMG(i,j,1);
end
end
end
for i=2:2:m-1
for j=2:2:n-1
IMG(i,j,2)=*(IMG(i,j+1,2)+IMG(i,j-1,2)+IMG(i+1,j,2)+IMG(i-1,j,2));
end
end
for i=2:m-1
for j=2:n-1
if IMG(i,j,2)==0
x11 = IMG(i-1,j-1,2);
x12 =IMG(i-1,j+1,2);
x21 = IMG(i+1,j-1,2);
x22 = IMG(i+1,j+1,2);
IMG(i,j,2) = uint8( *( x11+x21+x12+x22) );
else
IMG(i,j,2)=IMG(i,j,2);
end
end
end
for i=3:2:m-1
for j=3:2:n-1
x11 = IMG(i-1,j-1,3);
x12 = IMG(i-1,j