簡體   English   中英

在findHomography()中獲得的矩陣的同構分解

[英]Homography decomposition of the matrix obtained in findHomography()

我已使用此代碼作為基礎來檢測場景中的矩形目標。 我使用ORB和Flann Matcher。 我已經能夠使用findHomography()perspectiveTransform()函數成功繪制場景中檢測到的目標的邊界框。
參考圖像(以上代碼中的img_object )是僅矩形目標的直視圖。 現在,我的場景圖像中的目標可能會向前或向后傾斜。 我想找出它傾斜的角度。 我閱讀了各種文章,得出的結論是, findHomography()返回的單應性可以分解為旋轉矩陣和平移向量。 我使用了https://gist.github.com/inspirit/740979的代碼, 此鏈接將其推薦為C ++。 這是從OpenCV的攝像機校准模塊獲得的Zhang SVD分解代碼。 我從O'Reilly的Learning OpenCV一書中獲得了有關此分解代碼的完整說明。
我的問題是:

  1. 我以為我得到的分解后的旋轉矩陣會告訴我目標傾斜的角度是否正確?
  2. 其次,我可以使用從findHomography()獲得的findHomography()作為該分解模塊的輸入,並期望正確的輸出嗎? 還是我想念的東西?
  3. 我還有其他方法可以實現相同目標嗎?

最后,我在移動平台上編碼,因此我也擔心性能。 如果您能指出正確的方向,我將非常高興。

在此先感謝您的時間和答復。

張的校准程序將產生一個旋轉矩陣。 這可以表示為3個(歐拉角),而不是一個。 或者,等效地(通過Rodriguez公式),作為一個單位矢量和圍繞該矢量的旋轉角度-即再次為三個數字。

除非您的相機和目標彼此非常小心地放置,否則沒有理由期望只有一個非零的旋轉角度。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM