已知路面同一位置不同高度2點, 獲取此兩點座標

2022-04-09 12:58:10 字數 2253 閱讀 6386

已知相機內參以及與路面座標系的之間的外參, 若已知路面同一位置不同高度2點a, b的座標(u0, v0), (u1, v1), 求此兩點世界座標系下座標, 不妨設a(x0, y0, z0), b(x0, y0, z1)

世界座標系 => 相機座標系

\[\begin

\begin

x_c\\y_c\\z_c

\end= \begin

r_ & r_ & r_ & t_0 \\

r_ & r_ & r_ & t_1 \\

r_ & r_ & r_ & t_2 \\

\end

\begin

x_w\\y_w\\z_w \\1

\end

\end

\]相機座標系 => 畫素座標系

\[\begin

s\begin

u\\v\\1

\end &=

\begin

f_x & 0 & c_x \\

0 & f_y & c_y \\

0 & 0 & 1

\end

\begin

x_c\\y_c\\z_c

\end

\end

\]由如上可得

\[ \left\

\fracx_w + r_y_w + r_z_w + t_0}x_w + r_y_w + r_z_w + t_2} =\frac = \frac = a \\

\fracx_w + r_y_w + r_z_w + t_1}x_w + r_y_w + r_z_w + t_2} = \frac = \frac =b

\end

\right.

\]\[ \left\

(r_-ar_)x_w + (r_-ar_)y_w + (r_-ar_)z_w = at_2 - t_0 \\

(r_-br_)x_w + (r_-br_)y_w + (r_-br_)z_w = bt_2 - t_1

\end

\right. \]令

\[ \left\

a_0 = \frac \\

b_0 = \frac \\

a_1 = \frac \\

b_1 = \frac \\

\end

\right. \]則

\[ \left\

(r_-a_0r_)x_0 + (r_-a_0r_)y_0 + (r_-a_0r_)z_0 + 0z_1 = a_0t_2 - t_0 \\

(r_-b_0r_)x_0 + (r_-b_0r_)y_0 + (r_-b_0r_)z_0 + 0z_1 = b_0t_2 - t_1 \\

(r_-a_1r_)x_0 + (r_-a_1r_)y_0 + 0z_0 + (r_-a_1r_)z_1 = a_1t_2 - t_0 \\

(r_-b_1r_)x_0 + (r_-b_1r_)y_0 + 0z_0 + (r_-b_1r_)z_1 = b_1t_2 - t_1 \\

\end

\right. \]則

\[\begin

(r_-a_0r_) & (r_-a_0r_) & (r_-a_0r_) & 0 \\

(r_-b_0r_) & (r_-b_0r_) & (r_-b_0r_) & 0 \\

(r_-a_1r_) & (r_-a_1r_)& 0 & (r_-a_1r_)\\

(r_-b_1r_) & (r_-b_1r_) & 0 & (r_-b_1r_)\\

\end \beginx_0 \\ y_0

\\z_0 \\z_1

\end

= \begina_0t_2 - t_0 \\ b_0t_2 - t_1

\\a_1t_2 - t_0 \\b_1t_2 - t_1

\end

\]\[x=a^b

\]問題反饋:上面的方案看起來合理, 可是列式計算時, 發現解法不正確. 記上述四元四次方程組為 ax=b, 其中a有乙個特徵值特別小, 也就是說det(a)的秩為3, 方程有無窮解. 猜測原因, 如下圖, 已知p1, p2點座標, 可以有無窮組同一位置不同高度的點組與之對應.

此時如果能知道a1, a2點實際的高度差, 那麼該問題就變成了3元3次問題, 可解(已經驗證)

c語言printf實現同一位置列印輸出

控制台同一位置列印輸出,例如 進度1 100 在同一位置顯示。剛學習c語言的時候一直想做起來,可惜查詢好多資料不行。時隔6年多,空閒之餘又想起這個問題,便決定一試,雖然c語言已經幾乎忘光了,呵呵。最終還是搞定了,這次運氣不錯,哈哈!include include include linux for ...

純CSS實現同一位置文字內容的漸變(文字不停替換)

先上效果圖 原句子 開始變換 新句子說一下思路 使用絕對定位使句子都重疊在乙個地方,然後用css控制透明度動畫便可實現句子的消失和出現 動畫為 出現,展示,消失,保持透明 假設乙個句子的消失時間為x,存在時間為y,則第二個句子延遲 x y 秒 第三個句子延遲2 x y 秒 最後乙個句子執行完 出現,...

jquery滾動條固定在某一位置

檢視歷史訊息的時候,需要將滾動條維持在正在檢視的訊息位置。本方法是通過新增屬性data msg獲取當前的位置,offset top獲取滾動距離,demo如下 html div class box div class messagebox p 原資料1 p p 原資料2 p p 原資料3 p p da...