|
A=imread('aaa.tif'); I=rgb2gray(A); trueImage=im2double(I); %轉換圖像矩陣為雙精度型 imshow(trueImage); title('原始圖像'); dctm=dctmtx(8); %計算離散余弦變換 imageDCT=blkproc(trueImage,[8 8],'P1*x*P2',dctm,dctm.'); %對圖像I 的每個不同8*8數據塊應用矩陣式’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 的系數 newImage2=blkproc(imageDCT,[8 8],'P1*(x.*P2)*P3',dctm',M10,dctm); figure; imshow(newImage2); title('壓縮圖像 M10');
|