《DSP技术实习报告[范本]》由会员分享,可在线阅读,更多相关《DSP技术实习报告[范本](11页珍藏版)》请在金锄头文库上搜索。
1、DSP技术实习报告一 、实习题目X、 灰度线性变换X、 灰度的对数变换X、 锯齿波变换X、 图像剪取二 、实习目的:X、 巩固和深化数字图像处理技术所涉及的数理基础、基本算法和各种图像处理技术方法,学习和掌握图像变换。X、 对学习图像处理的基础知识对其应用工程实践有一定的认识,提高学生对应用软件的使用能力。X、 通过理论联系实际,综合运用所学知识,提高学生独立分析和解决实际问题的能力,增强学生的工程意识,打好专业基础三、实习要求:X、能够根据设计题目要求查阅检索有关的文献资料,结合题目选学有关参考书;X、熟悉计算机图像处理的设计方法;X、熟悉图像灰度变换程序的设计方法;X、掌握图像灰度变换的仿
2、真方法;X、完成图像的灰度变换。四、系统原理描述:灰度变换将输入图像映射为输出图像,输出图像每个像素点的灰度值仅由对应的输入像素点的值决定。它常用于改变图像的灰度范围及分布,是图像数字化及图像显示的重要工具。灰度变换因其作用性质有时也被称为对比度增强、对比度拉伸或点运算,称之为灰度变换。灰度变换实际上是灰度到灰度的映射过程。设输入图像为A(x,y)输出图像为B(x,y),则灰度变换可表示为:即灰度变换完全由灰度映射函数决定。显然灰度变换不会改变图像内像素点之间的空间关系。X. 灰度线性变换设图像灰度值f(x,y)的可能值域为D,但在一定条件下,使得其取值范围缩小为且如图 X-XX所示,这种状态
3、常出现于连续图f(x,y)值的动态范围小,或摄影曝光不足中,因而其对应的直方图P (D)如图所示,集中于某个较小的灰度区间内。但是通常人们希望灰度直方图在全部灰度区域内均匀分布,最简单地是把低反差图像进行灰度变换得到高反差图像,即线性变换,如下式:该式可以使变换后的灰度的取值范围扩大到一般来说,只有当两个相邻像素的灰度值(亮度值)相差到一定程度时,人的视觉才能分辨。若灰度值D仅在较小区间内时,则人眼可分辨的亮度差的总级数则亦很少,从而造成目标图像灰度值与背景灰度值相接近,人眼而无法分辨检出。而对其进行的变换后,则如上图可使变得更大,从而使得视觉上对变换后图像能够分辨的亮度差的总级数增加,造成目
4、标图像与背景间亮度差异的加大,使原先无法被人眼检出的目标图像也能检出,且变换后图像清晰度也大大提高。X. 灰度的对数变换对数变换常用来扩展低值灰度,而压缩高值灰度,这样可以使低值灰度的图像细节更容易看清楚,对数变换的表达式为:其中K为一根据图像内容来确定的常数因子。X. 锯齿波变换这种方法常用来在动态范围较小的显示器上显示动态范围较大的图像,或者用来发现图像中基本轮廓,变换曲线如图所示。X. 图像剪取对于灰度图像f,设定一个阈值t,若f(i,j) t,则f(i,j)的值保持不变。处理后的图像仍然是灰度图像,只不过阈值t以下的像素被置X。五、方案论证及系统设计六、系统程序的设计X、灰度线性变换#
5、include#include#include /添加图像和视频处理库头文件#include /添加图像例子头文件,/包含原始的图像文件goldhill#define MAX_PIXEL_VALUE XXX/包含原始图像像素的最大灰度值#define WIDTH XXX#define HEIGHT XXX/原始图像行和列的像素数int my_result;/保存自编函数得到的灰度图结果的数组short histogram_output;/保存调用库函数得到的灰度图结果的数组short my_threshold_val=XXX;/short my_threshold_val=XXX;/阈值的设定
6、void my_histogram();/声明自编灰度图算法显示函数void main( )int i;int my_size;short *input;my_size = WIDTH*HEIGHT;/计算所有像素点数input = &goldhill;/获取原始图像的首地址for(i= X;iIMG_histogram(input,histogram_output,my_size);/调用库函数实现灰度图显示my_histogram();/自编C语言算法程序实现灰度图显示IMG_threshold( &goldhill,&goldhill,WIDTH ,HEIGHT, my_threshol
7、d_val );/调用库函数实现阈值处理与显示while(X);void my_histogram()int za=XX,zb=XXX,i,j,zX=X,zX=XXX,zzba;short (*p);/定义了一个指针变量p,/指向了一个包含XXX个元素的一维数组,/即行指针变量pp=goldhill;zzba=(zX-zX)/(float)(zb-za);/获取原始图像的首地址/ for(i=X;ifor (i=X;i for (j=X;jif(*(*(p+i)+j)elseif(*(*(p+i)+j)=zb)*(*(p+i)+j)=zX;else *(*(p+i)+j)=zzba*(*(*(
8、p+i)+j)-za)+zX+;/ k=*(*(p+i)+j);/ my_result+;/自编灰度直方图算法显示函数X、灰度的对数变换#include#include#include /添加图像和视频处理库头文件#include /添加图像例子头文件,/包含原始的图像文件goldhill#define MAX_PIXEL_VALUE XXX/包含原始图像像素的最大灰度值#define WIDTH XXX#define HEIGHT XXX#define ZERO X/原始图像行和列的像素数int my_result;/保存自编函数得到的灰度直方图结果的数组short histogram_ou
9、tput;/保存调用库函数得到的灰度直方图结果的数组short my_threshold_val=XXX;/short my_threshold_val=XXX;/阈值的设定void my_histogram();/声明自编灰度直方图算法显示函数void main( )int i;int my_size;short *input;my_size = WIDTH*HEIGHT;/计算所有像素点数input = &goldhill;/获取原始图像的首地址for(i= X;iIMG_histogram(input,histogram_output,my_size);/调用库函数实现灰度直方图显示my
10、_histogram();/自编C语言算法程序实现灰度直方图显示IMG_threshold( &goldhill,&goldhill,WIDTH ,HEIGHT, my_threshold_val );/调用库函数实现阈值处理与显示while(X);void my_histogram()int i,j;double za=X,zb=XXX,zX=X,zX=XXX,fij,gij,zzlba;short (*p);/定义了一个指针变量p,/指向了一个包含XXX个元素的一维数组,/即行指针变量pp=goldhill;zzlba=(zX-zX)/(double)(log(zb)-log(za);/获
11、取原始图像的首地址/ for(i=X;i/初始化灰度直方图结果数组for (i=X;i for (j=X;j/* log transform.*/fij=*(*(p+i)+j);if(fij=X)fij=;gij=zzlba*(log(fij)-log(za)+zX;*(*(p+i)+j)=gij+;/ k=*(*(p+i)+j);/ my_result+;X、锯齿波变换#include#include#include /添加图像和视频处理库头文件#include /添加图像例子头文件,/包含原始的图像文件goldhill#define MAX_PIXEL_VALUE XXX/包含原始图像像素
12、的最大灰度值#define WIDTH XXX#define HEIGHT XXX/原始图像行和列的像素数int my_result;/保存自编函数得到的灰度直方图结果的数组short histogram_output;/保存调用库函数得到的灰度直方图结果的数组short my_threshold_val=XXX;/short my_threshold_val=XXX;/阈值的设定void my_histogram();/声明自编灰度直方图算法显示函数void main( )int i;int my_size;short *input;my_size = WIDTH*HEIGHT;/计算所有像
13、素点数input = &goldhill;/获取原始图像的首地址for(i= X;iIMG_histogram(input,histogram_output,my_size);/调用库函数实现灰度直方图显示my_histogram();/自编C语言算法程序实现灰度直方图显示IMG_threshold(&goldhill,&goldhill,WIDTH,HEIGHT, my_threshold_val );/调用库函数实现阈值处理与显示while(X);void my_histogram()int i,j;float lwidth=XXX,ratio=XXX,gg=XXX;short (*p);/定义了一个指针变量p,/指向了一个包含XXX个元素的一维数组,/即行指针变量pp=goldhill;/获XXXX年X月精心整理范文资料,希望你喜欢,谢谢浏览与下载,我们会努力不断完善与更新文档资料,谢谢