Dans le traitement d'images, la conversion d'images RVB en niveaux de gris est une opération courante. Bien que de nombreuses approches existent, trouver la méthode intégrée dans les bibliothèques puissantes comme NumPy ou Matplotlib peut simplifier votre tâche.
Bibliothèque Pillow :
Une solution simple consiste à utilisez la bibliothèque d'images Python (Pillow). Il offre une méthode pratique pour convertir les images RVB en niveaux de gris :
from PIL import Image img = Image.open('image.png').convert('L') img.save('greyscale.png')
Ce code lit l'image RVB, la convertit en niveaux de gris et enregistre l'image résultante.
Utilisation de Matplotlib avec une formule :
Une autre approche consiste à utiliser la formule Y' = 0,2989 R 0,5870 G 0,1140 B pour convertir les images RVB en niveaux de gris. Avec Matplotlib, vous pouvez implémenter cela comme :
import numpy as np import matplotlib.pyplot as plt import matplotlib.image as mpimg def rgb2gray(rgb): return np.dot(rgb[...,:3], [0.2989, 0.5870, 0.1140]) img = mpimg.imread('image.png') gray = rgb2gray(img) plt.imshow(gray, cmap=plt.get_cmap('gray'), vmin=0, vmax=1) plt.show()
Ce code charge l'image, la convertit en niveaux de gris à l'aide de la formule et affiche l'image en niveaux de gris.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!