1.制作自己的LINEMOD数据集
(1)制作过程与步骤
制作数据集的过程参考:6d位姿估计—制作自己的LINEMOD数据集过程记录(有效的方法)
(2)合并数据集、生成test.txt与train.txt
数据制作过程中在获取帧变换(python compute_gt_poses.py LINEMOD/duck2
)步骤中,若录制的图片过多的话,内存会溢出,因此不建议一次性录制太多图片,本人在record2.py中,RECORD_LENGTH=50,每次录制大概能够生成一千零几张图片。
基于以上原因,我们需要录制多个数据集,并在后期需要将rgb、depth、mask图像以及gt.yml、info.yml进行合并,并生成train.txt和test.txt。合并程序的电脑不能联网,有需要的可以私信我。
2.将PVN3D的输入替换为自己的数据集
(1)将datasets/linemod/Linemod_preprocessed/data/09改为009,将自己的merge文件夹改为09;
(2)将JPEGImages改为rgb;
(3)在common.py中修改相机内参;并将第37行的mini_batch_size=64
注:因为在生成info.yml的时候depth_scale用的是0.001
3.训练
cd pvn3d
python3 -m train.train_linemod_pvn3d --cls duck