Audience
Tujuan tutorial ini adalah untuk membantu Anda mengembangkan aplikasi menggunakan Deteksi Teks Dokumen Google Cloud Vision API. Tutorial ini mengasumsikan bahwa Anda telah memahami konstruksi dan teknik pemrograman dasar. Tetapi, meskipun Anda adalah programmer pemula, Anda seharusnya dapat mengikuti dan menjalankan tutorial ini tanpa kesulitan. Selanjutnya, Anda dapat menggunakan dokumentasi referensi Cloud Vision API untuk membuat aplikasi dasar.
Prasyarat
- Siapkan project Cloud Vision API di konsol Google Cloud .
Siapkan lingkungan Anda untuk menggunakan Kredensial Default Aplikasi.
Python
- Instal Python.
- Instal pip.
- Instal Library Klien Google Cloud dan Phyton Imaging Library.
Membuat anotasi gambar menggunakan OCR Teks Dokumen
Tutorial ini membahas aplikasi Vision API dasar yang membuat
permintaan DOCUMENT_TEXT_DETECTION, lalu memproses respons
fullTextAnnotation.
fullTextAnnotation adalah respons hierarki terstruktur untuk teks UTF-8
yang diekstrak dari gambar dan disusun menjadi
Pages→Blocks→Paragraphs→Words→Symbols:
Pageadalah kumpulan blok, dengan tambahan informasi meta tentang halaman: ukuran dan resolusi (resolusi X dan resolusi Y dapat berbeda).Blockmewakili satu elemen logis dari halaman tersebut—misalnya. area yang tertutup teks, gambar, atau pemisah antar kolom. Blok teks dan tabel berisi informasi utama yang diperlukan untuk mengekstrak teks.Paragraphadalah unit struktural teks yang mewakili rangkaian kata yang teratur. Secara default, kata-kata dianggap dipisahkan oleh jeda kata.Wordadalah unit terkecil dari teks. Kata direpresentasikan sebagai array Symbols.Symbolmewakili karakter atau tanda baca.
fullTextAnnotation juga dapat memberikan URL ke gambar Web yang sebagian atau
sepenuhnya cocok dengan gambar dalam permintaan.
Melengkapi daftar kode
Saat membaca kode, sebaiknya Anda mengikuti dengan melihat referensi Python Cloud Vision API Python.
Aplikasi sederhana ini melakukan tugas-tugas berikut:
- Mengimpor library yang diperlukan untuk menjalankan aplikasi
- Mengambil tiga argumen untuk meneruskannya ke fungsi
main():image_file— file gambar input yang akan dianotasioutput_file—nama file output yang akan digunakan Cloud Vision untuk menghasilkan gambar output dengan polybox yang digambar
- Membuat instance
ImageAnnotatorClientuntuk berinteraksi dengan layanan - Mengirim permintaan dan menampilkan respons
- Membuat gambar output dengan kotak yang digambar di sekitar teks
Mempelajari kode lebih lanjut
Mengimpor library
Kami mengimpor library standar:
argparseuntuk mengizinkan aplikasi menerima nama file input sebagai argumenenumuntuk enumerasiFeatureTypeiountuk File I/O
Impor lainnya:
- Class
ImageAnnotatorClientdalam librarygoogle.cloud.visionuntuk mengakses Vision API. - Modul
typesdalam librarygoogle.cloud.visionuntuk membuat permintaan. - Library
ImagedanImageDrawdari libraryPILdigunakan untuk membuat gambar output dengan kotak yang digambar pada gambar input.
Menjalankan aplikasi
Di sini, kita cukup mengurai argumen yang diteruskan, kemudian meneruskannya ke
fungsi render_doc_text().
Mengautentikasi ke API
Sebelum berkomunikasi dengan layanan Vision API, Anda harus
mengautentikasi layanan Anda menggunakan kredensial yang diperoleh sebelumnya. Dalam
aplikasi, cara termudah untuk mendapatkan kredensial adalah dengan menggunakan
Kredensial Default Aplikasi
(ADC). Secara default, library klien Cloud akan mencoba
mendapatkan kredensial dari variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS, yang harus ditetapkan agar mengarah ke file kunci JSON
akun layanan Anda
(lihat Setting Up a Service Account
untuk mengetahui informasi selengkapnya).
Membuat permintaan API dan membaca batas teks dari respons
Setelah layanan Vision API kami sudah siap, kita dapat mengakses layanan
dengan memanggil metode document_text_detection dari instance
ImageAnnotatorClient.
Library klien melakukan enkapsulasi detail permintaan dan respons ke API. Lihat Reference Vision API untuk mengetahui informasi lengkap tentang struktur permintaan.
Setelah library klien menangani permintaan, respons kami akan berisi AnnotateImageResponse yang terdiri dari daftar hasil Anotasi Gambar, satu untuk setiap gambar yang dikirim dalam permintaan. Karena hanya mengirim satu gambar dalam permintaan, kita akan menelusuri full TextAnnotation, dan mengumpulkan batas untuk fitur dokumen yang ditentukan.
Menjalankan aplikasi
Untuk menjalankan aplikasi, Anda dapat
mendownload file receipt.jpg ini
(Anda mungkin perlu mengklik kanan link),
lalu meneruskan lokasi tempat Anda mendownload di komputer lokal Anda
ke aplikasi tutorial (doctext.py).
Berikut adalah perintah Python, diikuti dengan gambar output Anotasi Teks.
$ python doctext.py receipt.jpg -out_file out.jpg
Gambar berikut menampilkan kata dalam kotak kuning dan kalimat dalam kotak merah.
Selamat! Anda telah melakukan Deteksi Teks menggunakan Anotasi Teks Lengkap Google Cloud Vision!