请高手帮忙:MATLAB程序 编写一个程序,要求实现下列算法:首先将图像分割成许多8X8的子图像 100

要求:首先将图像分割成许多8X8的子图像,对每个子图像进行FFT,对每个子图像中的64个系数,按照每个系数的方差来排序后,舍去小的变换系数,只保留16个系数,实现4:1的... 要求:首先将图像分割成许多8X8的子图像,对每个子图像进行FFT,对每个子图像中的64个系数,按照每个系数的方差来排序后,舍去小的变换系数,只保留16个系数,实现4:1的图像的压缩。 请高手帮忙 要注解哦 快点哦 展开
 我来答
cgyz421
2010-10-21 · TA获得超过238个赞
知道小有建树答主
回答量:120
采纳率:100%
帮助的人:120万
展开全部

clear all;

close all;

clc;

I=double(imread('elain.bmp'));%读入图像

imshow(uint8(I));%显示图像

[Mro,Nco]=size(I);%获得读入图像的大小

fun1=@fft2;   %获得fft变换函数的句柄

Imagefft=blkproc(I,[8,8],fun1);%图像块进行fft变换

Imtemp=double(zeros(Mro,Nco));%设置临时变量用于存处理后的图像值

for ii=1:8:Mro

    for jj=1:8:Nco

        Imtemp(ii:ii+3,jj:jj+3)=Imagefft(ii:ii+3,jj:jj+3);%舍去小的变换系数

    end

end

fun2=@ifft2;

Imageifft=blkproc(Imtemp,[8,8],fun2);%分块逆变换

huifu=uint8(abs(Imageifft)); %取整

figure;

imshow(huifu);  %显示图像

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式