A Python wrapper on pjreddie's implementation (authors' implementation) of YOLO V3 Object Detector on Darknet. Also compatible with other Darknet Object Detection models.
Image source: http://absfreepic.com/free-photos/download/crowded-cars-on-street-4032x2272_48736.html
- Python 3.5+
- Linux x86-64 Operating System
- nVidia CUDA SDK (for GPU version only. Make sure nvcc is available in PATH variable.)
Note: This sample code requires OpenCV with python bindings installed. (pip3 install opencv-python==3.4.0
)
- Create a directory to host sample code and navigate to it.
- Download and execute this script to download model files.
- Create sampleApp.py with following code. Specify SAMPLE_INPUT_IMAGE.
from pydarknet import Detector, Image import cv2 net = Detector(bytes("cfg/yolov3.cfg", encoding="utf-8"), bytes("weights/yolov3.weights", encoding="utf-8"), 0, bytes("cfg/coco.data",encoding="utf-8")) img = cv2.imread('SAMPLE_INPUT_IMAGE') img_darknet = Image(img) results = net.detect(img_darknet) for cat, score, bounds in results: x, y, w, h = bounds cv2.rectangle(img, (int(x - w / 2), int(y - h / 2)), (int(x + w / 2), int(y + h / 2)), (255, 0, 0), thickness=2) cv2.putText(img,str(cat.decode("utf-8")),(int(x),int(y)),cv2.FONT_HERSHEY_COMPLEX,1,(255,255,0)) cv2.imshow("output", img) cv2.waitKey(0)
- Execute sampleApp.py
python sampleApp.py
.
yolo34py comes in 2 variants, CPU Only Version and GPU Version. Installation may take a while since it involves downloading and compiling of darknet.
This version is configured on darknet compiled with flag GPU = 0.
pip3 install numpy
pip3 install yolo34py
This version is configured on darknet compiled with flag GPU = 1.
pip3 install numpy
pip3 install yolo34py-gpu
- For more details on yolo34py (This python wrapper):
- GitHub Repo: https://github.com/madhawav/YOLO3-4-Py
- This is the place to discuss about issues of yolo34py.
- Your contributions are greatly appreciated.
- For more details on YOLO V3:
- Website from Authors: https://pjreddie.com/yolo
- For more details on Darknet, the base API wrapped by this library
- Website: https://pjreddie.com/darknet/
- GitHub: https://github.com/pjreddie/darknet
- yolo34py (this wrapper) is under Apache License 2.0.
- The version of darknet wrapped by yolo34py is public domain.