Page 4 - 220533600710_Rivan Adi Kurniawan_Praktikum 2.ipynb - Colab_Neat
P. 4

plt.figure(figsize=(12,6))
             plt.subplot(141), plt.imshow(img, cmap='gray'), plt.title("Gambar Asli")
             # Mean filter (blur)
             mean = cv2.blur(img, (5,5))
             plt.subplot(142), plt.imshow(mean, cmap='gray'), plt.title("Mean Filter")

             # Median filter
             median = cv2.medianBlur(img, 5)
             plt.subplot(143), plt.imshow(median, cmap='gray'), plt.title("Median Filter")

             # Sharpening (Laplacian)
             laplacian = cv2.Laplacian(img, cv2.CV_64F)
             sharpen = cv2.convertScaleAbs(img - laplacian)
             plt.subplot(144), plt.imshow(sharpen, cmap='gray'), plt.title("Sharpening")

             plt.tight_layout()
             plt.show()



















        Percobaan 5


             import cv2
             import numpy as np
             import matplotlib.pyplot as plt

             # Baca gambar grayscale
             img = cv2.imread("/content/content/Red_Apple.jpg", 0)

             plt.figure(figsize=(12,6))
             plt.subplot(141), plt.imshow(img, cmap='gray'), plt.title("Gambar Asli")

             # FFT 2D
             f = np.fft.fft2(img)
             fshift = np.fft.fftshift(f)
             magnitude_spectrum = 20 * np.log(np.abs(fshift) + 1)
             plt.subplot(142), plt.imshow(magnitude_spectrum, cmap='gray'), plt.title("Spektrum Fourier")

             # Low-pass Filter
             rows, cols = img.shape
             crow, ccol = rows//2, cols//2
             mask = np.zeros((rows, cols), np.uint8)
             r = 30
             mask[crow-r:crow+r, ccol-r:ccol+r] = 1
             f_low = fshift * mask
             img_low = np.fft.ifft2(np.fft.ifftshift(f_low))
             img_low = np.abs(img_low)
             plt.subplot(143), plt.imshow(img_low, cmap='gray'), plt.title("Low-pass Filtered")
             # High-pass Filter
             mask_high = np.ones((rows, cols), np.uint8)
             mask_high[crow-r:crow+r, ccol-r:ccol+r] = 0
             f_high = fshift * mask_high
             img_high = np.fft.ifft2(np.fft.ifftshift(f_high))
             img_high = np.abs(img_high)
             plt.subplot(144), plt.imshow(img_high, cmap='gray'), plt.title("High-pass Filtered")

             plt.tight_layout()
             plt.show()
   1   2   3   4   5   6   7