早教吧作业答案频道 -->其他-->
谁帮我解释数字图像处理的程序,刚学的,看不懂!程序一:[i,lcmp]=imread('f:\tank.bmp');imshow(i,lcmp);ii=im2double(i);i1 = fft2(ii);i2 =fftshift(i1);i3=log(abs(i2));figure,imshow(i3,[]);colormap(lcmp);imwrite(i3,lcmp,'f:\ffttank.bm
题目详情
谁帮我解释数字图像处理的程序,刚学的,看不懂!
程序一:
[i,lcmp]=imread('f:\tank.bmp');
imshow(i,lcmp);
ii=im2double(i);
i1 = fft2(ii);
i2 =fftshift(i1);
i3=log(abs(i2));
figure,imshow(i3,[]);
colormap(lcmp);
imwrite(i3,lcmp,'f:\ffttank.bmp');
i5 = real(ifft2(ifftshift(i2)));
i6 = im2uint8(mat2gray(i5));
imwrite(i6,lcmp,'f:\tank2.bmp','bmp');
figure,imshow(i6);
title('反变换后的图像');
程序二:
%对autumn.tif文件计算二维DCT变换
RGB = imread('autumn.tif');
I = rgb2gray(RGB);
imshow(I);
J = dct2(I);
figure,imshow(log(abs(J)),[])
colormap(jet(64)),colorbar
figure;
J(abs(J) < 10) = 0;
K = idct2(J)/255;
imshow(K);
title('反变换后的图像');
程序三:
load woman;
imshow(X,map);
nbcol = size(map,1);
[cA1,cH1,cV1,cD1] = dwt2(X,'db1');
cod_X = wcodemat(X,nbcol);
cod_cA1 = wcodemat(cA1,nbcol);
cod_cH1 = wcodemat(cH1,nbcol);
cod_cV1 = wcodemat(cV1,nbcol);
cod_cD1 = wcodemat(cD1,nbcol);
figure
subplot(221)
imshow(cod_cA1,map)
title('近似细节系数')
subplot(222)
imshow(cod_cH1,map)
title('水平细节系数')
subplot(223)
imshow(cod_cV1,map)
title('垂直细节系数')
subplot(224)
imshow(cod_cD1,map)
title('对角细节系数')
Y = idwt2(cA1,cH1,cV1,cD1,'db1',nbcol);
figure;
imshow(Y,map);
title('重构后的图像')
谢谢这个朋友的回答,还有程序三
程序一:
[i,lcmp]=imread('f:\tank.bmp');
imshow(i,lcmp);
ii=im2double(i);
i1 = fft2(ii);
i2 =fftshift(i1);
i3=log(abs(i2));
figure,imshow(i3,[]);
colormap(lcmp);
imwrite(i3,lcmp,'f:\ffttank.bmp');
i5 = real(ifft2(ifftshift(i2)));
i6 = im2uint8(mat2gray(i5));
imwrite(i6,lcmp,'f:\tank2.bmp','bmp');
figure,imshow(i6);
title('反变换后的图像');
程序二:
%对autumn.tif文件计算二维DCT变换
RGB = imread('autumn.tif');
I = rgb2gray(RGB);
imshow(I);
J = dct2(I);
figure,imshow(log(abs(J)),[])
colormap(jet(64)),colorbar
figure;
J(abs(J) < 10) = 0;
K = idct2(J)/255;
imshow(K);
title('反变换后的图像');
程序三:
load woman;
imshow(X,map);
nbcol = size(map,1);
[cA1,cH1,cV1,cD1] = dwt2(X,'db1');
cod_X = wcodemat(X,nbcol);
cod_cA1 = wcodemat(cA1,nbcol);
cod_cH1 = wcodemat(cH1,nbcol);
cod_cV1 = wcodemat(cV1,nbcol);
cod_cD1 = wcodemat(cD1,nbcol);
figure
subplot(221)
imshow(cod_cA1,map)
title('近似细节系数')
subplot(222)
imshow(cod_cH1,map)
title('水平细节系数')
subplot(223)
imshow(cod_cV1,map)
title('垂直细节系数')
subplot(224)
imshow(cod_cD1,map)
title('对角细节系数')
Y = idwt2(cA1,cH1,cV1,cD1,'db1',nbcol);
figure;
imshow(Y,map);
title('重构后的图像')
谢谢这个朋友的回答,还有程序三
▼优质解答
答案和解析
[i,lcmp]=imread('f:\tank.bmp');%显示中心低频部分,加对数是为了更好的显示
程序一
figure,imshow(i3,[]);
colormap(lcmp);
imwrite(i3,lcmp,'f:\ffttank.bmp'); %===将上面i3输入到ffttank文件中
i5 = real(ifft2(ifftshift(i2))); %===频域的图反变换到空域 并取实部
i6 = im2uint8(mat2gray(i5)); %===取其灰度图
imwrite(i6,lcmp,'f:\tank2.bmp','bmp'); %===利用灰度图和原来取得颜色模板 还原图像
figure,imshow(i6);
title('反变换后的图像');
程序二
RGB = imread('autumn.tif'); %===读取图像
I = rgb2gray(RGB); %==将其转为灰度
imshow(I);
J = dct2(I); %==二维dct变换,即离散余弦变换,
figure,imshow(log(abs(J)),[]) %==显示出变换后的图像,此时能量集中在左上角
colormap(jet(64)),colorbar %====建立颜色模板
figure;
J(abs(J) < 10) = 0; %==我理解为:因为dct变换只要保存左上角的低频小块就可以保持原图像信息,故其他部分(高频,其能量较小故值也小)就可以舍去
K = idct2(J)/255; %===这不加255,将下句改成imshow(K,[]);也一样,只是显示的需要
imshow(K);
title('反变换后的图像');
程序三我就不太懂了 %后面是我的解释 很久没碰了 有的可能会有些问题
程序一
figure,imshow(i3,[]);
colormap(lcmp);
imwrite(i3,lcmp,'f:\ffttank.bmp'); %===将上面i3输入到ffttank文件中
i5 = real(ifft2(ifftshift(i2))); %===频域的图反变换到空域 并取实部
i6 = im2uint8(mat2gray(i5)); %===取其灰度图
imwrite(i6,lcmp,'f:\tank2.bmp','bmp'); %===利用灰度图和原来取得颜色模板 还原图像
figure,imshow(i6);
title('反变换后的图像');
程序二
RGB = imread('autumn.tif'); %===读取图像
I = rgb2gray(RGB); %==将其转为灰度
imshow(I);
J = dct2(I); %==二维dct变换,即离散余弦变换,
figure,imshow(log(abs(J)),[]) %==显示出变换后的图像,此时能量集中在左上角
colormap(jet(64)),colorbar %====建立颜色模板
figure;
J(abs(J) < 10) = 0; %==我理解为:因为dct变换只要保存左上角的低频小块就可以保持原图像信息,故其他部分(高频,其能量较小故值也小)就可以舍去
K = idct2(J)/255; %===这不加255,将下句改成imshow(K,[]);也一样,只是显示的需要
imshow(K);
title('反变换后的图像');
程序三我就不太懂了 %后面是我的解释 很久没碰了 有的可能会有些问题
看了 谁帮我解释数字图像处理的程序...的网友还看了以下:
某工厂生产I,II,III型产品共8500件,其中I和II的数量比为1:2,II与III的数量比为 2020-05-21 …
下面是某校I栋,II栋教学楼学校平面图,有一部分重叠在一起,重叠部分是工栋楼的六分之一,II栋楼的 2020-05-22 …
一条组播路由的主要组成部分有 I.源地址 II.组地址 III.入接口列表 IV.出接口列表A.I和 2020-05-23 …
铜(I)和铜(II)有甚麼分别?为什么铜会分(I)(II),有没有(III)?其他的元素会不会分( 2020-06-26 …
C6H5OCH3(I),C6H5COCH3(II),C6H6(III),C6H5Cl(IV)四种化 2020-07-09 …
将人体口腔上皮细胞转移至不同浓度(I,II,III)的三种蔗糖溶液中,结果如图所示.这三种蔗糖溶液 2020-07-29 …
将人体口腔上皮细胞转移至不同浓度(I,II,III)的三种盐溶液中,结果如图所示.这三种溶液的浓度 2020-07-29 …
一道挺难的数学题i*i=-1则x*x=-1可变为x=+i或-ii还具有以下性质:i=ii*i=-1i 2020-11-01 …
Matlab数字图像处理,要求详细解释代码,每个函数都要解释.这个是对图像求幅值谱和相位谱,并对其进 2020-11-01 …
I是恒温恒压密闭容器,II是恒温恒容密闭容器,其它条件相同时,在I,II中分别加入5MOLZ,起始时 2020-12-22 …