DSP在数字识别中的应用天津工业大学课程设计副本.docx
《DSP在数字识别中的应用天津工业大学课程设计副本.docx》由会员分享,可在线阅读,更多相关《DSP在数字识别中的应用天津工业大学课程设计副本.docx(11页珍藏版)》请在冰豆网上搜索。
![DSP在数字识别中的应用天津工业大学课程设计副本.docx](https://file1.bdocx.com/fileroot1/2023-7/22/f8112028-f4c2-4bf2-8e3f-62b2e7f5b6dd/f8112028-f4c2-4bf2-8e3f-62b2e7f5b6dd1.gif)
DSP在数字识别中的应用天津工业大学课程设计副本
DSP在数字识别中的应用
班级:
电信1002
姓名:
时东阳
学号:
1010930202
指导教师:
刘丽杰耿磊
日期:
2013-11-28
1课程设计的目的:
1).掌握数字信号处理的基本概念、基本理论和基本方法;
2).掌握图像处理的常用算法;
3).掌握数字信号处理在数字识别中的应用及数字识别使用的基本算法;
4).学会DSP的使用,掌握DSP的程序设计方法;
5).学会用DSP对数字图像进行分析和处理。
2课程设计内容:
把含有数字的图像,如车牌,身份证等读取到DSP的SDRAM中,利用图像处理算法把数字从图像中定位出来;首先把图像二值化,二值化算法选择固定阈值、直方图或最大类间方差法,比较各个二值化算法的效果;对二值化的图像做边缘提取,选择Sobel或者Laplace边缘提取算法并比较效果;经过二值化和边缘提取后的图像,利用投影法定位数字在图像中的位置,并给出数字在图像中的外接矩形;利用CCS把处理结果显示出来。
3课程设计基础:
DSP编程基础、数字信号处理知识、图像处理知识。
4具体步骤与要求:
4.1 数字图像的采集
拍摄含有数字的图像,或利用老师给的图像,在DSPCCS软件平台下,编程把图像读取到DSP的SDRAM中。
4.2二值化
要求完成固定阈值、直方图或最大类间方差法二值化算法,并比较算法处理结果,选择合适的二值化算法,得到二值化后的图像并显示。
要求:
(1)固定阈值法,选择多个阈值比较处理,最终选择合适的阈值;
(2)(选做)直方图阈值法,绘制直方图并显示。
一幅图像包括目标物体、背景还有噪声,要想从多值的数字图像中直接提取出目标物体,最常用的方法就是设定一个阈值T,用T将图像的数据分成两部分:
大于T的像素群和小于T的像素群。
这是研究灰度变换的最特殊的方法,称为图像的二值化。
二值化方法:
(1)全局二值化
一幅图像包括目标物体、背景还有噪声,要想从多值的数字图像中直接提取出目标物体,最常用的方法就是设定一个全局的阈值T,用T将图像的数据分成两部分:
大于T的像素群和小于T的像素群。
将大于T的像素群的像素值设定为白色(或者黑色),小于T的像素群的像素值设定为黑色(或者白色)。
全局二值化,在表现图像细节方面存在很大缺陷。
为了弥补这个缺陷,出现了局部二值化方法。
局部二值化的方法就是按照一定的规则将整幅图像划分为N个窗口,对这N个窗口中的每一个窗口再按照一个统一的阈值T将该窗口内的像素划分为两部分,进行二值化处理。
(2)局部自适应二值化
局部二值化也有一个缺陷。
这个缺陷存在于那个统一阈值的选定。
这个阈值是没有经过合理的运算得来,一般是取该窗口的平局值。
这就导致在每一个窗口内仍然出现的是全局二值化的缺陷。
为了解决这个问题,就出现了局部自适应二值化方法。
局部自适应二值化,该方法就是在局部二值化的基础之上,将阈值的设定更加合理化。
该方法的阈值是通过对该窗口像素的平均值E,像素之间的差平方P,像素之间的均方根值Q等各种局部特征,设定一个参数方程进行阈值的计算,例如:
T=a*E+b*P+c*Q,其中a,b,c是自由参数。
这样得出来的二值化图像就更能表现出二值化图像中的细节。
4.3边缘提取
边缘提取采用Sobel或Laplace算法,
要求:
(1)Sobel和Laplace算法使用3*3模板;
(2)(选做)Canny边缘提取算法。
边缘提取编程比较:
I=imread('lena.bmp');%提取图像
1)BW1=edge(I,'sobel');%用SOBEL算子进行边缘检测
2)BW2=edge(I,'roberts');%用Roberts算子进行边缘检测
3)BW3=edge(I,'prewitt');%用prewitt算子进行边缘检测
4)BW4=edge(I,'log');%用log算子进行边缘检测
5)BW5=edge(I,'canny');%用canny算子进行边缘检测
4.4 数字定位
要求用自己设计的二值化结果对目标位置进行定位,给出数字的外接矩形和中心;
(1)利用投影法把二值化结果分别向水平和垂直方向投影,选择合适的阈值定位出数字位置,并输出目标位置;
(2)利用修改像素值的方法,把外接矩形绘制到图像中并通过CCS显示。
5数字识别方法综述
模式识别(PatternRecognition)是指对表征事物或现象的各种形式的(数值的、文字的和逻辑关系的)信息进行处理和分析,以对事物或现象进行描述、辨认、分类和解释的过程,是信息科学和人工智能的重要组成部分。
模式识别又常称作模式分类,从处理问题的性质和解决问题的方法等角度,模式识别分为有监督的分类(SupervisedClassification)和无监督的分类(UnsupervisedClassification)两种。
二者的主要差别在于,各实验样本所属的类别是否预先已知。
模式还可分成抽象的和具体的两种形式。
前者如意识、思想、议论等,属于概念识别研究的范畴,是人工智能的另一研究分支。
我们所指的模式识别主要是对语音波形、地震波、心电图、脑电图、图片、照片、文字、符号、生物传感器等对象的具体模式进行辨识和分类。
6程序
/***********************************************************************
**MainFunctionProgram
***********************************************************************/
#include"math.h"
#include"stdio.h"
#defineIMAGE_WIDTH64
#defineIMAGE_HEIGTH64
voidmain()
{
FILE*fi;
inti,j,k;
inty[IMAGE_HEIGTH][IMAGE_WIDTH];
intp[64]={0},p1[64]={0},p2[128]={0},m,temp,up,down,right,left;
unsignedcharid[128];
fi=fopen("D:
\\tu\\num3.bmp","rb");
fread((char*)id,sizeof(char),54,fi);
for(i=0;i<16;i++)
{
fread((char*)id,sizeof(char),64,fi);
}
for(i=0;i{
fread((char*)id,sizeof(char),128,fi);
for(j=0;j{
y[i][j]=id[j];
}
}
fclose(fi);
i=0;
for(i=0;i{
for(j=0;j{
y[i][j]=255*((y[i][j])/128);
}
}
//每一行上的0像素数
for(i=0;i{
for(j=0;j{
if(y[i][j]==0)
p[i]++;
}
}
//每一列上的0像素数
for(j=0;j{
for(i=0;i{
if(y[i][j]==0)
{p1[j]++;}
}
}
m=IMAGE_HEIGTH/2;
temp=p[m];
for(i=m+1;i{
if(temp>p[i])
{
temp=p[i];
up=i;
}
if(temp==0)
{
up=i;
break;
}
}
temp=p[m];
for(i=m-1;i>=0;i--)
{
if(temp>p[i])
{
temp=p[i];
down=i;
}
if(temp==0)
{
down=i;
break;
}
}
m=IMAGE_WIDTH/2;
temp=p1[m];
for(j=m+1;j{
if(temp>p1[j])
{
temp=p1[j];
right=j;
}
if(temp==0)
{
right=j;
break;
}
}
temp=p1[m];
for(j=m-1;j>=0;j--)
{
if(temp>p1[j])
{
temp=p1[j];
left=j;
}
if(temp==0)
{
left=j;
break;
}
}
//画线
for(j=left;j<=right;j++)
{
y[up][j]=0;
y[down][j]=0;
}
for(i=down;i<=up;i++)
{
y[i][left]=0;
y[i][right]=0;
}
}
/***********************************************************************
**EndofFile
***********************************************************************/
7设计结果
8设计总结
在课设过程中,我结合了课程中所学的理论知识,对dsp数字图像处理又有了深刻的理解,这不仅使我又一次回顾了数字图像的采集、二值化、数字定位以及边缘提取的过程,还让我对C语言变成更加熟练。
这次课程设计学到了很多东西,虽然做出来的东西很基础,但是加深了对知识的理解和掌握,作为一名大四学生,我觉得做课程设计十分的有意义,充分锻炼和培养了我独立分析与解决问题的能力。
通过课程设计我明白了一个道理,如果说任何机会都是需要去创造出来的话,那么那个创造者,其实就是你自己。
机会谁都有,关键在于自己怎么利用一些外部条件去创造。
与其等待机会的来临,还不如自己去创造机会,变被动为主动,事情才能成功。
过去在自己的心里,总是怀疑自己的能力,认为自己不能胜任某件事情,甚至连尝试的胆量都没有,但是通过这样的课设,不一定我做的最好就是成功,其实只要我能尽力去做,真心去思考,努力去挖掘就会有好的成果,我的收获不只在知识上,同时也在自己能力上有了提高。
9参考文献
(1)周霖.DSP系统设计与实现.北京:
国防工业出版社,2003.10
(2)赵红怡.DSP技术与应用实例.北京:
电子工业出版社,2010.1
(3)陈展东,白宝兴,韩成,扬华民.数字识别算法研究.A).长春理工大学学报.2010,01-0147-05,147-151.
(4)雷传华,张秀彬.连接数字语音识别系统的DSP实时实现.上海交通大学学报.1999.1525-1528
(5)黄素贞,尹立新,苗宏庆.基于DSP的手写数字识别系统.计算机工程.2005,178-180.