利用OpenCV识别特定形状的算法研究毕业论文
2021-06-24 22:31:47
摘 要
在日常的生活中,人类的视觉要想识别出目标的形状,可以根据目标的边界信息,但是对于计算机来讲,要想实现自动识别目标形状的功能仍旧十分复杂,精确识别目标的形状依然十分困难。在数字图像的自动化分析中,常常出现识别矩形、三角形或圆等简单形状的问题。矩形、三角形或圆等简单形状构成了别的更为复杂的几何形状,它们也是后续进行的更为高级的计算机视觉处理的基础。做到正确的对这些简单形状进行识别,具有十分重要的意义。
Hough变换是提取直线、圆、椭圆、其他曲线甚至是任意的形状边缘的有效的方法之一,目前Hough变换已经广泛应用在了军事以及民用领域,例如:图像处理、信号检测、目标跟踪等。
本文用Hough变换设计编写了具体的程序算法,实现了对小范围场景图像中特定形状(本次设计特定形状为圆形)的识别。本次设计所用的编程语言为C ,编写环境使用了Visual Studio 2012编程调试软件,调用了OpenCV函数库中的相关函数(OpenCV版本为OpenCV2.4.9)。程序算法运行结果基本实现了课题目标,能够对简单图像进行圆形识别,并且将圆形边缘和圆心进行标注,输出图像以及圆心坐标、半径和圆的数量。最后结合试验结果对该算法进行了具体分析。
关键词:图像处理;圆检测;Hough变换
Abstract
Human’s sight can identify the shape of the target based on its boundary information in daily life. However , it is difficult for the computer to to recognize the quite complex shape of target automatically. There are usually identify problems about rectangular, triangular , circular or other simple shapes in the automated analysis of a digital image.These simple shapes are not only important component of more complex geometries but also the basis of more advanced computer vision processing. Recognizing it correctly has an important significance.
Hough transform is an effective method to extract line, circle, ellipse, conic even shape with specific edges.It has been widely usedin military and civilian fields such as: image processing, signal detection, target tracking radar and passive tracking .
This article writes specific procedures algorithm by Hough transform . It can identificate particular shape of image in the small-scale scene . The programming language the design of is C and authoring environments is Visual Studio 2012 programming and debugging software.Program algorithm operating results achieved the subject target .It can select circular shape from simple image and note the rounded edges and the center as well . Image, center coordinates, radius and the circle’s number can be outputed as well . Last but not least , the results of the test analyze this algorithm in detail.
Key Words: image processing;circle analysis;Hough transform
目 录
摘 要 I
Abstract II
第1章 绪论 1
1.1 课题背景 1
1.2 国内外研究现状 2
1.3 课题研究内容 2
1.4 本章小结 3
第2章 Hough变换圆检测算法分析与实现 4
2.1 引言 4
2.2 几种Hough变换圆检测算法 4
2.2.1 经典Hough变换圆检测算法 4
2.2.2 一种快速的Hough变换圆检测算法 4
2.2.3 点Hough变换(PHT) 5
2.2.4 随机Hough变换(RHT) 5
2.3 算法的步骤和流程 5
2.3.1 算法的具体设计操作步骤 6
2.3.2 算法的具体设计操作流程 7
2.4 本章小结 9
第3章 Hough变换圆检测算法解析与实验结果 10
3.1 算法中用到的主要函数cvHoughCircles的解析 10
3.2 实验过程及结果 11
3.2.1 简单图片的霍夫变换圆检测 11
3.2.2 复杂图片的霍夫变换圆检测 13
3.3 本章小结 17
第4章 总结与展望 18
4.1 全文总结 18
4.2 工作展望 19
参 考 文 献 20
附录A(程序代码及解析) 22
附录B(霍夫梯度法的原理) 24
致 谢 25
第1章 绪论
1.1 课题背景
大家都知道,图像是人类获取信息、了解外部世界的重要媒介,它相对于文字、声音等其他的信号所包含的信息更为复杂、更为丰富,所以要从大量的图像信息中找到自己所需要的特定信息是一件非常困难的事情。为了能够解放人的视觉系统,必须要发展对应的计算机视觉技术。计算机视觉是研究利用计算机等电子仪器设备实现模拟生物尤其是人的视觉功能的前沿技术,通过对生物视觉在数字计算机上进行建模,赋予了机器一定程度上的人眼功能,从而可以解放部分人的视觉系统,这无论是在学术还是实际生产生活应用中都具有重要意义。
在日常的生产生活中,根据目标的边界信息,人类的视觉可以识别出目标的形状,但是对于计算机来说,自动的识别目标的形状是复杂的,准确的识别出目标的形状更是一件困难的事情。
随着数字图像处理技术的发展以及计算机技术的日渐提高和发展,图像几何特征的检测技术也随即迅速发展起来,目前已经出现了非常多的实现的方法并且得到了充分的应用和有效的拓展。例如:利用最小二乘法和曲线拟合的方式进行三角形、四边形以及其他形状的识别;利用Hough变换检测直线段;利用形状角和Hough 变换进行矩形和圆的检测;利用Hough 变换、Ransac、最小二乘法和遗传算法进行椭圆的检测;但是利用圆形度进行检测的比较少。