在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:Deep-SORT-YOLOv4开源软件地址:https://gitee.com/ywuwgij/Deep-SORT-YOLOv4开源软件介绍:IntroductionThis project was inspired by:
I swapped out YOLO v3 for YOLO v4 and added the option for asynchronous processing, which significantly improvesthe FPS. However, FPS monitoring is disabled when asynchronous processing is used since it isn't accurate. In addition, I took the algorithm from this paper and implemented it into See the comparison video below. Low confidence track filteringNavigate to the appropriate folder to use low confidence track filtering. The above video demonstrates the difference. See the settings section for parameter instructions. YOLO v3 and YOLO v4 comparison video with Deep SORTWith asynchronous processingAs you can see in the gif, asynchronous processing has better FPS but causes stuttering. This code only detects and tracks people, but can be changed to detect other objects by changing lines 103 in if predicted_class != 'person': continue to if predicted_class not in ('person', 'car'): continue PerformanceReal-time FPS with video writing:
Turning off tracking gave ~12.5fps with YOLO v4. YOLO v4 performs much faster and appears to be more stable than YOLO v3. All tests were done using an Nvidia GTX 1070 8gb GPUand an i7-8700k CPU. Quick startDownload and convert the Darknet YOLO v4 model to a Keras model by modifying python convert.py Then run demo.py: python demo.py SettingsNormal Deep SORTBy default, tracking and video writing is on and asynchronous processing is off. These can be edited in tracking = TruewriteVideo_flag = TrueasyncVideo_flag = False To change target file in file_path = 'video.webm' To change output settings in out = cv2.VideoWriter('output_yolov4.avi', fourcc, 30, (w, h)) Deep SORT with low confidence track filteringThis version has the option to hide object detections instead of tracking. The settings in show_detections = TruewriteVideo_flag = TrueasyncVideo_flag = False Setting To modify the average detection threshold, go to Training your own modelsYOLO v4See https://github.com/Ma-Dan/keras-yolo4. Deep SORTPlease note that the tracking model used here is only trained on tracking people, so you'd need to train a model yourself for tracking other objects. See https://github.com/nwojke/cosine_metric_learning for more details on training your own tracking model. For those that want to train their own vehicle tracking model, I've created a tool for converting the DETRAC dataset into a trainable format for cosine metric learning and can be found in my object tracking repository here. The tool was created using the earlier mentioned paper as reference with the same parameters. Dependencies
Running with Tensorflow 1.14 vs 2.0Navigate to the appropriate folder and run python scripts. Conda environment used for Tensorflow 2.0(see requirements.txt)
|
请发表评论