求高手帮我写一个MatLab图像缩放的程序,不要调用imresize函数,不过每一句程序后面有注释。
1个回答
展开全部
先搞清楚缩放的原理, 即抽取和插值,常见的有最近邻插值,双线性插值等
更多追问追答
追问
我知道缩放的原理,可是我就是不会怎么编程,请大牛详解。
追答
那么就给一个邻近法的缩放
a = imread('lena.jpg');
mul = 1.5; %缩放比例
[m,n,c]=size(a); %取得图像大小
m1 = round(m*mul); %缩放后图像大小
n1 = round(n*mul);
if c>1 %是否为彩色图像
b = zeros(m1,n1,3);
else
b = zeros(m1,n1); %黑白图像
end
for i=1:m1
for j=1:n1;
if c>1
b(i,j,:)=a(round(i/mul),round(j/mul),:); %彩色
else
b(i,j)=a(round(i/mul),round(j/mul)); %黑白
end
end
end
figure;imshow(a);title('原图像');
figure;imshow(uint8(b));title('处理后图像');
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询