GPV_Pose icon indicating copy to clipboard operation
GPV_Pose copied to clipboard

Question regarding evaluation

Open HannahHaensen opened this issue 2 years ago • 4 comments

So for eval a different dataset is used compared to training,

how are the values for the dict obtained?

eval:

(rgb=data['roi_img'].to(device), depth=data['roi_depth'].to(device),
                          depth_normalize=data['depth_normalize'].to(device),
                          obj_id=data['cat_id_0base'].to(device), 
                          camK=data['cam_K'].to(device),
                          gt_mask=data['roi_mask'].to(device),
                          gt_R=None, gt_t=None, gt_s=None, mean_shape=mean_shape,
                          gt_2D=data['roi_coord_2d'].to(device), sym=sym,
                          def_mask=data['roi_mask'].to(device))

train:

network(rgb=data['roi_img'].to(device), depth=data['roi_depth'].to(device),
                              depth_normalize=data['depth_normalize'].to(device),
                              obj_id=data['cat_id'].to(device), 
                              camK=data['cam_K'].to(device), gt_mask=data['roi_mask'].to(device),
                              gt_R=data['rotation'].to(device), gt_t=data['translation'].to(device),
                              gt_s=data['fsnet_scale'].to(device), mean_shape=data['mean_shape'].to(device),
                              gt_2D=data['roi_coord_2d'].to(device), sym=data['sym_info'].to(device),
                              aug_bb=data['aug_bb'].to(device), aug_rt_t=data['aug_rt_t'].to(device), aug_rt_r=data['aug_rt_R'].to(device),
                              def_mask=data['roi_mask_deform'].to(device),
                              model_point=data['model_point'].to(device), nocs_scale=data['nocs_scale'].to(device), do_loss=True)

RGB --> same depth --> same depth_normalize --> same obj_id --> eval ['cat_id_0base'], train data['cat_id'] camK --> same gt_mask --> same gt_R --> not used in eval gt_t --> not used in eval gt_s --> not used in eval mean_shape --> not used in eval gt_2D --> same sym --> same def_mask --> eval def_mask=data['roi_mask'], train def_mask=data['roi_mask_deform']

required for eval: pred_RT --> obtained from line 84, generate_RT([p_green_R_vec, p_red_R_vec], [f_green_R, f_red_R], p_T, mode='vec', sym=sym)

information not present in GPV Pose --> how to obtain gt_handle_visibility in mentian/object-deformnet --> https://github.com/mentian/object-deformnet/search?q=gt_handle_visibility gt_handle_visibility = nocs['gt_handle_visibility']

so my question is why is the category id definition different? and for an own dataset how to obtain the value gt_handle_visibility

HannahHaensen avatar Jul 22 '22 06:07 HannahHaensen

The category id definition is the SAME. The name is changed to remind me that the category id starts from 0. gt_handle_visibility is manually labelled. I have already uploaded it to this repo.

lolrudy avatar Jul 22 '22 09:07 lolrudy

Thank you very much. Yes i assumed ots the same was just not quire sure why the name was adapted but makes sense!

ok cause couldn't find it when checking for gt_handle .. in the git search https://github.com/lolrudy/GPV_Pose/search?q=gt_handle_visibility

HannahHaensen avatar Jul 22 '22 10:07 HannahHaensen

mug_handle.pkl is here https://github.com/lolrudy/GPV_Pose/blob/2b9afaf5c3960799afd7f554e6af3c1602f88396/mug_handle.pkl

lolrudy avatar Jul 22 '22 11:07 lolrudy

你好,为什么我的评估结果全是0呢? Uploading QQ图片20240510142314.png…

liu01121 avatar May 10 '24 06:05 liu01121