Pose-Group / DCPose

This is an official implementation of our CVPR 2021 paper "Deep Dual Consecutive Network for Human Pose Estimation" (https://openaccess.thecvf.com/content/CVPR2021/papers/Liu_Deep_Dual_Consecutive_Network_for_Human_Pose_Estimation_CVPR_2021_paper.pdf)
380 stars 61 forks source link

DCPose/datasets/zoo/posetrack/posetrack_utils/poseval/py/convert.py", line 200, in from_new for person_info in track_data["annotations"]: KeyError: 'annotations' #30

Open desires19 opened 2 years ago

desires19 commented 2 years ago

hello, I have met a problem,,when I reproduced the excellent research, DCPose I run command python run.py \ --cfg ../configs/posetimation/DcPose/posetrack18/model_RSN.yaml --test the yaml about val and test

VAL: ANNOT_DIR: './DcPose_supp_files/posetrack18_annotation_dirs/val/' COCO_BBOX_FILE: './DcPose_supp_files/posetrack18_precomputed_boxes/val_boxes.json' USE_GT_BBOX: false BBOX_THRE: 1.0 IMAGE_THRE: 0.2 IN_VIS_THRE: 0.2 NMS_THRE: 1.0 OKS_THRE: 0.9 FLIP_VAL: false POST_PROCESS: true

TEST: ANNOT_DIR: './DcPose_supp_files/posetrack18_annotation_dirs/test' COCO_BBOX_FILE: './DcPose_supp_files/posetrack18_precomputed_boxes/test_boxes.json' USE_GT_BBOX: false BBOX_THRE: 1.0 IMAGE_THRE: 0.2 IN_VIS_THRE: 0.2 NMS_THRE: 1.0 OKS_THRE: 0.9 FLIP_TEST: false POST_PROCESS: true

it appear this error in test but not in val

---------------------------------------------------------------------------------------------------------

Traceback (most recent call last): File "run.py", line 34, in main() File "run.py", line 30, in main runner.launch() File "/home/xxx/project/DCPose/engine/defaults/runner.py", line 63, in launch evaluator.exec() File "/home/xxx/project/DCPose/engine/defaults/evaluator.py", line 21, in exec self.eval() File "/home/xxx/project/DCPose/engine/defaults/evaluator.py", line 75, in eval phase=self.phase) File "/home/xxx/project/DCPose/engine/core/function.py", line 252, in eval filenames_map, filenames, imgnums) File "/home/xxx/project/DCPose/datasets/zoo/posetrack/PoseTrack.py", line 547, in evaluate AP = evaluate_simple.evaluate(annot_dir, output_dir, eval_track=False)[0] File "/home/xxx/project/DCPose/datasets/zoo/posetrack/posetrack_utils/poseval/py/evaluate_simple.py", line 16, in evaluate gtFramesAll, prFramesAll = load_data_dir(['', gtdir, preddir]) File "/home/xxx/project/DCPose/datasets/zoo/posetrack/posetrack_utils/poseval/py/eval_helpers.py", line 399, in load_data_dir data = convert_videos(data)[0] File "/home/xxx/project/DCPose/datasets/zoo/posetrack/posetrack_utils/poseval/py/convert.py", line 621, in convert_videos videos = Video.from_new(track_data) File "/home/xxx/project/DCPose/datasets/zoo/posetrack/posetrack_utils/poseval/py/convert.py", line 200, in from_new for person_info in track_data["annotations"]: KeyError: 'annotations'

---------------------------------------------------------------------------------------------------------

desires19 commented 2 years ago

I have a question the dict"trans_data"has keys ['images', 'annotations', 'categories'] I can find this three keys in "DcPose_supp_files/posetrack18_json_files/posetrack_val.json" but there are just tow keys['images', 'categories'] in 'DcPose_supp_files/posetrack18_json_files/posetrack_test.json' this is the reason why I met this error. Does the file -- poestrack_test.json is complete! I am waiting for your anwser. Thank you!

chenhaomingbob commented 2 years ago

Hi @desires19, Thank you for your interest in our work.

Because the PoseTrack dataset producers do not release the annotations of PoseTrack2017 and PoseTrack 2018 test sets, the ground truths of test sets are not available for us. Thus, the json file "posetrack_test.json" only includes the information of input videos and does not contain annotations.

Although the program throws the problem of KeyError in test phase, it actually runs successfully, and you can find a series of json files in the output folder "{output_folder}/{model_x}/test/use_precomputed_box/prediction_result/test_set_json_results/". You can upload these json files to the official PoseTrack evaluation server (https://posetrack.net/) for obtaining the accuracy of the model in the test set.