Topik ini menjelaskan cara mengunggah gambar ke Image Search.
Informasi latar belakang
Image Search menyediakan dua metode untuk mengunggah gambar. Anda dapat mengunggah gambar dengan memanggil operasi API atau menggunakan SDK Image Search. Anda juga dapat mengunggah beberapa gambar sekaligus dari Object Storage Service (OSS) ke Image Search menggunakan fitur operasi batch.
Untuk unggahan dalam jumlah kecil, sebaiknya gunakan API atau SDK Image Search. Untuk informasi lebih lanjut, lihat AddImage.
Jika Anda pengguna enterprise atau ingin mengunggah beberapa gambar sekaligus yang tidak disimpan di bucket OSS, Anda dapat menggunakan ossimport untuk mengimpor gambar ke OSS, lalu mengunggahnya ke Image Search. Untuk informasi lebih lanjut, lihat bagian Prosedur pada topik ini.
Jika Anda pengguna enterprise atau ingin mengunggah beberapa gambar sekaligus yang disimpan di bucket OSS, Anda dapat menggunakan fitur operasi batch. Untuk informasi lebih lanjut, lihat Melakukan operasi batch.
PentingSebelum menggunakan fitur operasi batch Image Search, pastikan bucket OSS dan instans Image Search Anda berada di wilayah yang sama.
Pengenalan ossimport
ossimport adalah tool yang disediakan oleh OSS untuk migrasi data ke OSS. Anda dapat men-deploy ossimport pada mesin lokal Anda atau instans Elastic Compute Service (ECS) untuk memigrasikan data dari server Anda atau sistem penyimpanan cloud lainnya ke OSS.
ossimport memberikan manfaat berikut untuk pengunggahan gambar:
Gambar dapat diperbarui dengan cepat ke image search engine.
Bucket OSS yang sama dapat digunakan oleh berbagai proyek, seperti proyek development dan proyek online.
Anda dapat mengatur dan mengelola berbagai sumber gambar sesuai kebutuhan bisnis.
Anda dapat mengelola proyek kompleks dengan mudah, seperti proyek development dan proyek User Acceptance Testing (UAT).
Anda dapat mengunggah sejumlah besar gambar sekaligus. Gambar yang diunggah dapat digunakan kembali dalam berbagai skenario, yang memanfaatkan bandwidth jaringan secara penuh.
Anda dapat menstandardisasi manajemen layanan pencarian gambar.
Batasan gambar
Ukuran gambar tidak boleh melebihi 4 MB.
Panjang dan lebar gambar harus lebih dari 100 piksel dan kurang dari atau sama dengan 4.096 piksel.
Prosedur
Langkah 1: Unduh ossimport
ossimport mendukung mode deployment standalone dan terdistribusi.
Deployment standalone cocok untuk migrasi data berukuran kurang dari 30 TB. Anda dapat men-deploy ossimport pada mesin yang dapat mengakses data yang akan dimigrasikan dan bucket OSS tujuan. Untuk men-deploy ossimport dalam mode standalone, unduh paket standalone.
Deployment terdistribusi cocok untuk migrasi data berukuran lebih dari 30 TB. Anda dapat men-deploy ossimport pada beberapa mesin yang dapat mengakses data yang akan dimigrasikan dan bucket OSS tujuan. Untuk men-deploy ossimport dalam mode terdistribusi, unduh paket terdistribusi.
Untuk mengurangi waktu migrasi data dalam jumlah besar, sebaiknya deploy ossimport pada instans ECS di wilayah yang sama dengan bucket OSS Anda. Kemudian, gunakan sirkuit Express Connect untuk menghubungkan server penyimpan data sumber ke Virtual Private Cloud (VPC). Migrasi data dari instans ECS ke OSS melalui jaringan internal akan sangat meningkatkan efisiensi.
Langkah 2: Aktifkan OSS
Untuk informasi lebih lanjut, lihat Aktifkan OSS.
Langkah 3: Buat bucket OSS
Untuk informasi lebih lanjut, lihat Buat Bucket.
Pastikan bucket OSS dan instans Image Search Anda berada di wilayah yang sama.
Langkah 4: Buat file increment.meta
Buat file increment.meta di Bucket OSS tempat gambar disimpan. File ini berisi detail gambar yang akan diproses dalam task batch.
File increment.meta dan gambar yang ditentukan dalam file increment.meta harus disimpan di bucket yang sama. Jika tidak, operasi batch akan gagal.
Nama file selalu increment.meta. Image Search membaca detail gambar yang akan diproses berdasarkan nama file ini. Jangan ubah nama file. Jika diubah, operasi batch akan gagal.
Image Search memungkinkan Anda melakukan operasi batch pada gambar yang disimpan di path berbeda dalam satu bucket. Misalnya, jika file increment.meta berada di direktori root bucket imagesearch, dan gambar bernama girl_cloth8.jpg berada di direktori girlCloth dalam bucket tersebut, maka parameter PicName untuk gambar tersebut harus ditentukan sebagai
"PicName":"girlCloth/girl_cloth8.jpg"dalam file increment.meta. Perhatikan bahwa tidak boleh ada garis miring (/) yang ditambahkan sebelum girlCloth atau setelah girl_cloth8.jpg. Logika ini juga berlaku untuk direktori bertingkat.Tambahkan ekstensi nama file ke nama gambar yang disimpan di OSS. Misalnya, jika gambar bernama girl_cloth10.jpg, tentukan parameter PicName sebagai "PicName":"girl_cloth10.jpg", bukan "PicName":"girl_cloth10". Jika tidak, operasi batch akan gagal.
Dalam file increment.meta, tentukan hanya satu gambar per baris. Jika Anda menentukan beberapa gambar dalam satu baris, operasi batch akan gagal.
Berikut kode sampel yang memberikan contoh cara menentukan gambar dalam file increment.meta:
{"OperationType": "ADD","ProductId": "1000","PicName": "girl_cloth1.jpg","CategoryId": 0,"IntAttr": 0,"StrAttr": "value1","CustomContent": "k1:v1,k2:v2,k3:v3","Region": "20,40,60,80"}
{"OperationType": "ADD","ProductId": "1000","PicName": "girl_cloth2.jpg","CategoryId": 0,"IntAttr": 0,"StrAttr": "value2","CustomContent": "k1:v1,k2:v2,k3:v3","Region": "20,40,60,80"}
{"OperationType": "ADD","ProductId": "1001","PicName": "girl_cloth3.jpg","CategoryId": 1,"CustomContent": "k1:v1,k2:v2,k3:v3"}
{"OperationType": "ADD","ProductId": "1002","PicName": "girl_cloth4.jpg","CategoryId": 0,"CustomContent": "k1:v1,k2:v2,k3:v3","Crop": false}
{"OperationType": "ADD","ProductId": "1003","PicName": "girl_cloth7.jpg","CustomContent": "https://www.aliyun.com/imagesearch/girl_cloth7.jpg"}
{"OperationType": "ADD","ProductId": "1003","PicName": "girl_cloth6.jpg","CustomContent": "k1:v1,k2:v2,k3:v3"}
{"OperationType": "ADD","ProductId": "1006","PicName": "girlCloth/girl_cloth10.jpg","CustomContent": "k1:v1,k2:v2,k3:v3"}
{"OperationType": "DELETE","ProductId": "1004","PicName": "fengyi.jpg"}
{"OperationType": "DELETE","ProductId": "1005"}Dalam file ini, informasi tentang setiap gambar dikodekan dalam format JSON. Tabel berikut menjelaskan parameter dalam file tersebut.
Parameter | Tipe | Wajib | Deskripsi |
OperationType | String | Ya | Tipe operasi.
|
ProductId | String | Ya | ID unik gambar. ID ini dapat memiliki panjang hingga 256 karakter. |
PicName | String | Ya | Nama gambar yang disimpan di bucket OSS. Nama ini dapat memiliki panjang hingga 256 karakter. Penting
|
CategoryId | Integer | Tidak | Kategori gambar. Untuk informasi lebih lanjut tentang kategori, lihat Referensi kategori.
|
CustomContent | String | Ya | Konten yang ditentukan pengguna. Nilai ini dapat memiliki panjang hingga 4.096 karakter. Catatan Konten gambar yang ditentukan pengguna secara otomatis dikembalikan dalam hasil pencarian. Anda dapat menambahkan informasi seperti URL gambar dan deskripsi gambar menggunakan parameter ini. |
IntAttr | Integer | Tidak | Atribut bertipe integer. Atribut ini digunakan untuk memfilter gambar saat Anda mencari gambar. Catatan Saat Anda mencari gambar, Anda dapat menentukan parameter Integer Attribute dan kondisi filter untuk memfilter gambar. Untuk informasi lebih lanjut, lihat Mencari gambar dengan menentukan kondisi filter. |
StrAttr | String | Tidak | Atribut bertipe string. Nilai ini dapat memiliki panjang hingga 128 karakter. Atribut ini digunakan untuk memfilter gambar saat Anda mencari gambar. Catatan
|
Crop | Boolean | Tidak | Menentukan apakah akan mengidentifikasi subjek dalam gambar dan mencari gambar berdasarkan subjek yang diidentifikasi. Nilai default: true. Nilai valid:
|
Region | String | Tidak | Area subjek gambar. Area subjek ditampilkan dalam format Catatan Jika Anda menetapkan parameter ini, nilainya akan menjadi prioritas dibandingkan parameter Crop. |
Langkah 5: Beri otorisasi Image Search untuk mengakses OSS
Untuk menerapkan fitur operasi batch di Image Search, Anda harus menggunakan Image Search bersama dengan OSS. Saat pertama kali menggunakan fitur operasi batch, berikan otorisasi pada akun Image Search Anda untuk mengakses OSS. Jika akun Anda sudah diotorisasi, lewati langkah ini.
Langkah 6: Unggah gambar
Masuk ke konsol Image Search.
Pilih jenis layanan, lalu klik nama instans Image Search yang ingin Anda kelola.
Klik tab Batch Operation.

Klik Create Batch Task.

Konfigurasikan parameter task batch berikut:
Region
Parameter ini menentukan wilayah tempat instans Image Search berada.
Bucket Name
Parameter ini menentukan nama bucket yang Anda buat di OSS.
PentingPastikan bucket OSS dan instans Image Search Anda berada di wilayah yang sama.
Path
Parameter ini menentukan path tempat file increment.meta dan gambar disimpan.

META files
Parameter ini menentukan file yang digunakan untuk menyimpan detail gambar yang akan diproses. File ini bernama increment.meta. Anda dapat mengklik ikon Refresh di sebelah kanan kolom untuk memeriksa apakah file tersebut ada.
Call backs after the operation completes
Parameter ini menentukan URL callback. URL harus diawali dengan HTTP atau HTTPS.
{ "finishTime": "2021-05-19 17:50:00", "instanceId": "imagesearch-cn-xxxx", "instanceName": "instanceName", "message": "success", "processResultUrl": "https://image-search-task-info.oss-cn-shanghai.aliyuncs.com/yyyyyyyyyy", "status": "NORMAL", "taskId": 111 }Parameter
Deskripsi
finishTime
Waktu penyelesaian task batch, akurat hingga detik.
instanceName
Nama instans Image Search.
instanceId
ID instans Image Search.
status
Hasil task batch. Nilai NORMAL menunjukkan bahwa task batch telah selesai. Nilai FAIL menunjukkan bahwa task batch gagal.
taskId
ID task batch.
message
Deskripsi hasil task. Nilai success menunjukkan bahwa task telah selesai.
processResultUrl
URL yang digunakan untuk mengunduh informasi kegagalan.
Verifikasi hasil
Setelah task unggah selesai, Anda dapat mengklik ID instans dan memeriksa status task unggah.
Jika gambar gagal diunggah, klik Show Import History untuk melihat detailnya. Untuk informasi lebih lanjut, lihat bagian Apa yang mungkin menyebabkan kegagalan permintaan impor OSS? dari topik "FAQ".

Jika gambar berhasil diunggah sesuai harapan, klik ID instans. Pada halaman yang muncul, klik tab Search by Image. Pada tab ini, lakukan tes pencarian gambar.
