All Projects → bm777 → object_detection

bm777 / object_detection

Licence: Apache-2.0 license
Implementatoin of object detection using Tensorflow 2.1.0 | this can be use in a car for object detection

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to object detection

Pytorch Imagenet Cifar Coco Voc Training
Training examples and results for ImageNet(ILSVRC2012)/CIFAR100/COCO2017/VOC2007+VOC2012 datasets.Image Classification/Object Detection.Include ResNet/EfficientNet/VovNet/DarkNet/RegNet/RetinaNet/FCOS/CenterNet/YOLOv3.
Stars: ✭ 130 (+900%)
Mutual labels:  detection, darknet, yolov3
object-tracking
Multiple Object Tracking System in Keras + (Detection Network - YOLO)
Stars: ✭ 89 (+584.62%)
Mutual labels:  detection, darknet, yolov3
Tensorflow 2.x Yolov3
YOLOv3 implementation in TensorFlow 2.3.1
Stars: ✭ 300 (+2207.69%)
Mutual labels:  detection, darknet, yolov3
odam
ODAM - Object detection and Monitoring
Stars: ✭ 16 (+23.08%)
Mutual labels:  detection, darknet, yolov3
darknet
php ffi darknet
Stars: ✭ 21 (+61.54%)
Mutual labels:  detection, darknet, yolov3
Pine
🌲 Aimbot powered by real-time object detection with neural networks, GPU accelerated with Nvidia. Optimized for use with CS:GO.
Stars: ✭ 202 (+1453.85%)
Mutual labels:  detection, darknet, yolov3
Yolov5 ncnn
🍅 Deploy NCNN on mobile phones. Support Android and iOS. 移动端NCNN部署,支持Android与iOS。
Stars: ✭ 535 (+4015.38%)
Mutual labels:  detection, yolov3
Yolo2 Pytorch
YOLOv2 in PyTorch
Stars: ✭ 1,393 (+10615.38%)
Mutual labels:  detection, darknet
Yolo label
GUI for marking bounded boxes of objects in images for training neural network Yolo v3 and v2 https://github.com/AlexeyAB/darknet, https://github.com/pjreddie/darknet
Stars: ✭ 128 (+884.62%)
Mutual labels:  detection, yolov3
Map
mean Average Precision - This code evaluates the performance of your neural net for object recognition.
Stars: ✭ 2,324 (+17776.92%)
Mutual labels:  detection, darknet
Vehicle Detection
Compare FasterRCNN,Yolo,SSD model with the same dataset
Stars: ✭ 130 (+900%)
Mutual labels:  detection, yolov3
Object Detection
Object detection with ssd_mobilenet and tiny-yolo (Add: YOLOv3, tflite)
Stars: ✭ 173 (+1230.77%)
Mutual labels:  detection, yolov3
Php Opencv Examples
Tutorial for computer vision and machine learning in PHP 7/8 by opencv (installation + examples + documentation)
Stars: ✭ 333 (+2461.54%)
Mutual labels:  detection, darknet
yolo3 tensorflow
yolo3 implement by tensorflow, including mobilenet_v1, mobilenet_v2
Stars: ✭ 48 (+269.23%)
Mutual labels:  detection, yolov3
Open-Source-Models
Address book for computer vision models.
Stars: ✭ 30 (+130.77%)
Mutual labels:  transfer-learning, yolov3
DIoU YOLO V3
📈📈📈【口罩佩戴检测数据训练 | 开源口罩检测数据集和预训练模型】Train D/CIoU_YOLO_V3 by darknet for object detection
Stars: ✭ 53 (+307.69%)
Mutual labels:  darknet, yolov3
Paddlex
PaddlePaddle End-to-End Development Toolkit(『飞桨』深度学习全流程开发工具)
Stars: ✭ 3,399 (+26046.15%)
Mutual labels:  detection, yolov3
Caffe2-yolo-v3
A Caffe2 implementation of the YOLO v3 object detection algorithm
Stars: ✭ 32 (+146.15%)
Mutual labels:  detection, yolov3
udacity-cvnd-projects
My solutions to the projects assigned for the Udacity Computer Vision Nanodegree
Stars: ✭ 36 (+176.92%)
Mutual labels:  transfer-learning, yolov3
tensorflow object detection helper tool
tensorflow object detection api helper tool ( custom object detection )
Stars: ✭ 30 (+130.77%)
Mutual labels:  detection, transfer-learning

Average Time Elapsed for process on each frame: 71.6ms

YoloV3 Implementation in Tensorflow 2.x

See on YouTube: 4K YoloV3 Object detection using Tensorflow 2.1

This repo provide a clean implementation of YoloV3 in Tensorflow 2.x using all the best practices.

Instance Detection Sample

Key Features

  • TensorFlow 2.1
  • yolov3 with pre-trained Weights
  • yolov3-tiny with pre-trained Weights
  • Inference example
  • Transfer learning example
  • Eager mode training with tf.GradientTape
  • Graph mode training with model.fit
  • Functional model with tf.keras.layers
  • Input pipeline using tf.data
  • Tensorflow Serving
  • Vectorized transformations
  • GPU accelerated
  • Fully integrated with absl-py from abseil.io
  • Clean implementation
  • Following the best practices
  • MIT License

Usage

Installation

Pip

# without GPU
pip install -r requirements.txt
#with GPU
pip install -r requirements-gpu.txt

Nvidia Driver (For GPU)

# Ubuntu 18.04
sudo apt-add-repository -r ppa:graphics-drivers/ppa
sudo apt install nvidia-driver-440
# Windows/Other
https://www.nvidia.com/Download/index.aspx

Convert pre-trainned Darknet weights

# yolov3
wget https://pjreddie.com/media/files/yolov3.weights -O data/yolov3.weights
python convert.py --weights ./data/yolov3.weights --output ./checkpoints/yolov3.tf

Detection

# WebCam
python object_detected.py --video 0

# Video file
python object_detected.py --video path_to_file.mp4

# Vidoe file with output
python object_detected.py --video path_to_file.mp4 --output ./output.avi

Training

soon

Implementation Details

Loading pre-trained Darknet weights

very hard with pure functional API because the layer ordering is different in tf.keras and darknet. The clean solution here is creating sub-models in keras. Keras is not able to save nested model in h5 format properly, TF Checkpoint is recommended since its offically supported by TensorFlow.

Command Line Args Reference

convert.py:
  --output: path to output
    (default: './checkpoints/yolov3.tf')
  --weights: path to weights file
    (default: './data/yolov3.weights')
  --num_classes: number of classes in the model
    (default: '80')
    (an integer)


detect_video.py:
  --classes: path to classes file
    (default: './data/coco.names')
  --video: path to input video (use 0 for cam)
    (default: './data/video.mp4')
  --output: path to output video (remember to set right codec for given format. e.g. XVID for .avi)
    (default: None)
  --output_format: codec used in VideoWriter when saving video to file
    (default: 'XVID')
  --weights: path to weights file
    (default: './checkpoints/yolov3.tf')
  --num_classes: number of classes in the model
    (default: '80')
    (an integer)

Change Log

May 25, 2020

  • Updated to Tensorflow to v2.1.0 Release

References

It is pretty much impossible to implement this from the yolov3 paper alone.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].