楊 懷,陳 烽
(西藏民族大學信息工程學院,陜西 咸陽 712082)
在計算機視覺研究中,攝影測量技術以攝像機標定為基礎,而攝像機標定在一些其它技術中也是非常重要的一部分,例如三維重建、立體成像等。由于相機的光學成像采用傳統(tǒng)的小孔成像技術,造成了成像平面上的空間點與成像點之間距離較遠,同時伴隨著一種極其復雜的非線性關系,也就是通常所說的鏡頭畸變。鏡頭畸變不但會在一定程度上降低攝像機的校準精準度,而且還有使圖像特征位置產(chǎn)生誤差。
為解決該問題,李賽[1]等人一種基于POS(定位定姿系統(tǒng))數(shù)據(jù)的紅外影像分步幾何校正方法。利用視矢量法對紅外影像進行初始化校正,將其投射到高斯地輔平面上,完成拼接、虛擬空間點提取等操作;利用最小二乘法對影像進行二次校正,完成紅外影像的幾何校正。姚欽舟[2]等人介紹了一種用于水下透視投影的畸變校正算法。首先,采用四維光場參數(shù)建立多層平面折射模型,對水下圖像進行分析,得到水中成像點與校正成像點之間的映射關系;然后,根據(jù)二者之間的映射關系,把水下圖像轉(zhuǎn)化成立體投射圖像;最后,利用該方法對立體投射圖像進行畸變校正。
上述兩種方法均需要特定的標定物來調(diào)整攝像機內(nèi)外的各項參數(shù),實現(xiàn)過程相對來說比較復雜,對于一些特殊環(huán)境顯然是不合適的。基于此,本文提出基于深度學習的圖像特征位置誤差校正方法。在提取得到圖像特征點的位置信息后,選取AlexNet作為深度學習網(wǎng)絡結(jié)構(gòu),同時引入dropout策略和修正線性單元激活函數(shù),提高算法的學習速率;建立圖像誤差模型和校正模型,在牛頓迭代法的指導下,對θ值和校正參數(shù)進行最精準的估計和計算,至此完成圖像特征位置誤差校正。選取損失率、均方根誤差和均方誤差作為算法的評價指標,將本文方法與其它方法展開對比仿真,結(jié)果表明,本文方法取得了最理想的誤差校正效率,同時保證校正后的圖像與原始圖像之間最為接近。
將參數(shù)引入到圖像灰度插值算法中,從而實現(xiàn)了圖像的特征點定位。通過對參數(shù)的持續(xù)調(diào)整,有效修正了圖像的非均勻性、非對稱引起的特征點模糊,具體實現(xiàn)過程如下所示:
1)利用高斯低通濾波器[3]實現(xiàn)對圖像的平滑濾波處理,將濾波器的窗口寬度設置與圖像寬度相等,方差保證在50以上。
2)對圖像的邊緣信息進行特征提取。
3)利用數(shù)學形態(tài)學算法將圖像邊緣完整地連接起來,并對曲線內(nèi)部進行填補,分割圖像得到若干個區(qū)域。
4)通過對每個分割區(qū)域的邊界序列進行提取,得出各邊界曲線曲率的大小。將兩個邊緣陣列劃分成上、下兩個邊緣。
5)利用KD樹(k-dimensional tree)[4]算法,找出上、下兩個邊緣集合中距離最為接近的點,構(gòu)成對應點對。
6)對處于對應點對之間的所有點求取灰度值,得到圖像整體的灰度分布情況。
7)根據(jù)圖像灰度分布數(shù)據(jù),對上邊緣特征點進行求解,過程如下:
步驟一:確定圖像中灰度值最大值,選取該值的30%~40%作為分割閾值。將分割閾值與圖像中的分割灰度值進行比較,選取灰度值大于閾值的那一部分,將其作為灰度分布的有效數(shù)據(jù)序列[5]。
步驟二:在數(shù)據(jù)序列中,所有的灰度值都是由各單位像素的光強記錄量化后得到的,為了更好地了解實際的灰度分布狀況,將各數(shù)據(jù)序列的下標放大10倍。通過對圖像下標放大處理后,使得圖像的最大、最小灰度數(shù)值均為0。在數(shù)據(jù)序列中選取一個控制點,利用樣條插值[6]得到擴大后圖像的灰度值。
步驟三:將下標擴大后的圖像序列長度設定為N,i時刻下的序列值為gi,待處理圖像的序列總量為
(1)
當An=0時,說明分割區(qū)域中不含有圖像邊緣特征點;當An>0時,說明分割區(qū)域中含有圖像邊緣特征點。
步驟四:圖像的不完整主要體現(xiàn)在邊緣不完整。當An的值在[0.5,1]區(qū)間內(nèi)時,圖像的邊緣是比較完整的,此時,可利用插值算法求取下標的值。將下標擴大后再對其進行逆運算,結(jié)合過程6),得到圖像灰度分布的特征點。
步驟五:在對應點對求取灰度值和邊緣特征點后,即可得到圖像中所有的特征點,從而獲得其位置信息,同時保留更多的細節(jié)特征[7],這對于后續(xù)進行特征位置誤差校正起到了一定的推動作用。
基于特征點位置的提取結(jié)果,選擇AlexNet作為圖像特征位置誤差校正的深度學習網(wǎng)絡結(jié)構(gòu),其基本架構(gòu)圖如圖1所示。
圖1 AlexNet基本架構(gòu)圖
從圖1中可以看出,AlexNet總有8個層次。AlexNet利用dropout策略和修正線性單元激活函數(shù)來緩和學習過程中的過擬合情況,同時借助GPU(Graphics Processing Unit,圖形處理器)提高學習效率。
經(jīng)過上述分析處理后,利用AlexNet結(jié)構(gòu)實現(xiàn)對圖像特征位置誤差的校正。建立誤差模型[8]θd(θ)=θ+k0θ3+k1θ5+k2θ7,在模型中引入校正參數(shù){r0,r1,r2},得到圖像特征位置誤差校正模型,如式(2)所示
(2)
式中,θ(θd)表示經(jīng)過誤差校正后圖像所對應的入射角[9],θd表示未經(jīng)過誤差校正前,圖像所對應的入射角。
用If來表示待校正誤差圖像,誤差參數(shù)為{k0,k1,k2},將If的幾何分辨率設定為H×W,其中,W、H分別為圖像的長和寬。在待校正誤差圖像中任取一點Pf,其像素坐標值為(xf,ff),將其代入到笛卡爾坐標系中,得到笛卡爾坐標值(xc,fc),計算過程為
(3)
式中,fx、fy分別表示在水平方向和垂直方向上,待校正誤差圖像單位長度內(nèi)的像素格[10]數(shù)量,(u0,v0)表示待校正誤差圖像中心點的位置坐標,可由式(4)推理得到
(4)
那么,即可得到點Pf與中心點
(u0,v0)之間的距離rd為
(5)
進一步推理可得
(6)
在已知誤差模型θd(θ)=θ+k0θ3+k1θ5+k2θ7中θd和{k0,k1,k2}值的前提下,由于θd(θ)是θ的七次多項式函數(shù)[11],那么可通過牛頓迭代法對多項式函數(shù)進行求解。
牛頓迭代法是利用有限次迭代[12]對方程f(x)=0的根進行估計的一種方法。在已知函數(shù)f(x)的前提下,即可推理得到其導數(shù)f′(x)的值。選定一個與f(x)零點比較接近的初始值x0,比x0更精準的估計值x1表達式為
(7)
重復上述計算過程
(8)
循環(huán)迭代計算,直至滿足預設的估計值準確度[13]δ=xn+1xn為止,此時輸出方程f(x)=0的估計值結(jié)果。
在計算θ值的過程中,將方程f(x)=0轉(zhuǎn)換為函數(shù)的形式,得到
f(θ)=θ+k0θ3+k1θ5+k2θ7-θd
(9)
f(θ)的導數(shù)f′(θ)計算公式為
f′(θ)=1+3k0θ2+5k1θ4+7k2θ6
(10)
根據(jù)牛頓迭代法思路,θ的估計值可通過式(11)計算得到
(11)
得到θ的估計值后,可對式(2)作出部分改進,得到
(12)
對于校正參數(shù){r0,r1,r2},可通過范德蒙行列式[14]計算得到。將式(12)轉(zhuǎn)換為矩陣PX=Q的形式,即可得到
(13)
式中,l表示矩陣P中需要計算的θ的數(shù)量,l=H×W即為校正圖像中所有像素格的數(shù)量[15]。
矩陣P即為一個范德蒙行列式,矩陣X對應校正參數(shù),可通過X=P-1Q計算得到
(14)
至此,關于校正模型的所有參數(shù)均已計算完畢,將待校正誤差圖像代入到模型中,完成圖像特征位置誤差校正。
為了驗證本文方法在實際應用中是否能取得理想的誤差校正效果,與引言中提到的分步幾何校正方法和畸變校正方法展開了對比仿真。仿真軟件選擇的是Matlab 2020b,顯卡為Geforce RTX2080 Ti。實驗圖像來自于UC Merced Land-Use圖像數(shù)據(jù)集,共選取了1500張,利用三種算法分別進行50次實驗,對不同指標計算結(jié)果取平均值,得到最終實驗測試數(shù)據(jù)。
為了更加直觀地對比三種算法的綜合性能,本文選取損失率Lose、均方根誤差RMSE以及均方誤差MSE作為算法的評價指標。損失率指的是算法在誤差校正過程中的訓練效果。Lose的值越小,說明訓練曲線越收斂,誤差校正的效果也就越好。
均方根誤差是用來表示經(jīng)過校正后的圖像和原圖像的擬合程度,RMSE的值越小,說明算法的擬合程度越高,校正效果也就越理想。RMSE的計算公式如式(15)所示
(15)
均方誤差是一種度量方法,它能反映出算法對圖像的校正效果和原始圖像之間的不同。MSE的值越小,則表示經(jīng)算法校正后的圖像愈接近原始圖像。MSE的計算公式分別為
(16)
三種算法損失率Lose對比結(jié)果如圖2所示。
圖2 三種算法Lose值對比結(jié)果
通過對比圖2數(shù)據(jù)可知,隨著實驗次數(shù)的不斷增加,三種算法的損失率均出現(xiàn)了下降趨勢,綜合對比之下可以發(fā)現(xiàn),本文方法的損失率曲線始終都是最低且最接近于0的。因此,可以說明本文方法對于圖像特征位置誤差校正的效果最理想。
經(jīng)過50次實驗后,三種算法的RMSE值對比結(jié)果如圖3所示。
圖3 三種算法RMSE值對比結(jié)果
從圖3中可以很清楚地看出,本文方法取得的RMSE值始終都是0.8pixel以下,而分步幾何校正方法的RMSE值最高達到了1.6pixel,畸變校正方法更是達到了1.8pixel。由此得出結(jié)論,利用本文方法校正圖像特征位置誤差,結(jié)果是最優(yōu)秀的,與原始圖像也是最接近的。
三種算法的MSE值對比結(jié)果如圖4所示。
圖4 三種算法MSE值對比結(jié)果
從圖4中可以看出,隨著實驗次數(shù)的不斷增加,三種算法的均方誤差都出現(xiàn)了不同程度的下降,可以很明顯地看到,本文方法的均方誤差曲線始終要低于其它兩種方法,由此證明,利用本文方法校正圖像特征位置,可得到與原始圖像差異最小的圖像。
為直觀證明研究方法對特征特征位置誤差的校正效果,從UC Merced Land-Use圖像數(shù)據(jù)集中隨機選取三幅密集特征圖像,對其中存在位置誤差的特征實現(xiàn)校正,結(jié)果如圖5所示。
圖5 研究方法的特征位置校正結(jié)果
從圖5中可以看出,研究方法應用下,能夠精準定位圖像發(fā)生畸變的特征位置,對其完成校正。本次實驗結(jié)果證明了研究方法下圖像保持了特征細節(jié)信息,具有理想的實用性能。
傳統(tǒng)圖像特征位置誤差校正方法存在誤差大、精度低等問題,導致特征校正后的圖像與原始圖像細節(jié)出現(xiàn)偏差。基于此,提出基于深度學習的圖像特征位置誤差校正方法。利用深度學習網(wǎng)絡結(jié)構(gòu)建立誤差模型和校正模型,通過對校正模型中校正參數(shù)和θ值的計算,完成圖像特征位置誤差校正。在對比仿真中,本文方法具有更低的損失率、均方根誤差以及均方誤差,驗證了本文方法具有理想的誤差校正效果。在下一步的工作中,將會繼續(xù)深入研究如何將校正模型應用到更加復雜的圖像中,為計算機視覺領域的發(fā)展做好基礎準備工作。