Ein bisschen Bildverarbeitung in Python und ich versuche, den Wert eines 50x50 Quadrat von numpy Array zu ändern und jedes Quadrat würde alle 200 Pixel ändern. So weit habe ich das:Ändern von Pixelwerten in einem 50x50 Quadrat 2d Numpy Array
image_data[0::200,0::200] = 999
Dies pflanzt ein extrem helles Pixel alle 200 Leerzeichen. Ich kann jedoch nicht herausfinden, wie man die umgebenden Pixel verändern kann. Ich habe versucht, etwas Ähnliches wie folgt aus:
image_data[0::200+1,0::200] = 999
image_data[0::200-1,0::200] = 999
image_data[0::200+2,0::200] = 999
image_data[0::200-2,0::200] = 999
Aber diese breitet sich die Pixel aus über Iterationen. Ich bin mit Python etwas eingerostet und die Lösung ist wahrscheinlich trivial, aber ich schätze jede Hilfe, die ich bekommen kann.
Danke für die Antwort. Wie würdest du das angehen, wenn du es benötigst, sagen wir, dass 50 Pixel jedes 200. geänderte Pixel umgeben. Wie etwa 175-225 in beiden Zeilen und Spalten bei 999 Helligkeit – cvirus96
habe ich den Code aktualisiert, um den Fall zu decken, in dem image_data ebenfalls rechteckig ist. –
Wenn ich die Helligkeit jedes quadratischen Kernels basierend auf einer Gaußschen Funktion anpassen wollte, gibt es dafür eine schnelle Lösung? Wenn ich an Stelle von 999 ein Gaussian anschließe, erzeugt es einen in der Mitte des Bildes, nicht in der Mitte jedes Quadrats. – cvirus96