Interpolation automatique des images avec OpenCV et Python (méthode de marche rapide, Navier-Stokes)

introduction

Utilisez OpenCV et Python par programme pour éliminer les débris et les rayures des photos numérisées et supprimer les objets indésirables des images fixes et des vidéos.

Cette fois, je vais effacer le fil électrique.

** ◎ Image d'entrée ** img.jpg

** ◎ Masque ** mask.jpg

** ◎ Résultat ** result.jpg

cv2.inpaint inpaint(src, inpaintMask, inpaintRadius, flags[, dst]) -> dst

Un masque est appliqué à l'image d'entrée et la partie de masque est interpolée vers l'intérieur en fonction de l'image autour de la limite du masque.

programme

inpaint.py


# -*- coding: utf-8 -*-

import cv2

#Image originale
img = cv2.imread('img.jpg')
#masque
mask = cv2.imread('mask.png',0)

#Correction d'image
dst = cv2.inpaint(img, mask, 3, cv2.INPAINT_TELEA)
#dst = cv2.inpaint(img, mask, 3, cv2.INPAINT_NS)

#afficher
cv2.imshow('dst',dst)
cv2.waitKey(0)
cv2.destroyAllWindows()

#sauvegarder
cv2.imwrite('result.jpg', dst)

OpenCV : 3.1.0 Python : 3.5.2

Veuillez vous référer ici pour créer un environnement OpenCV et Python. (Lien)

en conclusion

Étant donné que les pixels du masque sont interpolés à partir des pixels autour du masque, cela fonctionne bien si l'image a une sensation relativement plate autour du masque. Au contraire, si les environnements sont des motifs compliqués, cela ne fonctionnera pas. Si le masque ne masque pas complètement la partie que vous souhaitez effacer, du bruit apparaîtra. De plus, s'il y avait un problème avec la forme du masque, la partie du masque pourrait ressembler à une épée.

Des opérations d'image similaires sont possibles avec PhotoShop, mais vous devrez le faire manuellement. Avec OpenCV, vous pouvez le faire par programmation, vous pouvez donc l'appliquer aux vidéos. Pour la protection de la vie privée, il semble que vous puissiez l'utiliser pour extraire automatiquement les personnes de la vidéo et compléter automatiquement cette partie avec cette méthode.

Recommended Posts

Interpolation automatique des images avec OpenCV et Python (méthode de marche rapide, Navier-Stokes)
Édition d'image avec python OpenCV
Briller la vie avec Python et OpenCV
[Python] Utilisation d'OpenCV avec Python (filtrage d'image)
Réseau neuronal avec OpenCV 3 et Python 3
[Python] Utilisation d'OpenCV avec Python (transformation d'image)
Trouver la similitude d'image avec Python + OpenCV
Méthode de mise à jour automatique par python Pyinstaller exe
Capturer des images avec Pupil, python et OpenCV
Traitement d'image avec Python et OpenCV [Tone Curve]
Acquisition d'images depuis une caméra avec Python + OpenCV
Traitement d'image léger avec Python x OpenCV
Hello World et détection de visage avec OpenCV 4.3 + Python
J'ai essayé de "lisser" l'image avec Python + OpenCV
J'ai essayé de "différencier" l'image avec Python + OpenCV
Comment recadrer une image avec Python + OpenCV
Installez OpenCV 4.0 et Python 3.7 sur Windows 10 avec Anaconda
J'ai essayé de "binariser" l'image avec Python + OpenCV
[Petite histoire] Tester la génération d'images avec Python / OpenCV
Correspondance des fonctionnalités avec OpenCV 3 et Python 3 (A-KAZE, KNN)
Binarisation avec OpenCV / Python
Remarques sur le traitement d'images HDR et RAW avec Python
Méthode Kernel avec Python
[OpenCV / Python] J'ai essayé l'analyse d'image de cellules avec OpenCV
Capture d'image / comparaison de la vitesse OpenCV avec et sans GPU
Visualisez la gamme d'insertions internes et externes avec python
Suivi automatique sur Twitter avec python et sélénium! (RPA)
Créer une image à plage dynamique élevée (HDR) avec OpenCV et Python (Mertens, Robertson, Debevec)
Traitement d'image avec Python
Ubuntu 20.04 sur raspberry pi 4 avec OpenCV et utilisation avec python
Génération d'images JPEG en spécifiant la qualité avec Python + OpenCV
Créez diverses vidéos Photoshop avec Python + OpenCV ② Créez une image fixe Photoshop
[Python] Taille d'image de la caméra Web et paramètres FPS avec OpenCV
Chargement / affichage et accélération de gif avec python [OpenCV]
Application de Python: Nettoyage des données Partie 3: Utilisation d'OpenCV et prétraitement des données d'image
Exploration Web, scraping Web, acquisition de caractères et sauvegarde d'image avec python
Coller le png avec le canal alpha comme une image transparente avec Python / OpenCV
[Jouons avec Python] Traitement d'image en monochrome et points
Convertir une vidéo en noir et blanc avec ffmpeg + python + opencv
[Python] Accès et recadrage des pixels d'image à l'aide d'OpenCV (pour les débutants)
[Python] Lecture facile des fichiers image du numéro de série avec OpenCV
Programmation avec Python et Tkinter
"Traitement Apple" avec OpenCV3 + Python3
Python et matériel - Utilisation de RS232C avec Python -
Capture de caméra avec Python + OpenCV
[Python] Méthode de calcul avec numpy
[Python] Utilisation d'OpenCV avec Python (basique)
Tri des fichiers image avec Python (2)
Tri des fichiers image avec Python (3)
Traitement d'image avec Python (partie 1)
Tweet avec image en Python
Tri des fichiers image avec Python
Traitement d'image avec Python (3)
Détection de visage avec Python + OpenCV
Obtenez des fonctionnalités d'image avec OpenCV
python avec pyenv et venv
Utiliser OpenCV avec Python @Mac
Reconnaissance d'image avec Keras + OpenCV
Fonctionne avec Python et R
[Python] Traitement d'image avec scicit-image