一種相機幾何標定處理方法及裝置的制造方法
【技術領域】
[0001] 本發明涉及圖像處理領域,特別涉及一種相機幾何標定處理方法及裝置。
【背景技術】
[0002] 全景拍攝,通常是指以某個點為中心進行水平360度和垂直180度拍攝,將所拍攝 的多張圖片拼接成一張全景圖片的拍攝及圖片拼接方法。一般來說,全景拍攝至少可包括 全景圖像和全景視頻兩種形式。
[0003]通常,在利用所拍攝的多張原始圖片拼接成一張全景圖片時,會涉及映射和拼接 兩部分。其中,映射可以理解為將原始圖片上的像素點投射到全景圖片對應的位置上,拼接 可以理解為對相鄰兩張原始圖片的重疊區域進行融合過渡。
[0004] 為了確定空間物體表面某點的三維幾何位置與其在原始圖片中對應點之間的相 互關系,可以通過相機幾何標定的方式,獲得相機參數,以便后續可以利用所述相機參數進 行像素點投影。通常,相機參數可包括相機的外參(如,roll 的內參(如u,v,w,a,0,γ )。其中,(Tx,Ty,Tz)表示平移向量,(roll,yaw,pitch)表示旋轉矩 陣,分別代表繞相機坐標系z軸旋轉角度為γ,繞y軸旋轉角度為β,繞X軸旋轉角度為a; (u, v,w)表示偏向畸變,(α,β,γ )表示魚眼鏡頭成像模型參數。
[0005] 目前,大多利用Levenberg-Marquardt算法(可簡稱為L-M算法)進行迭代計算,實 現相機幾何標定。該方式中,每次迭代過程都需要對每一個待估參數求二階偏導,得到黑塞 (Hessian)矩陣和雅克比(Jacobi)矩陣。當采用N個相機進行全景拍攝時,標定過程涉及12* N個待估參數,計算量龐大,需要耗費大量的計算時間,常用于服務器離線(offline)標定, 目前還無法實現實時在線處理。
[0006] 另外,基于L-M算法進行幾何標定時,若迭代過程中出現兩個矩陣的行列式為零, 即變換矩陣奇異,則可認為得到了相機參數的局部最優值。通常,局部最優值會受相機參數 初始值的影響,不同初始值可能會導致在不同的迭代過程中出現變化矩陣奇異,從而得到 不同的局部最優值,因此,該方式對初始值的選取還存在較高的要求。
【發明內容】
[0007] 本發明實施例提供一種相機幾何標定處理方法及裝置,可大大降低處理過程所涉 及的計算量,有助于實現實時在線處理。
[0008] -種相機幾何標定處理方法,所述方法包括:
[0009] 確定相機參數初始值,并獲得基于所述初始值計算出的點對的第一余弦距離,所 述點對為兩張相鄰圖片中對應于空間坐標同一位置的兩個像素點的坐標;
[0010] 判斷所述第一余弦距離是否與預設值相符,如果否,則獲取第一迭代參數,并利用 所述第一迭代參數調整所述初始值,獲得第一優化值;
[0011]獲得基于所述第一優化值計算出的所述點對的第二余弦距離;
[0012]判斷所述第二余弦距離是否與所述預設值相符,如果是,則將所述第一優化值確 定為相機參數標定值。
[0013] 優選的,如果所述第二余弦距離與所述預設值不符,所述方法還包括:
[0014] 獲取第二迭代參數,并利用所述第二迭代參數調整所述第一優化值,獲得第二優 化值;
[0015] 獲得基于所述第二優化值計算出的所述點對的第三余弦距離;
[0016] 判斷所述第三余弦距離是否與所述預設值相符,如果是,則將所述第二優化值確 定為相機參數標定值。
[0017] 優選的,所述確定相機參數初始值,包括:
[0018] 將所述相機參數的先驗值確定為所述初始值;或者,
[0019] 在所述相機的先驗值的基礎上增加隨機擾動,獲得所述初始值。
[0020] 優選的,獲得迭代參數的方式為:
[0021 ]對預設樣本進行機器學習,獲得所述迭代參數。
[0022] 優選的,對預設樣本進行機器學習,獲得所述第一迭代參數的方式為:
[0023]
[0024] 其中,(Mq,Nq)表不第一迭代參數,(^表不相機身份編號,X丨表不第j個相機的相機 參數標定值,4表示第j個相機的相機參數初始值,表示基于(Mo,No)計算出的點對的 第一余弦距離。
[0025] 優選的,所述利用所述第一迭代參數調整所述初始值,獲得第一優化值xj的方式 為
[0026] 一種相機幾何標定處理裝置,所述裝置包括:
[0027] 余弦距離計算單元,用于確定相機參數初始值,并獲得基于所述初始值計算出的 點對的第一余弦距離,所述點對為兩張相鄰圖片中對應于空間坐標同一位置的兩個像素點 的坐標;
[0028] 優化值調整單元,用于判斷所述第一余弦距離是否與預設值相符,如果否,則獲取 第一迭代參數,并利用所述第一迭代參數調整所述初始值,獲得第一優化值;
[0029] 所述余弦距離計算單元,還用于獲得基于所述第一優化值計算出的所述點對的第 二余弦距離;
[0030] 標定值確定單元,用于判斷所述第二余弦距離是否與所述預設值相符,如果是,則 將所述第一優化值確定為相機參數標定值。
[0031] 優選的,所述裝置還包括:
[0032] 所述優化值調整單元,還用于在所述第二余弦距離與所述預設值不符時,獲取第 二迭代參數,并利用所述第二迭代參數調整所述第一優化值,獲得第二優化值;
[0033] 所述余弦距離計算單元,還用于獲得基于所述第二優化值計算出的所述點對的第 三余弦距離;
[0034]所述標定值確定單元,還用于判斷所述第三余弦距離是否與所述預設值相符,如 果是,則將所述第二優化值確定為相機參數標定值。
[0035]優選的,所述裝置還包括:
[0036] 迭代參數獲得單元,用于對預設樣本進行機器學習,獲得所述第一迭代參數:
[0037]
[0038] 其中,(Μ〇,Ν〇)表示第一迭代參數,C表示相機身份編號,χ?表示第j個相機的相機 參數標定值,xi表示第j個相機的相機參數初始值,表示基于(M〇,No)計算出的點對的 第一余弦距離。
[0039] 優選的,所述優化值調整單元,具體用于根據xi = xj +1^4x0+N。計算獲得第一 優化值χ?。
[0040] 與現有技術相比,本發明方案使用泰勒多項式擬合圖片拼接過程中的映射關系, 將圖像模型參數的優化問題轉化為多項式與映射函數之間誤差的非線性凸二次優化問題。 具體地,可基于相機當前參數進行像素點投影,獲得所投影點對之間的余弦距離,再根據余 弦距離判斷是否需要進行相機參數優化,如果不需要,則可將當前參數作為相機參數標定 值;如果需要,則可利用機器學習獲得迭代參數優化當前參數,并利用優化后的參數進行迭 代計算,直至獲得相機參數標定值為止。如此方案,可大大降低處理過程所涉及的計算量, 有助于實現實時在線處理。
【附圖說明】
[0041] 為了更清楚地說明本發明實施例中的技術方案,下面將對實施例描述中所需要使 用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于 本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其 他的附圖。
[0042]圖1是本發明相機幾何標定處理方法的流程圖;
[0043] 圖2是基于本發明方案實現的圖片拼接的效果展示圖;
[0044] 圖3是基于現有技術方案實現的圖片拼接的效果展示圖;
[0045] 圖4是本發明相機幾何標定處理裝置的結構示意圖。
【具體實施方式】
[0046] 下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于 本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他 實施例,都屬于本發明保護的范圍。
[0047]在介紹本發明具體方案之前,先對本發明設計思路做簡單介紹。
[0048] 在進行全景拍攝時,任兩個相鄰相機所拍攝原始圖片中會存在部分重疊區域,對 這部分重疊區域進行融合過渡,可獲得全景圖片。對應于此,我們可以理解為,對于重疊區 域來說,存在如下場景:兩張相鄰原始圖片Α和Β,圖片Α中存在一個像素點a,圖片Β中存在一 個像素點b,且a和b均對應于空間坐標中的同一個位置。對應于此,可以將像素點a和b稱為 一個點對。
[0049] 拼接過程中,可以基于當前相機參數,分別將原始圖片上的像素點a和b映射到 Equirectangular(等距球面)投影圖像中,獲得a和b對應于Equirectangular圖像上的點對