Maison >développement back-end >Tutoriel Python >Comment enregistrer un tableau Numpy en tant qu'image sans utiliser PIL ?

Comment enregistrer un tableau Numpy en tant qu'image sans utiliser PIL ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-12 13:22:02781parcourir

How to Save a Numpy Array as an Image Without Using PIL?

Enregistrer des tableaux Numpy en tant qu'images sans PIL

La manipulation d'images en Python implique souvent de travailler avec des tableaux. Bien que la bibliothèque d'imagerie Python (PIL) soit un choix populaire pour le traitement d'images, certaines restrictions peuvent nécessiter des méthodes alternatives.

Comment enregistrer un tableau Numpy en tant qu'image

Pour enregistrer un tableau Numpy en tant qu'image, vous pouvez suivre les étapes suivantes :

Convertir le tableau en image :

Tout d'abord, convertissez votre tableau Numpy en un objet image. Ceci peut être réalisé en utilisant des fonctions de bibliothèques comme OpenCV ou toute autre bibliothèque de traitement d'image appropriée. Par exemple, OpenCV fournit une fonction imshow() qui permet la visualisation et l'enregistrement d'images.

Encoder l'image :

Une fois que vous avez un objet image, encodez-le dans un format spécifique tel que PNG ou JPEG. Cela peut être fait en utilisant la fonction cv2.imencode() dans OpenCV.

Écrire l'image sur le disque :

Enfin, écrivez l'image codée sur le disque à l'aide du cv2. fonction imwrite(). Cela enregistrera l'image au format souhaité dans le chemin de fichier spécifié.

Exemple de code :

Voici un exemple utilisant OpenCV pour enregistrer un tableau Numpy en tant qu'image :

import cv2
import numpy as np

# Create a Numpy array
arr = np.random.rand(256, 256, 3) * 255
arr = arr.astype(np.uint8)

# Convert array to image
img = cv2.cvtColor(arr, cv2.COLOR_BGR2RGB)

# Encode image
img_encoded = cv2.imencode('.jpg', img)

# Write image to disk
cv2.imwrite('image.jpg', img_encoded[1])

En suivant cette approche, vous pouvez réussir à enregistrer des tableaux Numpy sous forme d'images sans compter sur PIL. Les commandes et fonctions spécifiques peuvent varier légèrement en fonction de la bibliothèque de traitement d'image que vous utilisez.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn