435 Commits

Author SHA1 Message Date
q.yao
6254ebef8d
[Fix] Create Tensor with new_* method to support amp (#2389) 2022-11-08 15:54:34 +08:00
Zhang
b622fb2e29
[Feature] Support RoIAwarePool3d with cambricon MLU backend (#2359)
* [Feature] Support RoiawarePool3d with cambricon MLU backend.

* [Feature] Support RoiawarePool3d with cambricon MLU backend.
2022-11-03 11:13:34 +08:00
VVsssssk
93fe4829f7 [Features] Add stack ball query and stack group points ops (#2292)
* add stack sa model ops

* fix lint

* fix lint

* fix comments

* fix bug

* fix lint

* fix comments

* fix lint

* fix lint

* fix
2022-10-28 16:53:33 +08:00
Yue Zhou
a4f304a5f5 [Feature] Add box_iou_quadri & nms_quadri (#2277)
* update

* update

* fix link

* fix bug

* update nms_quadri

* fix lint

* Update test_nms_quadri.py

* Update box_iou_quadri.py

* fix bug

* Update test_nms_quadri.py

* Update box_iou_rotated_utils.hpp

* Update box_iou_quadri.py

* Update mmcv/ops/nms.py
2022-10-28 16:53:33 +08:00
takuoko
9709ff3f8c
[Enhancement] Add a new argument define_metric in wandb hook (#2237)
* wandb define_metric

* add test and some fix based on mmengine PR

* fix test

* add summary warnings

* Update mmcv/runner/hooks/logger/wandb.py

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

* Update mmcv/runner/hooks/logger/wandb.py

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2022-10-24 23:13:07 +08:00
cathyzhang222
7fd7058a9c
[Feature] Support Iou3d with cambricon MLU backend (#2339)
* [Feature] Support Iou3d with cambricon MLU backend

* [Feature] add double line

* [Feature] add line
2022-10-24 15:58:58 +08:00
q.yao
6cf9ac0507
[Fix] Fix three nn op can not accept half tensor (#2348)
* Fix three nn half inpt

* update test
2022-10-24 11:15:21 +08:00
Ivan Shcheklein
e417035f5d
[Enhancement] Add ability to pass logger instance to frameworks (#2317)
* Add ability to pass logger instance to frameworks

* refine docstring

* Update mmcv/runner/hooks/logger/dvclive.py

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2022-10-12 12:09:53 +08:00
CokeDong
dd5b415d2a
[Feature] Support PrRoI op for Parrots (#2280)
* Support parrots extension for op PrRoI

* Fix lint

* Fix cpp lint

* Fix testcase failure by false requires_grad in self-defined autograd Funtion

* Fix issues

* Fix flake8

* Fix isort

* Adaption for typechecking for PrRoIPoolFunction

* Fix lint

* Support only float32

* bugfix
2022-10-11 15:21:00 +08:00
q.yao
c001e2fcba
[Refactor] Refactor the nms3d op to support MLU (#2296)
* update iou3d

* fix parrot

* update to device

* replace count_nonzero with fill

* update build.yml
2022-10-11 10:24:46 +08:00
Zaida Zhou
b6a7fd98e4
Upgrade pre commit hooks (#2321)
* Upgrade the versions of pre-commit hooks

* update the versions of zh-cn.yaml
2022-10-08 11:48:44 +08:00
wangjiangben-hw
a5db5f6682
[Feature] Support training on NPU device (#2262)
* init npu

* add npu extension and focal loss adapter

* clean code

* clean code

* clean code

* clean code

* fix autocast bugs on npu (#2273)

fix autocast bugs on npu (#2273)

* code format

* code format

* code format

* bug fix

* pytorch_npu_helper.hpp clean code

* Npu dev (#2306)

* fix autocast bugs on npu
* using scatter_kwargs in mmcv.device.scatter_gather

* raise ImportError when compile with npu

* add npu test case (#2307)

* add npu test case

* Update focal_loss.py

* add comment

* clean lint

* update dtype assert

* update DDP forward and comment

* fix bug

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

Co-authored-by: ckirchhoff <515629648@qq.com>
Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2022-09-30 21:05:37 +08:00
takuoko
afff388692
[Enhancement] Support SiLU with torch < 1.7.0 (#2278)
* support silu torch<1.7.0

* fix test

* fix test

* fix inplace

* fix inplace

* Update tests/test_cnn/test_silu.py

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2022-09-29 15:19:41 +08:00
takuoko
55c51e1734
[Feature] Register a new activatation layer SiLU to ACTIVATION_LAYERS (#2256) 2022-09-13 22:38:23 +08:00
ZShaopeng
83bedf5a2b
[Feature] Support RoipointPool3d with cambricon MLU backend (#2247)
* [Feature] Support RoipointPool3d with cambricon MLU backend

* [Feature] Support RoipointPool3d with cambricon MLU backend

* [Feature] Support RoipointPool3d with cambricon MLU backend

* [Feature] Support RoipointPool3d with cambricon MLU backend

* [Feature] Support RoipointPool3d with cambricon MLU backend
2022-09-08 17:19:12 +08:00
bdf
e843d73fc7
[Feature] Support DeformRoiPool with cambricon MLU backend (#2137)
* [Feature] Support DeformRoiPool with cambricon MLU backend

* [Fix] Remove use of std library

* [Fix] Correct the error information

* [Refactor] Refactor test deform_roi_pool code

* [Fix] Fix judgment error

* [Fix] Modify the large tensor check

Co-authored-by: budefei <budefei@cambricon.com>
2022-08-28 22:37:28 +08:00
liuduanhui
a08517790d
[Feature] Support ThreeNN with cambricon MLU backend (#2215) 2022-08-23 15:18:47 +08:00
bdf
e663670a74
[Feature] Support MaskedConv2d with cambricon MLU backend (#2202)
* [Feature] Support MaskedConv2d with cambricon MLU backend

* [Refactor] Refactor test masked_conv2d code

Co-authored-by: budefei <budefei@cambricon.com>
2022-08-21 23:21:54 +08:00
bdf
832b845257
[Feature] Add carafe op for MLU (#2212)
* [Feature] Support CARAFE with Cambricon MLU backend

* [Docs] Add comments for common funtions

* [Test] Add allclose test for carafe

* Remove print

Co-authored-by: zcyKTH <zcy19950525@gmail.com>
Co-authored-by: budefei <budefei@cambricon.com>
2022-08-19 10:36:26 +08:00
Jingwei Zhang
b9bdfeb6f6
[Enhance] Support different border modes in imrotate (#2141)
* support different border_mode in imrotate

* fix docstring

* small fix

* reorder the border_mode arg in imrotate

* fix lint

* polish docstring

* polish docstring
2022-08-17 10:53:05 +08:00
Yosuke Shinya
304f184c46
[Fix] Fix gradient cumulative optimizer when resuming (#2093)
* Fix gradient cumulative optimizer when resuming

* add unit test
2022-08-15 10:50:43 +08:00
Yixiao Fang
b2ac245602 [Refactor] Add pillow backend for ColorJitter related functions (#2127)
* add 'backend' for ColorJitter related functions

* add unittest

* fix unittest

* add bgr transpose and revise ut

* update unittest

* revise docstring
2022-08-03 16:21:41 +08:00
xcnick
4558bfbd5b
[Fix] Fix onnx unit tests (#2155) 2022-07-29 19:23:29 +08:00
Peter Ye
78f01001d5
[Feature] Support setting start epoch and interval epoch for PAVI Logger Hook (#2103)
* [Feature] Support setting start epoch and interval epoch for PAVI Logger Hook

* [Feature] Update the coding style as the maintainer wish

* fix: default integer division or modulo by zero

* fix: runner.epoch is less than start and use self.get_epoch instead of runner.epoch

* feat: support for iter-based runner and fix the step bug

* feat: iter based hook

* feat: fix bug and coding style

* fix: coding style

* fix: coding style

* fix: graph may add in evaluation
2022-07-29 11:40:20 +08:00
Jingwei Zhang
35affc35bf
[Feature] Support PrRoIPool operation (#2113)
* support prroipooling

* fix build bug

* fix bug of precision

* fix lint

* add ut

* add license and citation

* polish op and add type hint

* refactor ut

* add docstring for prroipool

* polish code

* format cu and cuh code

* fix format

* fix format

* fix typo

Co-authored-by: zhouzaida <zhouzaida@163.com>
Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2022-07-23 23:08:32 +08:00
q.yao
22fadceecd
[Feature] Add MPS bbox overlap (#2123)
* add mps bbox overlap

* format

* update document and manifest

* update readme
2022-07-22 19:30:01 +08:00
Zaida Zhou
6a03918f55
[Feature] Add support for mps (#2092)
* [Feature] Add support for MPS

* fix import error

* update ut

* fix error

* trigger CI

* use a unique basename for test file modules

* avoid bc-breaking
2022-07-07 16:05:49 +08:00
Mashiro
14c3e175fa
[Fix] num_channels can not be divisible by num_groups in test_build_norm_layer (#2085) 2022-06-30 19:28:34 +08:00
Mashiro
c03bba0008
Add missing json file for testing torchvision0.13 (#2084) 2022-06-30 19:12:11 +08:00
zhouchenyang
2708fac6c5
[Feature] Support RoiPool with Cambricon MLU backend (#2073)
* [Feature] Support RoiPool with cambricon MLU backend

* [Docs] Update ops.md
2022-06-29 11:24:00 +08:00
Philipp Allgeuer
f5425ab761
Add torch_meshgrid wrapper due to PyTorch change (#2044)
* Add torch_meshgrid_ij wrapper due to PyTorch change

* Update torch_meshgrid name/doc/version implementation

* Make imports local

* add ut

* ignore ut when torch is not available

Co-authored-by: zhouzaida <zhouzaida@163.com>
2022-06-15 20:36:48 +08:00
Yanyi Liu
9807c2d268
[Fix] Fix batched_nms for rotated box and add type hints for nms.py (#2006)
* Fix batched_nms for rotated box.
Add type hint for nms.py

* Add test

* doc string

* revert symbolic hint

* fix max_coordinate

* add comment

* rename type

* fix typo docstring
2022-06-10 19:49:07 +08:00
Danila Rukhovich
15495ea0a7
[Fix] make iou3d.boxes_iou3d actually calculate 3D IoU (#2018)
* fix iou3d

* rename variables in test

* fix comments
2022-06-09 21:08:32 +08:00
Yue Zhou
834d5978df
[Feature] Add ChamferDistance op in gpu (#1933)
* update

* fix lint

* fix lint

* Update mmcv/ops/chamfer_distance.py

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

* Update chamfer_distance.py

* Update test_chamfer_distance.py

* fix

* Update chamfer_distance_cuda_kernel.cuh

* Update chamfer_distance_cuda_kernel.cuh

* fix

* Update mmcv/ops/chamfer_distance.py

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

* Update chamfer_distance.py

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2022-06-08 18:12:57 +08:00
zhouchenyang
5601427bbc
[Feature] Support PSAMask with cambricon MLU backend (#2024)
* [Feature] Support Psamask with cambricon MLU backend

* [Fix] refine the format according to lint check

* Replace std:max/min with conditional operators

* [Fix] Format head files
2022-06-08 16:13:13 +08:00
zhouchenyang
fb5062ca00
[Feature] Support RoiAlignRotated with cambricon MLU backend (#2033)
* [Feature] Support RoiAlignRotated with cambricon MLU backend

* [Fix] Remove std lib in mlu files

* [Fix] replace std::min/max with conditional operators
2022-06-08 14:13:28 +08:00
Zaida Zhou
d0dc7577b8
Transfer test data to aliyun (#2004) 2022-05-27 14:54:08 +08:00
Zaida Zhou
05bdd1624f
Fix lint (#1984) 2022-05-25 20:45:31 +08:00
Wencheng Wu
cb781ae4ba
[Fix] Fix the problem that the instance cannot reuse when overwriting the file client. (#1747)
* [Fix] Fix the problem that the instance cannot reuse when overwriting the file client.

* Remove _overridden_backends and _overridden_prefixes, and pop the old instance when overwriting the file client.

* add unittest

* fix prefix error

* modify clear_backend to overridden_backend

* Delete redundant comments.
2022-05-25 19:34:15 +08:00
whcao
c90f2be0be
[Fix] Fix is_module_wrapper (#1900)
* fix is_module_wrapper

* test is_module_wrapper

* fix code style
2022-05-25 17:32:41 +08:00
Danila Rukhovich
e9f48a4f8e
[Enhance] Replace BEV IoU with 3D IoU (#1902)
* add iou3d

* revert deprecated python function

* fix lint

* replace 3d iou/nms calls for bev iou/nms
2022-05-25 17:05:50 +08:00
del-zhenwu
7e6f462495
[Fix] Skip CPU test in test_rotated_feature_align.py for parrots (#1968)
* skip test_rotated_feature_align.py for parrots

Signed-off-by: del-zhenwu <dele.zhenwu@gmail.com>

* fix lint

Co-authored-by: zhouzaida <zhouzaida@163.com>
2022-05-20 17:04:58 +08:00
JarvisKevin
60eadb0665
[Enhancement] Lower the restrictions of _resize method in BaseMergeCell (#1959)
* Fix the bug met in using nasfpn

Fix the bug met in using nasfpn which is mentioned at https://github.com/open-mmlab/mmdetection/issues/5987.
Avoid the strong restrictions of _resize function in BaseMergeCell:
1. When Downsampling the feature map, the feature map's shape must be divisible by the target size. We pad zero around feature map before max_pool2d opt to make it always divisible. (line 102 ~ 107)
2. Considering the different downsampling scale of H and W, shape[-2] and shape[-1] are involed in the definition of kernel_size. (line 110)

* Update merge_cells.py

check flake8 & isort

* Update merge_cells.py

* Update merge_cells.py

yapf

* Update mmcv/ops/merge_cells.py

X_pad rename to padding_x

Co-authored-by: Mashiro <57566630+HAOCHENYE@users.noreply.github.com>

* Update merge_cells.py

format the code style after renameing the X_pad to padding_x

* Update test_merge_cells.py

Mainly test the downsampling resize in BaseMergeCell. The smaller target size is set to (14, 7), the classical feature map's size in the last few stages of the backbone, which will product different downsampling scales in different dims.

* Update test_merge_cells.py

add "# Copyright (c) OpenMMLab. All rights reserved."

* Update merge_cells.py

format the variable name

* Update test_merge_cells.py

Testing divisible and indivisible situations simultaneously

* Update mmcv/ops/merge_cells.py

fix the bug when h is indivisible and w is divisible, the pad_w will be padded unreasonable.

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

* Update mmcv/ops/merge_cells.py

fix the bug when w is indivisible and h is divisible, the pad_h will be padded unreasonable.

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

* fix undefined error

* Update merge_cells.py

make pad_h, pad_w more readable

* Update test_merge_cells.py

use @pytest.mark.parametrize instead of 'for' methor

* Update merge_cells.py

* Update test_merge_cells.py

isort

* Update merge_cells.py

isort

Co-authored-by: Mashiro <57566630+HAOCHENYE@users.noreply.github.com>
Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2022-05-20 15:13:13 +08:00
Zaida Zhou
45fa3e44a2
Add pyupgrade pre-commit hook (#1937)
* add pyupgrade

* add options for pyupgrade

* minor refinement
2022-05-18 11:47:14 +08:00
Jiazhen Wang
105fe55002
[Feature] Add adjust_hue (#1628)
* [Impl] impl adjust hue

* Update docstring

* Fix docstring

* add copyright

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2022-05-10 17:06:45 +08:00
jmercat
1dbb5d360d
[Fix] Fix dump method of Config (#1837)
* config dump fix
dump should not depend on how config was loaded only where it is dumped
changed checks for type to the given filename instead of the source filename

* defined test_fromdict and fixed dump function
it might be more convoluted than it needs to be but the formatting depends on the extension of the argument or the extension of the self.filename

* config dump defaults to returning pretty_text, test_fromdict renamed to test_dump_from_dict

* some reformatting in docstrings

* refine unittest

* fix unit test as comment

* Refine docstring

* minor refinement

* import mmcv

* fix lint

Co-authored-by: HAOCHENYE <21724054@zju.edu.cn>
Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2022-05-10 15:41:51 +08:00
pc
e70a318ae9
[Fix] Fix parrots unit tests (#1913) 2022-05-09 16:59:32 +08:00
Wencheng Wu
a3a078eefb
[Enhancement] Support registering function (#1858)
* [Enhance] Support register function.

* fix unittest error

* add docs and unittest of register function

* modify the docs

* fix version to 1.5.1

* Update docs/zh_cn/understand_mmcv/registry.md

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

* Update docs/en/understand_mmcv/registry.md

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

* refine the docs

* modify module_class to module

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2022-05-02 18:31:41 +08:00
WilliamKyle
b30755eef2
[Feature] Add rotated_feature_align cpu & onnxruntime implementation (#1878)
* add rotated_feature_align cpu implementation

* add rotated_feature_align onnxruntime implementation

* Update code for advices from grimoire

Remove useless comment from mmcv/ops/csrc/pytorch/cpu/rotated_feature_align.cpp

Replace ambiguous function name atomicAdd in mmcv/ops/csrc/pytorch/cpu/rotated_feature_align.cpp

Simplify unit test with parameter in tests/test_ops/test_rotated_feature_align.py

Use fma in interpolate in mmcv/ops/csrc/onnxruntime/cpu/rotated_feature_align.cpp mmcv/ops/csrc/pytorch/cpu/rotated_feature_align.cpp

* Inline the function to reduce the overhead of the function call

Use fma in interpolate
2022-04-29 10:02:33 +08:00
Jiazhen Wang
c324b1fcfc
[Fix] Ensure the type of filename parameter in Config is str (#1725)
* ensure type of filename is str

* check filename for func: fromfile

* add ut for fromfile
2022-04-27 19:50:04 +08:00