Saya memiliki gambar, di mana saya diminta untuk menghitung jumlah lingkaran. Saya dapat menguranginya menjadi gambar ini:

enter image description here

Sekarang saya dapat menggunakan jumlah komponen yang terhubung untuk mendapatkan jawabannya. Tidak apa-apa. Tetapi apakah mungkin untuk melakukan ini hanya dengan menggunakan operasi morfologis? (seperti entah bagaimana mendapatkan "pusat" dari "lingkaran" ini dan kemudian menghitung pikselnya saja)

0
Ankit Kumar 17 April 2020, 21:37

1 menjawab

Jawaban Terbaik

Ada operasi yang disebut penipisan, yang mengikis gambar secara berulang tetapi mempertahankan serangkaian titik tertentu (ini adalah erosi bersyarat). Bergantung pada kumpulan elemen penataan yang digunakan dalam erosi bersyarat, operasi dapat mengurangi objek ke satu titik (atau lingkaran untuk objek dengan lubang di dalamnya). Anda bisa menerapkan dengan penipisan dan kemudian menghitung piksel.

Seperti yang disebutkan Alex Alex dalam komentar, di MATLAB bwmorph(Image, 'shrink', Inf) kinerjanya operasi ini.

3
Cris Luengo 17 April 2020, 18:58