{"id":13576370,"url":"https://github.com/Jittor/JDet","last_synced_at":"2025-04-05T05:31:40.480Z","repository":{"id":38038857,"uuid":"392623290","full_name":"Jittor/JDet","owner":"Jittor","description":"JDet is an object detection benchmark based on Jittor. Mainly focus on aerial image object detection (oriented object detection).","archived":false,"fork":false,"pushed_at":"2025-03-02T18:40:09.000Z","size":6645,"stargazers_count":199,"open_issues_count":33,"forks_count":35,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-03-02T19:32:47.663Z","etag":null,"topics":["aerial-image-detection","deep-learning","jittor","object-detection","oriented-object-detection"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Jittor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-08-04T09:13:15.000Z","updated_at":"2025-03-02T18:40:13.000Z","dependencies_parsed_at":"2023-02-09T22:31:03.203Z","dependency_job_id":"533b42cc-c682-44ef-9a26-087ea4915ef1","html_url":"https://github.com/Jittor/JDet","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jittor%2FJDet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jittor%2FJDet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jittor%2FJDet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jittor%2FJDet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Jittor","download_url":"https://codeload.github.com/Jittor/JDet/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247294468,"owners_count":20915335,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aerial-image-detection","deep-learning","jittor","object-detection","oriented-object-detection"],"created_at":"2024-08-01T15:01:09.662Z","updated_at":"2025-04-05T05:31:35.467Z","avatar_url":"https://github.com/Jittor.png","language":"Python","readme":"# JDet\n## Introduction\nJDet is an object detection benchmark based on [Jittor](https://github.com/Jittor/jittor), and mainly focus on aerial image object detection (oriented object detection). \n\n\u003c!-- **Features**\n- Automatic compilation. Our framwork is based on Jittor, which means we don't need to Manual compilation for these code with CUDA and C++.\n-  --\u003e\n\n\u003c!-- Framework details are avaliable in the [framework.md](docs/framework.md) --\u003e\n## Install\nJDet environment requirements:\n\n* System: **Linux**(e.g. Ubuntu/CentOS/Arch), **macOS**, or **Windows Subsystem of Linux (WSL)**\n* Python version \u003e= 3.7\n* CPU compiler (require at least one of the following)\n    * g++ (\u003e=5.4.0)\n    * clang (\u003e=8.0)\n* GPU compiler (optional)\n    * nvcc (\u003e=10.0 for g++ or \u003e=10.2 for clang)\n* GPU library: cudnn-dev (recommend tar file installation, [reference link](https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#installlinux-tar))\n\n**Step 1: Install the requirements**\n```shell\ngit clone https://github.com/Jittor/JDet\ncd JDet\npython -m pip install -r requirements.txt\n```\nIf you have any installation problems for Jittor, please refer to [Jittor](https://github.com/Jittor/jittor)\n\n**Step 2: Install JDet**\n \n```shell\ncd JDet\n# suggest this \npython setup.py develop\n# or\npython setup.py install\n```\nIf you don't have permission for install,please add ```--user```.\n\nOr use ```PYTHONPATH```: \nYou can add ```export PYTHONPATH=$PYTHONPATH:{you_own_path}/JDet/python``` into ```.bashrc```, and run\n```shell\nsource .bashrc\n```\n\n## Getting Started\n\n### Datasets\nThe following datasets are supported in JDet, please check the corresponding document before use. \n\nDOTA1.0/DOTA1.5/DOTA2.0 Dataset: [dota.md](docs/dota.md).\n\nFAIR Dataset: [fair.md](docs/fair.md)\n\nSSDD/SSDD+: [ssdd.md](docs/ssdd.md)\n\nYou can also build your own dataset by convert your datas to DOTA format.\n### Config\nJDet defines the used model, dataset and training/testing method by `config-file`, please check the [config.md](docs/config.md) to learn how it works.\n### Train\n```shell\npython tools/run_net.py --config-file=configs/s2anet_r50_fpn_1x_dota.py --task=train\n```\n\n### Test\nIf you want to test the downloaded trained models, please set ```resume_path={you_checkpointspath}``` in the last line of the config file.\n```shell\npython tools/run_net.py --config-file=configs/s2anet_r50_fpn_1x_dota.py --task=test\n```\n### Test on images / Visualization\nYou can test and visualize results on your own image sets by:\n```shell\npython tools/run_net.py --config-file=configs/s2anet_r50_fpn_1x_dota.py --task=vis_test\n```\nYou can choose the visualization style you prefer, for more details about visualization, please refer to [visualization.md](docs/visualization.md).\n\u003cimg src=\"https://github.com/Jittor/JDet/blob/visualization/docs/images/vis2.jpg?raw=true\" alt=\"Visualization\" width=\"800\"/\u003e\n\n### Build a New Project\nIn this section, we will introduce how to build a new project(model) with JDet.\nWe need to install JDet first, and build a new project by:\n```sh\nmkdir $PROJECT_PATH$\ncd $PROJECT_PATH$\ncp $JDet_PATH$/tools/run_net.py ./\nmkdir configs\n```\nThen we can build and edit `configs/base.py` like `$JDet_PATH$/configs/retinanet.py`.\nIf we need to use a new layer, we can define this layer at `$PROJECT_PATH$/layers.py` and import `layers.py` in `$PROJECT_PATH$/run_net.py`, then we can use this layer in config files.\nThen we can train/test this model by:\n```sh\npython run_net.py --config-file=configs/base.py --task=train\npython run_net.py --config-file=configs/base.py --task=test\n```\n\n## Models\n\n|         Models         | Dataset  | Sub_Image_Size/Overlap  |   Train Aug     | Test Aug  | Optim  | Lr schd  |  mAP   |                                                                    Paper                                                                      |                                           Config                                            |                                                                       Download                                                                         |\n|:----------------------:|:--------:|:-----------------------:|:---------------:|:---------:|:------:|:--------:|:------:|:---------------------------------------------------------------------------------------------------------------------------------------------:|:-------------------------------------------------------------------------------------------:|:------------------------------------------------------------------------------------------------------------------------------------------------------:|\n|     S2ANet-R50-FPN     | DOTA1.0  |        1024/200         |      flip       |     -     |  SGD   |    1x    | 74.11  |                                                   [arxiv](https://arxiv.org/abs/2008.09397)                                                   |                     [config](configs/s2anet/s2anet_r50_fpn_1x_dota.py)                      |       [model](https://cloud.tsinghua.edu.cn/f/885e5523d03d42e49984/?dl=1)        |\n|     S2ANet-R50-FPN     | DOTA1.0  |        1024/200         |  flip+ra90+bc   |     -     |  SGD   |    1x    | 76.40  |                                                   [arxiv](https://arxiv.org/abs/2008.09397)                                                   |         [config](projects/s2anet/configs/s2anet_r50_fpn_1x_dota_rotate_balance.py)          |      [model](https://cloud.tsinghua.edu.cn/f/41ff7d8ac89d433eb42d/?dl=1)       |\n|     S2ANet-R50-FPN     | DOTA1.0  |        1024/200         | flip+ra90+bc+ms |    ms     |  SGD   |    1x    | 79.72  |                                                   [arxiv](https://arxiv.org/abs/2008.09397)                                                   |        [config](projects/s2anet/configs/s2anet_r50_fpn_1x_dota_rotate_balance_ms.py)        |     [model](https://cloud.tsinghua.edu.cn/f/9118b7af4497455f8895/?dl=1)     |\n|    S2ANet-R101-FPN     | DOTA1.0  |        1024/200         |      Flip       |     -     |  SGD   |    1x    | 74.28  |                                                   [arxiv](https://arxiv.org/abs/2008.09397)                                                   |              [config](projects/s2anet/configs/s2anet_r101_fpn_1x_dota_bs2.py)               | [model](https://cloud.tsinghua.edu.cn/f/9118b7af4497455f8895/?dl=1) |\n|    Gliding-R50-FPN     | DOTA1.0  |        1024/200         |      Flip       |     -     |  SGD   |    1x    | 72.93  |                                                   [arxiv](https://arxiv.org/abs/1911.09358)                                                   |           [config](projects/gliding/configs/gliding_r50_fpn_1x_dota_with_flip.py)           |                                          [model](https://cloud.tsinghua.edu.cn/f/d00c40a3ee4e4844a203/?dl=1)                                           |\n|    Gliding-R50-FPN     | DOTA1.0  |        1024/200         |  Flip+ra90+bc   |     -     |  SGD   |    1x    | 74.93  |                                                   [arxiv](https://arxiv.org/abs/1911.09358)                                                   | [config](projects/gliding/configs/gliding_r50_fpn_1x_dota_with_flip_rotate_balance_cate.py) |                                          [model](https://cloud.tsinghua.edu.cn/f/f5a75f9671b04da48498/?dl=1)                                           |\n|    H2RBox-R50-FPN      | DOTA1.0  |        1024/200         |      flip       |     -     | AdamW  |    1x    | 67.62  |                                                   [arxiv](https://arxiv.org/abs/2210.06742)                                                   |                [config](configs/h2rbox/h2rbox_obb_r50_adamw_fpn_1x_dota.py)                 |                                          [model](https://cloud.tsinghua.edu.cn/f/f75f1315c1954f03b9d7/?dl=1)                                           |\n| RetinaNet-hbb-R50-FPN  | DOTA1.0  |        1024/200         |      flip       |     -     |  SGD   |    1x    | 68.02  |                                                   [arxiv](https://arxiv.org/abs/1908.05612)                                                   |        [config](configs/rotated_retinanet/rotated_retinanet_hbb_r50_fpn_1x_dota.py)         |                                          [model](https://cloud.tsinghua.edu.cn/f/f511f182a6124c42bceb/?dl=1)                                           |\n| RetinaNet-obb-R50-FPN  | DOTA1.0  |        1024/200         |      flip       |     -     |  SGD   |    1x    | 68.07  |                                                   [arxiv](https://arxiv.org/abs/1908.05612)                                                   |        [config](configs/rotated_retinanet/rotated_retinanet_obb_r50_fpn_1x_dota.py)         |                                          [model](https://cloud.tsinghua.edu.cn/f/104debafe3b8456297ca/?dl=1)                                           |\n|      GWD-R50-FPN       | DOTA1.0  |        1024/200         |      flip       |     -     |  SGD   |    1x    | 68.88  |                                                   [arxiv](https://arxiv.org/abs/2101.11952)                                                   |         [config](projects/rotated_retinanet_gwd/configs/rotated_retinanet_hbb_gwd_r50_fpn_1x_dota.py)         |                                          [model](https://cloud.tsinghua.edu.cn/f/e7c6c120a0c24713a568/?dl=1)                                           |\n|      KLD-R50-FPN       | DOTA1.0  |        1024/200         |      flip       |     -     |  SGD   |    1x    | 69.10  |                                                   [arxiv](https://arxiv.org/abs/2106.01883)                                                   |         [config](projects/rotated_retinanet_kld/configs/rotated_retinanet_hbb_kld_r50_fpn_1x_dota.py)         |                                          [model](https://cloud.tsinghua.edu.cn/f/cbe389f359b743a0ac4f/?dl=1)                                           |\n|      KFIoU-R50-FPN     | DOTA1.0  |        1024/200         |      flip       |     -     |  SGD   |    1x    | 69.36  |                                                   [arxiv](https://arxiv.org/abs/2201.12558)|                                                            [config](projects/rotated_retinanet_kfiou/configs/rotated_retinanet_hbb_kfiou_r50_fpn_1x_dota.py)                        |                                          [model](https://cloud.tsinghua.edu.cn/f/cbe389f359b743a0ac4f/?dl=1) |\n|   FasterRCNN-R50-FPN   | DOTA1.0  |        1024/200         |      Flip       |     -     |  SGD   |    1x    | 69.631 |                                                   [arxiv](https://arxiv.org/abs/1506.01497)                                                   |                    [config](configs/faster_rcnn_obb_r50_fpn_1x_dota.py)                     |                                          [model](https://cloud.tsinghua.edu.cn/f/d73fb4bfc01140f1a331/?dl=1)                                           |\n| RoITransformer-R50-FPN | DOTA1.0  |        1024/200         |      Flip       |     -     |  SGD   |    1x    | 73.842 |                                                   [arxiv](https://arxiv.org/abs/1812.00155)                                                   |                  [config](configs/faster_rcnn_RoITrans_r50_fpn_1x_dota.py)                  |                                          [model](https://cloud.tsinghua.edu.cn/f/2bc5c045874349859b32/?dl=1)                                           |\n|      FCOS-R50-FPN      | DOTA1.0  |        1024/200         |      flip       |     -     |  SGD   |    1x    | 70.40  | [ICCV19](https://openaccess.thecvf.com/content_ICCV_2019/papers/Tian_FCOS_Fully_Convolutional_One-Stage_Object_Detection_ICCV_2019_paper.pdf) |                        [config](configs/fcos_obb_r50_fpn_1x_dota.py)                        |                     [model](https://cloud.tsinghua.edu.cn/f/5df0364e558043e18b0c/?dl=1)                     |\n|  OrientedRCNN-R50-FPN  | DOTA1.0  |        1024/200         |      Flip       |     -     |  SGD   |    1x    | 75.62  |          [ICCV21](https://openaccess.thecvf.com/content/ICCV2021/papers/Xie_Oriented_R-CNN_for_Object_Detection_ICCV_2021_paper.pdf)          |                [config](configs/oriented_rcnn_r50_fpn_1x_dota_with_flip.py)                 |                                          [model](https://cloud.tsinghua.edu.cn/f/6282cfab78804280abf8/?dl=1)                                           |\n| ReDet-R50-FPN |DOTA1.0|1024/200|Flip|-|  SGD   |   1x    | 76.23  | [arxiv](https://arxiv.org/abs/2103.07733)| [config](configs/ReDet_re50_refpn_1x_dota1.py) | [model](https://cloud.tsinghua.edu.cn/f/d49722c4480d46f0930d/?dl=1)   [pretrained](https://cloud.tsinghua.edu.cn/f/cd013121de4e45189ebf/?dl=1) |\n| CSL-R50-FPN |DOTA1.0|1024/200| flip|-| SGD | 1x | 67.99 | [arxiv](https://link.springer.com/chapter/10.1007/978-3-030-58598-3_40)| [config](configs/rotated_retinanet_obb_csl_gaussian_r50_fpn_1x_dota.py) | [model](https://cloud.tsinghua.edu.cn/f/8a192907e94d4fd08e2d/?dl=1) |\n| RSDet-R50-FPN | DOTA1.0|1024/200|Flip|-| SGD | 1x | 68.41 | [arxiv](https://arxiv.org/abs/1911.08299) | [config](configs/rotated_retinanet/rsdet_obb_r50_fpn_1x_dota_lmr5p.py) | [model](https://cloud.tsinghua.edu.cn/f/fb98782e976f4fa69045/?dl=1) |\n| ATSS-R50-FPN|DOTA1.0|1024/200| flip|-| SGD | 1x | 72.44 | [arxiv](https://arxiv.org/abs/1912.02424) | [config](configs/rotated_retinanet/rotated_retinanet_obb_r50_fpn_1x_dota_atss.py) | [model](https://cloud.tsinghua.edu.cn/f/b9e9dc675e9742a28383/?dl=1) |\n| Reppoints-R50-FPN|DOTA1.0|1024/200| flip|-| SGD | 1x | 56.34 | [arxiv](https://arxiv.org/abs/1904.11490) | [config](configs/rotated_retinanet/rotated_retinanet_obb_r50_fpn_1x_dota_atss.py) | [model](https://cloud.tsinghua.edu.cn/f/af7dcbb1a16e450c8182/?dl=1) |\n\n\n**Notice**:\n\n1. ms: multiscale \n2. flip: random flip\n3. ra: rotate aug\n4. ra90: rotate aug with angle 90,180,270\n5. 1x : 12 epochs\n6. bc: balance category\n7. mAP: mean Average Precision on DOTA1.0 test set\n\n### Plan of Models\n\u003cb\u003e:heavy_check_mark:Supported  :clock3:Doing :heavy_plus_sign:TODO\u003c/b\u003e\n\n- :heavy_check_mark: S2ANet\n- :heavy_check_mark: Gliding\n- :heavy_check_mark: RetinaNet\n- :heavy_check_mark: Rotated RetinaNet\n- :heavy_check_mark: Faster R-CNN\n- :heavy_check_mark: SSD\n- :heavy_check_mark: ROI Transformer\n- :heavy_check_mark: FCOS\n- :heavy_check_mark: Oriented R-CNN\n- :heavy_check_mark: YOLOv5\n- :heavy_check_mark: GWD\n- :heavy_check_mark: KLD\n- :heavy_check_mark: H2RBox\n- :heavy_check_mark: KFIoU\n- :heavy_check_mark: Localization Distillation\n- :heavy_check_mark: ReDet\n- :heavy_check_mark: CSL\n- :heavy_check_mark: Reppoints\n- :heavy_check_mark: RSDet\n- :heavy_check_mark: ATSS\n- :clock3: R3Det\n- :clock3: Cascade R-CNN\n- :clock3: Oriented Reppoints\n- :heavy_plus_sign: DCL\n- :heavy_plus_sign: Double Head OBB\n- :heavy_plus_sign: Guided Anchoring\n- :heavy_plus_sign: Sampling Equivariant Self-attention Networks\n- :heavy_plus_sign: ...\n\n### Plan of Datasets\n\u003cb\u003e:heavy_check_mark:Supported  :clock3:Doing :heavy_plus_sign:TODO\u003c/b\u003e\n\n- :heavy_check_mark: DOTA1.0\n- :heavy_check_mark: DOTA1.5\n- :heavy_check_mark: DOTA2.0\n- :heavy_check_mark: SSDD\n- :heavy_check_mark: SSDD+\n- :heavy_check_mark: FAIR\n- :heavy_check_mark: COCO\n- :heavy_plus_sign: LS-SSDD\n- :heavy_plus_sign: DIOR-R\n- :heavy_plus_sign: HRSC2016\n- :heavy_plus_sign: ICDAR2015\n- :heavy_plus_sign: ICDAR2017 MLT\n- :heavy_plus_sign: UCAS-AOD\n- :heavy_plus_sign: FDDB\n- :heavy_plus_sign: OHD-SJTU\n- :heavy_plus_sign: MSRA-TD500\n- :heavy_plus_sign: Total-Text\n- :heavy_plus_sign: ...\n\n## Contact Us\n\n\nWebsite: http://cg.cs.tsinghua.edu.cn/jittor/\n\nEmail: jittor@qq.com\n\nFile an issue: https://github.com/Jittor/jittor/issues\n\nQQ Group: 761222083\n\n\n\u003cimg src=\"https://cg.cs.tsinghua.edu.cn/jittor/images/news/2020-12-8-21-19-1_2_2/fig4.png\" width=\"200\"/\u003e\n\n## The Team\n\n\nJDet is currently maintained by the [Tsinghua CSCG Group](https://cg.cs.tsinghua.edu.cn/). If you are also interested in JDet and want to improve it, Please join us!\n\n\n## Citation\n\n\n```\n@article{hu2020jittor,\n  title={Jittor: a novel deep learning framework with meta-operators and unified graph execution},\n  author={Hu, Shi-Min and Liang, Dun and Yang, Guo-Ye and Yang, Guo-Wei and Zhou, Wen-Yang},\n  journal={Science China Information Sciences},\n  volume={63},\n  number={222103},\n  pages={1--21},\n  year={2020}\n}\n```\n\n## Reference\n1. [Jittor](https://github.com/Jittor/jittor)\n2. [mmrotate](https://github.com/open-mmlab/mmrotate)\n3. [Detectron2](https://github.com/facebookresearch/detectron2)\n4. [mmdetection](https://github.com/open-mmlab/mmdetection)\n5. [maskrcnn_benchmark](https://github.com/facebookresearch/maskrcnn-benchmark)\n6. [RotationDetection](https://github.com/yangxue0827/RotationDetection)\n7. [s2anet](https://github.com/csuhan/s2anet)\n8. [gliding_vertex](https://github.com/MingtaoFu/gliding_vertex)\n9. [oriented_rcnn](https://github.com/jbwang1997/OBBDetection/tree/master/configs/obb/oriented_rcnn)\n10. [r3det](https://github.com/SJTU-Thinklab-Det/r3det-on-mmdetection)\n11. [AerialDetection](https://github.com/dingjiansw101/AerialDetection)\n12. [DOTA_devkit](https://github.com/CAPTAIN-WHU/DOTA_devkit)\n13. [OBBDetection](https://github.com/jbwang1997/OBBDetection)\n\n\n","funding_links":[],"categories":["Python"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJittor%2FJDet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FJittor%2FJDet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJittor%2FJDet/lists"}