label2idx
Convertir matrices de etiquetas a arreglos de celdas de índices lineales
Sintaxis
Descripción
convierte las regiones descritas en la matriz de etiquetas pixelIndexList
= label2idx(L
)L
a índices lineales pixelIndexList
.
Ejemplos
Calcular la lista de índices de píxeles para una matriz de etiquetas pequeña
Cree una pequeña matriz de muestra que contenga tres regiones.
BW = logical([1 1 1 0 0 0 0 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 0 0 0 1 1 1 0 0 0 1 0 1 1 1 0 0 0 1 0 1 1 1 0 0 1 1 0 1 1 1 0 0 0 0 0]);
Cree una matriz de etiquetas a partir de esta imagen de muestra.
L = bwlabel(BW)
L = 8×8
1 1 1 0 0 0 0 0
1 1 1 0 2 2 0 0
1 1 1 0 2 2 0 0
1 1 1 0 0 0 0 0
1 1 1 0 0 0 3 0
1 1 1 0 0 0 3 0
1 1 1 0 0 3 3 0
1 1 1 0 0 0 0 0
Obtenga una lista de índices lineales de todos los píxeles de cada región. La función devuelve un arreglo de celdas con un elemento para cada región que encuentra en la matriz de etiquetas.
pixelIndexList = label2idx(L)
pixelIndexList=1×3 cell array
{24x1 double} {4x1 double} {4x1 double}
Examine una de las listas de índices de píxeles devueltas. Por ejemplo, observe la segunda celda del arreglo de celdas devuelto. Contiene los índices lineales para todos los píxeles de la región con etiqueta "2" asignada. La esquina superior izquierda es el píxel BW(2,5), que es el 34.º píxel de la indexación lineal.
pixelIndexList{2}
ans = 4×1
34
35
42
43
Argumentos de entrada
L
— Matriz de etiquetas
Arreglo numérico
Matriz de etiquetas, especificada como arreglo numérico de cualquier dimensión.
Tipos de datos: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
Argumentos de salida
pixelIndexList
— Índices lineales de los píxeles de las regiones
Arreglo de celdas de 1 por n
Índices lineales de los píxeles de las regiones, devueltos como arreglo de celdas de 1 por n. Cada elemento de la salida, pixelIndexList{n}
, es un vector que contiene todos los índices lineales de L
, donde L
es igual a n
.
Capacidades ampliadas
Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.
label2idx
es compatible con la generación de código C (requiere MATLAB® Coder™). Para obtener más información, consulte Code Generation for Image Processing.
Generación de código de GPU
Genere código CUDA® para GPU NVIDIA® mediante GPU Coder™.
Entorno basado en subprocesos
Ejecute código en segundo plano con MATLAB® backgroundPool
o acelere código con Parallel Computing Toolbox™ ThreadPool
.
Esta función es totalmente compatible con los entornos basados en hilos. Para obtener más información, consulte Ejecutar funciones de MATLAB en un entorno basado en subprocesos.
Historial de versiones
Introducido en R2016aR2022b: Compatibilidad con entornos basados en hilos
Ahora label2idx
es compatible con los entornos basados en hilos.
Consulte también
Comando de MATLAB
Ha hecho clic en un enlace que corresponde a este comando de MATLAB:
Ejecute el comando introduciéndolo en la ventana de comandos de MATLAB. Los navegadores web no admiten comandos de MATLAB.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)