python深度图转点云图示例代码
时间: 2023-06-04 22:07:56 浏览: 226
C++版深度图和彩图转点云技术实现总结
3星 · 编辑精心推荐
以下是Python深度图转点云图的示例代码:
```python
import numpy as np
import cv2
def depth_to_point_cloud(depth, fx, fy, cx, cy):
rows, cols = depth.shape
c, r = np.meshgrid(np.arange(cols), np.arange(rows), sparse=True)
z = depth / 1000.
x = (c - cx) * z / fx
y = (r - cy) * z / fy
return np.dstack((x, y, z))
if __name__ == '__main__':
fx = 500 # 摄像机内参
fy = 500
cx = 320
cy = 240
depth = cv2.imread('depth.png', cv2.IMREAD_UNCHANGED) # 读入深度图
point_cloud = depth_to_point_cloud(depth.astype(np.float32), fx, fy, cx, cy)
```
注意:此代码中的深度单位是mm,如果您的深度图单位为其他单位,需要进行转换。
阅读全文