- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
机 器 视 觉
题目:基于visual C++ 的数字图像处理
院 系:机械学院
专 业:机械电子工程
姓 名:张 x x
学 号:
指导教师:唐 x x
摘要
机器视觉就是用机器代替人眼来做测量和判断。通过图像摄取装置将被摄取目标转换成图像信号,传送给专用的图像处理系统,根据像素分布和亮度、颜色等信息,转变成数字化信号;图像系统对这些信号进行各种运算来抽取目标的特征,进而根据判别的结果来。对图像进行、增强、提取特征等处理目录
摘要 2
目录 3
1 概述 4
2技术路线 4
3实现方法 5
3.1 灰度图转换 5
3.2 直方图均衡化 6
3.3均值滤波和中值滤波 6
3.4灰度变换 7
3.5拉普拉斯算子 8
4 轮廓提取 9
5 数米粒数目 15
6 存在的问题 17
7 总结 17
8 致谢 18
参考文献 19
1 概述
本次设计是根据“机器视觉”课程的作业要求,使用工具visual c++ 完成一些简单数字图像处理。按照作业要求,本文介绍了以下五种处理的原理、实现方法和实现结果:
24位彩色到灰度图的转换
直方图均衡化
均值滤波和中值滤波
拉普拉斯算子
灰度变换
然后,本文着重介绍了一种轮廓提取的方法,对焊缝缺陷的轮廓进行提取,分析了该方法的优缺点、存在的问题、拟解决方法。
最后,根据课堂兴趣,分析了一种数连通区域的方法,对一幅含有米粒的图进行了举例。
2技术路线
数字图像的处理方法很多,常用的有空域和频域的方法。以灰度图为例,空域的方法是直接对各个像素的或某个像素区域进行变换,即f(x,y) — g(x,y),方法举例有均值滤波、中值滤波、微分运算、灰度变换等;频域的方法是通过傅里叶变换得到图像的频谱特征,再根据频率特性设计滤波器,达到预期的目的。
本文中举例的几种方法都是在空域进行的。其界面设计如图2.1所示。其中二值化处理、反相处理等是对单个像素点进行处理,均值滤波、轮廓提取是对一块像素区域进行处理。
图2.1 图像处理界面
3实现方法
灰度图转换
日常生活中获取的很多图像都是彩色图像,为方便处理,首先应该进行灰度图转换。对于一幅位图,其结构由文件头、位图信息头、颜色信息和图像数据四部分组成。从一幅24位真彩色图到灰度图的转换过程中,需要改变除需要修改文件的数据区以外,文件头、文件信息头的部分信息也要做相应计算修改。本文采取了一种简单的方法,在不修改文件头、文件信息头的条件下,完成灰度图的 转换,具体实现如下:
已知原图像数据存储区为m_pData,新建一片存储区m_pData2;
通过公式0.3*r+0.59*g+0.11*b得到各像素的灰度信息,存储在m_pData2中;
将m_pData中各像素的r、g、b值设定为相应的灰度值;
用m_pData中的数据进行显示和保存,用m_pData2中的数据进行计算。
这种实现方法的优点是不需要计算修改文件头,但是每次显示或者存盘都要将m_pData2中的数据复制到m_pData中,比较麻烦。
3.2 直方图均衡化
将图像从彩色转换到灰度图后,可以对其进行各种转换。直方图均衡化是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布。是对图像非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同背景和前景都太亮或者太暗的图像
h(rk) = nk
(rk是第k级灰度,nk是图像中灰度级为rk 的像数个数)
直方图均衡化的目的即通过点运算使得输入图像转化为在每一灰度级上都有相同的像素点数的输出图像,即输出图像的直方图是平的。
h(rk) = wide*height/L
(wide、height为图像的宽和高,单位:像素)
为达到以上目的,灰度级为k的像素应映射到的灰度级为:
其具体的实现步骤如下:
统计直方图数组,用一个数组p记录p[i],即直方图分布;
i从1开始,令s[i] = s[i-1] + p[i],即得到累积分布;
一个数组L记录新的s的索引值:令L[i] = s[i] * (256-1),这里默认L=256;
依次循环每一个像素,取原图的像素值作为数组L的下标值,取该下标对应的L数组值为均衡化后的像素值。
3.3均值滤波和中值滤波
由于在图像的形成、传输、和接收的过程中,不可避免的存在着外部干扰和内部干扰,会存在着一定的噪声,因此需要进行平滑或滤波。改善图像质量的方法很多,这里简要描述常用的均值滤波和中值滤波。
均值滤波,即采用当前像素的邻域平均灰度值来代替原值,达到减弱噪声的目的。特点是实现简单,有一定程度的滤波效果,但是是以图像模糊为代价的。其实现步骤如下:
取得原图像大下,新建数据区;
循环取得各点像素值,根据设定的模板大小求取邻域内的像素平均值,放到新建的数据区;
依次循环直至整幅图像
文档评论(0)