proj_points = cloud - np.dot(cloud, slice_normal)[:, np.newaxis] * slice_normal[np.newaxis, :] File "<__array_function__ internals>", line 6, in dot TypeError: unsupported operand type(s) for *: 'open3d.cpu.pybind.geometry.PointCloud' and 'float'
时间: 2024-03-10 12:49:02 浏览: 158
proj_ssm_book-main.zip
这个错误提示说明了您正在尝试对类型为“open3d.cpu.pybind.geometry.PointCloud”的变量执行乘法运算,而这不是一个有效的操作。这个错误可能是因为您没有正确地将点云数据转换为NumPy数组。
请尝试将点云数据转换为NumPy数组,例如:
```python
cloud_array = np.asarray(cloud.points)
```
然后再使用上面的投影代码:
```python
proj_points = cloud_array - np.dot(cloud_array, slice_normal)[:, np.newaxis] * slice_normal[np.newaxis, :]
```
这样能够使点云数据正确地进行投影操作。
阅读全文