基础:安装pip3 install open3d 查看安装包:pip list
一.多角度点云拼接在一起生成整个点云
bunny10k.ply
import open3d as o3d
import numpy as np
print("Open3D read Point Cloud")
pcd=o3d.io.read_point_cloud(r"/Users/air/Desktop/bunny10k.ply")#替换为自己的兔兔的路径#
print(pcd)
o3d.visualization.draw_geometries([pcd],width=800,height=600)
运行结果为:
运行显示:
PS:按ctrl+-号可以减少点云的体素尺寸,ctrl++放大
二.Open3d的近邻搜索
贴着表面去找 可以做到降噪
import open3d as o3d
import numpy as np
print("Open3D read Point Cloud")
pcd = o3d.io.read_point_cloud(r"/Users/air/Desktop/bunny10k.ply")
pcd.paint_uniform_color([0.5, 0.5, 0.5])#颜色可以设置为灰色#
pcd_tree = o3d.geometry.KDTreeFlann(pcd)#open3d里最重要的几何一套 贴着近邻平面去找#
pcd.colors[100] = [1, 0, 0]#把第100个点色彩设置为红#
[k, idx, _] = pcd_tree.search_knn_vector_3d(pcd.points[100],100)#以点源数据的第100个点找数据#
np.asarray(pcd.colors)[idx[1:], :] = [0, 1, 0]#返回找到的点的坐标,把周围10