ultralytics / JSON2YOLO

Convert JSON annotations into YOLO format.
https://docs.ultralytics.com
GNU Affero General Public License v3.0
862 stars 232 forks source link

Question on creating and processing keypoints for Yolov8 –pose #91

Open palmcorp opened 5 months ago

palmcorp commented 5 months ago

The process seems to be 1) Run CVAT and define keypoints for image set. 2) run Json2Yolo to convert to a dataset that can be used by yolov8-pose.3) run yolov8-pose. Is this correct? There are two conversions in JSON2YOLO-master: general_json2yolo.py and labelbox_json2yolo.py. How should these be utilized?
As data export from CVAT of COCO 1.0 keypoints we have : Annotations person_keypoints_default.json Images Frame0000.PNG

General_json2yolo is looking in ‘annotations’ where it will find person_keypoints_default.json. Labelbox_jon2yolo looks into "export-2021-06-29T15_25_41.934Z.json" What should be in ("export-2021-06-29T15_25_41.934Z.json"? Pointing this to the same json as used in general_json2yolo results in new labels, although with just one class.
pderrenger commented 5 months ago

Hello,

You're on the right track with your process for creating and processing keypoints for YOLOv8-pose. Here's a concise breakdown:

  1. Run CVAT: Define keypoints for your image set.
  2. Convert Annotations: Use general_json2yolo.py to convert your CVAT-exported COCO keypoints JSON to the YOLO format.
  3. Train with YOLOv8-pose: Use the converted dataset to train your model.

Regarding the two scripts in JSON2YOLO-master:

Since you are using CVAT and have a COCO keypoints JSON, you should use general_json2yolo.py. Ensure your JSON file is correctly formatted and located in the annotations directory.

For further details on dataset formatting and usage, you can refer to our documentation.

If you encounter any issues or need further assistance, feel free to ask! 😊

palmcorp commented 5 months ago

Hi Paula,

Thanks for the heads up on General_json2yolo vs. labelbox – helpful info

Best,

Paul

From: Paula Derrenger @.*** Sent: Tuesday, May 28, 2024 10:51 PM To: ultralytics/JSON2YOLO Cc: Paul Petronelli; Author Subject: Re: [ultralytics/JSON2YOLO] Question on creating and processing keypoints for Yolov8 –pose (Issue #91)

Hello,

You're on the right track with your process for creating and processing keypoints for YOLOv8-pose. Here's a concise breakdown:

  1. Run CVAT: Define keypoints for your image set.
  2. Convert Annotations: Use general_json2yolo.py to convert your CVAT-exported COCO keypoints JSON to the YOLO format.
  3. Train with YOLOv8-pose: Use the converted dataset to train your model.

Regarding the two scripts in JSON2YOLO-master:

Since you are using CVAT and have a COCO keypoints JSON, you should use general_json2yolo.py. Ensure your JSON file is correctly formatted and located in the annotations directory.

For further details on dataset formatting and usage, you can refer to our documentation https://docs.ultralytics.com/datasets/pose/ .

If you encounter any issues or need further assistance, feel free to ask! 😊

— Reply to this email directly, view it on GitHub https://github.com/ultralytics/JSON2YOLO/issues/91#issuecomment-2136567600 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ABXH6FRZOAQZMUX2O5WQBMDZEVUERAVCNFSM6AAAAABIN26BF2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMZWGU3DONRQGA . You are receiving this because you authored the thread. https://github.com/notifications/beacon/ABXH6FU6LPLLYKIXZZY7CVLZEVUERA5CNFSM6AAAAABIN26BF2WGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTT7LFXTA.gif Message ID: @.***>

pderrenger commented 5 months ago

@palmcorp hi Paul,

Glad to hear that the information on general_json2yolo.py vs. labelbox_json2yolo.py was helpful! If you have any more questions or need further assistance as you proceed, don't hesitate to reach out. Happy training!

palmcorp commented 5 months ago

Hi Paula,

Our project is Pose Estimation using yolov8. It has been difficult to configure and balance various yaml files, labels etc. Since this basis is now 2 generations out of sync would it be advisable to switch to Yolov10? (also asked as #13221)

Best

Paul

From: Paula Derrenger @.*** Sent: Wednesday, May 29, 2024 1:09 PM To: ultralytics/JSON2YOLO Cc: Paul Petronelli; Mention Subject: Re: [ultralytics/JSON2YOLO] Question on creating and processing keypoints for Yolov8 –pose (Issue #91)

@palmcorp https://github.com/palmcorp hi Paul,

Glad to hear that the information on general_json2yolo.py vs. labelbox_json2yolo.py was helpful! If you have any more questions or need further assistance as you proceed, don't hesitate to reach out. Happy training!

— Reply to this email directly, view it on GitHub https://github.com/ultralytics/JSON2YOLO/issues/91#issuecomment-2138180209 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ABXH6FSMDZVOQFYUZH4UTQTZEYYUJAVCNFSM6AAAAABIN26BF2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMZYGE4DAMRQHE . You are receiving this because you were mentioned. https://github.com/notifications/beacon/ABXH6FXCARH723GEHP77ABTZEYYUJA5CNFSM6AAAAABIN26BF2WGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTT7OIFHC.gif Message ID: @.***>

pderrenger commented 5 months ago

Hi Paul,

Switching to YOLOv10 can indeed offer improvements, especially if you're facing configuration challenges with older versions. YOLOv10 brings enhanced features and optimizations that might simplify your setup and potentially yield better results for pose estimation tasks. It's worth considering the upgrade, especially to stay current with the latest advancements and support.

palmcorp commented 5 months ago

Thanks. Will reach out if we run into issues.

Best,

Paul

From: Paula Derrenger @.*** Sent: Wednesday, May 29, 2024 11:03 PM To: ultralytics/JSON2YOLO Cc: Paul Petronelli; Mention Subject: Re: [ultralytics/JSON2YOLO] Question on creating and processing keypoints for Yolov8 –pose (Issue #91)

Hi Paul,

Switching to YOLOv10 can indeed offer improvements, especially if you're facing configuration challenges with older versions. YOLOv10 brings enhanced features and optimizations that might simplify your setup and potentially yield better results for pose estimation tasks. It's worth considering the upgrade, especially to stay current with the latest advancements and support.

— Reply to this email directly, view it on GitHub https://github.com/ultralytics/JSON2YOLO/issues/91#issuecomment-2138743380 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ABXH6FRLDYMORZE5DS4Z243ZE26IJAVCNFSM6AAAAABIN26BF2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMZYG42DGMZYGA . You are receiving this because you were mentioned. https://github.com/notifications/beacon/ABXH6FUW4T5BQSSJLMMRTCDZE26IJA5CNFSM6AAAAABIN26BF2WGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTT7PKRFI.gif Message ID: @.***>

pderrenger commented 5 months ago

Hi Paul,

Great, feel free to reach out anytime you need assistance. We're here to help!