Mendeteksi label pada gambar menggunakan command line
Halaman ini menunjukkan cara mengirim tiga permintaan deteksi fitur dan anotasi ke Vision API menggunakan antarmuka REST dan perintah curl.
Vision API memungkinkan integrasi teknologi pengenalan visi Google yang mudah ke dalam aplikasi developer. Anda dapat mengirim data gambar dan jenis fitur yang diinginkan ke Vision API, yang kemudian menampilkan respons yang sesuai berdasarkan atribut gambar yang Anda minati. Untuk mengetahui informasi selengkapnya tentang jenis fitur yang ditawarkan, lihat Daftar semua fitur Vision API.
Sebelum memulai
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init -
Buat atau pilih Google Cloud project.
Peran yang diperlukan untuk memilih atau membuat project
- Pilih project: Memilih project tidak memerlukan peran IAM tertentu—Anda dapat memilih project mana pun yang telah diberi peran.
-
Membuat project: Untuk membuat project, Anda memerlukan peran Pembuat Project
(
roles/resourcemanager.projectCreator), yang berisi izinresourcemanager.projects.create. Pelajari cara memberikan peran.
-
Buat Google Cloud project:
gcloud projects create PROJECT_ID
Ganti
PROJECT_IDdengan nama untuk Google Cloud project yang Anda buat. -
Pilih project Google Cloud yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_IDdengan nama project Google Cloud Anda.
-
Verifikasi bahwa penagihan diaktifkan untuk project Google Cloud Anda.
Aktifkan Vision API:
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (
roles/serviceusage.serviceUsageAdmin), yang berisi izinserviceusage.services.enable. Pelajari cara memberikan peran.gcloud services enable vision.googleapis.com
-
Memberikan peran ke akun pengguna Anda. Jalankan perintah berikut satu kali untuk setiap peran IAM berikut:
roles/storage.objectViewergcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Ganti kode berikut:
PROJECT_ID: Project ID Anda.USER_IDENTIFIER: ID untuk akun pengguna Anda. Misalnya,myemail@example.com.ROLE: Peran IAM yang Anda berikan ke akun pengguna Anda.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init -
Buat atau pilih Google Cloud project.
Peran yang diperlukan untuk memilih atau membuat project
- Pilih project: Memilih project tidak memerlukan peran IAM tertentu—Anda dapat memilih project mana pun yang telah diberi peran.
-
Membuat project: Untuk membuat project, Anda memerlukan peran Pembuat Project
(
roles/resourcemanager.projectCreator), yang berisi izinresourcemanager.projects.create. Pelajari cara memberikan peran.
-
Buat Google Cloud project:
gcloud projects create PROJECT_ID
Ganti
PROJECT_IDdengan nama untuk Google Cloud project yang Anda buat. -
Pilih project Google Cloud yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_IDdengan nama project Google Cloud Anda.
-
Verifikasi bahwa penagihan diaktifkan untuk project Google Cloud Anda.
Aktifkan Vision API:
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (
roles/serviceusage.serviceUsageAdmin), yang berisi izinserviceusage.services.enable. Pelajari cara memberikan peran.gcloud services enable vision.googleapis.com
-
Memberikan peran ke akun pengguna Anda. Jalankan perintah berikut satu kali untuk setiap peran IAM berikut:
roles/storage.objectViewergcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Ganti kode berikut:
PROJECT_ID: Project ID Anda.USER_IDENTIFIER: ID untuk akun pengguna Anda. Misalnya,myemail@example.com.ROLE: Peran IAM yang Anda berikan ke akun pengguna Anda.
Membuat permintaan anotasi gambar
Setelah menyelesaikan langkah Sebelum memulai, Anda dapat menggunakan Vision API untuk menganotasi file gambar.
Dalam contoh ini, Anda menggunakan curl untuk mengirim permintaan ke Vision API menggunakan gambar berikut:
Cloud Storage URI:
gs://cloud-samples-data/vision/using_curl/shanghai.jpeg
HTTPS URL:
https://console.cloud.google.com/storage/browser/cloud-samples-data/vision/using_curl/shanghai.jpeg
Membuat JSON permintaan
File request.json berikut menunjukkan cara
meminta tiga fitur images:annotate
dan membatasi hasil dalam respons.
Buat file permintaan JSON dengan teks berikut, dan simpan sebagai
file teks biasa request.json di direktori kerja Anda:
request.json
{ "requests": [ { "image": { "source": { "imageUri": "gs://cloud-samples-data/vision/using_curl/shanghai.jpeg" } }, "features": [ { "type": "LABEL_DETECTION", "maxResults": 3 }, { "type": "OBJECT_LOCALIZATION", "maxResults": 1 }, { "type": "TEXT_DETECTION", "maxResults": 1, "model": "builtin/latest" } ] } ] }
Kirim permintaan
Anda menggunakan curl dan konten isi dari request.json untuk mengirim permintaan
ke Vision API. Masukkan baris berikut pada
command line Anda:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-user-project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://vision.googleapis.com/v1/images:annotate -d @request.json
Menafsirkan respons
Anda akan melihat respons JSON yang mirip dengan yang di bawah ini.
Isi JSON permintaan menentukan maxResults untuk setiap jenis anotasi.
Akibatnya, Anda akan melihat hal berikut dalam JSON respons:
- tiga hasil
labelAnnotations - satu
textAnnotationshasil (disingkat agar lebih jelas) - satu
localizedObjectAnnotationshasil
Hasil deteksi label
- deskripsi: "Orang", skor: 0,950
- deskripsi: "Jalan", skor: 0,891
- deskripsi: "Moda transportasi", skor: 0,890
Hasil deteksi teks
- teks: 牛牛面馆\n
- verteks: (x: 159, y: 212), (x: 947, y: 212), (x: 947, y: 354), (x: 159, y: 354 )
Hasil deteksi objek
- nama: "Orang", skor: 0,944
- verteks yang dinormalisasi: (x: 0,260, y: 0,468), (x: 0,407, y: 0,468), (x: 0,407, y: 0,895), (x: 0,260, y: 0,895)
Selamat! Anda telah mengirimkan permintaan pertama ke Vision API.
Pembersihan
Agar akun Google Cloud Anda tidak dikenai biaya untuk resource yang digunakan pada halaman ini, hapus project Google Cloud yang berisi resource tersebut.
Opsional: Cabut kredensial dari gcloud CLI.
gcloud auth revoke
Langkah berikutnya
- Lihat daftar semua jenis fitur dan penggunaannya.
- Mulai Vision API dalam bahasa pilihan Anda dengan menggunakan Library Klien Vision API.
- Gunakan Panduan cara kerja untuk mempelajari lebih lanjut fitur tertentu, melihat contoh anotasi, dan mendapatkan anotasi untuk setiap file atau gambar.
- Pelajari anotasi gambar dan file (PDF/TIFF/GIF) dalam batch.
- Lihat daftar lengkap contoh kode library klien.