| 查看: 1420 | 回复: 0 | |||
[求助]
求详解基于DCT的图像压缩代码解释。运行让我输入压缩比,但是不知道怎么输入!
|
|
clc clear I=imread('Leonardo DiCaprio.bmp');%图像读入 I=im2double(I); I1=dct2(I);%图像dct变换 [n m]=size(I1);%求出DCT系数 C=zeros(n,m); a=I1(1, : ); for i=2:1:m a=[a I1(1, : )]; end A=abs(a); A=sort(A,'descend'); N=input('请输入压缩比'); K2=int16(sqrt(n*m/N)); C1=zeros(n,m);%量化 C1(1:K2,1:K2)=I1(1:K2,1:K2); B1=idct2(C1); K=A(1,N); MAX=A(1,1); MAX=MAX+1; A1=ones(n,m);%DCT系数量化和模板设置 A2=zeros(n,m); for i=1:1:n for j=1:1:m if ads(I1(j,i))<k A1(j,i)=0; else if I1(j,i)>0 A2(j,i)=i+(j-1)*n; else A2(j,i)=-(i+(j-1)*n); end end end end end I1=I1/MAX;%压缩编码 I1=I1.*A1; I1=I1+A2; b=zeros(1,N); num=1; for i=1:1:n for j=1:1:m if I1(i,j)~=0 b(1,num)=I1(i,j); num=num+1; end end end I1=I1-fix(I1);%解码 I1=I1*MAX; I1=idct2(I1); subplot(121),imshow(I);title('原始图像'); subplot(122),imshow(B1);title('压缩图像'); |
» 猜你喜欢
284求调剂
已经有10人回复
一志愿山东大学药学学硕求调剂
已经有4人回复
07化学280分求调剂
已经有4人回复
298-一志愿中国农业大学-求调剂
已经有12人回复
求材料,环境专业调剂
已经有3人回复
335求调剂
已经有5人回复
求调剂
已经有7人回复
一志愿吉大化学322求调剂
已经有4人回复
环境学硕288求调剂
已经有8人回复
341求调剂(一志愿湖南大学070300)
已经有6人回复













回复此楼
点击这里搜索更多相关资源