Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Refactor] Specify labels to pack in codecs #2659

Merged
merged 8 commits into from
Sep 6, 2023
Merged

Conversation

LareinaM
Copy link
Collaborator

Motivation

Modification

BC-breaking (Optional)

Use cases (Optional)

Checklist

Before PR:

  • I have read and followed the workflow indicated in the CONTRIBUTING.md to create this PR.
  • Pre-commit or linting tools indicated in CONTRIBUTING.md are used to fix the potential lint issues.
  • Bug fixes are covered by unit tests, the case that causes the bug should be added in the unit tests.
  • New functionalities are covered by complete unit tests. If not, please add more unit tests to ensure correctness.
  • The documentation has been modified accordingly, including docstring or example tutorials.

After PR:

  • CLA has been signed and all committers have signed the CLA in this PR.

@LareinaM LareinaM marked this pull request as ready for review August 30, 2023 06:23
@@ -200,14 +165,8 @@ def transform(self, results: dict) -> dict:

# pack instance labels
gt_instance_labels = InstanceData()
for key, packed_key in self.label_mapping_table.items():
for key, packed_key in results['label_mapping_table'].items():
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There may not be a 'label_mapping_table' key in the results if 'GenerateTarget' is not present in the pipeline

Comment on lines 24 to 31
field_mapping_table = dict(
heatmaps='heatmaps',
instance_heatmaps='instance_heatmaps',
heatmap_mask='heatmap_mask',
heatmap_weights='heatmap_weights',
displacements='displacements',
displacement_weights='displacement_weights')

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need these default keys or can we remove them without issue?

Comment on lines 151 to 153
instance_mapping_table = results.get('instance_mapping_table', None)
if instance_mapping_table is not None:
self.instance_mapping_table = instance_mapping_table
Copy link
Collaborator

@Tau-J Tau-J Aug 30, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest not directly modifying a class attribute, especially replacing it. How about creating a new temporal mapping table that initialized from self.instance_mapping_table, and then update it via result['instance_mapping_table']

Comment on lines 1030 to 1040
if hasattr(self.encoder, 'field_mapping_table'
) and self.encoder.field_mapping_table is not None:
encoded['field_mapping_table'] = self.encoder.field_mapping_table
if hasattr(self.encoder, 'instance_mapping_table'
) and self.encoder.instance_mapping_table is not None:
encoded[
'instance_mapping_table'] = self.encoder.instance_mapping_table
if hasattr(self.encoder, 'label_mapping_table'
) and self.encoder.label_mapping_table is not None:
encoded['label_mapping_table'] = self.encoder.label_mapping_table

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about setting default field_mapping_table, instance_mapping_table and label_mapping_table as empty dict in BaseKeypointCodec?

@Tau-J Tau-J merged commit ce55e3e into open-mmlab:dev-1.x Sep 6, 2023
Tau-J added a commit that referenced this pull request Oct 12, 2023
* update

* [Fix] Fix HRFormer log link

* [Feature] Add Application 'Just dance' (#2528)

* [Docs] Add advanced tutorial of implement new model. (#2539)

* [Doc] Update img (#2541)

* [Feature] Support MotionBERT (#2482)

* [Fix] Fix demo scripts (#2542)

* [Fix] Fix Pose3dInferencer keypoint shape bug (#2543)

* [Enhance] Add notifications when saving visualization results (#2545)

* [Fix] MotionBERT training and flip-test (#2548)

* [Docs] Enhance docs (#2555)

* [Docs] Fix links in doc (#2557)

* [Docs] add details (#2558)

* [Refactor] 3d human pose demo (#2554)

* [Docs] Update MotionBERT docs (#2559)

* [Refactor] Update the arguments of 3d inferencer to align with the demo script (#2561)

* [Enhance] Combined dataset supports custom sampling ratio (#2562)

* [Docs] Add MultiSourceSampler docs (#2563)

* [Doc] Refine docs (#2564)

* [Feature][MMSIG] Add UniFormer Pose Estimation to Projects folder (#2501)

* [Fix] Check the compatibility of inferencer's input/output  (#2567)

* [Fix]Fix 3d visualization (#2565)

* [Feature] Add bear example in just dance (#2568)

* [Doc] Add example and openxlab link for just dance (#2571)

* [Fix] Configs' paths of VideoPose3d (#2572)

* [Docs] update docs (#2573)

* [Fix] Fix new config bug in train.py (#2575)

* [Fix] Configs' of MotionBERT (#2574)

* [Enhance] Normalization option in 3d human pose demo and inferencer (#2576)

* [Fix] Fix the incorrect labels for training vis_head with combined datasets (#2550)

* [Enhance] Enhance 3dpose demo and docs (#2578)

* [Docs] Enhance Codecs documents (#2580)

* [Feature] Add DWPose distilled WholeBody RTMPose models (#2581)

* [Docs] Add deployment docs (#2582)

* [Fix] Refine 3dpose (#2583)

* [Fix] Fix config typo in rtmpose-x (#2585)

* [Fix] Fix 3d inferencer (#2593)

* [Feature] Add a simple visualize api (#2596)

* [Feature][MMSIG] Support badcase analyze in test (#2584)

* [Fix] fix bug in flip_bbox with xyxy format (#2598)

* [Feature] Support ubody dataset (2d keypoints) (#2588)

* [Fix] Fix visualization bug in 3d pose (#2594)

* [Fix] Remove use-multi-frames option (#2601)

* [Enhance] Update demos (#2602)

* [Enhance] wholebody support  openpose style visualization (#2609)

* [Docs] Documentation regarding 3d pose (#2599)

* [CodeCamp2023-533] Migration Deepfashion topdown heatmap algorithms to 1.x (#2597)

* [Fix] fix badcase hook (#2616)

* [Fix] Update dataset mim downloading source to OpenXLab (#2614)

* [Docs] Update docs structure (#2617)

* [Docs] Refine Docs (#2619)

* [Fix] Fix numpy error (#2626)

* [Docs] Update error info and docs (#2624)

* [Fix] Fix inferencer argument name (#2627)

* [Fix] fix links for coco+aic hrnet (#2630)

* [Fix] fix a bug when visualize keypoint indices (#2631)

* [Docs] Update rtmpose docs (#2642)

* [Docs] update README.md (#2647)

* [Docs] Add onnx of RTMPose models (#2656)

* [Docs] Fix mmengine link (#2655)

* [Docs] Update QR code (#2653)

* [Feature] Add DWPose (#2643)

* [Refactor] Reorganize distillers (#2658)

* [CodeCamp2023-259]Document Writing: Advanced Tutorial - Custom Data Augmentation (#2605)

* [Docs] Fix installation docs(#2668)

* [Fix] Fix expired links in README (#2673)

* [Feature] Support multi-dataset evaluation (#2674)

* [Refactor] Specify labels to pack in codecs (#2659)

* [Refactor] update mapping tables (#2676)

* [Fix] fix link (#2677)

* [Enhance] Enable CocoMetric to get ann_file from MessageHub (#2678)

* [Fix] fix vitpose pretrained ckpts (#2687)

* [Refactor] Refactor YOLOX-Pose into mmpose core package (#2620)

* [Fix] Fix typo in COCOMetric(#2691)

* [Fix] Fix bug raised by changing bbox_center to input_center (#2693)

* [Feature] Surpport EDPose for inference(#2688)

* [Refactor] Internet for 3d hand pose estimation (#2632)

* [Fix] Change test batch_size of edpose to 1 (#2701)

* [Docs] Add OpenXLab Badge (#2698)

* [Doc] fix inferencer doc (#2702)

* [Docs] Refine dataset config tutorial (#2707)

* [Fix] modify yoloxpose test settings (#2706)

* [Fix] add compatibility for argument `return_datasample` (#2708)

* [Feature] Support ubody3d dataset (#2699)

* [Fix] Fix 3d inferencer (#2709)

* [Fix] Move ubody3d dataset to wholebody3d (#2712)

* [Refactor] Refactor config and dataset file structures (#2711)

* [Fix] give more clues when loading img failed (#2714)

* [Feature] Add demo script for 3d hand pose  (#2710)

* [Fix] Fix Internet demo (#2717)

* [codecamp: mmpose-315] 300W-LP data set support (#2716)

* [Fix] Fix the typo in YOLOX-Pose (#2719)

* [Feature] Add detectors trained on humanart (#2724)

* [Feature] Add RTMPose-Wholebody (#2721)

* [Doc] Fix github action badge in README (#2727)

* [Fix] Fix bug of dwpose (#2728)

* [Feature] Support hand3d inferencer (#2729)

* [Fix] Fix new config of RTMW (#2731)

* [Fix] Align visualization color of 3d demo (#2734)

* [Fix] Refine h36m data loading and add head_size to PackPoseInputs (#2735)

* [Refactor] Align test accuracy for AE (#2737)

* [Refactor] Separate evaluation mappings from KeypointConverter (#2738)

* [Fix] MotionbertLabel codec (#2739)

* [Fix] Fix mask shape (#2740)

* [Feature] Add training datasets of RTMW (#2743)

* [Doc] update RTMPose README (#2744)

* [Fix] skip warnings in demo (#2746)

* Bump 1.2 (#2748)

* add comments in dekr configs (#2751)

---------

Co-authored-by: Peng Lu <penglu2097@gmail.com>
Co-authored-by: Yifan Lareina WU <mhsj16lareina@gmail.com>
Co-authored-by: Xin Li <7219519+xin-li-67@users.noreply.github.com>
Co-authored-by: Indigo6 <40358785+Indigo6@users.noreply.github.com>
Co-authored-by: 谢昕辰 <xiexinch@outlook.com>
Co-authored-by: tpoisonooo <khj.application@aliyun.com>
Co-authored-by: zhengjie.xu <jerryxuzhengjie@gmail.com>
Co-authored-by: Mesopotamia <54797851+yzd-v@users.noreply.github.com>
Co-authored-by: chaodyna <li0331_1@163.com>
Co-authored-by: lwttttt <85999869+lwttttt@users.noreply.github.com>
Co-authored-by: Kanji Yomoda <Kanji.yy@gmail.com>
Co-authored-by: LiuYi-Up <73060646+LiuYi-Up@users.noreply.github.com>
Co-authored-by: ZhaoQiiii <102809799+ZhaoQiiii@users.noreply.github.com>
Co-authored-by: Yang-ChangHui <71805205+Yang-Changhui@users.noreply.github.com>
Co-authored-by: Xuan Ju <89566272+juxuan27@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants