
3,385 Views
Sinopsis
Perbaikan citra atau yang biasa disebut image enhancement adalah proses perbaikan kualitas citra atau gambar dengan cara memanipulasi parameter-parameter citra. dengan adanya perbaikan citra maka ciri-ciri khusus yang terdapat di dalam citra lebih ditajamkan. Salah satu operasi perbaikan citra format grayscale adalah histogram equalization – perataan histogram.
Rumus yang digunakan yaitu
Berikut kode yang kalian terapkan
import cv2 import numpy as np from matplotlib import pyplot as plt #oleh mulkan.ms@gmail.com #www.softscients.web.id def perataanHistogram(A): nilai_bin = 255 #angka value pixel maximal! A = A+1 #agar terhindari dari pixel bernilai 0 [frekuensi,value] = np.histogram(A,bins=nilai_bin) #langkah 2 cumulatif_histogram = frekuensi.cumsum() #langkah 3 [baris,kolom] = A.shape probabilty_frekuensi = np.round((cumulatif_histogram/float(A.size))*nilai_bin) #langkah 4 dan 5 B = np.empty(A.shape) for i in range(0,baris): for j in range(0,kolom): B[i,j] = probabilty_frekuensi[A[i,j]-1] #langkah 6 return B I = cv2.imread('pohon.bmp') gray = cv2.cvtColor(I,cv2.COLOR_BGR2GRAY) #ubah ke format gray hasil = perataanHistogram(gray) plt.figure('perataan histogram! www.softscients.web.id') plt.subplot(1,2,1),plt.imshow(gray,cmap='gray'),plt.title('gray') plt.subplot(1,2,2),plt.imshow(hasil,cmap='gray'),plt.title('perataan histogram') plt.show()
Terlihat bahwa operasi perataan histogram dapat bekerja dengan baik Buat kamu yang suka mempelajari code nya, penulis membuat code berdasarkan algoritma diatas, tentu menggunakan bahasa functional yaitu python