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

  1. 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.
  2. Menginstal Google Cloud CLI.
  3. Untuk initialize gcloud CLI, jalankan perintah berikut:

    gcloud init
  4. Buat atau pilih project Google Cloud.

    • Membuat project Google Cloud:

      gcloud projects create PROJECT_ID

      Ganti PROJECT_ID dengan nama untuk project Google Cloud yang Anda buat.

    • Pilih project Google Cloud yang Anda buat:

      gcloud config set project PROJECT_ID

      Ganti PROJECT_ID dengan nama project Google Cloud Anda.

  5. Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.

  6. Aktifkan Vision API:

    gcloud services enable vision.googleapis.com
  7. Berikan peran ke Akun Google Anda. Jalankan perintah berikut satu kali untuk setiap peran IAM berikut: roles/storage.objectViewer

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:EMAIL_ADDRESS" --role=ROLE
    • Ganti PROJECT_ID dengan project ID Anda.
    • Ganti EMAIL_ADDRESS dengan alamat email Anda.
    • Ganti ROLE dengan setiap peran individual.
  8. Menginstal Google Cloud CLI.
  9. Untuk initialize gcloud CLI, jalankan perintah berikut:

    gcloud init
  10. Buat atau pilih project Google Cloud.

    • Membuat project Google Cloud:

      gcloud projects create PROJECT_ID

      Ganti PROJECT_ID dengan nama untuk project Google Cloud yang Anda buat.

    • Pilih project Google Cloud yang Anda buat:

      gcloud config set project PROJECT_ID

      Ganti PROJECT_ID dengan nama project Google Cloud Anda.

  11. Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.

  12. Aktifkan Vision API:

    gcloud services enable vision.googleapis.com
  13. Berikan peran ke Akun Google Anda. Jalankan perintah berikut satu kali untuk setiap peran IAM berikut: roles/storage.objectViewer

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:EMAIL_ADDRESS" --role=ROLE
    • Ganti PROJECT_ID dengan project ID Anda.
    • Ganti EMAIL_ADDRESS dengan alamat email Anda.
    • Ganti ROLE dengan setiap peran individual.

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

Gambar jalan Shanghai.
Kredit gambar: Steve Long di Unsplash.

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:

Hasil deteksi label

  1. deskripsi: "Orang", skor: 0,950
  2. deskripsi: "Jalan", skor: 0,891
  3. deskripsi: "Moda transportasi", skor: 0,890
Gambar jalan Shanghai yang berisi hasil deteksi label.
Kredit gambar: Steve Long pada Unsplash (anotasi ditambahkan).

Hasil deteksi teks

  • teks: 牛牛面馆\n
  • verteks: (x: 159, y: 212), (x: 947, y: 212), (x: 947, y: 354), (x: 159, y: 354 )
Gambar jalan Shanghai yang berisi hasil deteksi teks.
Kredit gambar: Steve Long pada Unsplash (anotasi ditambahkan).

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)
Gambar jalan Shanghai yang berisi hasil deteksi objek.
Kredit gambar: Steve Long pada Unsplash (anotasi ditambahkan).

Selamat! Anda telah mengirimkan permintaan pertama ke Vision API.

Pembersihan

Agar tidak menimbulkan biaya pada akun Google Cloud Anda 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 selanjutnya

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