Etiquetado de componentes conectados en superficies
Este cuaderno demuestra cómo diferenciar objetos según su conectividad.
Usamos una imagen 3D de núcleos…
|
| shape | (60, 256, 256) |
| dtype | uint16 |
| size | 7.5 MB |
| min | 0 | | max | 65535 |
|
… y segmentamos los núcleos resultando en una imagen binaria 3D.
|
| shape | (60, 256, 256) |
| dtype | uint8 |
| size | 3.8 MB |
| min | 0 | | max | 1 |
|
Convertimos esta imagen binaria en un conjunto de datos de superficie.
|
nppas.SurfaceTuple
| origin (z/y/x) | [0. 0. 0.] |
| center of mass(z/y/x) | 34.703,124.973,131.513 |
| scale(z/y/x) | 1.000,1.000,1.000 |
| bounds (z/y/x) | 16.500...59.000 0.000...255.000 0.000...255.000 |
| average size | 97.003 |
| number of vertices | 151354 |
| number of faces | 301006 |
|
Al aplicar el etiquetado de componentes conectados a la superficie, podemos identificar vértices/caras que están conectados y diferenciar aquellos que no lo están. El resultado es también un conjunto de datos de superficie donde los valores de los vértices corresponden a la etiqueta n-ésima a la que pertenecen estos objetos. Por lo tanto, se puede concluir del número máximo de esta superficie que hay 38 núcleos en esta imagen.
|
nppas.SurfaceTuple
| origin (z/y/x) | [0. 0. 0.] |
| center of mass(z/y/x) | 34.703,124.973,131.513 |
| scale(z/y/x) | 1.000,1.000,1.000 |
| bounds (z/y/x) | 16.500...59.000 0.000...255.000 0.000...255.000 |
| average size | 97.003 |
| number of vertices | 151354 |
| number of faces | 301006 |
| min | 0 | | max | 38 |
|