Pelacakan objek melacak objek yang terdeteksi dalam video input. Untuk membuat permintaan pelacakan objek, panggil metode annotate
dan tentukan OBJECT_TRACKING
di kolom features
.
Untuk entitas dan lokasi spasial yang terdeteksi dalam video atau segmen video, permintaan pelacakan objek menganotasi video dengan label yang sesuai untuk entitas dan lokasi spasial ini. Misalnya, video kendaraan yang melintasi sinyal lalu lintas mungkin 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 offset durasi dari awal video. Anotasi juga berisi informasi entitas tambahan, termasuk ID entitas yang dapat Anda gunakan untuk menemukan informasi selengkapnya tentang entitas di API Penelusuran Grafik 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 beserta kotak pembatas setiap instance objek pada setiap langkah waktu.
Beberapa instance jenis objek yang sama ditetapkan ke instance pesan ObjectTrackingAnnotation
yang berbeda, dengan semua kemunculan jalur objek tertentu 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 lainnya.
Meminta pelacakan objek untuk video di Cloud Storage
Contoh berikut menunjukkan pelacakan objek pada file yang berada 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
Misalnya:
"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.
Mendapatkan hasil
Untuk mendapatkan hasil permintaan Anda, kirim GET
, menggunakan nama operasi yang ditampilkan dari
panggilan ke videos:annotate
, seperti yang ditunjukkan pada 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:
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.
Go
Java
Node.js
Untuk melakukan autentikasi ke Video Intelligence, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
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.
Meminta pelacakan objek untuk video dari file lokal
Contoh berikut menunjukkan pelacakan objek pada file yang disimpan secara lokal.
REST
Mengirim permintaan proses
Untuk melakukan anotasi pada file video lokal, enkode konten file video dengan base64.
Sertakan konten yang dienkode base64 di kolom inputContent
permintaan.
Untuk 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
Misalnya:"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 menerima respons JSON yang mirip dengan yang berikut ini:
Jika permintaan berhasil, Video Intelligence akan menampilkan name
untuk operasi Anda. Berikut ini
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, Anda harus mengirim GET
, menggunakan nama operasi yang ditampilkan dari
panggilan ke videos:annotate
, seperti yang ditunjukkan pada 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 melakukan autentikasi ke Video Intelligence, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
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.