郭俊俊,欣子豪,薛子盛,楊健
(常州大學 微電子與控制工程學院,江蘇常州,213016)
機器視覺[1]是一門新興的學科,隨著電子信息技術、物聯網技術和計算機技術的不斷完善,在我們的日常生活中得到了快速的發展和應用[2]。機器視覺是計算機專業的一門核心基礎課程,該課程對于未來電子信息技術、人工智能技術的深入發展起到了關鍵作用。為幫助計算機專業學生更好的學習相關課程知識,本文設計了一個基于單擺模型下的互聯網攝像測量系統,可以作為計算機專業的綜合實訓項目,該項目體現了實驗內容的工程性、實現方法的多樣性、知識結構的綜合性、實踐過程的探索性[4]。同時,本設計同時還將多學科知識進行融合,將已有知識與拓展知識融合[5],大大拓展了學生的知識面。
本文設計的基于單擺模型的互聯網攝像測量系統通過兩個相互垂直的攝像節點分別拍攝擺球運動軌跡,并通過以太網交換機與終端節點實現網絡互聯實時顯示拍攝視頻并測量單擺模型的長度l和角度θ。測量系統結構如圖1所示。

圖1 測量系統結構圖
本文設計的基于單擺模型的互聯網攝像測量系統是由工業相機、以太網交換機、TX-2處理器和顯示器等組成。其系統結構圖如圖2所示。

圖2 系統結構圖
軟件系統主要包括:圖像識別模塊、網絡協同模塊、單擺長度計算模型、單擺角度計算模塊。圖像識別模塊利用圖像識別算法實時框出擺球位置。網絡協同模塊通過交換機向攝像機發送控制信息。單擺長度計算模型是根據單擺周期公式推算出擺長,單擺角度計算模塊通過構建三維空間,捕捉激光筆軌跡平面來計算夾角。
在RGB空間圖像中,單擺圖像灰度值分布規律性不強,難以克服光照不均和環境噪聲的干擾,利用HSV空間[6]圖像中S分量圖像具有對光照干擾不敏感、抗光照不均能力較強的特點可以有效地克服環境因素的影響,提高擺球的識別率。HSV是一種基于六角錐體將RGB色彩空間中的不同點之間的關系表示出來的方法模型,其描述的顏色感知關系準確,計算簡單是一種直觀的、相互獨立的顏色。在HSV顏色模型中,包括3種不同的模型顏色空間:色調(H)、飽和度(S)、明度(V),廣泛地應用在許多圖像編輯工具[7]。
為提高擺球的識別率,本系統將擺球涂成易于識別的紅色,方便HSV的通道分離,從而有效地提取出擺球位置信息。對分離出的紅色分量,設置合適的閾值進行圖像二值化處理。為進一步增強擺球的特征,將二值化后圖像中的高亮區域或白色部分進行膨脹操作,使運行結果圖比原圖的高亮區域更大,線條更粗,方便后續的識別。然后根據擺球的大小限定擺球邊緣輪廓,從而提取出擺球的邊緣。最后通過最小外接矩陣框出擺球的位置。其具體流程圖如圖3所示。

圖3 擺球識別流程圖
終端節點即主控設備,用于通過交換機向兩個攝像節點分別發送控制信息;控制信息包括:時間戳、啟動指令或終止指令;對應兩個攝像節點的控制信息中的等待時刻之間的時刻差與兩個攝像節點之間的時延差相適配;對應設置兩個攝像節點內的兩個協同操作設備,用于分別接收來自主控設備的控制信息并根據各自的控制信息分別執行相應的協調控制,以使兩個攝像節點設備完成協同操作。協調控制包括:將對應的攝像節點的本地時間戳設定為對應的控制信息中的時間戳;啟動計時使其和控制信息中等待時刻相一致;在計時結束后執行對應的控制信息中的操作指令。網絡協同模塊的工作原理如圖4所示。

圖4 網絡協同模塊工作原理
2.3.1 單擺長度計算
單擺模型如圖5所示,記單擺擺球質量為m,擺線長度為l,擺動過程中偏離豎直方向的夾角為γ,擺球運動速度為v。擺球在運動過程中受到重力mg和繩子的張力T。取如圖5所示的二維坐標系,張力T可以分解為垂直和水平方向的兩個力[8]。根據牛頓第二定律F=ma,可以列出重物在x和y兩個方向上的運動方程,其中x方向的微分方程如公式(1)所示:

圖5 單擺平面圖

2.3.2 軟件流程
其為實現單擺長度的計算,具體軟件流程圖如圖6所示。

圖6 長度計算流程圖
通過圖像識別模塊得到擺球的位置信息,通過前后圖像對比判斷擺球是否運動,防止輕微擺動引起的誤差。當擺球擺動超過一定幅度時,通過設置以中垂線為準線,計算擺球到達中垂線的時間間隔,從而求出單擺周期T。多次測量,并去除因瞬時捕捉或其他因素導致異常數據,最后將多次測量的數據求平均值再代入公式(8)求出單擺的長度l。
2.4.1 單擺角度計算
以攝像機采集的圖像左下角為原點 0O建立以像素為單位的直角坐標系u-v(像素坐標系),如圖7所示。其中像素的橫坐標u對應圖像的行數,縱坐標v代表圖像的列數。

圖7 圖像坐標系
同時建立以物理單位表示的圖像坐標系x-y。將相機光軸與圖像平面的交點即圖像平面的中心處為坐標系的原點O1,且x軸與u軸平行,y軸與v軸平行。假設(u0,v0)代表O1在u-v坐標系下的坐標,dx與dy分別表示每個像素在橫軸x和縱軸y上的物理尺寸[9],則圖像中的每個像素在u-v坐標系中的坐標和在x-y坐標系中的坐標之間都存在如下的關系:

dx與dy可以通過測量已知長度的物體在像素坐標系下對應的像素數量計算出來。
2.4.2 軟件流程
由圖1中的模型建立三維坐標軸來計算單擺的角度,其三維圖如圖8所示。由攝像節點A與攝像節點B交點為三維坐標的基點O。以OA直線為X軸、以OB直線為Y軸、通過O點并垂直于水平面的直線為Z軸構建三維空間,捕捉擺球在空間內的軌跡判斷擺球擺動平面并計算與XOY面的夾角θ。具體流程圖如圖9所示。

圖8 單擺三維圖

圖9 角度計算流程圖
當擺球靜止時記錄擺球的初始位置,因為在相同條件下45°和135°分解到在平面里面的擺動是一樣的,通過初始擺動的方向來決定擺球的夾角。當擺球開始運動時,通過圖像識別模塊得到擺球擺動信息,根據上述擺球運動的三維模型進行分解。可以得到擺球在相機A和B中的圖像坐標。由于相機擺放是沿著中軸線放置,所以分別計算相機A和B距離畫面中軸線的像素數,由公式(10)可以推算出擺球到OA線的投影距離x1。相機B同理,可以推算出擺球到OB線的距離x2。根據勾股定理可以求出擺球的夾角為:

針對實際測量過程中存在的誤差,利用卡爾曼濾波對離散值進行濾波,以減少誤差。
為驗證基于單擺模型的互聯網攝像測量系統的準確性,本文搭建了如圖10所示的實驗系統進行驗證。

圖10 實驗系統
為了實驗測量單擺長度的準確性,本文選取了在固定角度下,對不同長度的單擺進行測量,測量結構如表1所示。

表1 固定角度下長度測試數據
從表1中可以看出在相同角度的情況下,分別測量了長度為60、80、120、140cm的單擺長度,其誤差都在1±cm以內。結果表明本文設計的基于單擺模型的互聯網攝像測量系統可以準確地測量出單擺的長度。
同時,為驗證測量角度的準確性,選取了在固定長度下不同角度進行測量,其測量結果如表2所示。

表2 固定長度下角度測試數據
從表2中可以看出在相同長度的情況下,分別測量了角度為20°、40°、60°、90°的單擺角度,其誤差都在±1°以內。結果表明本文設計的基于單擺模型的互聯網攝像測量系統可以準確地測量出單擺的角度。
基于互聯網的攝像測量系統將圖像處理算法、單擺物理模型及硬件處理單元等知識融合應用,具有一定的工程特性。通過該項目的實施,學生將碎片化的理論知識融會貫通,促進了知識的內化;將計算機技術、互聯網技術、機器視覺等多門學科知識在項目中綜合應用,提高了學生跨學科知識應用能力;在視覺實驗中,需考慮光照、背景等相關環境因素對實驗的影響,通過算法的對比和改進,使學生在學習相關算法的同時,提高算法的魯棒性,培養了學生的實踐能力、動手能力、創新能力。項目按方案設計、理論計算及實驗調試實現,培養了學生的工程思維,可以有效提高學生的項目處理能力。該項目在課程中的成功應用,為其他課程開展項目化教學,提供了借鑒。