D = dct2(rgb2gray(I));
axes(handles.axes1);
imshow(log(abs(D)));
title('DCT系数');
D(90:100,23:50) = 0; %丢弃部分高频分量
axes(handles.axes2);
imshow(D);
title('丢弃部分高频的DCT系数');
subf=f(1:128,1:128)
per=norm(subf)/norm(D)
per= 0.9999
for i=1:256
for j=1:256
if(i+j)>256
repf(i,j)=0
end
end
end
per2=norm(repf)/norm(D)
per2= 1.0000
I2 = idct2(repf); %频谱进行逆变换
axes(handles.axes3);
image(wcodemat(I2));
title('压缩后的图像');
这是Matlab用GUI制作DCT压缩的代码,里面subf=f(1:128,1:128) 语句错了,该如何修改,求大神帮帮忙
axes(handles.axes1);
imshow(log(abs(D)));
title('DCT系数');
D(90:100,23:50) = 0; %丢弃部分高频分量
axes(handles.axes2);
imshow(D);
title('丢弃部分高频的DCT系数');
subf=f(1:128,1:128)
per=norm(subf)/norm(D)
per= 0.9999
for i=1:256
for j=1:256
if(i+j)>256
repf(i,j)=0
end
end
end
per2=norm(repf)/norm(D)
per2= 1.0000
I2 = idct2(repf); %频谱进行逆变换
axes(handles.axes3);
image(wcodemat(I2));
title('压缩后的图像');
这是Matlab用GUI制作DCT压缩的代码,里面subf=f(1:128,1:128) 语句错了,该如何修改,求大神帮帮忙