Widget HTML Atas


Manipulasi Warna Dasar pada Citra

Praktikum Pemula 02

Praktikum "Manipulasi Warna Dasar pada Citra" bertujuan untuk mempelajari cara mengubah warna pada citra digital menggunakan Python tanpa mengandalkan library OpenCV. Kita akan menggunakan Pillow (Python Imaging Library Fork) untuk memanipulasi warna pada citra. Praktikum ini akan meliputi:

  1. Mengubah citra RGB menjadi skala abu-abu.
  2. Mengubah intensitas warna tertentu dalam citra.

Instalasi Pillow

Pertama, Anda perlu memastikan bahwa Pillow terinstal.


Kode Program

 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
from PIL import Image

def konversi_ke_skala_abu(nama_file):
    # Membuka citra
    citra = Image.open(nama_file)
    
    # Konversi citra ke skala abu-abu
    citra_abu = citra.convert('L')
    citra_abu.show()

    # Menyimpan citra skala abu-abu
    citra_abu.save('citra_skala_abu.jpg')

def ubah_intensitas_warna(nama_file, faktor):
    # Membuka citra
    citra = Image.open(nama_file)
    citra_data = citra.load()

    # Mengubah intensitas warna
    for y in range(citra.size[1]):
        for x in range(citra.size[0]):
            r, g, b = citra_data[x, y]
            citra_data[x, y] = int(r * faktor), int(g * faktor), int(b * faktor)

    # Menampilkan dan menyimpan hasil
    citra.show()
    citra.save('citra_intensitas_diubah.jpg')

# Contoh penggunaan
konversi_ke_skala_abu('path/ke/citra.jpg')
ubah_intensitas_warna('path/ke/citra.jpg', 0.5)

Penjelasan Kode:

konversi_ke_skala_abu: Fungsi ini mengambil nama file citra, membuka citra tersebut, mengubahnya menjadi skala abu-abu, dan menyimpan hasilnya.

ubah_intensitas_warna: Fungsi ini mengubah intensitas warna pada citra. faktor digunakan untuk menyesuaikan intensitas warna (misalnya, 0.5 akan mengurangi intensitas warna sebesar setengah).

Catatan Penting:

Gantikan 'path/ke/citra.jpg' dengan path yang benar ke file citra Anda.

Metode show() dari Pillow akan membuka jendela pratinjau untuk menampilkan citra.

Fungsi save() digunakan untuk menyimpan citra yang telah dimodifikasi.

Dengan praktikum ini, mahasiswa akan mendapatkan pemahaman praktis tentang cara manipulasi warna dasar pada citra menggunakan Python dan Pillow.