資源簡介
利用MATLAB對圖像進行DCT變換,并濾掉高頻分量,保留低頻分量,并查看結果

代碼片段和文件信息
I=imread(‘sample.jpg‘);?
figureimshow(I);?
J=im2double(I);?
I2=J;
T=dctmtx(8);?
Mask=[1?1?1?1?1?1?0?0??
??????1?1?1?1?1?0?0?0??
??????1?1?1?1?0?0?0?0??
??????1?1?1?0?0?0?0?0?
??????1?1?0?0?0?0?0?0?
??????1?0?0?0?0?0?0?0??
??????0?0?0?0?0?0?0?0?
??????0?0?0?0?0?0?0?0];?
??for?i=1:3
??????B=blkproc(J(::i)[8?8]‘P1*x*P2‘TT‘);
??????B=blkproc(B[8?8]‘P1.*x‘Mask);%此處為點乘
??????I2(::i)=blkproc(B[8?8]‘P1*x*P2‘T‘T);?
??end
figureimshow(I2);%顯示重建后的圖像
K=im2double(I);
I3=K;
Mask1=[0?0?0?0?0?0?0?0??
??????0?0?0?0?0?0?0?0??
??????0?0?0?0?0?0?0?1??
??????0?0?0?0?0?0?1?1?
??????0?0?0?0?0?1?1?1?
??????0?0?0?0?1?1?1?1??
??????0?0?0?1?1?1?1?1?
??????0?0?1?1?1?1?1?1];?
??for?i=1:3
??????B=blkproc(K(::i)[8?8]‘P1*x*P2‘TT‘);
??????B=blkproc(B[8?8]‘P1.*x‘Mask);%此處為點乘
??????I3(::i)=blkproc(B[8?8]‘P1*x*P2‘T‘T);?
??end
??
??figureimshow(I3);%顯示重建后的圖像
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????115200??2009-10-09?14:51??DCT變換\作業說明.doc
?????文件??????80691??2009-05-19?07:14??DCT變換\原圖像.jpg
?????文件??????72608??2009-05-19?07:15??DCT變換\變換后圖像.jpg
?????文件??????28063??2009-05-19?07:18??DCT變換\變換后圖像2.jpg
?????文件????????720??2009-05-19?07:00??DCT變換\源代碼.asv
?????文件????????935??2009-05-19?07:00??DCT變換\源代碼.m
?????目錄??????????0??2009-10-09?14:51??DCT變換
-----------?---------??----------?-----??----
???????????????298217????????????????????7
評論
共有 條評論