Bild erosion und Dilatation mit Scipy

Ich versuche, mit scipy zu tun erosion und Dilatation eines Bildes. Es scheint ziemlich einfach, mit scipy -> binary_erosion /dialation. Die Ausgabe wird jedoch überhaupt nicht, was erwartet wird.

Hier ist mein basic-code:

import scipy
from scipy import ndimage
import matplotlib.pyplot as plt
import numpy as np
import Image

#im = Image.open('flower.png')
im = ndimage.imread('flower.png')
im = ndimage.binary_erosion(im).astype(np.float32)
scipy.misc.imsave('erosion.png', im)


im2 = Image.open('flower.png')
im2 = ndimage.binary_dilation(im2)
scipy.misc.imsave('dilation.png', im2)

Dies ist die Ausgabe:

Bild erosion und Dilatation mit Scipy

Den Ausgang für die Dilatation ist einfach ein komplett weißes Bild für das original "Blume.png"

Ich glaube, ich muss geben einen besseren kernel oder Maske, aber bin mir nicht wirklich sicher, warum, ich bin immer ein grün-Ausgang für erosion und komplett weiß-Ausgabe für die Dilatation.

  • binäre Operatoren erwarten Binäreingang anders als deins
InformationsquelleAutor Nick | 2013-04-06
Schreibe einen Kommentar