chensong1995 / HybridPose

HybridPose: 6D Object Pose Estimation under Hybrid Representation (CVPR 2020)
MIT License
415 stars 64 forks source link

关于命令行 #48

Open zhuyazhi opened 4 years ago

zhuyazhi commented 4 years ago

image image hello~ 请问测试时parser.add_argument('--prediction_file', type=str, default='output/occlusion_linemod/test_set_ape_40.npy')中的test_set_ape_40.npy是什么作用呢,我输入默认命令行python src/evaluate.py会报以上的错误,但是不知道test_set_ape_40.npy在哪,并且在测试里有什么作用。 期待您的回复~谢谢!

zhuyazhi commented 4 years ago

您好,请问可以给出具体一点的测试&训练的命令行吗~比如PVNet里的这种,十分感谢! python run.py --type evaluate --cfg_file configs/linemod.yaml model cat cls_type cat

chensong1995 commented 4 years ago

zhuyazhi 你好,

感谢你对我们工作的关注!我们在“Pre-trained weights”一段对如何使用预训练的权重进行了说明。你需要先运行src/train_core.py来输出npy文件,然后再运行evaluate.py

希望这有帮到你!

zhuyazhi commented 4 years ago

image 很抱歉再次打扰您,我把之前PVNet-rendering渲染的10000张ape的synthetic images放入了blender_linemod中,ape文件夹中是如下的结果(通过PVNet-rendering得到): image bu'z 按照您的建议先运行python src/train_core.py,但是关于data/blender_linemod/ape_labels/keypoints_2d.npy这个ape_labels/keypoints_2d.npy请问如何获取呢?因为按readme里面的blender_linemod组织结构,没有ape_labels这个文件夹。 期待您的回复,谢谢!

zhuyazhi commented 4 years ago

image 上面报错的截图~

chensong1995 commented 4 years ago

zhuyazhi 你好,

可以使用 data/label.py 以及 data/label_fuse.py 来创建标注哦

zhuyazhi commented 4 years ago

好的,谢谢您的回复~ 您使用的synthetic Images也是如同这样的吗(0.jpg, 0_depth.png, 0_RT.pkl) image 另外,据我所知~PVNet是13个物体共用10000张fuse合成图片,请问fuse_linemod是怎么把他们分开成13个物体对应的fuse images呢? image

zhuyazhi commented 4 years ago

Dear author: 我改了部分label.py中的路径,运行了python label.py,结果生成了ape_labels/keypoints_2d.npy,然后我把ape_labels/keypoints_2d.npy放入data/blender_linemod文件夹中,如下 image

  1. 上图中的ape就是通过pvnet-rendering渲染的图片(0.jpg, 0_depth.png, 0_RT.pkl),请问目前我blender_linemod数据集排布格式对吗?
  2. 据我所知~PVNet是13个物体共用10000张fuse合成图片,所以只有一个fuse文件夹,没有分成(ape,benchvise......)。请问您的fuse_linemod中也是13个物体共用10000张fuse合成图片吗,复制13份分别命名为13个物体的名字吗?如果不是的话,请问fuse_linemod是怎么把他们分开成13个物体对应的fuse images呢?
zhuyazhi commented 4 years ago

image 这是我改的两个路径,ape_labels最后生成了错误的结果,只有keypoints_2d.npy并且里面没有内容。 image 您能给我一些建议吗?

chensong1995 commented 4 years ago

zhuyazhi 你好,

抱歉,之前README对数据目录结构的说明存在一些问题。我刚刚更新了一下,你可以再试试看~

zhuyazhi commented 4 years ago

谢谢您的细心更改,我目前有两个疑惑: 1.因为我想测试,您的建议是我先运行先运行python src/train_core.py(需要等训练完成来输出npy文件),我的疑惑是这不代表我开始正式的训练了吗? 2.我将之前PVNet的数据集放入HybridPose/data/pvnet_linemod中, image 上图我在代码中改的两个路径,ape_labels最后生成了错误的结果,只有keypoints_2d.npy一个.npy文件并且里面没有内容。 image 我看代码中正常情况是还会有{}_labels/cor{}.npy;您对我的输出错误有什么建议吗?比如我以上的路径不应该那么改~ 期待您的回复!(同时也为打扰您感到抱歉)

chensong1995 commented 4 years ago

zhuyazhi 你好,

  1. 如果提供给 train_core.py 预训练好的权重,代码会判断保存权重时的纪元 (epoch) 是不是超过训练总纪元数 (默认为200) 。如果超过的话,将会直接跳转到测试的逻辑。

  2. 如果有需要的话,可以发邮件给我,我们约个时间远程协助看一下。

希望这有帮到你

LUDISO commented 3 years ago

我使用了synthetic data from PVNet,但我使用他们的代码没能生成blender rendering和fuse data,运行python3 run.py --type rendering和python3 run.py --type fuse显示如下 `(hybridpose) dfs@dfs-Legion:~/pvnet-rendering$ python3 run.py --type rendering found bundled python: /home/dfs/Downloads/blender-2.79a-linux-glibc219-x86_64/2.79/python Read blend: /home/dfs/pvnet-rendering/data/blank.blend

Successfully imported '/home/dfs/pvnet-rendering/data/LINEMOD/cat/cat.ply' in 1.169 sec cost 1.2309236526489258 s

Blender quit`

9980 cost 0.31052708625793457 s 9981 cost 0.20852398872375488 s 9982 cost 0.32298731803894043 s 9983 cost 0.25179338455200195 s 9985 cost 0.3540036678314209 s 9984 cost 0.3702669143676758 s 9986 cost 0.20746493339538574 s 9987 cost 0.23646020889282227 s 9988 cost 0.23668217658996582 s 9989 cost 0.2322690486907959 s 9990 cost 0.20699000358581543 s 9991 cost 0.2685978412628174 s 9992 cost 0.28525471687316895 s 9993 cost 0.3010425567626953 s 9994 cost 0.23267912864685059 s 9995 cost 0.20996952056884766 s 9996 cost 0.2091207504272461 s 9997 cost 0.20653462409973145 s 9998 cost 0.20822429656982422 s 9999 cost 0.20505166053771973 s

chensong1995 commented 3 years ago

LUDISO 你好,

根据你的情况描述我暂时不能确定问题出在哪里,你可以发个邮件给我,我们约个时间远程协助一起看一下。

希望这有帮到你!