Вот упрощенная версия моего кода:
Код: Выделить всё
import multiprocessing
import numpy as np
import open3d as o3d
def foo():
pcd = o3d.geometry.PointCloud()
pcd.points = o3d.utility.Vector3dVector(np.array([[0, 0, 0], [1, 1, 1], [2, 2, 2]]))
pcd.estimate_normals(search_param=o3d.geometry.KDTreeSearchParamHybrid(radius=0.1, max_nn=30))
print("normal", np.asarray(pcd.normals))
if __name__ == '__main__':
print("RUN foo")
foo()
print("RUN foo with multiprocessing")
p = multiprocessing.Process(target=foo)
p.start()
p.join()
Код: Выделить всё
**Versions**:
- numpy==1.24.2
- open3d==0.18.0
- python==3.10.15
Подробнее здесь: https://stackoverflow.com/questions/791 ... ith-open3d