Skip to content

Commit

Permalink
minor fix
Browse files Browse the repository at this point in the history
  • Loading branch information
Wuziyi616 committed Jul 29, 2021
1 parent 5dbdfba commit 3042153
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 22 deletions.
2 changes: 1 addition & 1 deletion docs/tutorials/config.md
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,7 @@ train_pipeline = [ # Training pipeline, refer to mmdet3d.datasets.pipelines for
flip_ratio_xz=0.5), # Probability of being flipped along xz plane
dict(
type='IndoorGlobalRotScale', # Augmentation pipeline that rotate and scale points and 3d boxes, refer to mmdet3d.datasets.pipelines.indoor_augment for more details
shift_height=True, # Whether the loaded points use shift_height attribute
shift_height=True, # Whether the loaded points use `shift_height` attribute
rot_range=[-0.027777777777777776, 0.027777777777777776], # Range of rotation
scale_range=None), # Range of scale
dict(
Expand Down
42 changes: 21 additions & 21 deletions docs_zh-CN/tutorials/config.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@

## 配置文件结构

`config/_base_` 文件夹下有4个基本组件类型,分别是:数据集 (dataset),模型 (model),训练策略 (schedule) 和运行时的默认设置 (default runtime)。
`config/_base_` 文件夹下有 4 个基本组件类型,分别是:数据集 (dataset),模型 (model),训练策略 (schedule) 和运行时的默认设置 (default runtime)。
通过从上述每个文件夹中选取一个组件进行组合,许多方法如 SECOND、PointPillars、PartA2 和 VoteNet 都能够很容易地构建出来。
`_base_` 下的组件组成的配置,被我们称为 _原始配置 (primitive)_

对于同一文件夹下的所有配置,推荐**只有一个**对应的 _原始配置_ 文件,所有其他的配置文件都应该继承自这个 _原始配置_ 文件,这样就能保证配置文件的最大继承深度为3
对于同一文件夹下的所有配置,推荐**只有一个**对应的 _原始配置_ 文件,所有其他的配置文件都应该继承自这个 _原始配置_ 文件,这样就能保证配置文件的最大继承深度为 3

为了便于理解,我们建议贡献者继承现有方法。
例如,如果在 PointPillars 的基础上做了一些修改,用户首先可以通过指定 `_base_ = ../pointpillars/hv_pointpillars_fpn_sbn-all_4x8_2x_nus-3d.py` 来继承基础的 PointPillars 结构,然后修改配置文件中的必要参数以完成继承。
Expand All @@ -29,20 +29,20 @@

`{xxx}` 是被要求填写的字段而 `[yyy]` 是可选的。

- `{model}`:模型种类,例如 `hv_pointpillars` (Hard Voxelization PointPillars)、`VoteNet` 等。
- `[model setting]`:某些模型的特殊设定。
- `{backbone}`: 主干网络种类例如 `regnet-400mf``regnet-1.6gf` 等。
- `{neck}`:模型颈部的种类包括 `fpn``secfpn` 等。
- `[norm_setting]`:如无特殊声明,默认使用 `bn` (Batch Normalization),其他类型可以有 `gn` (Group Normalization)、`sbn` (Synchronized Batch Normalization) 等。
`gn-head`/`gn-neck` 表示 GN 仅应用于网络的头部或颈部,而 `gn-all` 表示 GN 用于整个模型,例如主干网络、颈部和头部。
- `[misc]`:模型中各式各样的设置/插件,例如 `strong-aug` 意味着在训练过程中使用更强的数据增广策略。
- `[batch_per_gpu x gpu]`:每个 GPU 的样本数和 GPU 数量,默认使用 `4x8`
- `{schedule}`:训练方案,选项是 `1x``2x``20e` 等。
`1x``2x` 分别代表训练12和24轮
`20e` 在级联模型中使用,表示训练20轮
对于 `1x`/`2x`初始学习率在第8/16和第11/22轮衰减10倍;对于 `20e`初始学习率在第16和第19轮衰减10倍
- `{dataset}`:数据集,例如 `nus-3d``kitti-3d``lyft-3d``scannet-3d``sunrgbd-3d` 等。
当某一数据集存在多种设定时,我们也标记下所使用的类别数量,例如 `kitti-3d-3class``kitti-3d-car` 分别意味着在 KITTI 的所有三类上和单独车这一类上进行训练。
- `{model}`:模型种类,例如 `hv_pointpillars` (Hard Voxelization PointPillars)、`VoteNet` 等。
- `[model setting]`:某些模型的特殊设定。
- `{backbone}`: 主干网络种类例如 `regnet-400mf``regnet-1.6gf` 等。
- `{neck}`:模型颈部的种类包括 `fpn``secfpn` 等。
- `[norm_setting]`:如无特殊声明,默认使用 `bn` (Batch Normalization),其他类型可以有 `gn` (Group Normalization)、`sbn` (Synchronized Batch Normalization) 等。
`gn-head`/`gn-neck` 表示 GN 仅应用于网络的头部或颈部,而 `gn-all` 表示 GN 用于整个模型,例如主干网络、颈部和头部。
- `[misc]`:模型中各式各样的设置/插件,例如 `strong-aug` 意味着在训练过程中使用更强的数据增广策略。
- `[batch_per_gpu x gpu]`:每个 GPU 的样本数和 GPU 数量,默认使用 `4x8`
- `{schedule}`:训练方案,选项是 `1x``2x``20e` 等。
`1x``2x` 分别代表训练 12 和 24 轮
`20e` 在级联模型中使用,表示训练 20 轮
对于 `1x`/`2x`初始学习率在第 8/16 和第 11/22 轮衰减 10 倍;对于 `20e`初始学习率在第 16 和第 19 轮衰减 10 倍
- `{dataset}`:数据集,例如 `nus-3d``kitti-3d``lyft-3d``scannet-3d``sunrgbd-3d` 等。
当某一数据集存在多种设定时,我们也标记下所使用的类别数量,例如 `kitti-3d-3class``kitti-3d-car` 分别意味着在 KITTI 的所有三类上和单独车这一类上进行训练。

## 弃用的 train_cfg/test_cfg

Expand Down Expand Up @@ -215,7 +215,7 @@ train_pipeline = [ # 训练流水线,更多细节请参考 mmdet3d.datasets.p
rot_range=[-0.027777777777777776, 0.027777777777777776], # 旋转角范围
scale_range=None), # 缩放尺寸范围
dict(
type='DefaultFormatBundle3D', # 默认格式捆以收集读取的所有数据,更多细节请参考 mmdet3d.datasets.pipelines.formating
type='DefaultFormatBundle3D', # 默认格式打包以收集读取的所有数据,更多细节请参考 mmdet3d.datasets.pipelines.formating
class_names=('cabinet', 'bed', 'chair', 'sofa', 'table', 'door',
'window', 'bookshelf', 'picture', 'counter', 'desk',
'curtain', 'refrigerator', 'showercurtrain', 'toilet',
Expand All @@ -236,7 +236,7 @@ test_pipeline = [ # 测试流水线,更多细节请参考 mmdet3d.datasets.pi
dict(type='IndoorPointSample', # 室内点采样,更多细节请参考 mmdet3d.datasets.pipelines.indoor_sample
num_points=40000), # 采样的点的数量
dict(
type='DefaultFormatBundle3D', # 默认格式捆以收集读取的所有数据,更多细节请参考 mmdet3d.datasets.pipelines.formating
type='DefaultFormatBundle3D', # 默认格式打包以收集读取的所有数据,更多细节请参考 mmdet3d.datasets.pipelines.formating
class_names=('cabinet', 'bed', 'chair', 'sofa', 'table', 'door',
'window', 'bookshelf', 'picture', 'counter', 'desk',
'curtain', 'refrigerator', 'showercurtrain', 'toilet',
Expand All @@ -251,7 +251,7 @@ eval_pipeline = [ # 模型验证或可视化所使用的流水线,更多细
load_dim=6, # 读取的点的维度
use_dim=[0, 1, 2]), # 使用所读取点的哪些维度
dict(
type='DefaultFormatBundle3D', # 默认格式捆以收集读取的所有数据,更多细节请参考 mmdet3d.datasets.pipelines.formating
type='DefaultFormatBundle3D', # 默认格式打包以收集读取的所有数据,更多细节请参考 mmdet3d.datasets.pipelines.formating
class_names=('cabinet', 'bed', 'chair', 'sofa', 'table', 'door',
'window', 'bookshelf', 'picture', 'counter', 'desk',
'curtain', 'refrigerator', 'showercurtrain', 'toilet',
Expand Down Expand Up @@ -457,9 +457,9 @@ model = dict(

### 使用配置文件里的中间变量

配置文件里会使用一些中间变量,例如数据集中的 `train_pipeline/test_pipeline`
配置文件里会使用一些中间变量,例如数据集中的 `train_pipeline`/`test_pipeline`
值得注意的是,当修改子配置文件中的中间变量后,用户还需再次将其传入相应字段。
例如,我们想在训练和测试中,对 PointPillars 使用多尺度策略 (multi scale strategy),那么 `train_pipeline/test_pipeline` 就是我们想要修改的中间变量。
例如,我们想在训练和测试中,对 PointPillars 使用多尺度策略 (multi scale strategy),那么 `train_pipeline`/`test_pipeline` 就是我们想要修改的中间变量。

```python
_base_ = './nus-3d.py'
Expand Down

0 comments on commit 3042153

Please sign in to comment.