You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决OSDAR23数据集点云投影至2D图像的精度问题?

点云投影到2D图像的问题(OSDAR23数据集)

我尝试将点云投影到高分辨率2D图像,但遇到了问题。目前使用cv2.projectPoints(point,R,T,camera_matrix, dist_coeffs)函数,在KITTI数据集上表现正常,但应用到OSDAR23数据集的点云数据时效果极差。我沿用了相同的数学逻辑,但结果依旧不佳,怀疑是对标定数据的理解存在问题。

以下是我的代码:

pcd = o3d.io.read_point_cloud('//15_construction_vehicle_15.1//lidar//075_1631531288.599807000.pcd')
camera_matrix = np.array([[7267.95450880415, 0, 2056.049238502414],
                          [0, 7267.95450880415, 1486.862908875167],
                          [0, 0, 1]])
dist_coeffs = np.array([-0.0764891, -0.188057, 0, 0, 1.78279], dtype="float")

T = np.array([0.0801578, -0.332862, 3.50982])
q = np.array([-0.00313306, 0.0562995, 0.00482918, 0.998397])
R = Rot.from_quat(q).as_matrix()
# x,y,z  -> -y,-z,x
R0 = np.array([[0, 0, 1], [-1, 0, 0], [0, -1, 0]])
R = R0.dot(R2)  # 此处R2未定义,疑似笔误
Re = np.linalg.inv(R)
Tinv = -1 * Re.dot(T)

pointcloud = np.array(pcd.points)

image = cv2.imread(
     "//15_construction_vehicle_15.1//rgb_highres_center//075_1631531288.600000017.png",cv2.IMREAD_UNCHANGED)
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

points2D_reproj = cv2.projectPoints(pointcloud, Re,
        Tinv, camera_matrix, dist_coeffs)
points2D_reproj = points2D_reproj[0][:, 0].astype(int)

pixel = points2D_reproj
filter = np.where((pixel[:, 0] < 4112 ) & (pixel[:, 1] < 2504) & (pixel[:, 0] >= 0) & (pixel[:, 1] >= 0))
pixel = pixel[filter]
plt.scatter(pixel[:, 0], pixel[:, 1] , s=1)
plt.imshow(image)
plt.show()

排查方向

  • 代码笔误:代码中R = R0.dot(R2)里的R2是未定义变量,应该是R = R0.dot(R),这会直接导致旋转矩阵计算错误,是核心问题之一。
  • 坐标系映射验证:R0定义的坐标系转换(x,y,z → -y,-z,x)是否完全匹配OSDAR23数据集的LiDAR与相机坐标系定义?不同数据集的轴朝向(比如LiDAR的前进方向是x还是z)可能不同,必须对照数据集标定文档确认。
  • 外参矩阵方向:cv2.projectPoints要求的是点云(LiDAR)坐标系到相机坐标系的转换参数,即R是相机相对于LiDAR的旋转,T是相机相对于LiDAR的平移。需要确认OSDAR23提供的标定参数是LiDAR→相机,还是相机→LiDAR的转换,避免搞反转换方向。
  • 畸变参数格式:OpenCV的dist_coeffs默认顺序是(k1, k2, p1, p2, k3),需确认OSDAR23提供的畸变参数顺序是否完全一致,顺序错误会导致投影畸变。
  • 时间同步:LiDAR点云与图像的时间戳存在微小差异,若采集时车辆运动剧烈,可能导致投影偏移,需确认数据集是否提供时间同步后的配对数据。

内容的提问来源于stack exchange,提问作者Juergen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 00:32:49