資源簡介
高斯金字塔的matlab代碼.給大家分享。
代碼片段和文件信息
%高斯金字塔分成兩步:?一對圖像做高斯平滑???二向下采樣
%以演示開始.后面是處理過程
function?guass()
????imbase=imread(‘cameraman.tif‘);
????imbase=rgb2gray(imbase);
????imsmooth=Guassion(imbase);
????im1=DownSample(imsmooth);
????im1=uint8(im1);
????imwrite(im1‘128.jpg‘);
????imsmooth=Guassion(im1);
????im1=DownSample(imsmooth);
????im1=uint8(im1);
????imwrite(im1‘64.jpg‘);????
????
????imsmooth=Guassion(im1);
????im1=DownSample(imsmooth);
????im1=uint8(im1);
????imwrite(im1‘32.jpg‘);
????imsmooth=Guassion(im1);
????im1=DownSample(imsmooth);
????im1=uint8(im1);
????imwrite(im1‘16.jpg‘);??????
????imsmooth=Guassion(im1);
????im1=DownSample(imsmooth);
????im1=uint8(im1);
????imwrite(im1‘8.jpg‘);???????
%一
%對高斯平滑分成兩步:???一得到高斯平滑函數(shù)的矩陣
%??????????????????????二對圖像做平滑操作對圖像的邊界的處理方法是對稱
%權值之和為零
function?r=GuassionMatrix(deltaradius)
????radius=ceil(radius);
????n=2*radius+1;
????r=zeros(nn);
????%tempMatrix=zeros(radiusradius);
????for?i=-radius:radius
????????for?j=-radius:radius
????????????r(i+radius+1j+radius+1)=exp(-(i^2+j^2)/2*delta^2);
????????end
????end;
????r=round(100*r);???
????r=r/sum(sum(r));
????
評論
共有 條評論