Commit Graph

79 Commits (b57825f3f1f38cf6033e0d6d36af644cc57465fa)

Author SHA1 Message Date
WangJiaZhen e3c63f34bc
[Fix] Fix deform conv by adding an extra argument im2col_step (#1459)
* [Fix] fix deform conv by add argument

* [Fix] replace useless func with np.repeat and add necessary comment

* [Fix] reduce batch_size and remove useless lines and modify some var name

* [Fix] change position of comments

* [Fix] add im2col_step in the docstring and add two test cases

* [Fix] fix docstring and add comments for test cases

* [Fix] fix docstring

* [Fix] add note, fix issue link and other details

* [Fix] fix docstring details

* [Fix] fix links in docstring

* [Fix] fix docstring details
2021-11-10 19:05:20 +08:00
q.yao 426e229d88
[Fix]: Update test data of test_tin_shift (#1426)
* Update test data of test_tin_shift

* Delete tmp.engine

* add pytest raises asserterror test

* raise valueerror, update test log

* add more comment

* Apply suggestions from code review

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

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2021-11-02 20:50:50 +08:00
dingchang 75cae78c55
[Feature] Add group points ops from mmdet3d (#1415)
* add op (group points) and its related ops (ball query and knn) in mmdet3d

* refactor code

* fix typo

* refactor code

* fix typo

* refactor code

* make input contiguous

Co-authored-by: zhouzaida <zhouzaida@163.com>
2021-10-23 14:01:31 +08:00
q.yao 6935a818ec
[Fix] Update test data for test_iou3d (#1427)
* Update test data for test_iou3d

* delete blank lines

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2021-10-22 21:18:19 +08:00
dingchang 2157b708fb
[Feature] Add iou3d op from mmdet3d (#1356)
* add ops (iou3d) in mmdet3d

* add unit test

* refactor code

* refactor code

* refactor code

* refactor code

* refactor code

Co-authored-by: zhouzaida <zhouzaida@163.com>
2021-10-22 10:46:55 +08:00
dingchang 4c8bfb48ef
[Feature] Add roiaware pool3d ops from mmdet3d (#1382)
* add ops (roiaware pool3d) in mmdet3d

* refactor code

* fix typo

Co-authored-by: zhouzaida <zhouzaida@163.com>
2021-10-21 20:00:04 +08:00
dingchang e3e1dba2c8
[Feature] Add voxel ops from mmdet3d (#1381)
* add ops (voxel) in mmdet3d

* add ops (voxel) in mmdet3d

* add ops (voxel) in mmdet3d

* refactor code

* update test

* update test

* update test

* refactor code

* refactor code

* refactor code

* fix typo

* fix typo
2021-10-21 11:08:11 +08:00
q.yao 91b8478c84
Reduce ms_deformable_attn test memory usage (#1407) 2021-10-15 19:49:39 +08:00
dingchang 5c25ae1a19
[Feature] Add roipoint_pool3d op from mmdet3d (#1358)
* add ops (roipoint_pool3d) in mmdet3d

* refactor code

* fix typo

* add unit test

* refactor code

* refactor code

* refactor code

* fix typo
2021-10-15 17:15:53 +08:00
dingchang e99bfce608
[Feature] Add assign_score_withk op for paconv from mmdet3d (#1357)
* add ops (assign_score_withk) in mmdet3d

* add ops (assign_score_withk) in mmdet3d

* refactor code

* fix typo

* refactor code

* fix typo

* polish docstring

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2021-10-15 13:18:31 +08:00
dingchang be5841e45d
[Feature] Add interpolate ops from mmdet3d (#1355)
* add ops (interpolate) in mmdet3d

* refactor code

* fix typo

* fix typo

* fix typo

* refactor code
2021-10-14 20:51:02 +08:00
Zaida Zhou 97e5bada4c
continue PR #1223 (#1404)
* fix MultiScaleDeformableAttention inference issue on cpu model

* fix lint

* add unintest

* remove some code

* Update tests/test_ops/test_ms_deformable_attn.py

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

* fix device

* remove device

* add more device

* refactor unittest

Co-authored-by: zhicheng huang <zhichenghzc@gmail.com>
Co-authored-by: zhangshilong <2392587229zsl@gmail.com>
Co-authored-by: Shilong Zhang <61961338+jshilong@users.noreply.github.com>
2021-10-14 20:50:38 +08:00
dingchang 1cd01db935
[Feature] Add gather points op from mmdet3d (#1338)
* add ops (gather points) in mmdet3d

* add ops (gather points) in mmdet3d

* refactor code

* refactor code

* fix typo
2021-10-14 16:58:12 +08:00
dingchang 42c9e71120
[Feature] Add knn op from mmdet3d (#1354)
* add ops (knn) in mmdet3d

* refactor code

* refactor code

* fix typo

* fix typo

* fix typo

* refactor code

* refactor code

* spell typo

* fix spell typo
2021-10-14 13:33:13 +08:00
dingchang 63a6cbe913
[Feature] Add fps op from mmdet3d (#1337)
* add ops (furthest point sample) in mmdet3d

* refactor code

* refactor code

* fix typo

* fix typo

* fix typo

* refactor code

* fix typo

* define DIVUP in common_cuda_helper.hpp
2021-10-13 20:39:31 +08:00
Eugene Liu 599163e645
Add Deformable Conv CustomOp for onnxruntime (#1343)
* add onnx dcn

* replace gemm with torch C++ api

* small update

* fix cpp clang format

* pefer generic GEMM than torch ATen library

* addressing comments

* add ops path check
2021-10-13 20:28:24 +08:00
Zaida Zhou f22c9eb4a4
Add code spell hook to pre-commit and fix typos (#1384)
* Add code-spell hook to pre-commit

* Add code-spell hook to pre-commit and fix typos

* fix setup.cfg
2021-10-04 20:13:54 +08:00
Miao Zheng 745aa7373e
[Fix] Revise unit test of correlation (#1368)
* [Fix] Revise unit test of correlation

* rename

* lint

* lint

* lint

* lint
2021-09-25 21:13:34 +08:00
Miao Zheng b92ea0b5df
[Feature] Add Correlation CUDA op (#1361) 2021-09-23 21:08:41 +08:00
dingchang f3dfc4135b
[Feature] Add ballquery op from mmdet3d (#1332) 2021-09-23 21:08:00 +08:00
Wenwei Zhang 4e101e0b75
[Feature]: Support empty tensor in MMSyncBN (#1205)
* [Feature]: support empty tensor in MMSyncBN

* refine code

* resolve comments

* clean unnecessary comments

* fix inaccurate statistics when empty tensor

* resolve comments and add docstrings

* update unit tests

* rephrase, ready for merge
2021-09-23 17:10:38 +08:00
Leojc 2a3d2d4a35
Reimplement cc_attention using pure pytorch (#1201)
* Reimplement cc_attention using pure pytorch

* fix: avoid BC-Breaking

* delete cc_attention related cpp and cuda files

* delete cc_attention related lines in pybind.cpp

* make out Tensor contiguous.

* remove unneeded lines.

* Update mmcv/ops/cc_attention.py

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

* Update TestCrissCrossAttention

* passing pre-commit

* Update docstring of CrissCrossAttention

* Update docstring of CrissCrossAttention

* Update mmcv/ops/cc_attention.py

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

* [docs]polish the docstring

* [Docs] Polish the docstring

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

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2021-09-09 21:53:45 +08:00
Eugene Liu e621e08d54
Add DCN and Modulated DCN CPU implementation (#1278)
* DCN cpu version

* add modulated dcn cpu version

* move deform_conv_shape_check to deform conv utils

* add inline to deform_conv_shape_check

* add tests

* run linter

* add newline at file end

* run pre-commit against modulated deform conv cpp

* update saconv test

* run clang-format

* remove cuda device inline

* refactor dcn cuda/cpu functions

* remove DCN util

* remove DCN util hpp from all included files

* Addressing PR comment by refactoring modulated-DCN

* fix lint in cpp files
2021-08-29 20:48:31 +08:00
Paige Wang 1790e9f265
add modulated_deform_conv in onnxruntime support (#1281)
* add modulated_deform_conv in onnxruntime support

* Add docs descriptions

* Add gpu test in test_onnx.py

* code format

* remove new usage and move if outside for loop

* use memset when bias is nullptr
2021-08-23 11:22:24 +08:00
Haodong Duan ef48a47389
[Improvement] Improve digit_version & use it for version_checking (#1185)
* improve digit_version & use it for version_checking

* more testing for digit_version

* setuptools >= 50 is needed

* fix CI

* add debuging log

* >= to ==

* fix lint

* remove

* add failure case

* replace

* fix

* consider TORCH_VERSION == 'parrots'

* add unittest

* digit_version do not deal with the case if 'parrots' in version name.
2021-07-23 21:03:33 +08:00
q.yao 5f9e6b610b
[Feature] Add ONNX export support to torch.roll (#1194)
* add torch.roll to onnx

* remove skip test

* add support to torch<170

* add dim=0 for torch==1.9.0

* update fixture function name, add comment in roll symbolic
2021-07-20 16:54:04 +08:00
qjqfl 07d681ac00
[Feature]: support tensorrt custom plugin `MMCVCornerPool` (#1179) 2021-07-09 21:07:38 +08:00
Haodong Duan 1d5ee6e09a
use LooseVersion for version checking (#1158) 2021-06-29 21:33:08 +08:00
q.yao 004c00675f
[Feature]: add modulated deformable conv TensorRT support (#1078)
* add modulated dcn, better dcn plugin

* clangformat

* update documentation
2021-06-16 21:38:07 +08:00
Shilong Zhang e05fb56031
Refactor the baseclass related to transformer (#978)
* minor changes

* change to modulist

* change to Sequential

* replace dropout with attn_drop and proj_drop in MultiheadAttention

* add operation_name for attn

* add drop path and move all ffn args to ffncfgs

* fix typo

* fix a bug when use default value of ffn_cfgs

* fix ffns

* add deprecate warning

* fix deprecate warning

* change to pop kwargs

* support register FFN of transformer

* support batch first

* fix batch first wapper

* fix forward wapper

* fix typo

* fix lint

* add unitest for transformer

* fix unitest

* fix equal

* use allclose

* fix comments

* fix comments

* change configdict to dict

* move drop to a file

* add comments for drop path

* add noqa 501

* move bnc wapper to MultiheadAttention

* move bnc wapper to MultiheadAttention

* use dep warning

* resolve comments

* add unitest:

* rename residual to identity

* revert runner

* msda residual to identity

* rename inp_identity to identity

* fix name

* fix transformer

* remove key in msda

* remove assert for key

Co-authored-by: HIT-cwh <2892770585@qq.com>
Co-authored-by: bkhuang <congee524@gmail.com>
Co-authored-by: Wenwei Zhang <40779233+ZwwWayne@users.noreply.github.com>
2021-06-11 18:09:31 +08:00
Dmitry Sidnev a88d1d28c1
[Feature] enable exporting to onnx for PointRend (#953)
* Fix export to onnx for PointRend

* Fix codestyle

* Fix codestyle

* Fix type in docstring

* Minor fix

* Fix export with custom ops

* Fix codestyle

* Add tests for bilinear_grid_sample function

* Remove redundant operation and rename variables

* Fix bug in bilinear_grid_sample and update test

* Fix getting batch size

* skip torch==1.3.1

* remove unused import

* fix lint

* support export with batch

* fix dynamic clip

* skip test for torch<1.5.0

* Add docstrings and comments

* Minor fix

* Recover clipping code

* Fix clamping in pytorch 1.7.0

* Fix bilinear_grid_sampler

* Minor fix

Co-authored-by: maningsheng <maningsheng@sensetime.com>
2021-06-11 13:49:19 +08:00
SemyonBevzuk bf2c9fa8d2
[Feature] NMS update (#957)
* Add score_threshold and max_num to NMS

* Fix codestyle

* Fix codestyle

* Fix inds in nms

* Update nms docstring

* Move score_threshold and max_num arguments

* Fix args order in docstring

* fix lint of c++ file

* Remove torch.onnx.is_in_onnx_export() and add max_num to batched_nms for separate classes.

* Rewrote max_num handling in NMSop.symbolic

* Added processing max_output_boxes_per_class when exporting to TensorRT

* Added score_threshold and max_num for NMS in test_onnx.py and test_tensorrt.py

* Remove _is_value(max_num)

* fix ci errors with torch==1.3.1

* Update test_batched_nms in test_nms.py

* Added tests for preprocess_onnx

* Moved 'test_tensorrt_preprocess.py' and 'preprocess', updated 'remove_tmp_file'.

* Update mmcv/tensorrt/__init__.py

* Fix segfault torch==1.3.1 (remove onnx.checker.check_model)

* Returned 'onnx.checker.check_model' with torch version check

* Changed torch version from 1.3.1 to 1.4.0

* update version check

* remove check for onnx

Co-authored-by: maningsheng <maningsheng@sensetime.com>
2021-05-31 23:42:26 +08:00
RunningLeon 4d42365ac2
[Feature]: add TensorRT InstanceNormalization plugin (#1034)
* add instancenorm plugin

* resolve comments

* fix lint

* fix typo
2021-05-25 20:03:57 +08:00
v-qjqs 6c7d6c32ee
Supports cuda version BorderAlign module (#1021)
* support cuda version `BorderAlign` module

* fix symbolic

* merge

* fix cpp lint error

* add unit test

* add comments for code references

* reformat doc

* fix lint error

* fix conflict
2021-05-25 15:23:11 +08:00
pc 732ff5093e
Add ms_deformable_attn in parrots (#1042) 2021-05-25 13:13:05 +08:00
q.yao 9d1436fb6c
[Feature] add cummax/cummin tensorrt plugin (#1031)
* add cummax/cummin tensorrt plugin

* fix isort

* fix with clang-format

* fix with clang-format again

* add document
2021-05-24 13:55:21 +08:00
Guangchen Lin 4bd3b5027a
[Fix] Support amp (pytorch >= 1.6.0) on DCN and DCNv2/ Add unit tests on DCN/DCNv2 amp (#1029)
* fix fp16 bug on DCNv2

* support fp16 on DCN/DCNv2 when pytorch >= '1.6.0'

* add comment

* Modified the comments

* Unified the usages of '.to()' and '.type_as()'
2021-05-23 17:42:59 +08:00
Shilong Zhang 9b8dd0835d
[fix]: fix softnms (#1019)
* fix basemodule

* fix typo

* fix unitest
2021-05-13 14:04:54 +08:00
jeffreykuang 2623fbf21c
Add pixel group and contour expand ops (#993)
* add pixel group ops

* reformatting

* formatting&rm auto

* Add citation

* Add contour expand

* c++ linting

* Add unit tests with Tensor

* rm model.pth

* rename

* c++ linting

* c++ linting

* Rename variables
2021-05-12 10:41:22 +08:00
v-qjqs 934b549e23
Support custom operators cummax and cummin for onnxruntime (#1010)
* support custom op `mmcv::cummax` for onnxruntime in mmcv

* fix clang-format lint error

* support mmcv::cummin, reformat codes

* fix merge from master

* add docs for mmcv::cummax and mmcv::cummin

* format doc

* add assertion for torch version, when exporting `cummax` to onnx

* add more comments for torch version

* handle exporting to onnx in `soft_nms`

* commit for test_onnx

* remove `is_in_onnx_export` in softnms

* add more comments

* fix c++ lint error

* add known issues doc for `cummax`

* fix known issues doc
2021-05-10 21:33:27 +08:00
v-qjqs db6b0542c7
[Feature]: Support corner_pool related custom operators for onnxruntime in mmcv (#997)
* supports for onnxruntime custom op `mmcv::MMCVTopPool`

* supports for onnxruntime custom op `mmcv::MMCVCornerPool`, involving TopPool, BottomPool, LeftPool and RightPool

* add unittest for corner_pool

* supports mmcv::CornerPool without memcpy

* add docs for mmcv::CornerPool

* re-add docs for mmcv::CornerPool

* fix output dtype doc

* reformat

* format with pre-commit

* format

* fix lint error, by using google clang-format style for c/c++
2021-05-01 16:28:25 +08:00
Wang Xiaolin 0fc19b4692
[Feature]: parrots add parrots/fused_bias & upfirdn2d (#989) 2021-04-27 13:49:50 +08:00
ZhangShilong 54a7ebb4ec
[Feature]: support Multi-Scale-DeformAttention in deformable-detr (#878)
* add c++ ms_deform_atten

* fix cpp lint

* fix cpp lint

* clang format

* remove cmakefile

* google style

* clang-format precommit

* use clang-format-lint-action

* add transformer base class

* add merge

* add docstr

* add pyargs

* fix according to commments

* resiger module

* change to use basemodule

* add _ between build function

* split the name

* fix according to comments

* fix lint and fix unitest

* fix cpp lint

* fix bug of deformdetr_atten

* fix drop out

* fix residual

* use CUDA_1D_KERNEL_LOOP
2021-04-23 16:35:15 +08:00
Wang Xinjiang ee041cec6a
[Feature]: Add Rotated ROI align op for pytorch (cpu&cuda), parrots (cpu&cuda) and onnxruntime (cpu) (#933)
* add roi_align_rotated

* code format

* Add align key to roi align rotated

* Add clockwise for rotated roi align

* fix bugs in onnx export

* Add docstring for RoIAlignRotated

* remove cuda unittest

* Reformat c++ code

* add onnx roi align rotated file

* fix unittest

* Add  cpu and float64 of cuda support for parrots

* code format

* Add unified header to roi align rotated

Co-authored-by: luopeichao <luopeichao@sensetime.com>
2021-04-19 15:04:01 +08:00
Miao Zheng 79f8cbd661
[Bug] Fix DeformConv2d bias error and add tests (#940)
* [Bug] Fix DeformConv2d bias error and add tests

* fix repr

* revise tests

* lint
2021-04-12 20:31:34 +08:00
QingChuanWS b5e1facc85
[Refactor]: Remove deprecated onnx-simplify source code (#927)
* remove custom simplify model

* update docs about onnx-simplify
2021-04-09 16:17:11 +08:00
tangyanf 83cf25b284
[feature]:add onnxruntime custom op grid_sample (#916)
* add onnxruntime custom op grid_sample

* update code

* update code

* update code

* update code

* update code

* update code

* update code

* update code

* update code

* update code

* update code

* update code

* update code

* update code
2021-04-06 18:31:24 +08:00
q.yao 9d80f56ae8
[Feature] : Add grid_sampler TensorRT Plugin (#865)
* add grid sample trt support

* fix align_corners=True

* change 'intep' to 'interp', fix bugs of grid sampler, better test script

* remove unused import

* move source comment to the top of trt_grid_sampler_kernel.cu
2021-03-31 00:28:08 +08:00
Rui Xu 933b052d95
[Feature] Add cuda ops: UpFirDn2d and fused_bias_leakyrelu (#900)
* add upfirdn2d op

* fix bug in pybind

* add fused bias leakyrelu

* fix bug in fused-bias-leakyrelu

* fix lint error

* fix bug in build cpu version

* fix bug in build cpu version

* fix lint

* fix comment from zww

Co-authored-by: zhangshilong <zhangshilong@sensetime.com>
2021-03-21 21:23:09 +08:00
q.yao 9ba1f76005
[Feature] : Add Deformable Conv2d TensorRT Plugin (#858)
* add dcn tensorrt plugin

* prepare for fp16 support

* fix for lint

* limit column buffer

* add docstring to memcpyPermute
2021-03-11 15:41:47 +08:00