1、摘 要数字图像处理(Digital Image Processing)的任务是实现图像增强、复原、编码、压缩等,其主要为改善图像的质量,以人为对象,且以改善人的视觉效果为目的。目前,图像处理系统应用领域广泛医学、军事、科研、商业等领域。因为数字图像处理技术易于实现非线性处理,处理程序和处理参数可变,故是一项通用性强,精度高,处理方法灵活,信息保存、传送可靠的图像处理技术。本设计的数字图像处理与识别技术系统以数字图像处理理论为基础,基于Matlab工具工作环境设计,能很好、快速的应用于识别本专业以后将要经常使用的电子元器件。主要作用为识别相同元器件的个数,相对于传统的机械识别具有安全性高,非接触
2、性,高速度等特点。此种数字图像处理算法可以广泛应用于各个行业的相同或相近的物品识别,从而大大提高生产效率。关键字: 数字图像;图像处理; 图像识别; Matlab; 元器件.AbstractDigital Image Processing, the task is to realize the Image enhancement, recovery, coding, compression, its main for improving the quality of images, adhere to the object, and to improve the person for the
3、purpose of visual effect. At present, image processing system is widely medicine, military and scientific research, business, etc. The design of the digital image processing and recognition technology in the digital image processing system based on the theory of the working environment, based on Mat
4、lab tool design, can be very good, rapid applied to identify the major often used electronic components. Main function for the same number of components, the identification of the traditional mechanical identification with a high level of security, non-contact, high speed, etc. The digital image pro
5、cessing algorithms can be widely used in various industries of the same or similar goods identification, which greatly improve the production efficiency.Keywords:Digital image, Image processing, Image recognition, Matlab, Components. 目 录前 言31.设计要求42.功能介绍43.总体方案设计43.1 功能模块划分43.2 MCU传送控制流程53.3数码相机拍摄63
6、.4软件处理流程64.图像处理74.1 图像格式转换74.2 去噪及特征提取74.3灰度调整84.4二值化处理104.5阈值分割115.识别统计145.1图像反色145.2函数bwlabel统计146.完整设计程序167.总结体会18参考文献19前 言数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。数字图像处理最早出现于20世纪50年代,当时的电子计算机已经发展到一定水平,人们开始利用计算机来处理图形和图像信息。数字图像处理作为一门学科大约形成于20世纪60年代初期。早期的图像处理的目的是改善图
7、像的质量,它以人为对象,以改善人的视觉效果为目的。图像处理中,输入的是质量低的图像,输出的是改善质量后的图像,常用的图像处理方法有图像增强、复原、编码、压缩等。首次获得实际成功应用的是美国喷气推进实验室(JPL)。他们对航天探测器徘徊者7号在1964年发回的几千张月球照片使用了图像处理技术,如几何校正、灰度变换、去除噪声等方法进行处理,并考虑了太阳位置和月球环境的影响,由计算机成功地绘制出月球表面地图,获得了巨大的成功。随后又对探测飞船发回的近十万张照片进行更为复杂的图像处理,以致获得了月球的地形图、彩色图及全景镶嵌图,获得了非凡的成果,为人类登月创举奠定了坚实的基础,也推动了数字图像处理这门
8、学科的诞生。因为数字图像处理技术易于实现非线性处理,处理程序和处理参数可变,故是一项通用性强,精度高,处理方法灵活,信息保存、传送可靠的图像处理技术。本图像识别统计装置设计数字以数字图像处理理论为基础,基于Matlab工具工作环境设计,能很好、快速的应用于识别本专业以后将要经常使用的电子元器件。主要作用为识别相同元器件的个数,相对于传统的机械识别具有安全性高,非接触性,高速度等特点。此种数字图像处理算法可以广泛应用于各个行业的相同或相近的物品识别,从而大大提高生产效率。1.设计要求主要运用图像处理的综合方法实现,把均值滤波增强,腐蚀运算和膨胀运算,开运算,灰度变换等相结合,来实现本次设计:1)
9、 设计一套符合应用场合的图像采集装置测量装置。2) 详细写出图像采集装置和测量装置的组成部件以及参数。3) 详细列出图像采集和测量的使用环境。4) 设计处理的流程。5) 对实验使用的关键原理作以介绍。2.功能介绍本设计为小功率的三极管元件图像识别统计装置,通过数码相机获取平铺无重叠堆积的三极管的图像,并通过Matlab工具处理后统计三极管的数目。通过控制控制数码相机的拍摄实现拍摄统计拍摄的过程。可以由MCU实现三极管的传送,上位机实现统计显示。本装置的统计方式为软件识别,与传统的机械清点相比具有速度快,损耗低等特点,目前的缺陷就是清点精度相对比较的低。3.总体方案设计3.1 功能模块划分本装置
10、有检测传送控制、图像拍摄、软件处理三部分组成,MCU主要负责三极管的取送,数码相机负责图像的获取;而具体的任务分配及数据处理则由处理能力强大的上位机(PC机)来完成。总体功能可由下图表示:图3-1整体功能模块示意图3.2 MCU传送控制流程装置MCU控制传送的元件块分块及传送速度。其与数码相机存在控制通讯接口,逻辑关系如下图所示:图3-2MCU传送控制3.3数码相机拍摄数码相机获取的图片是后续程序处理的基础,所以在得到的图片质量上要有好的保证。比如图像的曝光度,解析度,对比度、色调等,所以有必要调整光照,设定好元件放置处的背景色。其中调整光照可以由MCU一并控制。数码相机的启停可由MCU控制,
11、也可由PC控制,但图片所涉及的数据量大,要求失真度低,图像数据传输通讯接口可采用USB接口。3.4软件处理流程读取图像灰度转换选择阈值图像二值化去噪图像形态学操作统计计算图3-3软件处理流程 4.图像处理4.1 图像格式转换取的图像格式为RGB彩色图像,需要先将其转换为8位256级的灰度图像。本程序采用Matlab的图像处理工具箱的函数rgb2gray来实现。rgb2gray()功能: 转换RGB图像或颜色映像表为灰度图像。 语法: I = rgb2gray(RGB) newmap = rgb2gray(map)4.2 去噪及特征提取 图4-1 灰度图及其直方图上图4-1为三极管统计的局部图片
12、,图中可见,三极管的主体部分很背景及管脚有着明显的区别,可以通过选取合适的阈值进行二值化,从而提取出每个三极管的特征。图4-2为此图像的直方图,从图中可见到比较明显的阈值分界点,但是并不是非常的明显,这是因为,图中有很多的三极管因为反光的缘故,导致主体部分有些发白,如图4-3所示。 图4-2 需要进一步处理的地方4.3灰度调整对于这些发白部分,我们采用灰度调整及中值滤波进行处理,在matlab中,提供了两个函数进行相应的操作,其中imadjust进行灰度调整,其用法如下Imadjst(f,low_in high_in,low_out high_out,gamma)Gamma所表示的意义:1 -
13、 凹曲线1 - 凸直线=1 - 直线medfilt2用于进行中值滤波处理,其用法如下F=medfilt2(f,m n);f为输入图像m n为中值滤波模板F是中值滤波后输出的图像。图4-1经过灰度调整及中值滤波后的图像如图4-4所示,可见,经过中值滤波后,三极管的主体部分有了较大的改善。图4-3灰度处理中值滤波后图像图4-4 灰度调整中值滤波后的直方图4.4二值化处理经过滤波后,即可对图像进行二值化处理,首先,我们采用人工选择阈值的方法进行二值化,由图可见,对于本幅图片,其合适的阈值在50100之间,通过试验,我们选取的值为80。对图像二值化处理的程序如下:M,N=size(F);for x=1
14、:M for y=1:N if F(x,y)80 F(x,y)=0;%低于阈值的值黑 else F(x,y)=255;%高于阈值的值白 end endend处理后的图像如图4-6所示:图4-5 二值化后结果4.5阈值分割当然仍有许多模糊的三极管管脚残影,但已经将三极管的主体很好的识别了出来,采用人工选择阈值的方法虽然可以成功分离出三极管的主体,但是这个阈值这是针对这张图片有效,对于获取的其它图片,这个阈值并不能正确地对图像进行二值化处理,因此我们决定采用自动阈值分割的方法来对图像进行二值化。我们所选用的自动阈值分割方法为Otsu法,它是一种使类间方差最大的自动确定阈值的方法,该方法具有简单、处
15、理速度快的特点,是一种常用的阈值选取方法。在matlab中,提供了一个函数graythresh来实现Otsu法阈值分割,其用法如下: T=graythresh(f);其中,f为待进行阈值分割的灰度图像,T为返回的分割灰度比例,将其乘于256即为Otsu法划定的分割阈值。优化后的程序如下:T=graythresh(F);T=T*256;M,N=size(F);for x=1:M for y=1:N if F(x,y)2000 N=N+3; elseif(Sum(i) 1450 N =N + 2; elseif (Sum(i) 900 N =N + 1; endend图4-9 Matlab统计分析
16、经过统计,如图4-11所示,该幅图像的三极管数目约为481个。6.完整设计程序完整程序如下所示:clear all;close all;f=imread(BJT.jpg);F=rgb2gray(f);figure;imshow(F);title(原图);figure;imhist(F);title(直方图);F0 = imadjust(F,stretchlim(F),0 1);Ft=medfilt2(F0,5 5);figure;imshow(Ft);title(灰度调整,中值滤波后的图像);figure;imhist(Ft);title(灰度调整,中值滤波后的直方图);T=graythres
17、h(Ft);T=T*256-5;M,N=size(Ft);for x=1:M for y=1:N if Ft(x,y)2000 N=N+3; elseif(Sum(i) 1450 N =N + 2; elseif (Sum(i) 900 N =N + 1; endend7.总结体会通过本本设计为小功率的三极管元件图像识别统计装置的设计,目前的缺陷就是清点精度相对比较的低。不仅使我们对上位机、MCU等控制系统、通信系统进一步增加了了解,而且在Matlab中关于图像处理方面的函数有了更深入的了解,同时在试验过程中我们也试验了多种的图像处理方法,如平滑滤波,高斯低通滤波等等,进一步掌握了图像处理的一
18、些常用方法,对图像形态学操作也有了深入的学习与掌握,了解了图像形态学操作的重要作用。在此一并感谢赵老师、罗老师这一学期以来的指导与教诲,两位老师不仅给了我们学习上的指导,对我们的生活也给了无微不至的关心,在思想上更是如此。两位老师平日里工作繁多,但在我做课程设计的每个阶段,从选题到查阅资料,提纲的确定,中期的修改,后期课程设计格式调整等各个环节中都给予了我悉心的指导。除了敬佩两位老师的专业水平外,您们治学严谨和科学研究的精神也是我永远学习的榜样,并将积极影响我今后的学习和工作。在这样的教诲下,掌握了坚实的专业知识基础,为我以后的学习生活提供了源动力。参考文献1胡学龙等著 数字图像处理 电子工业出版社,2006.9.2朱衡君编著 MATLAB语言及实践教程 清华大学出版社,2005.3陈怀琛. MATLAB机器在理工科课程中的应用. 西安电子科技大学出版社,2007.4董长虹等. MATLAB信号处理与应用 国防工业出版社,2005.5 李在铭. 数字图像处理、压缩与识别技术 电子科技大学出版社,2000.20
版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。
Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1
陕公网安备 61072602000132号 违法和不良信息举报:0916-4228922