对于数据增强,我试图从KITTI data set垂直翻转图像(及其标签)。给定标签文件中给出的中心坐标为center = [world_X, world_Y, world_Z]
的对象,我已经尝试过:
center[0] = -center[0]
结果略有偏离,可能是因为相机不在世界原点上。我已尝试纠正此问题:
P_X = np.array([1/P[0, 0], 0, -P[0, 2]/P[0, 0]]).dot(P[:, 3])
center[0] = -(center[0] - P_X) + P_X
但是,这给了我几乎为0的相机x坐标,并且什么都没有改变。我正在使用图像号003382,并且汽车的x坐标为2.97。相机:
P2: 7.215377000000e+02 0.000000000000e+00 6.095593000000e+02 4.485728000000e+01
0.000000000000e+00 7.215377000000e+02 1.728540000000e+02 2.163791000000e-01
0.000000000000e+00 0.000000000000e+00 1.000000000000e+00 2.745884000000e-03
据我所知,相机平移可以计算为camera_intrinxic_matrix.inverse().dot(P[:, 3])
,而我这样做了。我怎么会误解这些相机参数?