DSP课程设计图像Reverse实验.doc_第1页
DSP课程设计图像Reverse实验.doc_第2页
DSP课程设计图像Reverse实验.doc_第3页
DSP课程设计图像Reverse实验.doc_第4页
DSP课程设计图像Reverse实验.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

郑州轻工业学院 DSP 课程设计题目:图像Reverse 实验院 系: 计算机与通信工程学院 专 业: 电子信息10-01 姓名学号: 刘 传 (29) xxxxxxxxxxxxx 日 期: 2013-07-01 指导老师: 张 彦 成 绩: 一、实验目的1.熟悉CCS集成开发环境,掌握工程的生成方法;2.掌握汇编语言程序设计方法。3.掌握CCS集成开发环境的调试方法;4、利用TMS320C55X实验板实现对图像进行反色处理。二、课程设计要求1).了解使用DSP实现图像求反的方法2).分析图像如何输入,并存储在什么位置。3).修改程序,实现图像对比度增强。三、课程设计题目背景描述本次课程设计介绍了数字信号处理的最小系统的整个设计过程,该最小系统的硬件由主控芯片TWS320VC5402、电源电路、时钟电路、复位电路、JTAG接口、外部存储器构成。图像处理主要是指对原始图像进行加工,使其具有更好的视觉效果或满足某些特定场合的应用要求。由于图像具有信息量大、某些场合下对实时性要求较高的特点,所以对处理芯片的运算速度有较高要求。DSP芯片具有运算速度快,数据吞吐率高等优点,故在图像处理中得到广泛应用。四、图像的读入及分析数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指利用计算机和其它高速、大规模集成数字硬件,对从图像信息转换来的数字电信号进行某些数字运算或处理,以期提高图像的质量或达到人们所预想的结果。输出用户所需图像DSP硬件平台原始图像图像处理算法数字图像处理中常将图像像素点的灰度分为256个等级,其中0为黑色,255为白色,0到255之间的等级灰度逐渐减小。图像是由若干像素组成,每个像素都有确定的灰度值。所以一幅图像,可以用每一个像素点的位置及其灰度值来描述。以此为依据,对于二维图像,我们采用了一个二维数组,每个数组元素存储一个像素点的信息,数组元素标号可以表示像素点的横纵坐标,数组元素的值就为像素点的灰度值。通过这种方法,我们就可以将整张图像的信息读入DSP存储空间中。图像读入后,根据每一个像素点的灰度值可以计算出整张图像的平均灰度值。根据这一平均值我们将图像分为四个等级:063为0级,64127为1级,128191为2级,192255为3级。五、图像二值和求返翻转和反色处理翻转也是图像处理中常用的处理方式。如3.1中所说,本课设中将图像读入后是用一个二维数组进行存储的,因此数字图像实质上可以看作是一个矩阵,图像的翻转也就可以当做是矩阵的翻转进行处理。根据3.1中已得的图像分级情况,我们对图像进行了不同的翻转处理。0级和1级进行水平翻转,通过对二维数组同行元素进行左右调换实现;2计和3级进行竖直翻转,通过对二维数组同列元素进行上下调换实现。通过对二维数组元素的各种位置变换,均可以得到多种图像的翻转变换或局部翻转变换。反色处理则是对3.2中已得二值化处理后的图像进行的一种处理。二值化处理后的图像将目标对象和背景等进行了明确的区分,其中之一为白色,则另一个必为黑色。而其中具体是目标对象为白,背景为黑,还是这好相反,则是由图像本身特性决定的。假如我们期望以白色标记目标对象,而二值化结果却正好相反时,就可以采用反色处理。二值化处理后图像所有像素点均只有黑白两种颜色。将其中黑色的变为白色,也即灰度值从0变为255;同时白色变为黑色,也即灰度值从255变为0,便实现了图像的反色处理。六、图像的增强原理如下图通过灰度映射实现原理如下图(左) 效果图对比(右)七、实验程序流程图七、课程设计设计方法及步骤:1、实验步骤:将图像按像素按位进行求反,取得类似照相底片效果。求反处理的图像与原始图“黑白颠倒”,可以看清原始图中灰黑区域的情况。求反的图像一般用于数字图像的初步处理。程序所在目录Ex21_Reverse。1).Project-Open,打开该目录中的工程文件Image.pjt。2)、选择菜单 View-Graph-Image,做如下设置(注意是设置两次而不是一次,即打开2个图像窗口,便于对比观察):3)、Project-Rebuild ALL,编译链接。4)、File-Load Program:Histogram.out5)、Debug-GO Main,如下图设置断点,这样方便观察不同图像的执行效果。6)、Debug-RUN(快捷键F5),全速运行。2、求返的实验现象3、修改程序后输出图像结果如下八、实验主要程序(1)求返的部分程序#define IMAGEWIDTH 80#define IMAGEHEIGHT 80extern unsigned char dbImageIMAGEWIDTH*IMAGEHEIGHT;extern unsigned char dbTargetImageIMAGEWIDTH*IMAGEHEIGHT;int mi,mj;unsigned int m_nWork;unsigned char *pImg,*pImg1;void Reverse(int nWidth,int nHeight)pImg=dbImage; pImg1=dbTargetImage;for ( mj=0;mjnHeight;mj+ )for ( mi=0;minWidth;mi+,pImg+,pImg1+ )(*pImg1)=(*pImg)&0x0ff;(2)增强对比度的部分程序void Reverse(int nWidth,int nHeight)unsigned char x1=60,y1=20,x2=150,y2=250;float k1=1.0*y1/x1,k2=1.0*(y2-y1)/(x2-x1),k3=1.0*(255-y2)/(255-x2);pImg=dbImage; pImg1=dbTargetImage;for ( mj=0;mjnHeight;mj+ )for ( mi=0;minWidth;mi+,pImg+,pImg1+ )if(*pImgx1&*pImgx2)*pImg1=(unsigned char)(*pImg-x1)*k2)+y1;else*pImg1=(unsigned char)(*pImg-x2)*k3)+y2;九.思考题1).图像是如何读入DSP内存中的,数据形式是什么?图像的读入及分析:输出用户所需图像DSP硬件平台原始图像图像处理算法数字图像处理中常将图像像素点的灰度分为256个等级,其中0为黑色,255为白色,0到255之间的等级灰度逐渐减小。图像是由若干像素组成,每个像素都有确定的灰度值。所以一幅图像,可以用每一个像素点的位置及其灰度值来描述。以此为依据,对于二维图像,我们采用了一个二维数组,每个数组元素存储一个像素点的信息,数组元素标号可以表示像素点的横纵坐标,数组元素的值就为像素点的灰度值。通过这种方法,我们就可以将整张图像的信息读入DSP存储空间中。图像读入后,根据每一个像素点的灰度值可以计算出整张图像的平均灰度值。根据这一平均值我们将图像分为四个等级:063为0级,64127为1级,128191为2级,192255为3级。2).数据存储在什么位置?由什么决定?分析:固定的图像,写入Flash。保存图像,需要按顺序保存文件信息头、位图信息头、调色板(如果有)和图像的实际数据。void Cnvt24bit() FILE *fpBmp; /文件指针 struct ImgInfo ImgInfo1; /储存图像信息 char *BmpData; /储存图像数据 fpBmp=fopen(C:/ti/examples/sim62xx/xdais/firtest/xiaotu.bmp,rb); if(fpBmp=NULL) printf(Err open file);getchar(); /打开bmp文件 GetBmpInfo(fpBmp,&ImgInfo1); /获bmp信息 BmpData =(char *)malloc(ImgInfo1.BmpSize); if(BmpData=NULL) printf(Err Malloc);getchar(); /注意要强制转换类型 ReadImgData(fpBmp,&ImgInfo1,BmpData); /读取BMP图像数据 fclose(fpBmp); 2getchar(); void main() Cnvt24bit(); 十、总结这个学期做过4次CCS的仿真实验。对于一个新的实验内容,我并不是很适应。但是在同学的帮助下,然后通过上网查找资料,结合实验课本我开始慢慢进入状态。渐渐地,我能够较为顺利的建立好仿真模型图。当然这期间经历过很多失败。我的基础本来也不是很扎实,所以这些对我来说,需要花更多的时间去调试。最后能够把自己的照片处理成符合课设要求,这样使我对原来CCS软件使用更加熟练。 在整个操作过程中也不可避免地出现了一些问题。例如编程调试,图片效果不明显。在李杰老师的指导下,我理解CCS的精髓,并完成了课设。 我参考了许多书籍及资料,对此报告进行完善。不仅完成了报告,还起到了进一步学习了CCS软件的使用,这对于以后学习工作都会有很大的帮助。 在此要感谢我们的指导老师 老师和热心同学对我悉心的指导,感谢老师及那些热心的同学给我的帮助。让我得以较为顺利地完成此次的课程设计。在设计过程中,我学会了独立思考,养成查阅资料的习惯,使自己学到了不少知识,虽也经历了不少艰辛,但收获更是巨大。我明白很多道理,培养了我独立工作的能力,树立了对自己工作能力的信心,这些对我个人今后的人生学习工作都有着非常重要的影响。相对薄弱的动手能力也得到了大大提高,我也充分体会到了在创造过程中探索的艰难和成功时的喜悦。通过本次课程设计,将课堂教学的知识应用于实践。在这个过程中,我们先对图像的知识进行基本的了解,并且将图像转化为数组进行存储,处理。我们还学习了ccs软件的基本应用,这对于我们以后的工作也是非常重要的。同时通过这次实践进一步提高了我们的c语言水平。最重要的是对我们思维的开拓,从开始的数组化图像到后来局部二值化的想法,通过向老师提问,网上查找资料等方式我们一步一步完善我们的课程设计,最终完成了我们的课设目的。另外,通过本次实践,我们也感受到了dsp技术的稳定性好

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论