相機運動估計和校正的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及監(jiān)測和校正圖像設(shè)備和方法。在一個示例中,本發(fā)明設(shè)及監(jiān)測并校正 掃描圖像。
【附圖說明】
[0002] 圖1示出了根據(jù)本發(fā)明的示例的示出了定位實驗期間的方向誤差的曲線。
[0003] 圖2示出了根據(jù)本發(fā)明的示例的示出了實驗期間的位置誤差的曲線。
[0004] 圖3示出了根據(jù)本發(fā)明的示例的示出了速度估計中的誤差的曲線。
[0005] 圖4示出了根據(jù)本發(fā)明示例的系統(tǒng)的框圖。
【具體實施方式】
[0006] 在各示例中,可W估計裝備有慣性測量單元(IMUK例如可W包括加速度計、磁力 計、巧螺儀和/或其他合適的設(shè)備中的一些或全部)W及掃描相機或其他通過逐帖掃描來獲 得圖像的圖像獲取系統(tǒng)(例如滾動快口相機)的設(shè)備的姿態(tài)(pose)(即,位置和方向 (orientation))。為此,已經(jīng)研制了狀態(tài)估計器,例如其可W是或可W包括擴展卡爾曼濾波 器、迭代最小化方法、滑動窗口束調(diào)整或其他估計過程,其處理對IMU和相機的測量。在各種 示例中,狀態(tài)估計器可W用于對掃描相機的圖像中的特征的觀測。
[0007] 與全局快口相機相反,掃描相機順序地捕獲圖像的行,并且作為結(jié)果,可W在非零 持續(xù)時間的時間間隔(稱為圖像的讀出時間)期間捕獲整個圖像。對于消費者設(shè)備(比如智 能手機)中的典型相機,讀出時間可W是幾十毫秒的數(shù)量級,運足W引起潛在的顯著視覺失 真。如果忽略滾動快口的效果,則估計精度可顯著下降。
[000引從掃描相機對單個圖像中的場景特征的觀察不能取決于單個相機姿態(tài)。在示例 中,在圖像讀出時間期間選擇參考時刻t。參考時刻t可被選為(例如)捕獲圖像的第一、最后 或中間行的時刻。如果在離該"參考"行n行遠的圖像行上檢測到特征(例如,"角"點特征), 可W通過下式描述它的測量:
[0009] z = h(Cpf (t+ntr) )+n (I)
[0010] 其中h是描述相機模型的測量函數(shù)(例如,透視函數(shù)),tr是捕獲兩個連續(xù)圖像行之 間的時間,n是測量噪聲,并且V (t+ntr)是特征在時間t+ntr處相對于相機帖的位置。該位 置矢量可W由下式給出:
[0011] + + 口)
[0012] 其中,;:'/非+ "〇是時間t+ntr處相機帖與參考的全局帖之間的旋轉(zhuǎn)矩陣/Pc(t+ ntr)是t+ntr處的相機位置,W及市:是全局帖中的特征位置。因此,不同圖像行處的特征測 量可W依賴于不同的相機姿態(tài)。在各示例中,為了針對狀態(tài)估計處理運些測量,估計器的狀 態(tài)矢量可W每個圖像行包括一個相機姿態(tài)。然而,運可能針對每個圖像使用將要包括在狀 態(tài)矢量中的上百個姿態(tài),并且對于全部(除了相對短的)軌跡計算強度相對較大。
[0013] 使用掃描相機進行狀態(tài)估計的某些方法可W采用某種形式的相機軌跡近似。例 如,某些僅視覺(vision-only)方法使用關(guān)于記錄圖像的時刻之間的相機運動的假設(shè)。在一 種情況下,相機運動可W被假設(shè)為線性變化,而在另一種情況下,可W使用運動的更高階模 型。在各示例中,為了良好的性能,W相對高的帖速率處理相機圖像,使得在圖像捕獲時間 之間的相機運動的改變相對較小。
[0014] 在各實例中,采用圖像讀出時間期間線性和旋轉(zhuǎn)速度恒定的假設(shè)。由于讀出時間 可W顯著小于使用圖像的時間段,運可能是較不嚴格的假設(shè)。然而,在讀出時間期間相機的 運動曲線顯著改變(例如,當設(shè)備是手持式W及人正在快速行走,或當裝置被安裝在不平的 地上快速移動的機器人上)的情況下,假設(shè)可能不成立。
[0015] 在各實例中,可W通過采用基于時間的函數(shù)方案來對相機的運動建模。該方法可 W描述復(fù)雜運動,但其代價是會增加計算強度。為了對快速變化的運動建模,描述軌跡的狀 態(tài)矢量可W具有大尺度(即,必須使用大尺度的基于時間的函數(shù))。運可能使得實時應(yīng)用困 難,而且采用基于時間方案的其他方法可W采用離線批處理估計。
[0016] 與各種情況相反,IMU測量可用于計算圖像讀出時間期間的相機軌跡,并且與使用 相機運動自身的模型相反,參數(shù)模型可W被用于對運些運動估計中的誤差建模。在各示例 中,在圖像讀出時間期間的IMU位置被建模為:
[0017 ] 。+ r)二 7,,, (/ + T)+' 7), ('/ + r)
[0018] 其中估計6托(/+7)是通過從參考姿態(tài)開始對IMU測量進行積分來計算的,W及使 用m基函數(shù)將誤差。武(/ + r)參數(shù)化為:
[0019] 。& (/+T) = 的 巧:) i=U
[0020] 其中Cl是未知的參數(shù)矢量,并且fi(T)是我們自由選擇的基函數(shù)。與該位置類似,基 于巧螺儀測量的傳播可W被用于計算在讀出時間期間對IMU方向的估計。運些估計中的誤 差可W由一個3X1的誤差矢量g^ + r:)來描述,并且可W使用k基函數(shù)將其參數(shù)化為:
(4)
[0022] 其中di是未知參數(shù)矢量。該方法可W不包括任何關(guān)于軌跡的形式的假設(shè),并且因 此可W描述任意復(fù)雜運動,只要任意復(fù)雜運動位于IMU傳感器的帶寬內(nèi)即可。同時,運動中 的誤差可W例如通過選擇基函數(shù)的數(shù)量而被建模為任意所需的各種等級的精度。可W選擇 基函數(shù)的類型和數(shù)量,使得可W事先預(yù)測近似誤差。在各示例中,即使使用相對少的項,誤 差可W被建模到足夠精度。
[0023] 在各示例中,在采用線性化的任意估計器(如擴展卡爾曼濾波器或基于迭代最小 化的估計器)中,可W寫出關(guān)于測量殘差的估計器等式(可稱為基于卡爾曼濾波器估計器中 的"創(chuàng)新"),其可被定義為實際特征測量與基于狀態(tài)估計i預(yù)期測量之間的差異。然后運些 殘差可W通過包括狀態(tài)估計的誤差5T的線性表達式進行近似:
[0024] V-Z-h{x) (^5)
[0025] - Hx+n (6)
[00%]其中H是測量函數(shù)關(guān)于該狀態(tài)的雅可比矩陣。戈和芳不一定具有相同的參數(shù)設(shè)置 (例如,方向狀態(tài)估計通常經(jīng)由3X3旋轉(zhuǎn)矩陣或4X1單位四元數(shù)表示,而方向誤差通常經(jīng)由 最小的3 Xl參數(shù)設(shè)置表示。
[0027] 等式(2)可W根據(jù)IMU姿態(tài)被重寫為:
[0028] ^ '片化;/非 + "/, ')(。八-。八 ^ + W, )V'八 (7 )
[0029] 其中.作'和Cpi是IM財目對于相機的方向和位置,而抑(巧舶和Gpi(t+ntr)定義t+ntr 處的全局帖中的IMU的方向和位置。被用于計算期望測量的特征位置的估計,可W是:
[0030] 辦十,'如} ? 當各化(《中如)((咕/…。兵如十誠))'個。拚 撕
[0031] 其中C表示估計器中量的估計??蒞使用讀出期間的IMU測量W及在時間t處的IMU 狀態(tài)估計("參考姿態(tài)"的估計)來計算t+ntr處的IMU姿態(tài)。具體地,在t+ntr處估計的IMU位置 可W被計算為:
辦
[0033]其中,是IMU速度并且是IMU的估計的加速度,它們是使用加速度測量計 算的(在針對重力W及針對例如偏差、比例因子等的任意系統(tǒng)誤