Segmentasi bahan setengah transparan, misalnya kaca


11

Saya benar-benar terjebak pada masalah tentang segmentasi objek kaca. Saya perlu mendapatkan objek setepat mungkin. Pendekatan saya berbeda. Pada awalnya saya mencoba untuk menghapus latar belakang, sehingga hanya beberapa kontur yang tajam yang tersisa. Tapi itu hanya berfungsi untuk objek yang memiliki tepi tajam / gradien. Kalau tidak, objek itu sendiri juga dihapus. Saya memposting dua gambar yang berbeda.

gambar 1 gambar 2

Saya mencoba untuk menghapus latar belakang melalui operasi morfologis, seperti dilatasi skala abu-abu dan pembagian di atasnya. tapi itu tidak banyak membantu. setelah itu, saya mencoba k-means dengan k = 3 untuk mendapatkan latar belakang yang dimodifikasi terpisah dari nilai abu-abu dan hitam kaca. Dalam beberapa kasus itu tidak berhasil, tetapi tidak secara keseluruhan / rata-rata. Saya juga mencoba membuat deteksi tepi cerdik dengan keseluruhan filter buram, tetapi itu mengarah pada hasil yang lebih lemah dalam bentuk kontur terbuka, banyak suara, dll. Hlm.

Canny dengan hasil ambang otomatis:

testimg = imread('http://i.imgur.com/huQVt.png');  
imshow(testimg)
imedges = edge(testimg,'canny');
imshow(imedges);

Sama berlaku untuk gambar kedua.

keluaran cerdik # 1 keluaran cerdik # 2

Seperti yang Anda lihat, ada banyak suara di dalam dan di luar dan menggandakan tepi dari perbatasan glas. Bahkan ada celah di tepinya.

Jadi, saya butuh saran Anda untuk mendapatkan pendekatan umum untuk menangani masalah bahan setengah transparan ini, bukan hanya untuk dua gambar ini.

1) Gagasan lain untuk menghapus latar belakang tanpa merusak objek?

2) Metode segmentasi lain untuk memisahkan objek dari latar belakang?

Jika memungkinkan, maka dengan petunjuk Matlab, IPT atau kotak alat statistik. Petunjuk lainnya juga diterima!

Terima kasih atas jawaban Anda sebelumnya. Hormat kami


Apakah latar belakangnya selalu identik?
endolith

hampir, sedikit berbeda menjadi lebih gelap / lebih terang.
mchlfchr

1
Mengurangi latar belakang dari setiap gambar dengan baik akan menjadi permulaan, membuatnya lebih seragam: imgur.com/9WhcB
endolith

1
Apa maksudmu? Apakah Anda memiliki gambar latar belakang tanpa kaca?
endolith

1
@ DennisJaheruddin Saya tahu bahwa tepi BUKAN garis hitam. Edge didefinisikan sebagai perubahan intensitas / frekuensi, yang berarti bahwa nilai abu-abu berubah lebih atau kurang cepat. Namun demikian seperti yang Anda lihat di luar konteks, metode Canny tidak akan menjadi senjata pilihan di sini, karena latar belakang saya akan mendapatkan banyak suara (dengan Canny). Dan saya tidak dapat memprediksi ambang otomatis / sigma. Jadi saya perlu metode yang menghilangkan latar belakang, tetapi bukan objek itu sendiri.
mchlfchr

Jawaban:


3

Mengapa tidak menggunakan filer lulus tinggi 2D FFT (guassian) sederhana?

Saya melakukan ini dengan cepat menggunakan MATLAB

Shard # 1 menggunakan high pass FFT:

http://i47.tinypic.com/rbjxnd.jpg

Hal yang sama dilakukan pada # 2.

Shard # 2 menggunakan FFT lulus tinggi:

http://i45.tinypic.com/209kms0.jpg

Seperti yang Anda lihat, latar belakang dan area kaca dihilangkan, dan hanya bagian tepi yang dilacak. Saya tidak meluangkan waktu untuk itu, tetapi Anda dapat membatasi keluaran yang difilter HP untuk memiliki tepi yang lebih tajam, atau mendorong HP memotong lebih tinggi.

Apakah ini lebih banyak hasil yang ingin Anda dapatkan?


1

Ini bukan upaya untuk menjawab seluruh pertanyaan, tapi saya punya ide tentang "membersihkan gambar" .

Anda bilang sudah mencoba operasi morfologis , dan ini adalah variasi dari ide, semoga upgrade.

Artikel ini: A. Vichik, R. Keshet, D. Malah: Self-dual morfologi pada semilattice dan aplikasi pohon mengusulkan cara untuk meningkatkan pada operator morfologi klasik dengan cara yang dapat menambahkan sifat yang lebih diinginkan kepada mereka.

Artikel menyarankan untuk memilih representasi hirarkis dari suatu gambar sesuai dengan sifat yang diinginkan, dan kemudian mengusulkan metode untuk mendefinisikan operator seperti erosi, pelebaran, pembukaan, top-hat pada representasi itu . Dengan kata-kata mereka sendiri:

Kami telah menyajikan kerangka kerja umum untuk menghasilkan operator morfologi baru (...)

Saya menjelaskan struktur hierarki berbentuk pohon di bagian kedua dari jawaban ini ( pendekatan Semantik ) , di mana Anda dapat menambahkan Pohon DAS Ekstrem yang disebutkan dalam artikel yang saya tautkan di sini (dan lagi) .

Ini adalah upgrade ke (mengutip penulis) "morfologi matematika grayscale tradisional" karena operasi menjaga sifat yang diinginkan dari representasi . Misalnya, jika representasi hierarkis Anda adalah dual-mandiri, operator Anda akan benar-benar dual-mandiri (mis. Bandingkan dengan quasi -self-dual-bukaan-penutup dengan rekonstruksi yang bukan benar - benar self-dual.)

Artikel tertaut juga menyajikan beberapa hasil dalam menyaring kebisingan - Anda dapat membandingkan hasil mereka dari artikel (dan dari Tesis yang dirujuk dalam artikel) dengan apa yang Anda butuhkan (setidaknya secara visual) dan lihat apakah itu akan bekerja untuk Anda sebelum memulai ke kode.

Jadi, saat memilih pohon representasi paling sederhana (maksimal / minimum) akan menghasilkan operasi klasik, memilih pohon mandiri ganda yang paling sesuai dengan kebutuhan Anda mungkin memberi Anda pendekatan yang cukup kuat.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.