I want to implement YOLO V3. I want to know which framework will give me a faster result.
What are the advantages of implementing YOLO V3 on the darknet framework vs Keras framework?
Artificial Intelligence Stack Exchange is a question and answer site for people interested in conceptual questions about life and challenges in a world where "cognitive" functions can be mimicked in purely digital environment. It only takes a minute to sign up.Sign up to join this community
Darknet is "native" framework, so basically, you don't need to implement anything, all code for yolov3 is available at their github repo, you just need to figure it out, play with it. Keras, in my opinion, is not flexible enough to easily implement yolo. If you want to implement yolo from scratch I would probably go with PyTorch it has a dynamic graph + more integration with python. Regarding speed, it's hard to say objectively which framework is faster, especially comparing with darknet, since probably nobody did a comparative analysis. The easiest solution to speed up yolo3 is obviously buying more powerful GPU :D.
Also, in my understanding what they did in yolov3 is that they intentionally sacrificed speed in order to be able to detect smaller objects, so if you don't care too much about small grouped up objects go with yolov2 it is very fast and has a pretty decent mAP.
You can find a working implementation of Yolo3 in Keras/Tensorflow here: https://github.com/qqwweee/keras-yolo3
We have been using it extensively lately and it works correctly. Evaluation speed is mostly the same as that of Darknet, probably because both implementations use libcudnn under the hood.
All answers above explain Yolo and Keras relation very well, I just want to add minor information. Yolo V3 comes in several different models. The faster the model, it has lower accuracy and the slower the model, it has better accuracy.
You can simply choose which model is the most suitable for you (trade off between accuracy and speed)
You can download the cfg file and the weights for each model on official website : https://pjreddie.com/darknet/yolo/ .
Or you can use AlexeyAb's repo which the most popular forked darknet version with several improvements : https://github.com/AlexeyAB/darknet