A=imread('aaa.tif'); I=rgb2gray(A); trueImage=im2double(I); %轉(zhuǎn)換圖像矩陣為雙精度型 imshow(trueImage); title('原始圖像'); dctm=dctmtx(8); %計算離散余弦變換 imageDCT=blkproc(trueImage,[8 8],'P1*x*P2',dctm,dctm.'); %對圖像I 的每個不同8*8數(shù)據(jù)塊應(yīng)用矩陣式’P1*x*P2’進行處理。 M10=[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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]; %二值掩模,用來壓縮DCT 的系數(shù) newImage2=blkproc(imageDCT,[8 8],'P1*(x.*P2)*P3',dctm',M10,dctm); figure; imshow(newImage2); title('壓縮圖像 M10');
|