-
Notifications
You must be signed in to change notification settings - Fork 574
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changelog v1.0.0rc0 #599
Changelog v1.0.0rc0 #599
Conversation
Codecov ReportBase: 61.26% // Head: 80.19% // Increases project coverage by
Additional details and impacted files@@ Coverage Diff @@
## dev-1.x #599 +/- ##
============================================
+ Coverage 61.26% 80.19% +18.93%
============================================
Files 95 95
Lines 6407 6407
Branches 903 903
============================================
+ Hits 3925 5138 +1213
+ Misses 2277 973 -1304
- Partials 205 296 +91
Flags with carried forward coverage won't be shown. Click here to find out more.
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
bcaf254
to
8152489
Compare
Co-authored-by: RangiLyu <lyuchqi@gmail.com>
Co-authored-by: RangiLyu <lyuchqi@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
* skip some ci when no cuda * fix ci in windows * fix windows ci * update * update codecov * Update config.yml * update * Update test.yml * Update test.yml * update * Update test.yml * Update test.yml * Update test.yml * Update test.yml * improve codecov from 72% -> 78% * update * fix lint * Docs. (To be updated) * update * Update * update * Update README.md Co-authored-by: RangiLyu <lyuchqi@gmail.com> * Update README.md Co-authored-by: RangiLyu <lyuchqi@gmail.com> * fix Co-authored-by: RangiLyu <lyuchqi@gmail.com>
Changelog of v1.x
v1.0.0rc0 (7/11/2022)
We are excited to announce the release of MMRotate 1.0.0rc0.
MMRotate 1.0.0rc0 is the first version of MMRotate 1.x, a part of the OpenMMLab 2.0 projects.
Built upon the new training engine, MMRotate 1.x unifies the interfaces of dataset, models, evaluation, and visualization with faster training and testing speed.
Highlights
New engines. MMRotate 1.x is based on MMEngine, which provides a general and powerful runner that allows more flexible customizations and significantly simplifies the entrypoints of high-level interfaces.
Unified interfaces. As a part of the OpenMMLab 2.0 projects, MMRotate 1.x unifies and refactors the interfaces and internal logics of train, testing, datasets, models, evaluation, and visualization. All the OpenMMLab 2.0 projects share the same design in those interfaces and logics to allow the emergence of multi-task/modality algorithms.
New BoxType design. We support data structures RotatedBoxes and QuadriBoxes to encapsulate different kinds of bounding boxes. We are migrating to use data structures of boxes to replace the use of pure tensor boxes. This will unify the usages of different kinds of bounding boxes in MMDetection 3.x and MMRotate 1.x to simplify the implementation and reduce redundant codes.
Stronger visualization. We provide a series of useful tools which are mostly based on brand-new visualizers. As a result, it is more convenient for the users to explore the models and datasets now.
Breaking Changes
We briefly list the major breaking changes here.
We will update the migration guide to provide complete details and migration instructions.
Dependencies
mmcv
is the version that provide pre-built CUDA operators andmmcv-lite
does not since MMCV 2.0.0rc0, whilemmcv-full
has been deprecated.Training and testing
mmrotate.train.apis
andtools/train.py
. Those code have been migrated into MMEngine. Please refer to the migration guide of Runner in MMEngine for more details.Hook
toParameter Scheduler
in MMEngine. Please refer to the migration guide of Parameter Scheduler in MMEngine for more details.Configs
Dataset
The Dataset classes implemented in MMRotate 1.x all inherits from the BaseDataset in MMEngine.
Data Transforms
The data transforms in MMRotate 1.x all inherits from those in MMCV>=2.0.0rc2, which follows a new convention in OpenMMLab 2.0 projects.
The changes are listed as below:
Rotate
) are decomposed into several transforms.Model
The models in MMRotate 1.x all inherits from
BaseModel
in MMEngine, which defines a new convention of models in OpenMMLab 2.0 projects. Users can refer to the tutorial of model in MMengine for more details. Accordingly, there are several changes as the following:inputs
anddata_samples
, whereinputs
contains model inputs like a list of image tensors, anddata_samples
contains other information of the current data sample such as ground truths and model predictions. In this way, different tasks in MMRotate 1.x can share the same input arguments, which makes the models more general and suitable for multi-task learning.forward_train
andsimple_test
to deal with different model forward logics. In MMRotate 1.x and OpenMMLab 2.0, the forward function has three modes:loss
,predict
, andtensor
for training, inference, and tracing or other purposes, respectively. The forward function callsself.loss()
,self.predict()
, andself._forward()
given the modesloss
,predict
, andtensor
, respectively.Evaluation
MMRotate 1.x mainly implements corresponding metrics for each task, which are manipulated by Evaluator to complete the evaluation.
In addition, users can build evaluator in MMRotate 1.x to conduct offline evaluation, i.e., evaluate predictions that may not produced by MMRotate, prediction follows our dataset conventions. More details can be find in the Evaluation Tutorial in MMEngine.
Visualization
The functions of visualization in MMRotate 1.x are removed. Instead, in OpenMMLab 2.0 projects, we use Visualizer to visualize data. MMRotate 1.x implements
RotLocalVisualizer
to allow visualization of ground truths, model predictions, and feature maps, etc., at any place. It also supports to dump the visualization data to any external visualization backends such as Tensorboard and Wandb.Improvements
Ongoing changes
tools/
directory will have their python interfaces so that they can be used through notebook and in downstream libraries.Contributors
A total of 8 developers contributed to this release.
Thanks @DonggeunYu @k-papadakis @liuyanyi @yangxue0827 @jbwang1997 @zytx121 @RangiLyu @ZwwWayne