Ich habe grundsätzlich mehrere Binärbilder, die jeweils eine verbundene Komponente enthalten. Diese verbundenen Komponenten wurden aus einem Bild abgerufen, was bedeutet, dass, wenn alle verbundenen Komponenten in eine einzelne Bilddatei gezeichnet würden, es keine leeren Räume und keine überlappenden verbundenen Komponenten gäbe. Ich bin auf der Suche nach einem schnellen Weg, um die Kantenpixel aus den verbundenen Komponenten zu extrahieren. Die verbundenen Komponenten werden derzeit in einem einzigen Bild gespeichert, wobei eine Nummer i an der Position (x, y) der i-ten verbundenen Komponente entspricht. Da es viele verbundene Komponenten gibt, deren maximale Anzahl im Bereich von 400-2000 liegt, suche ich nach einem schnellen Weg, um die Kantenpixel jeder Komponente zu erhalten. Hier ist ein Bild zu zeigen, was ich von dem Algorithmus erwarten: ExamplePython: Holen Kanten aus mehreren (> 400) Binärbilder schnell
Ich bin mir bewusst, dass es ein paar Kantenerkennungsalgorithmen sind, aber sie beschäftigen sich mit Graustufenbildern und wird nicht gut für kleine Objekte in großen Bildern sein bei einer großen Anzahl von Bildern. Irgendwelche Vorschläge?
Wenn nur jedes Bild enthält 1 kleines Objekt Ernte Ihre Bilder auf die Größe des Objekts oder ROIs verwenden. Ihr Ansatz zu Ihrer Aufgabe scheint nicht sehr aufwendig ... – Piglet
k-means Clustering -> Kantenerkennung –