Skip to content

PointCloud

Harumo Sasatake edited this page Oct 18, 2018 · 4 revisions

pcl::PointCloud<>

点群を表すクラス. cvでいうMatみたいなクラス. このクラスに対して,いろいろなアルゴリズムを作用させる.

メンバ変数・関数

メンバ変数・関数 説明
width もし,点群データが画像データとして構成されている場合の点群の横幅
height widthとの縦版
is_denth Nan(Not a Number)やinf(無限大の値)が点群中に格納されているかを表す.trueなら入ってないことを表す.
points 点群中の一つの点を表すメンバ変数.pcl::PointXYZで点群を初期化してるなら,PointXYZのx,y,zなどにアクセスできる
points.size() 点群に含まれる点の数
points.resize(int size) 点群に含まれる点の数を変更する.主に初期化で使われる

pointsから点データにアクセスするためには,以下の感じで行います.

//PointXYZを使用している場合
point_cloud.points[i].x
point_cloud.points[i].y
point_cloud.points[i].z

あと,初期化は下記の感じで行います. こんなふうに,位置から全部初期化することはないけどな

pcl::PointCloud<pcl::PointXYZ> point_cloud;
point_cloud.width = 5;
point_cloud.height = 1;
point_cloud.is_denth = false;
point_cloud.points.resize(point_cloud.width * point_cloud.height);

for (size_t i = 0; i < point_cloud.points.size(); i++){
    point_cloud.points[i].x = rand();
    point_cloud.points[i].y = rand();
    point_cloud.points[i].z = rand();
}

Clone this wiki locally