1.数据增强
- 图像放缩和裁剪后,相机内参要做相应变化
python
import random
def random_scale(image, calib, scale_range=(0.8, 1.2)):
scale = random.uniform(*scale_range)
width, height = image.size
image = image.resize((int(width * scale), int(height * scale)))
calib[:2, :] *= scale
return image, calib
def random_crop(image, left, w_out, upper, h_out, calib):
right = left + w_out
lower = upper + h_out
image = image.crop((left, upper, right, lower))
calib[0, 2] -= left # cx - du
calib[1, 2] -= upper # cy - dv
calib[0, 3] -= left * calib[2, 3] # tx - du * tz
calib[1, 3] -= upper * calib[2, 3] # ty - dv * tz
2. 数据集
- KITTI
- Rotation_y(全局航向角<BOC):
- 车头方向与相机的x轴正方向的夹角
- 描述目标在现实世界中的朝向,不随目标的位置和采集车的位置变化而变化
- theta:目标方位角
- Alpha:目标观测角,Alpha = theta + Rotation_y
- Rotation_y(全局航向角<BOC):

- 单目3D学习alpha角,因为alpha是跟图像特征相关的