SUBBAB 7: Implementasi Python

Tujuan Pembelajaran

Setelah selesai mempelajari materi, mahasiswa diharapkan mampu melakukan pendeteksian tepi operator Kompas menggunakan pustaka Python scikit-image.

Pendeteksian Tepi Operator Kompas dengan Scikit-Image + SciPy

Scikit-image tidak menyediakan fungsi khusus atau implementasi eksplisit untuk operator kompas (seperti Kirsch, Robinson, atau operator delapan arah lainnya), maka pendekatan alternatif yang dapat digunakan adalah dengan memanfaatkan fungsi scipy.ndimage.convolve dari library SciPy. Fungsi ini memungkinkan pengguna untuk melakukan konvolusi antara citra dan kernel yang didefinisikan secara manual, sehingga sangat cocok untuk mengimplementasikan operator kompas yang terdiri dari beberapa kernel arah (misalnya utara, selatan, timur, barat, dan arah diagonal).

image = color.rgb2gray(io.imread('gambar.jpg'))

kirsch_kernels = [ np.array([[5, 5, 5], [-3, 0, -3], [-3, -3, -3]]), np.array([[5, 5, -3], [5, 0, -3], [-3, -3, -3]]), np.array([[5, -3, -3], [5, 0, -3], [5, -3, -3]]), np.array([[-3, -3, -3], [5, 0, -3], [5, 5, -3]]), np.array([[-3, -3, -3], [-3, 0, -3], [5, 5, 5]]), np.array([[-3, -3, -3], [-3, 0, 5], [-3, 5, 5]]), np.array([[-3, -3, 5], [-3, 0, 5], [-3, -3, 5]]), np.array([[-3, 5, 5], [-3, 0, 5], [-3, -3, -3]]) ]

responses = [convolve(image, k) for k in kirsch_kernels]
edge_kirsch = np.max(responses, axis=0)


Ayo Ngoding!


Petunjuk:
  • Upload File: Klik tombol Upload File untuk mengunggah gambar yang ingin Anda analisis. Anda dapat memilih file gambar dari perangkat Anda.
  • Menjalankan Proses: Setelah file diunggah, ganti path gambar pada kode dengan nama file yang diunggah. Anda dapat menjalankan proses analisis dengan menekan tombol Play yang berada di sebelah kiri cell.
  • Menambah Cell: Klik tombol + Add Cell untuk menambahkan lebih banyak ruang untuk memasukkan kode atau menjalankan perintah tambahan.
EdgeExplorer

Aktivitas 18

Kerjakan aktivitas berikut untuk menguji pemahaman dan menambah nilai progresmu!