Deteksi label video menganalisis konten video dan mengembalikan label terstruktur yang menggambarkan adegan, event, dan objek. Gunakan label tersebut untuk mengklasifikasikan, mencari, serta merekomendasikan video dalam aplikasi Anda.
Kasus penggunaan
Video classification: Secara otomatis mengkategorikan video ke dalam topik seperti berita, hiburan, game, teknologi, makanan, olahraga, perjalanan, animasi, tari, musik, film dan televisi, serta otomotif.
Video retrieval: Bangun pustaka video yang dapat dicari dengan mengindeks label. Misalnya, ambil semua video yang berisi adegan luar ruangan atau objek tertentu.
Personalized recommendation: Cocokkan label konten yang diekstraksi dari video dengan label preferensi pengguna untuk mengirimkan rekomendasi video yang ditargetkan.
Cara kerja
Unggah video ke bucket OSS.
Panggil CreateVideoLabelClassificationTask untuk membuat task deteksi label asinkron.
Setelah task selesai, panggil GetVideoLabelClassificationResult untuk mengambil label yang terdeteksi.
Informasi task hanya disimpan selama tujuh hari setelah task dimulai. Setelah periode tersebut, hasilnya tidak lagi tersedia melalui API.
Prasyarat
Sebelum memulai, pastikan Anda telah memiliki:
Pasangan Kunci Akses (AccessKey pair). Untuk informasi lebih lanjut, lihat Create an AccessKey pair.
Bucket OSS dengan video yang telah diunggah. Untuk informasi lebih lanjut, lihat Upload objects.
IMM yang telah diaktifkan. Untuk informasi lebih lanjut, lihat Activate IMM.
Proyek IMM yang dibuat di wilayah target. Untuk informasi lebih lanjut, lihat Create a project.
Anda juga dapat membuat dan mengelola proyek secara terprogram. Panggil CreateProject untuk membuat proyek, atau ListProjects untuk menanyakan proyek yang sudah ada di suatu wilayah.
Lacak status task
Selain memanggil GetVideoLabelClassificationResult, Anda dapat menggunakan metode berikut untuk melacak kemajuan task:
Metode | Deskripsi |
API polling | Panggil GetTask atau ListTasks untuk menanyakan detail task. |
Simple Message Queue (SMQ) | Berlangganan notifikasi task di wilayah yang sama dengan proyek IMM Anda. Untuk informasi lebih lanjut, lihat Asynchronous message examples dan Receive and delete the message. |
ApsaraMQ for RocketMQ 4.0 | Buat instans RocketMQ, topik, dan kelompok di wilayah yang sama untuk menerima notifikasi task. Untuk informasi lebih lanjut, lihat Asynchronous message examples dan Send and subscribe to normal messages. |
EventBridge | Menerima event penyelesaian task melalui EventBridge. Untuk informasi lebih lanjut, lihat IMM events. |
Struktur respons
Task yang berhasil mengembalikan array Labels yang berisi label hierarkis yang diorganisasikan hingga tiga level. Setiap label mencakup skor confidence dan skor centricity.
Bidang label
Bidang | Tipe | Deskripsi |
| String | Nama label yang terdeteksi, seperti "Natural landscape" atau "Car". |
| Float | Probabilitas bahwa label tersebut benar. Rentang: 0 hingga 1. Nilai yang lebih tinggi menunjukkan keyakinan yang lebih besar. |
| Float | Seberapa sentral atau menonjol konten berlabel dalam video. Rentang: 0 hingga 1. Nilai yang lebih tinggi berarti kontennya lebih menonjol. |
| Integer | Posisi dalam hierarki label. |
| String | Nama label induk. Kosong untuk label tingkat atas (level 1). |
| String | Bahasa nama label, seperti |
Hierarki label
Label diorganisasikan dalam hierarki tiga level. Setiap label anak mereferensikan induknya melalui ParentLabelName:
Level 1 (category) Level 2 (subcategory) Level 3 (detail)
--------------------- ---------------------- -----------------
Tourism & geography -> Natural landscape -> Moon, Sky
Others -> Color -> Blue, Green, Black, White
-> Astronomical object
Daily necessities -> Text
-> Letter
Virtual scene -> Web page
-> Website
Artwork -> Illustration
Other scenes -> Mobile phone screenshotContoh respons
{
"ProjectName": "test-project",
"RequestId": "D65E8038-C584-0809-9BF0-****",
"StartTime": "2022-08-22T05:01:17.572Z",
"EndTime": "2022-08-22T05:01:20.49Z",
"TaskType": "VideoLabelClassification",
"TaskId": "VideoLabelClassification-1b77de73-ff9f-4c39-b254-****",
"Status": "Succeeded",
"Labels": [
{
"Language": "zh-Hans",
"LabelName": "Color",
"LabelConfidence": 0.999,
"CentricScore": 0.77,
"LabelLevel": 2,
"ParentLabelName": "Others"
},
{
"Language": "zh-Hans",
"LabelName": "Others",
"LabelConfidence": 0.999,
"CentricScore": 0.77,
"LabelLevel": 1,
"ParentLabelName": ""
},
{
"Language": "zh-Hans",
"LabelName": "Blue",
"LabelConfidence": 1,
"CentricScore": 0.716,
"LabelLevel": 3,
"ParentLabelName": "Color"
},
{
"Language": "zh-Hans",
"LabelName": "Natural landscape",
"LabelConfidence": 0.897,
"CentricScore": 0.801,
"LabelLevel": 2,
"ParentLabelName": "Tourism & geography"
},
{
"Language": "zh-Hans",
"LabelName": "Moon",
"LabelConfidence": 0.859,
"CentricScore": 0.756,
"LabelLevel": 3,
"ParentLabelName": "Natural landscape"
}
]
}Contoh ini telah dipersingkat. Respons lengkap biasanya berisi lebih banyak label. Respons juga dapat mencakup UserData jika diatur dalam permintaan, serta bidang Code dan Message jika terjadi error.
Format video yang didukung
Deteksi label video mendukung 22 format berikut: AVI, MPEG, MPG, DAT, DIVX, XVID, RM, RMVB, MOV, QT, ASF, WMV, VOB, 3GP, MP4, FLV, AVS, MKV, TS, OGM, NSV, dan SWF.
FAQ
Apakah saya bisa menentukan label mana yang akan dideteksi?
Tidak. Deteksi label video menggunakan taksonomi label yang telah ditentukan sebelumnya. Anda tidak dapat menentukan, menyertakan, atau mengecualikan label individual.
Kategori apa saja yang mencakup label?
Label dikelompokkan ke dalam tiga kategori luas:
Scenes: Lanskap alami seperti hutan, pantai, dan pegunungan bersalju; ruang hidup seperti rumah dan restoran; serta adegan bencana.
Events: Pertunjukan bakat, aktivitas kantor, pertunjukan, dan proses produksi.
Objects: Peralatan makan, produk elektronik seperti ponsel dan komputer, furnitur, dan kendaraan.