Commit Graph

524 Commits (308e28fcb06cd0f648f51545fef96e9a530e67e9)
 

Author SHA1 Message Date
lzhangzz 5e51739485
[Feature] Support DBNet, PANet and PSENet for SDK, with GPU aided post-processing (#526)
* add SDK support for PANet

* fix panet

* fix panet

* simplify panet

* add PSENet support

* fix-psenet

* add CUDA post-processing for DBNet

* fix dbnet

* fix dbnet

* add cpu support for PANet

* fix panet

* add CUDA support for PANet

* fix panet

* format

* add cpu impls for PSENet

* fix psenet

* add cuda impl for PSENet

* fix psenet

* add param parsing

* simplify impls

* simplify impls

* clean-up

* fix lint

* fix cuda-10 build

* fix cuda-10 build
2022-05-31 21:24:09 +08:00
Chen Xin 7ba543be95
fix C# API build option (#535)
* fix C# API build option

* move option up

Co-authored-by: ChenXin <chenxin2@sensetime.com>
2022-05-31 15:51:19 +08:00
q.yao b32fc41bed
[Refactor][API2.0] Api refactor2.0 (#529)
* [refactor][API2.0]  Add onnx export and jit trace (#419)

* first commit

* add async call

* add new api onnx export and jit trace

* add decorator

* fix ci

* fix torchscript ci

* fix loader

* better pipemanager

* remove comment, better import

* add kwargs

* remove comment

* better pipeline manager

* remove print

* [Refactor][API2.0] Api partition calibration (#433)

* first commit

* add async call

* add new api onnx export and jit trace

* add decorator

* fix ci

* fix torchscript ci

* fix loader

* better pipemanager

* remove comment, better import

* add partition

* move calibration

* Better create_calib_table

* better deploy

* add kwargs

* remove comment

* better pipeline manager

* rename api, remove reduant variable, and misc

* [Refactor][API2.0] Api ncnn openvino (#435)

* first commit

* add async call

* add new api onnx export and jit trace

* add decorator

* fix ci

* fix torchscript ci

* fix loader

* better pipemanager

* remove comment, better import

* add ncnn api

* finish ncnn api

* add openvino support

* add kwargs

* remove comment

* better pipeline manager

* merge fix

* merge util and onnx2ncnn

* fix docstring

* [Refactor][API2.0] API for TensorRT (#519)

* first commit

* add async call

* add new api onnx export and jit trace

* add decorator

* fix ci

* fix torchscript ci

* fix loader

* better pipemanager

* remove comment, better import

* add partition

* move calibration

* Better create_calib_table

* better deploy

* add kwargs

* remove comment

* Add tensorrt API

* better pipeline manager

* add tensorrt new api

* remove print

* rename api, remove reduant variable, and misc

* add docstring

* [Refactor][API2.0] Api ppl other (#528)

* first commit

* add async call

* add new api onnx export and jit trace

* add decorator

* fix ci

* fix torchscript ci

* fix loader

* better pipemanager

* remove comment, better import

* add kwargs

* Add new APIS for pplnn sdk and misc

* remove comment

* better pipeline manager

* merge fix

* update tools/onnx2pplnn.py

* rename function
2022-05-31 09:18:18 +08:00
Yifan Zhou 6fa1787a04
Tutorial 05: ONNX Model Editing (#517)
* tutorial 05

* Upload image

* resolve comments

* resolve comment
2022-05-28 15:19:14 +08:00
HinGwenWoong aabab46d8a
[Enhancement] Improve MMDeploy Regression test (#425)
* make regression test as a module under project

* using `--codebase` instead of  `--deploy-yml`

* Improve doc for `--codebase`

* Add shorter arg  `-p` for `--performance`

* make `checopoint-dir` as an arg for the script

* Gen error log when convert fail.

* Improve res code for testing

* Doc add sdk test detail

* Doc add env setup

* Fix lint

* Fix doc lint

* Improve model path in report

* Improve report title

* Improve report checkpoint path

* Fix lint

* move test yaml under `tests/regression`

* Improve the test yaml path

* Fix lint

* Improve doc

* make func `update_report` code better

* move doc to new location

* Fix arg

* Update arg details

* Use cpu when openvino and onnxruntime cpu package

* Fix word

* Fix func of openpyxl 3.0.9

* Add some info

* Fix lint

* Fix filename

* Fix doc link

* Fix dir name with space when is not sdk

* Add args `--models` for test specific model(s)

* not saving report when no model in codebase when using `--models`

* Fix doc

* Fix lint

* Add table for metric in doc

* Improve table for doc

* Using `None` install of `['all']`

* Improce doc

* set device type properly

* Increate popen bufsize

* Add `precision_type` in `work-dir`

* Fix popen stuck

* Fix lint

* Fix lint

* Fix popen stuck by using file handler

* Make metric dataset as a list

* Update mmseg.yml

* Remove 'FPS' in the report

* Update do_regression_test.md

* Improve log

* Fix codespell

* Fix doc

* ncnn only save `xxx.param` as checkpoint name in the report

Co-authored-by: maningsheng <mnsheng@yeah.net>
2022-05-27 17:08:32 +08:00
Chen Xin 9e6a3c8ec5
add csharp support (#388)
* add csharp support, init commit

* export MMDeploySharpExtern.dll when build sdk

* refactor code

* multi frameworks

* move csharp demo to demo folder

* try to fix lint

* try to fix lint

* update csharp demo Readme

* rename MMDeploySharp -> MMDeploy

* add comment why build MMDeployExtern.dll

* squeeze MMDeploy project

* remove Mm

* print error code

* update c# api build README.md

* fix exception

* fix exception

* update demo

* update README.md

* fix typo

* fix ci

* fix ci

* fix formatresult

* add options whether build MMDeployExtern.dll

* update CMakeListst.txt

* change MMDEPLOY_BUILD_CSHARP_EXTERN -> MMDEPLOY_BUILD_SDK_CSHARP_API

* c# api -> C# API

Co-authored-by: chenxin2 <chenxin2@sensetime.com>
2022-05-27 16:02:29 +08:00
AllentDan 571b240500
[Docs] adding new backends when using MMDeploy as a third package (#482)
* update doc

* refine expression

* cn doc
2022-05-27 14:23:28 +08:00
q.yao b7bdd2172b
[Enhancement] Add TensorRT fp16 support for MDCN (#503)
* Add TensorRT support for MDCN

* add define check
2022-05-27 13:02:27 +08:00
RunningLeon 32482e76fd
compat mmpose v0.26 (#518) 2022-05-27 10:58:26 +08:00
tpoisonooo ea0a9e5d43
feat(tools/deploy.py): support ncnn quantization (#476)
* feat(tools): add onnx2ncnn_quant_table

* feat(tools): add quantization image dataset

* feat(tools): add image dataset

* feat(tools/deploy.py): support quant

* fix(CI): lint

* fix(CI): format

* docs(zh_cn): add quantization usage

* docs(zh_cn): add benchmark

* feat(tools): add onnx2ncnn_quant_table

* docs(zh_cn): add more test result

* CI(github): add quant script

* CI(.github/scripts): add test quant

* fix(CI): remove pushd and popd

* feat(CI): debug

* fix(CI): path error

* fix(CI): fix path

* fix(CI): install wget

* fix(CI): review advices

* improvement(mmdeploy): review advice

* fix(tools): rename to onnx2ncnn_quant_table.py

* improvement(tools): rename file

* improvement(test): remove useless

* fix(tools/quant_image_dataset): remove loadFile in test.pipeline

* docs(quantization.md): update description

* fix(CI): protobuf version

* fix(CI): pip install

* docs(quantization): review advice

* fix(CI): revert mmcv version

* fix(CI): udpate pb version

* fix(CI): update
2022-05-26 19:53:56 +08:00
RunningLeon 0878b8ff7d
Fix mask test with mismatched device (#511)
* align mask output to cpu device

* align ncnn ssd output to torch.Tensor type

* --amend
2022-05-26 13:02:09 +08:00
Johannes L 651eec239b
MMdeploy build & install script + prerequisites (#399)
* Initial commit of build script

* Fixed lint

* * Set prefix depending on install arch
* Auto detect installed version of cmake, gcc. Update if necessary
* Prompt to reinstall venv if exists
* Disable .tar packing
* Enable MMDEPLOY SDK Python
* Misc cleanup

* Fixed lint

* Renamed script

* * Set env variables without restarting script.
* OpenCV install optional.
* Fix numpy OPENBLAS_CORETYPE on numpy >1.19.4.
* Remove specific build files.
* Fix prebuild output .tar.gz.
* Comments added. exec bash when closing script

* * Use root dir as MMDeploy dir.
* Use pip3.
* Remove explicit MMDeploy checkout version.
* Use MMDEPLOY_DIR for examples path

* Make PyTorch, torchvision, mmcv install optional

* * Do not deactivate python venv.
* Make prebuild archive optional.
* Add venv* to gitignore

* * Add support for unattended, interactive install. * Cleanup  misc. comments.

* Check input arguments before continuing.

* Added additional log messages, comments added

* Added default option when pressing [ENTER]

* * Rearranged cmake, gcc build/install order.
* Mention default option when reinstalling venv
* sudo make install instead of cmake --install

* Moved script to tools/scripts

* Fixed relative path when generating WORKING_DIR
2022-05-25 17:13:24 +08:00
Yue Zhou 89204d16ce
[Feature] Support two stage rotated detector in MMRotate (#473)
* upload

* add fake_multiclass_nms_rotated

* delete unused code

* align with pytorch

* Update delta_midpointoffset_rbbox_coder.py

* rewrite atan2

* Update bbox_nms.py
2022-05-25 13:41:16 +08:00
RunningLeon 4f49763c28
fix mmseg twice resize (#480)
* fix mmseg twich resize

* remove comment
2022-05-25 09:52:42 +08:00
Yifan Zhou d16720b127
Tutorial 04: onnx custom op (#508)
* Add tutorial04

* lint

* add image

* resolve comment
2022-05-24 11:33:01 +08:00
q.yao e3a8baac4c
[Enhancement] Support RotatedRetinaNet TensorRT (#422)
* add rotated nms trt plugin

* fix ops output shape

* rebase

* fix lint

* add fp16, benchmark

* format docs

* remove unused definition, add ut

* add docs

* update docs

* add doc
2022-05-24 10:34:22 +08:00
q.yao 4710ab910d
[Refactor][tools] Add prebuild tools. (#347)
* move to lib

* optional import pytorch rewriter

* reduce torch dependancy of tensorrt export

* remove more mmcv support

* fix pytest

* remove mmcv logge

* Add `mmdeploy.utils.logging`

* Improve the common of the `get_logger`

* Fix lint

* onnxruntim add try catch to  import wrapper if pytorch is available

* Using `mmcv.utils.logging` in all files under `mmdeploy/codebase`

* add __init__

* add prebuild tools

* support windows

* for comment

* exit if failed

* add exist

* decouple

* add tags

* remove .mmdeploy_python

* read python version from system

* update windows config

* update linux config

* remote many

* better build name

* rename python tag

* fix pyhon-tag

* update window config

* add env search

* update tag

* fix build without CUDA_TOOLKIT_ROOT_DIR

Co-authored-by: HinGwenWoong <peterhuang0323@outlook.com>
2022-05-23 17:15:09 +08:00
tripleMu de3f18fbb2
Fix docstring format (#495)
* Fix doc common

* Fix bugs
2022-05-23 15:08:18 +08:00
Zhiqiang Wang 57baf217f1
[docs] Fix typo in tutorial (#509) 2022-05-23 14:29:05 +08:00
AllentDan 9eee75b98f
More ocr models (#446)
* rewrite sync batchnorm

* export panet and psenet

* resolution

* align fp16 for panet

* refine codes

* enable satrn for trt

* refine docs

* docstring

* docstring

* add ut and refine codes

* fix ut

* resolve comments and move panet-fp16 to doc

* remove ut

* refine ut

* resolve comments

* use size instead of img_scale

* use size of MultiScaleAug

Co-authored-by: dongchunyu.vendor <dongchunyu@pjlab.org.cn>
2022-05-20 21:52:36 +08:00
RunningLeon a4de9f3704
change seperator of function marker (#499) 2022-05-20 15:20:44 +08:00
Yifan Gu e057b87fd1
fix: bbox_nms not onnxizing if batch size > 1 (#501)
A typo prevents nms from onnxizing correctly if batch size is static and greater than 1.
2022-05-20 14:48:09 +08:00
q.yao a4b7bced55
[Feature] Support reppoints TensorRT (#457)
* Support reppoints tensorrt

* add ut and docs

* update zh_cn documents

* update document
2022-05-18 11:54:45 +08:00
Chen Xin 0ce7c83c63
mmrotate sdk module (#450)
* support mmrotate

* fix name

* windows default link to cudart_static.lib, which is not compatible with static build && python_api

* python api

* fix ci

* fix type & remove unused meta info

* fix doxygen, add [out] to @param

* fix mmrotate-c-api

* refactor naming

* refactor naming

* fix lint

* fix lint

* move replace_RResize -> get_preprocess

* Update cuda.cmake

On windows, make static lib and python api build success.

* fix ptr

* Use unique ptr to prevent memory leaks

* move unique_ptr

* remove deleter

Co-authored-by: chenxin2 <chenxin2@sensetime.com>
Co-authored-by: cx <cx@ubuntu20.04>
2022-05-17 23:37:32 +08:00
Lakshantha Dissanayake 69111a6b95
Update: Optimize document (#484)
* Update: Optimize document

- Minor fixes in styling and grammar
- Add support for Jetson Xavier NX (Tested and worked)
- Add hardware recommendation
- Change JetPack installation guide URL from jp5.0 to jp4.6.1
- Add a note to select "Jetson SDK Components" when using NVIDIA SDK Manager
- Change PyTorch wheel save location
- Add more dependencies needed for torchvision installation. Otherwise installation error
- Simplify torchvision git cloning branch
- Add installation times for torchvision, MMCV, versioned-hdf5, ppl.cv, model converter, SDK libraries
- Delete "snap" from cmake removal as "apt-get purge" is enough
- Add a note on which scenarios you need to append cu da path and libraries to PATH and LD_LIBRARY_PATH
- Simplify MMCV git cloning branch
- Delete "skip if you don't need MMDeploy C/C++ Inference SDK", because that is the only available inference SDK at the moment
- Add more details to object detection demo using C/C++ Inference SDK such as installing MMDetection and converting a model
- Add image of inference result
- Delete "set env for pip" in troubleshooting because this is already mentioned under "installing Archiconda"

Signed-off-by: Lakshantha Dissanayake <lakshanthad@seeed.cc>

* Fix: note style on doc

* Fix: Trim trailing whitespaces

* Update: add source image before inference
2022-05-17 20:40:44 +08:00
q.yao 1a8d7aceaf
[Enhancement] Support DeformConv TensorRT fp16 (#468)
* add DCN TensorRT fp16 support

* fix getOutputDimensions
2022-05-17 19:58:33 +08:00
RunningLeon 843d3c9519
Rewrite mmcls gap (#478)
* rewrite mmcls gap to replace view with flatten

* add test

* update
2022-05-17 19:57:38 +08:00
AllentDan ba641c3b23
[Fix] set optional arg a default value (#483)
* optional default value

* resolve comments

Co-authored-by: dongchunyu.vendor <dongchunyu@pjlab.org.cn>
2022-05-17 19:57:12 +08:00
Johannes L 2f2ec2728e
If a cuda launch error occurs, verify if cuda device requires top_k t… (#479)
* If a cuda launch error occurs, verify if cuda device requires top_k to be reduced.

* Fixed lint

* Clang format

* Fixed lint, clang-format
2022-05-17 19:55:47 +08:00
chaoqun 21c2a85721
[Docs] Minor fixes and translation of installation tutorial for Jetson (#415)
* minor fixes

* add Jetson installation

* updated zh_cn based on new en version
2022-05-16 15:39:34 +08:00
tpoisonooo d04c8dc9c0
refactor(onnx2ncnn): add test case and simplify code (#436)
* refactor(onnx2ncnn.cpp): split it to shape_inference, pass and utils

* refactor(onnx2ncnn.cpp): split it to shape_inference, pass and utils

* refactor(onnx2ncnn.cpp): split code

* refactor(net_module.cpp): fix build error

* ci(test_onnx2ncnn.py): add generate model adn run

* ci(onnx2ncnn): add ncnn backend

* ci(test_onnx2ncnn): add converted onnx model`

* ci(onnx2ncnn): fix ncnn tar

* ci(backed-ncnn): simplify dependency install

* ci(onnx2ncnn): fix apt install

* Update backend-ncnn.yml

* Update backend-ncnn.yml

* Update backend-ncnn.yml

* Update backend-ncnn.yml

* Update backend-ncnn.yml

* Update backend-ncnn.yml

* Update backend-ncnn.yml

* Update backend-ncnn.yml

* Update backend-ncnn.yml

* Update backend-ncnn.yml

* Update backend-ncnn.yml

* fix(ci): add include algorithm

* Update build.yml

* parent aa85760531
author q.yao <streetyao@live.com> 1651287879 +0800
committer tpoisonooo <khj.application@aliyun.com> 1652169959 +0800

[Fix] Fix ci (#426)

* fix ci

* add nvidia key

* remote torch

* recover pytorch

refactor(onnx2ncnn.cpp): split it to shape_inference, pass and utils

* fix(onnx2ncnn): review

* fix(onnx2ncnn): build error

Co-authored-by: q.yao <streetyao@live.com>
2022-05-16 10:36:25 +08:00
RunningLeon 6eb83a9daa
fix import mmrazor error in mmcls test (#467) 2022-05-13 14:15:39 +08:00
tpoisonooo 9a4028bd49
fix(zh_CN): doc link (#447)
* docs(zh_CN): fix link missing

* docs(benchmark.md): fix pytorch typo
2022-05-12 12:22:50 +08:00
hanrui1sensetime 0cd44a6799
[Fix] Fix display bugs for windows (#451)
* fix issue 330 for windows

* fix code

* fix lint

* fix all platform
2022-05-12 12:00:57 +08:00
q.yao 3e4547d17b
fix-windows-ci (#462) 2022-05-11 20:39:31 +08:00
Zaida Zhou 3786856660
[Docs] Fix API documentation (#443)
* [Docs] Fix API documentation

* add onnx dependency in readthedocs.txt

* fix dependencies
2022-05-09 22:27:19 +08:00
Johannes L 94148cbe56
Version comments added, torch install steps added. (#449) 2022-05-09 22:22:00 +08:00
tpoisonooo 5f59b4464f
docs(docs/zh_cn): update doc and link checker (#418)
* docs(docs/zh_cn): add doc and link checker

* docs(REAME): update

* docs(docs/zh_cn): update

* docs(benchmark): update table

* docs(zh_cn/benchmark): update link

* CI(docs): update link check

* ci(doc): update checker

* docs(zh_cn): update

* style(ci): remove useless para

* style(ci): update

* docs(zh_cn): update

* docs(benchmark.md): fix mobilnet link error

* docs(docs/zh_cn): add doc and link checker

* docs(REAME): update

* docs(docs/zh_cn): update

* docs(benchmark): update table

* docs(zh_cn/benchmark): update link

* CI(docs): update link check

* ci(doc): update checker

* docs(zh_cn): update

* style(ci): remove useless para

* style(ci): update

* docs(zh_cn): update

* docs(benchmark.md): fix mobilnet link error

* docs(zh_cn/do_regression_test.md): rebase

* docs(docs/zh_cn): add doc and link checker

* Update README_zh-CN.md

* Update README_zh-CN.md

* Update index.rst

* Update check-doc-link.yml

* [Fix] Fix ci (#426)

* fix ci

* add nvidia key

* remote torch

* recover pytorch

* ci(codecov): ignore ci

* docs(zh_cn): add get_started.md

* docs(zh_cn): fix review advice

* docs(readthedocs): update

* docs(zh_CN): update

* docs(zh_CN): revert

* fix(docs): review advices

* fix(docs): review advices

* fix(docs): review

Co-authored-by: q.yao <streetyao@live.com>
2022-05-09 10:18:10 +08:00
HinGwenWoong f45c1f09b1
[Doc] Improve Jetson tutorial install doc (#381)
* Improve Jetson build doc

* add torchvision in the doc

* Fix lint

* Fix lint

* Fix lint

* Fix arg bug

* remove incorrect process

* Improve doc

* Add more detail on `Conda`

* Add python version detail

* Install `onnx` instead of `onnxruntime`

* Fix gramma

* Fix gramma

* Update Installation detail and fix some doc detail

* Update how_to_install_mmdeploy_on_jetsons.md

* Fix tensorrt and cudnn path

* Improve FAQ

* Improve FAQs

* pplcv not switch branch since the `sm_53` missing

* Update how_to_install_mmdeploy_on_jetsons.md

* Update how_to_install_mmdeploy_on_jetsons.md

* Update how_to_install_mmdeploy_on_jetsons.md

* Update how_to_install_mmdeploy_on_jetsons.md

* Improve doc

* Update how_to_install_mmdeploy_on_jetsons.md

* export `TENSORRT_DIR`

* Using pre-build cmake to update

* Improve sentence and add jetpack version

* Improve sentence

* move TENSORRT_DIR in the `Make TensorRT env` step

* Improve CUDA detail

* Update how_to_install_mmdeploy_on_jetsons.md

* Update how_to_install_mmdeploy_on_jetsons.md

* Improve conda installation

* Improve TensorRT installation

* Fix lint

* Add pip crash detail and FAQ

* Improve pip crash

* refine the jetson installation guide

* Improve python version

* Improve doc, added some detail

* Fix lint

* Add detail for `Runtime` problem

* Fix word

* Update how_to_install_mmdeploy_on_jetsons.md

Co-authored-by: lvhan028 <lvhan_028@163.com>
2022-05-07 19:38:25 +08:00
q.yao c2f2edcf31
Fix ci in master branch (#441) 2022-05-07 19:31:42 +08:00
q.yao 81a9719dd3
Limit mmpose requirement (#440) 2022-05-07 19:30:12 +08:00
NagatoYuki0943 5231e65f94
fix ONNXRuntime cuda test bug (#438) 2022-05-07 17:02:06 +08:00
Yue Zhou 42dc5bc316
Support single stage rotated detector in MMRotate (#428)
* fix lint

* fix lint

* add mmrotate part

* update

* update

* fix

* remove init_detector

* success run with bs=1

* nms_rotated support batch

* support [batch_id, class_id, box_id]

* fix

* fix

* Create test_mmrotate_core.py

* add ut

* add ut

* Update nms_rotated.py

* fix

* Revert "fix"

This reverts commit f792387fb4.

* add mmrotate into requirements

* add ut

* update doc

* update

* skip test because mmcv version < 1.4.6

* update

* Update rotated-detection_static.py

* Update rotated-detection_static.py

* Update rotated-detection_static.py

* fix bug of memory leak.

* Update rotated_detection_model.py
2022-05-07 16:11:43 +08:00
HinGwenWoong 76f6e253bb
[Fix] ncnn [-Wreturn-type] and improve mutex `if` (#431)
* Fix make ncnn [-Wreturn-type]

* Fix lint
2022-05-07 10:35:22 +08:00
VVsssssk 86ab0637bc
fix pillarencode (#331) 2022-05-05 11:11:32 +08:00
lzhangzz 16ee9c7843
[Fix] support latest spdlog (#423)
* support formatting `PixelFormat` & `DataType`

* format enum for legacy spdlog

* fix format
2022-05-03 14:49:19 +08:00
q.yao 59453dc0f6
[Fix] Fix ci (#426)
* fix ci

* add nvidia key

* remote torch

* recover pytorch
2022-04-30 11:04:39 +08:00
hanrui1sensetime aa85760531
[Enhancement] Support litehrnet for ncnn (#316)
* support for litehrnet

* support ncnn vulkan

* update supported models

* add docstring

* add one ut and fix wrapper

* add test_shuffleunit

* add test_stem_forward

* add last ut

* fix flake8

* fix yapf

* fix lint

* fix yapf

* fix comments

* unified chunk

* mv adaptive_avg_pool

* fix lint

* move adaptive_avg_pool_ncnn

* fix lint

* symbolic rewriter of adaptive_avg_pool2d

* fix lint

* fix yapf

* fix ci
2022-04-29 16:46:19 +08:00
q.yao 5cbb06567b
remove expand from mmdet rewriter (#371) 2022-04-29 13:54:08 +08:00
HinGwenWoong 22652175bc
[Feature] Regression test for mmdeploy (#302)
* Add regression test script

* Add doc

* Add test yaml for mmdet

* evaluate_outputs Add return result

(cherry picked from commit c8c9cd75df)

* object_detection return metric after eval

(cherry picked from commit 1b8dcaa39e)

* move `deploy_config_dir` to `global_info` in test yaml

* fix path error

* Improve test yaml structure

* Add test env for saving regression report

* Fix SDK test report will crash

* Get SDK FPS

* Add mmcls regression test yaml

* Using CMD to test the backend result

* Get metric from log file

* Imporve coding

* Imporve coding

* restructure test yaml

* resturcture the test yaml and coding, using pipeline style

* Fixed wont saving into report when cant find `backend_test` and `sdk_config`

* set `metric_info` in test yaml

* improve test yaml

* Fixed will get black checkpoint file name

* Fix lint

* Fix yaml

* Add common in test yaml

* Resturcture mmcla test yaml

* Resturcture mmcla test yaml

* Improve mmcls test yaml

* mmcls test success

* Improve tes yaml field

* Add `--test-img` only when `test_img_path` is not None

* Add `precision_type` in report

* Not saving pkl result file any more

* Add 'x' install of '-' when script crash

* Fix some field in mmcls test yaml

* Add mmseg test yaml

* Add unknown backend final file name

* Improve backend file dict

* Add mmseg success

* unify the checkpoint path to relate path

* unify the checkpoint path to relate path

* Add mmpose, need to test

* Support backend file list to `--model` when test the backend

* Fix lint

* Add some common

* FPS get from log always get 1:10 line

* Add dataset in report when test backend

* Get dataset type from model config file

* Replace pipeline.json topk

* SDK report add backend name

* Add txt report, it will save each test

* update mmcls config

* Add `calib-dataset-cfg` in cmd when it exist  in tset yaml

* make model path shorter by cutting the work_dir_root

* Add `task_name` in test yaml

* Add `task_name` in report

* Improve test yaml

* Add mmocr test yaml

* Get mmocr fps metric success

* Add `dataset` feild in test yaml

* Report will skip when the dataset name not in test yaml

* Add dbnet in mmocr test yaml and success get metric

* Add mmedit test yaml

* Improve some common

* Add mmedit success

* Fix lint

* Fix isort lint

* Fix yapf lint

* Undo some changes in `evaluate_outputs`

* Undo some changes in `evaluate_outputs`

* Improve test requirement.txt

* Undo some changes in `evaluate_outputs`

* Improve doc

* Improve mmedit test yaml

* Using `--divice`

* Fix lint

* Using `--performance` replace `--test-type`

* Fix lint

* Fix page link

* Fix backend name

* Using `logger` instead of `print`

* Fix lint

* Add TorchScript in the doc

* Add type hint for all the funcs

* Fix docformatter lint

* Fix path in report have the root of work dir

* mmdet add other backend in tast yaml

* mmdet add other backend in tast yaml

* mmocr add other backend in tast yaml

* mmedit add other backend in tast yaml

* mmpose add other backend in tast yaml

* Delete filed `codebase_model_config_dir` in test yaml

* Using `Config` in metafile.yml instal of `Name` from allmodel config files.

* Fix yapf lint

* update mmpose mmseg config

* Fix lint

* Imporve mmcls test yaml

* Imporve mmedit test yaml

* Imporve mmedit test yaml

* Imporve mmseg test yaml

* update mmdet yml

* Not using pth when conver sucess when in only convert mode

* Using metafile dataset when can not get `model_cfg.dataset_type`

* Fixed `model_name` incorrect in some codebase

* Improve mmcls test yaml image

* Improve mmedit test yaml image

* Improve mmocr test yaml image

* Improve mmseg test yaml image

* Fix test yaml bug

* Support overwirte `metric_tolerance`

* Add `metric_tolerance` in mmcls

* Fixed yaml bug

* mmcls add all models, which had already supported, in test yaml

* Fix report will not replace to ${WORK_DIR}

* Add metric tolerance in mmcls test yaml

* Modefied mmcls global metric tolreance

* remove `metric_tolerance` in each pipeline

* Improve mmcls test yaml

* mmcls add TODO

* imporve test yaml `pp`l -> `pplnn`

* mmdet add all models, which had already supported, in test yaml

* mmedit add all models, which had already supported, in test yaml

* mmocr add all models, which had already supported, in test yaml

* mmpose add all models, which had already supported, in test yaml

* Replace `sdk_xxx_fp32` to `sdk_xxx`

* mmseg add all models, which had already supported, in test yaml

* Import the backend order of test yaml

* Fix mmseg test yaml pplnn static config

* Add notes for Windows user in the doc

* Fix get metric from different metric name but correct dataset name.

* Fix mmedit dataset incorrect

* Fix test yaml of mmedit

* Fix lint

* Fix mmpose can't find metric

* Improve mmseg trt testing config

* Add dataset in mmdet test yaml

* Add logs when continue in the code

* Fix mmpose get metric log error

* Fix mmdet can not get metric

* Add merge report into one

* Fix lint

* Add version in the report

* log2file for each backend

* Fix lint

* Improve report merge

* update mmseg yml to shape 1024x2048

* Fix dependences for merging report

* Imporve mmcls yaml, add `ShuffleNetV1` and `ShuffleNetV2`

* Fix name of model in test yaml with a space will crash when convert

* Add commons for test yaml metric tolerance

* Add mmdet seg detail config in test yaml

* Improve mmdet test yaml

* Fix mmdet mskrcnn metric

Co-authored-by: maningsheng <mnsheng@yeah.net>
2022-04-28 08:03:59 +08:00