首页 基于FPGA的双目立体视觉系统

基于FPGA的双目立体视觉系统

举报
开通vip

基于FPGA的双目立体视觉系统 第10卷第9期 2005年9月 中国图象图形学报 JournalofImageandGraphics V01.10,No.9 Sep.,2005 基于FPGA的双目立体视觉系 周文晖 杜 歆 叶秀清 顾伟康 (浙江大学信息与电子工程学系,杭州310027) 统 摘要立体视觉的目的之一就是为了获得周围场景的3维信息,其关键在于匹配算法。然而即便是使用目前先 进的通用处理器,其计算致密视差图所需的时间仍无法满足高速自主导航的需求。为了解决这个问题,提出了一 种基于现场可编程门阵列(FPGA)的双目立...

基于FPGA的双目立体视觉系统
第10卷第9期 2005年9月 中国图象图形学报 JournalofImageandGraphics V01.10,No.9 Sep.,2005 基于FPGA的双目立体视觉系 周文晖 杜 歆 叶秀清 顾伟康 (浙江大学信息与电子工程学系,杭州310027) 统 摘要立体视觉的目的之一就是为了获得周围场景的3维信息,其关键在于匹配算法。然而即便是使用目前先 进的通用处理器,其计算致密视差图所需的时间仍无法满足高速自主导航的需求。为了解决这个问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 ,提出了一 种基于现场可编程门阵列(FPGA)的双目立体视觉系统的设计 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 ,同时介绍了系统的硬件结构,并在讨论区域匹 配的快速算法的基础上,提出了基于FPGA的像素序列和并行窗13算法框架,用以实现零均值像素灰度差平方和 (ZSSD)的匹配算法。该算法是先将视频信号经解码芯片生成场景立体图像对,并由FPGA来完成立体图像对的几 何校正和ZSSD匹配算法,然后将获得的致密视差图通过PCI总线发送至上位机。实践 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 明,该算法效果好、速度 快,不仅具有较强的鲁棒性,并且硬件系统性能稳定、可靠。此外,该方案还适用于像素灰度差的绝对值和(SAD) 和像素灰度差的平方和(SSD)等多种传统区域匹配算法的快速实现和实时处理。 关键词 双目立体视觉快速匹配算法零均值像素灰度差平方和 现场可编程门阵列 中图法分类号:TP301.6文献标识码:A 文章编号:1006-8961(2005)09—1166-05 BinocularStereoVisionSystemBasedonFPGA ZHOUWen-hui,DUXin,YEXiu—qing,GUWei—kang (DepartmentofInformationandElectronicEngineering,ZhejiangUniversity,Hangzhou310027) AbstractThegoalofstereovisionistorecoverthethree-dimensionalinformationofascene,andthecore0lstereovision istofindthecorrespondingpixels.However,thecorrespondencesearchistootime-consumingforhighspeedrobotvehicles autonomousnavigation,evenifstate-of-artgeneral—purposeprocessorsareusedtoaccelerateit.Aimingatthisproblem, thispaperpresentsadesignschemeforbinocularstereovisionsystembasedonfieldprogrammablegatearrays(FPGA),its hardwarestructureisintroduced,andafastzeromeansumofsquareddifferences(ZSSD)stereomatchingalgorithmis discussed.Moreover,apixel—serialandwindow-parallelarchitecturebusedonFPGAprocessorisproposedtoachieveZSSD matchingalgorithm,whichissuitableforparallelprocessing.Thestereopsisiscapturedbytwosamedecoderchips.After rectificationandZSSDmatchingimplementedbyFPGA,densedisparitymapiscomputedandsenttogeneral-purpose computerbyPCIbus.Theproposedschemeisveryrobustandexhibitsgreatperformance,suchashighspeed.Andthe hardwaresystemhashighstabilityandreliability.Inaddition,thisschemeis alsoapplicabletofastandreal-time processingofotherconventionalarea—basedstereomatchingalgorithms,suchassumofabsolutedifferences(SAD),sumof squareddifferences(SSD),etc. Keywordsbinocularstereovision,faststereomatching,zeromeansumofsquareddifferences(ZSSD),field programmablegatearrays(FPGA) 1 引 言 双目立体视觉系统的重要任务之一就是从两个 相同摄像机获取的立体图像对中恢复场景3维信息, 并利用场景的3维信息识别目标、道路、划分障碍区。 立体匹配算法是立体视觉中的关键算法。基于 区域的匹配算法由于可直接获得致密的视差图,因而 更广泛地应用于快速或实时的立体视觉系统中。区 域匹配算法的性能在很大程度上要依赖于相似性测 基金项目:国家自然科学基金项目(60105003) 收稿日期:2004-03-31;改回日期:2005-02-21 第一作者简介:周文晖(1977一),男。1999年获杭州大学学士学位,现为浙江大学通信与信息系统专业博士生。从事图像处理、机器视 觉,及信号处理等方面的研究。E—mail:sunshine@hzcne.corn。 万方数据 第9期 周文晖等:基于FPGA的双目立体视觉系统 度因子的选取,而最常用的测度因子有像素灰度差的 绝对值和(sumofabsolutedifferences,SAD),及像素 灰度差的平方和(sumofsquareddifferences,SSD)。 wu的研究表明,采用零均值归一化交叉相关(zero meannormalizedCROSScorrelation,ZNCC)和零均值像 素灰度差的平方和(zeromeansumofsquared differences,ZSSD)均可获得更好的结果¨。。考虑到 硬件实现的难易度,本文采用ZSSD的匹配方法。 由于匹配算法复杂度很高,即需要处理大量数 据,采用优化技巧加速后,算法复杂度虽可减少至 0(MND)嵋。,但由于采用通用计算机或数字处理芯 片的串行处理方式仍无法满足高速、实时处理的性 能要求,因而需要开发专用的硬件并行处理系统。 2双目立体视觉算法描述 2.1定标和图像几何校正 区域匹配算法往往都建立在摄像机模型为线 性,且左、右图外极线与图像扫描线平行的基础上, 以满足外极线约束的要求。然而,由于在实际匹配 时这些假设都是不成立的,因此在匹配运算之前,需 要先对摄像机系统进行定标,即先计算两个摄像机 的内、外参数,然后才能根据定标得出的原始图像待 校正像素4个相邻像素点的校正系数和原始图像待 校正像素的位置来完成立体图像对的几何校正,以 便用于校正镜头的非线性畸变和外极线配准。显然 定标的精度将直接影响匹配结果。张正友提出的2 维模板定标方法¨。,虽简化了定标过程,但依然较 为复杂。所幸的是,在被动立体视觉中,由于摄像机 系统位置固定不变,因而定标过程可离线完成。这 样实时操作中仅需读取定标中得到的校正系数即可 完成立体图像对的几何校正(如式(1)所示)。 4 ,(u,移)=乏:C(ui,秽i)·,(M;,移;)(1) 青 其中,,(M,移)为校正后得到的匹配窗口w内的像素 值,,(“i,口;)(i=1,⋯,4)为原始图像中相应像素的4 个相邻像素点的像素值,C(“i,秽;)(江1,⋯,4)是相应 的校正系数。,(n,,q)和C(“。,'/j;)均由定标确定。 2.2区域匹配算法 区域匹配算法是先以基准图的待匹配点为中心 创建一个窗口,然后在对准图中,以相应外极线上的 像素点为中心创建同样大小的滑动窗口,并以两者 间的相似性作为匹配代价,由此可得到一条匹配代 价曲线,而其极值处即为最佳匹配点。一般SAD (或ZSAD)和SSD(或ZSSD)取最小值的点,而NCC (或ZNCC)则取最大值的点。Wu的研究表明,采用 ZNCC和ZSSD虽均可以获得较好的结果¨J,但由于 ZNCC计算每点都需要乘法、除法和开根号运算,不 易于硬件实现,因而本文采用ZSSD算法。 设右摄像机拍摄的图像为基准图,左摄像机拍 摄的图像为对准图,厶.。为基准图中(m,凡)点的亮 度值,/为基准图上匹配窗13W内的像素均值,在 对准图g上也做相应的定义,则两个窗口的ZSSD 值可写为 ZSSD。,。=∑((八叩)一D一(g(u+d,口)一吾))2 (“,口)EW (2) 其中,d为左摄像机拍摄的图像上窗口在外极线上移 动的距离,即视差。(u,秽)是以待计算像素(m,n)为 中心的匹配窗口W内的像素坐标。将式(2)扩展可 得到 ZSSD。,。,。=∑f2(“,口)+∑gZ(u+d,勘)一 【“,口JEⅣ 【H,口JEⅣ 埘·(力2一埘·(吾)2一埘·f·蕾+肘。.。(d)(3) 其中,埘为窗口大小, M。(d)=∑八u,口)。g(“+d,秽)(4) 由式(3)和式(4)可知,计算每点的ZSSD值需获得 窗口内像素的均值、平方和及两窗口像素的乘积和。 2.3 Box滤波 McDonnell提出的Box滤波方法H1是一种递归 的2维均值滤波的快速算法。该算法对每个输出像 素只需4次运算,且与窗口大小无关。Stefano将 Box滤波应用于立体匹配中,由于大大减少了计算 量,因而提高了运算速度"o。由于计算窗口的均值 或像素平方和时可充分利用前(或上)一个像素窗 口的结果,因此只需完成两行(或列)的像素运算即 可获得结果(如图1所示)。 图1 基于Box滤波的立体匹配加速方法 Fig.1TheaccelerationmethodbasedonBoxfilter 万方数据 中国图象图形学报 第10卷 3算法框架及其实现 基于现场可编程门阵列(fieldprogrammable gatearrays,FPGA)的立体视觉算法设计的关键在 于,在片内RAM带宽和容量制约的前提下,充分利 用FPGA的并行性计算体系结构及合理的流水线设 计来实现并行算法。此外,匹配窗口大小的选取也 受片内RAM带宽和容量制约。在Box滤波算法中, 不仅需要暂存上一个像素的计算结果,还需暂存其 匹配窗口中每行的计算中间值,而且,窗口的大小也 直接影响着存放中间结果所需的位数。为减轻片内 RAM的制约,可以将大部分暂时不用的中间结果放 到外部RAM中,在参与运算前读入即可。 根据式(3),在ZSSD算法中,匹配窗口的像素 均值、平方和及两窗口间像素乘积和可并行计算。 本文以两窗口问像素乘积和M⋯(d)为例介绍该算 法,其算法框图如图2所示,设窗口半径为r,在计算 第(m,n)点的视差为d的M。。(d)的值时,可利用 第(m,n一1)点视差为d的结果,减去第P行的乘积 和sum(P,d),再加上第q行的乘积和,sum(q,d)来 获得。在实际运算中,图像像素是顺序送入FPGA, 为了便于操作,图像读写地址均应采用高位为列,低 位为行的地址形成方式。 图2左、右匹配窗口像素乘积和算法框图 Fig.2Algorithmframeworkofthesumofmultipliedcorrespondingpixelsinleftandrightmatchwindows 具体的实现过程如图3所示,当左、右摄像机拍 摄的图像的第q行像素顺序送入FPGA时,即可在 像素运算级中完成8位乘法运算,并可根据视差d 值进行窗口截取及求和,同时从外部RAM中读取 sum(p,d)值,并完成M⋯一。(d)减,sum(p,d)的运 算,待,sum(q,d)运算完成后与之相加,即获得M⋯ 图3左、右匹配窗口像素乘积和算法实现 Fig.3Algorithmimplementationofthesumofmultipliedcorrespondingpixelsinleftandrightmatchwindows 万方数据 第9期 周文晖等:基于FPGA的双目立体视觉系统 (d),并写入暂存,然后参与ZSSD的后续计算及 M⋯+,(d)的计算,同时将sum(q,d)写入外部RAM, 以便在计算第q+r+1行时读取。在计算窗口内的 像素均值及平方和时,也采用类似的Box滤波方法 来实现实时运算。 4硬件结构设计方案 双目立体视觉硬件系统框图见图4,具体按功 能可划分为视频解码模块、视频处理模块、数据传输 模块3个模块,其中,视频解码模块用于实现对双摄 像机的同步采集,形成立体图像对;视频处理模块则 利用FPGA的并行性计算体系结构及其合理的流水 线设计来实现立体视觉的并行算法;数据传输模块 则借助PCI总线线性突发传输的特点,以实现数据 的高速传输。 乒乓缓存 区诱丽画I堡壹垒l—J缓存B ————]—=●一解码芯片ll厂——二iz— sA需道5同 AuE—认 =======dI FPGA 解码芯片IJ StratixEPIS25 B通道匕】 匦回罢 PCI接口 图4双目立体视觉硬件系统框图 Fig.4Theframeworkofbinocularstereovisionhardwaresystem 视频解码模块采用两块Philips公司的视频解码 芯片SAA7115¨1,该芯片不仅提供了9位低噪声的 ADC转换器,包括抗混叠滤波器、高性能的增强型梳 状滤波器等,同时还提供了高性能的缩放单元,用于 实现行、场的任意截取和缩放,以及亮度、对比度、饱 和度的控制电路。该芯片还支持多种视频 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 。 作为整个系统核心的视频处理模块,不仅是整 个系统的逻辑控制单元,更是立体视觉并行算法的 实现单元,因而FPGA的选择决定了整个系统性能。 算法需求则是FPGA选择的另一准则。如式(3)所 示,ZSSD算法需要大量的乘法和加减运算。Ahera 公司Stratix。”系列川EPl$25F780器件片内RAM总 容量达到1944576bits,具有10个DSP块,80个 9x9的嵌入式硬件乘法器,能满足立体匹配算法实 现的要求。 此外,为了充分利用FPGA的并行计算结构和 流水线特点,存储模块采用乒乓缓存结构。乒乓操 作的最大特点就是保证经过缓冲的数据流能无时间 停顿地送入处理模块,其非常适合对数据流进行流 水线处理,以及实现数据的无缝缓冲和实时处理。 PLX公司的PCI9054芯片¨1,是一块兼容 PCIv2.2 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 的32位33MHz总线接口控制器,其不 仅具有先进的数据流水线架构,包含两个DMA引 擎,还具有两个独立的DMA通道。其可编程局域 总线运行时钟可达50MHz。突发传输速度可达 132MB/s。实际运行过程中,图像传输速率约 46MB/s,可满足实时传输要求。 5 系统性能分析 两路PAL制视频信号经SAA7115芯片解码和缩 放,仅取奇数帧信号,每40ms生成一组大小为320× 240,8bit的立体图像对。系统时钟采用50MHz,匹配 窗口大小为9×9,视差最大搜索范围为32。 由于校正后图像的4个边缘有不同程度的扭曲, 因而为了避免边缘无像素值的点引起误配,这些行和 列不参与匹配。此外,图像下面的1/3部分是自主导 航车的车头,因此亦可无需匹配该部分像素点。 由于式(1)中的,(u;,移;)无规律可循,因而只有 在一帧图像采集完成后,才能开始校正程序,并且每 校正一个像素后,随即送入匹配模块。整个算法采 用AHDL硬件描述语言编写。实践表明,完成一个 像素的校正约需11个时钟周期,包括读取4个校正 系数和4个原图像素值。匹配过程中,每个像素值 约需4个时钟周期才能完成求和(包括计算平方和 及左、右图像的像素乘积和)。另外,匹配窗口的相 似性的比较可并行完成。整个算法所需时间约 16.9ms,PCI传输时间约6.4ms,能满足实时处理需 求。而相同的算法在双P4至强服务器上,并利用 OpenMP并行机制加速,其所需平均时间约34.6ms。 此外,由于SAD和SSD效果受左、右图像像素 亮度差异影响较大。ZSSD匹配算法可通过减去窗口 均值来克服这个问题,以增加匹配算法的鲁棒性。图 5为实验中的一帧实时输出结果,视差结果几乎没有 误配点,而且能很好地反映出路上的行人和车辆。长 期的实验结果表明,该方案算法效果好,速度快,不仅 具有较强的鲁棒性,而且整个硬件系统稳定、可靠。 霉藤 墨塑豳“讲一懦一墟一 万方数据 1170 中国图象图形学报 第10卷 2 3 (a)校正后左图像 (b)校正后右图像 (C)视差图 图5双目立体视觉系统输出结果 Fig.5Theresultofbinocularstereovisionsystem 参考文献(References) WuQX,McNeillSJ,PairmanD.Fastalgorithmsforcorrelation· relaxationtechniqueto determinecloudmotionfields[A].In: Proceedingsof DigitalImageComputing:Techniquesand Applications[C],Brisbane,Australia,1995:330~335. SunChangming.Afaststereomatchingmethod[A].In:Proceedings ofDi6tMImageComputing:TechniquesandApplications[C], Auckland,NewZealand,1997:95~100. ZhangZ Y.Flexiblecameracalibrationbyviewingaplanefrom unknownorientations[A].In:ProceedingsofIEEEInternational ConferenceonComputerVision[C],Corfu,Greece,1999, 1.666。673. 4 McDonnellMJ.Box—filteringtechniques[J].ComputerGraphicsand ImageProcessing,1981,17:65—70. 5 StefanoLDi.MarchionniM。MattocciaS,eta1.Afastarea-based stereomatchingalgorithm[A].In:Proceedingsofthe15thIAPR/ CIPPRSInternationalConferenceonVisionInterface[C],Calgary, Canada,2002:146~153. 6 PhilipsCorporation.SAA7115CVIP2Datasheet[M].Amsterdam, Holland:PhilipsCorporation,10October,2001. 7 AheraCorporation.Stratixdevicehandbook[M].SanJoseCA, USA:AlteraCorporation,July2003. 8 PLXCorporation.PCI9054databook[M].Sunnyvale,CA,USA: PLXCorporation,version2.1,January,2000. 万方数据 基于FPGA的双目立体视觉系统 作者: 周文晖, 杜歆, 叶秀清, 顾伟康, ZHOU Wen-hui, DU Xin, YE Xiu-qing, GU Wei- kang 作者单位: 浙江大学,信息与电子工程学系,杭州,310027 刊名: 中国图象图形学报 英文刊名: JOURNAL OF IMAGE AND GRAPHICS 年,卷(期): 2005,10(9) 被引用次数: 3次 参考文献(8条) 1.Wu Q X;McNeill S J;Pairman D Fast algorithms for correlationrelaxation technique to determine cloud motion fields 1995 2.Zhang Z Y Flexible camera calibration by viewing a plane from unknown orientations[外文会议] 1999 3.Sun Changming A fast stereo matching method 1997 4.PLX Corporation PCI 9054 data book 2000 5.Altera Corporation Stratix device handbook 2003 6.Philips Corporation SAA7115 CVIP2 Datasheet 2001 7.Stefano L Di;Marchionni M;Mattoccia S A fast area-based stereo matching algorithm 2002 8.McDonnell M J Box-filtering techniques 1981 引证文献(3条) 1.原魁.肖晗.何文浩 采用FPGA的机器视觉系统发展现状与趋势[期刊论文]-计算机工程与应用 2010(36) 2.应宏微.王蔚.宋加涛.邱雪娜.任小波 Digiclops立体视觉系统获取深度图像的工程方法[期刊论文]-电视技术 2007(2) 3.叶敏 基于视觉导航的实时图像处理及FPGA实现[学位论文]硕士 2006 本文链接:http://d.g.wanfangdata.com.cn/Periodical_zgtxtxxb-a200509016.aspx
本文档为【基于FPGA的双目立体视觉系统】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_509929
暂无简介~
格式:pdf
大小:391KB
软件:PDF阅读器
页数:6
分类:互联网
上传时间:2011-10-01
浏览量:116