Fusión de etiquetas
En principio, todos los algoritmos de segmentación tienen limitaciones. En caso de que los resultados sean subóptimos y no haya disponible un mejor algoritmo de segmentación, el post-procesamiento de etiquetas puede ser una opción. Hay algunas funciones disponibles para fusionar etiquetas según sus propiedades, como la intensidad a lo largo del borde donde las etiquetas se tocan o el recuento de píxeles de etiquetas combinadas por pares.
<NVIDIA GeForce RTX 3050 Ti Laptop GPU on Platform: NVIDIA CUDA (1 refs)>
Fusión de etiquetas que se tocan
El caso de uso más trivial podría ser fusionar objetos etiquetados que se tocan.
|
cle._ image
| shape | (254, 256) |
| dtype | uint32 |
| size | 254.0 kB |
| min | 0.0 | | max | 72.0 |
|
|
cle._ image
| shape | (254, 256) |
| dtype | uint32 |
| size | 254.0 kB |
| min | 0.0 | | max | 61.0 |
|
Fusión de etiquetas según la intensidad del borde
Como ejemplo, utilizamos un corte recortado del conjunto de datos de ejemplo cells3d en scikit-image.
|
cle._ image
| shape | (100, 100) |
| dtype | float32 |
| size | 39.1 kB |
| min | 1062.0 | | max | 20614.0 |
|
En el siguiente ejemplo, nuestra célula en el centro de la imagen fue segmentada erróneamente como dos células:
|
nsbatwm made image
| shape | (100, 100) |
| dtype | int32 |
| size | 39.1 kB |
| min | 1 | | max | 12 |
|
Esto se puede corregir fusionando células con intensidad de borde por debajo de un umbral dado.
c:\structure\code\pyclesperanto_prototype\pyclesperanto_prototype\_tier3\_generate_touch_mean_intensity_matrix.py:30: UserWarning: generate_touch_mean_intensity_matrix is supposed to work with images of integer type only.
Loss of information is possible when passing non-integer images.
warnings.warn("generate_touch_mean_intensity_matrix is supposed to work with images of integer type only.\n" +
|
cle._ image
| shape | (100, 100) |
| dtype | uint32 |
| size | 39.1 kB |
| min | 1.0 | | max | 8.0 |
|