Apa itu segmentasi instance?

Penyusun

Dave Bergmann

Senior Staff Writer, AI Models

IBM Think

Cole Stryker

Staff Editor, AI Models

IBM Think

Apa itu segmentasi instance?

Segmentasi contoh adalah visi komputer berbasis pembelajaran mendalam yang memprediksi batas-batas piksel yang tepat dari setiap contoh objek dalam sebuah gambar.

Segmentasi contoh yang merupakan bagian dari bidang segmentasi gambar yang lebih besar memberikan output yang lebih terperinci dan canggih daripada algoritma deteksi objek konvensional. Tugas segmentasi gambar lainnya termasuk segmentasi semantik, yang mengategorikan setiap piksel dalam gambar menurut kelas semantik, yaitu kategori "benda" atau "barang" yang diwakilinya, dan segmentasi panoptik, yang memadukan tujuan segmentasi contoh dan segmentasi semantik.

Segmentasi contoh memiliki berbagai macam contoh penggunaan pemrosesan gambar di berbagai industri, mulai dari analisis gambar medis untuk mendeteksi objek diamati dalam citra satelit hingga memungkinkan navigasi pada mobil otonom.

Tren AI terbaru, dipersembahkan oleh para pakar

Dapatkan kurasi insight tentang berita AI yang paling penting dan menarik. Berlangganan buletin Think mingguan. Lihat Pernyataan Privasi IBM.

Terima kasih! Anda telah berlangganan.

Langganan Anda akan dikirimkan dalam bahasa Inggris. Anda akan menemukan tautan berhenti berlangganan di setiap buletin. Anda dapat mengelola langganan atau berhenti berlangganan di sini. Lihat Pernyataan Privasi IBM kami untuk informasi lebih lanjut.

Segmentasi instance vs. deteksi objek

Perbedaan utama antara tugas segmentasi instance dan deteksi objek konvensional adalah bahwa segmentasi instance memprediksi batas-batas tingkat piksel dari setiap objek, sedangkan deteksi objek hanya memprediksi perkiraan lokasi objek.

Metode deteksi objek konvensional adalah perkembangan kombinasi klasifikasi gambar dan lokalisasi objek. Dilatih dengan berbagai algoritma machine learning untuk mengenali pola visual dari kategori objek yang relevan, misalnya, model pengemudian otonom dapat dilatih untuk mengenali benda-benda seperti "mobil" atau "pejalan kaki," model deteksi objek menganalisis data visual dari gambar input untuk memberi keterangan pada setiap contoh objek yang relevan dan menghasilkan area persegi panjang, yang disebut "kotak pembatas", tempat setiap contoh berada.

Sistem segmentasi instance juga mendeteksi objek dalam gambar, tetapi dengan detail yang jauh lebih besar: alih-alih kotak pembatas yang mendekati lokasi instance objek, algoritma segmentasi instance menghasilkan "mask segmentasi" piksel demi piksel dari bentuk dan area yang tepat dari setiap instance.

Banyak arsitektur model segmentasi instance terkemuka, seperti Mask R-CNN, melakukan deteksi objek konvensional sebagai langkah awal dalam proses menghasilkan mask segmentasi. Model "dua tahap" seperti itu biasanya memberikan akurasi yang canggih, meskipun dengan pengorbanan dalam hal kecepatan.

Mixture of Experts | 12 Desember, episode 85

Decoding AI: Rangkuman Berita Mingguan

Bergabunglah dengan panel insinyur, peneliti, pemimpin produk, dan sosok kelas dunia lainnya selagi mereka mengupas tuntas tentang AI untuk menghadirkan berita dan insight terbaru seputar AI.

Segmentasi instance vs. segmentasi semantik

Segmentasi semantik adalah tugas yang kurang kompleks daripada segmentasi instance. Tidak seperti segmentasi instance, segmentasi semantik tidak berkaitan dengan menghitung atau membedakan antara instance yang berbeda: satu-satunya tujuan segmentasi semantik adalah untuk membuat anotasi setiap piksel dalam gambar dengan label kelas semantik.

Model segmentasi semantik tidak membedakan antara benda, kelas entitas yang dapat dihitung dengan bentuk yang berbeda, seperti "mobil" atau "orang", dan barang (yaitu kelas entitas yang tidak dapat dihitung dengan bentuk yang bervariasi, seperti "langit" atau "jalan").

Jika beberapa instance objek dari kelas benda yang sama berdekatan atau saling tumpang tindih, model segmentasi semantik akan mengelompokkannya dalam satu segmen gambar. Sebagai contoh, pertimbangkan bagaimana model segmentasi semantik memperlakukan mobil yang diparkir secara berdekatan di setiap sisi jalan dalam gambar ini.

Perbandingan berdampingan dari gambar jalan kota normal vs. gambar yang sama dengan segmentasi semantik

Sebaliknya, model segmentasi instance berfokus secara eksklusif pada pendeteksian dan pembuatan mask segmentasi untuk masing-masing benda. Model segmentasi instance harus dapat menggambarkan setiap instance objek yang berbeda, bahkan untuk instance yang terhalang dari kelas objek yang sama.

Perbandingan berdampingan antara gambar jalan kota normal vs gambar yang sama dengan segmentasi semantik vs. gambar yang sama dengan segmentasi instance

Segmentasi instance vs. segmentasi panoptik

Segmentasi panoptik memerlukan klasifikasi semantik setiap piksel dalam gambar dan juga penggambaran setiap instance objek yang berbeda.

Model segmentasi panoptik secara teoretis dapat melakukan segmentasi instance, tetapi melakukannya dengan biaya komputasi yang jauh lebih besar (karena hasilnya mencakup informasi tambahan yang belum tentu relevan dengan tugas segmentasi instance).

Perbandingan berdampingan antara gambar jalan kota normal vs. gambar yang sama dengan segmentasi semantik vs. gambar yang sama dengan segmentasi instance vs. gambar yang sama dengan segmentasi panoptik

Upaya awal pada segmentasi panoptik hanya melakukan segmentasi instance dan segmentasi semantik secara terpisah, kemudian menggabungkan hasil keduanya dalam langkah pasca pemrosesan. Metode ini tidak efisien secara komputasi dan sulit untuk menyelesaikan perbedaan antara output data dari model semantik dan output data dari model instance.

Pendekatan yang lebih baru menghubungkan "kepala" segmentasi semantik dan "kepala" segmentasi instance ke "tulang punggung" bersama, sering kali jaringan piramida fitur (FPN), untuk ekstraksi fitur: isolasi data visual yang relevan. Hal ini menambah efisiensi dan menghilangkan perbedaan.

Contoh penggunaan segmentasi instance

Segmentasi instance sangat penting untuk berbagai tugas visi komputer.

  •  Pencitraan medis: Segmentasi instance digunakan untuk mendeteksi batas-batas spesifik jaringan dan patologi, seperti tumor
  • Pengemudian otonom: Segmentasi instance memungkinkan mobil tanpa pengemudi mendeteksi dan mengklasifikasikan mobil, objek, orang, dan fitur jalan secara akurat (seperti lampu lalu lintas).
  • Citra satelit: Segmentasi instance dapat membantu mengidentifikasi dan mengisolasi objek yang menarik, seperti membedakan beberapa bangunan di sepanjang jalan untuk tujuan GPS.
  • Robotika: Segmentasi instance memungkinkan penyortiran item, deteksi kecacatan dan, mirip dengan mobil tanpa pengemudi, memungkinkan robot untuk membedakan dan menavigasi di sekitar objek di lingkungan mereka.

Bagaimana cara kerja segmentasi contoh?

Pembelajaran mendalam telah menjadi hal yang penting pada segmentasi contoh: hampir semua metode segmentasi gambar modern menggunakan neural networks. Meskipun beberapa tahun terakhir ini model transformator muncul sebagai alternatif yang layak, sebagian besar metode segmentasi gambar (termasuk yang digunakan untuk segmentasi contoh) memanfaatkan beberapa bentuk neural networks konvolusional (CNN).

Model segmentasi instance berbasis CNN terbagi dalam dua kategori:

  • Model dua tahap seperti Mask R-CNN, pertama-tama melakukan deteksi objek, kemudian menghasilkan mask segmentasi objek

  • Model one-shot (atau single stage), seperti YOLACT, melakukan kedua tugas secara paralel.

Baik model segmentasi instance berbasis CNN maupun berbasis transformator menggunakan struktur encoder-decoder, di mana jaringan encoder digunakan untuk mengekstrak data yang relevan dari gambar input dan jaringan decoder menggunakan data fitur yang diekstrak tersebut untuk merekonstruksi gambar dengan peta segmentasi.

Untuk memahami model segmentasi instance, ada baiknya untuk memahami bagian-bagian penyusunnya.

Jaringan neural konvolusional (CNN)

CNN sederhana dapat melakukan klasifikasi gambar dan (untuk gambar yang berisi objek tunggal) klasifikasi objek.

Agar algoritma matematika kompatibel dengan suatu gambar, algoritma ini harus merepresentasikan gambar dalam format numerik. CNN memproses gambar input RGB sebagai susunan piksel tiga dimensi (3D), di mana tiga dimensi piksel tersebut masing-masing mewakili nilai R(ed), G(reen), dan (B)lue.

Ada tiga jenis lapisan dalam CNN konvensional:

  • Lapisan konvolusional menggunakan filter dua dimensi, yang disebut kernel, untuk mengekstrak fitur yang relevan dari gambar dengan melakukan konvolusi. Setelah setiap konvolusi, kernel bergerak, selangkah demi selangkah, ke wilayah yang berdekatan, mengulangi proses ini sampai kernel melintasi seluruh gambar. Output dari ekstraksi fitur ini adalah peta fitur.
     

  • Lapisan pengumpulan mengompresi data peta fitur. Proses ini, yang juga disebut downsampling atau reduksi dimensi, meningkatkan efisiensi komputasi dan mengurangi risiko overfitting dalam pelatihan model.
     

  • Lapisan yang terhubung penuh menerima dan menyusun data visual dari setiap node dalam jaringan neural sehingga "terhubung penuh" dan memprediksi apakah gambar cocok dengan kategori apa pun yang telah dilatih untuk dikenali.

Sementara lapisan konvolusi tambahan dapat meningkatkan akurasi, menambahkan terlalu banyak lapisan menyebabkan hilangnya gradien, mencegah pengoptimalan model. Arsitektur ResNet memecahkan masalah ini, membuka jalan bagi CNN dengan ratusan (atau bahkan ribuan) lapisan.

CNN berbasis wilayah (R-CNN)

R-CNN dikembangkan untuk menyelesaikan tugas pendeteksian multiobjek yang kompleks yang tidak dapat dicapai dengan CNN standar. Evolusi selanjutnya, Faster R-CNN, merupakan komponen integral dari banyak model segmentasi instance.

Untuk membuat prediksi pada tingkat objek (bukan pada tingkat gambar), R-CNN menerapkan proposal wilayah: R-CNN menggunakan pencarian selektif untuk mengusulkan sekitar 2.000 kotak yang tumpang tindih yang mungkin berisi sebuah objek, kemudian memasukkan setiap "usulan objek" ke dalam CNN untuk ekstraksi fitur. Algoritma support vector machine (SVM) kemudian mengklasifikasikan objek dan menghasilkan kotak pembatas.

Fast R-CNN secara dramatis meningkatkan kecepatan R-CNN dengan pertama-tama memasukkan seluruh gambar ke dalam CNN untuk ekstraksi fitur, kemudian menggunakan peta fitur yang dihasilkan untuk mengidentifikasi wilayah yang diminati (RoI). Tidak lama kemudian, Faster R-CNN makin meningkatkan kecepatan dan akurasi dengan memperkenalkan jaringan proposal wilayah yang dapat dilatih (RPN) untuk menggantikan algoritma pencarian selektif yang lebih lambat dan tidak dapat dilatih.

Jaringan yang sepenuhnya konvolusional

FCN menggantikan lapisan CNN sederhana yang tetap dan terhubung penuh dengan lapisan konvolusi dan penggabungan tambahan, oleh karena itu disebut "konvolusi penuh". Kemunculan FCN mengantarkan era modern segmentasi gambar.

Seperti CNN konvensional, FCN menggunakan jaringan encoder, seperti ResNet atau VGG, untuk ekstraksi fitur dan downsampling. Namun, alih-alih meneruskan data yang dikodekan ke lapisan yang terhubung sepenuhnya untuk mengklasifikasikan seluruh gambar, FCN mengirimkan data yang dikodekan melalui lapisan jaringan "decoder" yang mengklasifikasikan dan mengambil sampel data fitur yang dikompresi untuk merekonstruksi gambar asli dengan mask segmentasi piksel demi piksel.

Secara alami, sebagian data hilang selama proses downsampling. Variasi FCN yang lebih baru, seperti U-Net, memperkenalkan koneksi loncat yang secara selektif melewati beberapa lapisan konvolusi untuk mempertahankan detail yang lebih baik.

Mask R-CNN

Arsitektur Mask R-CNN memasangkan deteksi objek dari Faster R-CNN dengan kemampuan segmentasi FCN untuk mencapai terobosan dalam segmentasi instance.

Setelah RPN menghasilkan kotak pembatas untuk objek yang diusulkan, dan jaringan Faster R-CNN lainnya mengonfirmasi proposal wilayah mana yang berisi objek (dan melakukan regresi untuk meningkatkan akurasi kotak pembatas objek), FCN membuat mask segmentasi dari objek yang terkandung dalam setiap kotak pembatas.

Proses ini efektif bahkan ketika objek terhalang, karena jaringan Faster R-CNN dapat membedakan setiap instance objek untuk memastikan bahwa setiap objek tersegmentasi secara individual.

Model satu percobaan (satu tahap)

Penerapan segmentasi instance tertentu, seperti mendeteksi item yang cacat di jalur perakitan manufaktur, memerlukan hasil real time. Model satu tahap dikembangkan untuk contoh penggunaan yang mengutamakan kecepatan.

Model dua tahap seperti Mask R-CNN sangat akurat, tetapi pendekatan sekuensial yang inheren sulit untuk dipercepat. Model segmentasi instance satu percobaan seperti YOLACT (You Only Look At CoefficienTs) dibangun berdasarkan model deteksi objek satu tahap seperti YOLO (You Only Look Once).

Dalam YOLACT, FPN membuat peta fitur beresolusi tinggi, yang dimasukkan ke dalam dua cabang paralel: sebuah cabang FCN mengusulkan k "mask prototipe" dari instance objek potensial; secara bersamaan, sebuah cabang dari lapisan yang terhubung penuh menghasilkan banyak "kotak jangkar," yang serupa dengan usulan wilayah, dan juga memprediksi k "koefisien mask" (satu untuk setiap mask prototipe) yang merepresentasikan kemungkinan objek yang diusulkan selaras dengan mask segmentasi yang diusulkan. Non-maximum suppression (NMS) digunakan untuk menyaring instance yang diusulkan dengan koefisien mask tertinggi.

Model transformator

Inovasi terbaru dalam segmentasi contoh dan panoptik telah mengeksplorasi model transformator yang terinspirasi oleh keberhasilan mereka dalam berbagai bidang seperti pemrosesan bahasa alami. Model seperti Vision Transformers (ViT) menggunakan perhatian diri sebagai pengganti konvolusi yang memungkinkan analisis holistik pada konteks visual gambar.

Tantangan utama yang harus diatasi adalah tuntutan komputasi: kompleksitas komputasi dari perhatian diri meningkat secara kuadratik dengan ukuran gambar. Swin transformator menggunakan jendela yang digeser (alih-alih langkah geser konvensional) untuk menciptakan lapisan perhatian mandiri yang tidak tumpang tindih, sehingga membuat kompleksitas komputasi meningkat secara linier, bukan kuadratik, dengan ukuran gambar. Model berbasis Swin sekarang menyaingi akurasi kerangka kerja berbasis CNN terkemuka.

Model segmentasi instance pelatihan

Algoritma machine learning, termasuk algoritma pembelajaran mendalam yang digunakan segmentasi instance, harus dilatih. Baik model berbasis CNN maupun berbasis transformator dilatih dengan backpropagation: model merekayasa balik gambar pelatihan beranotasi untuk mempelajari bobot dan bias yang sesuai untuk tugas yang dihadapi.

Anotasi data pelatihan harus sangat akurat untuk memaksimalkan machine learning yang tepat dan berfungsi sebagai tolok ukur "kebenaran dasar" yang dapat digunakan untuk mengevaluasi dan mengoptimalkan model yang telah dilatih. Karena kemampuan manusia sangat jauh melebihi model visi komputer yang paling akurat sekalipun, anotasi ini dilakukan secara manual, proses yang mahal dan membutuhkan banyak tenaga kerja.

Untuk menghindari waktu dan biaya kumpulan data khusus, sebagian besar model memanfaatkan kumpulan data pelatihan sumber terbuka yang besar atau melakukan fine tuning jaringan encoder yang sudah dilatih sebelumnya untuk tugas-tugas visual yang lebih spesifik. Kumpulan data gambar sumber terbuka yang umum meliputi:

  • COCO (Common Objects in Context): kumpulan data masif berisi lebih dari 330.000 gambar dengan segmen beranotasi di 80 kategori benda dan 91 kategori barang
     

  • ADE20K: kumpulan data segmentasi pemandangan yang dibuat oleh MIT berisi lebih dari 20.000 gambar dengan lebih dari 150 kelas semantik
     

  • Cityscapes: kumpulan data berskala besar yang berfokus pada jalanan perkotaan, dengan gambar dari 50 kota di berbagai waktu, musim, dan kondisi cuaca.

Mengevaluasi model segmentasi instance

Ukuran segmentasi instance dan kinerja deteksi objek yang paling umum diterapkan adalah Intersection over Union (IoU) dan Average Precision (AP). Metrik ini biasanya dinyatakan dalam kinerja terhadap kumpulan data tolok ukur, seperti "AP 54,4 pada kumpulan data COCO."

Intersection over Union (IoU)

IoU mengukur tumpang tindih piksel antara mask kebenaran dasar dan prediksi model, yang dinyatakan sebagai persentase atau bilangan bulat antara 0 dan 1. Untuk gambar dengan beberapa instance, mean IoU (MiOu) digunakan.

Meskipun IoU bersifat intuitif, ia memiliki keterbatasan penting:

  • Kumpulan data ini memberikan imbalan pada prediksi yang terlalu luas. Bahkan jika mask segmentasi terlalu besar, kumpulan data ini akan mencetak IoU sempurna sebesar 1 jika mengandung mask kebenaran dasar di dalamnya.

  • Tidak dapat digunakan sebagai fungsi kerugian. Untuk prediksi buruk tanpa hamparan, baik sedikit atau bahkan tidak dekat, IoU=0. Ini berarti IoU tidak dapat dibedakan, dan dengan demikian tidak dapat membantu algoritma mengoptimalkan model. Generalized Intersection over Union (atau GIoU) mengubah IoU agar dapat dibedakan.

Rata-rata Presisi (AP)

AP dihitung sebagai area di bawah kurva recall presisi. Ini menyeimbangkan pertukaran antara dua metrik, presisi dan recall, yang dihitung menggunakan nilai hasil diskret seperti positif benar (TP), negatif benar (TN), positif palsu (FP), dan negatif palsu (FN).

  • Presisi mengukur seberapa sering prediksi positif tepat, dalam hal ini piksel dari segmentasi contoh: TP/(TP+FP). Presisi memiliki kelemahan dalam memberikan imbalan untuk negatif palsu.

  • Recall mengukur seberapa sering prediksi positif ditangkap: TP/(TP+FN). Ini memiliki kelemahan dalam memberikan hasil positif palsu.

Untuk memaksimalkan relevansi, AP sering kali dihitung dalam ambang batas IoU tertentu. Sebagai contoh, "AP50" menghitung AP hanya untuk prediksi dengan IoU lebih besar dari 50 persen. Presisi rata-rata (mAP) digunakan secara situasional sebagai nilai AP rata-rata di semua ambang batas yang dihitung.

Solusi terkait
IBM Maximo Visual Inspection

Membebaskan kekuatan visi komputer no-code untuk otomatisasi inspeksi visual.

Jelajahi inspeksi visual Maximo
Konsultasi dan layanan kecerdasan buatan (AI)

Layanan IBM Consulting AI membantu merancang ulang cara kerja bisnis dengan AI untuk transformasi.

Jelajahi layanan Kecerdasan buatan
Solusi kecerdasan buatan (AI)

Manfaatkan AI di bisnis Anda dengan perpaduan antara keahlian AI terdepan di industri dari IBM dan portofolio solusi Anda.

Jelajahi solusi AI
Ambil langkah selanjutnya

IBM Maximo Visual Inspection menempatkan kekuatan kemampuan AI visi komputer ke tangan tim kontrol kualitas dan inspeksi Anda. Membebaskan kekuatan visi komputer no-code untuk otomatisasi inspeksi visual.

Jelajahi inspeksi visual Maximo Ikuti tur produk