All the pretrined model weights and cfg is from official site:
https://github.com/AlexeyAB/darknet
yolov4.cfg
yolov4.weights
And thanks ultralytics's project, it's really great and helpful.
https://github.com/ultralytics/yolov3
Let's look the excellent performance about yolo v4 (pytorch backend)!!
In yolo v4 have the shortage about missing detection of small itemes. I try to fix the shortage. I found out The best way to fix the issue is modify the objectness in stride=8 Yolo Layer (76*76)
all you need to do is set YoloLayer small_item_enhance=True (only effect 76*76 head)
for module in detector.model.modules():
if isinstance(module,YoloLayer):
detector.eval()
module.small_item_enhance=True
this project is under my another project "trident", a higher order api both in pytorch and tensorflow, and I'll open-source soon.
本專案是基於我目前正在開發的另一個專案trident所開發的,它是一個整合pytorch與tensorflow動態計算圖的高階api,很快我就會將它開源,各位可以先從pip下載安裝。
trident only support python 3.x
If you want to use pytorch api, you need pytorch 1.2 or higher
If you want to use tensorflow api (trident version>=0.5.5), you need tensorflow 2.2.0rc0 or higher (because trident tensorflow api is pure eager mode "without keras, without static graph"")
You can install it from pip
pip install tridentx --upgrade
after installed trident, you can use following syntax to import it and assign the backed.
import os
os.environ['TRIDENT_BACKEND'] = 'pytorch'
import trident as T
from trident import *
-
pytorch_yolo.py: it is just a basic library derived from trident , to define darknet and yolo basic block.
-
pytorch_darknet.py: we can construction yolo v4 network and load pretrained weights here.
-
pytorch_infer_yolo4.py: It's a demo to show how to do object detection by yolo v4 model and how trident api to make things easy.
-
tf_yolo.py: it is just a basic library derived from trident , to define darknet and yolo basic block.
-
tf_darknet.py: we can construction yolo v4 network and load pretrained weights here.
-
tf_infer_yolo4.py: It's a demo to show how to do object detection by yolo v4 model and how trident api to make things easy.
-
onnx_video_infer.py: it's a demo how to use onnxruntime to infer video near real-time.
You also can download my results in pytorch from google drive:
pytorch pretrained model
pytorch pretrained state_dict
tensorflow pretrained model
tensorflow pretrained state_dict
onnx pretrained model
- all the bag of freebies and bag of specials in training context.
- use yolov4 for custom datasets