TCGGroup/Torch_Detection

Rethinking our project structure (generate docs, reorganize files, etc)

Opened this issue · 1 comments

@Maxence1 @wsnedy @Gregory24 @icarus945
Hi all! Sorry to be a bystander during the last month. I think I can spare some time to make some contributions during the Spring Festival.

Furthermore, I provide several suggestions about how to better organize our project:

  1. I suggest we generate and check docs of main APIs in every commit. Maybe we should add subfolder docs/ in root path, and then generate html docs and check its format and content by preview before every commit.

Here is an example I generated with Sphix under theme Read the Docs

torchdet
2. I suggest we create a new subfolder torchdet/ (or sth like that) and put all current source code into it. It will finally become an importable python package like:

import torchdet
from torchdet.loss import FocalLoss
...

And add subfolder examples/ to put all re-implementations(Fast-RCNN, SSD, etc) with torchdet
3. Based on the above considerations, I propose a new structure of our project:

Torch_Detection
├── docs                                   // docs for main APIs
├── examples                               // put all re-implementations here
│      ├── ssd
│      ├── fast_rcnn
│      ├── ...
├── torchdet                               // core source code, final importable package
│      ├── core
│      ├── datasets
│      ├── ...
├── test                                   // unit test
├── ...                    
├── setup.py                                // can be easily setup with "python setup.py install"         
├── README.md           
...             

Totally agree, docs are very helpful for understanding the whole project. And I will check all the docs and re-organize the code in this two weeks, and maybe we can have a meeting tomorrow night if you have time