讓我們坐我有點雲數據,我不知道傳感器的位置(它不是[0,0,0])。有沒有一種很好的方法來估算原始傳感器的位置?點雲傳感器位置估計
例如,從下面的點雲,
點雲數據:
發現的觀點,使點雲看起來像這樣(像深度圖)因此,有沒有(或最少)可以觀察到孔。
點雲看上去就像觀點這張照片,我想找到:
讓我們坐我有點雲數據,我不知道傳感器的位置(它不是[0,0,0])。有沒有一種很好的方法來估算原始傳感器的位置?點雲傳感器位置估計
例如,從下面的點雲,
點雲數據:
發現的觀點,使點雲看起來像這樣(像深度圖)因此,有沒有(或最少)可以觀察到孔。
點雲看上去就像觀點這張照片,我想找到:
典型的點雲的重建是通過攝取不同角度的對象和調整他們一起做。在點雲中,這個過程被稱爲註冊。因此,在kinect傳感器中沒有靜態位置,因爲在每個幀中,全局座標空間中的傳感器位置不是靜態的。
因此,我假設您並未詢問經過重建過程的點雲,因此是從靜態傳感器位置產生的點雲。如果該點雲沒有經歷任何變換(旋轉,過渡)並且使用原始深度數據生成,則點雲總是在深度相機座標空間中生成,其中原點是Kinect傳感器的位置。
在你的問題中,它表示傳感器位置不是[0,0,0],這意味着在捕獲深度圖像後,它已經被轉換到新的座標空間(我假設新座標空間的原點是給定點雲的中心)。所以如果不知道這個變換矩陣,你不能得到原始的攝像機位置(相對於新座標)。
當你說「傳感器的位置」時,你最需要指定你所指的座標空間。 的位置總是相對於特定的座標空間。
您可以在@Atif Anwer中找到相機的位置但是在一個條件下,兩個點雲中的任意一個沒有經過變換,因此它在原始座標空間中。然後,您可以找到第二個點雲相對於第一個點雲的變換,並將該變換矩陣應用到[0,0,0]以找到第二個點雲相對於初始深度相機座標空間的相機位置。
感謝您的回答。因此,據我瞭解您的答案,無法自動找到傳感器的位置(在全局座標中,在註冊後),根據我的假設,在沒有任何點雲傳感器位置的信息的情況下(任何單個掃描結果)。 – diskhkme
如果你正在尋找一個自動化過程,那麼我認爲這是不可能的(或者至少很容易實現)。但是,如果您有兩個點雲(而不是二維深度圖像),則可以嘗試使用基於點的膠合(在meshlab中)對齊它們。如果正確對齊,旋轉矩陣將爲您提供傳感器位置的原點,即深度圖點雲。 –
感謝您的回答。我想知道是否有自動化的方式.. – diskhkme