国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于NVIDIA TX2模塊的雙目視覺(jué)信號(hào)采集系統(tǒng)設(shè)計(jì)

2021-03-24 02:46:26李鵬飛王云飛盧榮勝
儀表技術(shù)與傳感器 2021年2期
關(guān)鍵詞:PC機(jī)雙目中心線

李鵬飛,王云飛,盧榮勝

(合肥工業(yè)大學(xué)儀器科學(xué)與光電工程學(xué)院,安徽合肥 230009)

0 引言

近年來(lái),人們對(duì)圖像圖形信息的要求日益增高,主要表現(xiàn)為三維圖像圖形信息的獲取[1]。物體形狀測(cè)量是對(duì)物體的定位,三維輪廓測(cè)量技術(shù)在逆向、產(chǎn)品設(shè)計(jì)、目標(biāo)檢測(cè)等領(lǐng)域應(yīng)用廣泛[2-5],涂膠工藝是汽車在涂裝車間的重要工藝,隨著各種新型車引入,涂膠工藝變得越為復(fù)雜[6]。傳統(tǒng)涂膠軌跡采用人工抽檢的方法,用游標(biāo)卡尺測(cè)量其寬度、高度等三維信息[7]。該方法測(cè)量不準(zhǔn)確,容易使膠體變形,效率低。趙宇龍等[8-10]使用Predator 3D來(lái)檢測(cè)汽車膠體,效果不錯(cuò),但其使用的視覺(jué)檢測(cè)系統(tǒng)價(jià)格昂貴、匹配性差,沒(méi)有做到自主研發(fā)。本文從實(shí)際應(yīng)用出發(fā),設(shè)計(jì)搭建了一套膠體三維檢測(cè)的信號(hào)采集系統(tǒng),其基于小圖像的采集、傳輸中心線方法具有速度快、效率高、結(jié)構(gòu)簡(jiǎn)單等優(yōu)勢(shì),在復(fù)雜環(huán)境下也可以有高的檢測(cè)精度[11]。本文分析了雙目視覺(jué)信號(hào)采集方案設(shè)計(jì),對(duì)系統(tǒng)圖像采集、處理、發(fā)送進(jìn)行介紹,并對(duì)關(guān)鍵問(wèn)題和解決辦法進(jìn)行了闡述。

1 總體設(shè)計(jì)方案

雙目視覺(jué)信號(hào)采集系統(tǒng)基于TX2的Linux系統(tǒng)平臺(tái),采用2個(gè)雙目板級(jí)相機(jī)提供了4路相機(jī)的采集,同時(shí)每路相機(jī)配備一個(gè)線激光器,以此形成了4路線結(jié)構(gòu)光采集系統(tǒng),滿足了實(shí)時(shí)雙目采集的要求。系統(tǒng)結(jié)構(gòu)圖如圖1所示。采集系統(tǒng)結(jié)構(gòu)包括待采集層、圖像采集層、圖像處理層、PC機(jī)處理層。待采集層為線結(jié)構(gòu)光打射在物體上;圖像采集層包括4路相機(jī),工作模式為其中2路相機(jī)對(duì)線結(jié)構(gòu)光進(jìn)行拍攝采集;圖像處理層將采集圖像中的線激光條提取中心線;PC機(jī)處理層為PC機(jī)通過(guò)以太網(wǎng)接收?qǐng)D像處理層發(fā)送的中心線坐標(biāo)。系統(tǒng)工作流程圖如圖2所示。采集的工作流程為:在TX2系統(tǒng)下使用設(shè)計(jì)的界面設(shè)置相機(jī)采集參數(shù)以PWM觸發(fā)其中一個(gè)雙目板級(jí)相機(jī)。每采集1幀圖像后會(huì)對(duì)圖像中的線激光條提取中心線。若TX2與PC機(jī)通過(guò)以太網(wǎng)建立連接,則將提取的中心線坐標(biāo)存儲(chǔ)到一定大小后以數(shù)據(jù)包的形式發(fā)給PC機(jī)。PC機(jī)接收到數(shù)據(jù)后并進(jìn)行拆包操作,將每幀圖像的中心線坐標(biāo)拆分出來(lái),等待后續(xù)處理。

圖1 信號(hào)采集系統(tǒng)結(jié)構(gòu)

圖2 系統(tǒng)工作流程圖

2 系統(tǒng)硬件介紹

采集系統(tǒng)核心使用了NVIDIA TX2,其內(nèi)部有四核ARM A57以及256顆CUDA核心。豐富的內(nèi)核資源滿足了系統(tǒng)采集高幀率的要求,CUDA核心為后續(xù)提高圖像處理速度提供了保障。千兆以太網(wǎng)可以實(shí)時(shí)地將采集信號(hào)發(fā)送至上位機(jī)。2路USB3.0和2路USB2.0支持了2個(gè)板級(jí)相機(jī)以及鍵盤鼠標(biāo)的連接。HDMI滿足了連接顯示器的要求。

相機(jī)使用了板級(jí)工業(yè)相機(jī)VEN-134-90U3M-D NIR,其通過(guò)FPC軟排線靈活地與2個(gè)成像板連接。TX2使用一個(gè)引腳輸出PWM對(duì)相機(jī)進(jìn)行觸發(fā)采集。此外TX2通過(guò)USB3.0與板級(jí)相機(jī)連接進(jìn)行圖像傳輸。線激光器光面角度為30°,工作距離為150 mm,線寬為1 mm。

3 相機(jī)采集設(shè)計(jì)

相機(jī)工作模式分3種:連續(xù)采集、軟觸發(fā)采集、外觸發(fā)采集。本系統(tǒng)采用了外觸發(fā)采集模式。使用1個(gè)輸出PWM的引腳以及1個(gè)USB3.0口即可對(duì)雙目板級(jí)相機(jī)進(jìn)行觸發(fā)采集。雙目相機(jī)采集的圖像通過(guò)1個(gè)USB口同步傳輸至TX2系統(tǒng)。4路相機(jī)采集使用了2個(gè)PWM引腳以及2個(gè)USB3.0口,極大地節(jié)省了接口資源,縮小了系統(tǒng)的體積。

3.1 雙目相機(jī)采集參數(shù)設(shè)置

相機(jī)采集參數(shù)眾多,其中包括圖像分辨率、數(shù)據(jù)格式、采集模式、觸發(fā)模式、曝光、增益、帶寬等[12]。該系統(tǒng)設(shè)計(jì)了圖像分辨率、采集模式、觸發(fā)模式、曝光、幀率、帶寬等參數(shù),雙目相機(jī)的參數(shù)統(tǒng)一設(shè)置,使用相機(jī)自帶SDK開(kāi)發(fā)設(shè)計(jì)。參數(shù)設(shè)置如表1所示。系統(tǒng)中相機(jī)的采集模式為連續(xù)采集。觸發(fā)模式為外部觸發(fā),使用TX2一個(gè)引腳輸出PWM給相機(jī)上升沿連續(xù)觸發(fā)采集。幀率設(shè)置為140 fps。為了滿足相機(jī)采集幀率,其對(duì)應(yīng)的曝光時(shí)間設(shè)置為2 ms。圖像分辨率通過(guò)ROI設(shè)置為640×480(雙目)。帶寬設(shè)置為20 000 000 Bps。

表1 雙目相機(jī)采集參數(shù)設(shè)計(jì)

3.2 相機(jī)觸發(fā)采集設(shè)計(jì)

相機(jī)觸發(fā)采集設(shè)計(jì)如圖3所示。首先設(shè)置相機(jī)采集模式為連續(xù)模式,打開(kāi)外部觸發(fā)模式,最后發(fā)送開(kāi)始采集命令[13]。TX2輸出PWM給相機(jī)外部引腳,當(dāng)相機(jī)引腳檢測(cè)到輸入上升沿時(shí)即觸發(fā)一次采集命令。隨后相機(jī)開(kāi)始采集一幀圖像幀1。當(dāng)檢測(cè)到下一個(gè)上升沿,即開(kāi)采下一幀圖像幀2。當(dāng)采集到幀N時(shí)對(duì)相機(jī)發(fā)送停止采集命令,之后相機(jī)便停止了圖像采集。

圖3 相機(jī)圖像采集流程圖

3.3 相機(jī)圖像采集工作流程

相機(jī)圖像采集流程圖如圖4所示。首先構(gòu)造相機(jī)類對(duì)象,然后初始化相機(jī)函數(shù)庫(kù),之后根據(jù)相機(jī)的序列號(hào)選擇打開(kāi)的雙目相機(jī),隨后設(shè)置相機(jī)的采集模式和觸發(fā)模式以及其他相機(jī)參數(shù)(曝光、分辨率等)。待發(fā)送開(kāi)始采集命令后,TX2輸出PWM給相機(jī)。相機(jī)識(shí)別到一個(gè)上升沿后便會(huì)采集一幅圖像。最后從回調(diào)函數(shù)中調(diào)取采集的圖像進(jìn)行后續(xù)處理。

圖4 相機(jī)圖像采集流程圖

4 軟件系統(tǒng)設(shè)計(jì)

軟件設(shè)計(jì)包括TX2系統(tǒng)界面設(shè)計(jì)、PC機(jī)界面設(shè)計(jì)、中心線提取設(shè)計(jì)、以太網(wǎng)傳輸數(shù)據(jù)設(shè)計(jì)。

4.1 TX2系統(tǒng)操作界面設(shè)計(jì)

QT是跨平臺(tái)圖像界面程序開(kāi)發(fā)框架,其在Linux系統(tǒng)以及Windows系統(tǒng)都具有友好的支持與操作簡(jiǎn)單的特性。QT Embedded是為嵌入式設(shè)備上的圖形用戶接口和應(yīng)用開(kāi)發(fā)而訂作的C++開(kāi)發(fā)工具包,QT Embedded為本系統(tǒng)的設(shè)計(jì)提供了便捷方式。

基于QT Embedded的應(yīng)用程序開(kāi)發(fā)是比較復(fù)雜的過(guò)程,需要對(duì)Linux操作系統(tǒng)、C++和交叉編譯等很多內(nèi)容的熟練掌握。本文中Linux系統(tǒng)下設(shè)計(jì)的界面用于配置相機(jī)參數(shù)以及實(shí)時(shí)采集圖像的顯示。操作界面如圖5所示。其中“open”按鍵實(shí)現(xiàn)方法為在QT設(shè)計(jì)界面添加Push Buttons按鈕,修改名稱右鍵單擊選擇go to slot選項(xiàng),在彈出對(duì)話框中選擇clicked()信號(hào),至此就構(gòu)造了Push Buttons_clicked()槽函數(shù),在槽函數(shù)中編寫需要運(yùn)行的代碼即可[14],其他按鍵設(shè)計(jì)類似于此。“open”按鍵內(nèi)容為打開(kāi)相機(jī)并初始化相機(jī)采集曝光、幀率、圖像大小等信息以及PWM輸出頻率、占空比?!癱lose”按鍵為關(guān)閉相機(jī)及激光器設(shè)備,其涵蓋了關(guān)閉相機(jī)采集命令、關(guān)閉相機(jī)函數(shù)庫(kù)命令以及關(guān)閉PWM輸出命令?!皊ave_one_pic”按鍵為在采集過(guò)程中保存一幅圖像,其調(diào)用了相機(jī)SDK中保存1幀圖像的函數(shù)。

圖5 TX2系統(tǒng)操作界面

按鍵“trigger1”、“trigger2”為相機(jī)觸發(fā)控制參數(shù),其輸入?yún)?shù)將會(huì)傳遞給PWM輸出占空比函數(shù),實(shí)現(xiàn)方法為在QT設(shè)計(jì)界面添加QSpinBox,右鍵選擇valueChanged()槽函數(shù),在槽函數(shù)中寫入需要實(shí)現(xiàn)代碼即可。其他輸入?yún)?shù)窗口編寫類似于此?!皃wmfre”為設(shè)置輸出PWN輸出頻率,其輸入?yún)?shù)將會(huì)傳遞給PWM輸出頻率函數(shù)。“Width”、“height”、“exposure”、“frame_rate”、“daikuan”分別表示采集圖像的寬度、高度、曝光、幀率、帶寬設(shè)置項(xiàng),其輸入?yún)?shù)將會(huì)傳遞給相應(yīng)的控制輸出函數(shù)。message show窗口為打印出程序運(yùn)行步驟到此窗口。show rate窗口顯示實(shí)時(shí)采集幀率,實(shí)現(xiàn)方法為在程序中開(kāi)始設(shè)置定時(shí)器T1,在結(jié)尾處設(shè)置定時(shí)器T2,當(dāng)兩者的差值為1 s時(shí)輸出所記個(gè)數(shù)。showimage窗口為顯示實(shí)時(shí)采集圖像,將采集處理的圖像調(diào)出來(lái)并實(shí)時(shí)顯示在界面上,其實(shí)現(xiàn)方法為定義Qlabel,將圖像轉(zhuǎn)換為Qimage形式在Qlabel顯示并實(shí)時(shí)刷新,顯示大小會(huì)根據(jù)圖像大小變化而變化。

4.2 PC機(jī)界面設(shè)計(jì)

PC機(jī)界面設(shè)計(jì)是為了接收TX2系統(tǒng)發(fā)送的采集信號(hào),通訊協(xié)議為以太網(wǎng)。系統(tǒng)設(shè)計(jì)基于QT的應(yīng)用程序開(kāi)發(fā)。操作界面如圖6所示。按鈕類、顯示類實(shí)現(xiàn)方法與TX2系統(tǒng)下的實(shí)現(xiàn)方法相同。按鍵“連接”的作用是與TX2系統(tǒng)建立以太網(wǎng)連接,其調(diào)用了TCP連接協(xié)議,包括IP地址的調(diào)用以及端口的寫入?!罢?qǐng)求”按鈕的功能是請(qǐng)求TX2系統(tǒng)發(fā)送采集信息,其背部函數(shù)為TCP發(fā)送特點(diǎn)字符串供TX2系統(tǒng)識(shí)別。“receiveCount”按鍵為TCP傳輸次數(shù),“imageCount ”按鍵為接收?qǐng)D像幀數(shù),其實(shí)現(xiàn)方法是在程序中以定時(shí)器計(jì)數(shù)顯示的。

圖6 PC機(jī)操作界面

4.3 光條中心線的提取

圖像質(zhì)心計(jì)算是圖像處理中重要的環(huán)節(jié),灰度質(zhì)心法原理是基于二值化分割,取閾值Z將圖像分成上、下2部分,對(duì)閾值Z以上部分進(jìn)行高頻采樣,然后根據(jù)平面幾何中積分求質(zhì)心的原理計(jì)算其面積中心,以代替能量中心[15]。該方法具有穩(wěn)定性好、定位精度高、速度快等優(yōu)點(diǎn),本文中采用該方法對(duì)光條中心線進(jìn)行提取。

對(duì)于圖像中的線激光條紋,假設(shè)圖像的像素為m×n,(x0,y0)即為求得的質(zhì)心坐標(biāo)值。假設(shè)所有大于閾值Z的像素坐標(biāo)為(xi,yi),其相應(yīng)的坐標(biāo)灰度值fij。計(jì)算公式如式(1)、式(2)。

(1)

(2)

4.4 以太網(wǎng)數(shù)據(jù)傳輸

TCP是用于數(shù)據(jù)傳輸?shù)牡讓拥木W(wǎng)絡(luò)協(xié)議,在局域網(wǎng)、廣域網(wǎng)、互聯(lián)網(wǎng)中均可完美運(yùn)行。此外其還具有一套完整網(wǎng)絡(luò)地址分配方案,所有TCP/IP設(shè)備在網(wǎng)絡(luò)中有唯一地址。該系統(tǒng)采用了QT中為TCP提供的接口QTcpSocket類[16]。

該系統(tǒng)中采集處理圖片并得到了中心線,TX2系統(tǒng)使用TCP協(xié)議將提取的中心線坐標(biāo)發(fā)送到PC機(jī)。數(shù)據(jù)發(fā)送的程序流程圖如圖7所示,將采集處理后的中心線坐標(biāo)存入向量vector中,在TCP打開(kāi)的狀態(tài)下,處理完一幀圖像之后向vector讀取中心線坐標(biāo)點(diǎn)并以x,y;的形式進(jìn)行打包存儲(chǔ)。讀取1幀圖像中心線坐標(biāo)之后接著判斷發(fā)送數(shù)據(jù)包Buff的大小是否滿足要求,如果不滿足要求則接著讀取下一幀圖像的中心線坐標(biāo)繼續(xù)存儲(chǔ)至Buff中,每幀圖像的存儲(chǔ)以“<”區(qū)分開(kāi)來(lái)。如果Buff大小滿足了要求之后將會(huì)把其內(nèi)容發(fā)送至PC端,Buff首字節(jié)為Buff大小。PC機(jī)接收到數(shù)據(jù)之后,拆包過(guò)程是打包過(guò)程的逆向操作。當(dāng)PC機(jī)接收到數(shù)據(jù)之后首先判斷接收的數(shù)據(jù)大小是否足夠,如果不足則說(shuō)明接收未完成繼續(xù)返回接收直到滿足數(shù)據(jù)大小。接著先對(duì)數(shù)據(jù)包中符號(hào)“<”進(jìn)行分割,以此識(shí)別出的幀個(gè)數(shù)[17]。之后對(duì)于每幀圖像的坐標(biāo)x,y;拆去其中的符號(hào)“,”和“;”,得到的每幅圖像坐標(biāo)在PC機(jī)界面中顯示。

圖7 以太網(wǎng)數(shù)據(jù)收發(fā)程序流程圖

5 測(cè)試結(jié)果

打開(kāi)TX2上位機(jī)界面與PC機(jī)上位機(jī)界面。在TX2界面上配置相機(jī)采集參數(shù),設(shè)置圖像輸出大小為640×480(2幅圖,分左右2個(gè),單幅圖為640×320)、曝光時(shí)間為2 ms、PWM輸出頻率均為140 Hz(即采集幀率為140 fps),相機(jī)觸發(fā)占空比為2 000(50%)。配置完成之后打開(kāi)相機(jī)并將激光器打在平面上,在PC機(jī)界面點(diǎn)擊連接。此時(shí)已經(jīng)開(kāi)始了中心線坐標(biāo)的提取與發(fā)送。實(shí)驗(yàn)效果如圖8所示。

(a)激光線條

(b)TX2系統(tǒng)采集、處理效果圖

(c)PC機(jī)系統(tǒng)接收、顯示效果圖8 實(shí)驗(yàn)采集、處理、發(fā)送結(jié)果

圖8(a)為線激光條實(shí)際效果圖。圖8(b)為TX2系統(tǒng)界面采集、處理效果。圖8(c)為PC機(jī)界面接收效果圖,在界面上定義一個(gè)全黑灰度圖,將接收到的坐標(biāo)點(diǎn)以白色畫出,實(shí)時(shí)采集發(fā)送幀率為140 fps,采集處理圖像無(wú)丟幀失幀現(xiàn)象,發(fā)送數(shù)據(jù)包無(wú)丟包現(xiàn)象,穩(wěn)定性好,滿足了設(shè)計(jì)要求。

6 結(jié)論

針對(duì)膠體三維信息檢測(cè)面臨的缺失高幀率、采集實(shí)時(shí)性的問(wèn)題,設(shè)計(jì)了一套雙目視覺(jué)信號(hào)采集系統(tǒng),該采集系統(tǒng)具有4路線結(jié)構(gòu)光采集系統(tǒng),實(shí)現(xiàn)了雙目實(shí)時(shí)信號(hào)采集。其中以嵌入式 NVIDIA TX2為核心詳細(xì)介紹了圖像采集、處理以及中心線坐標(biāo)發(fā)送的全過(guò)程,結(jié)合了小型化硬件以及簡(jiǎn)便的上位機(jī)界面,集成了一套小體積、高效率、方便操作和移動(dòng)的采集系統(tǒng)。實(shí)驗(yàn)測(cè)試表明系統(tǒng)穩(wěn)定性好,精度高,滿足了設(shè)計(jì)要求,為汽車關(guān)鍵部件膠體三維測(cè)量做好了充分準(zhǔn)備,具有較好的實(shí)用價(jià)值。

猜你喜歡
PC機(jī)雙目中心線
基于雙目測(cè)距的卡爾曼濾波船舶軌跡跟蹤
電子制作(2019年20期)2019-12-04 03:51:38
基于PC機(jī)與單片機(jī)的多機(jī)通信技術(shù)及抗干擾方法
基于三菱FXPLC的感應(yīng)淬火機(jī)床與PC機(jī)的串行通信實(shí)現(xiàn)
VC.NET下實(shí)現(xiàn)dsPIC單片機(jī)與PC機(jī)的通信
電子制作(2017年23期)2017-02-02 07:16:47
第十講 幾何公差代號(hào)標(biāo)注示例10
——目鏡套筒
基于雙目視覺(jué)圖像的長(zhǎng)度測(cè)量方法
X線攝影中中心線對(duì)DR攝影質(zhì)量的重要性
基于Meanshift和Hough變換的秧苗行中心線提取
基于雙目視覺(jué)的接觸線幾何參數(shù)測(cè)量方法
基于曲率計(jì)算血管中心線特征點(diǎn)的提取方法
河南科技(2014年8期)2014-02-27 14:08:08
阜康市| 利川市| 巴马| 容城县| 白沙| 独山县| 桦甸市| 正安县| 射阳县| 陆河县| 连山| 东阳市| 富顺县| 江华| 安阳市| 贵定县| 高清| 宁武县| 临西县| 视频| 周至县| 洛浦县| 雅江县| 佛山市| 临沂市| 锡林浩特市| 龙川县| 利辛县| 邢台县| 深水埗区| 湖州市| 伽师县| 张家界市| 涞源县| 罗源县| 攀枝花市| 鸡东县| 商城县| 湖南省| 长宁县| 兴安县|