胡克用,朱佳偉,謝 奧,曹世華,安 群
(1.杭州師范大學(xué) 錢江學(xué)院,浙江 杭州 310018;2.杭州師范大學(xué) 工學(xué)院,浙江 杭州 310018)
隨著網(wǎng)絡(luò)攝像技術(shù)、機(jī)器視覺技術(shù)的高速發(fā)展和處理器性能的提升,測(cè)量系統(tǒng)的智能化程度越來越高[1]。越來越多的智能測(cè)量系統(tǒng)逐漸涌現(xiàn),它們多采用機(jī)器視覺技術(shù)通過攝像機(jī)將靜態(tài)的觀察目標(biāo)轉(zhuǎn)換為數(shù)字圖像信號(hào),再由圖像處理系統(tǒng)處理圖像數(shù)據(jù)并提取其中的信息[2]。這種方式局限性較大,對(duì)于運(yùn)動(dòng)中觀察目標(biāo)的測(cè)量結(jié)果偏差較大甚至無(wú)法測(cè)量。針對(duì)此類問題,提出一種基于網(wǎng)絡(luò)攝像與互聯(lián)網(wǎng)技術(shù)的智能測(cè)量系統(tǒng)。針對(duì)單擺運(yùn)動(dòng)中的被測(cè)物,使用機(jī)器視覺的處理方法通過網(wǎng)絡(luò)攝像機(jī)拍攝其單擺運(yùn)動(dòng)狀態(tài),借助樹莓派、以太網(wǎng)交換機(jī)、實(shí)時(shí)流協(xié)議(Real Time Streaming Protocol,RTSP)來獲取網(wǎng)絡(luò)攝像機(jī)視頻流。
基于網(wǎng)絡(luò)攝像與互聯(lián)網(wǎng)技術(shù)的智能測(cè)量系統(tǒng)結(jié)構(gòu)如圖1所示。
系統(tǒng)使用2個(gè)正交拍攝被測(cè)物的網(wǎng)絡(luò)攝像機(jī)模塊、1個(gè)以太網(wǎng)交換機(jī)模塊、3個(gè)樹莓派模塊(節(jié)點(diǎn)樹莓派A、節(jié)點(diǎn)樹莓派B、終端樹莓派C)、2個(gè)液晶顯示器(Lipuid Crystal Display,LCD)(分別連接節(jié)點(diǎn)樹莓派A和節(jié)點(diǎn)樹莓派B)以及1個(gè)終端顯示器(使用數(shù)據(jù)線與終端樹莓派C連接)。采用外部供電方法,供電給網(wǎng)絡(luò)攝像機(jī),樹莓派、以太網(wǎng)交換機(jī)以及終端顯示器。2臺(tái)網(wǎng)絡(luò)攝像機(jī)將拍攝到的視頻傳輸至以太網(wǎng)交換機(jī),樹莓派通過以太網(wǎng)交換機(jī)來獲取網(wǎng)絡(luò)攝像機(jī)視頻流。節(jié)點(diǎn)樹莓派驅(qū)動(dòng)LCD顯示屏,可以實(shí)時(shí)顯示當(dāng)前樹莓派拍攝的視頻,終端樹莓派C運(yùn)行OpenCV程序,對(duì)擺動(dòng)的物體進(jìn)行實(shí)時(shí)追蹤,記錄運(yùn)動(dòng)軌跡,用方框?qū)崟r(shí)框住被測(cè)物體輪廓,并在顯示器中呈現(xiàn)出所測(cè)量的長(zhǎng)度與角度等參量。
本設(shè)計(jì)使用的核心處理器為樹莓派,采用Linux作為操作系統(tǒng)。樹莓派可以通過USB端口連接顯示器、鍵盤、鼠標(biāo),通過RJ45以太網(wǎng)端口連接交換機(jī),這樣就具備了普通電腦的基本功能,能執(zhí)行傳輸數(shù)據(jù)、數(shù)據(jù)處理、播放網(wǎng)絡(luò)攝像機(jī)拍攝的高清視頻等功能。
由于網(wǎng)絡(luò)攝像機(jī)(IP Camera,IPC)具有比普通攝像機(jī)畫質(zhì)清晰、壓縮比高、可直接連交換機(jī)且性能穩(wěn)定等優(yōu)勢(shì),因此本設(shè)計(jì)中使用??低暤木W(wǎng)絡(luò)攝像機(jī)。
以太網(wǎng)交換機(jī)是用來構(gòu)建局域網(wǎng)傳輸數(shù)據(jù)的重要硬件設(shè)備,本設(shè)計(jì)使用5口百兆以太網(wǎng)交換機(jī),網(wǎng)絡(luò)攝像機(jī)利用網(wǎng)線連接至以太網(wǎng)交換機(jī)的RJ45端口。樹莓派也是利用網(wǎng)線連接至以太網(wǎng)交換機(jī)的RJ45端口,這樣以太網(wǎng)交換機(jī)上電啟動(dòng)后,局域網(wǎng)也就構(gòu)建完成。
節(jié)點(diǎn)樹莓派A、B分別對(duì)網(wǎng)絡(luò)攝像機(jī)A、B拍攝得到的視頻流進(jìn)行HSV轉(zhuǎn)化,即從RGB空間轉(zhuǎn)化至HSV空間[3]。HSV空間中:H代表色相角,范圍是0°~360°;S代表飽和度,范圍是0~1;V代表亮度,范圍是0~1。RGB空間中:R代表紅坐標(biāo)值,范圍為0~255的實(shí)數(shù);G代表綠坐標(biāo)值,范圍為0~255的實(shí)數(shù);B代表藍(lán)坐標(biāo)值,范圍為0~255的實(shí)數(shù)。(R,G,B)構(gòu)成RGB坐標(biāo),在RGB空間中表示所有顏色。RGB空間轉(zhuǎn)化至HSV空間時(shí),轉(zhuǎn)化公式為
色相角H計(jì)算公式為
飽和度S計(jì)算公式為
亮度V計(jì)算公式為
式中:(R',G',B')分別是(R,G,B)二值化后的數(shù)值;Cmax表示(R',G',B')中的最大值;Cmin表示(R',G',B')中的最小值;Δ表示Cmax與Cmin之間的差值。
通過HSV轉(zhuǎn)化后進(jìn)行HSV二值化,然后需要進(jìn)行圖像濾波。濾波方法采用卡爾曼濾波,使用遞歸的思想來解決線性的濾波問題,只要獲得系統(tǒng)當(dāng)前的測(cè)量值與前一個(gè)采樣周期的估計(jì)值,就可以開展?fàn)顟B(tài)估計(jì)工作[4]。濾波結(jié)束后,測(cè)量系統(tǒng)開始尋找被測(cè)物,分別對(duì)2個(gè)網(wǎng)絡(luò)攝像機(jī)所拍攝的視頻流采用色域檢測(cè)法來尋找被測(cè)物的位置。程序中設(shè)定被測(cè)物的色域范圍,將被測(cè)物用矩形框框選出來,確定被測(cè)物的中心坐標(biāo),逐幀處理并記錄坐標(biāo)的移動(dòng)軌跡,進(jìn)而繪制擺幅的范圍[5]。
在同一個(gè)網(wǎng)絡(luò)攝像機(jī)拍攝的視頻中,逐幀對(duì)比前后中心坐標(biāo)的高度,直到發(fā)現(xiàn)被測(cè)物擺動(dòng)到右側(cè)的最高位置,記錄坐標(biāo)及當(dāng)前時(shí)間t1,使用同樣的方法尋找被測(cè)物擺動(dòng)到左側(cè)的最高位置,記錄坐標(biāo)位置及當(dāng)前時(shí)間t2。同理,對(duì)另一個(gè)網(wǎng)絡(luò)攝像機(jī)拍攝的視頻進(jìn)行相同操作,記錄右側(cè)最高點(diǎn)坐標(biāo)及時(shí)間t3,記錄左側(cè)最高點(diǎn)坐標(biāo)及時(shí)間t4,結(jié)束后開始向終端樹莓派傳輸預(yù)處理后的數(shù)據(jù)信息。終端樹莓派C需要完成接收節(jié)點(diǎn)樹莓派發(fā)送的信息,并計(jì)算位于單擺運(yùn)動(dòng)中的繩長(zhǎng)L與擺動(dòng)角度θ等。
根據(jù)上一流程獲得物體在單擺運(yùn)動(dòng)中的擺動(dòng)周期T=2(t2-t1)或T=2(t4-t3),根據(jù)單擺周期公式求出細(xì)繩長(zhǎng)度。
根據(jù)節(jié)點(diǎn)樹莓派發(fā)送的數(shù)據(jù),整理出網(wǎng)絡(luò)攝像機(jī)在A方向拍攝的左側(cè)最高點(diǎn)坐標(biāo)(Ax,Ay),通過θ=[arctan(Ax/Bx)×180]/π得到A方向上的角度。
本設(shè)計(jì)的硬件實(shí)驗(yàn)環(huán)境如圖2所示。以太網(wǎng)交換機(jī)、網(wǎng)絡(luò)攝像機(jī)與樹莓派之間組成一個(gè)局域網(wǎng),網(wǎng)絡(luò)攝像機(jī)上的信息可通過以太網(wǎng)交換機(jī)傳輸?shù)交ヂ?lián)網(wǎng)中,樹莓派可通過RTSP等協(xié)議接收網(wǎng)絡(luò)攝像機(jī)所拍攝到的視頻,便捷地在各類可以聯(lián)網(wǎng)的設(shè)備上獲取信息并進(jìn)行分析。
系統(tǒng)終端實(shí)際運(yùn)行結(jié)果如圖3所示,可以實(shí)時(shí)顯示被測(cè)物運(yùn)動(dòng)狀態(tài),并用方框框選出被測(cè)物。
圖3中的數(shù)字“1 036.0,574.5”表示當(dāng)前方框的中心坐標(biāo)位置,數(shù)字“45”表示擺動(dòng)角度,數(shù)字“85”表示懸掛被測(cè)物的細(xì)繩長(zhǎng)度。該系統(tǒng)運(yùn)行穩(wěn)定,符合設(shè)計(jì)要求。
通過對(duì)繩長(zhǎng)的測(cè)量,本系統(tǒng)測(cè)量的準(zhǔn)確度較高。當(dāng)角度分別控制在30°和90°時(shí),長(zhǎng)度測(cè)試誤差均在0.5~2.9 cm。實(shí)驗(yàn)結(jié)果如表1、表2所示。
表1 被測(cè)物擺動(dòng)角度為30°時(shí)的細(xì)繩長(zhǎng)度測(cè)量結(jié)果 單位:cm
表2 被測(cè)物擺動(dòng)角度為90°時(shí)的細(xì)繩長(zhǎng)度測(cè)量結(jié)果 單位:cm
當(dāng)細(xì)繩長(zhǎng)度控制在90 cm時(shí),實(shí)驗(yàn)結(jié)果如表3所示,被測(cè)物擺動(dòng)角度測(cè)試誤差在0.6°~3.2°。
表3 被測(cè)物擺動(dòng)角度測(cè)量結(jié)果 單位:(°)
通過對(duì)擺動(dòng)角度的測(cè)量,本系統(tǒng)測(cè)量的準(zhǔn)確度較高。
基于網(wǎng)絡(luò)攝像與互聯(lián)網(wǎng)技術(shù)的智能測(cè)量系統(tǒng)利用機(jī)器視覺的方法對(duì)處于單擺運(yùn)動(dòng)中的被測(cè)物實(shí)時(shí)追蹤,顯示并計(jì)算繩長(zhǎng)與擺動(dòng)角度,處理器采用樹莓派,性能穩(wěn)定且成本低。經(jīng)過實(shí)驗(yàn)分析,這種對(duì)動(dòng)態(tài)目標(biāo)檢測(cè)的系統(tǒng)能夠滿足未來智能測(cè)量的需求,具有廣闊的發(fā)展前景。