Transformaties

Beeldverwerking in Python

Rebeca Gonzalez

Data Engineer

Waarom afbeeldingen transformeren?

  • Afbeeldingen voorbereiden voor classificatie-ML-modellen
  • Optimalisatie en compressie van afbeeldingen
  • Afbeeldingen met dezelfde verhouding opslaan

Een kattenfoto wordt verwerkt, verkleind

Beeldverwerking in Python

Draaien

2 honden die spelen, wandelen

Foto van 2 honden die spelen, wandelen, 90 graden met de klok mee gedraaid

Beeldverwerking in Python

Draaien

2 honden die spelen, wandelen

2 honden die spelen, wandelen, 90 graden tegen de klok in gedraaid

Beeldverwerking in Python

Draaien met de klok mee

from skimage.transform import rotate

# Draai de afbeelding 90 graden met de klok mee image_rotated = rotate(image, -90)
show_image(image, 'Origineel') show_image(image_rotated, '90° met de klok mee gedraaid')

Originele hondenfoto naast gedraaide

Beeldverwerking in Python

Draaien tegen de klok in

from skimage.transform import rotate

# Draai een afbeelding 90 graden tegen de klok in image_rotated = rotate(image, 90)
show_image(image, 'Origineel') show_image(image_rotated, '90° tegen de klok in gedraaid')

Originele foto van honden naast 90 graden tegen de klok in gedraaide

Beeldverwerking in Python

Rescalen

Originele afbeelding van 2 honden met 3000 pixels naast verkleinde met 800 pixels

Beeldverwerking in Python

Rescalen

Verkleinen
from skimage.transform import rescale

# Rescale de afbeelding naar 4x kleiner image_rescaled = rescale(image, 1/4, anti_aliasing=True, multichannel=True)
show_image(image, 'Originele afbeelding') show_image(image_rescaled, 'Gescalede afbeelding')
Beeldverwerking in Python

Rescalen

Originele afbeelding van 2 honden met 3000 pixels naast verkleinde met 800 pixels

Beeldverwerking in Python

Aliasing in digitale afbeeldingen

Letter A zonder aliasing naast een afbeelding van letter A met aliasing

Beeldverwerking in Python

Aliasing in digitale afbeeldingen

Gescalede afbeelding van 2 spelende honden met aliasing naast een gescalede zonder aliasing

Beeldverwerking in Python

Resizen

Originele afbeelding met 3000 pixels naast een resized met 800 pixels

Beeldverwerking in Python

Resizen

from skimage.transform import resize

# Hoogte en breedte voor resize height = 400 width = 500
# Resize afbeelding image_resized = resize(image, (height, width), anti_aliasing=True)
# Toon de originele en de resultaatafbeelding show_image(image, 'Originele afbeelding') show_image(image_resized, 'Resized afbeelding')
Beeldverwerking in Python

Resizen

Originele afbeelding van 2 honden met 3000 pixels naast een resized die niet proportioneel oogt

Beeldverwerking in Python

Proportioneel resizen

from skimage.transform import resize

# Stel proportionele hoogte/breedte in: 4x kleiner height = image.shape[0] / 4 width = image.shape[1] / 4
# Resize afbeelding image_resized = resize(image, (height, width), anti_aliasing=True)
show_image(image_resized, 'Resized afbeelding')
Beeldverwerking in Python

Proportioneel resizen

Originele afbeelding van 2 honden met 3000 pixels naast een resized, nu proportioneel met 800 pixels

Beeldverwerking in Python

Laten we oefenen!

Beeldverwerking in Python

Preparing Video For Download...