Beranda
Topics
Segmentasi gambar
Segmentasi gambar adalah teknik visi komputer yang mempartisi gambar digital ke dalam kelompok-kelompok piksel, segmen gambar, untuk menginformasikan deteksi objek dan tugas-tugas terkait. Dengan mengurai data visual gambar yang kompleks menjadi segmen-segmen yang berbentuk khusus, segmentasi gambar memungkinkan pemrosesan gambar yang lebih cepat dan lebih canggih.
Teknik segmentasi gambar berkisar dari analisis heuristik yang sederhana dan intuitif hingga implementasi pembelajaran mendalam yang mutakhir. Algoritma segmentasi gambar konvensional memproses fitur visual tingkat tinggi dari setiap piksel, seperti warna atau kecerahan, untuk mengidentifikasi batas objek dan wilayah latar belakang. Machine learning, memanfaatkan kumpulan data beranotasi, digunakan untuk melatih model untuk secara akurat mengklasifikasikan jenis objek dan wilayah tertentu yang terkandung dalam gambar.
Sebagai metode visi komputer yang sangat serbaguna dan praktis, segmentasi gambar memiliki berbagai macam contoh penggunaan kecerdasan buatan, mulai dari membantu diagnosis dalam pencitraan medis hingga mengotomatisasi gerakan untuk robotika dan mobil tanpa pengemudi hingga mengidentifikasi objek yang menarik pada citra satelit.
Segmentasi gambar merupakan evolusi lanjutan dari klasifikasi gambar dan deteksi objek, serta serangkaian kemampuan visi komputer yang unik.
Klasifikasi gambar menerapkan label kelas ke seluruh gambar. Sebagai contoh, model klasifikasi gambar sederhana dapat dilatih untuk mengkategorikan gambar kendaraan sebagai "mobil" atau "truk". Sistem klasifikasi gambar konvensional memiliki kecanggihan yang terbatas, karena tidak memproses fitur gambar secara terpisah.
Deteksi objek menggabungkan klasifikasi gambar dengan lokalisasi objek, menghasilkan daerah persegi panjang, yang disebut "kotak pembatas," tempat objek berada: daripada hanya memberi label gambar kendaraan sebagai "mobil" atau "truk," model deteksi objek dapat menunjukkan di mana dalam gambar mobil atau truk dapat ditemukan. Sementara deteksi objek dapat mengklasifikasikan beberapa elemen dalam gambar dan memperkirakan lebar dan tinggi setiap elemen, ia tidak dapat membedakan batas atau bentuk yang tepat. Hal ini membatasi kemampuan model deteksi objek konvensional untuk menggambarkan objek yang bergerombol secara dekat dengan kotak pembatas yang tumpang tindih.
Segmentasi gambar memproses data visual pada tingkat piksel, menggunakan berbagai teknik untuk membubuhi keterangan piksel individu sebagai milik kelas atau instance tertentu. Teknik segmentasi gambar "klasik" menentukan anotasi dengan menganalisis kualitas yang melekat pada setiap piksel (disebut "heuristik") seperti warna dan intensitas, sementara model pembelajaran mendalam menggunakan jaringan neural yang kompleks untuk pengenalan pola yang canggih. Output dari anotasi ini adalah mask segmentasi, mewakili batas dan bentuk piksel demi piksel tertentu dari setiap kelas, biasanya sesuai dengan objek, fitur, atau wilayah yang berbeda dalam gambar.
Secara garis besar, segmentasi gambar digunakan untuk tiga jenis tugas: segmentasi semantik, segmentasi instance dan segmentasi panoptik.
Perbedaan antara tiap jenis tugas segmentasi gambar terletak pada cara mereka memperlakukan kelas semantik: kategori spesifik yang mungkin ditentukan untuk piksel tertentu.
Dalam istilah visi komputer, ada dua jenis kelas semantik. Masing-masing cocok dengan teknik yang berbeda untuk segmentasi yang akurat dan efektif.
Barang adalah kelas objek dengan bentuk yang khas, seperti "mobil" atau "pohon" atau "orang". Biasanya, barang memiliki contoh yang jelas yang dapat dihitung. Mereka memiliki ukuran yang relatif kecil dari satu contoh ke contoh berikutnya, serta bagian-bagian penyusun yang berbeda dari benda itu sendiri: misalnya, semua mobil memiliki roda, tetapi roda bukanlah mobil.
Benda mengacu pada kelas semantik yang berbentuk amorf dan ukurannya sangat bervariasi, seperti "langit" atau "air" atau "rumput". Biasanya, benda tidak memiliki contoh individu yang jelas dan dapat dihitung. Tidak seperti barang, benda tidak memiliki bagian-bagian yang berbeda: sehelai rumput dan padang rumput, keduanya sama-sama "rumput".
Beberapa kelas, dalam kondisi gambar tertentu, dapat berupa barang atau benda. Misalnya, sekelompok besar orang dapat ditafsirkan sebagai beberapa "orang" yang masing-masing berbentuk jelas, barang yang dapat dihitung, atau "kerumunan" tunggal berbentuk amorf.
Meskipun sebagian besar upaya deteksi objek berfokus terutama pada kelas barang, namun penting untuk mempertimbangkan bahwa benda (langit, dinding, lantai, tanah) merupakan sebagian besar konteks visual kita. Benda adalah titik data yang penting untuk mengidentifikasi sesuatu, dan sebaliknya: barang logam di jalan biasanya adalah mobil; latar belakang biru di belakang perahu mungkin air, sedangkan latar belakang biru di belakang pesawat mungkin langit. Hal ini sangat penting untuk model pembelajaran mendalam.
Segmentasi semantik adalah jenis segmentasi gambar yang paling sederhana. Model segmentasi semantik menetapkan kelas semantik untuk setiap piksel, tetapi tidak menghasilkan konteks atau informasi lainnya (seperti objek).
Segmentasi semantik memperlakukan semua piksel sebagai benda; tidak membedakan antara benda dan barang.
Misalnya, model segmentasi semantik yang dilatih untuk mengidentifikasi kelas-kelas tertentu di jalan kota akan menghasilkan mask segmentasi yang menunjukkan batas-batas dan kontur untuk setiap kelas barang yang relevan (seperti kendaraan atau tiang lampu) dan benda (seperti jalan dan trotoar), tetapi tidak membuat perbedaan antara (atau menghitung jumlah) beberapa instance dari kelas yang sama. Misalnya, mobil yang diparkir satu di depan yang lain mungkin hanya diperlakukan sebagai satu segmen "mobil" yang panjang.
Segmentasi instance membalikkan prioritas segmentasi semantik: sedangkan algoritma segmentasi semantik hanya memprediksi klasifikasi semantik dari setiap piksel (tanpa memperhatikan instance individual), segmentasi instance menggambarkan bentuk yang tepat dari setiap instance objek yang terpisah.
Segmentasi instance mengisolasi barang dari benda yang diabaikannya, dan dengan demikian dapat dipahami sebagai bentuk evolusi dari deteksi objek yang menghasilkan mask segmentasi yang tepat, bukan kotak pembatas perkiraan.
Ini adalah tugas yang lebih sulit daripada segmentasi semantik: bahkan ketika barang dari kelas yang sama saling bersentuhan atau bahkan tumpang tindih satu sama lain, model segmentasi instance harus dapat memisahkan dan menentukan bentuk masing-masing, sedangkan model segmentasi semantik dapat dengan mudah menggabungkannya. Sebagai contoh, pertimbangkan, bagaimana kedua model yang berbeda memperlakukan mobil yang diparkir dalam gambar jalanan kota ini.
Algoritma segmentasi instance umumnya mengambil pendekatan dua tahap atau satu percobaan untuk masalah tersebut. Model dua tahap, seperti Jaringan Neural Konvolusional (R-CNNs) berbasis wilayah, melakukan deteksi objek konvensional untuk menghasilkan kotak pembatas untuk setiap instance yang diusulkan, kemudian melakukan segmentasi dan klasifikasi yang lebih baik di dalam setiap kotak pembatas. Model satu percobaan, seperti YOLO (You Only Look Once), mencapai segmentasi instance real-time dengan melakukan deteksi, klasifikasi, dan segmentasi objek secara bersamaan.
Pendekatan satu percobaan menawarkan kecepatan yang lebih tinggi (dengan mengorbankan akurasi), sedangkan pendekatan dua tahap menawarkan akurasi yang lebih besar (dengan mengorbankan kecepatan).
Model segmentasi panoptik menentukan klasifikasi semantik semua piksel dan membedakan setiap instance objek dalam gambar, yang memadukan manfaat segmentasi semantik dan instance.
Dalam tugas segmentasi panoptik, setiap piksel harus diberi anotasi dengan label semantik dan "ID instance." Piksel yang berbagi label dan ID yang sama milik objek yang sama; untuk piksel yang ditentukan sebagai benda, ID instance diabaikan.
Dengan demikian, segmentasi panoptik memberikan sistem visi komputer pemahaman yang komprehensif dan menyeluruh tentang gambar yang diberikan. Meskipun daya tariknya sudah jelas, namun untuk mencapai segmentasi panoptik dengan cara yang konsisten dan efisien secara komputasi, merupakan tantangan yang berat.
Tantangannya terletak pada penyatuan dua metodologi yang kontradiktif: model segmentasi semantik memperlakukan semua piksel sebagai benda, mengabaikan contoh individu dari barang. Model segmentasi instance mengisolasi hal-hal individual, mengabaikan benda. Tidak ada jenis model yang dapat menyerap tanggung jawab orang lain secara memadai.
Upaya awal pada model segmentasi panoptik hanya menggabungkan dua model, melakukan setiap tugas secara terpisah dan kemudian menggabungkan outputnya dalam fase pasca pemrosesan. Pendekatan ini memiliki dua kelemahan utama: pendekatan ini membutuhkan banyak overhead komputasi dan berjuang dengan perbedaan antara titik data yang dihasilkan oleh jaringan segmentasi semantik dan titik data yang dihasilkan oleh jaringan segmentasi instance.
Arsitektur segmentasi panoptik yang lebih baru bertujuan untuk menghindari kelemahan ini dengan pendekatan yang lebih terpadu untuk pembelajaran mendalam. Sebagian besar dibangun di atas jaringan "tulang punggung", seperti jaringan piramida fitur (FPN), yang mengekstraksi fitur dari gambar input, memasukkan data yang diekstraksi ke dalam cabang paralel seperti "cabang latar depan" dan "cabang latar belakang," atau "kepala semantik" dan "kepala contoh", dan kemudian menggabungkan output dari setiap cabang menggunakan sistem tertimbang. Arsitektur panoptik yang diusulkan termasuk EfficientPS, OANet, PanopticFPN, UPSNet, SOGNet, BGRNet, AUNet, FPSNet, dan SpatialFlow.
Teknik segmentasi gambar tradisional menggunakan informasi dari nilai warna piksel (dan karakteristik terkait seperti kecerahan, kontras, atau intensitas) untuk ekstraksi fitur, dan dapat dengan cepat dilatih dengan algoritma machine learning sederhana untuk tugas-tugas seperti klasifikasi semantik.
Meskipun metode segmentasi berbasis pembelajaran mendalam mampu menghasilkan presisi yang lebih tinggi dan analisis gambar yang lebih canggih, terutama tugas-tugas seperti segmentasi panoptik yang memerlukan banyak informasi kontekstual, metode tradisional jauh lebih murah dan tidak memerlukan banyak komputasi, serta dapat memecahkan masalah tertentu secara lebih efisien.
Teknik segmentasi gambar tradisional (atau "klasik") yang umum meliputi:
Dilatih pada kumpulan data gambar yang dianotasi, jaringan neural dari model segmentasi gambar pembelajaran mendalam menemukan pola yang mendasari dalam data visual dan membedakan fitur-fitur yang paling relevan untuk klasifikasi, deteksi, dan segmentasi.
Meskipun ada pengorbanan dalam hal kebutuhan komputasi dan waktu pelatihan, model pembelajaran mendalam secara konsisten mengungguli model tradisional dan menjadi dasar dari sebagian besar kemajuan yang sedang berlangsung dalam visi komputer.
Model pembelajaran mendalam yang menonjol yang digunakan dalam segmentasi gambar meliputi:
Untuk tidak hanya memetakan batas segmen gambar, tetapi juga memprediksi benda atau barang mana yang diwakili oleh setiap segmen, model pembelajaran mendalam dilatih pada kumpulan data besar beranotasi untuk mengenali kelas semantik tertentu. Dari gambar pra-label ini, model pembelajaran mendalam menyimpulkan pola dan nilai piksel yang khas dari setiap label.
Tugas yang berbeda memerlukan data pelatihan yang berbeda: sistem visi komputer untuk mobil tanpa pengemudi dilatih pada gambar yang dilabeli dengan kelas semantik seperti "orang", "mobil", "jalur", dan "tanda berhenti", sementara model pencitraan medis memerlukan pengoptimalan untuk mengenali kelas jaringan fisik tertentu, atau tumor, dan patologi lainnya.
Kumpulan data pelatihan harus diberi label sebelumnya dengan hati-hati oleh para pakar manusia, yang bisa sangat melelahkan. Sebagian besar model segmentasi gambar menggunakan kumpulan data sumber terbuka yang besar. Kumpulan data publik ini juga berfungsi sebagai “kebenaran dasar” ketika mengevaluasi keberhasilan model terlatih: metrik kinerja sering dinyatakan sebagai persentase hasil yang secara akurat cocok dengan anotasi dalam kumpulan data pelatihan.
Kumpulan data pelatihan populer untuk model segmentasi gambar pembelajaran mendalam meliputi:
Segmentasi gambar telah menjadi alat bantu yang penting dalam berbagai bidang.
Sistem visi komputer modern memiliki akurasi yang luar biasa dalam hal pengenalan dan analisis gambar, tetapi sistem ini tidak benar-benar memahami apa yang mereka lihat. Di IBM Research, kami merancang sistem AI dengan kemampuan untuk melihat dunia seperti yang kita lihat.
Kursus ramah pemula ini membantu Anda memahami visi komputer dan berbagai penerapannya di banyak industri. Sebagai bagian dari kursus, Anda akan menggunakan Python, Pillow, dan OpenCV untuk pemrosesan gambar dasar dan melakukan klasifikasi gambar dan deteksi objek.
Memulai dengan IBM Maximo Visual Inspection untuk membuat dan melatih model berbasis AI untuk memeriksa aset dan produk Anda, serta mengidentifikasi kecacatan yang dapat menyebabkan masalah produksi dan kualitas.