All Projects → Canjie-Luo → Text Image Augmentation

Canjie-Luo / Text Image Augmentation

Licence: mit
Geometric Augmentation for Text Image

Projects that are alternatives of or similar to Text Image Augmentation

Php Opencv Examples
Tutorial for computer vision and machine learning in PHP 7/8 by opencv (installation + examples + documentation)
Stars: ✭ 333 (+0%)
Mutual labels:  opencv, recognition, detection
Mtcnn
face detection and alignment with mtcnn
Stars: ✭ 66 (-80.18%)
Mutual labels:  opencv, recognition, detection
Pine
🌲 Aimbot powered by real-time object detection with neural networks, GPU accelerated with Nvidia. Optimized for use with CS:GO.
Stars: ✭ 202 (-39.34%)
Mutual labels:  opencv, detection
Raspberrypi Facedetection Mtcnn Caffe With Motion
MTCNN with Motion Detection, on Raspberry Pi with Love
Stars: ✭ 204 (-38.74%)
Mutual labels:  opencv, detection
VideoRecognitionTracking
Real time object or face detection recognition and tracking in video. The Full end-to-end project.
Stars: ✭ 36 (-89.19%)
Mutual labels:  recognition, detection
Opencv Lane Vehicle Track
OpenCV implementation of lane and vehicle tracking
Stars: ✭ 162 (-51.35%)
Mutual labels:  opencv, detection
Opencv Course
Learn OpenCV in 4 Hours - Code used in my Python and OpenCV course on freeCodeCamp.
Stars: ✭ 185 (-44.44%)
Mutual labels:  opencv, recognition
Hand-Digits-Recognition
Recognize your own handwritten digits with Tensorflow, embedded in a PyQT5 GUI. The Neural Network was trained on MNIST.
Stars: ✭ 11 (-96.7%)
Mutual labels:  recognition, detection
Skindetector
A Python based skin detection system using OpenCV
Stars: ✭ 130 (-60.96%)
Mutual labels:  opencv, detection
etiketai
Etiketai is an online tool designed to label images, useful for training AI models
Stars: ✭ 63 (-81.08%)
Mutual labels:  recognition, detection
DecisionAmbiguityRecognition
Deep learning AI, that recognizes when are people uncertain
Stars: ✭ 16 (-95.2%)
Mutual labels:  recognition, detection
farm-animal-tracking
Farm Animal Tracking (FAT)
Stars: ✭ 19 (-94.29%)
Mutual labels:  recognition, detection
Blurdetection2
Blur Detection with OpenCV in Python
Stars: ✭ 156 (-53.15%)
Mutual labels:  opencv, detection
Scene Text Recognition
Scene text detection and recognition based on Extremal Region(ER)
Stars: ✭ 146 (-56.16%)
Mutual labels:  opencv, detection
Php Opencv
php wrapper for opencv
Stars: ✭ 194 (-41.74%)
Mutual labels:  opencv, recognition
Yolo Powered robot vision
Stars: ✭ 133 (-60.06%)
Mutual labels:  opencv, recognition
Real time object detection and tracking
YOLOv2 and MobileNet_SSD detection algorithms used along with KCF object tracker
Stars: ✭ 241 (-27.63%)
Mutual labels:  opencv, detection
Phormatics
Using A.I. and computer vision to build a virtual personal fitness trainer. (Most Startup-Viable Hack - HackNYU2018)
Stars: ✭ 79 (-76.28%)
Mutual labels:  opencv, recognition
Toptal logo detector
Toptal logo detector
Stars: ✭ 121 (-63.66%)
Mutual labels:  opencv, detection
timeline
Timeline - A photo organizer
Stars: ✭ 39 (-88.29%)
Mutual labels:  recognition, detection

Text Image Augmentation

Build Status

A general geometric augmentation tool for text images in the CVPR 2020 paper "Learn to Augment: Joint Data Augmentation and Network Optimization for Text Recognition". We provide the tool to avoid overfitting and gain robustness of text recognizers.

Note that this is a general toolkit. Please customize for your specific task. If the repo benefits your work, please cite the papers.

News

  • 2020-02 The paper "Learn to Augment: Joint Data Augmentation and Network Optimization for Text Recognition" was accepted to CVPR 2020. It is a preliminary attempt for smart augmentation.

  • 2019-11 The paper "Decoupled Attention Network for Text Recognition" (Paper Code) was accepted to AAAI 2020. This augmentation tool was used in the experiments of handwritten text recognition.

  • 2019-04 We applied this tool in the ReCTS competition of ICDAR 2019. Our ensemble model won the championship.

  • 2019-01 The similarity transformation was specifically customized for geomeric augmentation of text images.

Requirements

We recommend Anaconda to manage the version of your dependencies. For example:

     conda install boost=1.67.0

Installation

Build library:

    mkdir build
    cd build
    cmake -D CUDA_USE_STATIC_CUDA_RUNTIME=OFF ..
    make

Copy the Augment.so to the target folder and follow demo.py to use the tool.

    cp Augment.so ..
    cd ..
    python demo.py

Demo

  • Distortion

  • Stretch

  • Perspective

Speed

To transform an image with size (H:64, W:200), it takes less than 3ms using a 2.0GHz CPU. It is possible to accelerate the process by calling multi-process batch samplers in an on-the-fly manner, such as setting "num_workers" in PyTorch.

Improvement for Recognition

We compare the accuracies of CRNN trained using only the corresponding small training set.

Dataset IIIT5K IC13 IC15
Without Data Augmentation 40.8% 6.8% 8.7%
With Data Augmentation 53.4% 9.6% 24.9%

Citation

@inproceedings{luo2020learn,
  author = {Canjie Luo and Yuanzhi Zhu and Lianwen Jin and Yongpan Wang},
  title = {Learn to Augment: Joint Data Augmentation and Network Optimization for Text Recognition},
  booktitle = {CVPR},
  year = {2020}
}

@inproceedings{wang2020decoupled,
  author = {Tianwei Wang and Yuanzhi Zhu and Lianwen Jin and Canjie Luo and Xiaoxue Chen and Yaqiang Wu and Qianying Wang and Mingxiang Cai}, 
  title = {Decoupled attention network for text recognition}, 
  booktitle ={AAAI}, 
  year = {2020}
}

@article{schaefer2006image,
  title={Image deformation using moving least squares},
  author={Schaefer, Scott and McPhail, Travis and Warren, Joe},
  journal={ACM Transactions on Graphics (TOG)},
  volume={25},
  number={3},
  pages={533--540},
  year={2006},
  publisher={ACM New York, NY, USA}
}

Acknowledgment

Thanks for the contribution of the following developers.

@keeofkoo

@cxcxcxcx

@Yati Sagade

Attention

The tool is only free for academic research purposes.

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].