zhreshold opened a new pull request #8639: [WIP] Gluon object detection
URL: https://github.com/apache/incubator-mxnet/pull/8639
 
 
   ## Description ##
   Pure gluon object detection baselines.
   
   ### Targeted object algorithms
   
   By stage
   - Single stage: SSD,YOLO, RetinaNet
   - Two stage: Faster-RCNN, RFCN, MaskRCNN
   
   By data shape
   - Immutable data_shape: SSD, YOLO
   - Mutable data_shape: Faster-RCNN, RFCN, RetinaNet, MaskRCNN
   
   Status:
   `trainer/train_xxx.py`
   
   - [x] SSD
   - [x] YOLO v2(experimental)
   - [ ] Faster RCNN
   - [ ] MaskRCNN
   - [ ] RetinaNet
   - [ ] RFCN
   
   
   ### Dataset
   `dataset/xxx.py`
   
   - [x] Pascal VOC
   - [x] COCO
   - [ ] Imagenet
   - [ ] Custom dataset Wrapper
   
   ### Shared network blocks(Basic, Hybrid)
   `block/xxx.py`
   
   - [ ] (not complete)Anchor generator(CustomOp/function): SSD,YOLO, 
Faster-RCNN, RFCN, RetinaNet: `block/anchor.py`
   - [x] Feature extractor/expander: `block/feature.py`
   - [x] Box predictor(Conv2D, Dense, Complex): predict box class/location: 
`block/predictor.py`
   - [ ] (not complete) Target generator(CustomOp/function calling nd 
internally): SSD,YOLO, Faster-RCNN, RFCN, RetinaNet: `block/target.py`
   - [x] (Modified, can be merged to gluon.loss once finished) 
Loss(gluon.loss): L1, L2, SmoothL1, CE loss, Focal loss: `block/loss.py`
   - [x] Bounding box encoder/decoder: `block/coder.py`
   - [x] Matcher wrapper: `block/matcher.py`
   - [x] Sampler for select/discard matched results: `block/sampler.py`
   - [x] registry for blocks `block/registry.py`
   
   
   ### Perf critical components
   `src/operator/contrib/xxx`
   
   - [x]  IOU: overlap between anchors and labels. 
   - [x] (may not complete) Sampler: generating positive/negative/other samples
   - [x] Bipartite matching
   - [x] Argmax matching
   - [x] OHEM sampler: Hard negative mining(only dynamic block provided now, 
need to convert to c++)
   - [x] Non-maximum-suppression
   - [ ] More
   
   ### Iterator
   `dataset/`
   
   - [x] Normal iterator(python iterator): SSD/YOLO iterator
   - [ ] Mutable iterator(wrapper for c++ iter?): batch_size=1, take arbitrary 
data shape. Usually don't need augmentation.
   - [ ] Mini-batch iterator: for rcnn variations.
   
   ### Others
   - [ ] Object detection Model Zoo
   - [ ] Dataset downloader/loader
   - [ ] Configuration loader/saver(yaml)
   
   # Note
   Feel free to add/comment/contribute, as I am still working on it, any help 
is appreciated.
   Sorry about the missing docs, the APIs will change frequently in this 
period. 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to