1. 程式人生 > >深度圖轉點雲(Xtion/Kinect/OB等)

深度圖轉點雲(Xtion/Kinect/OB等)

 

深度圖轉點雲(Xtion/Kinect/OB等)

今天分享一個將深度圖轉點雲的方法。 
  所謂的深度圖一般指從深度相機中讀取到的帶有深度資訊的一幀資料,一般為16bit的png/pgm格式。深度圖不適合直觀的去察看,點雲的效果會更強,所以,一般我們都是將深度圖轉成點雲再察看。

其實,像Xtion/Kinect等深度相機可以直接輸出點雲,當然,深度圖的獲取也不僅是以上幾種裝置,例如雙目稠密重建演算法也可以。我這裡用到的是華碩的Xtion採集的資料。

基本原理

基本原理很簡單,其實就是簡單的相似三角形。先看下面示意圖: 

如上圖所示,將深度圖上的m點轉換成世界座標的M點,也就是深度圖轉點雲的子過程。我們假設深度圖中心為O’(圖中沒有標註,失誤),則可利用圖中三角形OmO’和OMA相似,所以可得OO′OA=mO′MAOO′OA=mO′MA,將這個相似關係反應到記憶體上,就是: