indraoct / go-ocr

An example to implement OCR in Go

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Go OCR

Implementasi Optical Character Recognition menggunakan Golang API dan Tesseract

Pendahulan

Aplikasi ini adalah backend API yang melayani upload file gambar KTP yang akan diproses menjadi data text. Saya menggunakan library

https://github.com/otiai10/gosseract 

untuk me-convert image menjadi text sebagai perantara antara aplikasi backend go dengan tesseract. Tesseract adalah open source yang dibangun oleh google berbasis bahasa C++

https://opensource.google/projects/tesseract

Untuk API nya sendiri menggunakan beberapa third party yakni echo dan graceful

Cara Instalasi

Ada 2 metode yakni secara langsung atau secara docker. Pertama-tama, anda clone dulu repository ini

  • Instalasi langsung

    1. Pastikan di server / komputer anda sudah ada internet. Karena akan dilakukan docnload library2 dari internet
    2. Karena saya pakai mac, maka bisa ikuti step-step berikut :
          https://tesseract-ocr.github.io/tessdoc/Compiling.html#macos
      
    3. Setelah semua terinstall, anda bisa arahkan ke folder utama go-ocr dan menjalankan aplikasi dengan mengetik sebagai berikut :
          go run main.go
      
  • Instalasi melalui docker

    1. Harus ada internet karena dalam melakukan extract aplikasi ke docker akan menginstall library dary internet.
    2. Pada folder utama go-ocr , ketik command berikut (pembentukan docker image):
         docker build -t go-ocr . 
    
    1. Menjalankan container docker :
         docker run -p 8080:8080 go-ocr
    

Implementasi

  • Anda dapat menggunakan postman, lalu masukkan link url ini :
   method POST http://localhost:8080/go_ocr/v1/ktp/request
  • Berikut ini jika dijalankan menggunakan curl
curl --location --request POST 'http://localhost:8080/go_ocr/v1/ktp/request' \
--form 'file=@{PATH_FILE}/ktpcontoh2.jpg'

Undangan untuk berkolaborasi

Karena project ini bersifat open source, maka saya membebaskan anda untuk menggunakanya dan jika anda menemukan ide-ide menarik atau menemukan issue jangan ragu-ragu untuk melakukan pull request. Karena code yang saya kerjakan jauh dari sempurna dan butuh pemikiran teman-teman untuk mengembangkannya menjadi lebih baik.

Buy me a coffee : No Account 082111833436

About

An example to implement OCR in Go


Languages

Language:Go 95.6%Language:Dockerfile 4.4%