
一、基于matlab圖像縮小算法
縮小算法與放大算法不同,圖像縮小是通過減少像素個數來實現的。因此,需要根據縮小
的尺寸來選擇合適的像素點,使得圖像縮小后盡可能保持源圖像特征。基于等間隔采樣的縮
小算法。
這種算法是通過對圖像像素的均勻采樣來保持所選擇的像素仍舊保持像素的概貌特征。
算法1通過matlab實現可得:
function small=big2small(A,h,l)
[m,n]=size(A);
k1=m/h;k2=n/l;
small=zeros(h,l);
for i=1:h
for j=1:l
i0=i*k1;j0=j*k2;
i1=floor(i0+0.5);
j1=floor(j0+0.5);
small(i,j)=A(i1,j1);
end
end
end
1、 基于局部均值的縮小算法。
這種算法通過采樣間隔dx,dy將原圖像矩陣分割為一系列小的矩陣,并計算這些小矩陣的
元素的和,再求其均值賦給目標矩陣相應的像素。這樣就避免了算法1中某些未取到的元素
不能將其信息反映到目標矩陣的缺點。
算法2通過matlab實現可得:
function small=big2small2(A,h,l)
[m,n]=size(A); %獲得矩陣A大小
A=im2double(A);
small=zeros(h,l);
for i=1:h
for j=1:l
sum=0;
i1=round((m/h).*(i-1)+1); %將矩陣分塊
j1=round((n/l).*(j-1)+1); %i1,j1為矩陣小塊左上角元素下標
i2=round((m/h).*i);
j2=round((n/l).*j); %i2,j2為矩陣小塊右下角元素下標
for ii=i1:i2
for jj=j1:j2
sum=sum+A(ii,jj); %計算矩陣內元素值的和
end
end
small(i,j)=sum/((i2-i1+1).*(j2-j1+1)); %將均值賦給目標矩陣
end
end
end

本文發布于:2023-11-24 10:18:17,感謝您對本站的認可!
本文鏈接:http://www.newhan.cn/zhishi/a/1700792297224966.html
版權聲明:本站內容均來自互聯網,僅供演示用,請勿用于商業和其他非法用途。如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除。
本文word下載地址:(完整版)基于matlab的圖像縮小算法.doc
本文 PDF 下載地址:(完整版)基于matlab的圖像縮小算法.pdf
| 留言與評論(共有 0 條評論) |