張寶峰,馬志軍,朱均超,馮為嘉
(1.天津理工大學(xué) 天津市復(fù)雜系統(tǒng)控制理論及應(yīng)用重點實驗室,天津 300384;2.天津師范大學(xué)計算機與信息工程學(xué)院,天津 300387)
·光電技術(shù)與系統(tǒng)·
基于DSP的魚眼圖像實時校正系統(tǒng)的實現(xiàn)
張寶峰1,馬志軍1,朱均超1,馮為嘉2
(1.天津理工大學(xué) 天津市復(fù)雜系統(tǒng)控制理論及應(yīng)用重點實驗室,天津 300384;2.天津師范大學(xué)計算機與信息工程學(xué)院,天津 300387)
魚眼圖像視角大,圖像信息量豐富,但是其所拍攝的圖像具有較大的畸變失真,需要對其進(jìn)行畸變校正?;谇度胧紻SP系統(tǒng),采用經(jīng)緯映射法對魚眼圖像進(jìn)行畸變校正,校正過程中不需要標(biāo)定靶標(biāo),方便快捷,且其效果較好。實驗結(jié)果表明,該系統(tǒng)能夠獲得較好的校正效果,使用嵌入式DSP系統(tǒng),運算響應(yīng)速度快,運算時間短,且能夠滿足實時性要求。
魚眼圖像;畸變校正;數(shù)字信號處理器
目前,市場上使用的攝像頭大多是普通的鏡頭,由于普通的鏡頭有很大的視覺盲區(qū),拍攝到的景物區(qū)域很小,在要求很大的視場范圍時不能廣泛使用,而使用魚眼鏡頭可以獲取更大的視野場景,受環(huán)境影響小、穩(wěn)定性強、景深范圍從幾厘米到無限遠(yuǎn)。但是魚眼圖像有嚴(yán)重的畸變,如果要使用這些帶有嚴(yán)重畸變的投影信息,必須將其轉(zhuǎn)換成人眼視覺所習(xí)慣的透視投影圖像,還原其真實的場景[1]。因此,一種較好的魚眼鏡頭圖像畸變校正技術(shù)是非常必要的。攝像機標(biāo)定技術(shù)是一種精確恢復(fù)的算法,但是相機標(biāo)定技術(shù)針對特定的相機,且計算繁瑣,復(fù)雜度很高,在嵌入式實時系統(tǒng)中的時間開銷也很大。本文使用文獻(xiàn)[2]中的魚眼圖像校正方法,在嵌入式DSP系統(tǒng)上實現(xiàn)魚眼圖像的實時校正。此方法比較簡單,運算速度快,實用性強,校正效果好,可以達(dá)到處理魚眼鏡頭圖像校正要求,并且能夠?qū)Σ杉降聂~眼圖像進(jìn)行實時校正,滿足實時性的要求。
魚眼鏡頭的成像原理可以用圖1說明,魚眼鏡頭的成像可以看作為一個半球面[3]。假設(shè)攝像機的原點為O,光軸為Z軸,拍攝時沿著OZ方向進(jìn)行拍攝,空間中的任意一點P0,連接OP0,與半球面交于點P1,過P1作Z軸的平行線,交OXY面于點P2,P2即為P0的像點。
圖1 魚眼圖像成像原理
魚眼圖像校正的目的是將一幅存在光學(xué)畸變的圖像,轉(zhuǎn)化為可以直接處理的線性透視投影圖像。魚眼圖像的校正方法有多種[4-7],本文是基于文獻(xiàn)[2]中的經(jīng)緯映射算法對魚眼圖像進(jìn)行校正。該方法可以獲得較好的校正效果,且校正后的圖像滿足垂直不變性,可以為圖像拼接做準(zhǔn)備。具體算法如下:
假設(shè)魚眼圖像平面像素坐標(biāo)為(i,j),將其轉(zhuǎn)換為規(guī)格化坐標(biāo)(u,v),其范圍在-1到1之間,如圖2(a)所示。P(u,v)為極坐標(biāo)平面(投影平面)上的任意一點,求出點P到O的距離r和點P與U軸的夾角φ,如圖2(b)所示:
圖2 兩種坐標(biāo)平面
r和φ的計算公式如下:
(1)
u≥0
u<0
(2)
在球面坐標(biāo)系中,圖 3(a)顯示的是魚眼映射的球坐標(biāo)。其中,θ角是r乘以魚眼視角的一半。即
(3)
假設(shè)球面的半徑是1,從原點(攝像機中心)到實景中某一點的方向向量(x,y,z)為
0≤φ≤2π
(4)
通過(x,y,z),就可以推導(dǎo)出對應(yīng)的θ′φ′坐標(biāo)。因為在球面到映射圖時的球坐標(biāo)和魚眼映射時的極坐標(biāo)是不一樣的,所以,需要重新選取坐標(biāo)系。如圖3所示。
圖3 坐標(biāo)系的重新選取
其中,θ′是攝相機到實景方向向量與y軸的夾角;φ′是方向向量在XOZ平面上的投影與X軸負(fù)軸的夾角。計算(θ′,φ′)的公式如下:
(5)
根據(jù)以上公式,經(jīng)過一系列的變換,就可以得到目標(biāo)圖像上每一點(i,j)映射到源圖上的點(θ′,φ′),這樣,整個的魚眼圖像校正算法就基本完成了,最后還需要一步就是對校正后的圖像進(jìn)行插值處理。
基于DSP的魚眼圖像實時校正系統(tǒng)由硬件和軟件兩部分組成。硬件組成主要包括電源、魚眼鏡頭、攝像機、DSP圖像處理系統(tǒng)、JTAG仿真器、PC機、顯示器等。魚眼鏡頭選用富士能的FE185C046HA-1,如圖4所示。
本系統(tǒng)所選用的DSP芯片型號為TMS320DM642,該款芯片是一款高性能定點數(shù)字信號處理器。片上帶有豐富的視頻硬件資源,它是專為數(shù)字多媒體所應(yīng)用設(shè)計制造的[8]。圖5為本系統(tǒng)的硬件結(jié)構(gòu)示意圖。
圖4 魚眼相機
圖5 硬件結(jié)構(gòu)示意圖
軟件部分,使用CCS3.3作為開發(fā)環(huán)境,CCS3.3提供了配置、建立、調(diào)試、跟蹤和分析程序的工具,它便于實時、嵌入式信號處理程序的編制和測試,它能夠加速開發(fā)進(jìn)程,提高工作效率。最后經(jīng)編譯、連接將編譯好的程序燒錄到嵌入式DSP系統(tǒng)中。
編寫的程序是基于DSP/BIOS的程序設(shè)計,DSP/BIOS是一個簡易的實時嵌入式操作系統(tǒng),其由三個部分組成,包括DSP/BIOS實時多任務(wù)內(nèi)核與API函數(shù)、DSP/BIOS配置工具,以及DSP/BIOS實時分析工具。其中,在程序開發(fā)的過程中,主要是通過調(diào)用實時庫中的API(應(yīng)用編程接口)函數(shù)來實現(xiàn)的。這些API函數(shù)提供了在嵌入式平臺中的基本操作,包括實時、I/O模塊、軟件中斷管理、時鐘管理等情況下捕獲信息所進(jìn)行的操作。DSP/BIOS分析工具可以輔助CCS3.3環(huán)境實現(xiàn)程序的實時調(diào)試,通過CCS下的DSP/BIOS工具控制面板可以選擇多個實時分析工具,包括CPU負(fù)荷圖、程序模塊執(zhí)行狀態(tài)圖、主機通道控制、信息顯示窗口、狀態(tài)統(tǒng)計窗口等。這些分析工具可以進(jìn)行程序跟蹤、性能檢測以及文件服務(wù)等等。通過使用以上資源,來完成程序設(shè)計。
整個嵌入式DSP軟件系統(tǒng)工作流程如圖6所示。
圖6 DSP/BIOS的軟件流程
對采集到的魚眼圖像進(jìn)行處理,圖7為采集到的魚眼圖像,圖8為經(jīng)算法校正后得到的校正圖。這種校正方法簡單,不用設(shè)置靶標(biāo)對攝像機進(jìn)行參數(shù)標(biāo)定,是一種通用的校正方法,校正效果也比較理想。實驗中,在PC上對一幅靜態(tài)魚眼圖像校正所需的時間為6~8s。而使用嵌入式DSP系統(tǒng),校正一幅魚眼圖像所需時間為2~3s,響應(yīng)速度快,運算時間較PC上縮短。最后,通過魚眼相機實時采集圖像,經(jīng)DSP系統(tǒng)實時處理,輸出的校正圖像能夠達(dá)到28幀/min的視頻處理速度,滿足實時性要求。
圖7 采集到的魚眼圖像
圖8 校正后圖像
[1] ZHANG Ning,LIU Tianjian.The research and implementation algorithm for fisheye image[J].Journal of Minjiang University,2012,33(5):74-76.(in Chinese) 張寧,劉天鍵.魚眼圖像校正算法研究與實現(xiàn)[J].閩江學(xué)院學(xué)報,2012,33(5):74-76.
[2] YANG Ling,CHENG Yun.The designing methods of fish-eye distortion correction using latitude-lon-gitude projection[J].Journal of Engineering Graphics,2010,(06):19-22.(in Chinese) 楊玲,成運.應(yīng)用經(jīng)緯映射的魚眼圖像校正設(shè)計方法[J].工程圖學(xué)學(xué)報,2010,(06):19-22.
[3] CHANG Danhua,ZHAO Dan,YANG Fengming,et al.Improvement of fisheye image contour extraction and image correction algorithm[J].Laser & Infrared,2012,42(4):448-451.(in Chinese) 常丹華,趙丹,楊峰明,等.提取魚眼圖像輪廓的算法改進(jìn)及圖像校正[J].激光與紅外,2012,42(4):448-451.
[4] YANG Guangquan.Fisheye image correction algori-thm[J].OME Information,2009,26(4):43-46.(in Chinese)
楊廣全.魚眼圖像的校正算法[J].光機電信息,2009,26(4):43-46.
[5] Nishimoto T,Yamaguchi J.Three dimensional measurement using fisheye stereo vision[C]//SICE,2007 Annual Conference,IEEE,2007:2008-2012.
[6] YING Xianghua,HU Zhanyi.Fisheye lense distor-tion correction.using spherical perspective projection constraint[J].Chinese Journal of Computers,2003,12:1702-1708.(in Chinese) 英向華,胡占義.一種基于球面透視投影約束的魚眼鏡頭校正方法[J].計算機學(xué)報,2003,26(12):1702-1708.
[7] ZHANG Zhenghua,Yasuyuki Matsushita,MA Yi.Camera calibration with lens distortion from low-rank textures[C]//Computer Vision and Pattern Recognition(CVPR),2011 IEEE Conference on.IEEE,2011:2321-2328.
[8] LI Xiaohong.Development and application of image processing laboratory system based on DSP[J].Journal of Hefei University.2009,19(4):38-41.(in Chinese) 李小紅.基于DSP圖像處理實驗系統(tǒng)的開發(fā)與應(yīng)用[J].合肥學(xué)院學(xué)報,2009,19(4):38-41.
Implementation of fisheye image real-time correction based on DSP
ZHANG Bao-feng1,MA Zhi-jun1,ZHU Jun-chao1,FENG Wei-jia2
(1.Tianjin Key Laboratory for Control Theory & Applications in Complicated Systems,Tianjin University of Technology,Tianjin 300384 China;2.College of Computer and Information Engineering,Tianjin Normal University,Tianjin 300387,China)
As the distortion of fish-eye images is very serious,the distortion should be corrected. Based on embedded DSP system,the distortion of fish-eye images is corrected by using the longitude-latitude projection method. This method does not require any calibration equipment during the correction,and the operation is easy. Experiment results show that this method has better correction effect. After using embedded DSP system,the operation speed is fast and the spended time is short. It can meet the real-time requirement.
fisheye image;distortion correction;DSP
1001-5078(2015)02-0181-04
國家自然科學(xué)基金(No.61172185);天津市高等學(xué)??萍及l(fā)展基金項目(No.20100705)資助。
張寶峰(1962-),男,博士生導(dǎo)師,教授,主要研究方向為激光及光電測試技術(shù),計算機可視化技術(shù),先進(jìn)檢測方法和智能化儀表。E-mail:zhangbaofeng@263.net
2014-06-09;
2014-07-07
TH74
A
10.3969/j.issn.1001-5078.2015.02.014