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

基于FPGA和OpenCL硬件加速的運動物品識別系統(tǒng)

2019-01-25 12:00:52
傳感器世界 2018年11期
關(guān)鍵詞:系統(tǒng)

江漢大學(xué),湖北武漢 430056

一、引言

1、研究背景及意義

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

2012年11月,Altera公司公開展示一款基于FPGA的OpenCL SDK,這種開放式標(biāo)準(zhǔn)可以讓開發(fā)者在編程實現(xiàn)過程中用C/C++語言來代替?zhèn)鹘y(tǒng)的硬件編程語言,這樣無需再深入思考FPGA底層的HDL語言設(shè)計,大大簡化編程實現(xiàn)過程,將更多的時間放在并行加速的優(yōu)化設(shè)計上[2]。FPGA和OpenCL結(jié)合的優(yōu)勢如下:

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

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

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

(4)設(shè)計過程中,OpenCL將相應(yīng)的高級描述轉(zhuǎn)化為流水線,可移植性強。

2、OpenCL簡介

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

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

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

(2)OpenCL在FPGA上的實現(xiàn)

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

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

接下來,本文將介紹基于FPGA與OpenCL所設(shè)計的一套高速傳送帶上的物品分類統(tǒng)計系統(tǒng),將從系統(tǒng)原理、結(jié)構(gòu)功能、軟硬件實現(xiàn)以及測試數(shù)據(jù)及其分析進行闡述。

二、系統(tǒng)介紹

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

1、系統(tǒng)設(shè)計

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

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

2、系統(tǒng)功能

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

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

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

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

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

三、硬件實現(xiàn)

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

(1)硬件模塊

SDRAM芯片采用LVCMOS信號標(biāo)準(zhǔn),可以進行數(shù)據(jù)的存儲提取。

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

PCI-E接口進行UP2和C5P開發(fā)板間的通信。PCI-E系統(tǒng)是由FPGA系統(tǒng)和PC系統(tǒng)兩個主要組件組成。FPGA系統(tǒng)基于Avalon-MM Cyclone V Hard IP for PCI Express 和 Modular SGDMA 開發(fā)。PC端的應(yīng)用軟件是Terasic基于Intel PCI-E內(nèi)核模式驅(qū)動開發(fā)的。

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

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

四、軟件實現(xiàn)

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

五、測試數(shù)據(jù)及分析

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

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

表1 物體識別實時性測試

表2 物體識別準(zhǔn)確性測試表

六、總結(jié)

本文介紹了OpenCL的并行運算架構(gòu),研究了并行計算的模型,以及其在FPGA上的實現(xiàn)方式,最后基于FPGA與OpenCL的硬件加速設(shè)計了一套在高速傳送帶上的商品分類識別系統(tǒng),并對測試結(jié)果進行了分析,系統(tǒng)的準(zhǔn)確性達(dá)到了預(yù)期的目標(biāo)。該系統(tǒng)進一步的完善在于,F(xiàn)PGA開發(fā)板會將PCI-E傳來的圖片數(shù)據(jù)處理后在FPGA開發(fā)板上進行LED和數(shù)碼管的顯示,將顯示信號作為控制信號,搭配相應(yīng)的機械臂,控制機械臂抓取移動商品,實現(xiàn)在高速傳送帶上對商品的分類統(tǒng)計工作。

猜你喜歡
系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
基于UG的發(fā)射箱自動化虛擬裝配系統(tǒng)開發(fā)
半沸制皂系統(tǒng)(下)
FAO系統(tǒng)特有功能分析及互聯(lián)互通探討
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統(tǒng) 德行天下
PLC在多段調(diào)速系統(tǒng)中的應(yīng)用
主站蜘蛛池模板: 亚洲成人一区二区三区| 中文毛片无遮挡播放免费| 欧美成人影院亚洲综合图| 国产中文一区二区苍井空| 国产大片喷水在线在线视频| 欧美亚洲网| 日本三级精品| 伊人成色综合网| 欧美第九页| 2022国产91精品久久久久久| 91精品国产情侣高潮露脸| 热思思久久免费视频| 国产清纯在线一区二区WWW| 午夜三级在线| 亚洲精品午夜天堂网页| 狂欢视频在线观看不卡| 欧美激情网址| 亚洲成人精品在线| 免费欧美一级| 国产一二三区视频| 亚洲欧美一区在线| 97无码免费人妻超级碰碰碰| 在线a视频免费观看| 欧美色视频在线| 91精品最新国内在线播放| 日本a级免费| 久久黄色视频影| 日本午夜视频在线观看| 5555国产在线观看| 婷婷综合缴情亚洲五月伊| 99视频精品全国免费品| 国产成人亚洲毛片| 成人午夜久久| 国产美女一级毛片| 永久免费无码日韩视频| 国产精品尤物铁牛tv | 又猛又黄又爽无遮挡的视频网站| a网站在线观看| 亚洲视频无码| AV熟女乱| 青青操国产| 久久精品无码中文字幕| 国产xxxxx免费视频| 日韩av手机在线| 欧美日韩一区二区三| 色香蕉影院| 98超碰在线观看| a亚洲视频| 欧美色丁香| 亚洲AV无码久久精品色欲| 蜜臀AV在线播放| 亚洲无码日韩一区| av尤物免费在线观看| 91麻豆国产视频| 国产导航在线| 午夜视频日本| 亚洲一区国色天香| 在线观看网站国产| 久久综合伊人 六十路| 中字无码av在线电影| 99久久亚洲综合精品TS| 国产精品一线天| 成人韩免费网站| 亚洲人成网站日本片| 亚洲av色吊丝无码| 日韩一区二区三免费高清| 国产精品极品美女自在线网站| 综合色天天| 亚洲无码视频图片| 97国产精品视频自在拍| 国产精品黑色丝袜的老师| 五月天婷婷网亚洲综合在线| 亚洲人成高清| 日本国产精品| 日本免费福利视频| 亚洲乱伦视频| 幺女国产一级毛片| 一级在线毛片| 国产色爱av资源综合区| 国产乱论视频| 日本五区在线不卡精品| 无码人妻免费|