Contoh kode berikut menunjukkan cara mendeteksi orang dalam file video menggunakan Video Intelligence API.
Video Intelligence dapat mendeteksi keberadaan manusia dalam file video dan melacak individu di seluruh video atau segmen video.
Deteksi orang dari file di Cloud Storage
Berikut ini menunjukkan cara mengirim permintaan anotasi ke Video Intelligence dengan fitur deteksi orang.
REST
Mengirim permintaan anotasi video
Berikut ini cara mengirim permintaan POST ke metode
videos:annotate
. Contoh ini menggunakan Google Cloud CLI untuk membuat token akses. Untuk
mengetahui petunjuk menginstal gcloud CLI, lihat
Panduan Memulai Video Intelligence API.
Lihat juga PersonDetectionConfig
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- INPUT_URI: bucket Cloud Storage yang berisi file yang ingin Anda anotasikan, termasuk nama file. Harus
diawali dengan
gs://
.
Misalnya:
"inputUri": "gs://cloud-samples-data/video/googlework_short.mp4"
- PROJECT_NUMBER: ID numerik untuk project Google Cloud Anda
Metode HTTP dan URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Meminta isi JSON:
{ "inputUri": "INPUT_URI", "features": ["PERSON_DETECTION"], "videoContext": { "personDetectionConfig": { "includeBoundingBoxes": true, "includePoseLandmarks": true, "includeAttributes": true } } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Jika respons berhasil, Video Intelligence API akan menampilkan name
untuk operasi Anda. Di atas menunjukkan contoh respons tersebut, dengan:
- PROJECT_NUMBER: jumlah project Anda
- LOCATION_ID: region Cloud tempat anotasi akan dilakukan. Wilayah cloud yang didukung adalah:
us-east1
,us-west1
,europe-west1
,asia-east1
. Jika tidak ada wilayah yang ditentukan, wilayah akan ditentukan berdasarkan lokasi file video. - OPERATION_ID: ID operasi yang berjalan lama yang dibuat
untuk permintaan dan diberikan dalam respons saat Anda memulai
operasi, misalnya
12345...
Mendapatkan hasil anotasi
Untuk mengambil hasil operasi, buat permintaan GET, menggunakan nama operasi yang ditampilkan dari panggilan ke videos:annotate, seperti yang ditunjukkan dalam contoh berikut.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- OPERATION_NAME: nama operasi seperti
yang ditampilkan oleh Video Intelligence API. Nama operasi memiliki format
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
- PROJECT_NUMBER: ID numerik untuk project Google Cloud Anda
Metode HTTP dan URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Untuk mengirim permintaan, perluas salah satu opsi berikut:
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Anotasi deteksi adegan ditampilkan sebagai daftarshotAnnotations
.
Catatan: Kolom done hanya ditampilkan jika nilainya True.
ID ini tidak disertakan dalam respons yang operasinya belum selesai.
Mendownload hasil anotasi
Salin anotasi dari sumber ke bucket tujuan: (lihat Menyalin file dan objek)
gcloud storage cp gcs_uri gs://my-bucket
Catatan: Jika uri gcs output disediakan oleh pengguna, anotasi akan disimpan di uri gcs tersebut.
Java
Untuk melakukan autentikasi ke Video Intelligence, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk melakukan autentikasi ke Video Intelligence, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk melakukan autentikasi ke Video Intelligence, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Bahasa tambahan
C#: Ikuti Petunjuk penyiapan C# di halaman library klien, lalu kunjungi Dokumentasi referensi Video Intelligence untuk .NET.
PHP: Ikuti Petunjuk penyiapan PHP di halaman library klien, lalu kunjungi Dokumentasi referensi Video Intelligence untuk PHP.
Ruby: Ikuti Petunjuk penyiapan Ruby di halaman library klien, lalu kunjungi Dokumentasi referensi Video Intelligence untuk Ruby.
Deteksi orang dari file lokal
Contoh berikut menggunakan deteksi orang untuk menemukan entitas dalam video dari file video yang diupload dari komputer lokal Anda.
REST
Mengirim permintaan proses
Untuk melakukan deteksi orang pada file video lokal, enkode konten file video dengan base64. Untuk mengetahui informasi tentang cara mengenkode isi file
video dengan base64, lihat Encoding Base64. Kemudian, buat permintaan POST ke
metode
videos:annotate
. Sertakan konten yang dienkode base64 di kolom inputContent
permintaan dan tentukan fitur PERSON_DETECTION
.
Berikut ini contoh permintaan POST menggunakan curl. Contoh ini menggunakan Google Cloud CLI untuk membuat token akses. Untuk petunjuk cara menginstal gcloud CLI, lihat Panduan Memulai Video Intelligence API
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- inputContent: File video lokal dalam format biner
Misalnya: 'AAAAGGZ0eXBtcDQyAAAAAGlzb21tcDQyAAGVYW1vb3YAAABsbXZoZAAAAADWvhlR1r4ZUQABX5ABCOxo AAEAAAEAAAAAAA4...' - PROJECT_NUMBER: ID numerik untuk project Google Cloud Anda
Metode HTTP dan URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Meminta isi JSON:
{ "inputUri": "Local video file in binary format", "features": ["PERSON_DETECTION"], "videoContext": { "personDetectionConfig": { "includeBoundingBoxes": true, "includePoseLandmarks": true, "includeAttributes": true } } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Jika permintaan berhasil, Video Intelligence akan menampilkan name
untuk operasi Anda. Contoh di atas menunjukkan contoh respons tersebut, dengan project-number
adalah nomor project Anda dan operation-id
adalah ID operasi yang berjalan lama yang dibuat untuk permintaan tersebut.
{
"name": "us-west1.17122464255125931980"
}
Mendapatkan hasil
Untuk mengambil hasil operasi, buat permintaan GET ke endpoint operations
dan tentukan nama operasi Anda.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- OPERATION_NAME: nama operasi seperti
yang ditampilkan oleh Video Intelligence API. Nama operasi memiliki format
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
- PROJECT_NUMBER: ID numerik untuk project Google Cloud Anda
Metode HTTP dan URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
Untuk mengirim permintaan, perluas salah satu opsi berikut:
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Java
Untuk melakukan autentikasi ke Video Intelligence, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk melakukan autentikasi ke Video Intelligence, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk melakukan autentikasi ke Video Intelligence, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Bahasa tambahan
C#: Ikuti Petunjuk penyiapan C# di halaman library klien, lalu kunjungi Dokumentasi referensi Video Intelligence untuk .NET.
PHP: Ikuti Petunjuk penyiapan PHP di halaman library klien, lalu kunjungi Dokumentasi referensi Video Intelligence untuk PHP.
Ruby: Ikuti Petunjuk penyiapan Ruby di halaman library klien, lalu kunjungi Dokumentasi referensi Video Intelligence untuk Ruby.