-
Notifications
You must be signed in to change notification settings - Fork 105
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
[Question] Is there currently a way to replace the Yolox detector with another detector? #27
Comments
Currently, I have not support customized detectors here. But replacing it should be feasible by manipulating the returned model of |
@noahcao Ah I see thank you very much! |
I've been trying to replace the model returned by get_model() in demo track but it seems everything is centred around yoloX, is there a way to remove the get_exp() method and just inject a detector and run the tracker with just a random detector? Soon as I have it working with YoloV5 detector I'd be able to make a wrapper to allow others to add their detectors and make a pull request to help with adding support for any detector |
I made a PR to mmtracking to support OC-SORT. As mmtracking is based on mmdetection, you can replace the detector with what you want there. |
Also, it would be great if you can make a PR here to support customized detector. Using an abstract detector wrapper is a good idea. I would appreciate your contribution. |
I've tried to make a generic wrapper but have realised the problem lies within the function inference in the class predictor, different detectors expect input images in a specific form for example yoloV5 expects a image input in numpy array form but you seem to convert the images into a tensor form which causes the yoloV5 detector to improperly read an image and output bounding boxes as a tensor with the shape [1,229500,6] for a 1080*1920 image when instead yoloV5 should have output a numpy array of [x1,y1,x2,y2,score,class]. removing the tensor conversion causes a further trickle down problem since OCSort.py in the function convert_bbox_to_z and association.py in the fucntion iou_batch. I'm at a loss for how to make a generic wrapper without changing the data types required in OCSort.py and association.py, what would you reckon as a better solution to the generic detector wrapper problem? this seems like the final hurdle if I can solve this I can make a PR for OCsort here by tomorrow with a generic wrapper for other detectors |
Hi, some updates: There is an implementation is another issue thread. Also, I have supported OC-SORT in mmtracking. You can move to mmtracking to have a more advanced and customized tracking implementation, where of course, customized detector is allowed. |
I want to try and run OC-SORT with a few different detectors (YoloV5, F-RCNN, CNN) just to experiment and see how well the detectors perform with OC-SORT.
The text was updated successfully, but these errors were encountered: