All Projects → Media-Smart → Vedadet

Media-Smart / Vedadet

Licence: apache-2.0
A single stage object detection toolbox based on PyTorch

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Vedadet

Tide
A General Toolbox for Identifying Object Detection Errors
Stars: ✭ 309 (+14.02%)
Mutual labels:  object-detection, toolbox
Arknights Toolbox
🔨 Arknights Toolbox, all servers are supported. 明日方舟工具箱,支持中台美日韩服
Stars: ✭ 271 (+0%)
Mutual labels:  toolbox
go-tools
A utility tool library of Golang.
Stars: ✭ 44 (-83.76%)
Mutual labels:  toolbox
3dod thesis
3D Object Detection for Autonomous Driving in PyTorch, trained on the KITTI dataset.
Stars: ✭ 265 (-2.21%)
Mutual labels:  object-detection
Grid R Cnn
Stars: ✭ 255 (-5.9%)
Mutual labels:  object-detection
Object Detection Opencv
YOLO Object detection with OpenCV and Python.
Stars: ✭ 267 (-1.48%)
Mutual labels:  object-detection
MisakaLinuxToolbox
御坂妹妹们的Linux VPS工具箱
Stars: ✭ 237 (-12.55%)
Mutual labels:  toolbox
Exclusively Dark Image Dataset
Exclusively Dark (ExDARK) dataset which to the best of our knowledge, is the largest collection of low-light images taken in very low-light environments to twilight (i.e 10 different conditions) to-date with image class and object level annotations.
Stars: ✭ 274 (+1.11%)
Mutual labels:  object-detection
Wechat jump tensorflow
Stars: ✭ 270 (-0.37%)
Mutual labels:  object-detection
Neurokit
NeuroKit2: The Python Toolbox for Neurophysiological Signal Processing
Stars: ✭ 264 (-2.58%)
Mutual labels:  toolbox
Vod Converter
Convert between visual object detection datasets
Stars: ✭ 260 (-4.06%)
Mutual labels:  object-detection
Sipmask
SipMask: Spatial Information Preservation for Fast Image and Video Instance Segmentation (ECCV2020)
Stars: ✭ 255 (-5.9%)
Mutual labels:  object-detection
Object Detection Api Tensorflow
Object Detection API Tensorflow
Stars: ✭ 267 (-1.48%)
Mutual labels:  object-detection
plenopticam
Light-field imaging application for plenoptic cameras
Stars: ✭ 111 (-59.04%)
Mutual labels:  toolbox
Simpledet
A Simple and Versatile Framework for Object Detection and Instance Recognition
Stars: ✭ 2,963 (+993.36%)
Mutual labels:  object-detection
spire
🗼Extensible JavaScript toolbox management
Stars: ✭ 21 (-92.25%)
Mutual labels:  toolbox
Realtime object detection
Plug and Play Real-Time Object Detection App with Tensorflow and OpenCV. No Bugs No Worries. Enjoy!
Stars: ✭ 260 (-4.06%)
Mutual labels:  object-detection
Mmdetection To Tensorrt
convert mmdetection model to tensorrt, support fp16, int8, batch input, dynamic shape etc.
Stars: ✭ 262 (-3.32%)
Mutual labels:  object-detection
Bmw Tensorflow Inference Api Gpu
This is a repository for an object detection inference API using the Tensorflow framework.
Stars: ✭ 277 (+2.21%)
Mutual labels:  object-detection
Easy Tensorflow
Simple and comprehensive tutorials in TensorFlow
Stars: ✭ 2,871 (+959.41%)
Mutual labels:  object-detection

Introduction

vedadet is a single stage object detector toolbox based on PyTorch.

Features

  • Modular Design

    We re-design MMDetection based on our taste and needs. Specifically, we decompose detector into four parts: data pipeline, model, postprocessing and criterion which make it easy to convert PyTorch model into TensorRT engine and deploy it on NVIDIA devices such as Tesla V100, Jetson Nano and Jetson AGX Xavier, etc.

  • Support of several popular single stage detector

    The toolbox supports several popular single stage detector out of the box, e.g. RetinaNet, FCOS, etc.

  • Friendly to TensorRT

    Detectors can be easily converted to TensorRT engine.

  • Easy to deploy

    It's simple to deploy the model accelerate by TensorRT on NVIDIA devices through Python front-end or C++ front-end.

License

This project is released under the Apache 2.0 license.

Installation

Requirements

  • Linux
  • Python 3.7+
  • PyTorch 1.6.0 or higher
  • CUDA 10.2 or higher

We have tested the following versions of OS and softwares:

  • OS: Ubuntu 16.04.6 LTS
  • CUDA: 10.2
  • PyTorch 1.6.0
  • Python 3.8.5

Install vedadet

a. Create a conda virtual environment and activate it.

conda create -n vedadet python=3.8.5 -y
conda activate vedadet

b. Install PyTorch and torchvision following the official instructions, e.g.,

conda install pytorch torchvision -c pytorch

c. Clone the vedadet repository.

git clone https://github.com/Media-Smart/vedadet.git
cd vedadet
vedadet_root=${PWD}

d. Install vedadet.

pip install -r requirements/build.txt
pip install -v -e .

Train

a. Config

Modify some configuration accordingly in the config file like configs/trainval/retinanet/retinanet.py

b. Multi-GPUs training

tools/dist_trainval.sh configs/trainval/retinanet/retinanet.py "0,1"

c. Single GPU training

CUDA_VISIBLE_DEVICES="0" python tools/trainval.py configs/trainval/retinanet/retinanet.py

Test

a. Config

Modify some configuration accordingly in the config file like configs/trainval/retinanet/retinanet.py

b. Test

CUDA_VISIBLE_DEVICES="0" python tools/test.py configs/trainval/retinanet/retinanet.py weight_path

Inference

a. Config

Modify some configuration accordingly in the config file like configs/infer/retinanet/retinanet.py

b. Inference

CUDA_VISIBLE_DEVICES="0" python tools/infer.py configs/infer/retinanet/retinanet.py image_path

Deploy

a. Convert to Onnx

Firstly, install volksdep following the official instructions.

Then, run the following code to convert PyTorch to Onnx. The input shape format is CxHxW. If you need the onnx model with constant input shape, please remove --dynamic_shape in the end.

CUDA_VISIBLE_DEVICES="0" python tools/torch2onnx.py configs/trainval/retinanet/retinanet.py weight_path out_path --dummy_input_shape 3,800,1344 --dynamic_shape

Here are some unsupported operations for model conversion.

  • GN
  • Deformable Conv

Please see more details in this.

b. Inference SDK

Firstly, install flexinfer following the official instructions.

Then, see the example for details.

Contact

This repository is currently maintained by Yanjia Zhu (@mike112223), Hongxiang Cai (@hxcai), Yichao Xiong (@mileistone).

Credits

We got a lot of code from mmcv and mmdetection, thanks to open-mmlab.

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].