rhzs / serverless-ktp-ocr

Serverless Indonesian Identity E-KTP OCR with Google Cloud Platform (GCP) - Cloud Functions, Cloud Storage, and Cloud PubSub

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CodeFactor

Serverless Indonesian KTP OCR with GCP

This is reproducible work from Ekstraksi Informasi e-KTP dengan Google Cloud Function dan Cloud Vision API. It also contains code fix to match with ES6 compliant module usages.

KTP OCR Architecture

Alt text

Pre-requisites

  1. Google Cloud Account
  2. gcloud CLI
  3. Create New Google Cloud project gcloud projects create ektp-ocr
  4. Enable Google Cloud Functions gcloud services enable cloudfunctions.googleapis.com
  5. Enable Google Cloud Storage gcloud services enable storage-api.googleapis.com gcloud services enable storage-component.googleapis.com, create bucket name uploaded_ktp
  6. Enable Google Cloud PubSub gcloud services enable pubsub.googleapis.com, create topic name ektp-text-extracted
  7. Enable Google Cloud Vision this link

How to deploy

  1. Deploy HTTP
$ cd http-ktp
$ npm i
$ gcloud functions deploy http-ktp --entry-point uploadKtp --trigger-http
  1. Deploy KTP Image Event Trigger
$ cd ktp-iamge-event-trigger
$ npm i
$ gcloud functions deploy processImageFromGCSEvent --trigger-resource uploaded_ektp --trigger-event google.storage.object.finalize
  1. Deploy Extraction Data
$ gcloud functions deploy extract_ktp --runtime python37 --trigger-topic ektp-text-extracted

Results

View Stackdriver logs from extract-ktp function.

Love it?

Please support me by *stars this Github repo. Thank you!

About

Serverless Indonesian Identity E-KTP OCR with Google Cloud Platform (GCP) - Cloud Functions, Cloud Storage, and Cloud PubSub


Languages

Language:JavaScript 76.6%Language:Python 23.4%