Das Bild ist bereits segmentiert und mir liegen die Labels vor. Jetzt möchte ich die zu jedem Label gehörenden Pixelkoordinaten in ein Numpy-Array schreiben. Da ich im Vorfeld nicht weiß, wie die Struktur dieses Arrays aussieht, erstelle ich zunächst eine Liste, an die ich die Koordinaten jedes Labels in einer Schleife nach und nach anhänge.
Bei der Erstellung des Arrays aus der Liste habe ich jetzt das Problem, dass ich keinen dtype zuweisen kann, ich kriege immer folgende Fehlermeldung:
Code: Alles auswählen
ValueError: setting an array element with a sequence.
Code: Alles auswählen
import numpy as np
img_labels = [[ 0 0 1 1 2 2 3 3 4 4 5 5]
[ 0 0 1 1 2 2 3 3 4 4 11 5]
[ 6 6 7 7 8 8 8 9 10 10 11 5]
[ 6 6 7 7 8 8 9 9 10 10 10 11]
[12 12 12 14 14 8 15 9 16 16 16 17]
[13 13 13 20 20 14 14 15 16 16 17 17]
[18 18 19 19 20 20 21 22 22 22 22 23]
[18 18 19 19 20 20 21 21 22 22 23 23]]
unique_labels = np.unique(img_labels)
coord_list = []
for i in unique_labels:
current_indices = np.argwhere(img_labels == i)
coord_list.append(current_indices.tolist())
label_coord = np.array(coord_list, dtype = np.int64 )