文档库 最新最全的文档下载
当前位置:文档库 › 实验三 图像变换.

实验三 图像变换.

实验三 图像变换.
实验三 图像变换.

信息工程学院实验报告

课程名称:数字图像处理

实验项目名称:实验三图像变换实验时间:2016.10.21

班级:姓名:学号:

一、实验目的

1. 了解图像变换的意义和方法;

2. 熟悉傅立叶变换的基本性质;

3. 熟练掌握 FFT 变换方法及应用;

4. 通过实验了解二维频谱的分布特点;

5. 通过本实验掌握利用 MATLAB 编程实现数字图像的傅立叶变换。

6. 评价人眼对图像幅频特性和相频特性的敏感度。

二、实验设备与软件

1. PC计算机系统

2. MATLAB软件,包括图像处理工具箱 (Image Processing Toolbox

3. 实验图片

三、实验内容及结果分析

1. lena.tiff 加上 1%的椒盐噪声作为源图像,对其进行傅里叶变换,然后分别用两种方法抑制部分频谱, 一是直接抑制其高频分量, 另一种抑制掉幅值小于阈值 t 的频率分量。再进行傅里叶反变换,得到频域滤波后的图像,分别与源图像作比较,观察结果、比较分析。 (提示:参考源码 fftquzao.m, 试着改变低通滤波器半径 r 和幅值阈值,分别观察它们对去噪效果的影响

(1 程序代码:

%1.第一种方法直接抑制高频信息

I=imread('lena.tiff' ;

I=imnoise(I,'salt & pepper',0.01; subplot(2,2,1;

imshow(I;

title(' 源图像 ' ;

J=fft2(I;

[m,n]=size(J;

%低通滤波器半径 ,rm=rn=10

Rm1=m/2-10;

Rn1=n/2-10; %低通滤波器半径 ,rm=rn=25

Rm2=m/2-25;

Rn2=n/2-25;

%低通滤波器半径 ,rm=rn=50;

Rm3=m/2-50;

Rn3=n/2-50;

J1=J;

J2=J;

J3=J;

J1(m/2-Rm1:m/2+Rm1,n/2-Rn1:n/2+Rn1

J2(m/2-Rm2:m/2+Rm2,n/2-Rn2:n/2+Rn2=0;

J3(m/2-Rm3:m/2+Rm3,n/2-Rn3:n/2+Rn3=0;

I1=ifft2(J1; I2=ifft2(J2; I3=ifft2(J3; subplot(2,2,2

imshow(uint8(real(I1;

title(' 经过低通滤波的源图像 ,rm=rn=10'; subplot(2,2,3

imshow(uint8(real(I2; title(' 经过低通滤波的源图像 ,rm=rn=25'; subplot(2,2,4 imshow(uint8(real(I3; title(' 经过低通滤波的源图

像 ,rm=rn=50';

执行结果:

源图

经过低通滤波的源图像 ,rm=rn=10

经过低通滤波的源图像 ,rm=rn=25经过低通滤波的源图像 ,rm=rn=50

经过低通滤波的源图像 ,rm=rn=10

经过低通滤波的源图像 ,rm=rn=25

经过低通滤波的源图像 ,rm=rn=50

(2程序代码:

%1.第二种方法抑制掉频谱中幅值低于一定阈值的频率分量

I=imread('lena.tiff' ;

I=imnoise(I,'salt & pepper',0.01; subplot(2,2,1; imshow(I; title(' 源图像 ' ; J=fft2(I;

% t1=0.05,0.1,0.2; 对去噪效果的影响 t1=0.05;

t2=0.1; t3=0.2;

F=abs(J;%求幅值谱 F=F/512/512; J1=J; for i=1:m for j=1:n if F(i,j< t1 J1(i,j=0; end

end J2=J; for i=1:m for j=1:n if F(i,j< t2 J2(i,j=0; end end end J3=J; for i=1:m for

j=1:n if F(i,j< t3 J3(i,j=0; end end

I1=ifft2(J1; subplot(2,2,2;

imshow(uint8(real(I1; title(' 抑制掉次要频率成分之后的源图像 ,t=0.05'; I2=ifft2(J3; subplot(2,2,3;

imshow(uint8(real(I2; title(' 抑制掉次要频率成分之后的源图像 ,t=0.1'; I3=ifft2(J3; subplot(2,2,4;

imshow(uint8(real(I3; title(' 抑制掉次要频率成分之后的源图像 ,t=0.2';

执行结果:

源图

抑制掉次要频率成分之后的源图像 ,t=0.05

抑制掉次要频率成分之后的源图像 ,t=0.1抑制掉次要频率成分之后的源图像 ,t=0.2

抑制掉次要频率成分之后的源图像 ,t=0.05

抑制掉次要频率成分之后的源图像 ,t=0.1

抑制掉次要频率成分之后的源图像 ,t=0.2

实验结果分析:

由实验结果可知,通过直接抑制图像高频信息,所得到的图像比原图像的边缘更平滑,其低通滤波半径越小,图像的边缘区域将越平滑;通过抑制掉频谱中幅值低于一定

阈值 t 的频率分量, t 越小处理后得到的图像越接近越图像;通过去噪最优对比抑制掉频谱中幅值低于一定阈值的频率分量的去噪效果要比直接抑制图像高频信息的去噪效果好。

2. 分析图像不同频率分量与图像灰度变化的关系:分别对图像 lena.tiff 进行低通和高通滤波并改变各自的滤波半径,观察结果、比较分析。 (参考源码 fftlvbo.m (1程序代码: clear;

I=imread('lena.tiff' ; subplot(231; imshow(I; title(' 源图像 ' ; J=fft2(I; [m,n]=size(J; Rm=m/2-2; Rn=n/2-2; J1=J;

J1(m/2-Rm:m/2+Rm,n/2-Rn:n/2+Rn=0; I1=ifft2(J1; subplot(232

imshow(uint8(real(I1;

title(' 经过低通滤波的源图像, rm=rn=2'; Rm=m/2-5; Rn=n/2-5; J2=J;

J2(m/2-Rm:m/2+Rm,n/2-Rn:n/2+Rn=0; I2=ifft2(J2; subplot(233

imshow(uint8(real(I2;

title(' 经过低通滤波的源图像, rm=rn=5'; Rm=m/2-10; Rn=n/2-10;

J3=J;

J3(m/2-Rm:m/2+Rm,n/2-Rn:n/2+Rn=0; I3=ifft2(J3; subplot(234

imshow(uint8(real(I3; title(' 经过低通滤波的源图像, rm=rn=10'; Rm=m/2-20; Rn=n/2-20; J4=J;

J4(m/2-Rm:m/2+Rm,n/2-Rn:n/2+Rn=0; I4=ifft2(J4; subplot(235

imshow(uint8(real(I4; title(' 经过低通滤波的源图像, rm=rn=20'; Rm=m/2-30; Rn=n/2-30; J5=J;

J5(m/2-Rm:m/2+Rm,n/2-Rn:n/2+Rn=0; I5=ifft2(J5; subplot(236

imshow(uint8(real(I5; title(' 经过低通滤波的源图像, rm=rn=30';

执行结果:

源图

经过低通滤波的源图像 ,

rm=rn=2

经过低通滤波的源图像 , rm=rn=5

经过低通滤波的源图像 , rm=rn=10经过低通滤波的源图像 ,

rm=rn=20经过低通滤波的源图像 , rm=rn=30

经过低通滤波的源图像 ,

rm=rn=10经过低通滤波的源图像 ,

rm=rn=20经过低通滤波的源图像 , rm=rn=30

(2程序代码:

clear;

I=imread('lena.tiff' ; subplot(231; imshow(I; title(' 源图像 ' ; J=fft2(I; [m,n]=size(J; rm=m/2-254; rn=n/2-254; J1=fftshift(J;

J1(m/2-rm:m/2+rm,n/2-rn:n/2+rn=0; J1=ifftshift(J1; I1=ifft2(J1; subplot(232

imshow(uint8(real(I1; title(' 经过高通滤波的源图像, rm=rn=254'; rm=m/2-251; rn=n/2-251; J2=fftshift(J;

J2(m/2-rm:m/2+rm,n/2-rn:n/2+rn=0; J2=ifftshift(J2; I2=ifft2(J2; subplot(233

imshow(uint8(real(I2,[]; title(' 经过高通滤波的源图像, rm=rn=251'; rm=m/2-246; rn=n/2-246;

J3=fftshift(J;

J3(m/2-rm:m/2+rm,n/2-rn:n/2+rn=0; J3=ifftshift(J3; I3=ifft2(J3; subplot(234

imshow(uint8(real(I3,[]; title(' 经过高通滤波的源图像, rm=rn=246'; rm=m/2-236; rn=n/2-236; J4=fftshift(J;

J4(m/2-rm:m/2+rm,n/2-rn:n/2+rn=0; J4=ifftshift(J4; I4=ifft2(J4; subplot(235

imshow(uint8(real(I4,[]; title(' 经过高通滤波的源图像, rm=rn=236'; rm=m/2-226; rn=n/2-226; J5=fftshift(J;

J5(m/2-rm:m/2+rm,n/2-rn:n/2+rn=0; J5=ifftshift(J5; I5=ifft2(J5; subplot(236

imshow(uint8(real(I5,[]; title(' 经过高通滤波的源图像, rm=rn=226';

执行结果:

第 6 页共 16 页

源图

像经过高通滤波的源图像 ,

rm=rn=254经过高通滤波的源图像 ,

rm=rn=251

经过高通滤波的源图像 ,

rm=rn=246经过高通滤波的源图像 ,

rm=rn=236经过高通滤波的源图像 , rm=rn=226

实验结果分析:

由实验结果可知,边缘区域的灰度变换加大,也就是频率较高。低通滤波保留图像低频部分抑制高频部分,其影响的是图像边缘的平滑程度,低通滤波半径越小,图像的边缘区域将越平滑;高通滤波是保留图像高频部分削弱低频部分的处理,是对图像边缘提取与增强。对于高通滤波,边缘部分将被保留,非边缘部分将被过滤,起到锐化作用。高通滤波的半径越小,过滤越明显。

3. 对图像 1.bmp 分别沿着垂直方向和水平方向进行平移之后,得到图像 2.bmp 和 3.bmp ,编写程序观察原图的傅里叶频谱与平移后的傅里叶频谱的对应关系。(提示,分别对 1.bmp 、 2.bmp 和 3.bmp 求傅里叶变换,再求各自的频谱和相位谱,观察其结果并分析。参考教材 58页例

4.6和源码文件 fftxingzhi.m (1程序代码:

I1=imread('1.bmp' ; F1=fft2(I1;%二维离散傅里叶变换 F1=fftshift(F1;%把坐标原点移到频谱图中心位置 %归一化频谱 a1=abs(F1;

ua1=(a1-min(min(a1/(max(max(a1-min(min(a1; subplot(3,2,1; imshow(I1; subplot(3,2,2; imshow(ua1;

I2=imread('2.bmp' ;

F2=fft2(I2;%二维离散傅里叶变换 F2=fftshift(F2;%直流分量移到频谱中心

a2=abs(F2;

ua2=(a2-min(min(a2/(max(max(a2-min(min(a2; subplot(3,2,3; imshow(I2; subplot(3,2,4; imshow(ua2; I3=imread('3.bmp' ;

F3=fft2(I3;%二维离散傅里叶变换

第 7 页共 16 页

F3=fftshift(F3;%直流分量移到频谱中心 a3=abs(F3;

ua3=(a3-min(min(a3/(max(max(a3-min(min(a3; subplot(3,2,5; imshow(I3; subplot(3,2,6; imshow(ua3;

aF1=angle(F1;%三幅图像的相位谱 aF2=angle(F2; aF3=angle(F3;

uaF1=(aF1-min(min(aF1/(max(max(aF1-min(min(aF1;

uaF2=(aF2-min(min(aF2/(max(max(aF2-min(min(aF2;

uaF3=(aF3-min(min(aF3/(max(max(aF3-min(min(aF3; figure; subplot(331; imshow(I1; title(' 图像 1' ; subplot(332; imshow(log(a1,[];

title(' 图像 1幅值谱 ' ; subplot(333; imshow(uaF1; title(' 图像 1相位谱 ' ; subplot(334; imshow(I2; title(' 图像 2' ; subplot(335; imshow(log(a2,[]; title(' 图像 2幅

值谱 ' ; subplot(336; imshow(uaF2; title(' 图像 2相位谱 ' subplot(337; imshow(I3; title(' 图像 3' ; subplot(338; imshow(log(a3,[]; title(' 图像 3幅值谱 ' ; subplot(339;

imshow(uaF3; title(' 图像 3相位谱 ' ;

执行结果:

图像

1

图像 1幅值

图像 1相位

图像

2图像 2幅值

谱图像 2相位

图像

3图像 3幅值

谱图像 3相位谱

实验结果分析:

由实验结果可知,图像 1分别经过 X 轴和 Y 轴上的平移后得到的图像 2和图像3的离散傅里叶变换幅值图与原图像得到的傅里叶变换幅值图基本相同,而平移后的相位谱发生较大的变化。可知图像的平移将不改变频谱的幅值,而改变频谱的相位。

4. 对图 4.bmp 和

5.bmp 分别做旋转,观察原图的傅里叶频谱与旋转后的傅里叶频谱的对应关系。(观察旋转前后频谱的变化,并分析。参考源码 fftxingzhi.m

(1程序代码:

I1=imread('4.bmp' ;

subplot(2,4,1;

imshow(I1;

title(' 原始图像 4' ;

%求原始图像的傅里叶频谱

J1=fft2(I1;

F=abs(J1;

J1=fftshift(F;

subplot(2,4,2;

imshow(J1,[5,50];

title(' 原始图像 4频谱 ' ;

%旋转原始图像

K1=imrotate(I1,90,'bilinear' , 'crop ' ; subplot(2,4,3;

imshow(K1

title(' 图像 4旋转 90度后图像 ' ;

%求旋转后的傅里叶频谱

K1=fft2(K1;

F=abs(K1;

K1=fftshift(F;

subplot(2,4,4;

imshow(K1,[5 50];

title(' 旋转后图像频谱 ' ; I2=imread('5.bmp' ;

subplot(2,4,5;

imshow(I2;

title(' 原始图像 5' ;

%求原始图像的傅里叶频谱

J2=fft2(I2;

F=abs(J2;

J2=fftshift(F;

subplot(2,4,6;

imshow(J1,[5,50];

title(' 原始图像 5频谱 ' ;

%旋转原始图像

K2=imrotate(I2,45,'bilinear' , 'crop ' ; subplot(2,4,7;

imshow(K2

title(' 图像 5旋转 45度后图像 ' ; %求旋转后的傅里叶频谱

K2=fft2(K2;

F=abs(K2;

K2=fftshift(F;

subplot(2,4,8;

imshow(K2,[5 50];

title(' 旋转后图像频谱 ' ; 执行结果:

第 8页共 16页

第 9 页共 16 页

原始图像

4原始图像 4频

谱图像 4旋转 90度后图

旋转后图像频

原始图像

5原始图像 5频

谱图像 5旋转 45度后图

像旋转后图像频谱

实验结果分析:

由实验结果可知,首先从旋转的性质来考虑,时域中图像顺时针旋转 90度,频域中的图像也顺时针旋转 90度;其次从尺度变换性质来考虑,原图像与其傅里叶变换后的图像角度相差 90度。由此可知,时域信号被压缩,到频域中信号就被;拉伸。

四、实验中遇到问题及解决方法

实验中遇到的问题有:对图像的平移和对图像的傅里叶变换方法不是很熟悉;解决的方法:通过参考课本中例题及参考程序,逐步分析,加深理解。五、实验心得体会

通过此次试验,初步了解了图像变换的意义和方法,加深了对图像傅立叶变换的方法及应用,并通过本实验掌握利用 MATLAB 编程实现数字图像的傅立叶变换的过程。通过观察分析实验结果,熟悉了傅里叶变换的基本性质。

六、源程序清单

%%

%第 1题(第一种方法直接抑制高频信息 I=imread('lena.tiff' ;

I=imnoise(I,'salt & pepper',0.01; subplot(2,2,1; imshow(I; title(' 源图像 ' ;

J=fft2(I;%求傅里叶变换

[m,n]=size(J; %低通滤波器半径 ,rm=rn=10 Rm1=m/2-10; Rn1=n/2-10;

数字图像处理图像复原实验报告

图像复原信息132李佳奇1304010311 一、实验目的 1、熟悉并掌握MATLAB图像处理工具箱的使用; 2、理解并掌握常用的图像的恢复和分割技术。 二、实验内容 close all;clear all;clc; I=imread('d:/zhien.jpg'); I=im2double(I); I=imnoise(I,'gaussian',0.05);%添加高斯噪声 PSF=fspecial('average',3); J=imfilter(I,PSF); K=exp(imfilter(log(I),PSF)); figure; subplot(131);imshow(I); subplot(132);imshow(J); subplot(133);imshow(K); 维纳滤波 I=imread('d:/zhien.jpg'); H=fspecial('motion',50,45); J=imfilter(I,H,'circular','conv'); subplot(221);imshow(J); title('运动模糊后的lena.bmp(角度为45)'); J1=imnoise(J,'gaussian',0,0.01); subplot(222); imshow(J1); title('加噪模糊的lena.bmp');%figure; J2=deconvwnr(J1,H); subplot(223) imshow(J2); title('模糊噪声图像的维纳滤波复原'); noise=imnoise(zeros(size(I)),'gaussian',0,0.01); NSR=sum(noise(:).^2)/sum(im2double(I(:)).^2); J3=deconvwnr(J1,H,NSR);

图像灰度变换实验报告

图像灰度变换报告 一.实验目的 1.学会使用Matlab ; 2.学会用Matlab 软件对图像进行灰度变换,观察采用各种不同灰度变换发法对最终图像效果的影响; 二.实验内容 1.熟悉Matlab 中的一些常用处理函数 读取图像:img=imread('filename'); //支持TIF,JPEG,GIF,BMP,PNG 等文件格式。 显示图像:imshow(img,G); //G 表示显示该图像的灰度级数,如省略则默认为256。 保存图片:imwrite(img,'filename'); //不支持GIF 格式,其他与imread 相同。 亮度变换:imadjust(img,[low_in,high_in],[low_out,high_out]); //将low_in 至high_in 之间的值映射到low_out 至high_out 之 间,low_in 以下及high_in 以上归零。 绘制直方图:imhist(img); 直方图均衡化:histeq(img,newlevel); //newlevel 表示输出图像指定的灰度级数。 2.获取实验用图像:rice.jpg. 使用imread 函数将图像读入Matlab 。 3 .产生灰度变换函数T1,使得: 0.3r r < 0.35 s = 0.105 + 2.6333(r – 0.35) 0.35 ≤ r ≤ 0.65 1 + 0.3(r – 1) r > 0.65 用T1对原图像rice.jpg 进行处理,使用imwrite 函数保存处理后的新图像。 4.产生灰度变换函数T2,使得: s = 5.用T2imwrite 保存处理后的新图像。 6.分别用 s = r 0.6; s = r 0.4; s = r 0.3 对kids.tiff 图像进行处理。为简便起见,使用Matlab 中的imadjust 函数,最后用imwrite 保存处理后的新图像。 7.对circuit.jpg 图像实施反变换(Negative Transformation )。s =1-r; 使

图形学实验报告

计 算 机 图 形 学 实验指导书 学号:1441901105 姓名:谢卉

实验一:图形的几何变换 实验学时:4学时 实验类型:验证 实验要求:必修 一、实验目的 二维图形的平移、缩放、旋转和投影变换(投影变换可在实验三中实现)等是最基本的图形变换,被广泛用于计算机图形学的各种应用程序中,本实验通过算法分析以及程序设计实验二维的图形变换,以了解变换实现的方法。如可能也可进行裁剪设计。 二、实验内容 掌握平移、缩放、旋转变换的基本原理,理解线段裁剪的算法原理,并通过程序设计实现上述变换。建议采用VC++实现OpenGL程序设计。 三、实验原理、方法和手段 1.图形的平移 在屏幕上显示一个人或其它物体(如图1所示),用交互操作方式使其在屏幕上沿水平和垂直方向移动Tx和Ty,则有 x’=x+Tx y’=y+Ty 其中:x与y为变换前图形中某一点的坐标,x’和y’为变换后图形中该点的坐标。其交互方式可先定义键值,然后操作功能键使其移动。 2.图形的缩放 在屏幕上显示一个帆船(使它生成在右下方),使其相对于屏幕坐标原点缩小s倍(即x方向和y方向均缩小s倍)。则有: x’=x*s y’=y*s 注意:有时图形缩放并不一定相对于原点,而是事先确定一个参考位置。一般情况下,参考点在图形的左下角或中心。设参考点坐标为xf、yf则有变换公式x’=x*Sx+xf*(1-Sx)=xf+(x-xf)*Sx y’=y*Sy+yf*(1-Sy)=yf+(y-yf)*Sy 式中的x与y为变换前图形中某一点的坐标,x’和y’为变换后图形中该点的坐标。当Sx>1和Sy>1时为放大倍数,Sx<1和Sy<1时为缩小倍数(但Sx和Sy

图形学实验3

实验3:A Racing Car (综合实验预计18 小时) 实验目的: ●熟练掌握和综合运用OpenGL编程技术来开发简单的三维交互式游戏 实验内容: 1.利用Gl/Glu/Glut库,编写一个OpenGL程序,实现以下功能: ●设计并绘制一辆汽车模型以及一个简单的直线跑道;其中,车轮可以用 glutCylinder来绘制。关于glutCylinder的使用可以参照下面的例子: GLUquadricObj *quadratic; int InitGL(GLvoid) // 此处开始对OpenGL进行所有设置 { quadratic=gluNewQuadric(); // 创建二次几何体 } int DrawGLScene(GLvoid) // 从这里开始进行所有的绘制 { gluCylinder(quadratic,0.6f,0.6f,0.4f,32,32);//画圆柱 } ●缺省视图是从外面一个固定的视点观察汽车和跑道; ●利用鼠标和键盘控制汽车前进、后退、转弯、加速和减速; ●制作一个弹出菜单,上面的菜单项用来控制车身和车轮的颜色以及退出程序; ●定义对应于ReShape事件的回调函数,使得当用户改变窗口的大小时,显示 的汽车不会变形。 2.加分题(可选择做其中的0个、1个或多个) ●采用弯曲的封闭的跑道。 ●轮胎画成封闭的形状。以上例子画出的只是一个两端开放的圆柱面, 你们可 以使用gluDisk(…) 将圆柱体两端封闭。 ●在缺省视图下,绘制汽车在跑道上的阴影(自定义一个假想的点光源); ●在路边设置一些路标,对于地面、跑道和/或天空进行纹理映射等以增强逼 真度。 ●除了缺省视图之外,支持第二种视图:坐在车内从驾驶座位向前看的视图。 两种视图之间用“t”键进行切换。 3.完成一份实验报告,描述你如何设计本程序,你的程序实现了哪些功能,并 且给出屏幕截图。

北航数字图象处理实验报告

数字图像处理实验报告 实验二图像变换实验 1.实验目的 学会对图像进行傅立叶等变换,在频谱上对图像进行分析,增进对图像频域上的感性认识,并用图像变换进行压缩。 2.实验内容 对Lena或cameraman图像进行傅立叶、离散余弦、哈达玛变换。在频域,对比他们的变换后系数矩阵的频谱情况,进一步,通过逆变换观察不同变换下的图像重建质量情况。 3. 实验要求 实验采用获取的图像,为灰度图像,该图像每象素由8比特表示。具体要求如下: (1)输入图像采用实验1所获取的图像(Lena、Cameraman); (2)对图像进行傅立叶变换、获得变换后的系数矩阵; (3)将傅立叶变换后系数矩阵的频谱用图像输出,观察频谱; (4)通过设定门限,将系数矩阵中95%的(小值)系数置为0,对图像进行反变换,获得逆变换后图像; (5)观察逆变换后图像质量,并比较原始图像与逆变后的峰值信噪比(PSNR)。 (6)对输入图像进行离散余弦、哈达玛变换,重复步骤1-5; (7)比较三种变换的频谱情况、以及逆变换后图像的质量(PSNR)。 4. 实验结果 1. DFT的源程序及结果 J=imread('10021033.bmp'); P=fft2(J); for i=0:size(P,1)-1 for j=1:size(P,2) G(i*size(P,2)+j)=P(i+1,j); end end Q=sort(G); for i=1:size(Q,2) if (i=size(Q,2)*0.95) t=Q(i); end end G(abs(G)

图像处理 实验报告

摘要: 图像处理,用计算机对图像进行分析,以达到所需结果的技术。又称影像处理。基本内容图像处理一般指数字图像处理。数字图像是指用数字摄像机、扫描仪等设备经过采样和数字化得到的一个大的二维数组,该数组的元素称为像素,其值为一整数,称为灰度值。图像处理技术的主要内容包括图像压缩,增强和复原,匹配、描述和识别3个部分。图像处理一般指数字图像处理。 数字图像处理的目的是改善图像的质量,它以人为对象,以改善人的视觉效果为目的。目前,图像处理演示系统应用领域广泛医学、军事、科研、商业等领域。因为数字图像处理技术易于实现非线性处理,处理程序和处理参数可变,故是一项通用性强,精度高,处理方法灵活,信息保存、传送可靠的图像处理技术。本图像处理演示系统以数字图像处理理论为基础,对某些常用功能进行界面化设计,便于初级用户的操作。 设计要求 可视化界面,采用多幅不同形式图像验证系统的正确性; 合理选择不同形式图像,反应各功能模块的效果及验证系统的正确性 对图像进行灰度级映射,对比分析变换前后的直方图变化; 1.课题目的与要求 目的: 基本功能:彩色图像转灰度图像 图像的几何空间变换:平移,旋转,剪切,缩放 图像的算术处理:加、减、乘 图像的灰度拉伸方法(包含参数设置); 直方图的统计和绘制;直方图均衡化和规定化; 要求: 1、熟悉图像点运算、代数运算、几何运算的基本定

义和常见方法; 2、掌握在MTLAB中对图像进行点运算、代数运算、几何运算的方法 3、掌握在MATLAB中进行插值的方法 4、运用MATLAB语言进行图像的插值缩放和插值旋转等 5、学会运用图像的灰度拉伸方法 6、学会运用图像的直方图设计和绘制;以及均衡化和规定化 7、进一步熟悉了解MATLAB语言的应用,将数字图像处理更好的应用于实际2.课题设计内容描述 1>彩色图像转化灰度图像: 大部分图像都是RGB格式。RGB是指红,绿,蓝三色。通常是每一色都是256个级。相当于过去摄影里提到了8级灰阶。 真彩色图像通常是就是指RGB。通常是三个8位,合起来是24位。不过每一个颜色并不一定是8位。比如有些显卡可以显示16位,或者是32位。所以就有16位真彩和32位真彩。 在一些特殊环境下需要将真彩色转换成灰度图像。 1单独处理每一个颜色分量。 2.处理图像的“灰度“,有时候又称为“高度”。边缘加强,平滑,去噪,加 锐度等。 3.当用黑白打印机打印照片时,通常也需要将彩色转成灰白,处理后再打印 4.摄影里,通过黑白照片体现“型体”与“线条”,“光线”。 2>图像的几何空间变化: 图像平移是将图像进行上下左右的等比例变化,不改变图像的特征,只改变位置。 图像比例缩放是指将给定的图像在x轴方向按比例缩放fx倍,在y轴按比例缩放fy倍,从而获得一幅新的图像。如果fx=fy,即在x轴方向和y轴方向缩放的比率相同,称这样的比例缩放为图像的全比例缩放。如果fx≠fy,图像的比例缩放会改变原始图象的像素间的相对位置,产生几何畸变。 旋转。一般图像的旋转是以图像的中心为原点,旋转一定的角度,也就是将图像上的所有像素都旋转一个相同的角度。旋转后图像的的大小一般会改变,即可以把转出显示区域的图像截去,或者扩大图像范围来显示所有的图像。图像的旋转变换也可以用矩阵变换来表示。

计算机图形学实验一

实验一二维基本图元的生成与填充 实验目的 1.了解并掌握二维基本图元的生成算法与填充算法。 2.实现直线生成的DDA算法、中点算法和Bresenham算法。 3.实现圆和椭圆生成的DDA和中点算法, 对几种算法的优缺点有感性认识。 二.实验内容和要求 1.选择自己熟悉的任何编程语言, 建议使用VC++6.0。 2.创建良好的用户界面,包括菜单,参数输入区域和图形显示区域。 3.实现生成直线的DDA算法、中点算法和Bresenham算法。 4.实现圆弧生成的中点算法。 5.实现多边形生成的常用算法, 如扫描线算法,边缘填充算法。 6.实现一般连通区域的基于扫描线的种子填充算法。 7.将生成算法以菜单或按钮形式集成到用户界面上。 8.直线与圆的坐标参数可以用鼠标或键盘输入。 6. 可以实现任何情形的直线和圆的生成。 实验报告 1.用户界面的设计思想和框图。 2.各种实现算法的算法思想。 3.算法验证例子。 4.上交源程序。 直线生成程序设计的步骤如下: 为编程实现上述算法,本程序利用最基本的绘制元素(如点、直线等),绘制图形。如图1-1所示,为程序运行主界面,通过选择菜单及下拉菜单的各功能项分别完成各种对应算法的图形绘制。 图1-1 基本图形生成的程序运行界面 2.创建工程名称为“基本图形的生成”单文档应用程序框架

(1)启动VC,选择“文件”|“新建”菜单命令,并在弹出的新建对话框中单击“工程”标签。 (2)选择MFC AppWizard(exe),在“工程名称”编辑框中输入“基本图形的生成”作为工程名称,单击“确定”按钮,出现Step 1对话框。 (3)选择“单个文档”选项,单击“下一个”按钮,出现Step 2对话框。 (4)接受默认选项,单击“下一个”按钮,在出现的Step 3~Step 5对话框中,接受默认选项,单击“下一个”按钮。 (5)在Step 6对话框中单击“完成”按钮,即完成“基本图形的生成”应用程序的所有选项,随后出现工程信息对话框(记录以上步骤各选项选择情况),如图1-2所示,单击“确定”按钮,完成应用程序框架的创建。 图1-2 信息程序基本 3.编辑菜单资源 设计如图1-1所示的菜单项。在工作区的ResourceView标签中,单击Menu项左边“+”,然后双击其子项IDR_MAINFRAME,并根据表1-1中的定义编辑菜单资源。此时VC已自动建好程序框架,如图1-2所示。 表1-1菜单资源表 菜单标题菜单项标题标示符ID 直线DDA算法生成直线ID_DDALINE Bresenham算法生成直线ID_BRESENHAMLINE 中点算法生成直线ID_MIDPOINTLINE 4.添加消息处理函数 利用ClassWizard(建立类向导)为应用程序添加与菜单项相关的消息处理函数,ClassName栏中选择CMyView,根据表1-2建立如下的消息映射函数,ClassWizard会自动完成有关的函数声明。 表1-2菜单项的消息处理函数 菜单项ID消息消息处理函数ID_DDALINE CONMMAN OnDdaline

数字图像处理图像复原实验报告

图像复原 信息132 李佳奇 1304010311 一、实验目的 1、熟悉并掌握MATLAB 图像处理工具箱的使用; 2、理解并掌握常用的图像的恢复与分割技术。 二、实验内容 空域滤波复原 close all;clear all;clc; I=imread('d:/zhien 、jpg'); I=im2double(I); I=imnoise(I,'gaussian',0、05);%添加高斯噪声 PSF=fspecial('average',3); J=imfilter(I,PSF); K=exp(imfilter(log(I),PSF)); figure; subplot(131);imshow(I); subplot(132);imshow(J); subplot(133);imshow(K); 维纳滤波 I=imread('d:/zhien 、jpg'); H=fspecial('motion',50,45); J=imfilter(I,H,'circular','conv'); subplot(221);imshow(J); title('运动模糊后的lena 、bmp(角度为45)'); J1=imnoise(J,'gaussian',0,0、01); subplot(222); imshow(J1); title('加噪模糊的lena 、bmp');%figure; J2=deconvwnr(J1,H); subplot(223) imshow(J2); title('模糊噪声图像的维纳滤波复原'); noise=imnoise(zeros(size(I)),'gaussian',0,0、01); NSR=sum(noise(:)、^2)/sum(im2double(I(:))、^2); J3=deconvwnr(J1,H,NSR); subplot(224) imshow(J3); title('引入SNR 的维纳滤波复原'); 分析:空域滤波就就是在待处理图像中逐点地移动掩模。在每一点(x,y)处,滤波器在该点的响应通过事先定义的关系来计算。对于线性空间滤波,其响应由滤波器系数与滤波掩模扫过区域的相应像素值的乘积之与给出

实验三 图像几何变换处理

实验三图像几何变换处理 ****************共3小题**************** 20124178 付蕊 一、实验目的及要求 1.了解图像的几何空间变换和图像插值的基本方法; 2.对图像进行相应的几何变换操作。 二、实验设备与软件 1.PC计算机 2.MATLAB软件/语言包括图像处理工具箱(Image Processing Toolbox) 3.实验所需要的图片 三.实验内容 1.图像缩放 >> I=imread('pout.tif'); >> figure,imshow(I); >> m=[0.5,0,0;0,0.5,0;0,0,1]; >> J=maketform('affine',m); >> K=imtransform(I,J); >> figure,imshow(K);

2.图像旋转 >> I=imread('pout.tif'); >> m=[cos(pi/4),sin(pi/4),0;-sin(pi/4),cos(pi/4),0;0,0,1]; >> J=maketform('affine',m); >> figure,imshow(I); >> K=imtransform(I,J); >> figure,imshow(K);

3.图像剪切 ①水平剪切 >> I=imread('pout.tif'); >> m=[1,0,0;0.5,1,0;0,0,1]; >> J=maketform('affine',m); >> K=imtransform(I,J); >> figure,imshow(I); >> figure,imshow(K);

计算机图形学实验报告 (2)

中南大学信息科学与工程学院 实验报告实验名称 实验地点科技楼四楼 实验日期2014年6月 指导教师 学生班级 学生姓名 学生学号 提交日期2014年6月

实验一Window图形编程基础 一、实验类型:验证型实验 二、实验目的 1、熟练使用实验主要开发平台VC6.0; 2、掌握如何在编译平台下编辑、编译、连接和运行一个简单的Windows图形应用程序; 3、掌握Window图形编程的基本方法; 4、学会使用基本绘图函数和Window GDI对象; 三、实验内容 创建基于MFC的Single Document应用程序(Win32应用程序也可,同学们可根据自己的喜好决定),程序可以实现以下要求: 1、用户可以通过菜单选择绘图颜色; 2、用户点击菜单选择绘图形状时,能在视图中绘制指定形状的图形; 四、实验要求与指导 1、建立名为“颜色”的菜单,该菜单下有四个菜单项:红、绿、蓝、黄。用户通过点击不同的菜单项,可以选择不同的颜色进行绘图。 2、建立名为“绘图”的菜单,该菜单下有三个菜单项:直线、曲线、矩形 其中“曲线”项有级联菜单,包括:圆、椭圆。 3、用户通过点击“绘图”中不同的菜单项,弹出对话框,让用户输入绘图位置,在指定位置进行绘图。

五、实验结果: 六、实验主要代码 1、画直线:CClientDC *m_pDC;再在OnDraw函数里给变量初始化m_pDC=new CClientDC(this); 在OnDraw函数中添加: m_pDC=new CClientDC(this); m_pDC->MoveTo(10,10); m_pDC->LineTo(100,100); m_pDC->SetPixel(100,200,RGB(0,0,0)); m_pDC->TextOut(100,100); 2、画圆: void CMyCG::LineDDA2(int xa, int ya, int xb, int yb, CDC *pDC) { int dx = xb - xa; int dy = yb - ya; int Steps, k; float xIncrement,yIncrement; float x = xa,y= ya; if(abs(dx)>abs(dy))

江苏大学 计算机图形学第三次实验报告 二维图形变换

计算机科学与通信工程学院 实验报告 课程计算机图形学 实验题目二维图形变换 学生姓名 学号 专业班级 指导教师 日期

成绩评定表

二维图形变换 1. 实验内容 完成对北极星图案的缩放、平移、旋转、对称等二维变换。 首先要建好图示的北极星图案的数据模型(顶点表、边表)。另外,可重复调用“清屏”和“暂停”等函数,使整个变换过程具有动态效果。 2. 实验环境 操作系统:Windows XP 开发工具:visual studio 2008 3. 问题分析 为了建立北极星图形,首先在二维空间中根据坐标绘制出北极星图形。并且在此坐标系中确定好走笔顺序以便于进行连线操作。 同时需要好好的使用清屏函数以使得显示正常。 1. 放大缩小变换 放大缩小变换公式为:x’=x.a, y’=y.d; 其中a,d分别为x,y方向的放缩比例系数。 可通过不同的比例系数来显示程序运行结果。当a=d时为等比例放缩操作。可令变换矩阵为T。 2. 对称变换 包括以x轴对称、y轴对称和原点O对称三种。由于屏幕坐标只有第一象限,我们可以将原点平移到(500,240)处。在第一象限画出一个三角形,然后分别求出三个对称图形。 3. 旋转变换 将图形上的点(x,y)旋转θ角度,得到新的坐标(x’,y’)为: x’=xcosθ-ysinθ, y’=xsinθ+ycosθ;

旋转矩阵T为4.平移变换 4. 算法设计 5. 源代码

//北极星 void hzbjx(CDC* pDC,long x[18],long y[18]) { CPen newPen1,*oldPen; newPen1.CreatePen(PS_SOLID,2,RGB(255,0,0)); oldPen = pDC->SelectObject(&newPen1); POINT vertex1[11]={{x[1],y[1]},{x[2],y[2]},{x[3],y[3]},{x[4],y[4]},{x[5],y[5]},{x[3],y[3]},{x[1],y[1]},{ x[6],y[6]},{x[3],y[3]},{x[7],y[7]},{x[5],y[5]}}; pDC->Polyline(vertex1, 11); newPen1.DeleteObject(); newPen1.CreatePen(PS_SOLID, 2, RGB(0,255,0)); oldPen = pDC->SelectObject(&newPen1); POINT vertex2[5]={{x[6],y[6]},{x[8],y[8]},{x[9],y[9]},{x[3],y[3]},{x[8],y[8]}}; pDC->Polyline(vertex2, 5); POINT vertex3[5]={{x[4],y[4]},{x[10],y[10]},{x[11],y[11]},{x[3],y[3]},{x[10],y[10]}}; pDC->Polyline(vertex3, 5); newPen1.DeleteObject(); newPen1.CreatePen(PS_SOLID, 2, RGB(255,0,90)); oldPen = pDC->SelectObject(&newPen1); POINT vertex4[11]={{x[12],y[12]},{x[13],y[13]},{x[3],y[3]},{x[9],y[9]},{x[14],y[14]},{x[15],y[15]},{x[ 3],y[3]},{x[11],y[11]},{x[12],y[12]},{x[3],y[3]},{x[14],y[14]}}; pDC->Polyline(vertex4, 11); newPen1.DeleteObject(); newPen1.CreatePen(PS_SOLID, 2, RGB(0,100,255)); oldPen = pDC->SelectObject(&newPen1); POINT vertex5[5]={{x[15],y[15]},{x[16],y[16]},{x[3],y[3]},{x[16],y[16]},{x[7],y[7]}}; pDC->Polyline(vertex5, 5); POINT vertex6[5]={{x[2],y[2]},{x[17],y[17]},{x[3],y[3]},{x[17],y[17]},{x[13],y[13]}};

数字图像处理实验(2011年)

数字图像处理实验一 图像变换 一、实验目的 了解matlab有关图像的基本操作,如图像的读写,显示等。掌握二维DFT变换及其物理意义,掌握基本的灰度变换方法。 二、实验要求 1.在Matlab workspace中生成一幅大小为512×512像素的8位灰度图, 背景为黑色, 中心有一个宽40像素高20像素的白色矩形。如下图所示: 2.将这幅图像保存为文件test.bmp。 3.从文件test.bmp中读出图像到变量I。 4.在Matlab图形界面中显示变量I所代表的图像。 5.对I作二维DFT变换,结果保存到变量F。注意将频域原点调整至中心位置。 6.将傅立叶频谱,即|F|的取值范围调整为0-255并显示。 7.将上题结果作对数变换后再进行显示,结果应与课本Figure 4.3(b)一致。说明对数 变换能使频谱显示效果更好的原因。 8.对频谱图的物理意义作简要说明。

三、 实验流程 四、 理论知识 1. 在8位灰度图中,像素值大小为0-255。0代表黑色,255代表白色。 2. 二 维 DFT 计 算 公 式 为 ∑∑-=-=+-?=101 )]//(2exp[),(1),(M x N y N vy M ux j y x f MN v u F π。 由于二维DFT 是一种行列可分离的变换,其结果也可以由在两个方向上先后做一维DFT 得到。具体流程为: (a ) 对图像每一行(即某个x 值),做一维DFT ,得到的结果保存为矩阵) ,(v x F 的一行。 ∑-=-?=1 )]/2exp(),(1),(N y N vy j y x f N v x F π (b ) 对矩阵),(v x F 的每一列(即某个v 值),做一维DFT ,得到的结果保存为 矩阵),(v u F 的一列。 )/2exp(),(1 ),(10 M ux j v x F M v u F M x π-?= ∑-= 3. 直接对图像),(y x f 做傅立叶变换,结果的原点处于图像左下角。将傅立叶变换结

计算机图形学实验

实验1 直线的绘制 实验目的 1、通过实验,进一步理解和掌握DDA和Bresenham算法; 2、掌握以上算法生成直线段的基本过程; 3、通过编程,会在TC环境下完成用DDA或中点算法实现直线段的绘制。实验环境 计算机、Turbo C或其他C语言程序设计环境 实验学时 2学时,必做实验。 实验内容 用DDA算法或Besenham算法实现斜率k在0和1之间的直线段的绘制。 实验步骤 1、算法、原理清晰,有详细的设计步骤; 2、依据算法、步骤或程序流程图,用C语言编写源程序; 3、编辑源程序并进行调试; 4、进行运行测试,并结合情况进行调整; 5、对运行结果进行保存与分析; 6、把源程序以文件的形式提交; 7、按格式书写实验报告。 实验代码:DDA: # include # include

void DDALine(int x0,int y0,int x1,int y1,int color) { int dx,dy,epsl,k; float x,y,xIncre,yIncre; dx=x1-x0; dy=y1-y0; x=x0; y=y0; if(abs(dx)>abs(dy)) epsl=abs(dx); else epsl=abs(dy); xIncre=(float)dx/(float)epsl; yIncre=(float)dy/(float)epsl; for(k=0;k<=epsl;k++) { putpixel((int)(x+0.5),(int)(y+0.5),4); x+=xIncre; y+=yIncre; } } main(){ int gdriver ,gmode ;

东北大学图像处理实验报告

计算机图像处理实验报告 哈哈哈哈哈哈实验台31 1.应用MATLAB语言编写显示一幅灰度图像、二值图像、索引图像及 彩色图像的程序,并进行相互之间的转换 1)彩色图像转换为灰度图像、索引图像、二值图像 A=imread('F:\colorful.jpg'); subplot(221);imshow(A);title('彩色图像'); I1=rgb2gray(A); subplot(222);imshow(I1);title('灰度图像'); [X1,map]=rgb2ind(A,256); subplot(223);imshow(X1);title('索引图像'); BW=im2bw(A); subplot(224);imshow(BW);title('二值图像'); 彩色图像灰度图像 索引图像二值图像

2)灰度图像转换为索引图像、二值图像 clear A=imread('F:\colorful.jpg'); B=rgb2gray(A); subplot(131);imshow(B);title('灰度图像'); [X2,map]=gray2ind(B,128); subplot(132);imshow(X2);title('索引图像'); BW2=im2bw(B); subplot(133);imshow(BW2);title('二值图像'); 灰度图像索引图像二值图像 3)索引图像转为灰度图像、二值图像、彩色图像 clear A=imread('F:\colorful.jpg'); [X,map]=rgb2ind(A,256); subplot(221);imshow(X);title('索引图像'); I3=ind2gray(X,map); subplot(222);imshow(I3);title('灰度图像'); BW3=im2bw(X,map,0.5); subplot(223);imshow(BW3);title('二值图像'); RGB=ind2rgb(X,map); subplot(24);imshow(RGB);title('还原彩色图像'); 索引图像灰度图像 二值图像还原彩色图像

图像处理灰度变换实验

一. 实验名称:空间图像增强(一) 一.实验目的 1.熟悉和掌握利用matlab工具进行数字图像的读、写、显示、像素处理等数字图像处理的基本步骤和流程。 2.熟练掌握各种空间域图像增强的基本原理及方法。 3.熟悉通过灰度变换方式进行图像增强的基本原理、方法和实现。 4.熟悉直方图均衡化的基本原理、方法和实现。 二.实验原理 (一)数字图像的灰度变换 灰度变换是图像增强的一种经典而有效的方法。灰度变换的原理是将图像的每一个像素的灰度值通过一个函数,对应到另一个灰度值上去从而实现灰度的变换。常见的灰度变换有线性灰度变换和非线性灰度变换,其中非线性灰度变换包括对数变换和幂律(伽马)变换等。 1、线性灰度变换 1)当图像成像过程曝光不足或过度,或由于成像设备的非线性和图像记录设备动态范围太窄等因素,都会产生对比度不足的弊病,使图像中的细节分辨不清,图像缺少层次。这时,可将灰度范围进行线性的扩展或压缩,这种处理过程被称为图像的线性灰度变换。对灰度图像进行线性灰度变换能将输入图像的灰度值的动态范围按线性关系公式拉伸扩展至指定范围或整个动态范围。 2)令原图像f(x,y)的灰度范围为[a,b],线性变换后得到图像g(x,y),其灰度范围为[c,d],则线性灰度变换公式可表示为

a y x f b y x f a b y x f c c a y x f a b c d d y x g <≤≤>?????+---=),(),(),(, ,]),([,),( (1) 由(1)式可知,对于介于原图像f (x,y )的最大和最小灰度值之间的灰度值,可通过线性变换公式,一一对应到灰度范围[c,d]之间,其斜率为(d-c)/(b-a);对于小于原图像的最小灰度值或大于原图像的最大灰度值的灰度值,令其分别恒等于变换后的最小和最大灰度值。变换示意图如图1所示。 图1 线性灰度变换示意图 当斜率大于一时,变换后的灰度值范围得到拉伸,图像对比度得到提高;当斜率小于一时,变换后的灰度值范围被压缩,最小与最大灰度值的差变小,图像对比度降低;当斜率等于一时,相当于对图像不做变换。 3)由上述性质可知,线性灰度变换能选择性地加强或降低特定灰度值范围内的对比度,故线性灰度变换同样也可做分段处理:对于有价值的灰度范围,将斜率调整为大于一,用于图像细节;对于不重要的灰度范围,将图像压缩,降低对比度,减轻无用信息的干扰。最常用的分段线性变换的方法是分三段进行线性变换。 在原图像灰度值的最大值和最小值之间设置两个拐点,在拐点处,原图像的灰度值分别为r 1,r 2,该拐点对应的变换后的图像的灰度值分别为s 1,s 2,另外,取原图像灰度的最小值为r 0,最大值为r m ,对应的变换后的灰度值分别为s 0,s m 。

图像处理实验报告

实验报告 实验课程名称:数字图像处理 班级:学号:姓名: 注:1、每个实验中各项成绩按照10分制评定,每个实验成绩为两项总和20分。 2、平均成绩取三个实验平均成绩。 2016年 4 月18日

实验一 图像的二维离散傅立叶变换 一、实验目的 掌握图像的二维离散傅立叶变换以及性质 二、实验要求 1) 建立输入图像,在64?64的黑色图像矩阵的中心建立16?16的白色矩形图像点阵, 形成图像文件。对输入图像进行二维傅立叶变换,将原始图像及变换图像(三维、中心化)都显示于屏幕上。 2) 调整输入图像中白色矩形的位置,再进行变换,将原始图像及变换图像(三维、中 心化)都显示于屏幕上,比较变换结果。 3) 调整输入图像中白色矩形的尺寸(40?40,4?4),再进行变换,将原始图像及变 换图像(三维、中心化)都显示于屏幕上,比较变换结果。 三、实验仪器设备及软件 HP D538、MATLAB 四、实验原理 傅里叶变换作为分析数字图像的有利工具,因其可分离性、平移性、周期性和共轭对称性可以定量地方分析数字化系统,并且变换后的图像使得时间域和频域间的联系能够方便直观地解决许多问题。实验通过MATLAB 实验该项技能。 设),(y x f 是在空间域上等间隔采样得到的M ×N 的二维离散信号,x 和y 是离散实变量,u 和v 为离散频率变量,则二维离散傅里叶变换对一般地定义为 ∑∑ -=-=+-= 101 )],( 2ex p[),(1 ),(M x N y N yu M xu j y x f MN v u F π,1,0=u …,M-1;y=0,1,…N-1 ∑∑-=-=+=101 )],( 2ex p[),(),(M x N y N uy M ux j v u F y x f π ,1,0=x …,M-1;y=0,1,…N-1 在图像处理中,有事为了讨论上的方便,取M=N ,这样二维离散傅里叶变换对就定义为 ,]) (2ex p[),(1 ),(101 ∑∑ -=-=+- = N x N y N yu xu j y x f N v u F π 1,0,=v u …,N-1 ,]) (2ex p[ ),(1 ),(101 ∑∑-=-=+= N u N v N vy ux j v u F N y x f π 1,0,=y x ,…,N-1 其中,]/)(2exp[N yv xu j +-π是正变换核,]/)(2exp[N vy ux j +π是反变换核。将二维离散傅里叶变换的频谱的平方定义为),(y x f 的功率谱,记为 ),(),(|),(|),(222v u I v u R v u F v u P +== 功率谱反映了二维离散信号的能量在空间频率域上的分布情况。 五、实验步骤、程序及结果: 1、实验步骤: (1)、编写程序建立输入图像; (2)、对上述图像进行二维傅立叶变换,观察其频谱 (3)、改变输入图像中白框的位置,在进行二维傅里叶变换,观察频谱;

图形学实验报告

山东建筑大学测绘地理信息学院 实验报告 (2016—2017学年第一学期) 课程:计算机图形学 专业:地理信息科学 班级:地信141 学生姓名:王俊凝 学号:20140113010 指

实验一直线生成算法设计 一、实验目的 掌握基本图形元素直线的生成算法,利用编程语言C分别实现直线和圆的绘制算法。 二、实验任务 在TurboC环境下开发出绘制直线和圆的程序。 三、实验仪器设备 计算机。 四、实验方法与步骤 1 运行TurboC编程环境。 2 编写Bresenham直线绘制算法的函数并进行测试。 3 编写中点圆绘制算法的函数并进行测试。 4 增加函数参数,实现直线颜色的设置。 提示: 1. 编程时可分别针对直线和圆的绘制算法,设计相应的函数,例如void drawline(…)和void drawcircle(…),直线的两个端点可作为drawline的参数,圆的圆心和半径可作为drawcircle的参数。 2. 使用C语言编写一个结构体类型用来表示一个点,结构体由两个成员构成,x和y。这样,在向函数传入参数时,可使用两个点类型来传参。定义方法为:

typedef struct{ int x; int y; }pt2; 此处,pt2就是定义的一个新的结构体数据类型,之后就可用pt2来定义其他变量,具体用法见程序模板。 3. 在main函数中,分别调用以上函数,并传入不同的参数,实现对直线的绘制。 4. 线的颜色也可作为参数传入,参数可采用TurboC语言中的预设颜色值,具体参见TurboC图形函数。 五、注意事项 1 代码要求正确运行,直线和圆的位置应当为参数,实现可配置。 2 程序提交.c源文件,函数前和关键代码中增加注释。 程序模板 #include #include typedef struct{ int x; int y; }pt2; /*declare your drawing functions.*/ void drawline(pt2 startpt,pt2 endpt,int color); void drawcircle(pt2 centerpt,int radius,int color); void circlePlotPoints(pt2 centerpt,int x,int y,int color); int main() { int color,radius;

图像格式转换实验报告

实验1 图像格式转换实验报告 学 号:12224506 姓 名:陈振辉 班 级:5班 一、实验目的 掌握两种以上图像的格式,重点掌握BMP 图像格式。 二、实验原理: 1、JPEG 文件的解码过程。 敷设技于管路护层防含线槽试以正常杂设方案以卷技术地缩小进行自动作,

①.读入文件的相关信息 按照上述的JPEG 文件数据存储方式,把要解码的文件的相关信息一一读出,为接下来的解码工作做好准备。参考方法是,设计一系列的结构体对应各个标记,并存储标记内表示的信息。其中图像长宽、多个量化表和哈夫曼表、水平/垂直采样因子等多项信息比较重 要。以下给出读取过程中的两个问题。 1)整个文件的大体结构 JFIF 格式的JPEG 文件(*.jpg)的一般顺序为: SOI(0xFFD8)APP0(0xFFE0)[APPn(0xFFEn)]可选 DQT(0xFFDB)SOF0(0xFFC0)DHT(0xFFC4)SOS(0xFFDA)压缩数据EOI(0xFFD9)2)字的高低位问题 JPEG 文件格式中,一个字(16位)的存储使用的是 Motorola 格式, 而不是 Intel 格式。 也就是说, 一个字的高字节(高8位)在数据流的前面, 低字节(低8位)在数据流的后面,与平时习惯的Intel 格式不一样。. 3)读出哈夫曼表数据 在标记段DHT 内,包含了一个或者多个的哈夫曼表。 不同位数的码字数量JPEG 文件的哈夫曼编码只能是1~16位。这个字段的16个字节分别表示1~16位的编码码字在哈 夫曼树中的个数。编码内容这个字段记录了哈夫曼树中各个叶子结点的权。所以,上一字段(不同位数的码字数量)的16个数值之和就应该是本字段的长度,也就是哈夫曼树中叶 子结点个数。 4)建立哈夫曼树 读出哈夫曼表的数据后,就要建立哈夫曼树。 ②.初步了解图像数据流的结构 a) 在图片像素数据流中,信息可以被分为一段接一段的最小编码单元(Minimum CodedUnit ,MCU )数据流。所谓MCU ,是图像中一个正方矩阵像素的数据。矩阵的大小 是这样确定的:查阅标记SOF0,可以得到图像不同颜色分量的采样因子,即Y 、Cr 、Cb 三个分量各自的水平采样因子和垂直采样因子。大多图片的采样因子为4:1:1或 1:1:1。其中,4:1:1即(2*2):(1*1):(1*1));1:1:1即(1*1):(1*1): (1*1)。记三个分量中水平采样因子最大值为Hmax ,垂直采样因子最大值为Vmax ,那么 单个MCU 矩阵的宽就是Hmax*8像素,高就是Vmax*8像素。 、管路敷设技术通过管线不仅可以解决吊顶层配置不规范高中资料试卷问题,而且可保障各类管路习题到位。在管路敷设过程中,要加强看护关于管路高中资料试卷连接管口处理高中资料试卷弯扁度固定盒位置保护层防腐跨接地线弯曲半径标高等,要求技术交底。管线敷设技术包含线槽、管架等多项方式,为解决高中语文电气课件中管壁薄、接口不严等问题,合理利用管线敷设技术。线缆敷设原则:在分线盒处,当不同电压回路交叉时,应采用金属隔板进行隔开处理;同一线槽内,强电回路须同时切断习题电源,线缆敷设完毕,要进行检查和检测处理。、电气课件中调试对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行 高中资料试卷调整试验;通电检查所有设备高中资料试卷相互作用与相互关系,根据生产工艺高中资料试卷要求,对电气设备进行空载与带负荷下高中资料试卷调控试验;对设备进行调整使其在正常工况下与过度工作下都可以正常工作;对于继电保护进行整核对定值,审核与校对图纸,编写复杂设备与装置高中资料试卷调试方案,编写重要设备高中资料试卷试验方案以及系统启动方案;对整套启动过程中高中资料试卷电气设备进行调试工作并且进行过关运行高中资料试卷技术指导。对于调试过程中高中资料试卷技术问题,作为调试人员,需要在事前掌握图纸资料、设备制造厂家出具高中资料试卷试验报告与相关技术资料,并且了解现场设备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。 、电气设备调试高中资料试卷技术电力保护装置调试技术,电力保护高中资料试卷配置技术是指机组在进行继电保护高中资料试卷总体配置时,需要在最大限度内来确保机组高中资料试卷安全,并且尽可能地缩小故障高中资料试卷破坏范围,或者对某些异常高中资料试卷工况进行自动处理,尤其要避免错误高中资料试卷保护装置动作,并且拒绝动作,来避免不必要高中资料试卷突然停机。因此,电力高中资料试卷保护装置调试技术,要求电力保护装置做到准确灵活。对于差动保护装置高中资料试卷调试技术是指发电机一变压器组在发生内部故障时,需要进行外部电源高中资料试卷切除从而采用高中资料试卷主要保护装置。

相关文档
相关文档 最新文档