齊 紅,任洪娥,田少卿,胡 鴻
(1.東北林業(yè)大學信息與計算機工程學院,黑龍江 哈爾濱 150040 2.國家林業(yè)局調查規(guī)劃設計院,北京 100714)
穩(wěn)像技術從早期的機械穩(wěn)像到光學穩(wěn)像,再到電子穩(wěn)像,是一個漫長的發(fā)展過程。隨著計算機軟硬件的飛速發(fā)展,電子穩(wěn)像技術逐漸的取代了機械穩(wěn)像和光學穩(wěn)像成為目前運用最廣泛的穩(wěn)像技術[1]。而在電子穩(wěn)像技術的發(fā)展過程中又根據(jù)算法的不同分為多種穩(wěn)像法,主要包括:代表點匹配算法(RPM),投影算法(PRA),位平面匹配算法(BPM),特征量跟蹤算法(FTA)[2],代表點比較算法(BERP),塊匹配算法(BMA),邊沿檢測匹配算法(EDA)[3-4],頻域估計算法(FDE)和光流算法(OF)等[5-7]。其中,灰度投影算法由于其運算速度快[8-9]、性能穩(wěn)定而被廣泛應用。而灰度投影算法在處理存在運動物體的圖像時,會產(chǎn)生不盡如人意的結果——偏移量跳變,這種跳變的表現(xiàn)是偏移量突然大幅度增加或減少。本文提出了一種對灰度投影改進的方法,可以有效的消除灰度投影算法在處理有運動物體存在的圖像時所產(chǎn)生的錯誤運動估計現(xiàn)象。同時設計了一套針對圖像序列是否需要穩(wěn)像,以及穩(wěn)像后是否達到穩(wěn)像效果的檢驗策略,這樣可以達到電子穩(wěn)像系統(tǒng)自動檢測并決定何時對圖像進行穩(wěn)像處理的效果。
電子穩(wěn)像算法是通過電子設備采集圖像序列,同時運用數(shù)字圖像處理的方法直接處理所得圖像序列,確定圖像偏移量并進行相應補償來達到圖像穩(wěn)定的一種方法,如圖1所示為電子穩(wěn)像處理過程。
圖1 電子穩(wěn)像處理過程
運用灰度投影算法主要包括4個步驟:
1)先將采集來的圖像轉化成灰度圖。
2)進行灰度投影運算,即將圖像的每一行或列的灰度值相加,投影公式如下:
(1)
上式中row(i)是第i行的投影值,column(j)是圖像第j列的投影值,pic(i,j)是圖像點(i,j)處的灰度值。
3)進行相關運算,得到抖動偏移量,列相關運算公式如下:
1≤w≤2M+1
(2)
其中C(w)是相關運算值,M是檢測圖像抖動的范圍。Wmin是C(w)最小時W的值,可得圖像在縱向上的位移量motionc。行相關運算亦如此。
motionc=M+1-Wmin
(3)
4)將發(fā)生抖動的圖像反向移動motionr,motionc后得到的圖像為穩(wěn)定圖像。
由設備獲取視頻圖像時,難免有運動物體出現(xiàn)在圖像中,因此可能導致兩種情況:
1)圖像沒有發(fā)生抖動,而灰度投影算法可能會誤判為圖像發(fā)生抖動而對圖像進行處理。
2)圖像正好發(fā)生抖動,而物體的運動會對灰度投影算法造成一定的影響,出現(xiàn)錯誤穩(wěn)像。
如何使運動物體不影響到算法是解決問題的關鍵。
在視頻捕獲過程中,運動物體穿越拍攝區(qū)域時其走向是不確定的,物體或是橫向運動,或是縱向運動,還有可能是斜向運動。而斜向運動在連續(xù)單幅圖像中可以被看做是橫向運動和縱向運動的組合,因此總的來說可以把物體運動方向分為:橫向與縱向。下面以橫向為例說明(后面沒有特殊說明,均為橫向),縱向亦然。
1)情況一:未發(fā)生抖動的運動物體檢測方法。
在物體開始出現(xiàn)在圖像中的幾幀圖像中,讀取連續(xù)兩幀圖像,一幀為參考圖像A,另一幀為待檢測圖像B。將A ,B兩圖分別做灰度投影,然后將兩圖像的投影值相減,得到投影差值[10-12]。下列為行的相關算式:
rowsub(i)=|rowA(i)-rowB(i)|
(4)
(5)
其中rowsub(i)是行投影差值,Rsum是行投影差值的平均值。用投影差值減去平均值后取大于零的部分,行這部分的個數(shù)多于列的相對應的個數(shù),說明物體是做橫向運動的;反之,為縱向運動。因為一般物體進入圖像的一剎那,必然有一邊的變化是寬的而另一邊是窄的。同時根據(jù)大于零的灰度變化區(qū)域可以估計出物體的大概運動范圍。通過對連續(xù)圖像的運動范圍值的記錄,取其平均值可以得到比較準確的物體運動范圍,如圖2可知物體運動范圍大概在(110,360)之間。
圖2 無抖動時物體運動的區(qū)域與投影差值
2)情況二:發(fā)生抖動的運動物體檢測方法。
情況二與情況一基本一致,只是情況二讀取的圖像B是穩(wěn)像后的圖像,如圖3所示。這里說明一下,在運動物體進入圖像的初期,由于其灰度變化面積較小而不影響灰度投影算法,這一說法在隨后的實驗驗證中有詳細證明。
圖3 抖動時物體運動區(qū)域與投影差值