ぱたへね

はてなダイアリーはrustの色分けができないのでこっちに来た

pointcloud

詳解3次元点群処理

貴重な点群関係の書籍ということで、発売と同時に買ってちょっとずつ読みながら最後まで読みました。 www.kspub.co.jp どんな本 点群についてPythonとOpen3Dというライブラリを使って、基本的な操作やアルゴリズムを学びます。 最後の方は最近のトピックとし…

PCLで点群のクラスタリング

詳解3次元点群処理に点群の距離を使ったセグメンテーション(クラスタリング)が載っていたのでPCLでやってみました。 www.kspub.co.jp 基本的にはここのサンプルでOK。 pcl.readthedocs.io このサンプルは、最初に大きな面を取り除いています。テーブルの…

PCLでRANSACを使ったプリミティブ検出

詳解三次元点群処理にRANSACを使ったプリミティブ検出が載っていたのでPCLで試してみました。 www.kspub.co.jp pcl::SACSegmentation を使うと簡単にプリミティブの検出ができます。 注意点としては、本に載っているデータ(3dpcp_book_codes/data/tabletop_…

PCLでKdtree

詳解三次元点群処理にkdtreeが載っていたのでPCLで試してみました。 www.kspub.co.jp Kdtreeは点群を大きくツリー状のグリッドに分け、2段階で近傍点を探します。詳細は本を見て下さい。 #include <pcl/point_cloud.h> #include <pcl/common/io.h> #include <pcl/kdtree/kdtree_flann.h> #include <pcl/io/ply_io.h> #include <iostream> #include <vector> #incl</vector></iostream></pcl/io/ply_io.h></pcl/kdtree/kdtree_flann.h></pcl/common/io.h></pcl/point_cloud.h>…

PCLでHarris3D

詳解三次元点群処理に特徴点検出の一つHarri3Dが載っていたのでPCLで動かしてみました。 www.kspub.co.jp ほぼほぼ、サンプルのままです。 // // Created by natu on 2023/01/18. // #include <string> #include <pcl/keypoints/harris_3d.h> #include <pcl/io/ply_io.h> //https://github.com/PointCloudLibrary/</pcl/io/ply_io.h></pcl/keypoints/harris_3d.h></string>…

点群の外れ値除去

詳解 3次元点群処理にOpen3Dでの外れ値除去が載っていたのでPCLでもやってみた。 www.kspub.co.jp StatisticalOutlierRemovalのサンプル通りで動く。 #include <string> #include <pcl/io/ply_io.h> #include <pcl/point_types.h> #include <pcl/filters/statistical_outlier_removal.h> int main() { const std::string original_file = "/home/natu/</pcl/filters/statistical_outlier_removal.h></pcl/point_types.h></pcl/io/ply_io.h></string>…

点群のボクセル化

仕事で点群を使っているのでまとまった時間があるときに読もうとしている。 www.kspub.co.jp まずはボクセル化から。点群を減らすよりは、均一に並べるために使った事が多い。 PCLで同じように書いてみる。 #include <string> #include <pcl/io/ply_io.h> #include <pcl/point_types.h> #include <pcl/filters/voxel_grid.h> int mai</pcl/filters/voxel_grid.h></pcl/point_types.h></pcl/io/ply_io.h></string>…