Awesome
Monk - A computer vision toolkit for everyone
Monk Object Detection - A low code wrapper over state-of-the-art deep learning algorithms
<br />Why use Monk
- Issue: Abudance of algorithms and difficult to find a working code
- <b> Solution: All your state-of-the-art as well as old algorithms in one place </b>
- Issue: Installaing different deep learning pipelines is an error-prone task
- <b> Solution: Single line installations with monk </b>
- Issue: Setting up different algorithms for your custom data requires a lot of effort in changing the existing codes
- <b> Solution: Easily ingest your custom data for training in COCO, VOC, or Yolo formats </b>
- Issue: Difficulty to trace out which hyperparameters to change for tuning the algorithm
- <b> Solution: Set your hyper-parameters with a common structure for every algorithm </b>
- Issue: Deployment requires knowledge of base libraries and codes
- <b> Solution: Easily deploy your models using Monk's low code-syntax </b>
- Issue: Looking for hands-on tutorials for computer vision
- <b> Solution: Use monk's application building tutorial set</b>
Create real-world Object Detection applications
<table> <tr> <td>Wheat detection in field</td> <td>Detection in underwater imagery</td> <td>Trash Detection</td> </tr> <tr> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/wheat-detection-demo.gif" width=320 height=240></td> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/sea_tutrle_demo.gif" width=320 height=240></td> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/trash.gif" width=320 height=240></td> </tr> <tr> <td>Object detection in bad lighting</td> <td>Tiger detection in wild</td> <td>Person detection in infrared imagery</td> </tr> <tr> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/obj-det-in-bad-light.gif" width=320 height=240></td> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/tiger.gif" width=320 height=240></td> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/ir-person-det.gif" width=320 height=240></td> </tr> </table>For more such tutorials visit Application Model Zoo
<br /> <br />Create real-world Image Segmentation applications
<table> <tr> <td>Road Segmentation in satellite imagery</td> <td>Ultrasound nerve segmentation</td> </tr> <tr> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/satellite-road-segmentation.gif" width=640 height=240></td> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/ultrasound-nerve-image-segmentat.gif" width=320 height=240></td> </tr> </table>For more such tutorials visit Application Model Zoo
<br /> <br />Other applications
<table> <tr> <td>Face Detection</td> <td>Pose Estimation</td> <td>Activity Recognition</td> </tr> <tr> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/face.gif" width=320 height=240></td> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/pose_demo.gif" width=320 height=240></td> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/ucf-demo.gif" width=320 height=240></td> </tr> <tr> <td>Object Re-identification</td> <td>Scene Text Localization</td> <td>Object Tracking</td> </tr> <tr> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/coming_soon.jpg" width=320 height=240></td> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/text_demo.gif" width=320 height=240></td> <td><img src="https://github.com/abhi-kumar/monk_det_demos/blob/master/coming_soon.jpg" width=320 height=240></td> </tr> </table>For more such tutorials visit Application Model Zoo
<br /> <br />Important Elements
- A) Training Engine
- Train models on custom dataset witjh low code syntax
- Pretrained examples on variety of datasets
- Useful to train your own detector
- B) Inference Engine
- Original pretrained models (from original authors and implementations) for inferencing and analysing
- Pretrained models on coco, voc, cityscpaes, type datasets
- Useful to analyse which algorithm works best for you
- Useful to generate semi-accurate annotations (coco, pascal-voc, yolo formats) on a new dataset
Training Engine Algorithms
- Train models on custom dataset with low code syntax
- Pretrained examples on variety of datasets
- Useful to train your own detector
NOTE - See the licence file mentioned in the pipelines before using them
S.No. | Algorithm Type | Algorithm | Model variations | Installation | Example Notebooks | Code | Credits | Original Usage License | Functional Docs |
---|---|---|---|---|---|---|---|---|---|
1 | Object Detection | GluonCV Finetune | 5 | LINK | LINK | LINK | LINK | Apache 2.0 | LINK |
2 | Object Detection | Tensorflow Object Detection 1.0 | 22 | LINK | LINK | LINK | LINK | Apache 2.0 | In Development |
3 | Object Detection | Tensorflow Object Detection 2.0 | 26 | LINK | LINK | LINK | LINK | Apache 2.0 | In Development |
4 | Object Detection | Pytorch Efficient-Det 1 | 1 | LINK | LINK | LINK | LINK | MIT | LINK |
5 | Object Detection | Pytorch Efficient-Det 2 | 8 | LINK | LINK | LINK | LINK | LGPL 3.0 | In Development |
6 | Object Detection | TorchVision Finetune | 1 | LINK | LINK | LINK | LINK | BSD-3-Clause | LINK |
7 | Object Detection | Mx-RCNN | 3 | LINK | LINK | LINK | LINK | Mixed | LINK |
8 | Object Detection | Pytorch-Retinanet | 5 | LINK | LINK | LINK | LINK | Apache 2.0 | LINK |
9 | Object Detection | CornerNet Lite | 2 | LINK | LINK | LINK | LINK | BSD-3-Clause | LINK |
10 | Object Detection | YoloV3 | 7 | LINK | LINK | LINK | LINK | GPL 3.0 | LINK |
11 | Object Detection | RFBNet | 3 | LINK | LINK | LINK | LINK | MIT | LINK |
12 | Object Detection | Slim-Yolo-V3 | 1 | LINK | LINK | LINK | LINK | License Not Available | In Development |
13 | Object Detection | Pytorch SSD | 3 | LINK | LINK | LINK | LINK | MIT | In Development |
14 | Object Detection | Pytorch-Peleenet | 1 | LINK | LINK | LINK | LINK | License Not Available | In Development |
15 | Object Detection | MM-Detection | 36 | LINK | LINK | LINK | LINK | Apache 2.0 | In Development |
16 | Image Segmentation | Segmentation Models | 4 | LINK | LINK | LINK | LINK | MIT | In Development |
17 | Pytorch Retinaface | Face Detection | 2 | LINK | LINK | LINK | LINK | MIT | In Development |
18 | Action Recognition | MM-Action2 | 8 | LINK | LINK | LINK | LINK | Apache 2.0 | In Development |
19 | Text Localization | Pytorch-TextSnake | 1 | LINK | LINK | LINK | LINK | MIT | In Development |
20 | Image Segmentation | SOLO - V1/V2 | 14 | LINK | LINK | LINK | LINK | Academic non-commercial usage | In Development |
21 | Image Segmentation | Mask-RCNN (MMDetect) | 8 | LINK | LINK | LINK | LINK | Apache 2.0 | In Development |
22 | Pose Estimation | GluonCV Pose | 11 | LINK | LINK | LINK | LINK | Apache 2.0 |
Inference Engine Algorithms
- Infer already trained models on COCO/VOC/Open-Images on your custom data
- Useful to analyse computation time metrics
S.No. | Algorithm Type | Algorithm | Model Valriations | Model Trained On | Installation | Example Notebook | Code | Credits | Functional Docs |
---|---|---|---|---|---|---|---|---|---|
1 | Object Detection | GluonCV Finetune | 4 | COCO | Pascal VOC | LINK | LINK | LINK | LINK |
2 | Object Detection | Pytorch EfficientDet | 8 | COCO | LINK | LINK | LINK | LINK | In Development |
3 | Object Detection | Detecto-RS | 2 | COCO | LINK | LINK | LINK | LINK | In Development |
Aknowledgements
- Contributors' information can be found here: https://github.com/Tessellate-Imaging/Monk_Object_Detection/blob/master/Contributors.md
- Majority of the code is obtained from these pipelines (Monk is a low code wrapper to utilize these pipelines)
- https://gluon-cv.mxnet.io/build/examples_detection/index.html
- https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/tf1.md
- https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/tf2.md
- https://github.com/signatrix/efficientdet
- https://github.com/zylo117/Yet-Another-EfficientDet-Pytorch
- https://pytorch.org/tutorials/intermediate/torchvision_tutorial.html
- https://github.com/ijkguo/mx-rcnn
- https://github.com/yhenon/pytorch-retinanet
- https://github.com/princeton-vl/CornerNet-Lite
- https://github.com/ultralytics/yolov3
- https://github.com/ruinmessi/RFBNet
- https://github.com/PengyiZhang/SlimYOLOv3
- https://github.com/qfgaohao/pytorch-ssd
- https://github.com/open-mmlab/mmdetection
- https://github.com/qubvel/segmentation_models
- https://github.com/biubug6/Pytorch_Retinaface
- https://github.com/open-mmlab/mmaction2
- https://github.com/WXinlong/SOLO
- https://gluon-cv.mxnet.io/build/examples_pose/dive_deep_simple_pose.html
- https://github.com/Cartucho/mAP
Author
Tessellate Imaging - https://www.tessellateimaging.com/
Check out Monk AI - (https://github.com/Tessellate-Imaging/monk_v1)
Monk features
- low-code
- unified wrapper over major deep learning framework - keras, pytorch, gluoncv
- syntax invariant wrapper
Enables developers
- to create, manage and version control deep learning experiments
- to compare experiments across training metrics
- to quickly find best hyper-parameters
To contribute to Monk AI or Monk Object Detection repository raise an issue in the git-repo or dm us on linkedin
- Abhishek - https://www.linkedin.com/in/abhishek-kumar-annamraju/
- Akash - https://www.linkedin.com/in/akashdeepsingh01/ <br />
Copyright
Copyright 2019 onwards, Tessellate Imaging Private Limited Licensed under the Apache License, Version 2.0 (the "License"); you may not use this project's files except in compliance with the License. A copy of the License is provided in the LICENSE file in this repository.