[PYTHON] Mia Nanasawas Gesicht ist (ノ ´ □ `) ノ Auf das ursprüngliche schöne Gesicht wird keine Rauschverarbeitung angewendet

Einführung

七沢みあノイズ

** Mia Nanasawa ist süß, nicht wahr? ** ** **

"Das?" "Es ist anders als gewöhnlich. Es ist seltsam ..."

Wenn Sie zoomen ...

Gibt es etwas ** wie Sesamsalz mit schwarzen und weißen Punkten ** gemischt?

So können Sie sich nicht auf Ihr süßes Gesicht konzentrieren.

** Glatt ** und ** Schwarz-Weiß-Punkte entfernen **!

Was ist Glättung?

** Verwischen Sie das Bild **. OpenCV bietet vier Arten von Unschärfemethoden (Filter).

―― 1: Verschieben des Mittelungsfilters (Mittelungsfilter)

―― 2: Gaußscher Filter

―― 3: Medianfilter

―― 4: Bilateraler Filter

データ

【Hinweis】 ・ "Helligkeit" ist einfach eine Verringerung der Farbsättigung. ・ "Helligkeit" berücksichtigt den Helligkeitsunterschied je nach Farbe.

image.png ** ex) Für Blau (R: 0 G: 0 B: 255) ** image.png

1: Filter für gleitenden Durchschnitt (Mittelwertfilter)

データ データ
#Unschärfe bedeutet "Unschärfe".
img = cv2.imread("nana.jpg ")#Laden Sie die Bilddatei mit openCV
img_blur = cv2.blur(img, (3, 3))#Erstes Argument=Bilddatei,Zweites Argument=Filterbreite,Vertikale Breite
imgs = cv2.hconcat([img, img_blur])#Verbinden Sie Bilder gleicher Höhe horizontal

cv2.imwrite("nana1.jpg ",imgs)#Speichern Sie die Bilddatei mit openCV
データ

☚ Die linke Abbildung ist das Originalbild. ☛ Die rechte Abbildung ist das Bild mit ** Mittelungsfilter **.

Die Abbildung rechts zeigt mehr unscharfes Rauschen. Es scheint schwierig, es vollständig zu löschen. ..

Mittelungsfilter (Filtergröße von 1x1 bis 6x6)

img1 = cv2.blur(img, (1, 1))
img2 = cv2.blur(img, (2, 2))
img3 = cv2.blur(img, (3, 3))
img4 = cv2.blur(img, (4, 4))
img5 = cv2.blur(img, (5, 5))
img6 = cv2.blur(img, (6, 6))

imgs_1 = cv2.hconcat([img1, img2, img3])
imgs_2 = cv2.hconcat([img4, img5, img6])
imgs = cv2.vconcat([imgs_1, imgs_2])#Verbinden Sie Bilder gleicher Breite vertikal
cv2.imwrite("nana2.jpg ", imgs)

nana6.jpg

Von oben links wird das Filter vergrößert. Sie können sehen, dass die Unschärfe des Bildes ** immer stärker ** ist. ** Das Foto unten rechts kann sich jetzt auf Mia konzentrieren, ohne sich um weißen Sesam sorgen zu müssen! !! ** ** **

2: Gaußscher Filter

Berechnete Gewichte im Filter nach ** Gaußscher Verteilung **.

データデータ

** [Unterschied zum Mittelungsfilter] ** Der ** Ersatzwert ** ist zu ersetzen, damit das bemerkenswerte Pixel in der Mitte ** das größte Gewicht ** und das äußere Pixel das kleinere Gewicht ** hat. Diese Eigenschaft ermöglicht es, das Bild ** zu verwischen, während mehr Informationen um die Pixel herum verbleiben.

img_gauss = cv2.GaussianBlur(img, (3, 3), 3)#Das dritte Argument ist σ der Gaußschen Funktion
imgs = cv2.hconcat([img, img_gauss])
cv2.imwrite("nana3.jpg ", imgs)
データ

☚ Die linke Abbildung ist das Originalbild. ☛ Die rechte Abbildung ist das Bild mit ** Gauß-Filter (σ = 3) **

Es unterscheidet sich nicht wesentlich vom ** 1-Mittelungsfilter **

3: Medianfilter

Der ** Median ** wird aus den im angegebenen Filter enthaltenen Pixeln extrahiert und ersetzt.

** [Unterschied zum Mittelungsfilter] ** Der ** Ersatzwert ** ist nicht der gemittelte Pixelwert, sondern der ** immer vorhandene ** Pixelwert wird verwendet.

img_med = cv2.medianBlur(img, 3)
imgs = cv2.hconcat([img, img_med])
cv2.imwrite("nana4.jpg ", imgs)
データ

☚ Die linke Abbildung ist das Originalbild. ☛ Die rechte Abbildung ist das Bild mit ** Medianfilter **

** Wow ぉ ぉ ぉ ぉ ぉ ぉ ぉ ぉ ぉ ぉ ぉ ぉ ぉ ぉ ぉ ** Sesamsalz ist weg ** ** Ich bin die süßeste Mia aller Zeiten! !! ** ** **

4: Bilateraler Filter

** Andere als Kanten ** sind Gaußsche Filter. Ein Gauß-Filter wird durchgeführt, indem das Gewicht in dem Bereich, in dem der Helligkeitsunterschied groß ist, auf "0" gesetzt wird.

データ →  データ

** [Unterschiede zu herkömmlichen Glättungsfiltern] ** ** Es ist möglich, das Bild zu verwischen, während die Kante (Kontur) verlassen wird **

img_bi = cv2.bilateralFilter(img, 9, 75, 75)
imgs = cv2.hconcat([img, img_bi])
cv2.imwrite("nana5.jpg ", imgs)
データ

☚ Die linke Abbildung ist das Originalbild. ☛ Die rechte Abbildung ist das Bild mit ** bilateralem Filter **.

Ergebnis

Das Sesamsalz war diesmal ein deutliches Geräusch, daher stellte sich heraus, dass es am besten war, einen ** Medianfilter ** anzuwenden.

Ich hatte auch das Gefühl, dass ** bilateraler Filter ** geeignet wäre, wenn ** Rauschsättigung ** nahe an ** Originaldaten ** Rauschen liegt.

Wenn Ihr Lieblingsbild Rauschen enthält, filtern wir es!

Recommended Posts

Mia Nanasawas Gesicht ist (ノ ´ □ `) ノ Auf das ursprüngliche schöne Gesicht wird keine Rauschverarbeitung angewendet
Setzen Sie die Anzahl der Hot-codierten Features auf den ursprünglichen Kategoriewert zurück
Verwenden Sie den Befehl pushd, der bequemer als der Befehl cd ist, um sofort zum ursprünglichen Verzeichnis zurückzukehren.
Die Geschichte, dass CSS nicht mehr angewendet wird, wenn die Django-App von lokal auf AWS hochgeladen wird