All Projects → mjq11302010044 → Rrpn

mjq11302010044 / Rrpn

Licence: other
Source code of RRPN ---- Arbitrary-Oriented Scene Text Detection via Rotation Proposals

Projects that are alternatives of or similar to Rrpn

Mit ocw linear algebra 18 06
IPython notebooks on Gilbert Strang's MIT course on linear algebra (18.06)
Stars: ✭ 403 (-1.23%)
Mutual labels:  jupyter-notebook
Kaggle
Codes for Kaggle Competitions
Stars: ✭ 404 (-0.98%)
Mutual labels:  jupyter-notebook
Deep learning nlp
Keras, PyTorch, and NumPy Implementations of Deep Learning Architectures for NLP
Stars: ✭ 407 (-0.25%)
Mutual labels:  jupyter-notebook
Ml Powered Applications
Companion repository for the book Building Machine Learning Powered Applications
Stars: ✭ 402 (-1.47%)
Mutual labels:  jupyter-notebook
Simgan Captcha
Solve captcha without manually labeling a training set
Stars: ✭ 405 (-0.74%)
Mutual labels:  jupyter-notebook
Gif
✨ The extension for Altair, matplotlib, and Plotly animations
Stars: ✭ 406 (-0.49%)
Mutual labels:  jupyter-notebook
Coursera Stanford Ml Python
Coursera/Stanford Machine Learning course assignments in python
Stars: ✭ 403 (-1.23%)
Mutual labels:  jupyter-notebook
Computer Vision
Programming Assignments and Lectures for Stanford's CS 231: Convolutional Neural Networks for Visual Recognition
Stars: ✭ 408 (+0%)
Mutual labels:  jupyter-notebook
Pycon 2016 Tutorial
Machine Learning with Text in scikit-learn
Stars: ✭ 405 (-0.74%)
Mutual labels:  jupyter-notebook
Pixyz
A library for developing deep generative models in a more concise, intuitive and extendable way
Stars: ✭ 407 (-0.25%)
Mutual labels:  jupyter-notebook
The Elements Of Statistical Learning Python Notebooks
A series of Python Jupyter notebooks that help you better understand "The Elements of Statistical Learning" book
Stars: ✭ 405 (-0.74%)
Mutual labels:  jupyter-notebook
Eco Efficient Video Understanding
Code and models of paper " ECO: Efficient Convolutional Network for Online Video Understanding", ECCV 2018
Stars: ✭ 406 (-0.49%)
Mutual labels:  jupyter-notebook
Xlearn
Transfer Learning Library
Stars: ✭ 406 (-0.49%)
Mutual labels:  jupyter-notebook
Skimage Tutorials
skimage-tutorials: a collection of tutorials for the scikit-image package.
Stars: ✭ 403 (-1.23%)
Mutual labels:  jupyter-notebook
Python Tutorial
python教程,包括:python基础、python进阶;常用机器学习库:numpy、scipy、sklearn、xgboost;深度学习库:keras、tensorflow、paddle、pytorch。
Stars: ✭ 407 (-0.25%)
Mutual labels:  jupyter-notebook
Joint Vae
Pytorch implementation of JointVAE, a framework for disentangling continuous and discrete factors of variation 🌟
Stars: ✭ 404 (-0.98%)
Mutual labels:  jupyter-notebook
H2o Meetups
Presentations from H2O meetups & conferences by the H2O.ai team
Stars: ✭ 405 (-0.74%)
Mutual labels:  jupyter-notebook
Your first decentralized application
This is the code for "A Guide to Building Your First Decentralized Application" by Siraj Raval on Youtube
Stars: ✭ 408 (+0%)
Mutual labels:  jupyter-notebook
Cs224n Squad Project
Stars: ✭ 408 (+0%)
Mutual labels:  jupyter-notebook
Machinelearning
Machine Learning
Stars: ✭ 406 (-0.49%)
Mutual labels:  jupyter-notebook

Paper source

Arbitrary-Oriented Scene Text Detection via Rotation Proposals

https://arxiv.org/abs/1703.01086

News

We update RRPN in pytorch 1.0! View https://github.com/mjq11302010044/RRPN_plusplus for more details. Text Spotter f-measure results are 89.5 % in IC15, 92.0% in IC13. The testing speed can reach 13.3 fps in IC13 with input shorter size of 640px !

License

RRPN is released under the MIT License (refer to the LICENSE file for details). This project is for research purpose only, further use for RRPN should contact authors.

Citing RRPN

If you find RRPN useful in your research, please consider citing:

@article{Jianqi17RRPN,
    Author = {Jianqi Ma and Weiyuan Shao and Hao Ye and Li Wang and Hong Wang and Yingbin Zheng and Xiangyang Xue},
    Title = {Arbitrary-Oriented Scene Text Detection via Rotation Proposals},
    journal = {IEEE Transactions on Multimedia},
    volume={20}, 
    number={11}, 
    pages={3111-3122}, 
    year={2018}
}

Contents

  1. Requirements: software
  2. Requirements: hardware
  3. Basic installation
  4. Demo
  5. Beyond the demo: training and testing

Requirements: software

  1. Requirements for Caffe and pycaffe (see: Caffe installation instructions)

Note: Caffe must be built with support for Python layers!

# 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

You can download my Makefile.config for reference. 2. Python packages you might not have: cython, python-opencv, easydict

Requirements: hardware

  1. For training the end-to-end version of RRPN with VGG16, 4~5G of GPU memory is sufficient (using CUDNN)

Installation (sufficient for the demo)

  1. Clone the RRPN repository
# git clone https://github.com/mjq11302010044/RRPN.git
  1. We'll call the directory that you cloned RRPN into RRPN_ROOT

  2. Build the Cython modules

    cd $RRPN_ROOT/lib
    make
    
  3. Build Caffe and pycaffe

    cd $RRPN_ROOT/caffe-fast-rcnn
    # Now follow the Caffe installation instructions here:
    #   http://caffe.berkeleyvision.org/installation.html
    
    # If you're experienced with Caffe and have all of the requirements installed
    # and your Makefile.config in place, then simply do:
    make -j4 && make pycaffe
    
  4. Download pre-computed RRPN detectors

    Trained VGG16 model download link: https://drive.google.com/open?id=0B5rKZkZodGIsV2RJUjVlMjNOZkE
    
    

    Then move the model into $RRPN_ROOT/data/faster_rcnn_models.

Demo

After successfully completing basic installation, you'll be ready to run the demo.

To run the demo

cd $RRPN_ROOT
python ./tools/rotation_demo.py

The txt results will be saved in $RRPN_ROOT/result

Beyond the demo: installation for training and testing models

You can use the function get_rroidb() in $RRPN_ROOT/lib/rotation/data_extractor.py to manage your training data:

Each training sample should be managed in a python dict like:

im_info = {
	'gt_classes': # Set to 1(Only text)
	'max_classes': # Set to 1(Only text)
	'image': # image path to access
	'boxes': # ground truth box
	'flipped' : # Flip an image or not (Not implemented)
	'gt_overlaps' : # overlap of a class(text)
	'seg_areas' : # area of an ground truth region
	'height': # height of an image data
	'width': # width of an image data
	'max_overlaps' : # max overlap with each gt-proposal
	'rotated': # Random angle to rotate an image
}

Then assign your database to the variable 'roidb' in main function of $RRPN_ROOT/tools/train_net.py

116: roidb = get_rroidb("train") # change to your data manage function

Download pre-trained ImageNet models

Pre-trained ImageNet models can be downloaded for the networks described in the paper: VGG16.

cd $RRPN_ROOT
./data/scripts/fetch_imagenet_models.sh

VGG16 comes from the Caffe Model Zoo, but is provided here for your convenience. ZF was trained at MSRA.

Then you can train RRPN by typing:

./experiment/scripts/faster_rcnn_end2end.sh [GPU_ID] [NET] rrpn

[NET] usually takes VGG16

Trained RRPN networks are saved under:(We set the directory to './' by default.)

./

One can change the directory in variable output_dir in $RRPN_ROOT/tools/train_net.py

Any question about this project please send message to Jianqi Ma([email protected]), and enjoy it!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].