## Changelog ### v1.0rc1 (13/12/2019) The RC1 release mainly focuses on improving the user experience, and fixing bugs. **Highlights** - Support new models: [FoveaBox](https://arxiv.org/abs/1904.03797), [RepPoints](https://arxiv.org/abs/1904.11490) and [FreeAnchor](https://arxiv.org/abs/1909.02466). - Add a Dockerfile. - Add a jupyter notebook demo and a webcam demo. - Setup the code style and CI. - Add lots of docstrings and unit tests. - Fix lots of bugs. **Breaking Changes** - There was a bug for computing COCO-style mAP w.r.t different scales (AP_s, AP_m, AP_l), introduced by #621. (#1679) **Bug Fixes** - Fix a sampling interval bug in Libra R-CNN. (#1800) - Fix the learning rate in SSD300 WIDER FACE. (#1781) - Fix the scaling issue when `keep_ratio=False`. (#1730) - Fix typos. (#1721, #1492, #1242, #1108, #1107) - Fix the shuffle argument in `build_dataloader`. (#1693) - Clip the proposal when computing mask targets. (#1688) - Fix the "index out of range" bug for samplers in some corner cases. (#1610, #1404) - Fix the NMS issue on devices other than GPU:0. (#1603) - Fix SSD Head and GHM Loss on CPU. (#1578) - Fix the OOM error when there are too many gt bboxes. (#1575) - Fix the wrong keyword argument `nms_cfg` in HTC. (#1573) - Process masks and semantic segmentation in Expand and MinIoUCrop transforms. (#1550, #1361) - Fix a scale bug in the Non Local op. (#1528) - Fix a bug in transforms when `gt_bboxes_ignore` is None. (#1498) - Fix a bug when `img_prefix` is None. (#1497) - Pass the device argument to `grid_anchors` and `valid_flags`. (#1478) - Fix the data pipeline for test_robustness. (#1476) - Fix the argument type of deformable pooling. (#1390) - Fix the coco_eval when there are only two classes. (#1376) - Fix a bug in Modulated DeformableConv when deformable_group>1. (#1359) - Fix the mask cropping in RandomCrop. (#1333) - Fix zero outputs in DeformConv when not running on cuda:0. (#1326) - Fix the type issue in Expand. (#1288) - Fix the inference API. (#1255) - Fix the inplace operation in Expand. (#1249) - Fix the from-scratch training config. (#1196) - Fix inplace add in RoIExtractor which cause an error in PyTorch 1.2. (#1160) - Fix FCOS when input images has no positive sample. (#1136) - Fix recursive imports. (#1099) **Improvements** - Print the config file and mmdet version in the log. (#1721) - Lint the code before compiling in travis CI. (#1715) - Add a probability argument for the `Expand` transform. (#1651) - Update the PyTorch and CUDA version in the docker file. (#1615) - Raise a warning when specifying `--validate` in non-distributed training. (#1624, #1651) - Beautify the mAP printing. (#1614) - Add pre-commit hook. (#1536) - Add the argument `in_channels` to backbones. (#1475) - Add lots of docstrings and unit tests, thanks to [@Erotemic](https://github.com/Erotemic). (#1603, #1517, #1506, #1505, #1491, #1479, #1477, #1475, #1474) - Add support for multi-node distributed test when there is no shared storage. (#1399) - Optimize Dockerfile to reduce the image size. (#1306) - Update new results of HRNet. (#1284, #1182) - Add an argument `no_norm_on_lateral` in FPN. (#1240) - Test the compiling in CI. (#1235) - Move docs to a separate folder. (#1233) - Add a jupyter notebook demo. (#1158) - Support different type of dataset for training. (#1133) - Use int64_t instead of long in cuda kernels. (#1131) - Support unsquare RoIs for bbox and mask heads. (#1128) - Manually add type promotion to make compatible to PyTorch 1.2. (#1114) - Allowing validation dataset for computing validation loss. (#1093) - Use `.scalar_type()` instead of `.type()` to suppress some warnings. (#1070) **New Features** - Add an option `--with_ap` to compute the AP for each class. (#1549) - Implement "FreeAnchor: Learning to Match Anchors for Visual Object Detection". (#1391) - Support [Albumentations](https://github.com/albumentations-team/albumentations) for augmentations in the data pipeline. (#1354) - Implement "FoveaBox: Beyond Anchor-based Object Detector". (#1339) - Support horizontal and vertical flipping. (#1273, #1115) - Implement "RepPoints: Point Set Representation for Object Detection". (#1265) - Add test-time augmentation to HTC and Cascade R-CNN. (#1251) - Add a COCO result analysis tool. (#1228) - Add Dockerfile. (#1168) - Add a webcam demo. (#1155, #1150) - Add FLOPs counter. (#1127) - Allow arbitrary layer order for ConvModule. (#1078) ### v1.0rc0 (27/07/2019) - Implement lots of new methods and components (Mixed Precision Training, HTC, Libra R-CNN, Guided Anchoring, Empirical Attention, Mask Scoring R-CNN, Grid R-CNN (Plus), GHM, GCNet, FCOS, HRNet, Weight Standardization, etc.). Thank all collaborators! - Support two additional datasets: WIDER FACE and Cityscapes. - Refactoring for loss APIs and make it more flexible to adopt different losses and related hyper-parameters. - Speed up multi-gpu testing. - Integrate all compiling and installing in a single script. ### v0.6.0 (14/04/2019) - Up to 30% speedup compared to the model zoo. - Support both PyTorch stable and nightly version. - Replace NMS and SigmoidFocalLoss with Pytorch CUDA extensions. ### v0.6rc0(06/02/2019) - Migrate to PyTorch 1.0. ### v0.5.7 (06/02/2019) - Add support for Deformable ConvNet v2. (Many thanks to the authors and [@chengdazhi](https://github.com/chengdazhi)) - This is the last release based on PyTorch 0.4.1. ### v0.5.6 (17/01/2019) - Add support for Group Normalization. - Unify RPNHead and single stage heads (RetinaHead, SSDHead) with AnchorHead. ### v0.5.5 (22/12/2018) - Add SSD for COCO and PASCAL VOC. - Add ResNeXt backbones and detection models. - Refactoring for Samplers/Assigners and add OHEM. - Add VOC dataset and evaluation scripts. ### v0.5.4 (27/11/2018) - Add SingleStageDetector and RetinaNet. ### v0.5.3 (26/11/2018) - Add Cascade R-CNN and Cascade Mask R-CNN. - Add support for Soft-NMS in config files. ### v0.5.2 (21/10/2018) - Add support for custom datasets. - Add a script to convert PASCAL VOC annotations to the expected format. ### v0.5.1 (20/10/2018) - Add BBoxAssigner and BBoxSampler, the `train_cfg` field in config files are restructured. - `ConvFCRoIHead` / `SharedFCRoIHead` are renamed to `ConvFCBBoxHead` / `SharedFCBBoxHead` for consistency.