tensorturtle / classy-sort-yolov5 Goto Github PK
View Code? Open in Web Editor NEWReady-to-use realtime multi-object tracker that works for any object category. YOLOv5 + SORT implementation.
License: GNU General Public License v3.0
Ready-to-use realtime multi-object tracker that works for any object category. YOLOv5 + SORT implementation.
License: GNU General Public License v3.0
Hello, I use yolov5 to detect moving vehicles,and I donβt detect stationary vehicles, so when the target moves from motion to static to motion, the tracking will be lost. Is there any good solution?
Sort takes about 5-9 times more than the yolo5 detect I think it's due to CPU processing
,
is there any way to reduce it?
Thank you
Hello I saw the picture on README, and the reason why the camera is shaking is that it's tracking pretty well is because,
Can you say that? I'm also a little bit hard to track pretty small boxes when the camera is shaking, because there are situations where the object is moving and the camera is moving in the opposite direction
I've compared results on the same video with pure Yolov5 and Classy-sort-yolov5 - result is the same.
Whenever Yolov5 lost object behind an obstacle, your combined model also does not output object bounding boxes.
python classy_track.py --source ../videoes/cctv1.avi --view-img --save-img
WARNING: --img-size 1080 must be multiple of max stride 32, updating to 1088
Namespace(agnostic_nms=False, augment=False, classes=[0], conf_thres=0.3, device='', fourcc='mp4v', img_size=1088, iou_thres=0.4, output='inference/output', save_img=True, save_txt=False, sort_iou_thresh=0.2, sort_max_age=5, sort_min_hits=2, source='../videoes/cctv1.avi', view_img=True, weights='yolov5/weights/yolov5x.pt')
Traceback (most recent call last):
File "classy_track.py", line 306, in
detect(args)
File "classy_track.py", line 152, in detect
_ = model(img.half() if half else img) if device.type != 'cpu' else None
File "/home/yuanquan/anaconda3/envs/py38/lib/python3.8/site-packages/torch/nn/modules/module.py", line 889, in _call_impl
result = self.forward(*input, **kwargs)
File "/home/yuanquan/human/classy-sort-yolov5/./yolov5/models/yolo.py", line 117, in forward
return self.forward_once(x, profile) # single-scale inference, train
File "/home/yuanquan/human/classy-sort-yolov5/./yolov5/models/yolo.py", line 148, in forward_once
x = m(x) # run
File "/home/yuanquan/anaconda3/envs/py38/lib/python3.8/site-packages/torch/nn/modules/module.py", line 889, in _call_impl
result = self.forward(*input, **kwargs)
File "/home/yuanquan/human/classy-sort-yolov5/./yolov5/models/yolo.py", line 55, in forward
if self.inplace:
File "/home/yuanquan/anaconda3/envs/py38/lib/python3.8/site-packages/torch/nn/modules/module.py", line 947, in getattr
raise AttributeError("'{}' object has no attribute '{}'".format(
AttributeError: 'Detect' object has no attribute 'inplace'
Thanks for your great work! Could you please tell me that what's the meaning of the values of each column in the file "result.txt"? Can this algorithm calculate the speed of each object? Look forward to your reply.
I want to track multiple videos, using a for loop to create a new Sort class for each one, but the IDs keep adding up instead of starting at 1.
Hi,
Thanks for cool work, but I'm receiving error
RuntimeError: Sizes of tensors must match except in dimension 1. Got 24 and 23 in dimension 2 (The offending index is 1)
when trying to run _6 models with image size 1280.
Currently, the identity of a tracked box is set when the track is started, but is not refined afterwards.
Hello.
I have tried running your tracker programme, however i have met with an illegal instruction core dumped error
I followed the install requirements.txt, as well as done the following to solve the tkinter error.
import tkinter as tk
ModuleNotFoundError: No module named 'tkinter'
sudo apt-get install python3-tk
Thereafter, i got the illegal instruction core dump.
python classy_track.py --source 0 --view-img
WARNING: --img-size 1080 must be multiple of max stride 32, updating to 1088
Namespace(agnostic_nms=False, augment=False, classes=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79], conf_thres=0.3, device='', fourcc='mp4v', img_size=1088, iou_thres=0.4, output='inference/output', save_img=False, save_txt=False, sort_iou_thresh=0.2, sort_max_age=5, sort_min_hits=2, source='0', view_img=True, weights='yolov5/weights/yolov5s.pt')
1/1: 0... success (640x480 at 30.00 FPS).
Illegal instruction (core dumped)
My hardware specs are
Platform: DJI Manifold 2G
Ubuntu 18.04 LTS
ARMv8 Processor rev 3 (v8l) Γ 4 ARMv8 Processor rev 0 (v8l) Γ 2
NVIDIA Tegra X2 (nvgpu)/integrated
64 bit
7.7gb memory
Setting --save-img to true when processing a webcam input causes :
Traceback (most recent call last):
File "classy_track.py", line 318, in
detect(args)
File "classy_track.py", line 256, in detect
fps = vid_cap.get(cv2.CAP_PROP_FPS)
AttributeError: 'NoneType' object has no attribute 'get'
Hi Jason
I am using your repository to implement a human object interaction (HOI) detection, but i meet a problem.
problem description:
a video contain a person who use a spatula to flip the dough, when dough is cooked , it become a pancake.
my objective is to detect and track both dough and pancake.
here is the experience result i put on youtube.
as you can see, object class do not change when tracking(dough to pancake).
how can i fix this problem?could you do me a favor to help me?
The small box size seems to be shaking a lot, do you already have a predict in consideration of the box size in the Kalman filter?
Hello
There is a wide range of possibilities open for tracking targets to move slowly(usually), to stop(usually), or to move quickly(somtimes) And there are times when can turn suddenly with a camera
I know about each parameter in detail?
Q[-1,-1] is said to reduce the width of moving, but if look at other sources, there are times when set it to 0.01
not 0.5
Can I get advice from someone I know?
Thank you!
classy-sort-yolov5/sort/sort.py
Lines 119 to 123 in 4778dcf
I try to save_txt to make a mot15 det file, but there is a problem that model can't detect any of it
I tested it with the command below
python classy_track.py --source MOT15/train/ADL-Rundle-6/img1/000001.jpg --img-size 640 --save-img
The pred output is as follows:
My pip list
torch 1.8.2+cu111
torchaudio 0.8.2
torchvision 0.9.2+cu111
Excuse me, I meet a problem. For an image with multiple targets in a frame, how do you determine the input x of the Kalman filter? Is all the boxes formed into a matrix and input at one time, or the column vectors of each box are updated iteratively. Looking forward to your precious reply
Hello
I would like to estimate the bbox only by tracking to increase the fps, is there anything I can refer to?
Thank you.
Hi,
Thanks for your repo with multi-class sort. Currently, sort outputs the following parameters:
"frame_num, bbox_x1, bbox_y1, bbox_x2, bbox_y2, category, u_overdot, v_overdot, s_overdot, and identity".
How can I add confidence score value for the tracked objects? The output required is:
"frame_num, bbox_x1, bbox_y1, bbox_x2, bbox_y2, category, u_overdot, v_overdot, s_overdot, identity, and confidence_score".
Your help would be highly appreciated.
Thanks,
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.