PnP問題求解

2021-10-03 11:41:10 字數 963 閱讀 3905

pnp演算法是指已知3d點及其在相機上的投影,求相機姿態的問題。

投影方程可以表示為:

λ [u

v1]=

k[rt

][xy

z1

]\lambda \begin u \\ v \\ 1 \end = k \begin r & t \end\begin x \\ y \\ z\\1 \end

λ⎣⎡​uv

1​⎦⎤

​=k[

r​t​

]⎣⎢⎢

⎡​xy

z1​⎦

⎥⎥⎤​

這裡的k為相機內參矩陣,是已知的。我們要做的就是從n對這樣的對應關係中恢復出相機姿態。在slam應用中,系統初始化後,後面的跟蹤就是基於求解pnp問題。

1、求解pnp問題的dlt解法

首先,將[rt

]\begin r & t \end

[r​t​]

看作是乙個包含12個未知量的3x4矩陣,而將投影方程消去尺度因子λ

\lambda

λ後,可以獲得兩個方程,在聯立不少於6個的投影方程後,即可求出12個未知量的最小二乘解,最後恢復出[rt

]\begin r & t \end

[r​t​]

。2、求解pnp問題的epnp解法

它的思路是先將世界座標系下的三維點轉換到相機座標系下,再用icp的方式得到相機位姿。但是,如何在位姿未知的情況下轉換?這裡引入了控制點的概念,所有的三維點都可以由四個控制點表示,在世界座標系和相機座標系下只有基底的變化,係數是相同的。而這就要求獲得控制點在相機座標系下的座標,這裡同樣利用的是投影方程聯立求解。

以上具體推到過程參考:

PNP問題調研

最近,在閱讀一篇openface的文章,在頭部姿態檢測方面,他提到利用面部地標3d檢測後,再使用正投影將它們投影到影象中,這使得通過求解pnp問題,可以準確地估計出目標的大小。下面對pnp問題做乙個簡單的調研。關於pnp問題,就是對物體的定位問題,是求解3d到2d點對的運動的方法。pnp問題 假定攝...

P NP 問題的描述

下面引入p類問題的概念 如果乙個問題可以找到乙個能在多項式的時間裡解決它的演算法,那麼這個問題就屬於p問題。p是英文單詞多項式的第乙個字母。哪些問題是p類問題呢?通常noi和noip不會出不屬於p類問題的題目。我們常見到的一些資訊奧賽的題目都是p問題。道理很簡單,乙個用窮舉換來的非多項式級時間的超時...

載入PNP裝置

2 bus driver建立裝置,加入自己的子裝置列表。3 bus driver呼叫ioinvalidatedevicerelations來通知pnp manager更新他的裝置樹。4 pnp manager傳送乙個irp mn query device relations的irp。5 bus dr...