zoukankan      html  css  js  c++  java
  • 文字识别:CRNN

    知乎:一文读懂CRNN+CTC文本行识别 (详解 CTC loss)

    来自: https://zhuanlan.zhihu.com/p/43534801

    代码:https://github.com/bai-shang/OCR_TF_CRNN_CTC

    文字检测主要解决的问题是哪里有文字,文字的范围有多大,即定位文本行的所在位置和范围及其布局。

    文本识别是在文本行定位的基础上,对文本行内容进行识别,将图像中的文本信息转化为文字信息。文字识别主要解决的问题是每个文字是什么。

    所以一般来说,从自然场景图片中进行文本行识别,需要包括三个步骤:

    • 图像预处理
    • 文字检测定位文本行区域
    • 对定位好的文本行图片进行识别

    图1 文字识别的步骤

    本文的重点是如何对已经定位好的文本行图片进行识别。

    常用文本行识别算法主要有两个框架:

    • CNN+RNN+CTC(CRNN+CTC)
    • CNN+Seq2Seq+Attention

    CTC总结

    CTC是一种Loss计算方法,用CTC代替Softmax Loss,训练样本无需对齐。

    CTC特点:

    • 同时引入blank字符,解决有些位置没有字符的问题
    • 通过递推,快速计算梯度

    ......

    CRNN+CTC总结

    这篇文章的核心,就是将CNN/LSTM/CTC三种方法结合:

    • 首先CNN提取图像卷积特征
    • 然后LSTM进一步提取图像卷积特征中的序列特征
    • 最后引入CTC解决训练时字符无法对齐的问题

    提供了一种end2end文本行图片算算法。

  • 相关阅读:
    Python KNN算法
    Python TF-IDF计算100份文档关键词权重
    Python 结巴分词
    Python 将pdf转换成txt(不处理图片)
    Python小爬虫-自动下载三亿文库文档
    Kubuntu麦克风音频无声音
    adb常用命令
    Ubuntu下adb的安装
    Wamp安装使用+Git for Windows
    TensorFlow使用记录 (九): 模型保存与恢复
  • 原文地址:https://www.cnblogs.com/Allen-rg/p/10019392.html
Copyright © 2011-2022 走看看