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 akan menganotasi video dengan label yang sesuai untuk entitas dan lokasi spasial ini. Misalnya, video kendaraan yang melintasi lampu 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 selisih 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 Google Knowledge Graph Search API.
Pelacakan objek vs. deteksi label
Pelacakan objek berbeda dengan deteksi label. Deteksi label memberikan label tanpa kotak pembatas, sedangkan pelacakan objek memberikan label objek individual yang ada dalam video tertentu beserta kotak pembatas setiap instance objek pada setiap langkah waktu.
Beberapa instance dari 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 harus 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 pemrosesan
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, serta 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 Google Cloud project
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 Anda, 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 Google Cloud project
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 bucket 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, maka 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 buka Dokumentasi referensi Video Intelligence untuk .NET.
PHP: Ikuti Petunjuk penyiapan PHP di halaman library klien, lalu buka 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 pemrosesan
Untuk melakukan anotasi pada file video lokal, lakukan enkode base64 pada konten file video.
Sertakan konten berenkode base64 di kolom inputContent
permintaan.
Untuk mengetahui informasi tentang cara mengenkode konten file video dengan base64, lihat
Pengkodean 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, serta 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 Google Cloud project
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 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 Google Cloud project
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 buka Dokumentasi referensi Video Intelligence untuk .NET.
PHP: Ikuti Petunjuk penyiapan PHP di halaman library klien, lalu buka Dokumentasi referensi Video Intelligence untuk PHP.
Ruby: Ikuti Petunjuk penyiapan Ruby di halaman library klien lalu buka Dokumentasi referensi Video Intelligence untuk Ruby.