基于DSP的图像处理-DSP课程设计.doc

上传人:h**** 文档编号:129976 上传时间:2018-07-09 格式:DOC 页数:49 大小:774KB
下载 相关 举报
基于DSP的图像处理-DSP课程设计.doc_第1页
第1页 / 共49页
基于DSP的图像处理-DSP课程设计.doc_第2页
第2页 / 共49页
基于DSP的图像处理-DSP课程设计.doc_第3页
第3页 / 共49页
基于DSP的图像处理-DSP课程设计.doc_第4页
第4页 / 共49页
基于DSP的图像处理-DSP课程设计.doc_第5页
第5页 / 共49页
点击查看更多>>
资源描述

1、 基于 DSP 的图像处理 DSP 课程设计报告 学 号: 班 级: 姓 名: 同组姓名: 指导教师: 2012 年 9 月 13 日 河海大学计算机与信息学院 DSP 课程设计报告 目 录 1 课程设计目的 1 2 课程设计题目背景描述和要求 1 3 课程设计报告内容 1 4 总结 4 5 参考文献 4 6 附录 5 河海大学计算机与信息学院 DSP 课程设计报告 1.课程设计目的 利用软件 CCS 实现以下功能: 1、根据图像灰度等级对图像进行不同的旋转;2、对图像进行二值化处理 2.课程设计题目背景描述和要求 图像处理主要是指对原始图像进行加工,使其具有更好的视觉效果或满足某些特定场合的

2、应用要求。由于图像具有信息量大、某些场合下对实时性要求较高的特点,所以对处理芯片的运算速度有较高要求。 DSP芯片具有运算速度快,数据吞吐率高等优点,故在图像处理中得到广泛应用。 本课题利用软件 CCS 进行图像处理,实现对图像的读入、分析、翻转、二值化处理。 3.课程设计报告内容 3.1 图像的读入及分析 数字图像处理( Digital Image Processing)又称为计算机图像处理,它是指利用计算机和其它高速、大规模集成数字硬件,对从图像信息转换来的数字电信号进行某些数字运算或处理,以期提高图像的质量或达到人们所预想的结果。 数字图像处理中常将图像像素点的灰度分为 256 个等级

3、,其中 0 为黑色, 255原始图像 DSP 硬件平台 图像处理算法 输 出 用 户所需图像 河海大学计算机与信息学院 DSP 课程设计报告 为白色, 0 到 255 之间的等级灰度逐渐减小。 图像是由若干像素组成,每个像素都有确定的灰度值。所以一幅图像,可以用每一个像素点的位置及其灰度值来描述。以此为依据,对于二维图像,我们采用了一个二维数组,每个数组元素存储一个像素点的信息,数组元素标号可以表示像素点的横纵坐标,数组元素的值就为像素点的灰度值。通过这种方法,我们就可以将整张图像的信息读入 DSP 存储空间中。 图像读入后,根据每一个像素点的灰度值可以计算出整张图像的平均灰度值。根据这一平均

4、值我们将图像分为四个等级: 0 63 为 0级, 64 127 为 1 级,128 191 为 2级, 192 255 为 3级。 3.2 图像的二值化处理 3.2.1 二值化处理 一幅图像包括目标物体、背景和噪声。目标物体和背景等在灰度值上有明显差异。因此,为了从多值的数字图像中直接提取目标物体,常设定一灰度阈值 T,将图像分为两个部分,灰度大于 T 的像素群及灰度小于 T 的像素群。上述就是二值化处理的方法。 本课设中设计了两种二值化方式:全局二值化,局部二值化。 3.2.2 全局二值化 根据确定的二值化阈值 T,我们对以读入的图像进行处理,对于图像中所有像素点,灰度值大于 T 的,将其灰

5、 度设为 255,;灰度值小于 T的,将其灰度值设为 0。这样实现了图像的全局二值化。 全局二值化 为这张图像设定了统一的二值化阈值,但实际图像的各个部分平均灰度状况并不统一。因此全局二值化 在表现图像细节方面存 在 缺陷。 河海大学计算机与信息学院 DSP 课程设计报告 3.2.3 局部二值化 利用 3.1 中介绍的灰度分级,利用已经得到的图像整体的灰度等级,为每级的图像设定一个二值化阈值 T。 0级的灰度在 0 63之间,阈值 T设为 32; 1级的灰度在 64 127 之间,阈值 T设为 96; 2级的灰度在 128 191 之间,阈 T设为 160; 3级灰度在 192 255 之间,

6、阈值 T设为 224。 该方法首先将图像划分为若干子集,在根据各子集的灰度状况各自设定二值化阈值。 为简化处理过程,本课设中实际将图像划分为四个大小相等部分。再后逐一计算每个部分的平均灰度值,以此作为二值化阈值。随后根据各部分自身阈值,分别进行二值化处理。最后再将处理后的各部分进行整合,得到处理后的图像。 以上方法相对于全局二值化有一定改善,但仍有缺陷。它将图像划分为若干小部分,各个部分阈值选取为自身的灰度平均值,因此,对各个部分而言,实质上还是选取了一个统一阈值。对此, 可通过优化各部分阈值计算方法来进一步改善效果 。 优化的阈 值计算方式应当更多地依赖于各部分图像自身的特征,以求所得的阈值

7、能更好地反映该部分的情况。一种具体优化方法是:根据各部分像素灰度值 的平均值 E,像素之间的差平方 P,像素之间的均方根值 Q 等各种局部特征,设定一个参数方程进行阈值的计算 。 例如: T=a*E+b*P+c*Q,其中 a,b,c 是自由参数。这样得出来的二值化图像就更能表现出二值化图像中的细节。 图像翻转 目前,已经有很多有效降低计算量的图像旋转算法,基于图像线性存储结构的旋转方法就是其中之一。然而,在 DSP 平台上,有限的高速存储资源限制了这些算法效率的直接 发挥,需要针对算法及 DSP 平台的性能结构特点进行高效的数据调度。对于图像旋转问题而言,数据调度还需要克服由于存在大量非连续图

8、像像素地址访问而严重影响 DSP 数据存取及 CPU 效率发挥的问题。这是图像旋转本身的特殊性,在其他图像处理技术中是不存在的。 由 DSP 的结构特点可知,只有在数据和程序均位于片内存储器当中的条件河海大学计算机与信息学院 DSP 课程设计报告 下, DSP 的效率才能得到最大化的发挥。在大图像旋转算法中,由于涉及的图像数据量远大于 DSP 的片内存储器容量,源图像和最终视口图像等数据必须被存放在片外存储器中。在这种情况下,为了保证 DSP CPU 高速 处理能力的发挥,必须优化数据流,将源图像分块,依次搬移至片内处理,并设法保证 CPU 当前要处理的图像数据块已经事先在片内存储器中准备好了

9、。因此在算法整体优化结构上采用 Ping-Pong 双缓冲技术,利用 EDMA 与 CPU 并行工作来隐藏图像数据块在片内和片外之间的传输时间,使 CPU 能连续不断地处理数据,中间不会出现空闲等待。 传统的图像旋转一般通过矩阵乘法实现: 其中, 为旋转角度。 由于图像是线性存储的,各个像素点之间的相对位置关系确定。如图 1(a)所示,图像旋转前,任意像素点 P(x, y)和 P1(x1, y1)、 P2(x2, y2)及 A(xA, yA)在几何上是矩形的四顶点关系。由于旋转变换是线性变换,如图 1(b)所示,图像旋转后,各个像素点之间的相对位置关系不发生变化, 旋转算法的数据调度目的是使算

10、法能够按照一定的规则,将源图像数据有规律地分块,并按次序分别传输到 DSP 片内存储器中,完成计算后,形成视口图像块,再将视口图 像块按同样的顺序进行排列,形成旋转后的视口图像。整个过程要求调入和调出的图像数据均是规则分块的,并且调入的源图像块中应该包含计算视口图像块的过程中所需要的全部像素数据,尤其需要解决其中的大量非连续图像像素地址访问问题 。 视口逆时针旋转的情况与此类似。区别有以下两点: 源图像块的左边框中点与相应的视口图像块旋转后的左上角顶点对应; 源图像块的顶点局部坐标地址值与视口图像块的顶点局部坐标地址值之间的对应关系式应为: 河海大学计算机与信息学院 DSP 课程设计报告 其中

11、 height 指源图像块的高度。 4.总结 通过本次课程设计,将课堂教学的知识应用于实践。在这个过程中,我们先对图像的知识进行基本的了解,并且将图像转化为数组进行存储,处理。我们还学习了 ccs 软件的基本应用,这对于我们以后的工作也是非常重要的。同时通过这次实践进一步提高了我们的 c 语言水平。最重要的是对我们思维的开拓,从开始的数组化图像到后来局部二值化的想法,通过向老师提问,网上查找资料等方式 我们一步一步完善我们的课程设计,最终完成了我们的课设目的。 另外,通过本次实践,我们也感受到了 dsp 技术的稳定性好,可重复性好,抗干扰能力强,数据压缩等特点。相信这项技术在以后有更大的发展空

12、间。 参考文献 1 戴明桢,周建江 . TMS320C54x DSPM. 北京:北京航空航天大学出版社, 2007. 2 郎崇林 DSP 及其在图像处理中的应用 J. 科技情报开发与经济 , 2011,第 26 期 3 百度百科 二值化 河海大学计算机与信息学院 DSP 课程设计报告 附录 3.1 主程序 #include #include #include #include #include int load_cut(char *fname); int load_convolution_matrix(char *fname); int convolve_image(void); int sw

13、ap_pictures(void); int minx,maxx,miny,maxy; int LOADPAGE=0; int ENHANCEPAGE=1; int *cmat, *pmat, *vmat; int cmx,cmy,cmnum; struct palettetype palette,newpal; int driver,mode; int cleancut=-1; int init_graphics(void) driver=DETECT; mode=0; detectgraph( if(driver=VGA) mode=VGAMED; initgraph( getpalett

14、e( getpalette( int cleanup_image(void) 河海大学计算机与信息学院 DSP 课程设计报告 int i,j,num,x,y,k; if(cleancutcleancut) k=getpixel(x,y); setactivepage(ENHANCEPAGE); putpixel(x,y,k); setactivepage(LOADPAGE); k=ENHANCEPAGE; ENHANCEPAGE=LOADPAGE; LOADPAGE=k; void show_test_image(void) int i; minx=cmx; miny=cmy; maxx=100+minx; maxy=100+miny; setcolor(1); 河海大学计算机与信息学院 DSP 课程设计报告 moveto(minx,miny); randomize(); for(i=0;i8) cleancut=8; init_graphics(); setactivepage(1); cleardevice(); setactivepage(0); cleardevice(); setactivepage(LOADPAGE); setvisualpage(LOADPAGE); if(flag) load_cut(fname); else show_test_image();

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。