Baru-baru ini saya melatih model FCN dan model Mask R-CNN untuk tujuan segmentasi gambar. Ini untuk membuat prototipe fitur pada aplikasi pelanggan. Kami ingin mengetahui apakah model saat ini mampu menghasilkan pengalaman pelanggan yang dapat diterima.

Fitur ini memerlukan (kira-kira atau, lebih baik, sempurna) memotong objek dari gambar pengguna secara otomatis. Kami ingin memanfaatkan segmentasi gambar atau segmentasi semantik untuk itu. Secara singkat, segmentasi semantik dapat mengklasifikasikan objek apa saja yang ada dalam suatu gambar dengan mengidentifikasi piksel objek secara tepat. Sudah ada beberapa artikel yang dapat ditemukan untuk menjelaskan apa itu segmentasi semantik dan kemajuannya saat ini dalam bidang penelitian visi komputer.

Di antara model segmentasi semantik, saya memilih FCN dan Mask R-CNN untuk melakukan pelatihan dan pengujian. FCN adalah pendekatan klasik model pembelajaran mendalam ujung ke ujung untuk segmentasi semantik. Mask R-CNN baru-baru ini menarik perhatian karena kinerjanya yang bagus.

FCN melakukan pelatihan end-to-end untuk prediksi segmentasi gambar. Secara kasar, FCN menghilangkan lapisan yang terhubung sepenuhnya dan hanya menggunakan lapisan konvolusi dan penggabungan. Pertama-tama mencoba menyandikan gambar masukan dengan serangkaian lapisan konvolusi. Dengan mengganti lapisan yang terhubung sepenuhnya dengan lapisan konvolusi, keluaran klasifikasi dari lapisan yang terhubung sepenuhnya kini digantikan oleh peta panas kelas objek.

Mask R-CNN didasarkan pada Faster R-CNN yang merupakan model pembelajaran mendalam untuk deteksi keberatan. R-CNN yang lebih cepat mendeteksi objek (klasifikasi) dalam gambar dan menemukan kotak pembatas objek (regresi). Memperluas R-CNN Lebih Cepat, Mask R-CNN memprediksi masker untuk setiap wilayah yang diminati (RoI). Jadi selain kelas objek dan lokasi kotak pembatas, Mask R-
CNN juga memprediksi piksel dari setiap objek yang terdeteksi.

FCN adalah model yang saya ambil untuk melatih di awal, tak lama kemudian saya menemukan bahwa hasil prediksinya jauh dari cukup baik. Jika saya memahaminya dengan benar, FCN memodelkan distribusi anotasi untuk gambar masukan. Target pelatihannya adalah untuk menutup kesenjangan antara anotasi kebenaran dasar dan segmentasi yang diprediksi. Ia harus memodelkan topeng tingkat piksel objek dan kelas objek untuk topeng tersebut.

Mask R-CNN secara umum menghasilkan prediksi segmentasi semantik yang lebih baik dibandingkan model FCN. Berikut hasil prediksi Mask R-CNN dan FCN. Perhatikan bahwa model FCN dilatih pada CPU selama beberapa hari, Mask R-CNN menggunakan model yang telah dilatih sebelumnya dan model yang dilatih dari awal selama 1 hari pada GPU Nvidia M40.

Berdasarkan makalah tersebut, Mask R-CNN mengklaim bahwa dengan memisahkan masker dan prediksi kelas (karena Mask R-CNN memiliki cabang klasifikasi khusus dan juga menghasilkan masker untuk setiap kelas), maka dapat menghasilkan hasil prediksi masker yang lebih baik.

Secara umum, menurut saya lebih sulit melatih model FCN untuk mendapatkan performa yang baik. Dengan menggunakan softmax per piksel dan kerugian lintas entropi multinominal, selama pelatihan FCN, prediksi mask dari kelas yang berbeda bersaing dengan yang lain.

Di Mask R-CNN, kerugian total terkait dengan kerugian kotak pembatas, kerugian kelas, dan kerugian mask. Untuk kehilangan mask, berdasarkan RoI dengan kelas kebenaran dasar k, kami hanya menghitung mask dari kelas ksaat menghitung kehilangan mask.