关闭

基于opencv的场景文字识别

标签: opencv图像文字识别
7640人阅读 评论(11) 收藏 举报
分类:

理论基础:基于论文 “Real-Time Scene Text Localization and Recognition”。
项目实现:opencv3.0 + tesseractgithub开源项目
开发环境:win7 64位+Visual Studio 2012。
先上一张结果图吧:
实现的结果图
在release版下,速度还是很快的,识别率还算可以。
实现的难点不在代码,因为早有人实现了,让人崩溃的是各种环境的搭建和源码的编译,下边就记录一下怎么让代码跑起来的。

tesseract的搭建

  1. 这里提供各种版本的下载
  2. 需要手动编译源码,主要是生成lib。
  3. 本人对linux不熟悉,只有去网上下载已经编译好的含有lib的版本(注意版本对应,我是用的vs2012)。大致的文件结构如下:
    文件结构

  4. 我在这里遇到了一个问题,没有包含tessdata文件夹。这里给出我的解决办法,下载tesseract安装版本,安装完后将tessdata文件夹拷贝到预编译版本(含有lib文件)的目录下。

  5. 配置环境变量,在path中添加 D:\Tesseract-Build\tesseract-vs2012-master\prebuilt\x64,在cmd中进到tesseract.exe的目录,输入tesseract-v,出现如下文字,恭喜已经成功搭建好tesseract。
    tesseract配置成功

opencv的搭建
1.opencv官网下载,下载好后直接解压即可。
2.下载opencv_contrib
3.编译opencv源码,使用工具cmake。
这里写图片描述

这里写图片描述

第一次配置后,需要手动添加extra-module的具体位置。如:D:\opencv-3.0\opencv_contrib-master\modules

这里写图片描述

添加路径完毕后再次点击configure。搜索tesseract关键字
添加Tesseract_INCLUDE_DIR 路径为 D:/Tesseract-Build/tesseract-vs2012-master/include/tesseract;
Tesseract_LIBRARY 路径为 D:/Tesseract-Build/tesseract-vs2012-master/prebuilt/x64/libtesseract302.lib;
搜索关键字lep,添加Lept_LIBRARY 路径为 D:/Tesseract-Build/tesseract-vs2012-master/prebuilt/x64/liblept168.lib
这里写图片描述

确保以上3个路径填写正确后,再起点击configure按钮
这里写图片描述

最后点击generate按钮。最后生成的目录结构如下:
这里写图片描述

4.用vs2012进行构建。找到cMakeTarget下的INSTALL,右键,选择生成(记得在debug配置下和release配置下分别生成一次)。

这里写图片描述

在这一步遇到的一些问题。
问题1:vs编译报错”无法找到tesseract/baseapi.h 文件”。
最后解决办法为修改 D:\opencv-3.0\opencv_contrib-master\modules\text\src下的precomp.hpp文件。将

ifdef HAVE_TESSERACT 
include <tesseract/baseapi.h>
include <tesseract/resultiterator.h>
endif

修改为:

ifdef HAVE_TESSERACT
include "D:/Tesseract-Build/tesseract-vs2012-master/tesseract-3.02/api/baseapi.h"
include "D:/Tesseract-Build/tesseract-vs2012-master/tesseract-3.02/ccmai/resultiterator.h"**
endif

具体路径为Tesseract源码中相应的文件夹。修改后记得重新在vs中生成一次
问题2:D:\opencv-3.0\opencv_contrib-master\modules\text\src中的erfilter.cpp文件报错。
解决办法为 打开源文件将下列代码修改
这里写图片描述

这里写图片描述

最后在重新生成,完成后多了一个install文件夹,所有的lib文件和c++头文件就在里边。

5.opencv环境变量配置。
官方说明文档
添加用户变量 OPENCV_HOME : D:\opencv-3.0\manual_build\install\x64\vc11,特别注意版本对应vs2012对应的是vc11。
添加系统变量 path : %OPENCV_HOME%\bin。

6.opencv在vs2012中的配置。
官方说明文档
新建win32控制台应用
这里写图片描述
这里写图片描述

配置64位编译环境(32位可以跳过此步骤)
这里写图片描述

在视图->其他窗口->找到 属性管理器(debug和release版本都要配置一次)
通用属性-> c/c++->附加包含目录
这里写图片描述

通用属性->连接器->常规
这里写图片描述

通用属性->连接器->输入(将D:\opencv-3.0\manual_build\install\x64\vc11\lib目录下的文件名按debug版本和release版本分别添加即可)
这里写图片描述

至此环境搭建完毕,可以运行代码了。本文主要记录了如何在windows环境下运行opencv的文字识别模块,在接下来的工作中还需深入研究论文、读懂源码。力求做出一些改进
写在儿童节的今天 –2016.6.1

0
8
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

基于深度学习的自然场景文字识别

1.1引言 传统光学字符识别主要面向高质量的文档图像,此类技术假设输入图像背景干净、字体简单且文字排布整齐,在符合要求的情况下能够达到很高的识别水平。 与文档文字识别不同,自然场景中的文字识别...
  • roslei
  • roslei
  • 2017-06-08 16:24
  • 2883

基于深度学习的自然场景文字识别

1.1引言 传统光学字符识别主要面向高质量的文档图像,此类技术假设输入图像背景干净、字体简单且文字排布整齐,在符合要求的情况下能够达到很高的识别水平。 与文档文字识别不同,自然场景中的文字识别 ---...
  • xiaofei0801
  • xiaofei0801
  • 2017-05-27 09:09
  • 7384

文字检测与识别1-MSER

文字识别在现实场景中的用途非常广泛,现在已经有很多公司将这项技术用于实际中。比如车牌识别,图片转换成文档,拍照搜题,拍照翻译等。这让很多人有了错觉,感觉文字识别的技术已经炉火纯青,可以广泛应用。在自然...
  • PeaceInMind
  • PeaceInMind
  • 2015-11-19 20:10
  • 16259

场景文字识别中英文字符图片

  • 2017-08-01 16:19
  • 4.09MB
  • 下载

Android应用开发进阶篇-场景文字识别

  • 2014-07-12 12:21
  • 3.23MB
  • 下载

[源码分析]Text-Detection-with-FRCN

Text-Detection-with-FRCN项目是基于py-faster-rcnn项目在场景文字识别领域的扩展。对Text-Detection-with-FRCN的理解过程,本质上是对py-fas...
  • u013250416
  • u013250416
  • 2017-11-21 17:58
  • 407

基于深度学习的自然场景文字识别

1.1引言 传统光学字符识别主要面向高质量的文档图像,此类技术假设输入图像背景干净、字体简单且文字排布整齐,在符合要求的情况下能够达到很高的识别水平。 与文档文字识别不同,自然场景...
  • wmsbeijing
  • wmsbeijing
  • 2017-11-22 08:39
  • 152

Android应用开发进阶篇-场景文字识别

由于研究生毕业项目需要完成一个基于移动终端的场景文字识别系统,虽然离毕业尚早,但出于兴趣的缘故,近一段抽时间完成了这样一套系统。基本的架构如下: 客户端:Android应用实现拍摄场景...
  • u010666109
  • u010666109
  • 2014-07-12 12:17
  • 2186

模式识别新研究:微软OCR两层优化提升自然场景下的文字识别精度

 模式识别新研究:微软OCR两层优化提升自然场景下的文字识别精度       摘要:OCR识别可分为两步:首先是文本检测,将文字从图片中提取出来;然后对文本进行识别。此次的突破主...
  • starzhou
  • starzhou
  • 2015-04-01 20:44
  • 973

Qt + Opencv 实现的一个简单文字识别的demo

  • 2017-12-25 12:49
  • 2.79MB
  • 下载
    个人资料
    • 访问:8773次
    • 积分:151
    • 等级:
    • 排名:千里之外
    • 原创:5篇
    • 转载:0篇
    • 译文:0篇
    • 评论:13条
    文章分类
    最新评论