旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)

1、论文:

https://arxiv.org/pdf/1703.01086.pdf

Arbitrary-Oriented Scene Text Detection viaRotation Proposals

Jianqi Ma, Weiyuan Shao, Hao Ye, Li Wang, Hong Wang, Yingbin Zheng, Xiangyang Xue

摘要 - 本文介绍了一种新颖的基于旋转的自然场景图像中任意导向文本检测框架。 我们提出了旋转区域提议网络(RRPN),其目的是生成带有文本方向角度信息的倾斜提案。 角度信息然后适用于边界框回归,以使得提案在方向上更准确地适合文本区域。 提出旋转兴趣区域(RRoI)池层以将任意导向的提议投影到文本区域分类器的特征映射。 整个框架建立在基于区域提议的架构之上,与以前的文本检测系统相比,该架构可确保任意导向的文本检测的计算效率。 我们在三个真实世界场景文本检测数据集上使用基于旋转的框架进行实验,并证明其在先前方法的有效性和效率方面的优势。

索引术语 - 场景文本检测,任意定向,旋转方案。


2、全文翻译

https://www.jianshu.com/p/379dede5979c

3、git地址

https://github.com/mjq11302010044/RRPN#demo

4、使用

  • 使用环境ubuntu16.04
  • git代码中需要配置环境,为了不影响其他环境的使用,在这里先开启一个新的虚拟环境:
  1. $ virtualenv --system-site-package -p python3.5 rrpn-python3.5
  2. $ sudo apt-get install python3-pip python3-dev python-virtualenv
  3. $ source  ~/rrpn-python3.5/bin/activate

旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)_第1张图片

旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)_第2张图片


  • 开启python并克隆git代码

旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)_第3张图片

旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)_第4张图片

  • 从虚拟环境进入RRPN-ROOT/lib目录下进行make

旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)_第5张图片

  • 在make过程中出现了一下的报错,分别进行处理
1、在虚拟环境中安装cython:
pip install cython

2、在虚拟环境中安装numpy: 

pip install numpy

3、AttributeError: 'dict' object has no attribute 'iteritems'


进入setup代码当中,将iteritems,修改为items
 
  
  • Build Caffe and pycaffe
cd $RRPN_ROOT/caffe-fast-rcnn
make -j4 && make pycaffe

出现问题,没有找到makefile.config

回到软件要求,需要安装caffe和pycaffe


5、安装caffe和pycaffe

官网:http://caffe.berkeleyvision.org/installation.html#compilation

教程:https://blog.csdn.net/yhaolpz/article/details/71375762

  • 安装依赖包
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler

sudo apt-get install --no-install-recommends libboost-all-dev

sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev

sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

sudo apt-get install git cmake build-essential
  • 验证依赖包是否成功
 sudo apt-get install git cmake build-essential 
旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)_第6张图片

  • 由于不是第一次安装使用,只是在虚拟环境中安装caffe,所以cuda8.0,cudnn,opencv都已经安装好了。
  • 直接继续caffe安装,终端进入文件夹caffe-fast-rcnn目录下
  • 将 Makefile.config.example 文件复制一份并更名为 Makefile.config 
sudo cp Makefile.config.example Makefile.config
  • 然后修改 Makefile.config 文件,在 caffe 目录下打开该文件
sudo gedit Makefile.config
  • 这时会打开makefile.config的文本文件,修改文件中的内容
# In your Makefile.config, make sure to have this line uncommented
WITH_PYTHON_LAYER := 1
# Unrelatedly, it's also recommended that you use CUDNN
USE_CUDNN := 1

6、回到步骤4继续编译

  • Build Caffe and pycaffe
cd $RRPN_ROOT/caffe-fast-rcnn
make -j4 && make pycaffe
旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)_第7张图片

  • 下载VGG16模型,并放入RRPN_ROOT/data/faster_rcnn_models文件夹下

下载地址: https://drive.google.com/open?id=0B5rKZkZodGIsV2RJUjVlMjNOZkE

我是直接打开网页下载后移动到文件夹当中的。


7、测试demo

cd $RRPN_ROOT
python ./tools/rotation_demo.py

结果出错,于是从pycharm打开代码查看具体情况,之后将在pycharm中进行操作。


8、pycharm配置环境

  • 在python项目中设置虚拟环境
  1. 菜单栏File-->settings打开,图1
  2. 选择Project:RRPN-ROOT-->Project Interpreter-->点击最优侧的红色方框中的小齿轮按钮,图2
  3. 打开Project Interpreter界面-->第一使用虚拟环境是没有被配置的,即列表栏中没有前面新建的rrpn-pyrhon-->点击右边的加号按钮,图2
  4. 打开Add Local Python Interpreter界面-->选择Virtualenv Enviroment-->选择Exsting enviroment-->点击Interpreter框右侧的'...'按钮-->找到虚拟环境创建的文件夹-->打开文件夹,选择rrpn-python3.5/bin/python3.5-->ok退出该界面,图3。
  5. Project Interpreter界面中就出现了Python3.5(rrpn-python3.5)的环境,选择这个环境。
  • 旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)_第8张图片

    旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)_第9张图片

    旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)_第10张图片

       旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)_第11张图片

  • 打开rotation_demo.py的代码页面,发现很多包都无法读取,接下来开始导包

旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)_第12张图片

  • 导包
    1、from utils.timer import Timer
pip install utils

    2、



你可能感兴趣的:(旋转文字检测的git使用(Arbitrary-Oriented Scene Text Detection via Rotation Proposals))