mirror of https://github.com/open-mmlab/mmocr.git
85 lines
3.1 KiB
Markdown
85 lines
3.1 KiB
Markdown
# 开始
|
|
|
|
在这个指南中,我们将介绍一些常用的命令,来帮助你熟悉 MMOCR。我们同时还提供了[notebook](https://github.com/open-mmlab/mmocr/blob/main/demo/MMOCR_Tutorial.ipynb) 版本的代码,可以让您快速上手 MMOCR。
|
|
|
|
## 安装
|
|
|
|
查看[安装指南](install.md),了解完整步骤。
|
|
|
|
## 数据集准备
|
|
|
|
MMOCR 支持许多种类数据集,这些数据集根据其相应任务的类型进行分类。可以在以下部分找到它们的准备步骤:[检测数据集](datasets/det.md)、[识别数据集](datasets/recog.md)、[KIE 数据集](datasets/kie.md)和 [NER 数据集](datasets/ner.md)。
|
|
|
|
## 使用预训练模型进行推理
|
|
|
|
下面通过一个简单的命令来演示端到端的识别:
|
|
|
|
```shell
|
|
python mmocr/utils/ocr.py demo/demo_text_ocr.jpg --print-result --imshow
|
|
```
|
|
|
|
其检测结果将被打印出来,并弹出一个新窗口显示结果。更多示例和完整说明可以在[示例](demo.md)中找到。
|
|
|
|
## 训练
|
|
|
|
### 小数据集训练
|
|
|
|
在`tests/data`目录下提供了一个用于训练演示的小数据集,在准备学术数据集之前,它可以演示一个初步的训练。
|
|
|
|
例如:用 `seg` 方法和小数据集来训练文本识别任务,
|
|
|
|
```shell
|
|
python tools/train.py configs/textrecog/seg/seg_r31_1by16_fpnocr_toy_dataset.py --work-dir seg
|
|
```
|
|
|
|
用 `sar` 方法和小数据集训练文本识别,
|
|
|
|
```shell
|
|
python tools/train.py configs/textrecog/sar/sar_r31_parallel_decoder_toy_dataset.py --work-dir sar
|
|
```
|
|
|
|
### 使用学术数据集进行训练
|
|
|
|
按照说明准备好所需的学术数据集后,最后要检查模型的配置是否将 MMOCR 指向正确的数据集路径。假设在 ICDAR2015 数据集上训练 DBNet,部分配置如 `configs/_base_/det_datasets/icdar2015.py` 所示:
|
|
|
|
```python
|
|
dataset_type = 'IcdarDataset'
|
|
data_root = 'data/icdar2015'
|
|
train = dict(
|
|
type=dataset_type,
|
|
ann_file=f'{data_root}/instances_training.json',
|
|
img_prefix=f'{data_root}/imgs',
|
|
pipeline=None)
|
|
test = dict(
|
|
type=dataset_type,
|
|
ann_file=f'{data_root}/instances_test.json',
|
|
img_prefix=f'{data_root}/imgs',
|
|
pipeline=None)
|
|
train_list = [train]
|
|
test_list = [test]
|
|
```
|
|
|
|
这里需要检查数据集路径 `data/icdar2015` 是否正确. 然后可以启动训练命令:
|
|
|
|
```shell
|
|
python tools/train.py configs/textdet/dbnet/dbnet_r18_fpnc_1200e_icdar2015.py --work-dir dbnet
|
|
```
|
|
|
|
想要了解完整的训练参数配置可以查看 [Training](training.md)了解。
|
|
|
|
## 测试
|
|
|
|
假设我们完成了 DBNet 模型训练,并将最新的模型保存在 `dbnet/latest.pth`。则可以使用以下命令,及`hmean-iou`指标来评估其在测试集上的性能:
|
|
|
|
```shell
|
|
python tools/test.py configs/textdet/dbnet/dbnet_r18_fpnc_1200e_icdar2015.py dbnet/latest.pth --eval hmean-iou
|
|
```
|
|
|
|
还可以在线评估预训练模型,命令如下:
|
|
|
|
```shell
|
|
python tools/test.py configs/textdet/dbnet/dbnet_r18_fpnc_1200e_icdar2015.py https://download.openmmlab.com/mmocr/textdet/dbnet/dbnet_r18_fpnc_sbn_1200e_icdar2015_20210329-ba3ab597.pth --eval hmean-iou
|
|
```
|
|
|
|
有关测试的更多说明,请参阅 [测试](testing.md).
|