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

add yolov10 detection node #8753

Open
3 of 7 tasks
storrrrrrrrm opened this issue Sep 4, 2024 · 10 comments
Open
3 of 7 tasks

add yolov10 detection node #8753

storrrrrrrrm opened this issue Sep 4, 2024 · 10 comments
Assignees
Labels
component:perception Advanced sensor data processing and environment understanding. (auto-assigned)

Comments

@storrrrrrrrm
Copy link
Contributor

Checklist

  • I've read the contribution guidelines.
  • I've searched other issues and no duplicate issues were found.
  • I've agreed with the maintainers that I can plan this task.

Description

add a node which use latest yolo10 model to do detection

Purpose

yolo10 is faster and has higher AP on coco compared to previous yolo series models. it may help to imporove detection performance

Possible approaches

https://github.com/THU-MIG/yolov10 refer to above python code, we can implement a node that uses tensorrt for inference.

Definition of done

  • c++ code,use trt convert onnx to engine
  • add preprocess
  • add postprocess
  • test on bag
@storrrrrrrrm storrrrrrrrm self-assigned this Sep 4, 2024
@amadeuszsz amadeuszsz added the component:perception Advanced sensor data processing and environment understanding. (auto-assigned) label Sep 4, 2024
@mitsudome-r
Copy link
Member

@storrrrrrrrm
Thanks for creating the issue. @kminoda was worried about the license of YOLO v10. It seems like it is using AGPL license, which is copy left license. Do you have any idea how you plan to merge this with Autoware at the moment? (e.g., keeping it as a separate the repository)

@xmfcx
Copy link
Contributor

xmfcx commented Sep 4, 2024

If the inference code could be reused from existing Autoware, it shouldn't matter.

https://github.com/THU-MIG/yolov10/blob/main/docs/en/integrations/tensorrt.md

We will only use the model that is exported to TensorRT format.

But if we are going to use the TensorRT inference codes from their repository, we cannot put it under Autoware.Universe.

Then we can create a sub-repo under autowarefoundation and add it to autoware.repos file.

@storrrrrrrrm
Copy link
Contributor Author

@storrrrrrrrm Thanks for creating the issue. @kminoda was worried about the license of YOLO v10. It seems like it is using AGPL license, which is copy left license. Do you have any idea how you plan to merge this with Autoware at the moment? (e.g., keeping it as a separate the repository)

don't worry, I will just refer to the code logic, and I will implement new node code based on the existing code of autoware.

@liuXinGangChina liuXinGangChina moved this to In Progress in Autoware Labs Sep 10, 2024
@storrrrrrrrm
Copy link
Contributor Author

Progress update: I haven’t had much time to work on this task recently. For now the basic code framework has been built and can be compiled, but the specific logic code has not been added yet.
image

@storrrrrrrrm
Copy link
Contributor Author

Progress update: single image infer done.
image
image

@storrrrrrrrm
Copy link
Contributor Author

Progress Update:
image

play a ros bag,this node would output a DetectedObjectsWithFeature. but when i watch output image on rviz,there is sth wrong with box position om img. to be debug.

@storrrrrrrrm
Copy link
Contributor Author

Progress Update: image

play a ros bag,this node would output a DetectedObjectsWithFeature. but when i watch output image on rviz,there is sth wrong with box position om img. to be debug.

solved this.
Peek 2024-10-30 17-49

@kminoda
Copy link
Contributor

kminoda commented Nov 18, 2024

@storrrrrrrrm (cc: @mitsudome-r @xmfcx )
Hi, one of my colleague found this issue comment from ultralytics: ultralytics/ultralytics#2129 (comment).
I understand that YOLOv10 is not from ultralytics but some researchers from Tsinghua University, but given that the similar library's maintainer mentions that AGPL license is applicable not only the inference code but also the model weight, it would be better to ask the author of YOLOv10 about the license somehow to clarify the legal risks. What do you think?

@liuXinGangChina
Copy link

Morning kminoda san @kminoda

Thanks for your remind,I check the original repo of yolo -v10 and found a open discussion about license of the mode discussion link 。 It looks that the author did not give a response yet

since the tensorrt-yolov10-node code is totally refactored based on tire4’s tensorrt-yolox , i believe it should follow tire4‘s license like shin san suggested (apache 2.0) discusison link is here

Looking forward to your further comment

Have a nice day!

Xingang

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:perception Advanced sensor data processing and environment understanding. (auto-assigned)
Projects
Status: In Progress
Status: In Progress
Development

No branches or pull requests

6 participants