عکس arxyzan
PyTorch implementation of CRNN for scene text recognition on Synth90k datasetPython
موضوع‌ها
۰
فورک‌ها
۰
ستاره‌ها
۸
تاریخ ایجاد
۱۳ خرداد ۱۴۰۰
آخرین بروزرسانی
حدود ۱ سال قبل

CRNN Pytorch

This is a Pytorch implementation of a Deep Neural Network for scene text recognition. It is based on the paper "An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application to Scene Text Recognition (2016), Baoguang Shi et al." forked from this repo

Quick Demo

$ pip install -r requirements.txt
$ python predict.py --i novel.jpg --model weights/crnn.pt

Result:

device: cuda
Predicted Text: novel

novel

Train

Download Synth90k dataset

$ cd data
$ bash download_synth90k.sh
@InProceedings{Jaderberg14c,
  author       = "Max Jaderberg and Karen Simonyan and Andrea Vedaldi and Andrew Zisserman",
  title        = "Synthetic Data and Artificial Neural Networks for Natural Scene Text Recognition",
  booktitle    = "Workshop on Deep Learning, NIPS",
  year         = "2014",
}

@Article{Jaderberg16,
  author       = "Max Jaderberg and Karen Simonyan and Andrea Vedaldi and Andrew Zisserman",
  title        = "Reading Text in the Wild with Convolutional Neural Networks",
  journal      = "International Journal of Computer Vision",
  number       = "1",
  volume       = "116",
  pages        = "1--20",
  month        = "jan",
  year         = "2016",
}

Pretrained Model

I've per-trained a CRNN model on Synth90k dataset although it's not fully trained. So train it yourself if you want to get acceptable results.

Evaluate the model on the Synth90k dataset

$ python evaluate.py

Train your model

You could adjust hyper-parameters in config.py.

And train crnn model,

$ python train.py

Reference

This repo is a cleaner and more compact implementation of crnn-pytorch by GitYCC