专栏名称: 机器学习研究会
机器学习研究会是北京大学大数据与机器学习创新中心旗下的学生组织,旨在构建一个机器学习从事者交流的平台。除了及时分享领域资讯外,协会还会举办各种业界巨头/学术神牛讲座、学术大牛沙龙分享会、real data 创新竞赛等活动。
目录
相关文章推荐
宝玉xp  ·  ChatGPT 新的 Think 按钮就是 ... ·  4 小时前  
新智元  ·  DeepSeek独立发现o1核心思路,Ope ... ·  昨天  
机器之心  ·  2025年,当我们在谈论Agent的时候在讨 ... ·  3 天前  
西部财经融媒  ·  DeepSeek超越ChatGPT,中美科技 ... ·  3 天前  
西部财经融媒  ·  DeepSeek超越ChatGPT,中美科技 ... ·  3 天前  
爱可可-爱生活  ·  晚安~ #晚安# -20250126224457 ·  4 天前  
51好读  ›  专栏  ›  机器学习研究会

【推荐】caffe_ocr - 主流ocr算法研究实验性的项目,目前实现了CNN+BLSTM+CTC架构

机器学习研究会  · 公众号  · AI  · 2017-10-28 23:01

正文



点击上方“机器学习研究会”可以订阅
摘要
 

转自:爱可可-爱生活

简介

caffe_ocr是一个对现有主流ocr算法研究实验性的项目,目前实现了CNN+BLSTM+CTC的识别架构,并在数据准备、网络设计、调参等方面进行了诸多的实验。代码包含了对lstm、warp-ctc、multi-label等的适配和修改,还有基于inception、restnet、densenet的网络结构。代码是针对windows平台的,linux平台下只需要合并相关的修改到caffe代码中即可。

caffe代码修改

 1. data layer增加了对multi-label的支持
 2. lstm使用的是junhyukoh实现的lstm版本(lstm_layer_Junhyuk.cpp/cu),原版不支持变长输入的识别。输入的shape由(TxN)xH改为TxNxH以适应ctc的输入结构。
 3. WarpCTCLossLayer去掉了对sequence indicators依赖(训练时CNN输出的结构是固定的),简化了网络结构(不需要sequence indicator layer)。
 4. densenet修改了对Reshape没有正确响应的bug,实现了对变长输入预测的支持。
 5. 增加transpose_layer、reverse_layer,实现对CNN feature map与lstm输入shape的适配

编译

  1. 安装opencv,boost,cuda,其它依赖库在3rdparty下(包含debug版的lib:http://pan.baidu.com/s/1nvIFojJ)
  2. caffe-vsproj下为vs2015的工程,配置好依赖库的路径即可编译,编译后会在tools_bin目录下生成训练程序caffe.exe
  3. 相关的依赖dll可从百度网盘下载(http://pan.baidu.com/s/1boOiscJ)

实验

  1. 数据准备
     (1)VGG Synthetic Word Dataset
     (2)合成的中文数据(http://pan.baidu.com/s/1c2fHpvE)

      数据是利用中文语料库(新闻+文言文),通过字体、大小、灰度、模糊、透视、拉伸等变化随机生成的。

  •   字典中包含汉字、标点、英文、数字共5990个字符(语料字频统计,全角半角合并)

  •   每个样本固定10个字符,字符随机截取自语料库中的句子

  •   图片分辨率统一为280x32

  •   共生成约360万张图片,按9:1分成训练集、验证集(暂时没有分测试集)

  1. 网络设计
      网络结构在examples/ocr目录下

  2. 主要实验结果

  • 英文数据集 VGG Synthetic Word Dataset:


链接:

https://github.com/senlinuc/caffe_ocr


原文链接:

https://m.weibo.cn/1402400261/4167772357734940

“完整内容”请点击【阅读原文】
↓↓↓