《電子技術應用》
您所在的位置:首頁 > 顯示光電 > 設計應用 > 一種硬件加速OpenCV的圖像處理方法研究
一種硬件加速OpenCV的圖像處理方法研究
2015年微型機與應用第22期
張俊濤1,王園偉1,龐 多2
(1.陜西科技大學 電氣與信息工程學院,陜西 西安 710021; 2.北京航空航天大學 可靠性與系統工程學院,北京 10091)
摘要: 研究了一種基于Vivado HLS加速OpenCV程序的方法,其核心是利用Xilinx高層次綜合工具Vivado HLS,將C++編寫的OpenCV程序按照Vivado HLS處理規范進行修改,進而將代碼轉換為硬件描述語言,可快速生成IP核。結合Xilinx Zynq SoC架構和其視頻圖像處理方面的優勢,通過軟硬件協同的方法,實現OpenCV程序算法向高性能處理平臺Zynq SoC系統的移植和加速。該方法對圖像處理軟件設計的硬件化加速具有重要的應用價值。
Abstract:
Key words :

  摘  要: 研究了一種基于Vivado HLS加速OpenCV程序的方法,其核心是利用Xilinx高層次綜合工具Vivado HLS,將C++編寫的OpenCV程序按照Vivado HLS處理規范進行修改,進而將代碼轉換為硬件描述語言,可快速生成IP核。結合Xilinx Zynq SoC架構和其視頻圖像處理方面的優勢,通過軟硬件協同的方法,實現OpenCV程序算法向高性能處理平臺Zynq SoC系統的移植和加速。該方法對圖像處理軟件設計的硬件化加速具有重要的應用價值。

  關鍵詞開源計算機視覺;圖像處理;高層次綜合;加速

0 引言

  開源計算機視覺庫OpenCV是目前最受歡迎的開源計算機視覺軟件函數包[1],為計算機視覺的研究和圖像處理應用提供了很大的便利。然而,OpenCV程序算法都是在PC上通過軟件運行的方式實現,存在處理實時性差、適用范圍有限等問題,尤其是在高清圖像處理方面經常受到外部存儲器性能的限制,存儲帶寬經常成為其程序優化的瓶頸,并且存儲訪問也限制了功耗效率[2]。

  基于FPGA可用全硬件實現圖像處理算法,在嵌入式系統應用中得天獨厚,所以很值得嘗試利用可編程邏輯硬件來加速OpenCV。Vivado HLS是Xilinx最新開發的一種高級綜合工具,可以直接將C/C++編寫的算法程序進行仿真綜合成RTL,從而可以在FPGA上實現圖像處理算法。Vivado HLS具有專門的圖像處理庫,與OpenCV函數對應。

  本文主要研究高層次綜合工具Vivado HLS及Xilinx Zynq SOC全可編程處理平臺、Vivado圖像視頻函數庫,并通過高級綜合工具Vivado HLS將OpenCV轉化為RTL處理流程,在Xilinx Zynq SoC系列全可編程處理平臺上實現OpenCV程序算法的硬件加速。以邊緣檢測為例說明加速流程。

1 Zynq SOC與HLS

  Xilinx Zynq SOC是具有ARM+FPGA架構的全可編程處理器,集成了雙核Cortex-A9處理系統、FPGA邏輯和一些關鍵外設,提供了軟硬件和I/O可編程性。Zynq SOC具有64位高性能端口,可以實現對外部存儲器的訪問;還有32位通用端口實現控制寄存器的訪問,并且使用AXI4-Stream能更好地解決高清視頻流速度問題。處理子系統、FPGA邏輯和外設在Zynq SOC中的高度集成性確保了相對于采用分離式組建設計的系統而言提高數據傳輸速率,高度的軟硬件集成性能幫助設計人員實現極為高效的嵌入式視覺系統,降低功耗和材料清單成本。Zynq SoC視頻圖像處理架構如圖1所示[3]。為了全面利用Zynq SOC的諸多性能,Xilinx推出了以IP設計為中心的設計環境Vivado設計套件,該套件可加速集成和設計實現。而Vivado HLS作為該套件的一個重要組件,能幫助設計人員將采用C/C++語言的開發的算法編譯為RTL,以便在FPGA邏輯中運行。在圖像處理復雜算法中,通過C/C++創建算法原型,再利用Vivado HLS將算法或者算法的一部分編譯為RTL,進而確定哪些函數更適合在FPGA邏輯中運行,哪些函數適合在ARM上運行,這樣更能集中精力設計出最佳性能的基于Zynq SOC的視覺系統。利用高級綜合工具Vivado HLS開發的流程如圖2所示。

001.jpg

2 OpenCV算法程序到Vivado HLS程序的修改

  對OpenCV程序的硬件加速,實際上是將OpenCV轉化為可綜合的代碼,用可綜合的Vivado HLS視頻庫函數代替OpenCV函數。VIvado HLS具有專門支持OpenCV的視頻函數庫,這些函數可以代替OpenCV函數,并且能很好地綜合為RTl代碼,進而可以利用Zynq全可編程SoC的優勢實現圖像或者視頻的處理。

  2.1 OpenCV與Vivado HLS視頻函數庫

  Vivado HLS高級語言綜合工具包含了專門的OpenCV視頻庫,通過HLS庫中的函數代替原本OpenCV算法程序中的函數便可以完成由OpenCV到HLS的轉化,在Zynq上硬件化后,提高OpenCV應用效率[4]。

  OpenCV經常用到的數據類型有Mat、CvMat和IplImage[5],VivadoHLS視頻處理函數庫使用hls::Mat<>數據類型,這種類型用于模型化視頻像素流處理,等同于hls::steam<>流的類型,而不是OpenCV中在外部memory中存儲的matrix矩陣類型。因此,在用Vivado HLS實現OpenCV的設計中,需要將輸入和輸出HLS可綜合的視頻設計接口修改為Video stream接口,也就是采用HLS提供的Video接口可綜合函數,實現AXI4 Video stream到Vivado HLS中hls::Mat<>類型的轉換[6]。

  從軟件到RTL過程中,最關鍵的是接口問題,而HLS創建的硬件專注于硬件接口,Vivado HLS支持以相對較小的可以輕松創建AXI的從接口,從而使硬件加速器設計變得簡單。在視頻處理中,Xilinx通過AXI4流協議來實現像素通信,以更小的元素來傳輸視頻幀,可以不用知道視頻流的大小或者圖片的尺寸,大大簡化了視頻處理計算。

  2.2 OpenCV程序修改方法

  使用HLS加速OpenCV時,需要先用I/O函數提取FPGA實現部分,用可綜合的Vivado HLS函數庫函數代替OpenCV函數。在Zynq開發中使用Vivado HLS實現OpenCV的設計流程如下[7]:

  首先,開發OpenCV的應用,編寫源碼和測試文件,并且采用C++編譯器進行編譯、仿真和調試,產生可執行文件。

  其次,使用I/O函數抽取FPGA實現部分,并且使用可綜合的Vivado HLS庫函數代碼代替OpenCV函數的調用。其流程如圖3所示。

002.jpg

  最后,運用HLS生成的RTL代碼,在Vivado HLS工程中啟動co-sim,HLS工具自動重用OpenCV的測試激勵驗證產生的RTL代碼。在Xilinx的Vivado集成開發環境中做RTL集成和SOC/FPGA實現。

3 硬件加速OpenCV程序應用

003.jpg

  本文通過邊緣檢測算法來介紹硬件加速OpenCV應用。根據前面介紹的方法,利用OpenCV庫函數先設計出邊緣檢測算法原型,如圖4所示,并使用基于OpenCV的測試激勵驗證這個算法。再改寫前面設計好的OpenCV算法程序,按照視頻數據鏈的形式重新改寫,如圖5所示,這樣與HLS視頻庫處理機制相同,方便函數替換。最后將改寫好的OpenCV程序中的函數替換為HLS提供的相應功能的函數,如圖6所示,并且使用Vivado HLS工具綜合,綜合之后生成IP,在Vivado集成開發環境中以IP為核心完成設計,在SDK中利用原OpenCV測試激勵進行測試,基于邊緣設計應用測試結果如圖7所示。

4 結論

  使用高層次綜合工具Vivado HLS結合邏輯可編程FPGA或者Zynq SOC實現OpenCV在高分辨幀率的實時視頻處理是解決目前OpenCV軟件程序速度優化瓶頸問題的有效方法。采用Vivado HLS視頻庫能加快OpenCV函數向可綜合邏輯器件Zynq SOC或FPGA的映射。同樣,也可以利用Zynq SOC結合Vivado HLS工具的方法,來硬件加速其他計算機軟件設計。該方法對加速優化高速算法軟件設計具有一定的參考價值。

參考文獻

  [1] 張秀榮,孟和達來.數字圖像處理系統開發與研究[J].湖南師范大學學報(自然科學版),2011,34(6):35-39.

  [2] BRADSKI G, KACHLER A. Learning OpenCV(1st Edition)[M]. O′Reily Media, Inc., 2008.

  [3] Xilinx Inc.Accelerating OpenCV applications with zynq-7000all programmable SoC using Vivado HLS video libraries[Z]. http://www.xilinx.com/support/documentation/application_notes/xapp1167.pdf. 2014.

  [4] Xilinx Inc. Vivado design suite tutorial high-level synthesis[Z]. http://www.xilinx.com/support/documentation/sw_manuals/xilinx 2012_4/ug871-vivadohigh-level-synthesis-tutorial. pdf. 2014.

  [5] 郭暉,陳光.基于OpenCV的視頻圖像處理應用研究[J].微型機與應用,2010,29(21):14-20.

  [6] 叢秋波.Vivado設計套件將可編程系統集成度和實施速度提升4倍[J].電子設計技術,2012(6):22-24.

  [7] 何賓,張艷輝.Xilinx FPGA數字信號處理權威指南[M].北京:清華大學出版社,2014.


此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          欧美日本在线看| 国产日韩欧美麻豆| 国产精品伦理| 欧美成人精品一区二区三区| 欧美在线一二三区| 99国产精品视频免费观看一公开| 欧美午夜精品理论片a级大开眼界| 欧美高清自拍一区| 日韩午夜剧场| 欧美福利影院| 欧美日韩成人在线播放| 国产精品女人久久久久久| 亚洲小少妇裸体bbw| 亚洲第一天堂av| a91a精品视频在线观看| 欧美另类高清视频在线| 欧美三级视频在线观看| 亚洲美女黄网| 国产精品国产精品| 国产精品日日摸夜夜添夜夜av| 夜夜嗨网站十八久久| 欧美日韩色综合| 久热精品在线视频| 欧美一区高清| 亚洲一区二区三区乱码aⅴ蜜桃女| 极品少妇一区二区三区精品视频| 亚洲精品国产精品久久清纯直播| 最新日韩在线| 亚洲国产三级在线| 欧美伊人久久大香线蕉综合69| 亚洲第一在线综合在线| 在线亚洲精品福利网址导航| 国内免费精品永久在线视频| 欧美午夜精品久久久| 91久久久久久国产精品| 精品成人在线视频| 亚洲欧美日韩视频二区| 欧美看片网站| 嫩草影视亚洲| 欧美激情视频网站| 欧美在现视频| 激情另类综合| 欧美激情视频网站| 国产欧美精品xxxx另类| 亚洲一级二级在线| 国产精品igao视频网网址不卡日韩| 欧美日韩精品三区| 欧美午夜www高清视频| 国产精品私房写真福利视频| 国产精品99久久久久久久女警| 欧美激情aaaa| 亚洲第一综合天堂另类专| 国产亚洲va综合人人澡精品| 亚洲国产一区二区三区青草影视| 欧美成人免费全部| 午夜精品一区二区三区四区| 麻豆国产精品一区二区三区| 国产精品推荐精品| 一区二区三区精品在线| 国产亚洲精品aa午夜观看| 久久久综合激的五月天| 亚洲欧美在线磁力| 国内在线观看一区二区三区| 国产在线不卡| 欧美日韩播放| 国产一区二区三区久久久久久久久| 亚洲国产欧美日韩另类综合| 欧美性理论片在线观看片免费| 国产精品草草| 在线观看欧美一区| 亚洲国产日韩欧美综合久久| 亚洲精选在线| 亚洲七七久久综合桃花剧情介绍| 国产专区一区| 国产精品ⅴa在线观看h| 国产精品久久午夜夜伦鲁鲁| 在线播放日韩| 亚洲欧洲一区二区三区| 欧美高清你懂得| 久久不见久久见免费视频1| 久久综合色一综合色88| 国产精品尤物福利片在线观看| 欧美成人午夜免费视在线看片| 亚洲精品乱码| 久久躁日日躁aaaaxxxx| 久久国产主播| 久久激情五月丁香伊人| 国产一区二区高清不卡| 欧美另类videos死尸| 亚洲免费一区二区| 午夜精品福利一区二区三区av| 欧美日韩黄色大片| 免费成人av资源网| 国产精品欧美久久久久无广告| 亚洲欧美日韩精品久久久| 欧美精品少妇一区二区三区| 欧美日韩国产成人| 夜夜精品视频一区二区| 美女日韩在线中文字幕| 欧美裸体一区二区三区| 欧美风情在线| 一区二区电影免费在线观看| 亚洲人成网站999久久久综合| 亚洲一区二区三区精品动漫| 国产农村妇女毛片精品久久莱园子| 欧美一区二区视频网站| 欧美国产日韩在线观看| 国产精品视频免费在线观看| 亚洲电影免费在线| 亚洲视频在线二区| 国产一区高清视频| 国产精品一区二区在线观看不卡| 久久在线91| 欧美一区二区在线观看| 欧美精品免费视频| 国产精品久久久久一区| 亚洲字幕一区二区| 国产日韩欧美在线播放不卡| 久久成人国产| 亚洲狼人综合| 国产伦精品一区二区三区高清版| 久久在线精品| 亚洲国产精品第一区二区三区| 亚洲一区二区视频在线| 久久精品人人做人人爽电影蜜月| 欧美国产欧美亚洲国产日韩mv天天看完整| 最新中文字幕一区二区三区| 欧美a一区二区| 亚洲深夜福利| 99精品欧美一区二区三区综合在线| 国产精品麻豆成人av电影艾秋| 国产精品第三页| 国产精品亚洲综合天堂夜夜| 国产拍揄自揄精品视频麻豆| 午夜精品视频| 欧美激情免费在线| 亚洲欧美中文日韩在线| 国产精品av久久久久久麻豆网| 久久午夜影视| 欧美日韩高清在线观看| 狠狠色综合网站久久久久久久| 亚洲精美视频| 好看的亚洲午夜视频在线| 久久国产精品亚洲va麻豆| 一区二区三区国产盗摄| 久久婷婷成人综合色| 欧美成人官网二区| 老司机免费视频久久| 另类综合日韩欧美亚洲| 亚洲一区二区三区影院| 亚洲国产一区二区a毛片| 艳妇臀荡乳欲伦亚洲一区| 99xxxx成人网| 欧美国产激情二区三区| 91久久久一线二线三线品牌| 香蕉视频成人在线观看| 亚洲国产精品悠悠久久琪琪| 国产日韩欧美视频在线| 在线观看福利一区| 亚洲欧美日本在线| 久久噜噜噜精品国产亚洲综合| 亚洲一区二区三区中文字幕在线| 99日韩精品| 国产精品初高中精品久久| 激情欧美日韩一区| 媚黑女一区二区| 久久久久亚洲综合| 欧美日韩1区2区| 欧美精品在线观看| 激情六月综合| 亚洲一区影院| 国产日韩一区在线| 一区一区视频| 亚洲精品一区在线观看香蕉| 欧美二区乱c少妇| 夜夜嗨网站十八久久| 在线观看一区欧美| 欧美一级成年大片在线观看| 亚洲视频欧美在线| 亚洲性xxxx| 在线成人免费视频| 欧美特黄a级高清免费大片a级| 久久伊人一区二区| 亚洲欧洲日本在线| 欧美成人xxx| 亚洲精品日韩激情在线电影| 国产精品美女久久久免费| 欧美亚洲尤物久久| 亚洲激情自拍| 国产精品国产三级国产专播品爱网| 亚洲女优在线| 国产精品久久久久aaaa| 国产亚洲一本大道中文在线| 国产日韩欧美另类| 午夜国产精品视频免费体验区| 欧美三级在线| 午夜精品一区二区三区电影天堂| 在线一区日本视频| 久久一区免费| 欧美日韩午夜视频在线观看| 噜噜噜躁狠狠躁狠狠精品视频| 欧美精品一区三区在线观看| 日韩一级片网址| 欧美日韩国产不卡| 一区二区自拍| 国产主播在线一区| 亚洲网站在线观看| 性久久久久久久久| 久久精品国语| 极品尤物一区二区三区| 揄拍成人国产精品视频| 国产日韩一区二区| 国产美女搞久久| 久久国产精品久久久久久电车| 国产精品亚洲第一区在线暖暖韩国| 久久伊人免费视频| 亚洲毛片网站| 久久久久99精品国产片| 激情一区二区三区| 欧美精品久久久久久久免费观看| 国产精品日本精品| 免费不卡欧美自拍视频| 亚洲最新中文字幕| 欧美日韩a区| 国模叶桐国产精品一区| 欧美国产视频一区二区| 亚洲精品少妇| 亚洲社区在线观看| 亚洲一区二区影院| 猛男gaygay欧美视频| 国产亚洲女人久久久久毛片| 亚洲欧美综合另类中字| 久久久免费观看视频| 尤物九九久久国产精品的特点| 国产精品播放| 国产一区二区电影在线观看| 欧美吻胸吃奶大尺度电影| 国产精品久久久久久妇女6080| 欧美日韩伦理在线| 欧美一区二区精美| 销魂美女一区二区三区视频在线| 米奇777在线欧美播放| 欧美在线播放高清精品| 欧美色另类天堂2015| 欧美黄色一区| 亚洲视频香蕉人妖| 女人色偷偷aa久久天堂| 欧美一区三区三区高中清蜜桃| 亚洲美女视频| 在线激情影院一区| 午夜精彩国产免费不卡不顿大片| 裸体一区二区三区| 136国产福利精品导航网址应用| 亚洲日本aⅴ片在线观看香蕉| 99爱精品视频| 亚洲免费视频观看| 欧美激情综合五月色丁香小说| 欧美激情在线| 欧美96在线丨欧| 91久久精品一区二区别| 在线观看国产精品网站| 欧美成年人网站| 欧美日韩大片一区二区三区| 一区二区免费在线观看| 亚洲欧美在线磁力| 国语精品一区| 欧美肉体xxxx裸体137大胆| 欧美在线视频网站| 欧美日韩国产成人高清视频| 日韩天天综合| 一区二区三区在线视频观看| 国产精品视频免费| 国产精品美女久久| 国产精品每日更新在线播放网址| 国产精品午夜久久| 激情一区二区三区| 亚洲高清在线视频| 欧美精品免费视频| 国产一区二区三区免费在线观看| 欧美日韩综合| 篠田优中文在线播放第一区| 91久久精品视频| 国产精品男gay被猛男狂揉视频| 一区二区不卡在线视频 午夜欧美不卡'| 国产亚洲a∨片在线观看| 久久中文欧美| 亚洲免费福利视频| 黄色亚洲在线| 亚洲在线日韩| 国产精品草莓在线免费观看| 欧美日韩国产一区二区三区| 亚洲欧美视频| 亚洲激情婷婷| 久久www免费人成看片高清| 欧美精品一区二区三区高清aⅴ| 欧美成人r级一区二区三区| 国产日韩精品在线播放| 狠狠入ady亚洲精品经典电影| 久久久久久久999精品视频| 黄色亚洲精品| 国产伦精品一区二区三区| 午夜欧美不卡精品aaaaa| 亚洲一区二区在线播放| 狠狠久久五月精品中文字幕| 91久久国产自产拍夜夜嗨| 亚洲欧美99| 亚洲国产aⅴ天堂久久| 一本久道综合久久精品| 免费观看一级特黄欧美大片| 免费视频一区| 欧美午夜精品久久久久免费视| 午夜精品影院| 午夜精品久久久久久久99樱桃| 欧美a级理论片| 国产精品成人观看视频国产奇米| 国产亚洲欧美日韩美女| 欧美日韩亚洲一区三区| 久久夜色精品国产噜噜av| 99国产精品久久久久老师| 欧美电影免费观看高清| 欧美亚洲一区二区三区| 欧美激情精品久久久久久大尺度| 狂野欧美激情性xxxx| 欧美一区1区三区3区公司| 亚洲精品123区| 136国产福利精品导航网址| 一区二区福利| 欧美三级不卡|