Mengubah COCO kumpulan data menjadi format file manifes - Rekognition

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengubah COCO kumpulan data menjadi format file manifes

COCOadalah format untuk menentukan deteksi objek skala besar, segmentasi, dan kumpulan data teks. Contoh Python ini menunjukkan kepada Anda cara mengubah kumpulan data format deteksi COCO objek menjadi file manifes format kotak pembatas Amazon Rekognition Custom Labels. Bagian ini juga mencakup informasi yang dapat Anda gunakan untuk menulis kode Anda sendiri.

JSONFile COCO format terdiri dari lima bagian yang menyediakan informasi untuk seluruh kumpulan data. Untuk informasi selengkapnya, lihat Format COCO dataset.

  • info— informasi umum tentang dataset.

  • licenses — informasi lisensi untuk gambar dalam dataset.

  • images— daftar gambar dalam dataset.

  • annotations— daftar anotasi (termasuk kotak pembatas) yang ada di semua gambar dalam kumpulan data.

  • categories— daftar kategori label.

Anda memerlukan informasi dariimages,annotations, dan categories daftar untuk membuat file manifes Label Kustom Rekognition Amazon.

File manifes Label Kustom Rekognition Amazon JSON dalam format baris di mana setiap baris memiliki kotak pembatas dan informasi label untuk satu atau beberapa objek pada gambar. Untuk informasi selengkapnya, lihat Lokalisasi objek dalam file manifes.

Memetakan COCO Objek ke Garis Label JSON Kustom

Untuk mengubah kumpulan data COCO format, Anda memetakan kumpulan COCO data ke file manifes Label Kustom Rekognition Amazon untuk pelokalan objek. Untuk informasi selengkapnya, lihat Lokalisasi objek dalam file manifes. Untuk membuat JSON baris untuk setiap gambar, file manifes perlu memetakan COCO kumpulan dataimage,annotation, dan bidang category IDs objek.

Berikut ini adalah contoh file COCO manifes. Untuk informasi selengkapnya, lihat Format COCO dataset.

{ "info": { "description": "COCO 2017 Dataset","url": "http://cocodataset.org","version": "1.0","year": 2017,"contributor": "COCO Consortium","date_created": "2017/09/01" }, "licenses": [ {"url": "http://creativecommons.org/licenses/by/2.0/","id": 4,"name": "Attribution License"} ], "images": [ {"id": 242287, "license": 4, "coco_url": "http://images.cocodataset.org/val2017/xxxxxxxxxxxx.jpg", "flickr_url": "http://farm3.staticflickr.com/2626/xxxxxxxxxxxx.jpg", "width": 426, "height": 640, "file_name": "xxxxxxxxx.jpg", "date_captured": "2013-11-15 02:41:42"}, {"id": 245915, "license": 4, "coco_url": "http://images.cocodataset.org/val2017/nnnnnnnnnnnn.jpg", "flickr_url": "http://farm1.staticflickr.com/88/xxxxxxxxxxxx.jpg", "width": 640, "height": 480, "file_name": "nnnnnnnnnn.jpg", "date_captured": "2013-11-18 02:53:27"} ], "annotations": [ {"id": 125686, "category_id": 0, "iscrowd": 0, "segmentation": [[164.81, 417.51,......167.55, 410.64]], "image_id": 242287, "area": 42061.80340000001, "bbox": [19.23, 383.18, 314.5, 244.46]}, {"id": 1409619, "category_id": 0, "iscrowd": 0, "segmentation": [[376.81, 238.8,........382.74, 241.17]], "image_id": 245915, "area": 3556.2197000000015, "bbox": [399, 251, 155, 101]}, {"id": 1410165, "category_id": 1, "iscrowd": 0, "segmentation": [[486.34, 239.01,..........495.95, 244.39]], "image_id": 245915, "area": 1775.8932499999994, "bbox": [86, 65, 220, 334]} ], "categories": [ {"supercategory": "speaker","id": 0,"name": "echo"}, {"supercategory": "speaker","id": 1,"name": "echo dot"} ] }

Diagram berikut menunjukkan bagaimana COCO kumpulan data mencantumkan peta kumpulan data ke baris Label Kustom JSON Rekognition Amazon untuk gambar. Setiap JSON baris untuk gambar memiliki kolom source-ref, job, dan job metadata. Warna yang cocok menunjukkan informasi untuk satu gambar. Perhatikan bahwa dalam manifes, gambar individu mungkin memiliki beberapa anotasi dan metadata/kategori.

Diagram yang menunjukkan struktur Coco Manifest, dengan gambar, anotasi, dan kategori yang terkandung di dalamnya.
Untuk mendapatkan COCO objek untuk satu JSON baris
  1. Untuk setiap gambar dalam daftar gambar, dapatkan anotasi dari daftar anotasi di mana nilai bidang anotasi image_id cocok dengan bidang gambar. id

  2. Untuk setiap anotasi yang cocok di langkah 1, baca categories daftar dan dapatkan masing-masing category nilai bidang yang id cocok dengan category bidang annotation objekcategory_id.

  3. Buat JSON garis untuk gambar menggunakan category objek yang cocok imageannotation, dan. Untuk memetakan bidang, lihatMemetakan bidang COCO objek ke bidang objek JSON baris Label Kustom.

  4. Ulangi langkah 1-3 sampai Anda telah membuat JSON baris untuk setiap image objek dalam daftar. images

Untuk kode sampel, lihat Mengubah kumpulan data COCO.

Memetakan bidang COCO objek ke bidang objek JSON baris Label Kustom

Setelah Anda mengidentifikasi COCO objek untuk baris JSON Label Kustom Amazon Rekognition, Anda perlu memetakan COCO bidang objek ke bidang objek baris Amazon Rekognition Custom Labels masing-masing. JSON Contoh berikut baris Amazon Rekognition Custom JSON Labels memetakan satu gambar id (000000245915=) ke contoh sebelumnya. COCO JSON Perhatikan informasi berikut.

  • source-refadalah lokasi gambar dalam ember Amazon S3. Jika COCO gambar Anda tidak disimpan dalam bucket Amazon S3, Anda harus memindahkannya ke bucket Amazon S3.

  • annotationsDaftar berisi annotation objek untuk setiap objek pada gambar. annotationObjek mencakup informasi kotak pembatas (top,, leftwidth,height) dan pengenal label (class_id).

  • Pengidentifikasi label (class_id) memetakan ke class-map daftar dalam metadata. Ini mencantumkan label yang digunakan pada gambar.

{ "source-ref": "s3://custom-labels-bucket/images/000000245915.jpg", "bounding-box": { "image_size": { "width": 640, "height": 480, "depth": 3 }, "annotations": [{ "class_id": 0, "top": 251, "left": 399, "width": 155, "height": 101 }, { "class_id": 1, "top": 65, "left": 86, "width": 220, "height": 334 }] }, "bounding-box-metadata": { "objects": [{ "confidence": 1 }, { "confidence": 1 }], "class-map": { "0": "Echo", "1": "Echo Dot" }, "type": "groundtruth/object-detection", "human-annotated": "yes", "creation-date": "2018-10-18T22:18:13.527256", "job-name": "my job" } }

Gunakan informasi berikut untuk memetakan kolom file manifes Label Kustom Rekognition Amazon ke bidang COCO kumpulan data. JSON

sumber-ref

Format S3 URL untuk lokasi gambar. Gambar harus disimpan dalam ember S3. Untuk informasi selengkapnya, lihat sumber-ref. Jika coco_url COCO bidang menunjuk ke lokasi bucket S3, Anda dapat menggunakan nilai coco_url untuk nilai. source-ref Atau, Anda dapat memetakan source-ref ke bidang file_name (COCO) dan dalam kode transformasi Anda, tambahkan jalur S3 yang diperlukan ke tempat gambar disimpan.

bounding-box

Nama atribut label yang Anda pilih. Untuk informasi selengkapnya, lihat bounding-box.

image_size

Ukuran gambar dalam piksel. Peta ke image objek dalam daftar gambar.

  • height-> image.height

  • width-> image.width

  • depth-> Tidak digunakan oleh Label Kustom Rekognition Amazon tetapi nilainya harus diberikan.

anotasi

Daftar objek annotation. Ada satu annotation untuk setiap objek pada gambar.

anotasi

Berisi informasi kotak pembatas untuk satu contoh objek pada gambar.

  • class_id-> pemetaan id numerik ke daftar Custom Label. class-map

  • top -> bbox[1]

  • left -> bbox[0]

  • width -> bbox[2]

  • height -> bbox[3]

bounding-box-metadata

Metadata untuk atribut label. Termasuk label dan pengidentifikasi label. Untuk informasi selengkapnya, lihat bounding-box-metadata.

Objek

Array objek dalam gambar. Peta ke annotations daftar berdasarkan indeks.

Objek
  • confidence-> Tidak digunakan oleh Amazon Rekognition Custom Labels, tetapi nilai (1) diperlukan.

peta kelas

Peta label (kelas) yang berlaku untuk objek yang terdeteksi dalam gambar. Peta ke objek kategori dalam daftar kategori.

jenis

Harus groundtruth/object-detection

beranotasi manusia

Tentukan yes atau no. Untuk informasi selengkapnya, lihat bounding-box-metadata.

kreasi-tanggal -> gambar .date_capture

Tanggal dan waktu pembuatan gambar. Peta ke bidang gambar .date_capture dari gambar dalam daftar gambar. COCO Amazon Rekognition Custom Labels mengharapkan format menjadi Y-M-:M: creation-date S. DTH

nama-pekerjaan

Nama pekerjaan yang Anda pilih.