Kinect與PCL搭配實現RGBD點雲的實時顯示

2021-08-09 19:39:10 字數 1342 閱讀 3973

剛剛學會了將彩色影象與深度影象的對齊方法。利用kinect sdk裡面的對映函式,可以將深度圖的畫素和彩色圖對應,同時將深度圖對映到相機空間上。在利用pcl將深度影象的的每乙個畫素和與其對應的顏色存到點雲中,再進行顯示。

**如下:

#include #include #include #include #include #include using namespace cv;

using namespace std;

ikinectsensor* psensor;

const int idwidth = 512, idheight = 424;//深度圖尺寸

const int icwidth = 1920, icheight = 1080;//彩色圖尺寸

cameraspacepoint depth2xyz[idwidth*idheight];

colorspacepoint depth2rgb[icwidth*icheight];

void vieweroneoff(pcl::visualization::pclvisualizer& viewer)

//啟動kinect

bool initkinect()

else return false;

}//獲取深度幀

mat depthdata() }}

//獲取彩色幀

mat rgbdata() }}

int main()

pointtemp.b = mcolorimg.at(depth2rgb[i + j*idwidth].y, depth2rgb[i + j*idwidth].x)[0];

pointtemp.g = mcolorimg.at(depth2rgb[i + j*idwidth].y, depth2rgb[i + j*idwidth].x)[1];

pointtemp.r = mcolorimg.at(depth2rgb[i + j*idwidth].y, depth2rgb[i + j*idwidth].x)[2];

pointtemp.a = mcolorimg.at(depth2rgb[i + j*idwidth].y, depth2rgb[i + j*idwidth].x)[3];

cloud->push_back(pointtemp);}}

} viewer.showcloud(cloud);

mcolorimg.release();

mdepthimg.release();

cloud->clear();

waitkey(10); }

return 0;

}

希望能對大家有幫助!

點雲 PCL點雲濾波與實現

目錄 直通濾波器 passthrough 條件濾波 conditional removal 球半徑濾波器 radiusoutlinerremoval 4 統計濾波器 statisticaloutlierremoval 5 體素降取樣 voxelgrid 均勻取樣 uniform sampling i...

Boosting演算法與R的實現

boost也分為許多種類,如adaboost gradient boost xgboost等,gradient boost顧名思義,與梯度脫不開關係,對梯度有了解或學過數值計算的人應當知道,負梯度方向是函式下降最快的方向。在有監督機器學習中,我們的目標是學得使得損失函式最小的模型,因此梯度下降演算法...

看KVM 延長器與分割器搭配如何實現畫面分割效果?

一 機房描述與需求分析 二 方案設計 1 系統設計原則 實用性,適應使用者實際應用環境 穩定性及安全性 簡單化和標準化 可支援以後擴充 2 系統總體設計方案 1 方案系統配置 型號 品牌 產品描述 數量 kd 104t 銳盾配件包括 裝箱清單 保修卡 說明書光碟 電源介面卡 2條3公尺dvi訊號線 ...