Maison > développement back-end > Tutoriel Python > Programme de réparation d'images basé sur Python (implémentant la suppression des filigranes)

Programme de réparation d'images basé sur Python (implémentant la suppression des filigranes)

不言
Libérer: 2018-06-04 11:36:15
original
3628 Les gens l'ont consulté

Cet article vous présente principalement les informations pertinentes sur le programme de réparation d'images Python, qui peut être utilisé pour supprimer les filigranes dans les images. Il est principalement implémenté à l'aide du framework OpenCV. L'article le présente en détail à travers l'exemple de code. est nécessaire Les amis peuvent s'y référer, jetons un coup d'œil ci-dessous

Programme de réparation d'images - peut être utilisé pour supprimer les filigranes

dans la vraie vie, nous pouvons rencontrer des images belles ou précieuses qui sont perturbées par le bruit, comme des plis sur de vieilles photos, de la poussière ou des taches sur l'objectif, ou des images que nous souhaitons utiliser mais qui comportent des filigranes gênants, alors existe-t-il un moyen pour éliminer ces bruits ?

La réponse est oui, c'est toujours l'excellent framework OpenCV que nous avons utilisé d'innombrables fois.

OpenCV

À l'heure actuelle, OpenCV est progressivement devenue une plateforme générale de recherche fondamentale et de développement de produits. Le nom OpenCV contient la signification d’Open et de Computer Vision. En fait, Open fait référence à Open Source (open source, c'est-à-dire code open source) et Computer Vision fait référence à la vision par ordinateur. Le développement d'OpenCV a un impact important sur le développement de logiciels. Si vous souhaitez en savoir plus, vous pouvez vous référer à cet article : http://www.jb51.net/article/127911.htm

Aperçu de l'effet


Principe de réparation d'image

Comment OpenCV l'implémente-t-il C'est simple ? En d’autres termes, le développeur calibre les caractéristiques du bruit et utilise les caractéristiques de couleur autour du bruit pour déduire la couleur de l’image qui doit être réparée, réalisant ainsi une réparation de l’image.

Le programme implémente une analyse

  • pour calibrer les caractéristiques du bruit et utiliser cv2.inRange pour binariser le bruit Binariser l'image, code spécifique : cv2.inRange(img, np.array([240, 240, 240]), np.array([255, 255, 255])), [240, 240, Couleurs autres. plus de 240]~[255, 255, 255] sont traités comme 0 ;

  • Utilisez la méthode de dilatation d'OpenCV pour étendre la zone de fonctionnalités et optimiser l'effet de traitement de l'image

  •  ;
  • Utilisez la méthode inpaint, en utilisant le masque de bruit comme paramètre, pour raisonner et réparer l'image

Code complet

#coding=utf-8
#图片修复

import cv2
import numpy as np

path = "img/inpaint.png"

img = cv2.imread(path)
hight, width, depth = img.shape[0:3]

#图片二值化处理,把[240, 240, 240]~[255, 255, 255]以外的颜色变成0
thresh = cv2.inRange(img, np.array([240, 240, 240]), np.array([255, 255, 255]))

#创建形状和尺寸的结构元素
kernel = np.ones((3, 3), np.uint8)

#扩张待修复区域
hi_mask = cv2.dilate(thresh, kernel, iterations=1)
specular = cv2.inpaint(img, hi_mask, 5, flags=cv2.INPAINT_TELEA)

cv2.namedWindow("Image", 0)
cv2.resizeWindow("Image", int(width / 2), int(hight / 2))
cv2.imshow("Image", img)

cv2.namedWindow("newImage", 0)
cv2.resizeWindow("newImage", int(width / 2), int(hight / 2))
cv2.imshow("newImage", specular)
cv2.waitKey(0)
cv2.destroyAllWindows()
Copier après la connexion

Recommandations associées :


Méthodes de traitement par lots de fichiers de données et scientifiques calculs basés sur python

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