From c1b710f5468903e7ee5ecb7973df84525c0f3825 Mon Sep 17 00:00:00 2001 From: zhouzaida Date: Fri, 27 May 2022 21:43:13 +0800 Subject: [PATCH 1/4] [Docs] Refine documentation --- .pre-commit-config.yaml | 2 +- TERMINOLOGY.md | 46 ++--- .../deployment/onnxruntime_custom_ops.md | 152 ++++++++-------- docs/zh_cn/deployment/onnxruntime_op.md | 20 +-- docs/zh_cn/deployment/tensorrt_custom_ops.md | 166 +++++++++--------- docs/zh_cn/deployment/tensorrt_plugin.md | 22 +-- 6 files changed, 204 insertions(+), 204 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index d10e61a235..19d2e8db5a 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -35,7 +35,7 @@ repos: - id: mdformat args: ["--number"] additional_dependencies: - - mdformat-gfm + - mdformat-openmmlab - mdformat_frontmatter - linkify-it-py - repo: https://github.com/myint/docformatter diff --git a/TERMINOLOGY.md b/TERMINOLOGY.md index 10e84e576e..07411b7774 100644 --- a/TERMINOLOGY.md +++ b/TERMINOLOGY.md @@ -4,27 +4,27 @@ This document is used as a reference for English-Chinese terminology translation 该文档用作中英文翻译对照参考。 -| English | 中文 | -| :---------------: | :----: | -| annotation | 标注 | -| backbone | 主干网络 | -| benchmark | 基准测试 | +| English | 中文 | +| :---------------: | :----------: | +| annotation | 标注 | +| backbone | 主干网络 | +| benchmark | 基准测试 | | checkpoint | 模型权重文件 | -| classifier | 分类器 | -| cls_head | 分类头 | -| decoder | 解码器 | -| detector | 检测器 | -| encoder | 编码器 | -| finetune | 微调 | -| ground truth | 真实标签 | -| hook | 钩子 | -| localizer | 定位器 | -| neck | 模型颈部 | -| pipeline | 流水线 | -| recognizer | 识别器 | -| register | 注册器 | -| schedule | 调整 | -| scheduler | 调度器 | -| segmentor | 分割器 | -| tensor | 张量 | -| training schedule | 训练策略 | +| classifier | 分类器 | +| cls_head | 分类头 | +| decoder | 解码器 | +| detector | 检测器 | +| encoder | 编码器 | +| finetune | 微调 | +| ground truth | 真实标签 | +| hook | 钩子 | +| localizer | 定位器 | +| neck | 模型颈部 | +| pipeline | 流水线 | +| recognizer | 识别器 | +| register | 注册器 | +| schedule | 调整 | +| scheduler | 调度器 | +| segmentor | 分割器 | +| tensor | 张量 | +| training schedule | 训练策略 | diff --git a/docs/zh_cn/deployment/onnxruntime_custom_ops.md b/docs/zh_cn/deployment/onnxruntime_custom_ops.md index cda3031830..1150f919ef 100644 --- a/docs/zh_cn/deployment/onnxruntime_custom_ops.md +++ b/docs/zh_cn/deployment/onnxruntime_custom_ops.md @@ -2,55 +2,55 @@ -- [ONNX Runtime自定义算子](#onnx-runtime%E8%87%AA%E5%AE%9A%E4%B9%89%E7%AE%97%E5%AD%90) +- [ONNX Runtime自定义算子](#onnx-runtime自定义算子) - [SoftNMS](#softnms) - - [描述](#%E6%8F%8F%E8%BF%B0) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0) - - [输入](#%E8%BE%93%E5%85%A5) - - [输出](#%E8%BE%93%E5%87%BA) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F) + - [描述](#描述) + - [模型参数](#模型参数) + - [输入](#输入) + - [输出](#输出) + - [类型约束](#类型约束) - [RoIAlign](#roialign) - - [描述](#%E6%8F%8F%E8%BF%B0-1) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-1) - - [输入](#%E8%BE%93%E5%85%A5-1) - - [输出](#%E8%BE%93%E5%87%BA-1) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-1) + - [描述](#描述-1) + - [模型参数](#模型参数-1) + - [输入](#输入-1) + - [输出](#输出-1) + - [类型约束](#类型约束-1) - [NMS](#nms) - - [描述](#%E6%8F%8F%E8%BF%B0-2) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-2) - - [输入](#%E8%BE%93%E5%85%A5-2) - - [输出](#%E8%BE%93%E5%87%BA-2) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-2) + - [描述](#描述-2) + - [模型参数](#模型参数-2) + - [输入](#输入-2) + - [输出](#输出-2) + - [类型约束](#类型约束-2) - [grid_sampler](#grid_sampler) - - [描述](#%E6%8F%8F%E8%BF%B0-3) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-3) - - [输入](#%E8%BE%93%E5%85%A5-3) - - [输出](#%E8%BE%93%E5%87%BA-3) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-3) + - [描述](#描述-3) + - [模型参数](#模型参数-3) + - [输入](#输入-3) + - [输出](#输出-3) + - [类型约束](#类型约束-3) - [CornerPool](#cornerpool) - - [描述](#%E6%8F%8F%E8%BF%B0-4) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-4) - - [输入](#%E8%BE%93%E5%85%A5-4) - - [输出](#%E8%BE%93%E5%87%BA-4) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-4) + - [描述](#描述-4) + - [模型参数](#模型参数-4) + - [输入](#输入-4) + - [输出](#输出-4) + - [类型约束](#类型约束-4) - [cummax](#cummax) - - [描述](#%E6%8F%8F%E8%BF%B0-5) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-5) - - [输入](#%E8%BE%93%E5%85%A5-5) - - [输出](#%E8%BE%93%E5%87%BA-5) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-5) + - [描述](#描述-5) + - [模型参数](#模型参数-5) + - [输入](#输入-5) + - [输出](#输出-5) + - [类型约束](#类型约束-5) - [cummin](#cummin) - - [描述](#%E6%8F%8F%E8%BF%B0-6) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-6) - - [输入](#%E8%BE%93%E5%85%A5-6) - - [输出](#%E8%BE%93%E5%87%BA-6) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-6) + - [描述](#描述-6) + - [模型参数](#模型参数-6) + - [输入](#输入-6) + - [输出](#输出-6) + - [类型约束](#类型约束-6) - [MMCVModulatedDeformConv2d](#mmcvmodulateddeformconv2d) - - [描述](#%E6%8F%8F%E8%BF%B0-7) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-7) - - [输入](#%E8%BE%93%E5%85%A5-7) - - [输出](#%E8%BE%93%E5%87%BA-7) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-7) + - [描述](#描述-7) + - [模型参数](#模型参数-7) + - [输入](#输入-7) + - [输出](#输出-7) + - [类型约束](#类型约束-7) @@ -62,13 +62,13 @@ #### 模型参数 -| 类型 | 参数名 | 描述 | -| ------- | --------------- | -------------------------------------------------- | -| `float` | `iou_threshold` | 用来判断候选框重合度的阈值,取值范围\[0, 1\]。默认值为0 | -| `float` | `sigma` | 高斯方法的超参数 | -| `float` | `min_score` | NMS的score阈值 | +| 类型 | 参数名 | 描述 | +| ------- | --------------- | ------------------------------------------------------- | +| `float` | `iou_threshold` | 用来判断候选框重合度的阈值,取值范围\[0, 1\]。默认值为0 | +| `float` | `sigma` | 高斯方法的超参数 | +| `float` | `min_score` | NMS的score阈值 | | `int` | `method` | NMS的计算方式, (0: `naive`, 1: `linear`, 2: `gaussian`) | -| `int` | `offset` | 用来计算候选框的宽高(x2 - x1 + offset)。可选值0或1 | +| `int` | `offset` | 用来计算候选框的宽高(x2 - x1 + offset)。可选值0或1 | #### 输入 @@ -100,13 +100,13 @@ #### 模型参数 -| 类型 | 参数名 | 描述 | -| ------- | ---------------- | ----------------------------------- | -| `int` | `output_height` | roi特征的输出高度 | -| `int` | `output_width` | roi特征的输出宽度 | -| `float` | `spatial_scale` | 输入检测框的缩放系数 | -| `int` | `sampling_ratio` | 输出的采样率。`0`表示使用密集采样 | -| `str` | `mode` | 池化方式。 `avg`或`max` | +| 类型 | 参数名 | 描述 | +| ------- | ---------------- | ------------------------------------------------------- | +| `int` | `output_height` | roi特征的输出高度 | +| `int` | `output_width` | roi特征的输出宽度 | +| `float` | `spatial_scale` | 输入检测框的缩放系数 | +| `int` | `sampling_ratio` | 输出的采样率。`0`表示使用密集采样 | +| `str` | `mode` | 池化方式。 `avg`或`max` | | `int` | `aligned` | 如果`aligned=1`,则像素会进行-0.5的偏移以达到更好的对齐 | #### 输入 @@ -137,10 +137,10 @@ #### 模型参数 -| 类型 | 参数名 | 描述 | -| ------- | --------------- | ----------------------------------- | -| `float` | `iou_threshold` | 用来判断候选框重合度的阈值,取值范围\[0, 1\]。默认值为0 | -| `int` | `offset` | 用来计算候选框的宽高(x2 - x1 + offset)。可选值0或1 | +| 类型 | 参数名 | 描述 | +| ------- | --------------- | ------------------------------------------------------- | +| `float` | `iou_threshold` | 用来判断候选框重合度的阈值,取值范围\[0, 1\]。默认值为0 | +| `int` | `offset` | 用来计算候选框的宽高(x2 - x1 + offset)。可选值0或1 | #### 输入 @@ -170,10 +170,10 @@ #### 模型参数 -| 类型 | 参数名 | 描述 | -| ----- | -------------------- | ------------------------------------------------------------------------------------------------ | -| `int` | `interpolation_mode` | 计算输出使用的插值模式。(0: `bilinear` , 1: `nearest`) | -| `int` | `padding_mode` | 边缘填充模式。(0: `zeros`, 1: `border`, 2: `reflection`) | +| 类型 | 参数名 | 描述 | +| ----- | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | +| `int` | `interpolation_mode` | 计算输出使用的插值模式。(0: `bilinear` , 1: `nearest`) | +| `int` | `padding_mode` | 边缘填充模式。(0: `zeros`, 1: `border`, 2: `reflection`) | | `int` | `align_corners` | 如果`align_corners=1`,则极值(`-1`和`1`)会被当做输入边缘像素的中心点。如果`align_corners=0`,则它们会被看做是边缘像素的边缘点,减小分辨率对采样的影响 | #### 输入 @@ -204,8 +204,8 @@ #### 模型参数 -| 类型 | 参数名 | 描述 | -| ----- | ------ | --------------------------------------------------- | +| 类型 | 参数名 | 描述 | +| ----- | ------ | -------------------------------------------------------- | | `int` | `mode` | 池化模式。(0: `top`, 1: `bottom`, 2: `left`, 3: `right`) | #### 输入 @@ -234,9 +234,9 @@ #### 模型参数 -| 类型 | 参数名 | 描述 | -| ----- | ----- | --------- | -| `int` | `dim` | 进行累计计算的维度 | +| 类型 | 参数名 | 描述 | +| ----- | ------ | ------------------ | +| `int` | `dim` | 进行累计计算的维度 | #### 输入 @@ -266,9 +266,9 @@ #### 模型参数 -| 类型 | 参数名 | 描述 | -| ----- | ----- | --------- | -| `int` | `dim` | 进行累计计算的维度 | +| 类型 | 参数名 | 描述 | +| ----- | ------ | ------------------ | +| `int` | `dim` | 进行累计计算的维度 | #### 输入 @@ -298,12 +298,12 @@ #### 模型参数 -| 类型 | 参数名 | 描述 | -| -------------- | ------------------- | -------------------------------------- | -| `list of ints` | `stride` | 卷积的步长 (sH, sW) | -| `list of ints` | `padding` | 输入特征填充大小 (padH, padW) | -| `list of ints` | `dilation` | 卷积核各元素间隔 (dH, dW) | -| `int` | `deformable_groups` | 可变偏移量的分组,通常置位1即可 | +| 类型 | 参数名 | 描述 | +| -------------- | ------------------- | ------------------------------------------------------------- | +| `list of ints` | `stride` | 卷积的步长 (sH, sW) | +| `list of ints` | `padding` | 输入特征填充大小 (padH, padW) | +| `list of ints` | `dilation` | 卷积核各元素间隔 (dH, dW) | +| `int` | `deformable_groups` | 可变偏移量的分组,通常置位1即可 | | `int` | `groups` | 卷积分组数,`input_channel`会根据这个值被分为数个分组进行计算 | #### 输入 diff --git a/docs/zh_cn/deployment/onnxruntime_op.md b/docs/zh_cn/deployment/onnxruntime_op.md index eb3031a57f..d5461eb8b0 100644 --- a/docs/zh_cn/deployment/onnxruntime_op.md +++ b/docs/zh_cn/deployment/onnxruntime_op.md @@ -15,16 +15,16 @@ ### MMCV已支持的算子 -| 算子 | CPU | GPU | MMCV版本 | -| :------------------------------------------------------------------------------: | :-: | :-: | :----: | -| [SoftNMS](onnxruntime_custom_ops.md#softnms) | Y | N | 1.2.3 | -| [RoIAlign](onnxruntime_custom_ops.md#roialign) | Y | N | 1.2.5 | -| [NMS](onnxruntime_custom_ops.md#nms) | Y | N | 1.2.7 | -| [grid_sampler](onnxruntime_custom_ops.md#grid_sampler) | Y | N | 1.3.1 | -| [CornerPool](onnxruntime_custom_ops.md#cornerpool) | Y | N | 1.3.4 | -| [cummax](onnxruntime_custom_ops.md#cummax) | Y | N | 1.3.4 | -| [cummin](onnxruntime_custom_ops.md#cummin) | Y | N | 1.3.4 | -| [MMCVModulatedDeformConv2d](onnxruntime_custom_ops.md#mmcvmodulateddeformconv2d) | Y | N | 1.3.12 | +| 算子 | CPU | GPU | MMCV版本 | +| :------------------------------------------------------------------------------: | :-: | :-: | :------: | +| [SoftNMS](onnxruntime_custom_ops.md#softnms) | Y | N | 1.2.3 | +| [RoIAlign](onnxruntime_custom_ops.md#roialign) | Y | N | 1.2.5 | +| [NMS](onnxruntime_custom_ops.md#nms) | Y | N | 1.2.7 | +| [grid_sampler](onnxruntime_custom_ops.md#grid_sampler) | Y | N | 1.3.1 | +| [CornerPool](onnxruntime_custom_ops.md#cornerpool) | Y | N | 1.3.4 | +| [cummax](onnxruntime_custom_ops.md#cummax) | Y | N | 1.3.4 | +| [cummin](onnxruntime_custom_ops.md#cummin) | Y | N | 1.3.4 | +| [MMCVModulatedDeformConv2d](onnxruntime_custom_ops.md#mmcvmodulateddeformconv2d) | Y | N | 1.3.12 | ### 如何编译ONNX Runtime自定义算子? diff --git a/docs/zh_cn/deployment/tensorrt_custom_ops.md b/docs/zh_cn/deployment/tensorrt_custom_ops.md index 8360d689ce..d773154830 100644 --- a/docs/zh_cn/deployment/tensorrt_custom_ops.md +++ b/docs/zh_cn/deployment/tensorrt_custom_ops.md @@ -2,61 +2,61 @@ -- [TensorRT自定义算子](#tensorrt%E8%87%AA%E5%AE%9A%E4%B9%89%E7%AE%97%E5%AD%90) +- [TensorRT自定义算子](#tensorrt自定义算子) - [MMCVRoIAlign](#mmcvroialign) - - [描述](#%E6%8F%8F%E8%BF%B0) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0) - - [输入](#%E8%BE%93%E5%85%A5) - - [输出](#%E8%BE%93%E5%87%BA) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F) + - [描述](#描述) + - [模型参数](#模型参数) + - [输入](#输入) + - [输出](#输出) + - [类型约束](#类型约束) - [ScatterND](#scatternd) - - [描述](#%E6%8F%8F%E8%BF%B0-1) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-1) - - [输入](#%E8%BE%93%E5%85%A5-1) - - [输出](#%E8%BE%93%E5%87%BA-1) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-1) + - [描述](#描述-1) + - [模型参数](#模型参数-1) + - [输入](#输入-1) + - [输出](#输出-1) + - [类型约束](#类型约束-1) - [NonMaxSuppression](#nonmaxsuppression) - - [描述](#%E6%8F%8F%E8%BF%B0-2) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-2) - - [输入](#%E8%BE%93%E5%85%A5-2) - - [输出](#%E8%BE%93%E5%87%BA-2) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-2) + - [描述](#描述-2) + - [模型参数](#模型参数-2) + - [输入](#输入-2) + - [输出](#输出-2) + - [类型约束](#类型约束-2) - [MMCVDeformConv2d](#mmcvdeformconv2d) - - [描述](#%E6%8F%8F%E8%BF%B0-3) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-3) - - [输入](#%E8%BE%93%E5%85%A5-3) - - [输出](#%E8%BE%93%E5%87%BA-3) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-3) + - [描述](#描述-3) + - [模型参数](#模型参数-3) + - [输入](#输入-3) + - [输出](#输出-3) + - [类型约束](#类型约束-3) - [grid_sampler](#grid_sampler) - - [描述](#%E6%8F%8F%E8%BF%B0-4) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-4) - - [输入](#%E8%BE%93%E5%85%A5-4) - - [输出](#%E8%BE%93%E5%87%BA-4) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-4) + - [描述](#描述-4) + - [模型参数](#模型参数-4) + - [输入](#输入-4) + - [输出](#输出-4) + - [类型约束](#类型约束-4) - [cummax](#cummax) - - [描述](#%E6%8F%8F%E8%BF%B0-5) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-5) - - [输入](#%E8%BE%93%E5%85%A5-5) - - [输出](#%E8%BE%93%E5%87%BA-5) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-5) + - [描述](#描述-5) + - [模型参数](#模型参数-5) + - [输入](#输入-5) + - [输出](#输出-5) + - [类型约束](#类型约束-5) - [cummin](#cummin) - - [描述](#%E6%8F%8F%E8%BF%B0-6) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-6) - - [输入](#%E8%BE%93%E5%85%A5-6) - - [输出](#%E8%BE%93%E5%87%BA-6) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-6) + - [描述](#描述-6) + - [模型参数](#模型参数-6) + - [输入](#输入-6) + - [输出](#输出-6) + - [类型约束](#类型约束-6) - [MMCVInstanceNormalization](#mmcvinstancenormalization) - - [描述](#%E6%8F%8F%E8%BF%B0-7) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-7) - - [输入](#%E8%BE%93%E5%85%A5-7) - - [输出](#%E8%BE%93%E5%87%BA-7) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-7) + - [描述](#描述-7) + - [模型参数](#模型参数-7) + - [输入](#输入-7) + - [输出](#输出-7) + - [类型约束](#类型约束-7) - [MMCVModulatedDeformConv2d](#mmcvmodulateddeformconv2d) - - [描述](#%E6%8F%8F%E8%BF%B0-8) - - [模型参数](#%E6%A8%A1%E5%9E%8B%E5%8F%82%E6%95%B0-8) - - [输入](#%E8%BE%93%E5%85%A5-8) - - [输出](#%E8%BE%93%E5%87%BA-8) - - [类型约束](#%E7%B1%BB%E5%9E%8B%E7%BA%A6%E6%9D%9F-8) + - [描述](#描述-8) + - [模型参数](#模型参数-8) + - [输入](#输入-8) + - [输出](#输出-8) + - [类型约束](#类型约束-8) @@ -68,13 +68,13 @@ #### 模型参数 -| 类型 | 参数名 | 描述 | -| ------- | ---------------- | ----------------------------------- | -| `int` | `output_height` | roi特征的输出高度 | -| `int` | `output_width` | roi特征的输出宽度 | -| `float` | `spatial_scale` | 输入检测框的缩放系数 | -| `int` | `sampling_ratio` | 输出的采样率。`0`表示使用密集采样 | -| `str` | `mode` | 池化方式。 `avg`或`max` | +| 类型 | 参数名 | 描述 | +| ------- | ---------------- | ------------------------------------------------------- | +| `int` | `output_height` | roi特征的输出高度 | +| `int` | `output_width` | roi特征的输出宽度 | +| `float` | `spatial_scale` | 输入检测框的缩放系数 | +| `int` | `sampling_ratio` | 输出的采样率。`0`表示使用密集采样 | +| `str` | `mode` | 池化方式。 `avg`或`max` | | `int` | `aligned` | 如果`aligned=1`,则像素会进行-0.5的偏移以达到更好的对齐 | #### 输入 @@ -147,12 +147,12 @@ ScatterND接收三个输入,分别为秩为r >= 1的`data`,秩为q >= 1的`i #### 模型参数 -| 类型 | 参数名 | 描述 | -| ------- | ---------------------------- | ----------------------------------------------------------------------------- | +| 类型 | 参数名 | 描述 | +| ------- | ---------------------------- | -------------------------------------------------------------------------------------------- | | `int` | `center_point_box` | 0 - 候选框的格式为\[y1, x1, y2, x2\], 1-候选框的格式为\[x_center, y_center, width, height\] | -| `int` | `max_output_boxes_per_class` | 每一类最大的输出检测框个数。默认为0,输出检测框个数等于输入候选框数 | -| `float` | `iou_threshold` | 用来判断候选框重合度的阈值,取值范围\[0, 1\]。默认值为0 | -| `float` | `score_threshold` | 用来判断候选框是否合法的阈值 | +| `int` | `max_output_boxes_per_class` | 每一类最大的输出检测框个数。默认为0,输出检测框个数等于输入候选框数 | +| `float` | `iou_threshold` | 用来判断候选框重合度的阈值,取值范围\[0, 1\]。默认值为0 | +| `float` | `score_threshold` | 用来判断候选框是否合法的阈值 | | `int` | `offset` | 检测框长宽计算方式为(x2 - x1 + offset),可选值0或1 | #### 输入 @@ -185,13 +185,13 @@ ScatterND接收三个输入,分别为秩为r >= 1的`data`,秩为q >= 1的`i #### 模型参数 -| 类型 | 参数名 | 描述 | -| -------------- | ------------------ | ------------------------------------------------------- | -| `list of ints` | `stride` | 卷积的步长 (sH, sW) | -| `list of ints` | `padding` | 输入特征填充大小 (padH, padW) | -| `list of ints` | `dilation` | 卷积核各元素间隔 (dH, dW) | -| `int` | `deformable_group` | 可变偏移量的分组 | -| `int` | `group` | 卷积分组数,`input_channel`会根据这个值被分为数个分组进行计算 | +| 类型 | 参数名 | 描述 | +| -------------- | ------------------ | --------------------------------------------------------------------------------------------- | +| `list of ints` | `stride` | 卷积的步长 (sH, sW) | +| `list of ints` | `padding` | 输入特征填充大小 (padH, padW) | +| `list of ints` | `dilation` | 卷积核各元素间隔 (dH, dW) | +| `int` | `deformable_group` | 可变偏移量的分组 | +| `int` | `group` | 卷积分组数,`input_channel`会根据这个值被分为数个分组进行计算 | | `int` | `im2col_step` | 可变卷积使用im2col计算卷积。输入与偏移量会以im2col_step为步长分块计算,减少临时空间的使用量。 | #### 输入 @@ -224,10 +224,10 @@ ScatterND接收三个输入,分别为秩为r >= 1的`data`,秩为q >= 1的`i #### 模型参数 -| 类型 | 参数名 | 描述 | -| ----- | -------------------- | ------------------------------------------------------------------------------------------------ | -| `int` | `interpolation_mode` | 计算输出使用的插值模式。(0: `bilinear` , 1: `nearest`) | -| `int` | `padding_mode` | 边缘填充模式。(0: `zeros`, 1: `border`, 2: `reflection`) | +| 类型 | 参数名 | 描述 | +| ----- | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | +| `int` | `interpolation_mode` | 计算输出使用的插值模式。(0: `bilinear` , 1: `nearest`) | +| `int` | `padding_mode` | 边缘填充模式。(0: `zeros`, 1: `border`, 2: `reflection`) | | `int` | `align_corners` | 如果`align_corners=1`,则极值(`-1`和`1`)会被当做输入边缘像素的中心点。如果`align_corners=0`,则它们会被看做是边缘像素的边缘点,减小分辨率对采样的影响 | #### 输入 @@ -258,9 +258,9 @@ ScatterND接收三个输入,分别为秩为r >= 1的`data`,秩为q >= 1的`i #### 模型参数 -| 类型 | 参数名 | 描述 | -| ----- | ----- | --------- | -| `int` | `dim` | 进行累计计算的维度 | +| 类型 | 参数名 | 描述 | +| ----- | ------ | ------------------ | +| `int` | `dim` | 进行累计计算的维度 | #### 输入 @@ -290,9 +290,9 @@ ScatterND接收三个输入,分别为秩为r >= 1的`data`,秩为q >= 1的`i #### 模型参数 -| 类型 | 参数名 | 描述 | -| ----- | ----- | --------- | -| `int` | `dim` | 进行累计计算的维度 | +| 类型 | 参数名 | 描述 | +| ----- | ------ | ------------------ | +| `int` | `dim` | 进行累计计算的维度 | #### 输入 @@ -322,8 +322,8 @@ ScatterND接收三个输入,分别为秩为r >= 1的`data`,秩为q >= 1的`i #### 模型参数 -| 类型 | 参数名 | 描述 | -| ------- | --------- | ----------------- | +| 类型 | 参数名 | 描述 | +| ------- | --------- | ---------------------------- | | `float` | `epsilon` | 用来避免除0错误。默认为1e-05 | #### 输入 @@ -356,12 +356,12 @@ ScatterND接收三个输入,分别为秩为r >= 1的`data`,秩为q >= 1的`i #### 模型参数 -| 类型 | 参数名 | 描述 | -| -------------- | ------------------- | -------------------------------------- | -| `list of ints` | `stride` | 卷积的步长 (sH, sW) | -| `list of ints` | `padding` | 输入特征填充大小 (padH, padW) | -| `list of ints` | `dilation` | 卷积核各元素间隔 (dH, dW) | -| `int` | `deformable_groups` | 可变偏移量的分组,通常置位1即可 | +| 类型 | 参数名 | 描述 | +| -------------- | ------------------- | ------------------------------------------------------------- | +| `list of ints` | `stride` | 卷积的步长 (sH, sW) | +| `list of ints` | `padding` | 输入特征填充大小 (padH, padW) | +| `list of ints` | `dilation` | 卷积核各元素间隔 (dH, dW) | +| `int` | `deformable_groups` | 可变偏移量的分组,通常置位1即可 | | `int` | `groups` | 卷积分组数,`input_channel`会根据这个值被分为数个分组进行计算 | #### 输入 diff --git a/docs/zh_cn/deployment/tensorrt_plugin.md b/docs/zh_cn/deployment/tensorrt_plugin.md index 552c015cda..0c29f14b1e 100644 --- a/docs/zh_cn/deployment/tensorrt_plugin.md +++ b/docs/zh_cn/deployment/tensorrt_plugin.md @@ -24,17 +24,17 @@ ### MMCV中的TensorRT插件列表 -| ONNX算子 | TensorRT插件 | MMCV版本 | -| :-----------------------: | :-----------------------------------------------------------------------------: | :----: | -| MMCVRoiAlign | [MMCVRoiAlign](./tensorrt_custom_ops.md#mmcvroialign) | 1.2.6 | -| ScatterND | [ScatterND](./tensorrt_custom_ops.md#scatternd) | 1.2.6 | -| NonMaxSuppression | [NonMaxSuppression](./tensorrt_custom_ops.md#nonmaxsuppression) | 1.3.0 | -| MMCVDeformConv2d | [MMCVDeformConv2d](./tensorrt_custom_ops.md#mmcvdeformconv2d) | 1.3.0 | -| grid_sampler | [grid_sampler](./tensorrt_custom_ops.md#grid-sampler) | 1.3.1 | -| cummax | [cummax](./tensorrt_custom_ops.md#cummax) | 1.3.5 | -| cummin | [cummin](./tensorrt_custom_ops.md#cummin) | 1.3.5 | -| MMCVInstanceNormalization | [MMCVInstanceNormalization](./tensorrt_custom_ops.md#mmcvinstancenormalization) | 1.3.5 | -| MMCVModulatedDeformConv2d | [MMCVModulatedDeformConv2d](./tensorrt_custom_ops.md#mmcvmodulateddeformconv2d) | master | +| ONNX算子 | TensorRT插件 | MMCV版本 | +| :-----------------------: | :-----------------------------------------------------------------------------: | :------: | +| MMCVRoiAlign | [MMCVRoiAlign](./tensorrt_custom_ops.md#mmcvroialign) | 1.2.6 | +| ScatterND | [ScatterND](./tensorrt_custom_ops.md#scatternd) | 1.2.6 | +| NonMaxSuppression | [NonMaxSuppression](./tensorrt_custom_ops.md#nonmaxsuppression) | 1.3.0 | +| MMCVDeformConv2d | [MMCVDeformConv2d](./tensorrt_custom_ops.md#mmcvdeformconv2d) | 1.3.0 | +| grid_sampler | [grid_sampler](./tensorrt_custom_ops.md#grid-sampler) | 1.3.1 | +| cummax | [cummax](./tensorrt_custom_ops.md#cummax) | 1.3.5 | +| cummin | [cummin](./tensorrt_custom_ops.md#cummin) | 1.3.5 | +| MMCVInstanceNormalization | [MMCVInstanceNormalization](./tensorrt_custom_ops.md#mmcvinstancenormalization) | 1.3.5 | +| MMCVModulatedDeformConv2d | [MMCVModulatedDeformConv2d](./tensorrt_custom_ops.md#mmcvmodulateddeformconv2d) | master | 注意 From a7cff224816f9d020dd42c13b89187e9cbdaf8fb Mon Sep 17 00:00:00 2001 From: zhouzaida Date: Tue, 7 Jun 2022 10:23:32 +0800 Subject: [PATCH 2/4] fix mdformat version to support python3.6 --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 19d2e8db5a..f4dd84c0b4 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -30,7 +30,7 @@ repos: hooks: - id: codespell - repo: https://github.com/executablebooks/mdformat - rev: 0.7.14 + rev: 0.7.9 hooks: - id: mdformat args: ["--number"] From f13a7ef56298b22a12d514cf7ebc11bd34e3433e Mon Sep 17 00:00:00 2001 From: zhouzaida Date: Thu, 9 Jun 2022 14:10:37 +0800 Subject: [PATCH 3/4] remove ruby dependency from CI --- .github/workflows/lint.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index e46942e780..7f0550681d 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -17,10 +17,6 @@ jobs: python-version: 3.7 - name: Install pre-commit hook run: | - # markdownlint requires ruby >= 2.7 - sudo apt-add-repository ppa:brightbox/ruby-ng -y - sudo apt-get update - sudo apt-get install -y ruby2.7 pip install pre-commit pre-commit install - name: Linting From 4a26f6018bbb820f07ad57df290798355c6c1d63 Mon Sep 17 00:00:00 2001 From: zhouzaida Date: Thu, 9 Jun 2022 15:33:07 +0800 Subject: [PATCH 4/4] fix invalid links --- docs/en/deployment/onnxruntime_op.md | 4 ++-- docs/zh_cn/deployment/onnxruntime_op.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/en/deployment/onnxruntime_op.md b/docs/en/deployment/onnxruntime_op.md index c384cf0da1..2778ba3448 100644 --- a/docs/en/deployment/onnxruntime_op.md +++ b/docs/en/deployment/onnxruntime_op.md @@ -107,7 +107,7 @@ Take custom operator `soft_nms` for example. 2. Add source `soft_nms.cpp` to ONNX Runtime source directory `mmcv/ops/csrc/onnxruntime/cpu/` -3. Register `soft_nms` operator in [onnxruntime_register.cpp](../../mmcv/ops/csrc/onnxruntime/cpu/onnxruntime_register.cpp) +3. Register `soft_nms` operator in [onnxruntime_register.cpp](../../../mmcv/ops/csrc/onnxruntime/cpu/onnxruntime_register.cpp) ```c++ #include "soft_nms.h" @@ -133,4 +133,4 @@ Take custom operator `soft_nms` for example. ### References - [How to export Pytorch model with custom op to ONNX and run it in ONNX Runtime](https://github.com/onnx/tutorials/blob/master/PyTorchCustomOperator/README.md) -- [How to add a custom operator/kernel in ONNX Runtime](https://github.com/microsoft/onnxruntime/blob/master/docs/AddingCustomOp.md) +- [How to add a custom operator/kernel in ONNX Runtime](https://onnxruntime.ai/docs/reference/operators/add-custom-op.html) diff --git a/docs/zh_cn/deployment/onnxruntime_op.md b/docs/zh_cn/deployment/onnxruntime_op.md index d5461eb8b0..e559930729 100644 --- a/docs/zh_cn/deployment/onnxruntime_op.md +++ b/docs/zh_cn/deployment/onnxruntime_op.md @@ -100,7 +100,7 @@ onnx_results = sess.run(None, {'input' : input_data}) 2. 在ONNX Runtime源码目录`mmcv/ops/csrc/onnxruntime/cpu/`下添加算子实现`soft_nms.cpp` -3. 在[onnxruntime_register.cpp](../../mmcv/ops/csrc/onnxruntime/cpu/onnxruntime_register.cpp)中注册实现的算子`soft_nms` +3. 在[onnxruntime_register.cpp](../../../mmcv/ops/csrc/onnxruntime/cpu/onnxruntime_register.cpp)中注册实现的算子`soft_nms` ```c++ #include "soft_nms.h" @@ -126,4 +126,4 @@ onnx_results = sess.run(None, {'input' : input_data}) ### 引用 - [How to export Pytorch model with custom op to ONNX and run it in ONNX Runtime](https://github.com/onnx/tutorials/blob/master/PyTorchCustomOperator/README.md) -- [How to add a custom operator/kernel in ONNX Runtime](https://github.com/microsoft/onnxruntime/blob/master/docs/AddingCustomOp.md) +- [How to add a custom operator/kernel in ONNX Runtime](https://onnxruntime.ai/docs/reference/operators/add-custom-op.html)