Dalam mempelajari computer vision kita dapat menggunakan HPF atau High Pass Filter untuk edge detection pada image.

Penggunaan filter HPF untuk edge detection pada image adalah seperti pada contoh source code berikut ini

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import cv2
import numpy as np
from scipy import ndimage
 
kernel_3x3 = np.array([[-1, -1, -1],
                       [-1,  8, -1],
                       [-1, -1, -1]])
 
kernel_5x5 = np.array([[-1, -1, -1, -1, -1],
                       [-1,  1,  2,  1, -1],
                       [-1,  2,  4,  2, -1],
                       [-1,  1,  2,  1, -1],
                       [-1, -1, -1, -1, -1]])
 
img = cv2.imread("../images/statue_small.jpg",
                 cv2.IMREAD_GRAYSCALE)
 
k3 = ndimage.convolve(img, kernel_3x3)
k5 = ndimage.convolve(img, kernel_5x5)
 
blurred = cv2.GaussianBlur(img, (17, 17), 0)
g_hpf = img - blurred
 
asli = cv2.imread("../images/statue_small.jpg")
 
cv2.imshow("asli", asli)
cv2.imshow("abu-abu", img)
 
cv2.imshow("3x3", k3)
cv2.imshow("5x5", k5)
cv2.imshow("blurred", blurred)
cv2.imshow("g_hpf", g_hpf)
cv2.waitKey()
cv2.destroyAllWindows()

Tampilan-tampilan edge detection yang dihasilkan antara lain

  1. Gambar abu-abu yang dibuat dari gambar asli

  2. Edge detection yang dihasilkan dari konvulasi kernel 3×3

  3. Edge detection yang dihasilkan dari kernel 5×5

  4. Edge detection yang dihasilkan dari gray – blur

    Tampak hasil ini merupakan edge detection terbaik.

Pembelajaran lebih lanjut silahkan mengunjungi
1. https://github.com/PacktPublishing/Learning-OpenCV-4-Computer-Vision-with-Python-Third-Edition/blob/master/chapter03/hpf.py .
2. https://docs.spyder-ide.org/ .

Kunjungi www.proweb.co.id untuk menambah wawasan anda.

Penggunaan Filter HPF untuk Edge Detection pada Image
Ada yang dapat saya bantu ?