|
| 1 | +DISCLAIMER: this YOLO implementation is still under development. No support will |
| 2 | +be provided during the development phase. |
| 3 | + |
| 4 | +# YOLO Object Detectors, You Only Look Once |
| 5 | + |
| 6 | +[](https://arxiv.org/abs/1804.02767) |
| 7 | +[](https://arxiv.org/abs/2004.10934) |
| 8 | + |
| 9 | +This repository is the unofficial implementation of the following papers. |
| 10 | +However, we spent painstaking hours ensuring that every aspect that we |
| 11 | +constructed was the exact same as the original paper and the original |
| 12 | +repository. |
| 13 | + |
| 14 | +* YOLOv3: An Incremental Improvement: [YOLOv3: An Incremental Improvement](https://arxiv.org/abs/1804.02767) |
| 15 | + |
| 16 | +* YOLOv4: Optimal Speed and Accuracy of Object Detection: [YOLOv4: Optimal Speed and Accuracy of Object Detection](https://arxiv.org/abs/2004.10934) |
| 17 | + |
| 18 | +## Description |
| 19 | + |
| 20 | +YOLO v1 the original implementation was released in 2015 providing a |
| 21 | +ground breaking algorithm that would quickly process images and locate objects |
| 22 | +in a single pass through the detector. The original implementation used a |
| 23 | +backbone derived from state of the art object classifiers of the time, like |
| 24 | +[GoogLeNet](https://arxiv.org/abs/1409.4842) and |
| 25 | +[VGG](https://arxiv.org/abs/1409.1556). More attention was given to the novel |
| 26 | +YOLO Detection head that allowed for Object Detection with a single pass of an |
| 27 | +image. Though limited, the network could predict up to 90 bounding boxes per |
| 28 | +image, and was tested for about 80 classes per box. Also, the model can only |
| 29 | +make predictions at one scale. These attributes caused YOLO v1 to be more |
| 30 | +limited and less versatile, so as the year passed, the Developers continued to |
| 31 | +update and develop this model. |
| 32 | + |
| 33 | +YOLO v3 and v4 serve as the most up to date and capable versions of the YOLO |
| 34 | +network group. This model uses a custom backbone called Darknet53 that uses |
| 35 | +knowledge gained from the ResNet paper to improve its predictions. The new |
| 36 | +backbone also allows for objects to be detected at multiple scales. As for the |
| 37 | +new detection head, the model now predicts the bounding boxes using a set of |
| 38 | +anchor box priors (Anchor Boxes) as suggestions. Multiscale predictions in |
| 39 | +combination with Anchor boxes allow for the network to make up to 1000 object |
| 40 | +predictions on a single image. Finally, the new loss function forces the network |
| 41 | +to make better predictions by using Intersection Over Union (IOU) to inform the |
| 42 | +model's confidence rather than relying on the mean squared error for the entire |
| 43 | +output. |
| 44 | + |
| 45 | + |
| 46 | +## Authors |
| 47 | + |
| 48 | +* Vishnu Samardh Banna ([@GitHub vishnubanna](https://github.com/vishnubanna)) |
| 49 | +* Anirudh Vegesana ([@GitHub anivegesana](https://github.com/anivegesana)) |
| 50 | +* Akhil Chinnakotla ([@GitHub The-Indian-Chinna](https://github.com/The-Indian-Chinna)) |
| 51 | +* Tristan Yan ([@GitHub Tyan3001](https://github.com/Tyan3001)) |
| 52 | +* Naveen Vivek ([@GitHub naveen-vivek](https://github.com/naveen-vivek)) |
| 53 | +* Jacob Zietek ([@GitHub jacob-zietek](https://github.com/jacob-zietek)) |
| 54 | + |
| 55 | +## Table of Contents |
| 56 | + |
| 57 | +* [Our Goal](#our-goal) |
| 58 | +* [Models in the library](#models-in-the-library) |
| 59 | +* [References](#references) |
| 60 | + |
| 61 | + |
| 62 | +## Our Goal |
| 63 | + |
| 64 | +Our goal with this model conversion is to provide implementation of the Backbone |
| 65 | +and YOLO Head. We have built the model in such a way that the YOLO head could be |
| 66 | +connected to a new, more powerful backbone if a person chose to. |
| 67 | + |
| 68 | +## Models in the library |
| 69 | + |
| 70 | +| Object Detectors | AP | AP50 | Checkpoint Path | |
| 71 | +| :--------------: | :--------------: | :--------------: | :--------------: | |
| 72 | +| Yolo-v3 | | |
| 73 | +| Yolo-v3 tiny | | |
| 74 | +| Yolo-v3 spp | | |
| 75 | +| Yolo-v4 | | |
| 76 | +| Yolo-v4 tiny | 21.21 | 41.69 | |
| 77 | +| Yolo-v4 csp | | |
| 78 | +| Yolo-v4 large | | |
| 79 | + |
| 80 | +| Classifiers | |
| 81 | +| :--------------: | |
| 82 | +| Darknet53 | |
| 83 | +| CSPDarknet53 | |
| 84 | +## Models Zoo |
| 85 | + |
| 86 | + |
| 87 | +## Requirements |
| 88 | +[](https://github.com/tensorflow/tensorflow/releases/tag/v2.6.0) |
| 89 | +[](https://www.python.org/downloads/release/python-380/) |
| 90 | + |
| 91 | + |
| 92 | +DISCLAIMER: this YOLO implementation is still under development. No support |
| 93 | +will be provided during the development phase. |
0 commit comments