diff --git a/configs/mmedit/super-resolution/super-resolution_ncnn_dynamic.py b/configs/mmedit/super-resolution/super-resolution_ncnn_dynamic.py new file mode 100644 index 0000000000..ad7a77cbf8 --- /dev/null +++ b/configs/mmedit/super-resolution/super-resolution_ncnn_dynamic.py @@ -0,0 +1 @@ +_base_ = ['./super-resolution_dynamic.py', '../../_base_/backends/ncnn.py'] diff --git a/configs/mmedit/super-resolution/super-resolution_openvino_dynamic.py b/configs/mmedit/super-resolution/super-resolution_openvino_dynamic.py new file mode 100644 index 0000000000..8930146cf6 --- /dev/null +++ b/configs/mmedit/super-resolution/super-resolution_openvino_dynamic.py @@ -0,0 +1 @@ +_base_ = ['./super-resolution_dynamic.py', '../../_base_/backends/openvino.py'] diff --git a/docs/benchmark.md b/docs/benchmark.md index bac6e30ac9..bfdb94553a 100644 --- a/docs/benchmark.md +++ b/docs/benchmark.md @@ -100,7 +100,7 @@ Users can directly test the speed through [how_to_measure_performance_of_models.
-MMediting with 1x3x32x32 input +MMEditing with 1x3x32x32 input
@@ -399,6 +399,192 @@ Users can directly test the speed through [how_to_measure_performance_of_models. ### Performance benchmark Users can directly test the performance through [how_to_evaluate_a_model.md](docs/tutorials/how_to_evaluate_a_model.md). And here is the benchmark in our environment. + +
+MMEditing +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
MMEditingPyTorchONNX RuntimeTensorRTPPLNN
ModelTaskMetrics(Set5)fp32fp32fp32fp16int8fp16model config file
SRCNNSuper ResolutionPSNR28.431628.432328.432328.428628.199528.4311$MMEDIT_DIR/configs/restorers/srcnn/srcnn_x4k915_g1_1000k_div2k.py
SSIM0.80990.80970.80970.80960.79340.8096
ESRGANSuper ResolutionPSNR28.270028.259228.2592 - - 28.2624$MMEDIT_DIR/configs/restorers/esrgan/esrgan_x4c64b23g32_g1_400k_div2k.py
SSIM0.77780.77640.7774 - - 0.7765
ESRGAN-PSNRSuper ResolutionPSNR30.642830.644430.6430 - - 27.0426$MMEDIT_DIR/configs/restorers/esrgan/esrgan_psnr_x4c64b23g32_g1_1000k_div2k.py
SSIM0.85590.85580.8558 - - 0.8557
SRGANSuper ResolutionPSNR27.949927.940827.9408 - - 27.9388$MMEDIT_DIR/configs/restorers/srresnet_srgan/srgan_x4c64b16_g1_1000k_div2k.pyy
SSIM0.78460.78390.7839 - - 0.7839
SRResNetSuper ResolutionPSNR30.225230.230030.2300 - - 30.2294$MMEDIT_DIR/configs/restorers/srresnet_srgan/msrresnet_x4c64b16_g1_1000k_div2k.py
SSIM0.84910.84880.8488 - - 0.8488
Real-ESRNetSuper ResolutionPSNR28.029727.701627.7016 - - 27.7049$MMEDIT_DIR/configs/restorers/real_esrgan/realesrnet_c64b23g32_12x4_lr2e-4_1000k_df2k_ost.py
SSIM0.82360.81220.8122 - - 0.8123
EDSRSuper ResolutionPSNR30.222330.221430.221430.221130.1383-$MMEDIT_DIR/configs/restorers/edsr/edsr_x4c64b16_g1_300k_div2k.py
SSIM0.85000.84970.84970.84970.8469 -
+
+
+
MMOCR
@@ -409,7 +595,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](doc Pytorch ONNXRuntime TensorRT - OpenPPL + PPLNN OpenVINO diff --git a/docs/codebases/mmedit.md b/docs/codebases/mmedit.md index 3fceb336bf..88200e7341 100644 --- a/docs/codebases/mmedit.md +++ b/docs/codebases/mmedit.md @@ -6,12 +6,22 @@ Please refer to [official installation guide](https://mmediting.readthedocs.io/en/latest/install.html#installation) to install the codebase. -## List of MMEditing models supported by MMDeploy - -| Model | Task | ONNX Runtime | TensorRT | NCNN | PPL | OpenVINO | Model Config File (Example) | -|:-------|:-----------------|:------------:|:--------:|:----:|:---:|:--------:|:-------------------------------------------------------------------------| -| SRCNN | super-resolution | Y | Y | N | Y | N | $MMEDIT_DIR/configs/restorers/srcnn/srcnn_x4k915_g1_1000k_div2k.py | -| ESRGAN | super-resolution | Y | Y | N | Y | N | $MMEDIT_DIR/configs/restorers/esrgan/esrgan_x4c64b23g32_g1_400k_div2k.py | +## MMEditing models support + +| Model | Task | ONNX Runtime | TensorRT | NCNN | OpenPPL | OpenVINO | Model Config File | +| :---------- | :--------------- | :----------: | :------: | :---: | :-----: | :------: | :------------------------------------------------------------------------------------------- | +| SRCNN | super-resolution | Y | Y | Y | Y | N | $MMEDIT_DIR/configs/restorers/srcnn/srcnn_x4k915_g1_1000k_div2k.py | +| ESRGAN | super-resolution | Y | Y | Y | Y | N | $MMEDIT_DIR/configs/restorers/esrgan/esrgan_x4c64b23g32_g1_400k_div2k.py | +| ESRGAN | super-resolution | Y | Y | Y | Y | N | $MMEDIT_DIR/configs/restorers/esrgan/esrgan_psnr_x4c64b23g32_g1_1000k_div2k.py | +| SRGAN | super-resolution | Y | Y | Y | Y | N | $MMEDIT_DIR/configs/restorers/srresnet_srgan/srgan_x4c64b16_g1_1000k_div2k.py | +| SRResNet | super-resolution | Y | Y | Y | Y | N | $MMEDIT_DIR/configs/restorers/srresnet_srgan/srgan_x4c64b16_g1_1000k_div2k.py | +| Real-ESRGAN | super-resolution | Y | Y | Y | Y | N | $MMEDIT_DIR/configs/restorers/real_esrgan/realesrnet_c64b23g32_12x4_lr2e-4_1000k_df2k_ost.py | +| EDSR | super-resolution | Y | Y | Y | N | N | $MMEDIT_DIR/configs/restorers/edsr/edsr_x2c64b16_g1_300k_div2k.py | +| EDSR | super-resolution | Y | Y | Y | N | N | $MMEDIT_DIR/configs/restorers/edsr/edsr_x3c64b16_g1_300k_div2k.py | +| EDSR | super-resolution | Y | Y | Y | N | N | $MMEDIT_DIR/configs/restorers/edsr/edsr_x4c64b16_g1_300k_div2k.py | +| RDN | super-resolution | Y | Y | Y | Y | N | $MMEDIT_DIR/configs/restorers/rdn/rdn_x2c64b16_g1_1000k_div2k.py | +| RDN | super-resolution | Y | Y | Y | Y | N | $MMEDIT_DIR/configs/restorers/rdn/rdn_x3c64b16_g1_1000k_div2k.py | +| RDN | super-resolution | Y | Y | Y | Y | N | $MMEDIT_DIR/configs/restorers/rdn/rdn_x4c64b16_g1_1000k_div2k.py | ## Reminder @@ -19,6 +29,4 @@ None ## FAQs -1. Why the precision of SRCNN running in TensorRT is lower than in PyTorch? - - SRCNN uses bicubic to upsample images. TensorRT doesn't support bicubic operation. Therefore, we replace this operation with bilinear, which may lower the precision. +None