Pelacakan objek melacak objek yang terdeteksi di video input. Untuk membuat
permintaan pelacakan objek, panggil metode
annotate
dan tentukan OBJECT_TRACKING
di kolom features
.
Untuk entity dan lokasi spasial yang terdeteksi dalam segmen video atau video, permintaan pelacakan objek akan menganotasi video dengan label yang sesuai untuk entity dan lokasi spasial tersebut. Misalnya, video kendaraan yang melintasi sinyal lalu lintas dapat menghasilkan label seperti "mobil", "truk", "sepeda", "ban", "lampu", "jendela", dan sebagainya. Setiap label dapat menyertakan serangkaian kotak pembatas, dengan setiap kotak pembatas memiliki segmen waktu terkait yang berisi offset waktu yang menunjukkan selisih durasi dari awal video. Anotasi juga berisi informasi entity tambahan, termasuk ID entity yang dapat Anda gunakan untuk menemukan informasi selengkapnya tentang entity di Search API Pustaka Pengetahuan Google.
Pelacakan objek vs. deteksi label
Pelacakan objek berbeda dengan deteksi label. Deteksi label memberikan label tanpa kotak pembatas, sedangkan pelacakan objek memberikan label setiap objek yang ada dalam video tertentu bersama dengan kotak pembatas setiap instance objek di setiap langkah waktu.
Beberapa instance dari jenis objek yang sama akan ditetapkan ke instance
pesan ObjectTrackingAnnotation
yang berbeda, dengan semua kemunculan jalur objek
tertentu akan disimpan dalam instance ObjectTrackingAnnotation
-nya sendiri. Misalnya, jika ada mobil merah dan mobil biru yang muncul selama 5 detik dalam
video, permintaan pelacakan akan menampilkan dua instance
ObjectTrackingAnnotation
. Instance pertama akan berisi
lokasi salah satu dari dua mobil, misalnya, mobil merah, sedangkan
instance kedua akan berisi lokasi mobil lain.
Meminta pelacakan objek untuk video di Cloud Storage
Contoh berikut menunjukkan pelacakan objek pada file yang terletak di Cloud Storage.
REST
Mengirim permintaan proses
Berikut ini cara mengirim permintaan POST
ke
metode annotate
.
Contoh ini menggunakan token akses untuk akun layanan yang disiapkan untuk project menggunakan Google Cloud CLI. Untuk mengetahui petunjuk cara menginstal Google Cloud CLI, menyiapkan project dengan akun layanan, dan mendapatkan token akses, lihat Panduan memulai Video Intelligence.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- INPUT_URI: STORAGE_URI
Contoh:
"inputUri": "gs://cloud-videointelligence-demo/assistant.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": "STORAGE_URI", "features": ["OBJECT_TRACKING"] }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID" }
Jika permintaan berhasil, Video Intelligence API akan menampilkan name
operasi Anda. 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.
Mendapatkan hasil
Untuk mendapatkan hasil permintaan, kirim 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:
Download hasil anotasi
Salin anotasi dari sumber ke bucket tujuan: (lihat Menyalin file dan objek)
gsutil cp gcs_uri gs://my-bucket
Catatan: Jika output gcs uri disediakan oleh pengguna, anotasi akan disimpan dalam uri gcs tersebut.
Go
Java
Node.js
Untuk mengautentikasi ke Video Intelligence, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Bahasa tambahan
C#: Ikuti Petunjuk penyiapan C# di halaman library klien lalu buka 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 buka Dokumentasi referensi Video Intelligence untuk Ruby.
Meminta pelacakan objek untuk video dari file lokal
Contoh berikut menunjukkan pelacakan objek pada file yang disimpan secara lokal.
REST
Mengirim permintaan proses
Untuk menjalankan anotasi pada file video lokal, lakukan enkode base64 atas konten file video.
Sertakan konten berenkode base64 di kolom inputContent
pada permintaan.
Untuk mengetahui informasi tentang cara mengenkode konten file video dengan base64, lihat
Encoding Base64.
Berikut ini cara mengirim permintaan POST
ke
metode
videos:annotate
. Contoh ini menggunakan token akses untuk akun layanan yang disiapkan untuk project menggunakan Google Cloud CLI. Untuk mengetahui petunjuk cara menginstal Google Cloud CLI, menyiapkan project dengan akun layanan, dan mendapatkan token akses, lihat Panduan memulai Video Intelligence.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- inputContent: BASE64_ENCODED_CONTENT
Contoh:"UklGRg41AwBBVkkgTElTVAwBAABoZHJsYXZpaDgAAAA1ggAAxPMBAAAAAAAQCAA..."
- PROJECT_NUMBER: ID numerik untuk project Google Cloud Anda
Metode HTTP dan URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
Meminta isi JSON:
{ "inputContent": "BASE64_ENCODED_CONTENT", "features": ["OBJECT_TRACKING"] }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
Jika permintaan berhasil, Video Intelligence name
untuk operasi Anda. Berikut ini contoh respons tersebut, dengan PROJECT_NUMBER
adalah nomor project Anda dan OPERATION_ID
adalah ID operasi jangka panjang yang dibuat untuk permintaan tersebut.
Mendapatkan hasil
Untuk mendapatkan hasil permintaan, Anda harus mengirim 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:
Go
Java
Node.js
Untuk mengautentikasi ke Video Intelligence, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Bahasa tambahan
C#: Ikuti Petunjuk penyiapan C# di halaman library klien lalu buka 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 buka Dokumentasi referensi Video Intelligence untuk Ruby.