All Projects → tobiassteidle → ML_IDCard_Segmentation-TF-Keras

tobiassteidle / ML_IDCard_Segmentation-TF-Keras

Licence: other
Machine Learning Project to identify an ID Card on an image

Programming Languages

Jupyter Notebook
11667 projects
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to ML IDCard Segmentation-TF-Keras

Semantic Segmentation Suite
Semantic Segmentation Suite in TensorFlow. Implement, train, and test new Semantic Segmentation models easily!
Stars: ✭ 2,395 (+6202.63%)
Mutual labels:  segmentation, semantic-segmentation, iou
Keras Segmentation Deeplab V3.1
An awesome semantic segmentation model that runs in real time
Stars: ✭ 156 (+310.53%)
Mutual labels:  segmentation, semantic-segmentation
Kiu Net Pytorch
Official Pytorch Code of KiU-Net for Image Segmentation - MICCAI 2020 (Oral)
Stars: ✭ 134 (+252.63%)
Mutual labels:  segmentation, semantic-segmentation
Keras Unet
Helper package with multiple U-Net implementations in Keras as well as useful utility tools helpful when working with image semantic segmentation tasks. This library and underlying tools come from multiple projects I performed working on semantic segmentation tasks
Stars: ✭ 196 (+415.79%)
Mutual labels:  segmentation, semantic-segmentation
Openvehiclevision
An opensource lib. for vehicle vision applications (written by MATLAB), lane marking detection, road segmentation
Stars: ✭ 120 (+215.79%)
Mutual labels:  segmentation, semantic-segmentation
Vision4j Collection
Collection of computer vision models, ready to be included in a JVM project
Stars: ✭ 132 (+247.37%)
Mutual labels:  segmentation, semantic-segmentation
Imgclsmob
Sandbox for training deep learning networks
Stars: ✭ 2,405 (+6228.95%)
Mutual labels:  segmentation, semantic-segmentation
3dunet abdomen cascade
Stars: ✭ 91 (+139.47%)
Mutual labels:  segmentation, semantic-segmentation
Fcn
Chainer Implementation of Fully Convolutional Networks. (Training code to reproduce the original result is available.)
Stars: ✭ 211 (+455.26%)
Mutual labels:  segmentation, semantic-segmentation
DocuNet
Code and dataset for the IJCAI 2021 paper "Document-level Relation Extraction as Semantic Segmentation".
Stars: ✭ 84 (+121.05%)
Mutual labels:  segmentation, semantic-segmentation
CAP augmentation
Cut and paste augmentation for object detection and instance segmentation
Stars: ✭ 93 (+144.74%)
Mutual labels:  segmentation, semantic-segmentation
Crfasrnn pytorch
CRF-RNN PyTorch version http://crfasrnn.torr.vision
Stars: ✭ 102 (+168.42%)
Mutual labels:  segmentation, semantic-segmentation
Segmentation
Tensorflow implementation : U-net and FCN with global convolution
Stars: ✭ 101 (+165.79%)
Mutual labels:  segmentation, semantic-segmentation
Dilation Tensorflow
A native Tensorflow implementation of semantic segmentation according to Multi-Scale Context Aggregation by Dilated Convolutions (2016). Optionally uses the pretrained weights by the authors.
Stars: ✭ 134 (+252.63%)
Mutual labels:  segmentation, semantic-segmentation
Setr Pytorch
Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspective with Transformers
Stars: ✭ 96 (+152.63%)
Mutual labels:  segmentation, semantic-segmentation
Hrnet Semantic Segmentation
The OCR approach is rephrased as Segmentation Transformer: https://arxiv.org/abs/1909.11065. This is an official implementation of semantic segmentation for HRNet. https://arxiv.org/abs/1908.07919
Stars: ✭ 2,369 (+6134.21%)
Mutual labels:  segmentation, semantic-segmentation
Multiclass Semantic Segmentation Camvid
Tensorflow 2 implementation of complete pipeline for multiclass image semantic segmentation using UNet, SegNet and FCN32 architectures on Cambridge-driving Labeled Video Database (CamVid) dataset.
Stars: ✭ 67 (+76.32%)
Mutual labels:  segmentation, semantic-segmentation
Deep Segmentation
CNNs for semantic segmentation using Keras library
Stars: ✭ 69 (+81.58%)
Mutual labels:  segmentation, semantic-segmentation
wasr network
WaSR Segmentation Network for Unmanned Surface Vehicles v0.5
Stars: ✭ 32 (-15.79%)
Mutual labels:  segmentation, semantic-segmentation
hyperseg
HyperSeg - Official PyTorch Implementation
Stars: ✭ 174 (+357.89%)
Mutual labels:  segmentation, semantic-segmentation

Deprecated - Switched to Pytorch

ML_IDCard_Segmentation (Tensorflow / Keras)

Machine Learning Project to identify an ID Card on an image.

Objectives

The goal of this project is to recognize a ID Card on a photo, cut it out using semantic segmentation and to transform the perspective so that you get a front view of the ID Card. Optionally an OCR text recognition can be done in a later step. However, this is not yet planned in the scope of this project.

Additional Information

Dataset: MIDV-500
Tensorflow Version: GPU 1.5.0

Installation

  1. Create and activate a new environment.
conda create -n idcard python=3.6
source activate idcard
  1. Install Dependencies.
pip install -r requirements.txt

Download and Prepare Dataset

Download the image files (image and ground_truth).
Splits the data into training, test and validation data.

python prepare_dataset.py

Training of the neural network

python train.py

Show Jupyter Notebook for Test

jupyter notebook "IDCard Prediction Test.ipynb"

Test the trained model

python test.py test/sample1.png --output_mask=test/output_mask.png --output_prediction=test/output_pred.png --model=model.h5

Call python test.py --help for possible arguments.

Additional commands

Starts Tensorboard Visualisation.

tensorboard --logdir=logs/

Background Information

Model

A U-NET was used as the model. U-Net is a convolutional neural network that was developed for biomedical image segmentation at the Computer Science Department of the University of Freiburg, Germany. The network is based on the fully convolutional networkand its architecture was modified and extended to work with fewer training images and to yield more precise segmentations. Segmentation of a 512*512 image takes less than a second on a modern GPU.

IoU

Metrics

The Metric IoU (Intersection over Unit / Jaccard-Coefficient) was used to measure the quality of the model. The closer the Jaccard coefficient is to 1, the greater the similarity of the quantities. The minimum value of the Jaccard coefficient is 0.
IoU

Example:
IoU

Results for validation set (only trained on german id cards)

Accuracy:
99.87%

Intersection over Unit:
0.9939

Pipeline Example:
Pipeline

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