(信号与信息处理专业论文)机器视觉中高速图像处理算法研究及fpga实现.pdf_第1页
(信号与信息处理专业论文)机器视觉中高速图像处理算法研究及fpga实现.pdf_第2页
(信号与信息处理专业论文)机器视觉中高速图像处理算法研究及fpga实现.pdf_第3页
(信号与信息处理专业论文)机器视觉中高速图像处理算法研究及fpga实现.pdf_第4页
(信号与信息处理专业论文)机器视觉中高速图像处理算法研究及fpga实现.pdf_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

机器视觉中高速图像处理算法砌 究及f p g a 实现 机器视觉中高速图像处理算法研究及f p g a 实现 摘要 图像处理速度影响整个机器视觉系统的性能,而图像处理的速度问题是由图 像数据的特点和图像处理算法的复杂性引起的,依据图像处理算法及数据的特点, 把图像处理分成三个层次:数据处理层、信息提取层、知识应用层,各层在实现 方式上有自己不同的要求。文中分析了各个层次中的算法对硬件的要求,其中数 据处理层对整个系统速度影响较大,针对其特点,研究了数据处理层中的数据存 储结构和算法的硬件实现结构。 在邻域处理算法中,对帧存储体的存储结构,以邻域图像并行存取为例,利 用两片d r a m 存储芯片作存储体,在f p g a 芯片内实现地址变换和存取控制,设 计了行顺序的邻域图像并行存取的帧存储体,在w e b p a c ki s e 6 1e d a 环境中, 利用v e r i l o gi - i d l 硬件描述语言设计实现。在此基础上,对空间滤波器,利用x i l i n x 公司的f p g a 的内部资源,使用高级内核设计工具( x i l i n x c o r e g e n 软件) 中的d s p 程序块,构建在核心架构d a - f i r 滤波器之上,在w e b p a c ki s e 6 1e d a 开发环 境中实现其分布式算法。 完成了f p g a 测试板的硬件设计,为研究硬件算法的实现提供了合适的平台。 最后对研究工作的继续深入进行提出设想。 关键词:数字图像处理:分布式运算:离散卷积:f p g a 机器视觉中高速留像处理算法研究及f p g a 实现 t h es t u d yo fhig h s p e e d im a g ep r o c e s sin g f o rm a c h in ev is io n a n di m p i e m e n t a t i o rw i t hf p g a a b s t r a c t m a c h i n ev i s i o nh a sf o u n da ni n c r e a s i n ga p p l i c a t i o ni nt h ef i e l do fi n d u s t r y d e t e c t i o n s y s t e m w i t h t h ef a s t d e v e l o p m e n t o fc o m p u t e r t e c h n o l o g ya n d e x t e n d i n go ft h ea p p l i c a t i o n ,d i g i t a li m a g ep r o c e s s i n gi sf a c e dw i t hc h a l l e n g e s o fp u r s u i n gh i g hs p e e da n di n c r e a s i n g c o m p l e x i t y ,i nw h i c hh i g hp e r f o r m a n c e c o m p u t i n g ,e s p e c i a l l yp a r a l l e lc o m p u t i n ga c t sa sav e r yi m p o r t a n tr o l e i m a g e p r o c e s s i n g d e v e l o p sq u i c k l yw i t hp a r a l l e l c o m p u t i n gt e c h n i q u e s f o r m i c r o p r o c e s s o r , i n e x p e n s i v ei m a g es e n s o ra n dn e wt e c h n o l o g yf o rs t o r a g e i m a g ed a t as t r u c t u r ea n dc o m p u t i n gc o m p l e x i t yc a u s et h ep r o b l e mf a c e db y h i g hs p e e di m a g ep r o c e s s i n g a c c o r d i n gt op r o c e s s i n gl e v e l so fo r d i n a r yd i g i t a l i m a g e ,i m a g ep r o c e s s i n gi sd e s c r i b e df r o mt h r e ec o n c e p tl e v e l si n c l u d i n gd a t a p r o c e s s i n gl e v e l ,i n f o r m a t i o ne x t r a c t i n gl e v e la n dk n o w l e d g el e v e l t h i sp a p e rs t u d i e st h ed e s i g na n dr e a l i z a t i o no fp a r a l l e la l g e r i t h mf o r s p e c i a lf i l t e r t h ea l g o r i t h ma n ds y s t e ms t r u c t u r ef o ri m a g ep r o c e s s i n gh a v e c h a n g e dq u i c k l y d a t ap r o c e s s i n gl e v e lh a sl a r g eq u a n t i t i e so fp r i m it i v ed a t a , w h i c hw i i ib er e p e a t e du s ei np r o c e s s a l g o r i t b mi nt h i sl e v e li ss i m p l ea n d r e g u l a r ,s ot h a ti ti ss u i t a b l et ou s ef p g ah a r d w a r ep l a t f o r mf o r i t s i m p l e m e n t a t i o n af r a m es t o r a g ea r c h i t e c t u r ef o r n e i g h b o ro p e r a t i o ni sc a p t u r e du s i n gd r a m a n df p g a t h ea d d r e s sc o n t r o l l e ra n dt h ec o n v e r t e ra r ed e s c r i b e db yt h ev e r il o g h a r d w a r e d e s c r i p t i v el a n g u a g e t h ed e s i g n o ft w o d i m e n s i o n a ld i s c r e t e c o n v o l u t i o ni sb a s e do i lt h es t r u c t u r eo fd a f i ru s i n gd e s i g nt o o l - x i l i n x c o r e g e n e r a t o r t h ed e s i g n sa r ef u n c t i o n a l l ya n dp e r f o r m a n c ev a l i d a t e dt h r o u g h s y n t h e s i sa n ds i m u l a t i o nt e s t i n g i nt h ep a p e r ,t h ed e s i g n i n gm e t h o d ,f u n c t i o na n dp r i n c i p l eo fv e r i l o gh d l d e s i g na r ed i s e u s s e d ,t h eb a s i cp r i n c i p l ea n df p g at e c h n o l o g ya l s ob ee x p l a i n e d , t h eh a r d w a r ed e s i g no ff p g at e s tb o a r di si n t r o d u c e d 。s c h e m a t i c si sc o m p l e t e d i nt h ee n ds o m ei d e a sa r ep u tf o r w a r df o rf u r t h e rr e s e a r c h k e y w o r d s :d i g i t a ii m a r ep r o o e s s i n g :d i s t r i b u t e da t i t h m e t i o : d i s c r e t oo o n v o i u t i o r l :f p g a 机器视觉中高速图像处理算法研究及f p g a 实现 0 前言 0 。1 课题背景 机器视觉( m a c h i n ev i s i o n ) 是以机器模仿人类视觉的光学识别系统,它利用摄影机和电脑撷 取、分析及解释影像内容,进而下达某些决策。机器视觉系统是指用计算机来实现人的视觉功 能,也就是用计算机来实现对客观的三维世界的识别1 1 1 由于机器视觉系统可以快速获取大量 信息,而且易于自动处理,也易于同设计信息以及加工控制信息集成,因此,在现代自动化生 产过程中,人们将机器视觉系统广泛地用于工况监视、成品检验和质量控制等领域,比如,汽 车零件的外观,药品包装的正误,i c 字符印刷的质量,电路板焊接的好坏,等等。机器视觉系 统的特点是提高生产的柔性和自动化程度1 4 5 1 0 在一些不适合于人工作业的危险工作环境或人工 视觉难以满足要求的场合,常用机器视觉来替代人工视觉:同时在大批量工业生产过程中,用 人工视觉检查产品质量效率低且精度不高,用机器视觉检测方法可以大大提高生产效率和生产 的自动化程度。视觉的最大优点是与被观测的对象无接触,因此对观测与被观测者都不会产生 任何损伤,十分安全可靠。 机器视觉系统主要由三部分组成:图像的获取、图像的处理和分析、输出或显示。机器视 觉系统一般采用c c d 照相机摄取检测图像并转化为数字信号,再采用先进的计算机硬件与软件 技术对图像数字信号进行处理,从而得到所需要的各种目标图像特征值,并由此实现模式识别, 坐标计算,灰度分布图等多种功能。然后再根据其结果显示图像,输出资料,发出指令,配合 执行机构完成位置调整,好坏筛选,资料统计等自动化流程。 图像处理设备包括相应的软件和硬件系统;输出设备是与制造过程相连的有关系统,包括 过程控制器和报警装景等。对于怎样才称之为快速并没有确切的定义,大多数人认为快速就是 图像的获取与视觉系统的输出之间的时间很短,也就是以较高的速度获取图像并完成对图像的 处理,满足生产节拍的要求1 2 3 1 0 视觉传感器、高速图像采集系统和专用图像处理系统、高速通讯模块等部分构成一个智能 视觉测量单元。在计算机中利用软件来实现图像处理系统是一个很耗时的过程,影响了整个视 觉检测系统的测量速度。这对于数据量很大的检测系统来说,用这种方法是不能满足现代化大 生产的高速生产节拍的,给视觉检测实现1 0 0 在线检测方面带来了局限性。某种程度上讲,图 像处理速度影响整个系统的性能,高性能的检测系统对数据处理设备提出了更高的要求。微电 子技术和集成电路铝造技术的发展,特别现场可编程门阵列f p g a ( f i e l dp r o g r a m m a b l eg a t e a r r a y ) 的发展,为视觉检测系统中图像处理速度的提高提供了新的解决思路和方法。 机器枧赏中高速图像处理算法研究及f p g a 实现 0 2 国内外发展现状 图像处理系统的结构受多方面因素的影响,特别c p u 、计算机总线、操作系统、网络数据 库和集成电路水平的影响。8 0 年代开始出现以图像帧存为中心的图像处理结构,如图o 1 ,随 着新型p c i 总线的阕世,9 0 年代出现了以计算机内存为中心的图像处理系统,为了提高速度, 又增加一些硬件处理t 2 3 1 ,如图0 2 。硬件处理的功能包括卷积、分割和灰度变换等等。 图o ,1以图像帧存为中心的图像处理结构 摄 吨归 硬 像 件 骨 内 显 处存存 机 理 图o 2 以计算机内存为中心的图像处理系统 低价位微处理技术支持的并行处理技术、低成本的图像传感器以及低成 本的新的存储技术的发展进一步推动了数字图像处理技术的发展,图像处理 无论在算法上还是体系结构上都有了很大的发展,数字信号处理器以及大规 模超大规模可编程器件在图像处理上有广泛的应用2 6 1 。 v i s i o nc o m p o n e n t s 公司智能摄像机( 图o 3 ) 是含图像处理专用d s p 来 完成应用程序,不需要计算机的通用工业图像处理平台。表面看与普通摄像 机一样,但是,实际上智能摄像机包含许多部分用以完成图像采集及处理。 自带c c d 传感器、图像采集卡、图像存储器、d s p 高速处理器、4 路输入口图0 3 4 路输出口来实现p l c 功能,可以与p l c ,p c 或局域网通过以太网或r s 2 3 2 口通讯。大量子 程序是用汇编语言写成,因此处理速度高。对于v c 2 0 系列相机的5 1 2 x 5 1 2 分辨率的灰度图像 典型处理速度如下:s o b e l 算子:6 m s ;平均值操作:5 m s 差分操作:9 m s ,行程编码:4 m s 。 智能摄像机几乎可以应用于所有的工业检测。除此之外,智能摄像机还可以在印刷定位、印刷 质量检测及标签检测中均有广泛的应用。在指纹识别、人脸识别及虹膜识别等生物特征识别中 均有成功应胥的寨铡t 3 1 、a 机器视觉中高速图像处理算法研究及f p g a 实现 贝尔实验室的研究人员基于a l t e r ae p f 8 1 5 0 0 系列 的f p g a 研制出实现图像处理和神经网络算法的s i m d 结构的处理器1 3 1 。在f p g a 内实现很多处理单元( p e ) , 并排成阵列,并且f p g a 也排成阵列,如图0 4 所示。 这些p e 同时进行数据的处理,并成环状。实验中他 们利用2 2 f p g a 实现的处理器,对二值图像进行卷 积运算,效果很好,与n e t 3 2 和p e n t i u m 相比,速度 明显提高,见下表:( t i m e f o ra c o n v o l u t i o n o v e ra5 1 2 5 1 2 p i x e li m a g e ) 图0 44 4 p e m a t r i x o v e r f p g a t e m p l a t es i z e v l pn f r 3 2 k p e n t i u m 4 41 5n l $ 6 2 5i l l s1 1 4m s l8x8筇| l j s6 空5 m s9 _ 3 8 m s i 1 6 1 62 4m s8 2 5h i s9 6 lm s 表0 1 不同处理器之间的卷积算法比较 铁道部基础设施检测中心采用摄像、图像处理及惯性测量技术对以往使用的光电伺服跟踪 方式的轨距轨向系统进行全面改造升级。以f p g a 模块为核心的高速图像处理卡实时采集、处 理8 个通道的钢轨断面图像信号,并根据钢轨断面轮廓图像求出轨距的特征点,分别计算两个 特征点相对于惯性空间基准的位移及两点间的距离,实现在动态条件下的轨距轨向测量h 们。 富士通研究所与富士通前沿科技公司日前开发成功了用于办公室与商务设施等用途的服务 机器人“富士通服务机器人”, 在负责视觉识别的d s p 管理下运行的是新开发的3 维图像处理 l s i ,使用美国赛灵思约有5 0 0 万个门阵列的f p g a 开发而成,该f p g a 的工作频率为9 0 m h z 。 由于开发了图像处理l s i 提高了处理速度,因此可以在行走进程中进行视觉识别1 2 5 1 。 目前全球整个视觉市场总量大概在7 0 8 0 亿美元,是按照每年8 8 的增长速度增长的。在 国外,机器视觉的应用普及主要体现在半导体及电子行业,其中大概4 0 左右都集中在半导体 行业。具体如p c b 印刷电路:电子生产加工设备:电子元件制造设备、半导体及集成电路制造 设备、元器件成型设备、电子模具t 4 5 1 。机器视觉系统还在质量检测的各个方面已经得到了广泛 的应用,并且其产品在应用中占据着举足轻重的地位。除此之外,机器视觉还用于其他各个领 域。 在中国,以上行业本身就属于新兴的领域,再加之机器视觉产品技术的普及不够,导致以 上各行业的应用几乎空白,即便是有,也只是低端方面的应用。目前在我国随着配套基础建设 的完善,技术、资金的积累,各行各业对采用图像和机器视觉技术的工业自动化、智能化需求 开始广泛出现,国内有关大专院校、研究所和企业近两年在图像和机器视觉技术领域进行了积 极思索和大胆的尝试,逐步开始了工业现场的应用。 机器枧觉中高速图像处理算法椰f 究及f p g a 实现 机器视觉发展主要表现为以下一些特性:1 、随着产业化的发展对机器视觉的需求将呈上 升趋势2 、统一开放的标准是机器视觉发展的原动力;3 、基于嵌入式的产品将取代板卡式产 品 4 5 10 从产品本身看,机器视觉会越来越趋于依靠p c 技术,并且与数据采集等其他控制和测 量的集成会更紧密。且基于嵌入式的产品将逐渐取代板卡式产品,这是一个不断增长的趋势。 主要原因是随着计算机技术和微电子技术的迅速发展,嵌入式系统应用领域越来越广泛,尤其 是其具备低功耗技术的特点得到人们的重视。 0 3 本文研究内容 随着机器视觉应用需求的不断扩大和计算机技术的飞速发展,数字图像处理面临着复杂化 和高速化的挑战,图像处理的速度问题是由图像数据的特点和图像处理算法的复杂性引起的, 依据图像处理及数据的特点,可把图像处理分成三个层次:数据处理层、信息提取层、知识应 用层。 本论文分析了各个层次中的算法对硬件的要求,其中数据处理层对图像中的所有元素均可 施以同样的操作,存在固有的并行性,面且这些运算算法简单( 只有加和乘) ,计算量大,适合 于在外围f p g a 架构中用硬件算法实现。 第二章和第三章研究了数字图像处理中的邻域处理算法和数据结构,以轮换矩阵理论为基 础,论述实现邻域图像并行存取的图像帧存储体的存储结构的方法,针对空间滤波器,研究了 二维卷积的并行分布式算法以及分布式算法的数字系统设计。 第四章在前面算法的基础上,比较了当前流行的实现硬件图像处理的各种手段的优缺点, 对x i l i n x 公司s p a r t a n i i 系列的f p g a 内部资源进行了深入研究。采用x i l i n x 公司的s p a r t a n i i 系列f p g a 和两片d r a m 芯片,设计了行顺序的3 3 邻域图像并行存取的帧存储体,在f p g a 芯片内实现地址变换和存取控制,并在w e b p a c ki s e 6 1e d a 环境中,利用v e r i l o gh d l 硬件 描述语言设计实现。利用高级内核设计工具( x i l i n xc o r e g e n 软件) 中的d s p 程序块实现离散卷 积的分布式运算。并设计出f p g a 测试板的硬件方案,探讨了f p g a 技术在电子数字系统设计 中的应用。 d 机器视觉中高速图像处理算法研究及f p g a 实现 1 机器视觉系统组成与数字图像处理简述 1 1 机器视觉系统的基本结构 图1 1 机器视觉系统的构成 机器视觉一般由以下几个部分构成:照明部分:光学系统,包括图像传感器和照相机;图 像采集卡图像数字化仪,扫描仪;可视的多路传输器;工业计算机;控制执行机构。如图1 1 所示。图像传感器使用c c d 或c m o s 技术e 4 6 1 。 图像采集又包括发出开始采集的触发信号、图像的获取和图像数据的传输。建立一套图像 采集方案必备的设备有:图像采集硬件、驱动软件和应用软件。硬件可提供图像捕获、定时和 控制功能;驱动软件通过一个标准的a p i 接口对硬件进行操作;应用软件可以将硬件和驱动软 件结合到特定应用的解决方案中,并大大缩短开发时间。目前有许多图像采集卡已投入到实际 应用中,利用p c i 总线进行图像数据的传输,最大传输率为1 3 3 m b y t e s ,实用的速率一般为 1 0 0 m b y t e s 。 图像处理器涉及到处理器结构、操作系统、应用软件和输出时序,对实时系统来讲,输出 时序是特别重要的部分。 视觉检测中,根据被测对象的需要,系统要采集和处理的图像数据量大,尤其对于大型物 体三维视觉检测系统常常需要多个测量模块,系统采集和处理的数据量将会相当大。整个视觉 检测系统构成以计算机为中心的网络控制系统,挂接在网络上的每个测量模块则是由视觉传感 器、高速图像采集系统和专用图像处理系统、高速通讯模块等部分构成,将其称为一个智能视 觉测量单元。所以,某种程度上讲,图像处理速度影晌整个系统的性能,高性能的检测系统对 5 机嚣视赏中高速图像处理算法研究及f p g a 实现 数据处理设备提出了更高的要求6 1 7 3 钔。 如果想从代码中获得最佳性能,方法包括优化算法、使用查找表、将一切都转换为本地字 长尺寸、使用注册变量、解开循环甚至可能采用汇编代码。如果所有这些都不奏效,可以转向 更快的处理器、采用一个不同的处理器架构,或将代码一分为二通过两个处理器并行处理1 1 9 1 。 低价位微处理技术支持的并行处理技术、低成本的图像传感器以及低成本的新的存储技术 的发展进一步推动了数字图像处理技术的发展,图像处理无论在算法上还是体系结构上都有了 很大的发展,数字信号处理器以及大规模超大规模可编程器件在图像处理上有广泛的应用。微 电子技术和集成电路制造技术的飞速发展为实现高速图像处理系统提供了新的思路和实现方 法。 1 2 机器视觉中数字图像处理简述 数字图像指的是一个被采样和量化后的二维函数,采用等距离矩形网格采样,对幅度进行等 间隔量化,可以用个二维矩阵来表示。如果我们定义数字图像为一个物体的数字表示,则象素 就是离散的单元,量化的灰度等就是数字量。扫描、采样和量化三个步骤组成了图像数字化的 过程,也就是形成一副数字化图像的过程。 数字图像处理就是对一个物体的数字表示施加一系列的操作,以得到所期望的结果,比如 对- - n 图片的处理,处理过程能改变图片的样子,使其更称心或达到某种特定的目的。 对于灰度图像,在数字图像处理中有些标准值如下表1 8 1 参数记号典型值 行数 n 2 5 6 ,5 1 2 ,5 2 5 ,6 2 5 ,1 0 2 4 ,1 0 3 5 列数 m 2 5 6 , 5 1 2 ,7 6 8 ,1 0 2 4 ,1 3 2 0 一 灰度级数 f l l 2 ,8 ,6 4 ,2 5 6 ,1 0 2 4 ,4 0 9 6 ,1 6 3 8 4 表1 1 灰度图像标准值 图像处理技术是把输入图像转换成具有所希望特征的另一幅图像。对许多问题的求解,常 常不是一种算法就能解决的,需依次使用多种不同的算法,这些算法具有顺序性,上一步的结 果会直接影像到下一步的处理。根据所涉及的数据的性质,可将视觉检测中的图像处理分为数 据层、信息层和知识层1 2 3 。对一副图像进行处理,首先是经过原始数据处理,这种处理属于底 层处理,也叫低级处理。经过底层处理后,下一个处理层是信息处理,提取所需的信息并对该 信息进行处理,如提取物体的边界以计算面积、周长等等也叫中级处理。知识层处理则是更高 6 机器视觉中高速图像处理算怯研究及f p g a 实现 数掘处理设备提出了更高的要求1 1 7 1 3 8j o 如果想从代码中获得最佳性能,方法包括优化算法、使用查找表、将一切都转换为本地字 长尺寸、使用注册变量、解开循环甚至可能采用汇编代码。如果所有这些都不奏效,可以转向 更快的处理器、采用一个不同的处理器架构。或将代码一分为二通过两个处理器并行处理1 1 9 1 低价位微处理技术支持的并行处理技术、低成本的图像传感器以及低成本的新的存储技术 的发展进一步推动了数字图像处理技术的发展,图像处理无论在算法上还是体系结构上都有了 很大的发展,数字信号处理器以及大规模超大规模可编程器件在图像处理上有广泛的应用。微 电子技术和集成电路制造技术的飞速发展为实现高速图像处理系统提供了新的思路和实现方 法。 1 ,2 机器视觉中数字图像处理简述 数字图像指的是一个被采样和量化后的二维函数,采用等距离矩形网格采样,对幅度进行等 间隔量化,可以用一个二维矩阵来表示。如果我们定义数字图像为一个物体的数字表示,则象素 就是离散的单元,量化的灰度等就是数字量。扫描、采样和量化三个步骤组成了图像数字化的 过程,也就是形成一副数字化图像的过程。 数字图像处理就是对一个物体的数字表示施加一系列的操作,以得到所期望的结果,比如 对- - n 图片的处理,处理过程能改变图片的样子,使其更称心或达到某种特定的目的。 对于灰度图像,在数字图像处理中有些标准值如下表“1 参数l 阮号典型值 行数_ i n 1 2 5 6 15 1 2 ,5 2 5 ,6 2 5 ,1 0 2 4 ,1 0 3 5 l 列数胁 1 2 5 6 ,5 1 2 ,7 6 8 ,1 0 2 4 ,1 3 2 0 灰度级数 l 2 ,8 ,6 4 ,2 5 6 ,1 0 2 4 ,4 0 9 6 ,1 6 3 8 4 表1 1 灰度图像标准值 图像处理技术是把输入图像转换成具有所希望特征的另一幅图像。对许多问题的求解,常 常不是一种算法就能解决的,需依次使用多种不同的算法,这些算法具有顺序性,上一步的结 果会直接影像到下一步的处理。根据所涉及的数据的性质,可将视觉检测中的图像处理分为数 据层、信息层和知识层1 2 3 1 0 对一副图像进行处理,首先是经过原始数据处理,这种处理属于底 层处理,也叫低级处理。经过底层处理后,下一个处理层是信息处理,提取所需的信息并对该 信息进行处理,如提取物体的边界以计算面积、周长等等也叫中级处理。知识层处理则是更高 信息进行处理,如提取物体的边界以计算面积、周长等等也叫中级处理。知识层处理则是更高 机器视觉中高速图像处理算法研究发f p g a 实玑 一层的处理,如基于知识的图像查询、文字识别、指纹识别等等,也叫高级处理。 1 3 高速数字图像处理f l , , - j 硬件要求 低级处理主要是针对像素的一些运算,包括滤波、阈值比较、查找表,完成如对比度增强、 锐化处理、平滑处理、边缘检测、模板匹配、膨胀和缩小等操作。在低级处理中,参与运算的 数据量大;数据需多次重复使用,算法简单( 乘加运算) ,规则,图像中的所有元素均可施以同 样的操作,存在固有的并行性,通信需要高带宽数据交换,因此,低级图像处理往往是图像处 理系统中最为耗时的环节,对整个系统速度影响较大:这些特点,使这些运算非常适合于在外 围f p g a 架构中来用硬件算法实现,例如,f p g a 中的硬件乘法模块就使得这些运算中大量用到 的卷积运算易于实现,由于f p g a 能够能方便进行并行运算,使得图像的低级处理速度大大加 快1 1 3 | a 中级处理是将低级处理的结果,如灰度直方图、检测点、线的坐标,作为输入,做进一步 的处理,包括对被测物有用特征信息的处理,如孔中心的图像坐标提取,线段交点的图像坐标 的求取等,在这些运算中,参与运算的数据量较小,但算法相对复杂,同时还具有一定的串行 性,如继续用硬件实现则不仅要占用大量硬件资源,且不易实现,因此可采用嵌入式的c p u 来 完成,由于c p u 与f p g a 结构有很大的带宽,进行数据交换也很方便。 高级图像处理则包括视觉传感器坐标到传感器坐标的转换,以及整个检测系统多个传感器 坐标的统一等,经过中级处理后的数据量已经很小、需传输的数据量也小,而且这些运算的算 法更加复杂,对系统的计算性能要求高,比较适合用计算机进行处理。 1 4 本章小结 本章主要是对机器视觉系统和图像处理的简要概述,指出图像处理具有分层性的特点,各 层有自己不同的实现方式的要求,数据层的算法适于硬件实现。图像处理速度影响整个系统的 性能,高性能的检测系统对数据处理设备提出了更高的要求。微电子技术和集成电路制造技术 的飞速发展为实现高速图像处理系统提供了新的思路和实现方法。 机器视觉中碧 速斟像处理算法研究及f l ,g a 实现 2 数字图像处理算法及其数据结构 2 1 数字图像处理的主要方法 数字图像的处理方法大致可分为两大类:空域法和变换域法旧1 。 1 空域法 空域法是把图像看作平面中各个象素组成的集合,直接对空间二维函数进行相应的处理。 空域法主要分为如下两类: ( 1 )邻域处理法:包括梯度运算( g r a d i e n ta l g o r i t h m ) ,拉普拉斯算子运算( l a p l a c i o n o p e r a t o r ) ,平滑算子运算( s m o o t h i n g0 p e r a t o r ) 和卷积运算( c o n v o l u t i o n a l g o r i t h m ) 。 ( 2 )点处理法:包括灰度处理( g r e yp r o c e s s i n g ) ,面积、周长、体积运算等等。 2 变换域法 数字图像处理的变换域处理方法是首先对图像进行正交变换,得到变换域系数阵列,然后 再施行各种处理,处理后再反变换到空间域,得到处理结果。比如滤波、数据压缩等处理。 2 2 数字图像运算的特点 根据图像运算上的特点又可分为点运算、局部运算和全局运算。 1 点运算( p o i m ) :输出图像每个象素的灰度值只依赖于输入图像对应点的灰度值,又称 为对比度操作。其计算复杂度是不变的。 2 局部运算( l o c m ) :它的输出图像上每个象素的灰度值是根据输入图像中以对应象素为中 心的邻域中多个象素的灰度值计算出来的。其计算复杂度是与邻域的象素数量成正比 的。 3 全局运算( g l o b a l ) :对整幅图像进行相同的处理。其计算复杂度是与整幅图像的象素数 量成正比的。 三种运算可用图2 1 形象的表示。 图2 。l 图像处理的三种运算表示 机器视觉中高速图像处理算法硝亨鼓f p g a 实现 有关邻域的取法有如下三种,常用的为第二种,本论文算法中采用的就是第二种邻域。 i | ul juo 嘲 l t 黼 2 3 数字图像处理中的空间滤波器 2 3 1 图像处理中的卷积 卷积刻画了线性移不变系统的运算,一种将两个函数组合成第三个函数的运算。卷积积分 用来实现图像处理中的线性运算明1 ,通常的表示方法为: c = a 圆b = n 津b ( 2 一i ) 在二维连续空间表示为: c ( x ,y ) = 口( 而y ) p 6 ( x ,y ) = jf a ( z ,f 弘( x z ,y - f ) d z d ( ( 2 - 2 ) 在二维离散空间表示为: - 恸 c m ,n = a i m ,聆】0 6 蜥,刀】= a j ,k b m - j 扩k 】 ( 2 q ) j ;t 卷积核就是用于数字图像卷积滤波的二维数字阵列,是与图像或信号卷积的函数。利用卷 积可以滤波、锐化,常用的程序往往都是选择3 x 3 的h ( m ,n ) 作卷积核。 卷积的应用如下: 1 去卷积,即去处不需要的但对系统已经施加了的线性系统的影响。例如,用卷积恢复 由于透镜系统或运动所造成的模糊。 2 去噪声,去掉线性叠加在图像上的线性噪声信号。 3 特征增强,以消弱图像中的其他为代价,来增强指定特征( 如边缘等) 的对比度。 2 3 2 空间滤波器 设输入图像为u ,我们来考虑由输入图像产生输出图像的如下运算 n y ( 蝎,1 1 2 ) = w ( 嗣 如( 啊+ 畸,2 2 + 七2 ) t = 一k z = - n 机器视觉中高速图像处理算洼研究及f p g a 实现 该运算是将以坐标( n ,n t ) 为中心的( 2 n + 1 ) ( 2 n + 1 ) 个输入象素的加权平均作为输出图像 y ( 1 3 ,n :) 的一种算法。这样的图像处理算法称为空间滤波器( s p a t i a lf i l t e r ) h 1 如果令 h ( k l ,k 2 ) = w ( 一k 1 ,一k 2 ) ,则2 4 式可改写为如下的卷积: nn _ y ( 啊心) = ( 毛,如- ( 一毛,一如) ( 2 _ 5 ) k l = 。n k x = 。n 用频域滤波方法使图像增强的主要缺点是所有滤波方法的流程中都附加了对图像的傅立叶 正变换和反变换,对数据量较大的二维图像来说需占较大的内存,且运算时间过长。从原理上 看,频域滤波就是频域乘上一个h ( u ,v ) 滤波( 传递) 函数而成,这时相当于在空域把图像与 滤波函数的空域函数h ( x ,y ) 做卷积。因此可以把频域滤波处理改为空域执行卷积,实现图像的 平滑、去噪、特征提取等图像预处理。 设图像a ( m ,n ) 为n n ;则h ( m ,n ) 也是n n 大小,这样做卷积很浪费时间,因此常用小区 卷积,就是把图像分成许多小区进行滤波,这个小区常用3 x3 或5 x 5 表示,称之为卷积核。 常用的程序往往都是选择3 3 的h ( m 柚作卷积,对图像进行高通、低通和带通等滤波,只 要选择不同的卷积核h ( m ,n ) o p 可,h ( m ,n ) 就叫作样板或掩模( m a s k ) 。样板法简单,实现方法统 一,根据不同的需求,只要修改掩模里面的参数就可。其数据结构和卷积模板相对应。 2 3 3 邻域处理算法和帧存储体的存储结构 2 3 3 1 提取图像边缘的两个算予 图像数据和图像处理的特点既加大了图像处理的难度,也为图像的快速处理提供了广阔的 舞台。低级图像处理即数据处理层的共同特点是处理前和处理后的对象均为图像,属于点位图 到点位图的处理。下面以两种邻域处理算法拉普拉斯算子和s o b e l 算子( n - i 用于边界增强) 为 例,介绍邻域处理算法及存储结构1 1 6 h 2 1 1 。 图像的边界是图像的最基本特征。边界检测是图像处理和计算机视觉领域内最经典的研究 课题之一,达到将物体从图像中分离出来或将表示同一物体表面的区域检测出来的目的。它是 早期视觉理论和算法中的基本问题,也是中期和后期视觉成败的重要因素之一。在许多计算机 视觉和图像理解系统中,边界检测的正确性和可靠性的程度是影响和评价整个系统性能的一个 重要方面。 1 拉普拉斯算子 线性微分拉普拉斯算子表示为 v 2 f ( x ,y ) = a 2 f ( x ,y ) o x 2 + a 2 f ( x ,y ) o y 2 这个算子对于边缘是敏感的,可以突出图像中的孤立点、孤立线或线端点。 1 0 帆器视觉中高速图像处理算让研究及f p g a 实现 - 吵一 一 、缈 厂、d 2 胁 l 图a 可以看出在一维情况下,一个灰度边缘陡峭与边缘平缓二者用拉氏算子处理的结果。图a 是当边缘陡峭时其结果是正峰与负峰相邻,而在图b 中可以正负峰值之间的过零点来确定边界 线。用差分代替微分来执行拉氏的运算是常用的方法: o f o x = i ( x ,y ) 一f ( x 一1 ,y ) a ,砂= ,( y ) 一,( x ,y i ) f ,_ 7 1 a 2 f l o x 2 = f ( x + l ,y ) + f ( x - 1 ,y ) 一2 ,( x ,y ) 0 2 f o y 2 = f ( x ,y + 1 ) + - 厂( x ,y 一1 ) 一2 f ( x ,) ,) v 2 厂( 五y ) = 厂( x + l ,j ,) + 厂( 工一1 ,y ) + ,( x ,y 一1 ) 一4 厂( z ,_ y ) ( 2 8 ) = 5 1 5 f ( x + 1 ,y ) + f ( x - 1 ,y ) + ,( x ,y 一1 ) + ,( x ,y ) 】一s ( x ,y ) ) 显然,拉普拉斯算子是一个空域算子,可以用卷积核来计算,3 3 的卷积核可表示为 啊= ( 丢三虽= :i 三三玛= 三 实时的卷积运算要求不断的修改输入缓冲区的数据,用新数据代替老数据,用高级语言实 现时将大大增加数据编排的时间。适宜用硬件来实现。 2 ,s o b e l 算于 s o b e l 提出一种将方向差分运算与局部平均相结合的方法,即s o b e l 算子。该算子是在以f ( x ,y ) 为中心的3 x 3 邻域上计算x 和y 方向的偏导数,即 是= ,( z + 1 ,y 一1 ) + 2 f ( x + l ,y ) + ,o + 1 ,_ ) ,+ 1 ) - f ,一q 、 ,( x 一1 ,y 一1 ) + 2 ,( x + 1 ,y ) + 厂( x 一1 ,y + 1 ) s y = 厂( x 一1 ,) ,+ 1 ) + 2 ,( 五y + 1 ) + ,( 工+ 1 ,) ,+ 1 ) 一 ( 2 1 0 ) f s ( x 一1 ,y 1 ) + 2 厂( x ,y 1 ) + ,( x + 1 ,y 一1 ) 实际上,上式应用了f ( x ,y ) 邻域图像强度的加权平均差值。其梯度大小为 八 机器视觉中商速图像处理算法磷究及f p g a 实现 或取绝对值 它的卷积算子为 g ( x ,y ) = + g ( 工,y ) = m + k ( 三i 封 ;享罩 ( 2 1 2 ) 2 3 3 2 帧存储体的存储结构 在图像帧存储体内,对一个存储芯片进行操作,不管存储芯片内部结构如何,在存储芯片 外部来看,在一个读写周期里不能同时存取处于不同地址的2 个存储单元。可以采取多个存储 芯片组成一个存储芯片阵列,并对这个存储芯片阵列进行正确的分组,配以相关的电路,最终 实现邻域图像数据的并行存取。对于3 3 的邻域结构,可用9 个地址、数据独立的存储芯片 d 0 0 d 2 2 实现。行列地址为( 3 i - 1 ,3 j 一1 ) 的图像数据存储在d 0 0 芯片内,行列地址为( 3 i 1 ,3 j ) 的图像数据存储在d o l 芯片内,按照这种存储规律来分组存储图像数据,就 3 j 一13 j3 j + 1 ,i - 医 医 医 3 i 3 i + 1 田口口 团口口 图2 43 x 3 存储芯片阵列 可以保证任何一个3 3 邻域图像数据都处在不同的存储芯片内,就可以实现3 x3 、3 2 、3 x 1 邻域数据的并行存取了。这就是完全轮换矩阵的存储结构。 利用不完全轮换矩阵的概念,可在保证并行存取的邻域图像数据尺寸的前提下减少存储芯 片的个数。首先按下式对4 4 矩阵进行分块 a = a o o t 2 0 l :a 0 2 a 0 3 a l o a u :a t 2 q 3 a 2 0 吒1 :a 2 2 a 2 3 吩。吒l :a 3 2 l 3 3 矩阵分块的物理意义是存储体芯片的每一个地址包含有2 x 2 个图像数据。利用4 个存储芯片实 现的存储结构如下图所示,这种存储结构中只有以下标均为偶数的元素为起点的4 x 4 邻域才 1,ll一 龟;| - i r r 钆 p,。l = 机器视觉中高速图像处理算法研究及f p g a 实现 能进行正确的存储体的读写,其他则不行,原因是在这些邻域中存储芯片的地址产生了折叠。 但对任何一个3 3 邻域的并行读写都是正确的。因此 b = a o o a o j a 0 2 :3 日o o l :d 0 2 3 q o q l q 2 :a 1 3 q o q l :a 1 2 q 3 吒o a 2 1 a 2 2 :a 2 3 q o 吒l :a 2 2 吗3 吗o a 3 1 呜2 :a 3 3 吒o a 3 1 :码2 a a 3 这种存储结构适合于3 3 邻域的图像处理。这种存储方式称为不完全地址结构邻域图像帧存储 体。在这种存储结构中,邻域图像帧存储体的存储芯片的存储单元地址和象素不是一一对应的, 至少是一个存储芯片的存储单元地址对应两个图像象素。这种结构可大大节约存储芯片。如上 图所示,用4 个存储芯片就能实现3 3 邻域数据的并行读写,比用完全轮换矩阵的存储矩阵的 存储结构节约1 2 个存储芯片。 所以在设计并行读出的邻域图像帧存储体时,应充分考虑存储体芯片的字长,尽可能地采 用不完全轮换矩阵的存储结构。 2 4 本章小结 本章讲述图像处理的特点,在数据层处理里,以图像处理算法所涉及象素区域的差别,把 图像处理划分为点处理和邻域处理。论述了实现邻域图像并行存取的图像帧存储体的存储结构 的方法,并对卷积运算在图像空间滤波处理中的应用进行了深入的研究。 机器程觉中高速图像处理算法科究发f p g a 实现 3 卷积的分布式算法 3 1 基本分布式运算原理 分布式算法( d a ) 是种非常适用于基于查找表方式乘法运算的计算方法。这种算法通过对 参与运算的各位进行重新排序来隐藏乘法,对于降低并行硬件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论