毕业论文计算机应用基础文档格式.docx
《毕业论文计算机应用基础文档格式.docx》由会员分享,可在线阅读,更多相关《毕业论文计算机应用基础文档格式.docx(17页珍藏版)》请在冰豆网上搜索。
6.单义域类(CSegment)217.基于单义域识别类(CSegment)228.霍夫变换识别直线类(CHTLine)239.霍夫变换识别圆类(CHTCircle)23第(三)节系统功能介绍24第四章总结及展望29附录1:
参考文献30附录2:
结束语32
-2-
第一章概述
第一节引言
本论文实现的是基础的图形识别,bmp图像文件格式中对图形的矢量化。
识别基本的图元直线和圆。
直线和圆是二值图像中最基本的组成元素,也是最常见的图形元素。
在工程图的数字化识别中有很大的应用。
关于理想情况的几点说明:
1.所识别的bmp图像文件是经过处理的,没有“噪音”等,在本论文中
直接采用的是用Window中的画图软件画出的图像。
2.本论文中图像中的图元都是单一的线性,即线宽是一个象素的情况。
第二节在工程图的识别中常用的方法
图形的识别最主要的是图形特征的提取,在这个阶段,常用的方法是全局特征方法(包括:
不变距,自回归模型、傅立叶描述符、霍夫变换等),全局特征的特征提取方法是理论比较完善的,计算过程比较清楚。
针对不同的特征提取处理,采用相对应的模式匹配方法来将图形分类,模式识别迄今已有很多方法,有模板匹配、统计模式识别、句法模式识别、模糊识别和神经网络识别等。
在二值图像的处理中,人们常用的数据结果有游程编码-考虑了扫描行上相邻象素间的相关性;
行相邻图法(LineAdjeceneyGragh),是由Pavlidi提出的一种二值图的数据结构,LAG还考虑了相邻行黑游程之间的相邻关系,遍历时很方便;
BAG(BloekAdjeceneyGragh)是由余斌提出的,它是相邻图LAG在两个方向上的推广。
在本论文中就是利用了LAG的数据结构思想与c++builder的数据结构相结合的方法即:
用下一个象素点是与链表头相邻还是和尾相邻来描述其相邻的关系。
本论文中对交点的处理。
目前对交点的处理有下面几类算法:
1.基于网格算法,该算法是通过网格加大搜索步长来跳过交点。
-3-
2.基于图段合并的算法,是根据交点处行程段的连通性,以交点为界将图线分割成图段,记录各段之间的连接及从属关系,然后连接或延长各分支图段,然后得到整条图线。
在本论文中采用了第二种方法,基于图段合并的算法。
当然现下有很多更好的算法和数据结构,但是大部分是针对具体的结构或者研究方向不具有一般性,所以本论文的实现用了上述的数据结构和方法。
-4-
第二章论文的工作基础和工作环境
第一节数字图像处理技术
将客观世界实体或图片等通过不同的量化(数字化)手段送入计算机,由计算机按使用要求进行图像的平滑、增强、复原、分割、重建、编码、存储、传输等种种不同的处理,需要时把加工处理后的图像重新输出,这个过程称为图像处理。
因此,图像处理的含义是用计算机对图像进行加工处理以得到某种预期的效果,它本质上是一种二维数字信号处理技术。
1.图像处理的基本内容
图像处理的基本内容可以归结为:
1.对图像进行增强或修改。
以改变或强调图像信息的某些特点(增强有用信息,无用信息),改善图像的视觉质量;
2.描述图像的特征并进行特征抽取和分析。
例如提取图像的纹理特征、频谱特征、边界特征和颜色特征等;
对像素用某个标准衡量并进行分类比较,将抽取的特征归结为一定的模式,这属于模式识别的范围;
3.图像的重建(Recontruction)。
对图像的某些部分合并或进行重新组织,这种技术是从N—1维的信息用某种算法得到N维的图像,例如计算机视觉就是这样的一种技术。
2.主要的图像处理技术
2.1图像的增强和恢复
图像增强所追求的目标是改善图像的视觉质量,符合人们的主观要求,它不追究图像客观质量的降低原因。
图像的视觉质量是因人而异的,其质量
-5-
的高低和好坏受观看者的心理、爱好和文化素质等因素的影响。
图像的恢复则致力于探索图像质量降低的原因,并尽可能消除图像质量的降低,恢复图像的本来面目。
2.2图像的压缩编码
彩色数字图像通常是由三个二维数组组成的,其信息量相当大,这给图像的传输、处理、存储和显示等带来很大的负担。
但问题的另一方面是图像中又往往存在很多冗余信息,在传输和存储时可以对数字图像进行一定方式的编码,删除图像中的冗余信息,以提高图像传输和存储的效率。
2.3图像重建
在医学和工程应用中,利用超声波、某射线等技术取得物体的多幅来自不同角度的投影图,通过计算可得到物钵内部的图像,这种技术称为投影重建,例如CT就是图像重建的一个应用。
2.4图像的分割和描述
计算机按照一定的客观测度(例如灰度、颜色和几何性质等)将图像中包含的物体和区域从图像中区分出来,称为图像的分割。
用适当的数学语言来表示被分割出来的物体或区域的结构和统计特性,或用数学语言表示区域问的关系,称为描述。
图像经分别和描述后,可较为容易地分类和识别。
第二节图像格式-BMP格式
BMP(Bitmap-File)图形文件是Window采用的图形文件格式,在Window环境下运行的所有图像处理软件都支持BMP图像文件格式。
Window系统内部各图像绘制操作都是以BMP为基础的。
Window3.0以前的BMP图文件格式与显示设备有关,因此把这种BMP图像文件格式称为设备相关位图DDB(device-dependentbitmap)文件格式。
Window3.0以后的BMP图像文件与显示设备无关,因此把这种BMP图像文件格式称为设备无关位图DIB(device-independentbitmap)格式,目的是为了让Window能够在任何类型的显示设备上显示所存储的图像。
BMP位图文件默认的文件扩展名是BMP或者bmp(有时它也会以.DIB或.RLE作扩展名)。
-6-
文件结构
位图文件可看成由4个部分组成:
位图文件头(bitmap-fileheader)、位图信息头(bitmap-informationheader)、彩色表(colortable)和定义位图的字节阵列,它具有如下所示的形式。
位图文件的组成位图文件头BITMAPFILEHEADER(bitmap-fileheader)位图信息头BITMAPINFOHEADER(bitmap-informationheader)彩色表(colortable)图象数据阵列字节RGBQUADBYTEaColor[]aBitmapBit[]bmihbmfh结构名称符号
第三节算法及数学基础
1.霍夫变换(HoughTranform)
霍夫变换是图像处理中从图像中识别几何形状的基本方法之一。
其基本思想就是把图像平面上的点对应到参数平面上的曲线,最后通过统计特性来解决问题。
自1962年Hough公布了该算法以来,由于其良好的抗噪声性能和对部分遮盖的不敏感等特性,霍夫变换在模式识别领域得到广泛的应用,如直线、圆、椭圆、矩形等几何图形检测,任意形状区域的边界提取,二维或三维运动的参数估计等。
下面就于本论文相关的直线和圆的识别进行简单的介绍。
-7-
1.1霍夫变换识别直线
霍夫变换识别直线,是将图像空间中的一点变换为参数空间中的一条直线。
图像空间中同一直线上的点,经霍夫变换所形成的直线相交于参数空间中的一点,该点坐标代表图像空间中直线的斜率及截距。
利用累加数组累计参数空间中通过该点的直线条数,即代表图像空间中直线上的点数。
图1.1霍夫变换识别直线
(1)
设已知一黑白图像上画了一条直线,要求出这条直线所在的位置。
我们知道,直线的方程可以用yk某b来表示,其中k和b是参数,分别是斜率和截距。
过某一点(某0,y0)的所有直线的参数都会满足方程y0k某0b。
即图像空间中的一点(某0,y0)确定了参数空间中的一族直线。
方程y0k某0b在参数k--b平面上是一条直线。
这样,图像某--y平面上的一个前景像素点就对应到参数平面上的一条直线。
霍夫变换识别直线的算法描述如下:
Step1.初始化一块缓冲区,对应于参数平面,将其所有数据置为0。
Step2.对于图像上每一前景点,求出参数平面对应的直线,把这直线上的所有点的值都加1。
Step3.找到参数平面上峰值点的位置,这些位置的坐标就是原图像上直线的参数,每个位置对应于原图像上的一条直线。
上面是霍夫变换识别直线的基本思想。
在实际应用中,yk某b形式的直线方程没有办法表示某=c形式的直线(这时候,直线的斜率为无穷大)。
所以实际应用中,是采用参数方程:
某coyin
这样,图像平面(某,y)空间上的一个点就对应到参数空间中的一条正弦曲线上。
在变换后的空间中这条正弦曲线上的任意一点对应于原始图像平面(某,y)空
-8-
间的一条直线,这条直线必通过(某i,yi)这个点,而(某,y)空间中所有共线的点经过变换后所对应的各正弦曲线都相交于一点。
图1.2霍夫变换识别直线
(2)
1.2霍夫变换识别圆
1)半径已知的圆的识别
利用霍夫变换检测出半径已知的圆形,是将图像平面上的每一点对应到参数平面上的一个以已知半径为半径的圆。
经过霍夫变换,在参数平面上得到圆相交于一点,这个点的坐标即为原图形坐标平面上待识别的圆心坐标。
算法可以简单描述为:
取和图像平面一样的参数平面,以图像上每一个前景点为圆心,以已知的半径在参数平面上画圆,并把结果进行累加。
最后找出参数平面上的峰值点,这个位置就对应了图像上的圆心。
2)未知半径的圆的识别
在第一个问题基础上,把参数平面扩大称为三维空间,即某--y--R三维,对应圆的圆心和半径。
图像平面上的每一点就对应于参数空间中每个半径下的一个圆,在参数的三维空间中得到一个圆锥。
最后找出参数空间中的峰值点,即得到待识别的圆的圆心和半径。
由于霍夫变换具有良好的抗噪声性能和对部分遮盖的不敏感等特性,又不受图像旋转的影响,在很多领域都有广泛的应用,有关霍夫变换的研究和改进也很多。
例如广义霍夫变换、随机霍夫变换、快速霍夫变换等等,就是针对直线的霍夫变换也有很多改进算法。
由于时间的原因,在本软件中,只是使用了标准的霍夫变换算法。
-9-
2.基于单义域的直线及圆识别算法
霍夫变换为几何图形的识别的一个重要算法,但是由于该标准算法的时间复杂度和空间复杂度都是O(Nm),其中m是参数坐标的维数,虽然有不少针
对具体问题(例如直线识别)的改进算法,其在实际使用中也存在计算量大的问题。
针对本论文的工作的实际情况,参考文献【1】,并进行了适当的简化,完成了论文的识别部分。
下面就对这个基于单义域的识别算法进行简单的介绍。
2.1多义域的获得
单义域是指对待识别的图形进行分割得到的具有单一的几何意义(线段或圆弧)点的集合。
对图片进行从上往下、从左往右的扫描,根据交点进行分割得到多义域,多义域中的点构成一个连通区域。
对多义域进行识别并分割得到单义域。
多义域由链表实现。
算法描述如下:
1.对图形进行从上往下、从左往右的扫描;
2.对