Comment binariser des images en utilisant Python

王林
Libérer: 2023-08-26 13:45:39
original
4072 Les gens l'ont consulté

Comment binariser des images en utilisant Python

Comment binariser des images à l'aide de Python

Résumé :
Dans le traitement d'images numériques, la binarisation est une méthode de traitement très courante qui convertit une image en couleur ou en niveaux de gris en seulement deux valeurs. L'image est généralement en noir et blanc. La binarisation de l'image peut mettre en évidence les contours et les caractéristiques de l'image et faciliter les opérations ultérieures d'analyse d'image. Cet article expliquera comment utiliser Python pour binariser des images et fournira des exemples de code pour aider les lecteurs à mieux comprendre.

1. Présenter les bibliothèques nécessaires
Avant de commencer, nous devons présenter certaines bibliothèques nécessaires. En Python, il existe de nombreuses bibliothèques de traitement d'images parmi lesquelles choisir, telles que PIL (Python Imaging Library) et OpenCV. Cet article utilisera la bibliothèque PIL pour le traitement binaire des images, vous devez donc d'abord installer et présenter la bibliothèque PIL.

Exemple de code :

from PIL import Image
Copier après la connexion

2. Lire et afficher l'image originale
Avant le traitement binaire, vous devez d'abord lire l'image originale et l'afficher afin de pouvoir avoir une compréhension plus intuitive des résultats du traitement.

Exemple de code :

# 读取原始图片
image = Image.open('original_image.jpg')

# 显示原始图片
image.show()
Copier après la connexion

3. Binarisation de l'image
Ensuite, nous devons binariser l'image. Dans la bibliothèque PIL, l'objet image est une matrice composée de valeurs de pixels, et la valeur de chaque pixel représente les informations de couleur correspondant à ce point. Pour convertir une image en image binaire, les valeurs de pixels doivent être distinguées selon un certain seuil. Les pixels supérieurs au seuil sont définis en blanc et les pixels inférieurs au seuil sont définis en noir.

Exemple de code :

# 设置二值化阈值
threshold = 128

# 获取图片的宽度和高度
width, height = image.size

# 创建一个新的图片对象,用来存储二值化处理后的结果
binary_image = Image.new('1', (width, height))

# 遍历原始图片的每个像素点
for y in range(height):
    for x in range(width):
        # 获取当前像素点的像素值
        pixel = image.getpixel((x, y))
        # 判断像素值是否大于阈值,如果大于则设置为白色,否则设置为黑色
        if pixel >= threshold:
            binary_image.putpixel((x, y), 255)
        else:
            binary_image.putpixel((x, y), 0)

# 显示二值化处理后的结果
binary_image.show()
Copier après la connexion

4. Enregistrez et affichez l'image binarisée
Enfin, nous enregistrons l'image binarisée traitée localement et l'affichons.

Exemple de code :

# 保存二值化图片到本地
binary_image.save('binary_image.jpg')

# 显示二值化图片
binary_image.show()
Copier après la connexion

Résumé :
Cet article explique comment utiliser Python pour binariser des images. En lisant l'image originale, en définissant le seuil de binarisation, en traversant chaque pixel et en définissant la couleur du pixel en fonction de la taille de la valeur du pixel, l'effet de conversion d'une image en couleur ou en niveaux de gris en une image binaire peut être obtenu. Cette méthode de traitement binaire peut être utilisée dans de nombreux scénarios d'application de traitement d'images tels que la détection de contours, la segmentation d'images et la reconnaissance de caractères. J'espère que l'exemple de code de cet article pourra aider les lecteurs à mieux comprendre et maîtriser la méthode de traitement de binarisation d'image.

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal