Zähle proximale Labels in einem anderen Label-Bild#

import numpy as np
import pyclesperanto_prototype as cle

cle.get_device()
<gfx90c on Platform: AMD Accelerated Parallel Processing (2 refs)>

Unser Ausgangspunkt ist ein Label-Bild und ein weiteres Label-Bild, aus dem einige der Labels im ersten Bild ausgewählt sind.

label_image = cle.artificial_tissue_2d()
cle.imshow(label_image, labels=True)
../_images/5aab384f2d6305ca2a62b8fbc42a1b9a9bba3b039774c6c64b34e02a0325804a.png
random_vector = np.random.random((1, int(label_image.max() + 1)))
sparse_labels = cle.exclude_labels_with_values_out_of_range(random_vector, label_image, minimum_value_range=0, maximum_value_range=0.3)
cle.imshow(sparse_labels, labels=True)
../_images/133c9aff8a4170f89b7f852e8faaa036925dfc855cd867817d7f3173c400bd6a.png

Wir zählen nun für jedes Label in label_image, wie viele Labels im sparse_labels-Bild in der Nähe sind. Zur Messung der Entfernung verwenden wir die Schwerpunktdistanz.

count_map = cle.proximal_other_labels_count_map(label_image, sparse_labels, maximum_distance=25)
cle.imshow(count_map)
../_images/0542f63c53ee6ea451437919108f808454db88ae44aa046c04bd5a981d0c8f9c.png