The Street View House Numbers (SVHN) Dataset是街景字符的数据集。该数据集用于modern-day map making。街景字符转录是字符序列识别问题。针对图片序列识别问题传统思路是定位、分割、识别,而Google2014年的论文《Multi-digit Number Recognition from Street View Imagery using Deep Convolutional Neural Networks》提出了基于深度卷积神经网络的方法。

问题描述:

  1. 图片中的字符串序列长度不定但不超过5个字符,可以将赛题抽象为一个定长字符识别问题,待识别字符序列为LXXXXX,其中
  • 每个X的取值范围为[0,1,2,3,4,5,6,7,8,9,空字符]
  • L代表字符串非空字符长度,取值范围[0,1,2,3,4,5,’>5’]
  1. 另,图片中不仅包含字符序列,还有门框等干扰信息,为了提高准确率可根据json文件提供的数字框位置裁剪图片,如:
    定长字符识别-街景字符编码SVHN定长字符识别-街景字符编码SVHN
  2. 另,由于街景字符对应门牌编号,字符串序列的任意错误直接导致地图导航错误,因此街景字符识别以整体识别准确率为评价指标,整体准确率越高则模型性能越佳。
    定长字符识别-街景字符编码SVHN

解决方案:

定长字符识别-街景字符编码SVHN定长字符识别的一种解决方案是直接对编码图片进行多分类操作(Multi-CNN):

  • 模型的输入是1281283128*128*3的图片,经过一系列的CNN层进行特征提取,变成了一个含有4096个特征的向量H
  • 根据这4096个特征,分别经过6个Softmax层,分别对各个字符串进行分类(分别对5个X字符进行11个类别的分类以及1个L字符进行6个类别的分类。)
  • 将6个分类loss求和训练即可。
    这种方法思路简单,模型仅包含卷积层和全连接层,模型收敛快;但这种思路是将每个字符单独进行分类的,所以没有考虑到字符与字符之间的关系,在精度上有一些欠缺。比如第一个字符串代表长度,与后面位数的字符串存在关联。

参考

相关文章: