摘要:廣角或魚眼鏡頭拍攝的圖像視野大,圖像信息量豐富,但是圖像畸變失真嚴重,需要對其進行畸變校正以適應人類觀察習慣。FPGA的數(shù)據(jù)并發(fā)處理速度快、可靠性高、體積小等特性為攝像校正系統(tǒng)提供了較好的硬件支持?;谇度胧紽PGA系統(tǒng),采用等距投影擴展校正算法對畸變圖像進行校正,校正過程中不需要煩瑣的計算及標定靶標。實驗表明,該算法移植到嵌入式FPGA平臺上,運算時間短、校正圖片清晰,能滿足實時性要求。
關鍵詞:魚眼圖像,F(xiàn)PGA,等距投影
中圖分類號:TP391 文獻標識碼:A 文章編號:1009-3044(2018)23-0222-03
1 背景
目前,普通鏡頭的攝像系統(tǒng)已經廣泛應用于國防軍事、醫(yī)療、安全監(jiān)控、智能交通等多個領域,由于普通鏡頭有很大的視覺盲區(qū),拍攝視野一般只有40°左右[1],在要求很大視場范圍時不能廣泛應用。隨著技術的進步以及人們對“看的更廣”的要求日益提高,具有廣角或魚眼鏡頭攝像系統(tǒng)因獲得的視野場景大,景深范圍可從幾厘米到無限遠而備受市場青睞。但是大視場攝像系統(tǒng)采集的圖像具有嚴重的畸變,不是人眼視覺所習慣的透視投影圖像,所以必須對畸變的圖像進行校正以適合人眼觀看。
廖士中和高培煥等提出的多項式坐標變換算法[2]是根據(jù)魚眼圖像的像素點位置通過最小二乘發(fā)擬合誤差平方最小以計算校正后圖像對應點,為保證校正效果往往需要使用5階或5階以上的二元多項式,計算量非常巨大,不適合嵌入式系統(tǒng)的移植;由英向華和胡占義提出的球面透視投影約束校正算法[3]如果選取理想的采樣點則效果較好,但建立目標函數(shù)時為權,精度和速度同樣需要計算5階二元多項式,且該算法所有采樣點需手動選取,隨機因素大,選取的結果直接關系到目標函數(shù)的擬合計算次數(shù)和圖像校正的效果,不具有普遍性。攝像機標定技術是一種精確恢復的算法,但是相機標定技術針對特定的相機,且計算煩瑣,復雜度很高,在嵌入式實時系統(tǒng)中的時間開銷也很大[4]。該文采用該文使用文獻[5]中的魚眼圖像校正方法,在嵌入式FPGA系統(tǒng)上實現(xiàn)魚眼圖像的實時校正。此算法原理比較簡單,校正效果較好且運算速度較快,能夠對采集到的魚眼圖像進行實時校正,滿足實時性的要求。
2 球面等距投影校正及展開模型
圖像校正的目的是將存在畸變的圖像,轉化為可以直接處理的線性透視投影圖像以符合人眼視覺正常觀察需要。該文是基于文獻[5]中的球面等距投影校正及展開模型對廣角或魚眼圖像進行校正,具體算法如下。
2.1 有效區(qū)域提取
廣角或魚眼鏡頭所采集的圖像有效區(qū)含有全部景物信息,而無效區(qū)域灰度值較小,所以閾值分割,將圖像二值化可以提取有效區(qū)域。但在閾值的選擇上,因圖像內容豐富多變,傳統(tǒng)的選擇一個固定的閾值不具普適性。因此該文講根據(jù)圖像自身的特性,先計算出該圖像的平均閾值,然后在進行有效區(qū)域提取,具體算法如下。
step1將采集的魚眼圖像二值化后,計算出平均閾值T。
step2確定上水平切線。方法如下step3-step5.
step3將二值化后的圖像從上到下按水平方向掃描,如果像素點(i,j)值小于T,則繼續(xù)掃描。
step4如果像素點(i,j)的值大于或等于閾值T,則判斷以改點為中心的3×3領域內其它像素點的值是否存在全為零的情況。
step5如果存在,則改點為干擾點,故繼續(xù)掃描;否則y=j為圖像的水平切線。
step6確定圖像的下水平切線,將二值化后的圖像從上到下按水平方向掃描,如果像素點(i,j)值小于T,則繼續(xù)掃描,重復step4-step5得到下水平切線。
step7同理,將二值化后的圖像從左到右按垂直方向掃描得到左垂直切線;從右至左按垂直方向掃描得到右垂直切線。
2.2 像平面-球面映射模型
3 系統(tǒng)組成
基于FPGA的超大視場攝像系統(tǒng)由硬件和軟件兩部分組成。硬件系統(tǒng)包括ALTERA Cyclone IV 系列開發(fā)板(型號為DE2-115),JTAG仿真器,魚眼鏡頭,攝像機,電腦,監(jiān)視器等,軟件系統(tǒng)包括Quartus11.0和Verilog編程語言。
校正系統(tǒng)實現(xiàn)過程簡述如下:首先通過帶有魚眼鏡頭的攝像機采集原始的魚眼視頻信號,經模/數(shù)轉換(轉換芯片為ADV7180)將模擬PAL制的電視型號轉換為與8位ITU-R.656接口標準兼容的4:2:2分量視頻數(shù)據(jù),然后存儲在SDRAM中,其次是從SDRAM中讀取魚眼圖像原始數(shù)據(jù),經球面等距投影校正算法校正后輸出數(shù)字視頻信號,最后通過ADV7123數(shù)模轉換芯片將數(shù)字信號轉換成模擬信號通過VGA接口輸出到監(jiān)視器上。硬件結構示意圖如圖4所示。
4 實驗結果及結論
圖5(a)為采集到的單幅魚眼圖像,圖5(a)經自適應有效區(qū)域提取算法處理后的結果如圖5(b)所示,圖5(c)為對圖5(a)經算法90°校正后所得到的校正圖;對原始圖像圖6(a)、圖7(a)校正的結果分別如下圖所示。實驗結果表明,這種校正算法簡單,不需要對魚眼鏡頭進行參數(shù)標定,算法結構簡單易于實現(xiàn)、校正后的圖像空像素點較少,不需要較為復雜的插值運算圖像也較為清晰,具有較大的普適性。實驗中,MATLAB算法對一副靜態(tài)魚眼圖像校正所需要的時間為6.6秒左右,而使用FPGA嵌入式系統(tǒng),校正一副圖像所需要的時間為2~2.4秒,最后通過魚眼攝像機采集的圖像,經過FPGA系統(tǒng)實時處理能達到25幀每秒。滿足實時性的要求。
參考文獻:
[1] 湯旭濤. 廣角攝像頭視頻圖像實時校正系統(tǒng)設計[D]. 上海: 華東師范大學, 2009.
[2] 廖士中, 高培煥, 蘇藝, 等. 一種光學鏡頭攝像機圖象幾何畸變的修正方法[J]. 中國圖象圖形學報,2000, 5(7): 593-596.
[3] 英向華, 胡占義. 一種基于球面透視投影約束的魚眼鏡頭校正方法[J]. 計算機學報, 2003, 26(12): 1702-1708.
[4] 張寶峰, 馬志軍, 朱均超, 等. 基于DSP 的魚眼圖像實時校正系統(tǒng)的實現(xiàn)[J]. 激光與紅外, 2015, 45(2): 181-184.
[5] 舒旭. 一種簡單而精確的魚眼圖像校正算法研究[J]. 計算機時代, 2017(6): 51-54.
【通聯(lián)編輯:謝媛媛】