Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
ws1314:bildoperationen.py [2014/02/13 12:05] stefanborn angelegt |
ws1314:bildoperationen.py [2016/05/10 14:46] (aktuell) |
||
---|---|---|---|
Zeile 31: | Zeile 31: | ||
def glaetten(bild,n): | def glaetten(bild,n): | ||
+ | '''Glaetten durch Faltung''' | ||
if n==3: | if n==3: | ||
return sig.convolve2d(bild, 1/16.*np.array([[1,2,1],[2,4,2],[1,2,1]]),mode='same') | return sig.convolve2d(bild, 1/16.*np.array([[1,2,1],[2,4,2],[1,2,1]]),mode='same') | ||
Zeile 45: | Zeile 46: | ||
def laplace(bild): | def laplace(bild): | ||
+ | '''Laplace-Faltung, hebt Kanten hervor, aber sehr rauschanfällig''' | ||
return sig.convolve2d(bild, np.array([[1,1,1],[1,-8,1],[1,1,1]]),mode='same')*10. | return sig.convolve2d(bild, np.array([[1,1,1],[1,-8,1],[1,1,1]]),mode='same')*10. | ||
def gradient(bild): | def gradient(bild): | ||
+ | '''Berechnet den Betrag des Gradienten: Die Komponenten des Gradienten werden | ||
+ | durch Faltung bestimmt''' | ||
bild_gradx=sig.convolve2d(bild, np.array([[1,0,-1],[2,0,-2],[1,0,-1]]),mode='same') | bild_gradx=sig.convolve2d(bild, np.array([[1,0,-1],[2,0,-2],[1,0,-1]]),mode='same') | ||
bild_grady=sig.convolve2d(bild, np.array([[1,0,-1],[2,0,-2],[1,0,-1]]).T,mode='same') | bild_grady=sig.convolve2d(bild, np.array([[1,0,-1],[2,0,-2],[1,0,-1]]).T,mode='same') |