999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA和OpenCL硬件加速的運動物品識別系統

2019-01-25 12:00:52
傳感器世界 2018年11期
關鍵詞:系統

江漢大學,湖北武漢 430056

一、引言

1、研究背景及意義

此系統的開發是為了應對現在日益龐大的數據處理量需求,加速數據處理效率。從最初的單核CPU,發展到后來的多核CPU,雖然處理速率有了顯著的增強,但功耗較大,且從軟硬件協同的角度上來看,在并行操作過程中,調整比較困難,再發展到如今利用CPU、GPU、DSP和FPGA來互相搭配,實現多內核運算,大大降低了功耗,而不足之處在于其算法邏輯的設計是一道不可避免的難題[1]。

2012年11月,Altera公司公開展示一款基于FPGA的OpenCL SDK,這種開放式標準可以讓開發者在編程實現過程中用C/C++語言來代替傳統的硬件編程語言,這樣無需再深入思考FPGA底層的HDL語言設計,大大簡化編程實現過程,將更多的時間放在并行加速的優化設計上[2]。FPGA和OpenCL結合的優勢如下:

(1)比較于CPU,GPU等處理器,具有大幅度提高性能,功耗低的優勢;

(2)基于C的編程環境,具有靈活的可編程性和并行執行能力;

(3)降低在提取線程級并行處理操作在FPGA中實現以提高性能時的難度;

(4)設計過程中,OpenCL將相應的高級描述轉化為流水線,可移植性強。

2、OpenCL簡介

OpenCL(Open Computer Language)是一種開放性的語言標準,能夠為異構平臺提供編寫程序的框架[3]。最早于2008年由蘋果公司提出,希望能夠為軟硬件的協同設計提供更多的方式。OpenCL支持基于C/C++的編程環境的代碼開發,并且可以很好地應用于CPU、GPU、DSP和FPGA系統中,除此之外,支持相應的API,并通過PCI-E協議實現硬件與主機的數據交互。

(1)OpenCL架構及其模型分析

OpenCL架構由平臺模型、執行模型、內存模型、編程模型四個模型組成[4]。平臺模型架構主要由一個主機和多個OpenCL計算設備構成,每個設備由一個或多個計算單元組成,每個計算單元又包含多個處理元件。所有通過OpenCL執行的操作都是由主機發出,控制處理元件完成相應計算工作,再反饋給主機。執行模型的核心工作在于操作相應的kernels的運行。通過定義索引,賦予全局以及局部ID來不斷切割任務,創建相應工作組。內存模型是通過私有內存、本地內存、常量內存以及全局內存來完成內存空間的管理操作[5]。最后,編程模型是建立在OpenCL提供了基于任務分割以及數據分割的并行運算機制上,在運算過程中,每一個空間節點和內存中實例的對象相對應,將算法不斷細化、切割,且每個線程相互之間保持獨立[6]。開發者只需要按照需求定義并行運算數據量,具體操作交由OpenCL實現分配。

(2)OpenCL在FPGA上的實現

FPGA可以根據用戶需求制定特定的硬件設計模塊,具有優良的并行能力[7]。往往在一塊FPGA系統中,存在著上百萬的邏輯單元,通過這些邏輯電路實現對應的邏輯功能。除此之外,還具有上千的DSP模塊,用來實現算法加速等功能[8]。

Alter的OpenCL SDK支持異構平臺的并行開發環境,并不像傳統開發需要在固定的處理器上完成,而是將程序轉化為FPGA上的硬件模塊,將其作為FPGA的配置數據的形式下輸出。在操作過程中,PC會將寫入這些數據的FPGA進行內核處理。從上文的闡述不難看出開發者在編程過程中可以在不具備硬件設計基礎的情況下得到FPGA的配置數據,用C語言完成中間的設計操作。編譯器編譯文件過程如圖1所示。

接下來,本文將介紹基于FPGA與OpenCL所設計的一套高速傳送帶上的物品分類統計系統,將從系統原理、結構功能、軟硬件實現以及測試數據及其分析進行闡述。

二、系統介紹

在現代工業領域,傳送帶被廣泛運用于各類商品的包裝、檢測等工作中。傳統的傳送帶應用一般處于低速狀態,物體運動速度很低,配合人工輔助操作來實現,因此這種方法的效率較低,處理速度較慢,且需要人工的參與,逐漸變得不太適合于現今這種物流量大、效率需求高的實際生產需求。而如果加快傳送帶速度,人工輔助操作就不能與高速運動下的物體相適應,人眼甚至不能捕捉到物體準確的信息,更無法對其進行判斷與操作。如果計算機和機器可以代替人工操作,便可以實現在高速傳送帶上的實際化操作,從而有效地完成各種實際應用,滿足提高效率的需求。為了保證高速識別,本文基于FPGA和OpenCL技術設計了一款高速傳送帶的運動物品識別系統,將傳統識別的傳送帶速度由0.5m/s提升至2.5m/s。

1、系統設計

本文所設計的系統由五部分組成:用于捕獲圖像數據的500萬像素的高速工業相機;用于匹配處理圖像數據的UP2開發板;用于支持FPGA和OpenCL進行硬件加速的C5P開發板;用于顯示結果并進行語音播報的QT顯示界面;專門定制的3m×1m×0.5m的高速傳送帶,如圖2所示。

物品在高速傳送帶上經過工業相機時,被相機捕獲相應圖像數據,以. jpg的格式傳給UP2。UP2進行圖像的處理和匹配,在處理過程中先通過OpenCV進行物體特征識別,物體特征包括形狀、大小、紋理等標志位,同時,UP2將部分數據通過PCI-E協議傳送給C5P,C5P對獲得的圖像數據交由硬件加速模塊進行硬件加速處理,再將處理后的數據返還給UP2,當檢測到正確的樣本,特征標志位改變,UP2就將數據通過HDMI轉VGA通道和AUX交互給揚聲器進行語音播報,并將匹配的結果顯示在QT界面上。

2、系統功能

系統功能如圖3所示,其主要功能有以下幾個方面:

(1)采集信息:本系統使用500萬像素高速工業相機捕獲樣本在傳送帶上的圖像信息;

(2)硬件加速處理圖像數據:結合OpenCL與FPGA對來自UP2的圖像數據進行硬件加速處理;

(3)高速識別:本系統借助OpenCV實現了實時物體特征識別。通過OpenCV,選取擴展的LBP特征,結合Adaboosting算法進行樣本檢測以及分類器的訓練,然后通過實驗測試分析不同分類器樣本庫大小和正負樣本質量對實驗結果的直接影響,最終通過實驗比較選取最好的樣本庫;

(4)基于QT Creater結果顯示:QT提供了信號槽機制,可以很好地降低耦合,提升代碼的復用性,所以選用其作為顯示界面。上面增設五個功能按鈕,分別為預覽、計數、開始、停止以及語音播報的功能。同時QT的開源環境以及可移植性強的特點也方便于后期的跨平臺開發[9]。

三、硬件實現

硬件設計如圖4所示,主要包括UP2嵌入式開發板、C5P開發板、揚聲器以及顯示屏四個模塊。

(1)硬件模塊

SDRAM芯片采用LVCMOS信號標準,可以進行數據的存儲提取。

C5P開發板有2個七段數碼顯示管,七段數碼管的每個引腳(共陽模式)均連接到 Cyclone V FPGA,還有4個由FPGA直接控制的LED。每一個LED都由Cyclone V FPGA 獨立驅動,驅動相關的引腳至高電平或低電平來打開或關閉LED。FPGA輸出低電壓的時候,對應的字碼段點亮,反之則熄滅,輸出的低電平信號可作為后期輸出給機械臂的控制信號。

PCI-E接口進行UP2和C5P開發板間的通信。PCI-E系統是由FPGA系統和PC系統兩個主要組件組成。FPGA系統基于Avalon-MM Cyclone V Hard IP for PCI Express 和 Modular SGDMA 開發。PC端的應用軟件是Terasic基于Intel PCI-E內核模式驅動開發的。

(2)FPGA結合OpenCL的硬件加速模塊

FPGA具有實現宏函數的嵌入式陣列以及實現普通功能的邏輯陣列,具有很強的并行運算能力[6],但實現操作過程中往往不可避免地需要使用比較繁瑣的HDL語言,而OpenCL就為其提供了一種開放式標準,用純C語言來代替HDL,這樣大大簡化了編程實現過程。C環境下OpenCV的一些識別算法程序,例如積分圖像算法,在需要計算多個區域的直方圖的時候,可以用來提高統計圖像子區域像素的效率。這種算法在圖像模糊、邊緣提取、對象檢測的時候可以極大地降低計算量,所以在OpenCV識別過程中會被反復調用執行。我們將這類算法通過OpenCL將其轉化為FPGA上的硬件模塊,將這些硬件模塊進行并行運算,從而加速圖像數據處理。具體實現操作如下:利用Quartus工程編譯最終用于配制FPGA的.sof文件,將.sof文件轉化為.jic文件,通過JTAG端口借助串行Flash引導功能將.jic文件燒寫到EPCQ器件中進行編程固化。

四、軟件實現

由于傳送帶上的貨物檢測主要以邊緣、線段為主,所以采取LBP特征進行分類,并通過Adaboosting算法來訓練分類器,進行樣本的檢測以及可視化分析。Adaboosting算法是一種迭代算法,其核心思想通過不斷改變權值,最終按照權值將弱分類器組合為一個最強分類器,其原理就不再贅述[10]。識別流程如圖5所示。

五、測試數據及分析

能否快速正確識別物體是整個系統能夠正常運行的關鍵。為測試物體框架的實時性和準確性,構建以下測試框架。首先測試系統實時性,把樣本A、B、C與其他物體放在傳送帶上,改變傳送帶速度,記錄系統是否正確檢測到相應樣本,數據如表1所示;其次測試系統識別準確性,將各種各樣的負樣本放在傳送帶上,記錄系統誤判比,如表2所示。

對圖表進行處置分析,可知物體識別準確性與負樣本數目、傳送帶速度有關。當負樣本數目足夠時,在通過OpenCL加速后系統可以在比較理想的識別率的基礎上對處于2.5m/s的高速傳送帶上的物品進行識別以及分類,該系統符合設計初衷。

表1 物體識別實時性測試

表2 物體識別準確性測試表

六、總結

本文介紹了OpenCL的并行運算架構,研究了并行計算的模型,以及其在FPGA上的實現方式,最后基于FPGA與OpenCL的硬件加速設計了一套在高速傳送帶上的商品分類識別系統,并對測試結果進行了分析,系統的準確性達到了預期的目標。該系統進一步的完善在于,FPGA開發板會將PCI-E傳來的圖片數據處理后在FPGA開發板上進行LED和數碼管的顯示,將顯示信號作為控制信號,搭配相應的機械臂,控制機械臂抓取移動商品,實現在高速傳送帶上對商品的分類統計工作。

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 国产精鲁鲁网在线视频| 91av国产在线| 亚洲人成网站观看在线观看| 无码AV高清毛片中国一级毛片 | 91黄色在线观看| 国产精品免费p区| 精品国产毛片| 久久99国产综合精品1| 五月婷婷激情四射| 国产亚洲美日韩AV中文字幕无码成人| 尤物视频一区| 国产jizz| 精品第一国产综合精品Aⅴ| 香蕉网久久| 国产精选小视频在线观看| 伊人欧美在线| 亚洲国产av无码综合原创国产| 免费看一级毛片波多结衣| 国产白浆视频| 成人噜噜噜视频在线观看| 色AV色 综合网站| 国产香蕉97碰碰视频VA碰碰看 | 99精品一区二区免费视频| 99久久精品免费看国产电影| 美女免费精品高清毛片在线视| 欧美亚洲第一页| 99激情网| 国产香蕉在线| 欧美日韩另类在线| 久久香蕉国产线看观看亚洲片| 在线国产你懂的| 全免费a级毛片免费看不卡| 午夜丁香婷婷| 成人久久精品一区二区三区| 2021国产精品自产拍在线| 国产精品无码作爱| 天天操天天噜| 亚洲日本韩在线观看| www.亚洲国产| 色综合手机在线| 亚洲中文字幕国产av| 亚洲成人免费看| 欧美日韩成人在线观看 | 亚洲日韩高清在线亚洲专区| 国产精品偷伦在线观看| 国产麻豆另类AV| 黄色网址手机国内免费在线观看| 日韩av高清无码一区二区三区| 韩国福利一区| 亚洲精品人成网线在线| 91成人免费观看在线观看| 国产精品亚洲欧美日韩久久| 一本大道视频精品人妻| 亚洲精品手机在线| 日韩不卡高清视频| 91精品免费久久久| 免费黄色国产视频| 欧美日韩一区二区在线免费观看| 91在线播放免费不卡无毒| 久久这里只有精品23| 久久久久免费看成人影片 | 亚洲日本精品一区二区| 国产高清国内精品福利| 谁有在线观看日韩亚洲最新视频| 亚洲国产成人精品无码区性色 | 18禁高潮出水呻吟娇喘蜜芽| 无码日韩视频| 99热这里只有成人精品国产| 久久精品视频一| 91久久偷偷做嫩草影院精品| 免费看a级毛片| 色精品视频| 欧美视频二区| 国内熟女少妇一线天| 免费视频在线2021入口| 57pao国产成视频免费播放| 成人韩免费网站| 色婷婷国产精品视频| 国产精品女主播| 久久精品中文字幕免费| 91破解版在线亚洲| 亚洲中文精品久久久久久不卡|