Bildverarbeitung mit Python 100 Knock # 10 Medianfilter

Einführung

Hallo, ich bin Ramu. Dieses Mal werden wir einen Medianfilter implementieren, der Rauschen im Bild entfernt.

10. Medianfilter

Ein Medianfilter ist ein Filter, der Bildrauschen glättet und entfernt. Durch Anwenden dieses Filters können Sie das gesamte Bild verschwommen erscheinen lassen.

Dieser Filter ersetzt das interessierende Pixel durch den Medianwert der peripheren Pixel.

Wie in der vorherigen Zeit kann die Filterverarbeitung nicht am Bildrand ausgeführt werden, sodass für nicht vorhandene Pixel eine 0-Auffüllverarbeitung mit 0 durchgeführt wird.

Quellcode

medianFilter.py


import numpy as np
import cv2
import matplotlib.pyplot as plt


def medianFilter(img,k):
  w,h,c = img.shape
  size = k // 2

  #0 Auffüllvorgang
  _img = np.zeros((w+2*size,h+2*size,c), dtype=np.float)
  _img[size:size+w,size:size+h] = img.copy().astype(np.float)
  dst = _img.copy()

  #Filterprozess
  for x in range(w):
    for y in range(h):
      for z in range(c):
        dst[x+size,y+size,z] = np.median(_img[x:x+k,y:y+k,z])

  dst = dst[size:size+w,size:size+h].astype(np.uint8)

  return dst


#Bild lesen
img = cv2.imread('image.jpg')

#Medianfilter
#Zweites Argument: Filtergröße
img = medianFilter(img,15)

#Bild speichern
cv2.imwrite('result.jpg', img)
#Bildschirm
plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))
plt.show()

ファイル名 ファイル名 ファイル名

Die linke Seite des Bildes ist das Eingabebild, die Bildmitte ist das Ausgabebild des vorherigen Gaußschen Filters und die rechte Seite des Bildes ist das aktuelle Ausgabebild. Sie können sehen, dass der Medianfilter das punktförmige Rauschen sauber entfernen kann. Es ist kein sehr guter Vergleich, da die Argumente unterschiedlich sind, aber der Medianfilter kann das Punktrauschen sauberer entfernen.

abschließend

Wenn Sie Fragen haben, können Sie sich gerne an uns wenden. imori_imoris Github hat die offizielle Antwort. Bitte überprüfen Sie dies ebenfalls. .. Da Python ein Anfänger ist, weisen Sie bitte auf Fehler hin.

Recommended Posts

Bildverarbeitung mit Python 100 Knock # 10 Medianfilter
Bildverarbeitung mit Python 100 Knock # 12 Bewegungsfilter
Bildverarbeitung mit Python
Bildverarbeitung mit Python 100 Knock # 9 Gauß-Filter
Bildverarbeitung mit Python (Teil 2)
100 Sprachverarbeitungsklopfen mit Python 2015
Bildverarbeitung mit Python (Teil 1)
Bildverarbeitung mit Python (3)
Bildverarbeitung mit Python 100 Knock # 11 Glättungsfilter (Durchschnittsfilter)
[Python] Bildverarbeitung mit Scicit-Image
100 Sprachverarbeitungsklopfen mit Python (Kapitel 1)
100 Sprachverarbeitungsklopfen mit Python (Kapitel 3)
Die Bildverarbeitung mit Python 100 klopft an die Binärisierung Nr. 3
100 Bildverarbeitung mit Python Knock # 2 Graustufen
Python-Bildverarbeitung
Grundlagen der binärisierten Bildverarbeitung durch Python
Bildverarbeitung durch Python 100 Knock # 1 Kanalersatz
100 Bildverarbeitung mit Python Knock # 8 Max Pooling
100 Sprachverarbeitungsklopfen mit Python (Kapitel 2, Teil 2)
Bildverarbeitung mit Python & OpenCV [Tonkurve]
Bildverarbeitung mit Python 100 Knock # 6 Farbreduktionsverarbeitung
100 Sprachverarbeitungsklopfen mit Python (Kapitel 2, Teil 1)
Zeichnen mit Matrix-Reinventor von Python Image Processing-
Verarbeiten Sie Bilder in Python ganz einfach mit Pillow
Die Bildverarbeitung mit Python 100 führt zu einem durchschnittlichen Pooling von # 7
Leichte Bildverarbeitung mit Python x OpenCV
Bildverarbeitung mit MyHDL
Erste Python-Bildverarbeitung
Bildverarbeitung mit PIL
Bildverarbeitung von Grund auf mit Python (5) Fourier-Transformation
Bildverarbeitung von Grund auf mit Python (4) Konturextraktion
Bildverarbeitung mit Python Environment Setup für Windows
Bildverarbeitung mit PIL (Pillow)
"Apple-Verarbeitung" mit OpenCV3 + Python3
Hinweise zur HDR- und RAW-Bildverarbeitung mit Python
Bildbearbeitung mit Python OpenCV
Akustische Signalverarbeitung mit Python (2)
[Python] Filtern Sie Tabellenkalkulationen mit gspread
Sortieren von Bilddateien mit Python (2)
Sortieren von Bilddateien mit Python (3)
100 Sprachverarbeitung Knock Kapitel 1 (Python)
100 Sprachverarbeitung Knock Kapitel 2 (Python)
Tweet mit Bild in Python
Bilddateien mit Python sortieren
Bildverarbeitung mit Python (Pillow)
Bildverarbeitungssammlung in Python
[Lass uns mit Python spielen] Bildverarbeitung zu Monochrom und Punkten
Schneiden Sie ein Bild mit Python aus
Grundlagen der Echtzeit-Bildverarbeitung mit opencv
[Python] Verwenden von OpenCV mit Python (Bildfilterung)
[Python] Einfache Parallelverarbeitung mit Joblib
100 Sprachverarbeitung Knock Kapitel 1 in Python
[Python] Verwenden von OpenCV mit Python (Bildtransformation)
Persönliche Notizen für die Python-Bildverarbeitung
Bildverarbeitung 100 Klopfen Q9, Q10 (Filter) Beschleunigung
Lassen Sie uns mit Python Image Scraping durchführen
Python-Anfänger versucht 100 Sprachverarbeitung klopfen 2015 (05 ~ 09)
Finden Sie Bildähnlichkeit mit Python + OpenCV
100 Sprachverarbeitung Knock Kapitel 1 von Python