cc2bw
Descripción
Ejemplos
Lea y muestre una imagen.
I = imread("blobs.png");
imshow(I)
Cree una estructura de componentes conectados.
CC = bwconncomp(I);
Filtre la estructura y conserve los objetos redondos. Muestre la imagen filtrada.
CC = bwpropfilt(CC,"Circularity",[0.7 1]);
imshow(cc2bw(CC))
Filtre de nuevo la estructura y conserve los objetos grandes. Muestre la imagen filtrada.
CC = bwpropfilt(CC,"Area",[20 Inf]);
imshow(cc2bw(CC))
Lea una imagen binaria y detecte los componentes conectados.
BW = imread("text.png");
CC = bwconncomp(BW);Mida el área de cada componente conectado y devuelva los resultados como una tabla.
p = regionprops("table",CC,"Area");
Cree una imagen binaria que contenga únicamente los componentes conectados más grandes del 2.º al 10.º. Muestre el resultado.
[~,idx] = sort(p.Area,"descend");
BWfilt = cc2bw(CC,ObjectsToKeep=idx(2:10));
imshow(BWfilt)
Lea una imagen en escala de grises de granos de arroz y, después, convierta la imagen a binaria.
I = imread("rice.png");
BW = imbinarize(I);
imshow(BW)
Mida el área y el cuadro delimitador de cada región.
CC = bwconncomp(BW); stats = regionprops("table",CC,"Area","BoundingBox");
Seleccione las regiones a las que se aplican estas condiciones:
El área es superior a 50 píxeles.
El cuadro delimitador tiene menos de 15 píxeles de ancho y una altura superior o igual a 20 píxeles.
area = stats.Area; bbox = stats.BoundingBox; selection = (area > 50) & (bbox(:,3) < 15) & (bbox(:,4) >= 20); BW2 = cc2bw(CC,ObjectsToKeep=selection);
Muestre la imagen filtrada.
imshow(BW2)

Argumentos de entrada
Componentes conectados (objetos), especificados como una estructura con cuatro campos.
| Campo | Descripción |
|---|---|
Connectivity | Conectividad de los componentes conectados |
ImageSize | Tamaño de la imagen binaria |
NumObjects | Número de componentes conectados en la imagen binaria. |
PixelIdxList | Arreglo de celdas de 1 por NumObjects, en el que el k-ésimo elemento del arreglo de celdas es un vector que contiene los índices lineales de los píxeles del k-ésimo objeto. |
Objetos que conservar, especificados como uno de estos valores.
Entero positivo o vector de enteros positivos: conservar el objeto o los objetos cuyo índice está incluido en
objectsToKeep. La longitud deobjectsToKeepes inferior o igual aCC.NumObjects.Vector lógico: conservar los objetos cuyo elemento correspondiente en
objectsToKeepestrue. La longitud deobjectsToKeepdebe ser igual aCC.NumObjects.
Argumentos de salida
Imagen binaria, devuelta como un arreglo lógico del mismo tamaño que CC.ImageSize.
Tipos de datos: logical
Capacidades ampliadas
Notas y limitaciones de uso:
cc2bwes compatible con la generación de código C y C++ (requiere MATLAB® Coder™). Para obtener más información, consulte Code Generation for Image Processing.Si genera código para la función
cc2bwdirectamente,CC.PixelIdxListdebe ser homogéneo. Este código muestra cómo hacer queCC.PixelIdxListsea homogéneo usando la funciónmakeHomogeneous(MATLAB Coder).CC = bwconncomp(BW); CC2 = bwpropfilt(CC,"Area",10); typeCC = coder.typeof(CC2); typeCC.Fields.PixelIdxList = makeHomogeneous(typeCC.Fields.PixelIdxList); codegen cc2bw -args {typeCC}
Si genera código para una función wrapper, no es necesario que
CC.PixelIdxListsea homogéneo. Por ejemplo, este comando genera código para una función wrapper denominadamyFunction.codegen myFunction -args {BW}
Aquí tiene una definición de muestra de la función wrapper
myFunction, que incluye una llamada a la funcióncc2bw.function out = myFunction(BW) %#codegen CC = bwconncomp(BW); CC2 = bwpropfilt(CC,"Area",10); out = cc2bw(CC2); end
Historial de versiones
Introducido en R2024aAhora cc2bw es compatible con la generación de código C (requiere MATLAB Coder).
Consulte también
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Seleccione un país/idioma
Seleccione un país/idioma para obtener contenido traducido, si está disponible, y ver eventos y ofertas de productos y servicios locales. Según su ubicación geográfica, recomendamos que seleccione: .
También puede seleccionar uno de estos países/idiomas:
Cómo obtener el mejor rendimiento
Seleccione China (en idioma chino o inglés) para obtener el mejor rendimiento. Los sitios web de otros países no están optimizados para ser accedidos desde su ubicación geográfica.
América
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- 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)