multi-digit街景识别代码到中文车牌识别的迁移

Posted annbless

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了multi-digit街景识别代码到中文车牌识别的迁移相关的知识,希望对你有一定的参考价值。

背景论文:

Multi-digit Number Recognition from Street View Imagery using Deep Convolutional Neural Networks

(https://arxiv.org/abs/1312.6082)

英文车牌迁移参考:http://matthewearl.github.io/2016/05/06/cnn-anpr/

上述博文所描述过程大致为:

  1. 利用gen.py生成1000张训练图片,图片组成为一个生成的车牌,加上随机的背景,并且添加上高斯噪声,旋转等,并且使用0,1标注该车牌是否完全包含在图片中(位置,大小等);
  2. 利用生成的1000张图片进行训练,此处可能需要进行的修改是(视tensorflow版本决定是不是需要修改)即添加logits和labels(如图):技术分享图片
  3. 窗口思想,利用滑动窗口在一幅尺寸较大的图当中截取合适的部分来应对尺寸变换。

 

训练结束后进行评估,此代码结果跑了两张从网上的图片,似乎效果还不错:

 技术分享图片技术分享图片

 

 

既然效果还不错,那可以试着迁移到中文车牌上了,

修改后的代码地址:

 

代码修改中所遇到的最主要问题是编码问题!在Ubuntu下默认的编码是ASCII,windows下默认编码是gbk,所以在代码修改过程中,

为了输出中文,需要

  1. 对字符串进行utf-8编码的转换。
  2. 对中文的读入和输出也需要对字符串的编码方式进行转换。由于python3中不再对str支持decode和encode操作,所以将文件的读入输出由imread和imwrite修改成imencode和imdecode。

之后的训练过程和之前并没有什么差别。具体修改见项目代码。

以上是关于multi-digit街景识别代码到中文车牌识别的迁移的主要内容,如果未能解决你的问题,请参考以下文章

车牌OCR识别的流程,手机车牌识别

车牌识别到人脸识别的图像识别路程

私有化部署车牌识别的好处

移动端车牌识别与云端车牌识别的区别

支持视频流识别的移动端(AndroidiOS)车牌识别

车牌识别的移动端与PC端比较