Open3D 讀寫點雲與視覺化(C )

2021-10-24 02:26:41 字數 2581 閱讀 7508

open3d和pcl都是很優秀的三維資料處理庫,但是,它們不支援.las檔案。(作為處理大/自然場景las點雲的我,心情有點不美麗。)pcl作為較早的庫,演算法較多,對c++支援較多;open3d作為新庫,演算法不如pcl多,個人感覺它對python支援較好,視覺化效果較好。

兩種方式

1.1 cmake

1.2 vs配置

open3d獲取點雲資訊,需要 eigen。

(1)右擊工程—屬性—vc++目錄—包含目錄,新增如下路徑:

//點數

int pointcount = cloud_ptr->points_.size();

ui.listwidget->additem("點數:" + qstring::number(pointcount));

//包圍盒

eigen::vector3d min_bound = cloud_ptr->getminbound();

double minx = min_bound(0);

double miny = min_bound(1);

double minz = min_bound(2);

ui.listwidget->additem("minx = " + qstring::number(minx, 'f', 4) +

", miny = " + qstring::number(miny, 'f', 4) + ", minz = " + qstring::number(minz, 'f', 4));

eigen::vector3d max_bound = cloud_ptr->getmaxbound();

double maxx = max_bound(0);

double maxy = max_bound(1);

double maxz = max_bound(2);

ui.listwidget->additem("maxx = " + qstring::number(maxx, 'f', 4) +

", maxy = " + qstring::number(maxy, 'f', 4) + ", maxz = " + qstring::number(maxz, 'f', 4));

//單點資訊

double x = 0, y = 0, z = 0;

for (int i = 0; i < cloud_ptr->points_.size(); i++)

/* visualize pc */

open3d::visualization::drawgeometries();

/* write pc */

open3d::geometry::pointcloud outputpc;

for (int i = 0; i < 360; i++)

if (open3d::io::writepointcloud("f:/outputpc.pcd", outputpc))

}3.1 點雲資訊

3.2 點雲視覺化

3.3 生成的點雲

open3d安裝 3D視覺化神器之Open3D

很多時候在python裡面你要找乙個3d點雲視覺化的庫真的是難啊。你的選擇可能是 open3d 顯示點雲的效果。它的安裝非常簡單 pip3 install open3d python匯入的時候打概率可能因為ipython導致出錯,安裝ipython就行。實力程式 import os import n...

Open3D視覺化點雲的問題記錄

因為科研工作,需要對點雲資料進行視覺化 包括input ground truth segmentation和prediction segmentation三項 由於之前嘗試過使用open3d進行點雲視覺化處理,所以今天又拿來操作了一番,發現了乙個問題,在這裡記錄一下。在我的mac catalina ...

Open3D Mesh讀寫視覺化

1 mesh o3d.io.read mesh uv.ply 從檔案中讀取mesh,支援的檔案格式有ply stl obj off gltf glb 2 mesh.vertices獲取頂點 3 mesh.s獲取三角麵片 4 o3d.visualization.draw geometries mesh...