范文网 论文资料 数字图像处理实验原理(精选)

数字图像处理实验原理(精选)

数字图像处理实验原理第一篇:数字图像处理实验原理《数字信号处理原理及实现》课程小结时间过得好快,转眼半学期结束了。这半学期数字信号的学习让我受益匪浅。前两章和信号与线性系统相关,介绍了离散时间信号与系统的时域分析方法最深刻的是采样,时域采样。

数字图像处理实验原理

第一篇:数字图像处理实验原理

《数字信号处理原理及实现》课程小结

时间过得好快,转眼半学期结束了。这半学期数字信号的学习让我受益匪浅。前两章和信号与线性系统相关,介绍了离散时间信号与系统的时域分析方法最深刻的是采样,时域采样定理与采样恢复和采样内插公式。第二章介绍了离散时间信号与系统的频域分析,DTFT与Z变换,系统函数的零极点分布。第三章主要讲了离散傅里叶变换DFT及其性质,和频域采样定理。第四章介绍了傅里叶快速变换FFT,熟悉了其原理特点及方法。五六两章分别介绍了IIR和FIR滤波器,知道了IIR的脉冲响应不变法与双线性变换法及其优缺点,并学会其MATLAB应用设计滤波器,FIR的窗函数法与频域采样法设计滤波器及其MATLAB实现。第七章主要介绍了IIR和FIR滤波器的基本网络结构,通过老师上课习题的练习基本掌握了其结构图的画法。

先说说对课程的建议吧,张晓光老师是个很负责讲课思路也很清晰的老师,知道从学生的角度来讲问题,根据学生的反应来调整课程进度。我们都很喜欢这样的老师,老师开新课之前总是列提纲复习上节课讲的知识,每章结束都根据章节的重要性开一节总结课,这种方式个人觉得很好,希望老师坚持。但是,感觉老师讲题讲的不是很多,或许是课时原因,但我觉得每章结束后开一节例题课,把知识点融进去,毕竟大学生现在做题比较少,这样强制一下效果会更好。这次考试的试题觉得有不少都见过,有的是课后题,但做起来还是有点吃力,应该就是习题练的少,计算跟不上去。至于教材,我觉得编的很好,每章都有相关的MATLAB编程方法,在原理讲清之后就来实践,免去了学生盲目做实验,提高了效率。还有就是老师也很重视实验,总是把相关的MATLAB语句语义讲解清楚,这样我们在编程序时也就相对容易点。但好像老师讲程序时都注重程序的意思了,希望老师以后再讲程序时把它先部分后整体,就是在讲完程序意思后把程序设计思路或框架结构,及各部分要实现什么再讲讲,这样有助于学生设计时设计思路更清晰。再说说考试,老师分卷面成绩和实验成绩及平时成绩,将实验单独考试,可见对实验的重视,也说明MATLAB的重要性,这样确实提高了学生的重视心理,虽然实验做完了,但做完50道题并看完相关讲解,我又收获了不少,理清了设计方法与思路,所以我觉的考试方式还是挺不错的,锻炼了我们各方面的知识。

数字信号课程结束了,真希望您还能教我们别的课。

小组成员:陈文斌、李亚伟、王猛、汪子雄、吴官宝

第二篇:《数字图像处理》实验教案

数 字 图 像 处 理

实 验 指 导 书

信息科学与工程学院电子系

二○○六年

数字图像处理是研究数字图像处理的基本理论、方法及其在智能化检测中应用的学科,是电子信息类本科专业的专业课。

本课程侧重于数字图像的基本处理,并对图像分析的基本理论和实际应用进行系统介绍;目的是使学生系统掌握数字图像处理的基本概念、原理和实现方法,学习图像分析的基本理论、典型方法和实用技术,具备解决通信领域的图像相关问题的初步能力,为今后的研究与开发打下扎实的基础。

实验一 常用的图像文件格式与格式转换和图像矩阵的显示方实验二 实验三

法 …………………………………………………………2

傅立叶变换……………………………………………………4 图像增强及编程处理…………………………………………5

实验一 常用的图像文件格式与格式转换和图像矩阵的显示方法

1. 实验目的

熟悉Matlab语言的初步使用;

熟悉常用的图像文件格式与格式转换;

熟悉图像矩阵的显示方法(灰度、索引、黑白、彩色); 熟悉图像矩阵的格式转换 2. 实验内容

练习图像读写命令imread和imwrite并进行图像文件格式间的转换。特别是索引图像与1,4,8,16比特图像的存储与转换。

熟悉下列模块函数 Image file I/O.

imread

- Read image file.

imwrite

Create and display image

imagesc

Make movie from multiframe indexed image.

imshow

- Display image.

subimage

- Display multiple images in single figure.

truesize

- Adjust display size of image.

warp

- Display image as texture-mapped surface. zoom

- Zoom in and out of image or 2-D plot. 3. 实验步骤

a. Load cameraman.tif image from your hard disk (using function imread). b. Show the image in a figure window (using function image or imshow). c. Draw a brightness bar on the right side of the image(using function colorbar). d. Get image data from the current figure(axes) (using function getimage). e. Show the gray level of the image between 64 to 128 (using function imagesc). f. Make a movie from a 4-D image (load mri, make the movie by immovie, then show movie by function movie).

object.

g. Draw the cameraman image on a cylinder (using function warp). Question: how to show the cameraman like this

Requirement: write a report to do the experiment from a to g.

实验二

傅立叶变换

1.实验目的

熟悉傅立叶变换的概念和原理; 理解Fourier变换的意义。

2.实验内容

用Fourier变换算法对图像进行Fourier变换; 评价人眼对图像幅频特性和相频特性的敏感度。

3.实验步骤

<1>产生如图所示图像f1(x,y)(128×128 大小,暗处=0,亮处=255),用MATLAB中的fft2函数对其进行FFT;

<2>同屏显示原图f1和FFT(f1)的幅度谱图;

<3>若令f2(x,y)=(-1)

xy f1(x,y),重复以上过程,比较两幅图像的幅度谱的异同,简述理由;

<4>若将f2(x,y)顺时针旋转45度得到f3(x,y),试显示FFT(f3)的幅度谱,并与FFT(f2)的幅度谱进行比较;

<5>评价人眼对图像幅频特性和相频特性的敏感度。

4. 实验报告

<1>简述实验目的及原理;

<2>给出实验代码,并加以注释; <3>对实验现象加以说明和讨论。

实验三

图像增强及编程处理

1. 实验目的

观察数字图像增强的效果; 熟悉数字图像增强的一般方法;

掌握数字图像增强的一般方法的Matlab编程实现。 2. 实验内容

使用Photoshop观察数字图像增强的效果; 练习和掌握图像增强的Matlab编程。

熟悉下列模块函数 Image enhancement.

histeq

Adust imae intensity values or colormap. Image noising. imnoise

- Add noise to an image. Image filtering

medfilt2

- Perform 2-D median filtering.

ordfilt2

Perform 2-D adaptive noise-removal filtering.

3. 实验步骤

<1> 使用Photoshop观察数字图像增强的效果 a. 对比度增强

1)在Photoshop中打开一黑白灰度图像文件。

2)在图像菜单中选直方图项,观察原始图像的直方图。

3)在图像菜单调整子菜单中选亮度/对比度项,调节对比度滑块,观察图像变化。

4)在图像菜单中选直方图项,观察处理后图像的直方图,并同(2)中的直方图比较。 b. 灰度变换

1)在Photoshop中打开一黑白灰度图像文件。

2)在图像菜单中选直方图项,观察原始图像的直方图。 3)在图像菜单调整子菜单中选反相项,观察图像变化。

4)在图像菜单中选直方图项,观察处理后图像的直方图,并同(2)中的直方图比较。 5)画出灰度变换曲线。

6)在编辑菜单中选返回项,恢复原始图像。

7)在图像菜单调整子菜单中阈值项,调节阈值色阶滑块,观察图像变化。

8)在图像菜单中选直方图项,观察处理后图像的直方图,并同(2)中的直方图比较。 9)画出灰度变换曲线。

c. 直方图均衡化

1)在Photoshop中打开一黑白灰度图像文件。

2)在图像菜单中选直方图项,观察原始图像的直方图。 3)在图像菜单调整子菜单中选色调均化项,观察图像变化。

4)在图像菜单中选直方图项,观察处理后图像的直方图,并同(2)中的直方图比较。

d. 图像平滑

1)在Photoshop中打开一黑白灰度图像文件。

2)在图像菜单中选直方图项,观察原始图像的直方图。

3)在滤镜菜单模糊子菜单中选进一步模糊项,观察图像变化。

4)在图像菜单中选直方图项,观察处理后图像的直方图,并同(2)中的直方图比较。 5)在编辑菜单中选返回项,恢复原始图像。

6)在滤镜菜单模糊子菜单中选高斯模糊项,观察图像变化。

7)在图像菜单中选直方图项,观察处理后图像的直方图,并同(2)中的直方图比较。 8)在Matlab Help菜单中, 选Demos项。

9)打开ToolboxesImage Processing项,选Noise Reduction Filtering,并运行。

10)选图像Blood、噪声类型Salt & Pepper、滤波器类型Median、邻域3x3,比较原始图像、受噪声污染图像、滤波后图像。 11)改变参数,重做(10)。

12)选其他图像,重做(10)-(11)。

13)思考何种滤波器对抑制何种类型噪声更有效,邻域大小对抑制噪声效果及图像模糊程度的影响。

<2> 图像增强的Matlab编程

a. Load cameraman.tif image from your hard disk (using function imread). b. Show the image in a figure window. c. Show the histogram of the image (using function imhist). d. Enhance the contrast of the image using histogram equalization. e. Show the histogram of the image after processing. f. Compare the qualities of two images and makes a discussion about them. g. Add noises, such as gaussian, salt&pepper, speckle noise into the image respectively. Compare with the influence of the different Means and Variance. h. Remove the added noise from the image by function medfilt2, ordfilt2 and wiener2 respectively. Compare the qualities of the original images with the processed images and discuss the effect of the methods.

Requirement:

Write a report to do the experiment . Make sure the report includes the discussion about the experiment. If the report just is a copy from others, the report will have a zero mark.

第三篇:数字图像处理图像变换实验报告

数字图象处理实验指导书

实验一 图象变换实验

实 验

实验名称:图像处理姓名:刘强

班级:电信

学号:

报 告

1102

1404110128

数字图象处理实验指导书

实验一 图象变换实验

实验一 图像变换实验——图像点运算、几何变换及正交变换

一、 实验条件

PC机 数字图像处理实验教学软件

大量样图

二、 实验目的

1、 学习使用“数字图像处理实验教学软件系统”,能够进行图像处理方面的简单操作;

2、 熟悉图像点运算、几何变换及正交变换的基本原理,了解编程实现的具体步骤;

3、 观察图像的灰度直方图,明确直方图的作用和意义;

4、 观察图像点运算和几何变换的结果,比较不同参数条件下的变换效果;

5、 观察图像正交变换的结果,明确图像的空间频率分布情况。

三、 实验原理

1、 图像灰度直方图、点运算和几何变换的基本原理及编程实现步骤

图像灰度直方图是数字图像处理中一个最简单、最有用的工具,它描述了一幅图像的灰度分布情况,为图像的相关处理操作提供了基本信息。

图像点运算是一种简单而重要的处理技术,它能让用户改变图像数据占据的灰度范围。点运算可以看作是“从象素到象素”的复制操作,而这种复制操作是通过灰度变换函数实现的。如果输入图像为A(x,y),输出图像为B(x,y),则点运算可以表示为:

B(x,y)=f[A(x,y)] 其中f(x)被称为灰度变换(Gray Scale Transformation,GST)函数,它描述了输入灰度值和输出灰度值之间的转换关系。一旦灰度变换函数确定,该点运算就完全确定下来了。另外,点运算处理将改变图像的灰度直方图分布。点运算又被称为对比度增强、对比度拉伸或灰度变换。点运算一般包括灰度的线性变换、阈值变换、窗口变换、灰度拉伸和均衡等。

图像几何变换是图像的一种基本变换,通常包括图像镜像变换、图像转置、图像平移、图像缩放和图像旋转等,其理论基础主要是一些矩阵运算,详细原理可以参考有关书籍。

实验系统提供了图像灰度直方图、点运算和几何变换相关内容的文字说明,用户在操作过程中可以参考。下面以图像点运算中的阈值变换为例给出编程实现的程序流程图,如下:

数字图象处理实验指导书

实验一 图象变换实验

2、 图像正交变换的基本原理及编程实现步骤 数字图像的处理方法主要有空域法和频域法,点运算和几何变换属于空域法。频域法是将图像变换到频域后再进行处理,一般采用的变换方式是线性的正交变换(酉变换),主要包括傅立叶变换、离散余弦变换、沃尔什变换、霍特林变换和小波变换等。正交变换被广泛应用于图像特征提取、图像增强、图像复原、图像压缩和图像识别等领域。

正交变换实验的重点是快速傅立叶变换(FFT),其原理过于复杂,可以参考有关书籍,这里不再赘述。至于FFT的编程实现,系统采用的方法是:首先编制一个一维FFT程序模块,然后调用该模块对图像数据的列进行一维FFT,再对行进行一维FFT,最后计算并显示幅度谱。程序流程图如下:

四、 实验内容

图像灰度直方图

点运算:图像反色、灰度线性变换、阈值变换、窗口变换、灰度拉伸和灰度

数字图象处理实验指导书

实验一 图象变换实验

均衡

几何变换:图像镜像变换、图像转置、图像平移、图像缩放和图像旋转 正交变换:傅立叶变换、离散余弦变换、沃尔什变换、霍特林变换和小波正反变换

注意:

1、 所有实验项目均针对8位BMP灰度图像进行处理,其它格式(如JPG)的图像可以利用系统提供的图像格式转换工具进行转换,再进行处理;

2、 本次实验的重点是图像的灰度直方图和点运算,几何变换和正交变换只作一般性了解。

五、 实验步骤

以图像灰度阈值变换为例说明实验的具体步骤,其它实验项目的步骤与此类似。

1、 打开计算机,在系统桌面上双击“数字图像处理实验教学软件系统”的可执行文件“图象处理”的图标,进入实验系统;

2、 执行文件→打开,在OPEN对话框中选择待处理的图像,按【OK】后系统显示出图像;

3、 执行查看→图像基本信息,将显示图像基本信息对话框,如图所示;

数字图象处理实验指导书

实验一 图象变换实验

4、 执行查看→灰度直方图,查看图像的灰度直方图,如图所示;

5、 执行图像变换→正交变换→傅立叶变换,查看图像的频率域分布情况,如图所示;

数字图象处理实验指导书

实验一 图象变换实验

6、 执行图像变换→正交变换→小波变换,查看图像经过小波变换的效果,如图所示;

7、 执行图像变换→点运算→阈值变换,修改阈值变换对话框中的阈值参数,如图所示;

数字图象处理实验指导书

实验一 图象变换实验

8、 设置完阈值参数后按【OK】,系统显示阈值变换后的图像,与原图像进行比较,观察阈值变换的效果,如图所示;

9、 重复步骤4,查看阈值变换后图像的直方图分布情况;

数字图象处理实验指导书

实验一 图象变换实验

10、 重复步骤5,查看阈值变换后图像的频率域分布情况;

11、执行文件→保存或另存为,保存处理后的图像;

12、执行文件→重新加载,重新加载原始图像,但要注意先前对图像的处理将会丢失; 注意:

13、在执行步骤2时可能会出现有些图像文件不能打开的情况,如图所示,此时可以先利用图像格式转换工具将图像文件转换为8位BMP图像,再利用系统进行处理。步骤14和15是使用图像格式转换工具的方法;

14、在桌面上双击图像格式转换工具Jpg2bmp的图标,进入转换工具界面,如图所示;

15、按照界面提示,把JPG格式的图像文件转换成8位BMP图像。

数字图象处理实验指导书

实验一 图象变换实验

步骤13示意图

步骤14示意图

六、 思考题

1、 图像灰度线性变换、阈值变换、窗口变换、灰度拉伸和灰度均衡之间有何区别?

灰度线性变换就是将图像的像素值通过指定的线性函数进行变换,以此增强或者减弱图像的灰度。

灰度的阈值变换可以让一幅图像变成黑白二值图。

灰度的窗口变换也是一种常见的点运算。它的操作和阈值变换类似。从实现方法上可以看作是灰度折线变换的特列。窗口灰度变换处理结合了双固定阈值法,与其不同之处在于窗口内的灰度值保持不变。

灰度拉伸又叫做对比度拉伸,它与线性变换有些类似,不同之处在于灰度拉伸使用的是分段线性变换,所以它最大的优势是变换函数可以由用户任意合成。

灰度均衡是增强图像的有效方法之一。灰度均衡同样属于改进图像的方法,灰度均衡的图像具有较大的信息量。从变换后图像的直方图来看,灰度分布更加均匀。

2、 利用图像镜像和旋转变换可以实现图像转置吗?如果可以,应该怎样实现?

可以。进行一次镜像变换,顺(逆)时针旋转两次,再以与第一次相反的方向镜像变换。

数字图象处理实验指导书

实验一 图象变换实验

实验二 图像增强及复原实验

七、 实验条件

PC机 数字图像处理实验教学软件

大量样图

八、 实验目的

1、 熟练使用“数字图像处理实验教学软件系统”;

2、 熟悉图像增强及复原的基本原理,了解编程实现的具体步骤;

3、 观察图像中值滤波、平滑、锐化和伪彩色编码的结果,比较不同参数条件下的图像增强效果;

4、 观察图像退化和复原的结果,比较不同复原方法的复原效果。

九、 实验原理

1、 图像增强和复原的基本原理

对降质图像的改善处理通常有两类方法:图像增强和图像复原。

图像增强不考虑图像降质的原因,只将图像中感兴趣的特征有选择地进行突出,并衰减图像的次要信息,改善后的图像不一定逼近原始图像,只是增强了图像某些方面的可读性,如突出了目标轮廓,衰减了各种噪声等。图像增强可以用空域法和频域法分别实现,空域法主要是在空间域中对图像象素灰度值直接进行运算处理,一般包括中值滤波、模板平滑和梯度锐化等,空域法可以用下式来描述:

g(x,y)=f(x,y)*h(x,y) 其中f(x,y)是处理前图像,g(x,y)表示处理后图像,h(x,y)为空间运算函数。图像增强的频域法是在图像的频率域中对图像的变换值进行某种运算处理,然后变换回空间域,系统涉及的各种滤波器属于频域法增强,这是一种间接处理方法,可以用下面的过程模型来描述:

其中:F(u,v)=[ f(x,y)],G(u,v)= F(u,v)H(u,v),g(x,y)=1[ G(u,v)],和1分别表示频域正变换和反变换。实验系统提供了图像增强相关内容的文字说明,用户在操作过程中可以参考。

图像复原是针对图像降质的原因,设法去补偿降质因素,使改善后的图像尽可能逼近原始图像,提高了图像质量的逼真度。关于图像复原的详细原理可以参考相关书籍,这里不再赘述。本系统提供了图像的噪声退化、卷积退化和运动模糊退化操作,并提供了相应的逆滤波复原、维纳复原和运动模糊复原操作。本次

数字图象处理实验指导书

实验一 图象变换实验

实验中图像复原只作一般性了解。

2、 编程实现步骤

下面以图像增强中的中值滤波操作为例给出编程实现的程序流程图,如下:

十、 实验内容

图像增强:中值滤波、图像模板平滑、理想低通滤波器平滑、巴特沃斯低通滤波器平滑、梯度锐化、拉普拉斯锐化、理想高通滤波器锐化、巴特沃斯高通滤波器锐化和伪彩色编码

图像复原:图像的噪声退化、卷积退化、卷积加噪声退化、运动模糊退化、逆滤波复原、维纳复原和运动模糊复原

注意:

3、 所有实验项目均针对8位BMP灰度图像进行处理;

4、 本次实验的重点是图像增强中的中值滤波和模板平滑,图像复原只作一般性了解。

十一、 实验步骤

以图像中值滤波操作为例说明实验的具体步骤,其它实验项目的步骤与此类似。

11、 打开计算机,在系统桌面上双击“数字图像处理实验教学软件系统”的可执行文件“图象处理”的图标,进入实验系统;

12、 执行文件→打开,在OPEN对话框中选择待处理的图像,按【OK】后系统显示出图像;

数字图象处理实验指导书

实验一 图象变换实验

13、 执行查看→图像基本信息,将显示图像基本信息对话框,如图所示;

14、 执行查看→灰度直方图,查看图像的灰度直方图,如图所示;

数字图象处理实验指导书

实验一 图象变换实验

15、 执行图像变换→正交变换→傅立叶变换,查看图像的频率域分布情况,如图所示;

16、 执行图像增强→中值滤波,选择或自定义对话框中的滤波器参数,如图所示;

数字图象处理实验指导书

实验一 图象变换实验

17、 设置完滤波器参数后按【OK】,系统显示中值滤波后的图像,与原图像进行比较,观察中值滤波的效果,如图所示;

18、

重复步骤4,查看中值滤波后图像的直方图分布情况;

数字图象处理实验指导书

实验一 图象变换实验

19、 重复步骤5,查看中值滤波后图像的频率域分布情况;

10、执行文件→保存或另存为,保存处理后的图像;

11、执行文件→重新加载,重新加载原始图像,但要注意先前对图像的处理将会丢失。

数字图象处理实验指导书

实验一 图象变换实验

十二、

思考题

1、 图像中值滤波和模板平滑之间有何区别?

图像平滑处理就是用平滑模板对图像进行处理,以减少图像的噪声。而中值滤波是一种非线性的信号处理方法。

2、 图像增强和图像复原之间有何区别?

图像增强:利用一定的技术手段,不用考虑图像是否失真(即原 始图像在变换后可能会失真)而且不用分析图像降质的原因。针对给定图像的应用场合,有目的地强调图像的整体或局部特性,将原来不清晰的图像变得清晰或强调某些感兴趣的特征,扩大图像中不同物体特征之间的差别,抑制不感兴趣的特征,使之改善图像质量、丰富信息量,加强图像判读和识别效果,满足某些特殊分析的需要。

图像复原:针对质量降低或者失真的图像,恢复图像原始的内容或者质量。图像复原的过程包含对图像退化模型的分析,再对退化的图像进行复原。图像退化是由于成像系统受各种因素的影响,导致了图像质量的降低,称之为图像退化。这些因素包括传感器噪声、摄像机聚焦不佳、物体与摄像机之间的相对移动、随机大气湍流、光学系统的象差、成像光源和射线的散射等。 图像复原大致可以分为两种方法:

一种方法适用于缺乏图像先验知识的情况,此时可对退化过程建立模型进行描述,进而寻找一种去除或消弱其影响的过程,是一种估计方法;

另一种方法是针对原始图像有足够的先验知识的情况,对原始图像建立一个数学模型并根据它对退化图像进行拟合,能够获得更好的复原效果。

3、 图像维纳复原为什么比逆滤波复原效果好?

维纳滤波复原的原理可表示为

对于维纳滤波,由上式可知,当

时,由于存在 项,所以数字图象处理实验指导书

实验一 图象变换实验

不会出现被0除的情形,同时分子中含有项,在处,。当时,,此时维纳滤波就变成 了逆滤波;当时,,表明维纳滤波避免了逆滤波中 出现的对噪声过多的放大作用,也就是说图像维纳复原比逆滤波复原效果好。

第四篇:简易photoshop代码数字图像处理实验报告

一.一个简单的“photoshop”软件 二.设计目的:

数字图像处理,就是用数字计算机及其他有关数字技术,对图像进行处理,以达到预期的目的。随着计算机的发展,图像处理技术在许多领域得到了广泛应用,数字图像处理已成为电子信息、通信、计算机、自动化、信号处理等专业的重要课程。

数字图像处理课程设计是在完成数字图像处理的相关理论的学习后,进行的综合性训练课程,其目的主要包括:

1、使学生进一步巩固数字图像处理的基本概念、理论、分析方法和实现方法;

2、增强学生应用VC++编写数字图像处理的应用程序及分析、解决实际问题的能力;

3、尝试将所学的内容解决实际工程问题,培养学生的工程实践能力,提高工科学生的就业能力。

三.设计内容: 1.打开图像: 主要代码:

static char szFilter[]="BMP文件(*.bmp)|*.bmp||"; //定义过滤文件的类型

CString filename;

int ret=dlg.DoModal(); //运行打开文件对方框

if(ret==IDOK)

{

filename=dlg.GetFileName();

//获取所选择图像的路径

m_dib.LoadFromFile(filename);

//加载图像

if(!m_dib.m_bLoaded)

//判断是否加载图像成功

{ AfxMessageBox("图像打不开");

} return;

CFileDialog dlg(TRUE,"bmp",NULL, OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,szFilter);//定义文件对话框对

效果图:

2.水平镜像:把图像的第一列和最后一列调转,第二列和倒数第二列换过来,以此类推下去,直到第nw/2为止。 代码: int temp,i,j;

for(j=0;j

for(i=0;i

{

temp=m_dib.m_pdata[j*nw+i];

m_dib.m_pdata[j*nw+i]=m_dib.m_pdata[nw-i-1+j*nw];

m_dib.m_pdata[nw-i-1+j*nw]=temp;

} 效果图:

3.素描风格:先把灰度值与右下的作对比,如果差值大于一个值则说明这是轮廓,先把非轮廓的位置像素置为黑色,最后对所有像素进行底片化处理 代码: int temp,i,j;

for(j=0;j

for(i=0;i

{

temp=m_dib.m_pdata[j*nw+i]-m_dib.m_pdata[(j+1)*nw+i+1];

} if(temp<10) m_dib.m_pdata[j*nw+i]=0;

//黑色为0

for(j=0;j

for(i=0;i

{

int gray=m_dib.m_pdata[j*nw+i];

m_dib.m_pdata[j*nw+i]=255-gray;

}

图:

4图像雾化:在图像中引入一定的随机值,打乱图像中的像素值

代码:

int i,j,k,dat;

//i表示列,j表行

byte *ptemp=(byte *)new byte[nw*nh];

memset(ptemp,0,nw*nh);

for(j=0;j

for(i=0;i

{

k=rand()%8;//取任意的随机值

dat=j*nw+i+k; if(dat>=nw*nh) dat=nw*nh-1; ptemp[j*nw+i]=m_dib.m_pdata[dat];

} memcpy(m_dib.m_pdata,ptemp,nw*nh); 效果图:

5.浮雕处理:通过勾画图象轮廓和降低周围像素色值,从而生成具有凹凸感的浮雕效果。其方法是生成一缓冲区,计算当前像素的左上角与右下角的像素值之差,再加上一个补值。将其存储到缓冲区。再将缓冲区的数据逐点替换到图像中并显示出来。 代码:

int w=3,i,j;

//w为模板宽度

BYTE *p=new BYTE[nw*nh];

memcpy(p,m_dib.m_pdata,nw*nh);

for(j=w/2;j

for(i= w/2;i

{

p[j*nw+i]=m_dib.m_pdata[(j-1)*nw+i-1]*(1)+m_dib.m_pdata[(j+1)*nw+i+1]*(-1)+120;

}

memcpy(m_dib.m_pdata,p,nw*nh);

delete []p; 效果图:

6.直方图均衡化 代码:

int n[256]={0},g[256]={0}; //定义频数数组n,均衡化每个像素的灰度级的数组g

double f[256],t[256]; //定义频率数组f,累加的频率数组t

int g_max=0,g_mim=255;

int i,j,k,z;

for(j=0;j

//统计灰度级的频数n for(i=0;i

z=m_dib.m_pdata[j*nw+i];

n[z]++;

}

for(k=0;k<=255;k++)

//统计每个灰度级出现的频率

f[k]=n[k]/(nw*nh*1.0);

//累计灰度级的频率

t[0]=f[0]; for(k=1;k<=255;k++)

t[k]=t[k-1]+f[k];

for(j=0;j

for(i=0;i

g_max=w>g_max?w:g_max; //得到最大值

g_mim=w

}

for(k=0;k<=255;k++)

//利用公式求每个像素均衡化后的灰度级

g[k]=(int)((g_max-g_mim)*t[k]+g_mim+0.5);

for(j=0;j

//逐个替换

for(i=0;i

k=m_dib.m_pdata[j*nw+i];

m_dib.m_pdata[j*nw+i]=g[k];

}

for(j=0;j

//计算均衡化的直方图

{

//绘制原图像的直方图

for(i=0;i

{

BYTE temp=m_dib.m_pdata[j*nw+i];

m_hist[temp]++; } m_bHist=true;

CString str; int nh=m_dib.GetDIBHeight(); int i; // 画坐标轴

// 绘制坐标轴

pDC->MoveTo(410,nh+20); //(410,nh+20 )是直方图的左上角坐标

// 垂直轴

pDC->LineTo(410,nh+200);//(410,nh+200 )是直方图的左下角坐标

// 水平轴

pDC->LineTo(710,nh+200);//(710,nh+200 )是直方图的右下角坐标

// 写X轴刻度值

str.Format("0"); pDC->TextOut(410, nh+200+10, str); str.Format("50"); pDC->TextOut(460, nh+200+10, str); str.Format("100"); pDC->TextOut(510, nh+200+10, str); str.Format("150"); pDC->TextOut(560, nh+200+10, str); str.Format("200"); pDC->TextOut(610, nh+200+10, str); str.Format("255"); pDC->TextOut(665, nh+200+10, str); // 绘制X轴刻度 for ( i = 0; i < 256; i += 25) {

if ((i & 1) == 0) {

} // 10的倍数

pDC->MoveTo(i + 10, nh+200-2); pDC->LineTo(i + 10, nh+200+2);

}

else {

} // 10的倍数

pDC->MoveTo(i + 10, nh+200-2); pDC->LineTo(i + 10, nh+200+2); } // 绘制X轴箭头

pDC->MoveTo(705,nh+200-5); pDC->LineTo(710,nh+200); pDC->LineTo(705,nh+200+5); // 绘制y轴箭头

pDC->MoveTo(410,nh+20); pDC->LineTo(405,nh+20+5); pDC->MoveTo(410,nh+20); pDC->LineTo(415,nh+20+5); int max=0; for(i=0;i<256;i++) if(m_yuan[i]>max) {

} max=m_yuan[i];

for(i=0;i<256;i++) pDC->MoveTo(410+i,nh+200); pDC->LineTo(410+i,nh+200-(m_yuan[i]*160/max)); } if(m_bHist==true) //绘画新的直方图 {

CString str; int nh=m_dib.GetDIBHeight(); int i; // 画坐标轴 // 绘制坐标轴

pDC->MoveTo(10,nh+20); //(10,nh+20 )是直方图的左上角坐标

// 垂直轴

pDC->LineTo(10,nh+200);//(10,nh+200 )是直方图的左下角坐标

// 水平轴

pDC->LineTo(310,nh+200);//(310,nh+200 )是直方图的右下角坐标

// 写X轴刻度值 str.Format("0");

pDC->TextOut(10, nh+200+10, str); str.Format("50"); pDC->TextOut(60, nh+200+10, str); str.Format("100"); pDC->TextOut(110, nh+200+10, str); str.Format("150"); pDC->TextOut(160, nh+200+10, str); str.Format("200"); pDC->TextOut(210, nh+200+10, str); str.Format("255"); pDC->TextOut(265, nh+200+10, str); // 绘制X轴刻度 for ( i = 0; i < 256; i += 25) {

if ((i & 1) == 0) { // 10的倍数

} else {

// 10的倍数

pDC->MoveTo(i + 10, nh+200-2); pDC->LineTo(i + 10, nh+200+2); pDC->MoveTo(i + 10, nh+200-2); pDC->LineTo(i + 10, nh+200+2); } } // 绘制X轴箭头

pDC->MoveTo(305,nh+200-5); pDC->LineTo(310,nh+200); pDC->LineTo(305,nh+200+5); // 绘制y轴箭头 pDC->MoveTo(10,nh+20); pDC->LineTo(5,nh+20+5); pDC->MoveTo(10,nh+20); pDC->LineTo(15,nh+20+5); int max=0; for(i=0;i<256;i++) if(m_hist[i]>max) { max=m_hist[i];

for(i=0;i<256;i++) pDC->MoveTo(10+i,nh+200); pDC->LineTo(10+i,nh+200-(m_hist[i]*160/max));

} } 效果图:

四.心得体会:

通过这次数字图像处理的课程设计,对图片有了更深一层的认识,理解了对图像处理的一些原理,在这个课程设计过程中,需要自己去查阅资料,找资料,还需要理解所找到的资料,遇到问题独立去思考,或者去请教同学,给了我一个很好的锻炼机会,做事情一定要坚持,最后一定会有收获的。

五.参考文献:

《数字图像处理》 ——电子工业出版社

《vc++数字图像处理实验指导书》 曹老师、何家峰主编

第五篇:华南理工大学数字通信原理实验思考题参考答案

AMI、HDB3码实验

1、说明AMI码和HDB3码的特点,及其变换原则。 回答:

AMI码的特点:

1、无直流成分,低频成分也少 ,高频成分少,信码能量集中在fB/2处 ;

2、码型有了一定的检错能力,检出单个误码;

3、当连0数不多时可通过全波整流法提取时钟信息,但是连0数过多时就无法正常地提出时钟信息。

变换规则:二进码序列中“0”仍编为“0”;而二进码序列中的“1”码则交替地变为“+1”码及“-1”码 。

HDB3码的特点:

1、无直流成分,低频成分也少 ,高频成分少,信码能量集中在fB/2处 ;

2、码型有了一定的检错能力,检出单个误码;

3、可通过全波整流法提取时钟信息。

变换规则: (1)二进制信号序列中的“0”码在HDB3码中仍编为“0”码,二进制信号中“1”码,在HDB3码中应交替地成+1和-1码,但序列中出现四个连“0”码时应按特殊规律编码;

(2)二进制序列中四个连“0”按以下规则编码:信码中出现四个连“0”码时,要将这四个连“0”码用000V或B00V取代节来代替(B和V也是“1”码,可正、可负)。这两个取代节选取原则是,使任意两个相邻v脉冲间的传号数为奇数时选用000V取代节,偶数时则选用B00V取代节。

2、示波器看到的HDB3变换规则与书本上和老师讲的有什么不同,为什么有这个差别。

回答:示波器上看到的HDB3编码器的输出P22点的波形比书本上的理论上的输出波形要延时5个码位。原因是实验电路中采用了由4个移位寄存器和与非门组成的四连零测试模块去检测二进制码流中是否有四连零,因此输出的HDB3码有5个码位的延时。

3、用滤波法在信码中提取定时信息,对于HDB3码要作哪些变换,电路中如何实现这些变换。

回答:首先,对HDB3码进行全波整流,把双极性的HDB3码变成单极性的归零码,这个在电路上是通过整流二极管实现的;然后,把归零码经晶体管调谐电路进行选频,提取时钟分量;最后,对提取的时钟分量进行整形来产生定时脉冲。

PCM实验思考题参考答案

1.PCM编译码系统由哪些部分构成?各部分的作用是什么?

回答:

其中,低通滤波器:把话音信号带宽限制为3.4KHz,把高于这个频率的信号过滤掉。

抽样:对模拟信号以其信号带宽2倍以上的频率进行周期性的扫描,把时间上连续的信号变成时间上离散的信号。

量化:把经抽样得到的瞬时值进行幅度离散化,即指定M个规定的电平,把抽样值用最接近的电平标示。

编码:用二进制码组表示有固定电平的量化值。

译码:与编码器的作用相反,把收到的PCM信号还原成相应的PAM信号,实现数模变换。

2.对PCM和△M系统的系统性能进行比较,总结它们各自的特点 ?

回答: PCM系统编码位数小于4,那么它的性能比低通截止频率fL=3000Hz、信号频率fk=1000Hz的△M系统差,如果编码位数大于4,则随着编码位数的增大PCM系统相对于△M系统,其性能会越来越好。

误码性能,由于△M每一位误码仅表示造成±σ的误差,而PCM的每一位误差会造成比较大的误差,所以误码对PCM系统的影响要比△M系统严重些。这就是说,为了获得相同的性能,PCM系统将比△M系统要求更低的误码率。

3.在实际的通信系统中收端(译码)部分的定时信号是怎样获取的?

回答:收端部分的定时信号有两种获取方法:外同步法(插入导频法)和自同步法。

外同步法在发送的信号中插入频率为码元速率或码元速率倍数的同步信号,接收端通过一个窄带滤波器或其它处理方式分离出该信号实现位同步。

自同步法不需要发送专门的位同步导频信号,接收端可以直接对接收信号通过某种变换提取位同步信号,这是数字通信系统中经常用到的方法。主要有两大类自同步方法:

1、非线性变换滤波法:非归零的二进制随机脉冲序列的频谱中虽没有位同步的频率分量,但是可以通过非线性变换就会出现离散的位同步分量,然后用窄带滤波器(或锁相环)提取位同步频率分量,便可以得到所需的位定时信号。

2、位同步锁相环:位同步锁相环利用鉴相器比较接收码元和本地产生的位同步信号之间的相位,若两者相位不一致(超前或滞后),鉴相器就产生误差信号去调整位同步信号的相位,直至获得准确的位同步信号为止。

FSK调制解调实验

2.估算本实验调制器后的通带滤波器应有多宽的通带。 回答:△f=|f2-f1|+2fs=|125-100|+2*25=75KHz。

3.说明本实验低通滤波器解调基带的截止频率,及带通滤波器提取位定时的中心频率。 回答:本实验低通滤波器解调基带的截止频率为25KHz,带通滤波器提取位定时的中心频率为25KHz。

4.从信码中直接提取位同步是如何使信码变换成含有位同步信息的? 回答:首先把信码通过微分整流变成归零脉冲之后,这些归零脉冲中就含有fs=1/Ts位同步信号分量,经一窄带滤波器就可滤出此信号分量,再将它经相位调整就可形成位同步脉冲。

5.为什么2.9位定时频率抖动大,而2.10频率位定时抖动小。

回答:本实验中我们选用了单T网络作为滤波网络,由于单T网络频带不够窄,Q值不够高,导致提取的位同步信号(2.9测量点输出的信号)有较大的抖动,而2.10测量点输出的信号是2.9输出的信号经一锁相环窄带滤波器进行提纯之后的信号,因为2.10频率位定时抖动小。

DPSK调制解调实验

2.设给定一码组100110011100,画出对这一码组进行2DPSK的调制和解调的波形图。 回答:

信码码组:差分编码:2DPSK:解码输出:

3.为什么利用眼图大致可以估计系统性能的优劣? 回答:因为眼图 的 “眼睛” 张开的大小反映着码间串扰的强弱, “眼睛”张的 越大,且眼图越端正,表示码间串扰越小;反之表示码间串扰越大。

当存在噪声时,噪声将叠加在信号上,观察到的眼图的线迹会变得模糊不清。若同时存在码间串扰 , “眼睛”将 张开得更小。与无码间串扰时的眼图相比,原来清晰端正的细线迹,变成了比较模糊的带状线,而且不很端正。噪声越大,线迹越宽,越模糊;码间串扰越大,眼图越不端正。

因此,可以从眼图中看出码间串扰的大小和噪声的强弱,可以大致估计系统性能的优劣。

4. 简述同相正交环工作原理。

MC1496鉴相器V3LF356低 通V5过 零检 测P13再生码判 决P16 、P17V1P11P142DPSK压控振荡器74S124V8环路滤波器V7摸拟相乘器MC1496差 分译 码P15V2P12MC1496鉴相器V4LF356低 通V6回答:如下图所示,通过外力使得压控振荡器输出的频率为载波中心频率,这时从压控振荡器输出两路相互正交的载波信号V1=cos(w0t+θ)和V2= sin(w0t+θ)到鉴相器,在鉴相器中V1和V2分别与2DPSK信号进行模拟相乘得到V3=1/2m(t)*[cos(2w0t+θ)+cos(θ)]和V4=1/2m(t)*[sin(2w0t+θ)+sin(θ)]。V

3、V4经过低通滤波器滤除载波频率以上的高频分量,得到基带信号V5=1/2m(t)*cos(θ) 和V6=1/2m(t)*sin(θ)。这时的基带信号包含着码元信号,无法对压控振荡器进行控制,将V

5、V6经过一个模拟相乘器可得到去掉码元信息之后的信号V7=1/8sin(2θ),即得到了反应压控振荡器输出信号与输入载波间的相位差的控制电压。

5.载波提取发生相位模糊时,必须用什么方法进行解决? 回答:必须用差分编译码方法去除相位模糊问题。

上一篇
下一篇
返回顶部