* 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++
* 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
* 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>
* 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
* 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>
* delete all parrots file
add bbox_overlaps new parrots op impl
* support first new impl parrts op (bbox_overlaps)(success test)
* add box_iou_rotated op, test succeed
* add carafe and carafe_naive op, test succeed (one parrots bug need fix)
* add cc_attention op, test success
* add corner_pool op, test success
* add parrots op deform_conv, test success
* add deform_roi_pool op, test success (but has question)
* add focal loss op, test success (gradcheck)
* add masked_conv2d op, test success
* add modulated_deform_conv op, test success
* add nms and nms_rotated op, test success
* add psamask op, test success
* add roi_align op, test_success
* add roi_pool op, test success
* add sync_bn op, test success
* add tin_shift op, test success
* fix test_deform_roi_pool, add parrots test
* skip test_onnx because parrots does not support onnx
* fix c++ lint
* fix python lint
* fix python lint
* start trt plugin prototype
* Add test module, modify roialign convertor
* finish roi_align trt plugin
* fix conflict of RoiAlign and MMCVRoiAlign
* fix for lint
* fix test tensorrt module
* test_tensorrt move import to test func
* add except error type
* add tensorrt to setup.cfg
* code format with yapf
* fix for clang-format
* move tensorrt_utils to mmcv/tensorrt, add comments, better test module
* fix line endings, docformatter
* isort init, remove trailing whitespace
* add except type
* fix setup.py
* put import extension inside trt setup
* change c++ guard, update pytest script, better setup, etc
* sort import with isort
* sort import with isort
* move init of plugin lib to init_plugins.py
* add scatternd, nms plugin (WIP)
* fix bugs of trt_nms
* add trt nms test module
* fix bugs of scatternd
* code optimize, add comment about nms kernel
* fix transform_if bug of trt_nms_kernel
* fix struct name
* default nms offset=0, fix bugs of batched input
* format with clang-format
* onnx preprocess
* much better nms implementation, no need to transfer memory between host and device
* update preprocess_onnx
* parse constant tensor from initializer in preprocess_onnx
* update nms
* remove unnecessary codes
* workspace aligned address
* format trt_plugin_helper.hpp
* fix index memory bugs
* set alignment to 16 by default
* fix lint
* fix nms offset
* fix bugs of preprocess onnx
* update test for nms
* tensorrt only accept int32, not int64
* update nms comments
* fix indexing for scores in nms
* update trt temp
* make trt-nms compatiable to #803
* fix lint
* add docstring to trt_nms_kernel.cuda, add description to preprocess_onnx
* add comment to score indexing
* fix bugs of max output boxes
Co-authored-by: maningsheng <maningsheng@sensetime.com>
* add scatter plugin
* fix bugs of scatternd
* add trt scatternd plugin
* format code with clang-format
* add test for scatternd
* skip test_tensorrt in CI
* remove unused variable
Co-authored-by: maningsheng <maningsheng@sensetime.com>
* start trt plugin prototype
* Add test module, modify roialign convertor
* finish roi_align trt plugin
* fix conflict of RoiAlign and MMCVRoiAlign
* fix for lint
* fix test tensorrt module
* test_tensorrt move import to test func
* add except error type
* add tensorrt to setup.cfg
* code format with yapf
* fix for clang-format
* move tensorrt_utils to mmcv/tensorrt, add comments, better test module
* fix line endings, docformatter
* isort init, remove trailing whitespace
* add except type
* fix setup.py
* put import extension inside trt setup
* change c++ guard, update pytest script, better setup, etc
* sort import with isort
* sort import with isort
* move init of plugin lib to init_plugins.py
* resolve format and add test dependency: tensorrt
* tensorrt should be installed from source not from pypi
* update naming style and input check
* resolve lint error
Co-authored-by: maningsheng <maningsheng@sensetime.com>
* [Enhance]: add onxx simplify
* add simple doc
* add unit test
* update docstring
* resolve some comment
* add test dependency:onnxoptimizer
* Fix onnxruntime register empty libpath
* test onnxruntime version
* set checker to false
* skip test_simplify for torch<1.5.0
* add onnx support to roi_align and roi_pool
* add softnms ort support
* fix for lint
* format cpp code with clang-format:google
* add new empty line to the end of head files in onnxruntime
* update to pytorch1.7
* add test of softnms to onnxruntime
* fix for lint
* remote print in ops/info.py
* change import order, fix for flake8
* fix include
* add assert torch>=1.7.0
* [doc]: add document for onnxruntime custom operator
* update onnxruntime version to v1.5.1 for softnms
* remove doc menu
* Resolve lint for markdown
* resolve naming style in onnxruntime_op.md
* Use old cpp apis, optimize test_onnx.py
* Fixing strings in tests/test_ops/test_onnx.py
* code format with yapf
* fix soft_nms parrot
* add import in onnxruntime setup, avoid conflict
* fix doc and add assert
* change cpp guard
Co-authored-by: maningsheng <maningsheng@sensetime.com>
* add unittest for onnx convert
* build onnx and onnxruntime in CI
* skip onnx op unit test while using CUDA
* fix offset==0 case in NMS
* remove tmp file used in test
* delete tmp file before assert so that we can remove the tmp file anyway
* Mv wrappers into bricks and use wrappers in registry
* resolve import issues
* fix import issues
* set nn op forward to torch 1.6.1
* fix CI bug and add warning
* Fix CI by using patch mock
* mv warnings inside deprecated module's initialization
* Support to split batched_nms when box number is too large
* mv data from gpu to cpu
* Set split_thr through nms_cfg
* clean code
* Update motivation in docstring
* fix typos
* migrate op
* migrate unittest
* update build no torch
* add back use_torch_vision for roi align
* fix type and unit test
* ignore test logging when no torch
* fix no torch ci test
* skip test registry
* remove coverage report when no torch
* fix mac ci order
* install latest pillow when no torch
* mv convws to brisk
* update actiion
* remove 1.3 cuda
* reorder
* add no torch
* fixed version
* make py3.8 on pt1.5
* make py3.8 on pt1.5
* remove torch 1.3
* disable py3.8
* pip
* merge master with cuda compile fix
* add cpu roi align
* fixed test
* fixed no torch
* add CUDA_ARGS
* use one line
* gencode=61
* seperate jobs
* update lint
* use parametrize test
* formart and rename
* unit test for all
* add ext ops, support parrots
* fix lint
* fix lint
* update op from mmdetection
* support non-pytorch env
* fix import bug
* test not import mmcv.op
* rename mmcv.op to mmcv.ops
* fix compile warning
* 1. fix syncbn warning in pytorch 1.5
2. support only cpu compile
3. add point_sample from mmdet
* fix text bug
* update docstrings
* fix line endings
* minor updates
* remove non_local from ops
* bug fix for nonlocal2d
* rename ops_ext to _ext and _ext to _flow_warp_ext
* update the doc
* try clang-format github action
* fix github action
* add ops to api.rst
* fix cpp format
* fix clang format issues
* remove .clang-format
Co-authored-by: Kai Chen <chenkaidev@gmail.com>