Anda di halaman 1dari 9

UTS PENGOLAHAN CITRA DIGITAL

DISUSUN OLEH :

Nama : Muhammad Alif alfajriqo


Kelas : 5 CE
NIM 062030701683

Dosen Pengampuh : Rian Rahmanda Putra, S.Kom.,M.Kom.

POLITEKNIK NEGERI SRIWIJAYA


JURUSAN TEKNIK KOMPUTER
PRODI D-III TEKNIK KOMPUTER
TAHUN AJARAN 2022/2023
Soal UTS:

1. Diktehui gambar 1 di bawah ini

Gambar 1

Buatlah baris code dalam bahasa pemrograman python untuk menghasilkan gambar di atas!

2. Diketahui gambar 2 di bawah ini

Gambar 2 (dapat diunduh di LMS)

Pada gambar 2, jika ditinjau menggunaka histogram, gambar 2 memiliki kecendrungan under exposure,
implementasikan algoritma perbaikan histogram terkait pencahayaan untuk merubah kualitas gambar
pada gambar 2
kualitas gambar pada gambar 2 Gambar 3. Histogram gambar 2
Jawaban UTS :
No.1
Codingan Tugas 1 :
import cv2
import numpy as np

# Membuat citra kosong


citra = np.ones((500, 500, 3), np.uint8)*0
cv2.circle(citra, (250, 90), 9, (255, 255, 255), 10)
cv2.line(citra, (250, 90), (250, 150), (255, 255, 255), 7)
cv2.ellipse(citra, (250, 250), (200, 100), 0, 0, 360, (255, 255, 255), 10)
cv2.circle(citra, (250, 250), 20, (0, 0, 255), 7)
cv2.ellipse(citra, (250, 450), (160, 100), 0, 0, -180, (255, 255, 255), 10)

# Menaampilkan hasil citra


print(citra)
cv2. imshow("Gambar", citra)
cv2.waitKey(0)
cv2.destroyAllwindows()
Hasil Tampilan Gambar :
No.2
Codingan Tugas 2 :
# Kontras Penyetaraan Histogram
# Metode Kontras Penyetaraan Histogram Atau Contrast Limited Adaptive Histogram
Equalization (CLAHE) bertujuan untuk mengurangi noise
# dengan cara menentukan kernel matriks dan bekerja dengan menggantikan nilai
intensitas setiap pixel citra
# masukan dengan rata-rata dari nilai pembobotan kernel untuk setiap pixel-pixel
tetangganya dan pixel itu sendiri.

import cv2
import matplotlib.pyplot as plt

imgpath = ("Gambar/gambarUTS.png")
img = cv2.imread(imgpath, 1)
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

R, G, B = cv2.split(img)

clahe = cv2.createCLAHE(clipLimit=2.0,
tileGridSize=(8, 8))

output1_R = clahe.apply(R)
output1_G = clahe.apply(G)
output1_B = clahe.apply(B)

output1 = cv2.merge((output1_R, output1_G, output1_B))


output = [img, output1]
titles = ['Gambar Asli', 'Gambar Hasil Perbaikan']
for i in range(2):
plt.subplot(2, 2, i+1)
plt.imshow(output[i])
plt.title(titles[i])
plt.xticks([])
plt.yticks([])

plt.subplot(2, 2, 3)
plt.title('Gambar Histogram Asli')
plt.hist(img.ravel(), 256, [0, 256])
plt.hist(B.ravel(), 256, [0, 256])
plt.hist(G.ravel(), 256, [0, 256])
plt.hist(R.ravel(), 256, [0, 256])

plt.subplot(2, 2, 4)
plt.title('Hasil Penyesuaian Gambar Histogram ')
plt.hist(output1.ravel(), 256, [0, 256])
plt.hist(B.ravel(), 256, [0, 256])
plt.hist(G.ravel(), 256, [0, 256])
plt.hist(R.ravel(), 256, [0, 256])
plt.show()
Hasil Tampilan Gambar :

Anda mungkin juga menyukai