MMOCR 是一个基于 PyTorch 和 MMDetection 的开源工具箱,支持众多 OCR 相关的模型,涵盖了文本检测、文本识别以及关键信息提取等多个主要方向。它还支持了大多数流行的学术数据集,并提供了许多实用工具帮助用户对数据集和模型进行多方面的探索和调试,助力优质模型的产出和落地。它具有以下特点:
-
全流程,多模型:支持了全流程的 OCR 任务,包括文本检测、文本识别及关键信息提取的各种最新模型。
-
模块化设计:MMOCR 的模块化设计使用户可以按需定义及复用模型中的各个模块。
-
实用工具众多:MMOCR 提供了全面的可视化工具、验证工具和性能评测工具,帮助用户对模型进行排错、调优或客观比较。
-
由 OpenMMLab 强力驱动:与家族内的其它算法库一样,MMOCR 遵循着 OpenMMLab 严谨的开发准则和接口约定,极大地降低了用户切换各算法库时的学习成本。同时,MMOCR 也可以非常便捷地与家族内其他算法库跨库联动,从而满足用户跨领域研究和落地的需求。
GPU环境下软件安装
MMOCR代码下载版本1.0.1
步骤1
conda create -n open-mmlab python=3.8 pytorch=1.10 cudatoolkit=11.3 torchvision -c pytorch -y
conda activate open-mmlab
pip3 install openmim
步骤2 :安装其他依赖
mim install mmengine
mim install mmcv
mim install mmdet=="3.1.0"
此版本如果不指定mmdet版本会报错,
Traceback (most recent call last):
File "tools/infer.py", line 4, in <module>
from mmocr.apis.inferencers import MMOCRInferencer
File "/opt/gaohuiming/mmocr-main/mmocr/__init__.py", line 49, in <module>
assert (mmdet_version >= digit_version(mmdet_minimum_version)
AssertionError: MMDetection 3.3.0 is incompatible with MMOCR 1.0.1. Please use MMDetection >= 3.0.0rc5, < 3.2.0 instead.
步骤3
git clone https://github.com/open-mmlab/mmocr.git
cd mmocr
pip install -v -e .
执行步骤3报错:
note: This is an issue with the package mentioned above, not pip.
解决方案参考文章:
版本依赖
调用推理代码
python tools/infer.py demo/demo_text_ocr.jpg --det DBNet --rec CRNN --show --print-result
输出识别结果
# 识别结果
{'predictions': [{'rec_texts': ['cbanks', 'docecea', 'grouf', 'pwate', 'chobnsonsg', 'soxee', 'oeioh', 'c', 'sones', 'lbrandec', 'sretalg', '11', 'to8', 'round', 'sale', 'year',
'ally', 'sie', 'sall'], 'rec_scores': [...], 'det_polygons': [...], 'det_scores':
[...]}]}