所以我正在研发3D扫描仪,并制作了一些3D重建代码 这是code 但是因为我更多的是菜鸟,我不确定如何导出点云,然后使用它来建立一个三维建模程序,如搅拌机。
答案 0 :(得分:2)
我无法确定没有3D重建结果的示例,但根据您链接的代码,我认为您可以生成一个.ply文件,准备导入Blender,如下所示:
使用https://github.com/daavoo/pyntcloud。
import numpy as np
import pandas as pd
from pyntcloud import PyntCloud
cloud = PyntCloud(pd.DataFrame(
# same arguments that you are passing to visualize_pcl
data=np.hstack((points, colors)),
columns=["x", "y", "z", "red", "green", "blue"]))
cloud.to_file("output.ply")
答案 1 :(得分:1)
您可以将PLY format和OBJ format导入Blender两个支持ASCII文件。用适当的标题和&写出适当的ASCII文件。只要您的格式正确,它们应该可以被支持PLY&的程序读取。 OBJ。
或者,您可以使用Python's CSV library将数据另存为CSV文件,并使用Blenders Python API以CSV格式导入Blender。
答案 2 :(得分:0)
正如David de la Iglesia所说,您可以使用https://github.com/daavoo/pyntcloud软件包。但是他的方式使颜色无效,因为它是浮点格式的,这是因为将其与坐标叠加在一起。
d = {'x': points[:,0],'y': points[:,1],'z': points[:,2],
'red' : colors[:,0], 'green' : colors[:,1], 'blue' : colors[:,2]}
cloud = PyntCloud(pd.DataFrame(data=d))
cloud.to_file("output.ply")
矩阵“点”是浮点格式,而“颜色”是uint8