Convert Figma logo to code with AI

amusi logoawesome-object-detection

Awesome Object Detection based on handong1587 github: https://handong1587.github.io/deep_learning/2015/10/09/object-detection.html

7,315
1,946
7,315
5

Top Related Projects

Detectron2 is a platform for object detection, segmentation and other visual recognition tasks.

77,006

Models and examples built with TensorFlow

24,600

Mask R-CNN for object detection and instance segmentation on Keras and TensorFlow

OpenMMLab Detection Toolbox and Benchmark

49,537

YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite

21,700

YOLOv4 / Scaled-YOLOv4 / YOLO - Neural Networks for Object Detection (Windows and Linux version of Darknet )

Quick Overview

The amusi/awesome-object-detection repository is a curated list of object detection resources, including papers, datasets, and toolboxes. It serves as a comprehensive guide for researchers and practitioners in the field of computer vision, specifically focusing on object detection techniques and advancements.

Pros

  • Extensive collection of resources covering various aspects of object detection
  • Well-organized structure, categorizing content by type (papers, datasets, toolboxes)
  • Regularly updated with new research and tools
  • Includes both classic and state-of-the-art methods

Cons

  • May be overwhelming for beginners due to the large amount of information
  • Lacks detailed explanations or summaries of individual resources
  • Some links may become outdated over time
  • Limited coverage of implementation details or code examples

As this is not a code library but rather a curated list of resources, there are no code examples or getting started instructions to provide.

Competitor Comparisons

Detectron2 is a platform for object detection, segmentation and other visual recognition tasks.

Pros of Detectron2

  • Comprehensive implementation of state-of-the-art object detection algorithms
  • Highly modular and extensible architecture for easy customization
  • Extensive documentation and active community support

Cons of Detectron2

  • Steeper learning curve for beginners due to its complexity
  • Requires more computational resources for training and inference
  • Limited to PyTorch framework

Code Comparison

Detectron2 (implementation):

import detectron2
from detectron2.engine import DefaultPredictor
from detectron2.config import get_cfg

cfg = get_cfg()
cfg.merge_from_file("path/to/config.yaml")
predictor = DefaultPredictor(cfg)
outputs = predictor(image)

awesome-object-detection (curated list):

## Papers

### 2019
- [Objects as Points](https://arxiv.org/abs/1904.07850) - ECCV 2020

## Datasets

- [COCO](http://cocodataset.org/)
- [Pascal VOC](http://host.robots.ox.ac.uk/pascal/VOC/)

awesome-object-detection serves as a comprehensive resource for object detection research, while Detectron2 provides a practical implementation framework. The former is ideal for staying updated with the latest developments, while the latter is better suited for hands-on experimentation and deployment of object detection models.

77,006

Models and examples built with TensorFlow

Pros of models

  • Comprehensive collection of official TensorFlow models and examples
  • Actively maintained by Google's TensorFlow team
  • Includes implementations for various tasks beyond object detection

Cons of models

  • Larger and more complex repository structure
  • Steeper learning curve for beginners
  • Focused solely on TensorFlow implementations

Code comparison

models:

import tensorflow as tf
from object_detection.utils import label_map_util
from object_detection.utils import visualization_utils as viz_utils

model = tf.saved_model.load('path/to/saved_model')
category_index = label_map_util.create_category_index_from_labelmap('path/to/labelmap.pbtxt')

awesome-object-detection:

# No direct code examples provided
# Repository serves as a curated list of resources and papers

Summary

models is a comprehensive repository maintained by Google, offering official TensorFlow implementations for various machine learning tasks, including object detection. It provides a wide range of models and examples but may be more complex for beginners.

awesome-object-detection is a curated list of object detection resources, papers, and implementations across different frameworks. It serves as a valuable reference for researchers and practitioners but doesn't provide direct code implementations.

While models focuses on TensorFlow-specific implementations, awesome-object-detection offers a broader overview of object detection across multiple frameworks and approaches.

24,600

Mask R-CNN for object detection and instance segmentation on Keras and TensorFlow

Pros of Mask_RCNN

  • Provides a complete implementation of Mask R-CNN for object detection and instance segmentation
  • Includes pre-trained models and easy-to-use inference code
  • Offers detailed documentation and examples for training on custom datasets

Cons of Mask_RCNN

  • Focuses solely on Mask R-CNN, limiting the scope of object detection techniques
  • May require more computational resources for training and inference
  • Less frequently updated compared to awesome-object-detection

Code Comparison

Mask_RCNN:

import mrcnn.model as modellib
model = modellib.MaskRCNN(mode="inference", config=config, model_dir=MODEL_DIR)
model.load_weights(COCO_MODEL_PATH, by_name=True)
results = model.detect([image], verbose=1)

awesome-object-detection: No direct code implementation, as it's a curated list of resources.

Summary

Mask_RCNN provides a specific implementation of the Mask R-CNN algorithm, offering pre-trained models and easy-to-use code for object detection and instance segmentation. In contrast, awesome-object-detection is a comprehensive collection of resources, papers, and implementations covering various object detection techniques. While Mask_RCNN is more focused and practical for immediate use, awesome-object-detection offers a broader overview of the field, making it valuable for research and exploration of different approaches.

OpenMMLab Detection Toolbox and Benchmark

Pros of mmdetection

  • Comprehensive implementation of various object detection algorithms
  • Modular design allowing easy customization and extension
  • Extensive documentation and active community support

Cons of mmdetection

  • Steeper learning curve due to its complexity
  • Requires more computational resources for training and inference

Code comparison

mmdetection:

from mmdet.apis import init_detector, inference_detector

config_file = 'configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py'
checkpoint_file = 'checkpoints/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth'
model = init_detector(config_file, checkpoint_file, device='cuda:0')
result = inference_detector(model, 'test.jpg')

awesome-object-detection: (Note: This repository is a curated list, not a code implementation)

No direct code comparison available as awesome-object-detection
is a curated list of resources rather than a code implementation.

Summary

mmdetection is a comprehensive object detection toolbox with extensive implementations and customization options, while awesome-object-detection serves as a curated list of object detection resources. mmdetection offers hands-on implementation but requires more technical expertise, whereas awesome-object-detection provides a broader overview of available techniques and papers in the field.

49,537

YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite

Pros of YOLOv5

  • Provides a complete, ready-to-use object detection implementation
  • Offers high performance and real-time detection capabilities
  • Includes extensive documentation and examples for easy integration

Cons of YOLOv5

  • Focuses solely on YOLO-based object detection
  • May have a steeper learning curve for beginners
  • Limited to a single object detection approach

Code Comparison

YOLOv5:

import torch

# Load YOLOv5 model
model = torch.hub.load('ultralytics/yolov5', 'yolov5s')

# Perform inference
results = model('image.jpg')

awesome-object-detection:

# No direct code implementation, as it's a curated list of resources
# Example of a linked paper:
- [You Only Look Once: Unified, Real-Time Object Detection](https://arxiv.org/abs/1506.02640)

Summary

YOLOv5 is a complete implementation of the YOLO object detection algorithm, offering high performance and real-time capabilities. It provides ready-to-use code and extensive documentation. However, it focuses solely on YOLO-based detection and may be more complex for beginners.

awesome-object-detection is a curated list of object detection resources, papers, and implementations. It covers a wide range of approaches but doesn't provide direct code implementation. It's an excellent starting point for research and exploration of various object detection methods.

21,700

YOLOv4 / Scaled-YOLOv4 / YOLO - Neural Networks for Object Detection (Windows and Linux version of Darknet )

Pros of darknet

  • Provides a complete, ready-to-use implementation of YOLO and other object detection algorithms
  • Offers GPU acceleration for faster training and inference
  • Includes pre-trained models and supports various input formats

Cons of darknet

  • Limited to C and CUDA implementations, less accessible for Python users
  • Focuses primarily on YOLO-based architectures, less diverse than awesome-object-detection
  • Requires more setup and configuration compared to a curated list of resources

Code comparison

darknet:

#include "darknet.h"

int main(int argc, char **argv)
{
    // ... YOLO initialization and detection code
}

awesome-object-detection:

## Papers

### 2014
- **[R-CNN]** Rich feature hierarchies for accurate object detection and semantic segmentation | Ross Girshick, Jeff Donahue, Trevor Darrell, Jitendra Malik | **[CVPR' 14]** |[`[pdf]`](https://arxiv.org/pdf/1311.2524.pdf) [`[official code - caffe]`](https://github.com/rbgirshick/rcnn) 

// ... more paper listings and resources

Summary

darknet is a complete implementation of object detection algorithms, particularly YOLO, offering ready-to-use code and GPU acceleration. awesome-object-detection, on the other hand, is a comprehensive curated list of object detection resources, papers, and implementations across various frameworks. While darknet provides a more hands-on approach for YOLO-based detection, awesome-object-detection offers a broader overview of the field and diverse implementations.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

object-detection

[TOC]

This is a list of awesome articles about object detection. If you want to read the paper according to time, you can refer to Date.

  • R-CNN
  • Fast R-CNN
  • Faster R-CNN
  • Mask R-CNN
  • Light-Head R-CNN
  • Cascade R-CNN
  • SPP-Net
  • YOLO
  • YOLOv2
  • YOLOv3
  • YOLT
  • SSD
  • DSSD
  • FSSD
  • ESSD
  • MDSSD
  • Pelee
  • Fire SSD
  • R-FCN
  • FPN
  • DSOD
  • RetinaNet
  • MegDet
  • RefineNet
  • DetNet
  • SSOD
  • CornerNet
  • M2Det
  • 3D Object Detection
  • ZSD(Zero-Shot Object Detection)
  • OSD(One-Shot object Detection)
  • Weakly Supervised Object Detection
  • Softer-NMS
  • 2018
  • 2019
  • Other

Based on handong1587's github: https://handong1587.github.io/deep_learning/2015/10/09/object-detection.html

Survey

Imbalance Problems in Object Detection: A Review

Recent Advances in Deep Learning for Object Detection

A Survey of Deep Learning-based Object Detection

Object Detection in 20 Years: A Survey

《Recent Advances in Object Detection in the Age of Deep Convolutional Neural Networks》

《Deep Learning for Generic Object Detection: A Survey》

Papers&Codes

R-CNN

Rich feature hierarchies for accurate object detection and semantic segmentation

Fast R-CNN

Fast R-CNN

A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection

Faster R-CNN

Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks

R-CNN minus R

Faster R-CNN in MXNet with distributed implementation and data parallelization

Contextual Priming and Feedback for Faster R-CNN

An Implementation of Faster RCNN with Study for Region Sampling

Interpretable R-CNN

Domain Adaptive Faster R-CNN for Object Detection in the Wild

Mask R-CNN

Light-Head R-CNN

Light-Head R-CNN: In Defense of Two-Stage Object Detector

Cascade R-CNN

Cascade R-CNN: Delving into High Quality Object Detection

SPP-Net

Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition

DeepID-Net: Deformable Deep Convolutional Neural Networks for Object Detection

Object Detectors Emerge in Deep Scene CNNs

segDeepM: Exploiting Segmentation and Context in Deep Neural Networks for Object Detection

Object Detection Networks on Convolutional Feature Maps

Improving Object Detection with Deep Convolutional Networks via Bayesian Optimization and Structured Prediction

DeepBox: Learning Objectness with Convolutional Networks

YOLO

You Only Look Once: Unified, Real-Time Object Detection

img

darkflow - translate darknet to tensorflow. Load trained weights, retrain/fine-tune them using tensorflow, export constant graph def to C++

Start Training YOLO with Our Own Data

img

YOLO: Core ML versus MPSNNGraph

TensorFlow YOLO object detection on Android

Computer Vision in iOS – Object Detection

YOLOv2

YOLO9000: Better, Faster, Stronger

darknet_scripts

Yolo_mark: GUI for marking bounded boxes of objects in images for training Yolo v2

LightNet: Bringing pjreddie's DarkNet out of the shadows

https://github.com//explosion/lightnet

YOLO v2 Bounding Box Tool

Loss Rank Mining: A General Hard Example Mining Method for Real-time Detectors

  • intro: LRM is the first hard example mining strategy which could fit YOLOv2 perfectly and make it better applied in series of real scenarios where both real-time rates and accurate detection are strongly demanded.
  • arxiv: https://arxiv.org/abs/1804.04606

Object detection at 200 Frames Per Second

Event-based Convolutional Networks for Object Detection in Neuromorphic Cameras

OmniDetector: With Neural Networks to Bounding Boxes

YOLOv3

YOLOv3: An Incremental Improvement

YOLT

You Only Look Twice: Rapid Multi-Scale Object Detection In Satellite Imagery

SSD

SSD: Single Shot MultiBox Detector

img

What's the diffience in performance between this new code you pushed and the previous code? #327

https://github.com/weiliu89/caffe/issues/327

DSSD

DSSD : Deconvolutional Single Shot Detector

Enhancement of SSD by concatenating feature maps for object detection

Context-aware Single-Shot Detector

Feature-Fused SSD: Fast Detection for Small Objects

https://arxiv.org/abs/1709.05054

FSSD

FSSD: Feature Fusion Single Shot Multibox Detector

https://arxiv.org/abs/1712.00960

Weaving Multi-scale Context for Single Shot Detector

ESSD

Extend the shallow part of Single Shot MultiBox Detector via Convolutional Neural Network

https://arxiv.org/abs/1801.05918

Tiny SSD: A Tiny Single-shot Detection Deep Convolutional Neural Network for Real-time Embedded Object Detection

https://arxiv.org/abs/1802.06488

MDSSD

MDSSD: Multi-scale Deconvolutional Single Shot Detector for small objects

Pelee

Pelee: A Real-Time Object Detection System on Mobile Devices

https://github.com/Robert-JunWang/Pelee

Fire SSD

Fire SSD: Wide Fire Modules based Single Shot Detector on Edge Device

R-FCN

R-FCN: Object Detection via Region-based Fully Convolutional Networks

R-FCN-3000 at 30fps: Decoupling Detection and Classification

https://arxiv.org/abs/1712.01802

Recycle deep features for better object detection

FPN

Feature Pyramid Networks for Object Detection

Action-Driven Object Detection with Top-Down Visual Attentions

Beyond Skip Connections: Top-Down Modulation for Object Detection

Wide-Residual-Inception Networks for Real-time Object Detection

Attentional Network for Visual Object Detection

Learning Chained Deep Features and Classifiers for Cascade in Object Detection

DeNet: Scalable Real-time Object Detection with Directed Sparse Sampling

Discriminative Bimodal Networks for Visual Localization and Detection with Natural Language Queries

Spatial Memory for Context Reasoning in Object Detection

Accurate Single Stage Detector Using Recurrent Rolling Convolution

Deep Occlusion Reasoning for Multi-Camera Multi-Target Detection

https://arxiv.org/abs/1704.05775

LCDet: Low-Complexity Fully-Convolutional Neural Networks for Object Detection in Embedded Systems

Point Linking Network for Object Detection

Perceptual Generative Adversarial Networks for Small Object Detection

https://arxiv.org/abs/1706.05274

Few-shot Object Detection

https://arxiv.org/abs/1706.08249

Yes-Net: An effective Detector Based on Global Information

https://arxiv.org/abs/1706.09180

SMC Faster R-CNN: Toward a scene-specialized multi-object detector

https://arxiv.org/abs/1706.10217

Towards lightweight convolutional neural networks for object detection

https://arxiv.org/abs/1707.01395

RON: Reverse Connection with Objectness Prior Networks for Object Detection

Mimicking Very Efficient Network for Object Detection

Residual Features and Unified Prediction Network for Single Stage Detection

https://arxiv.org/abs/1707.05031

Deformable Part-based Fully Convolutional Network for Object Detection

Adaptive Feeding: Achieving Fast and Accurate Detections by Adaptively Combining Object Detectors

Recurrent Scale Approximation for Object Detection in CNN

DSOD

DSOD: Learning Deeply Supervised Object Detectors from Scratch

img

Learning Object Detectors from Scratch with Gated Recurrent Feature Pyramids

Tiny-DSOD: Lightweight Object Detection for Resource-Restricted Usages

Object Detection from Scratch with Deep Supervision

RetinaNet

Focal Loss for Dense Object Detection

CoupleNet: Coupling Global Structure with Local Parts for Object Detection

Incremental Learning of Object Detectors without Catastrophic Forgetting

Zoom Out-and-In Network with Map Attention Decision for Region Proposal and Object Detection

https://arxiv.org/abs/1709.04347

StairNet: Top-Down Semantic Aggregation for Accurate One Shot Detection

https://arxiv.org/abs/1709.05788

Dynamic Zoom-in Network for Fast Object Detection in Large Images

https://arxiv.org/abs/1711.05187

Zero-Annotation Object Detection with Web Knowledge Transfer

MegDet

MegDet: A Large Mini-Batch Object Detector

Receptive Field Block Net for Accurate and Fast Object Detection

An Analysis of Scale Invariance in Object Detection - SNIP

Feature Selective Networks for Object Detection

https://arxiv.org/abs/1711.08879

Learning a Rotation Invariant Detector with Rotatable Bounding Box

Scalable Object Detection for Stylized Objects

Learning Object Detectors from Scratch with Gated Recurrent Feature Pyramids

Deep Regionlets for Object Detection

Training and Testing Object Detectors with Virtual Images

Large-Scale Object Discovery and Detector Adaptation from Unlabeled Video

  • keywords: object mining, object tracking, unsupervised object discovery by appearance-based clustering, self-supervised detector adaptation
  • arxiv: https://arxiv.org/abs/1712.08832

Spot the Difference by Object Detection

Localization-Aware Active Learning for Object Detection

Object Detection with Mask-based Feature Encoding

LSTD: A Low-Shot Transfer Detector for Object Detection

Pseudo Mask Augmented Object Detection

https://arxiv.org/abs/1803.05858

Revisiting RCNN: On Awakening the Classification Power of Faster RCNN

https://arxiv.org/abs/1803.06799

Learning Region Features for Object Detection

Single-Shot Bidirectional Pyramid Networks for High-Quality Object Detection

Object Detection for Comics using Manga109 Annotations

Task-Driven Super Resolution: Object Detection in Low-resolution Images

Transferring Common-Sense Knowledge for Object Detection

Multi-scale Location-aware Kernel Representation for Object Detection

Loss Rank Mining: A General Hard Example Mining Method for Real-time Detectors

Robust Physical Adversarial Attack on Faster R-CNN Object Detector

RefineNet

Single-Shot Refinement Neural Network for Object Detection

DetNet

DetNet: A Backbone network for Object Detection

SSOD

Self-supervisory Signals for Object Discovery and Detection

CornerNet

CornerNet: Detecting Objects as Paired Keypoints

M2Det

M2Det: A Single-Shot Object Detector based on Multi-Level Feature Pyramid Network

3D Object Detection

3D Backbone Network for 3D Object Detection

LMNet: Real-time Multiclass Object Detection on CPU using 3D LiDARs

ZSD(Zero-Shot Object Detection)

Zero-Shot Detection

Zero-Shot Object Detection

Zero-Shot Object Detection: Learning to Simultaneously Recognize and Localize Novel Concepts

Zero-Shot Object Detection by Hybrid Region Embedding

OSD(One-Shot Object Detection)

Comparison Network for One-Shot Conditional Object Detection

One-Shot Object Detection

RepMet: Representative-based metric learning for classification and one-shot object detection

Weakly Supervised Object Detection

Weakly Supervised Object Detection in Artworks

Cross-Domain Weakly-Supervised Object Detection through Progressive Domain Adaptation

Softer-NMS

《Softer-NMS: Rethinking Bounding Box Regression for Accurate Object Detection》

2019

Feature Selective Anchor-Free Module for Single-Shot Object Detection

Object Detection based on Region Decomposition and Assembly

Bottom-up Object Detection by Grouping Extreme and Center Points

ORSIm Detector: A Novel Object Detection Framework in Optical Remote Sensing Imagery Using Spatial-Frequency Channel Features

Consistent Optimization for Single-Shot Object Detection

Learning Pairwise Relationship for Multi-object Detection in Crowded Scenes

RetinaMask: Learning to predict masks improves state-of-the-art single-shot detection for free

Region Proposal by Guided Anchoring

Scale-Aware Trident Networks for Object Detection

2018

Large-Scale Object Detection of Images from Network Cameras in Variable Ambient Lighting Conditions

Strong-Weak Distribution Alignment for Adaptive Object Detection

AutoFocus: Efficient Multi-Scale Inference

  • intro: AutoFocus obtains an mAP of 47.9% (68.3% at 50% overlap) on the COCO test-dev set while processing 6.4 images per second on a Titan X (Pascal) GPU
  • arXiv: https://arxiv.org/abs/1812.01600

NOTE-RCNN: NOise Tolerant Ensemble RCNN for Semi-Supervised Object Detection

SPLAT: Semantic Pixel-Level Adaptation Transforms for Detection

Grid R-CNN

Deformable ConvNets v2: More Deformable, Better Results

Anchor Box Optimization for Object Detection

Efficient Coarse-to-Fine Non-Local Module for the Detection of Small Objects

NOTE-RCNN: NOise Tolerant Ensemble RCNN for Semi-Supervised Object Detection

Learning RoI Transformer for Detecting Oriented Objects in Aerial Images

Integrated Object Detection and Tracking with Tracklet-Conditioned Detection

Deep Regionlets: Blended Representation and Deep Learning for Generic Object Detection

Gradient Harmonized Single-stage Detector

CFENet: Object Detection with Comprehensive Feature Enhancement Module

DeRPN: Taking a further step toward more general object detection

Hybrid Knowledge Routed Modules for Large-scale Object Detection

《Receptive Field Block Net for Accurate and Fast Object Detection》

Deep Feature Pyramid Reconfiguration for Object Detection

Unsupervised Hard Example Mining from Videos for Improved Object Detection

Acquisition of Localization Confidence for Accurate Object Detection

Toward Scale-Invariance and Position-Sensitive Region Proposal Networks

MetaAnchor: Learning to Detect Objects with Customized Anchors

Relation Network for Object Detection

Quantization Mimic: Towards Very Tiny CNN for Object Detection

Learning Rich Features for Image Manipulation Detection

SNIPER: Efficient Multi-Scale Training

Soft Sampling for Robust Object Detection

Cost-effective Object Detection: Active Sample Mining with Switchable Selection Criteria

Other

R3-Net: A Deep Network for Multi-oriented Vehicle Detection in Aerial Images and Videos

Detection Toolbox

  • Detectron(FAIR): Detectron is Facebook AI Research's software system that implements state-of-the-art object detection algorithms, including Mask R-CNN. It is written in Python and powered by the Caffe2 deep learning framework.
  • Detectron2: Detectron2 is FAIR's next-generation research platform for object detection and segmentation.
  • maskrcnn-benchmark(FAIR): Fast, modular reference implementation of Instance Segmentation and Object Detection algorithms in PyTorch.
  • mmdetection(SenseTime&CUHK): mmdetection is an open source object detection toolbox based on PyTorch. It is a part of the open-mmlab project developed by Multimedia Laboratory, CUHK.