【问题标题】:TensorFlow - Text recognition in image [closed]TensorFlow - 图像中的文本识别 [关闭]
【发布时间】:2017-02-15 04:56:59
【问题描述】:

我是 TensorFlow 和深度学习的新手。 我正在尝试识别自然场景图像中的文本。我曾经使用过 OCR,但我想使用深度学习。文本始终具有相同的格式: ABC-DEF 88:88

我所做的是识别每个字符/数字。这意味着我在每个字符周围裁剪了图像(所以每张图片给了我 10 个字符)来构建我的训练和测试集,并且他们构建了两个 conv 神经网络。所以我的训练集是一组字符图片,标签只是字符/数字。

但我想更进一步。我想做的只是给出完整的图片并输出整个文本(不是我之前模型中的一个字符)。

提前感谢您的帮助。

【问题讨论】:

    标签: python tensorflow deep-learning text-recognition


    【解决方案1】:

    困难在于您不知道文本在哪里。解决方法是,给定一张图片,你需要使用滑动窗口来裁剪图片的不同部分,然后使用分类器来判断裁剪区域是否有文字。如果是这样,请使用您的字符/数字识别器来判断它们到底是哪些字符/数字。

    所以你需要训练另一个分类器:给定一张裁剪后的图片(裁剪后的图片大小应该比你的文本区域略大),判断里面是否有文字。

    只需构建训练集(正样本是文本区域,负样本是从大图像中随机裁剪的其他区域)并训练它~

    【讨论】:

    • 谢谢,但是这个分类器(滑动窗口)必须是一个卷积网络吗?训练集必须包含多字符文本区域还是仅包含一个字符?
    • 如果您使用 TensorFlow、Caffe 或其他一些深度学习框架,convnet 很好且易于实现,但在检测阶段可能会很慢(因为您需要将窗口滑过整个图像,每个图像有许多窗口)。其他模型也适用,例如具有 Haar-like 特征的 boosting 方法(通过谷歌“haar like feature adaboost cascade”你可以找到很多关于人脸识别的资料)。
    • @alexattia 训练集最好包含多个字符。通过这样做,您可以获得更大的窗口并减少误报。如果面积太小,可能有些其他的东西会被报成字母/数字。比如说,该算法可能会将一些垂直边缘作为数字“1”,这很糟糕。
    • 好的,我试试!你觉得这个matthewearl.github.io/2016/05/06/cnn-anpr 怎么样?它只包含一个卷积网络,而不是您所说的两种算法(检测 + 分类)
    • 你上面提到的项目很棒而且高度相关!尝试重用它,而不是从头开始构建一个新的!
    猜你喜欢
    • 1970-01-01
    • 2016-04-14
    • 2019-07-06
    • 2013-09-01
    • 2014-03-09
    • 2010-10-18
    • 2018-10-08
    • 2011-01-05
    • 2014-10-09
    相关资源
    最近更新 更多