Transformasi

Pemrosesan Citra dengan Python

Rebeca Gonzalez

Data Engineer

Mengapa mentransformasi gambar?

  • Menyiapkan gambar untuk model Machine Learning klasifikasi
  • Optimasi dan kompresi gambar
  • Menyimpan gambar dengan proporsi sama

Foto kucing diproses, diturunkan skalanya

Pemrosesan Citra dengan Python

Memutar

2 anjing bermain, berjalan

Foto 2 anjing bermain, berjalan diputar 90 derajat searah jarum jam

Pemrosesan Citra dengan Python

Memutar

2 anjing bermain, berjalan

2 anjing bermain, berjalan diputar 90 derajat berlawanan arah jarum jam

Pemrosesan Citra dengan Python

Memutar searah jarum jam

from skimage.transform import rotate

# Putar gambar 90 derajat searah jarum jam image_rotated = rotate(image, -90)
show_image(image, 'Asli') show_image(image_rotated, 'Diputar 90° searah jarum jam')

Foto asli anjing di sebelah yang diputar

Pemrosesan Citra dengan Python

Memutar berlawanan jarum jam

from skimage.transform import rotate

# Putar gambar 90 derajat berlawanan arah jarum jam image_rotated = rotate(image, 90)
show_image(image, 'Asli') show_image(image_rotated, 'Diputar 90° berlawanan jarum jam')

Foto asli anjing di sebelah versi diputar 90 derajat berlawanan jarum jam

Pemrosesan Citra dengan Python

Rescaling

Gambar asli 2 anjing berukuran 3000 piksel di sebelah versi diturunkan skala menjadi 800 piksel

Pemrosesan Citra dengan Python

Rescaling

from skimage.transform import rescale

# Ubah skala gambar menjadi 4 kali lebih kecil image_rescaled = rescale(image, 1/4, anti_aliasing=True, multichannel=True)
show_image(image, 'Gambar asli') show_image(image_rescaled, 'Gambar diubah skala')
Pemrosesan Citra dengan Python

Rescaling

Gambar asli 2 anjing berukuran 3000 piksel di sebelah versi diturunkan skala menjadi 800 piksel

Pemrosesan Citra dengan Python

Aliasing pada citra digital

Huruf A tanpa aliasing di sebelah huruf A dengan aliasing

Pemrosesan Citra dengan Python

Aliasing pada citra digital

Gambar 2 anjing yang diubah skala dengan aliasing di sebelah gambar yang diubah skala tanpa aliasing

Pemrosesan Citra dengan Python

Resizing

Gambar asli berukuran 3000 piksel di sebelah gambar yang diubah ukuran menjadi 800 piksel

Pemrosesan Citra dengan Python

Resizing

from skimage.transform import resize

# Tinggi dan lebar tujuan height = 400 width = 500
# Ubah ukuran gambar image_resized = resize(image, (height, width), anti_aliasing=True)
# Tampilkan gambar asli dan hasil show_image(image, 'Gambar asli') show_image(image_resized, 'Gambar diubah ukuran')
Pemrosesan Citra dengan Python

Resizing

Gambar asli 2 anjing berukuran 3000 piksel di sebelah gambar yang diubah ukuran, tampak tidak proporsional

Pemrosesan Citra dengan Python

Mengubah ukuran proporsional

from skimage.transform import resize

# Set tinggi/lebar proporsional, 4 kali lebih kecil height = image.shape[0] / 4 width = image.shape[1] / 4
# Ubah ukuran gambar image_resized = resize(image, (height, width), anti_aliasing=True)
show_image(image_resized, 'Gambar diubah ukuran')
Pemrosesan Citra dengan Python

Mengubah ukuran proporsional

Gambar asli 2 anjing berukuran 3000 piksel di sebelah gambar yang diubah ukuran secara proporsional menjadi 800 piksel

Pemrosesan Citra dengan Python

Ayo berlatih!

Pemrosesan Citra dengan Python

Preparing Video For Download...