Bildverzerrungen
Die Faltung eines Bildes mit einem Kernel fasst einen Teil des Bildes als Summe der Multiplikationen dieses Bildteils mit dem Kernel zusammen. In dieser Übung schreibst du den Code, der eine Faltung eines Bildes mit einem Kernel unter Verwendung von Numpy ausführt. Angenommen, du hast ein Schwarz-Weiß-Bild, das in der Variablen „ im ” gespeichert ist, dann schreib die Operationen in die Schleife, die die Faltung mit dem angegebenen Kernel ausführen würden.
Diese Übung ist Teil des Kurses
<Kurs>Bildmodellierung mit Keras</Kurs>Übungsanweisungen
- Wähle in jedem Durchlauf das richtige Fenster aus dem Bild aus und multipliziere diesen Teil des Bildes mit dem Kernel.
- Füge die Ergebnisse zusammen und speicher die Summe an der richtigen Stelle im Ausgabe-Array (
results).
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
kernel = np.array([[0, 1, 0], [1, 1, 1], [0, 1, 0]])
result = np.zeros(im.shape)
# Output array
for ii in range(im.shape[0] - 3):
for jj in range(im.shape[1] - 3):
result[ii, jj] = (____[ii:ii+3, jj:____+____] * ____).____
# Print result
print(result)