All Projects → Neerajj9 → Text Detection Using Yolo Algorithm In Keras Tensorflow

Neerajj9 / Text Detection Using Yolo Algorithm In Keras Tensorflow

Licence: mit
Implemented the YOLO algorithm for scene text detection in keras-tensorflow (No object detection API used) The code can be tweaked to train for a different object detection task using YOLO.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Text Detection Using Yolo Algorithm In Keras Tensorflow

Ssd Tensorflow
Single Shot MultiBox Detector in TensorFlow
Stars: ✭ 4,066 (+4573.56%)
Mutual labels:  object-detection, jupyter-notebook, yolo
Trainyourownyolo
Train a state-of-the-art yolov3 object detector from scratch!
Stars: ✭ 399 (+358.62%)
Mutual labels:  object-detection, jupyter-notebook, yolo
Yolov3 Tf2
YoloV3 Implemented in Tensorflow 2.0
Stars: ✭ 2,327 (+2574.71%)
Mutual labels:  object-detection, jupyter-notebook, yolo
Getting Things Done With Pytorch
Jupyter Notebook tutorials on solving real-world problems with Machine Learning & Deep Learning using PyTorch. Topics: Face detection with Detectron 2, Time Series anomaly detection with LSTM Autoencoders, Object Detection with YOLO v5, Build your first Neural Network, Time Series forecasting for Coronavirus daily cases, Sentiment Analysis with BERT.
Stars: ✭ 738 (+748.28%)
Mutual labels:  object-detection, jupyter-notebook, yolo
Imagenet
Trial on kaggle imagenet object localization by yolo v3 in google cloud
Stars: ✭ 56 (-35.63%)
Mutual labels:  jupyter-notebook, yolo
Ds and ml projects
Data Science & Machine Learning projects and tutorials in python from beginner to advanced level.
Stars: ✭ 56 (-35.63%)
Mutual labels:  jupyter-notebook, keras-tensorflow
Darknet ros
YOLO ROS: Real-Time Object Detection for ROS
Stars: ✭ 1,101 (+1165.52%)
Mutual labels:  object-detection, yolo
Fish detection
Fish detection using Open Images Dataset and Tensorflow Object Detection
Stars: ✭ 67 (-22.99%)
Mutual labels:  object-detection, jupyter-notebook
Tensorflow Lite Rest Server
Expose tensorflow-lite models via a rest API
Stars: ✭ 43 (-50.57%)
Mutual labels:  object-detection, jupyter-notebook
Pneumonia Detection From Chest X Ray Images With Deep Learning
Detecting Pneumonia in Chest X-ray Images using Convolutional Neural Network and Pretrained Models
Stars: ✭ 64 (-26.44%)
Mutual labels:  jupyter-notebook, keras-tensorflow
Tracktor
Python and OpenCV based object tracking software
Stars: ✭ 76 (-12.64%)
Mutual labels:  object-detection, jupyter-notebook
Mmdetection object detection demo
How to train an object detection model with mmdetection
Stars: ✭ 55 (-36.78%)
Mutual labels:  object-detection, jupyter-notebook
Mish
Official Repsoitory for "Mish: A Self Regularized Non-Monotonic Neural Activation Function" [BMVC 2020]
Stars: ✭ 1,072 (+1132.18%)
Mutual labels:  object-detection, jupyter-notebook
Ssd keras
Port of Single Shot MultiBox Detector to Keras
Stars: ✭ 1,101 (+1165.52%)
Mutual labels:  object-detection, jupyter-notebook
Yolo tensorflow
🚖 Object Detection (YOLOv1) implentation in tensorflow, with training, testing and video features.
Stars: ✭ 45 (-48.28%)
Mutual labels:  object-detection, yolo
Sru Deeplearning Workshop
دوره 12 ساعته یادگیری عمیق با چارچوب Keras
Stars: ✭ 66 (-24.14%)
Mutual labels:  jupyter-notebook, keras-tensorflow
Unet Tgs
Applying UNET Model on TGS Salt Identification Challenge hosted on Kaggle
Stars: ✭ 81 (-6.9%)
Mutual labels:  jupyter-notebook, keras-tensorflow
Ctpn
Detecting Text in Natural Image with Connectionist Text Proposal Network (ECCV'16)
Stars: ✭ 1,220 (+1302.3%)
Mutual labels:  jupyter-notebook, text-detection
Yolo resnet
Implementing YOLO using ResNet as the feature extraction network
Stars: ✭ 82 (-5.75%)
Mutual labels:  jupyter-notebook, yolo
Yolo Custom Object Detector
Making custom object detector using Yolo (Java and Python)
Stars: ✭ 84 (-3.45%)
Mutual labels:  object-detection, yolo

Text-Detection-using-Yolo-Algorithm-in-keras-tensorflow

First step towards building an efficient OCR system is to find out the specific text locations. Implemented the YOLO ( You Only Look Once ) algorithm from scratch (no object detection API used) for the specific task of Scene Text Detection in python using keras and tensorflow.

Data :

The dataset used is ICDAR competetion dataset available here : Drive Link
Train images = 376
Validation images = 115

Preprocessing :

The Preprocess.py file handles all the necessary preprocessing and saves the data in the form of numpy arrays. First, the images are resized to (512,512) dimensions. Accordingly, the ground truth of the boxes is modified as well. All the images are normalized to a range of [-1 , 1]. The ground truth coordinates are processed to form a matrix of dimensions as ( grid height , grid width , 1 , 5 ).

Custom data :

Necessary changes need to be done in the Preprocess.py file to input the custom data and images, to create the appropriate input and output matrices.

Model :

MobileNetv2 architecture is used as a feture extractor. The main reason for choosing MobileNetv2 is the high accuracy and the less number of weights. The fully connected layers of MobileNet are removed. Three Conv layers are added to the last layer of the MobileNet architecture to output a shape of (grid height , grid width , 1 , 5 ). The model weights can be found here : Drive Link

Loss Function and Training:

The loss function implemented is the one specified in the YOLO paper. As there is only one class to be predicted, the contribution of class predictions to the loss is eliminated.

The model is trained for 180 epochs in total with a batch size of 4. The learning rate was kept at 0.001 for the first 100 epochs and lowered to 0.0001 for the next 80 epochs.

Inference :

The Utils.py consists of the functions used to convert the matrix output ( grid height , grid width , 1 , 5 ) of the model to actual predicted bounding boxes. Non max suppression is used to eliminate boxes on the same object as stated in the YOLO paper.

Results :

alt text
alt text
alt text

Requirements :

  1. Keras : 2.2.2
  2. Tensorflow : 1.9.0
  3. OpenCV : 3.4.1
  4. Numpy : 1.14.3
  5. Matplotlib : 2.2.2
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].