NumPy pentru imagini

Procesarea imaginilor în Python

Rebeca Gonzalez

Data Engineer

NumPy pentru imagini

  • Fundamente ale procesării imaginilor
    • Răsturnare
    • Extragerea și analiza caracteristicilor

Câine drăguț care merge în parc

Câine drăguț răsturnat orizontal

Procesarea imaginilor în Python

Imagini ca NdArray-uri

Clădire din Madrid

# Loading the image using Matplotlib
madrid_image = plt.imread('/madrid.jpeg')

type(madrid_image)
<class 'numpy.ndarray'>
Procesarea imaginilor în Python

Culori cu NumPy

Imagine cu struguri deasupra altor 3 imagini care arată canalele de culoare

Procesarea imaginilor în Python

Culori cu NumPy

# Obtaining the red values of the image
red = image[:, :, 0]

# Obtaining the green values of the image
green = image[:, :, 1]

# Obtaining the blue values of the image
blue = image[:, :, 2]

Canalele imaginii afișate separat

Procesarea imaginilor în Python

Culori cu NumPy

Canalele unei imagini cu o tânără afișate separat în scară de gri

plt.imshow(red, cmap="gray")    
plt.title('Red')
plt.axis('off')
plt.show()
Procesarea imaginilor în Python

Forme

Clădire din Madrid

# Accessing the shape of the image
madrid_image.shape
(426, 640, 3)
Procesarea imaginilor în Python

Dimensiuni

Clădire din Madrid

# Accessing the shape of the image
madrid_image.size
817920
Procesarea imaginilor în Python

Răsturnarea imaginilor: vertical

# Flip the image in up direction
vertically_flipped = np.flipud(madrid_image)

show_image(vertically_flipped, 'Vertically flipped image')

Imaginea din Madrid răsturnată vertical

Procesarea imaginilor în Python

Răsturnarea imaginilor: orizontal

# Flip the image in left direction
horizontally_flipped = np.fliplr(madrid_image)

show_image(horizontally_flipped, 'Horizontally flipped image')

Imaginea din Madrid răsturnată orizontal

Procesarea imaginilor în Python

Ce este o histogramă?

Histograma unei imagini întunecate Histograma unei imagini luminoase

Procesarea imaginilor în Python

Histograme de culoare

Histograma unei imagini RGB a unei tinere, cu câte o histogramă pentru fiecare culoare

Procesarea imaginilor în Python

Aplicații ale histogramelor

  • Analiză
  • Prag de separare
  • Luminozitate și contrast
  • Egalizarea imaginii

Imagine cu prag aplicat

Procesarea imaginilor în Python

Histograme în Matplotlib

Histograma culorii roșii

# Red color of the image
red = image[:, :, 0]

# Obtain the red histogram plt.hist(red.ravel(), bins=256)
Procesarea imaginilor în Python

Vizualizarea histogramelor cu Matplotlib

blue = image[:, :, 2]

plt.hist(blue.ravel(), bins=256)
plt.title('Blue Histogram')
plt.show()

Histograma culorii albastre a unei imagini

Procesarea imaginilor în Python

Să exersăm!

Procesarea imaginilor în Python

Preparing Video For Download...