Pytorch使用CRNN+CTCLoss实现OCR系统

Song • 3356 次浏览 • 0 个回复 • 2019年02月02日

卷积递归神经网络

此项目使用CNN + RNN + CTCLoss实现OCR系统,灵感来自CRNN网络。

一、用法

python ./train.py --help

二、演示

1、使用TestDataset数据生成器训练简单的OCR。训练60-100次。

python train.py --test-init True --test-epoch 10 --output-dir <path_to_folder_with_snapshots>

2、运行test来训练可视化模型。

python test.py --snapshot <path_to_folder_with_snapshots>/crnn_resnet18_10_best --visualize True

三、训练自定义数据集

1、创建数据集

  • 数据集的结构:
<root_dataset_dir>
---- data
-------- <img_filename_0>
...
-------- <img_filename_1>
---- desc.json
  • desc.json的结构:
    {
    "abc": <symbols_in_aphabet>,
    "train": [
    {
    "text": <text_on_image>
    "name": <img_filename>
    },
    ...
    {
    "text": <text_on_image>
    "name": <img_filename>
    }
    ],
    "test": [
    {
    "text": <text_on_image>
    "name": <img_filename>
    },
    ...
    {
    "text": <text_on_image>
    "name": <img_filename>
    }
    ]
    }

    2、使用自定义数据集训练简单的OCR。

    python train.pt --test-init True --test-epoch 10 --output-dir <path_to_folder_with_snapshots> --data-path <path_to_custom_dataset>

    3、运行test来训练可视化模型。

python test.py --snapshot <path_to_folder_with_snapshots>/crnn_resnet18_10_best --visualize True --data-path <path_to_custom_dataset>

四、依赖

五、相关文章

项目地址:BelBES/crnn-pytorch


原创文章,转载请注明 :Pytorch使用CRNN+CTCLoss实现OCR系统 - pytorch中文网
原文出处: https://ptorch.com/news/233.html
问题交流群 :168117787
提交评论
要回复文章请先登录注册
用户评论
  • 没有评论
Pytorch是什么?关于Pytorch! pytorch v1.0.1发布,无重大变化,主要修复bug以及性能优化