Operaciones morfológicas: erosión y dilatación.
Las operaciones morfológicas son una serie de operaciones de procesamiento de imágenes basadas en formas. En términos generales, estas operaciones se realizan en imágenes binarias. La erosión y la expansión son las operaciones morfológicas más básicas
Aplicaciones:
(1) Eliminar ruido
(2) Segmentar (aislar) elementos de imagen independientes y conectar (conectar) elementos adyacentes
(3) Buscar áreas con valores extremos obvios o áreas con valores mínimos en la imagen
2. Expansión)
Esta operación implica convolucionar una imagen A con un núcleo B de forma arbitraria (normalmente cuadrada o circular).
El núcleo B tiene un punto de anclaje definible, generalmente definido como el centro del núcleo.
Para realizar la operación de expansión, debe dibujar el núcleo B en la imagen, luego extraer el valor máximo de píxeles del área cubierta por el núcleo B y reemplazarlo con el píxel en la posición de anclaje. Obviamente, esta maximización hace que las áreas brillantes de la imagen comiencen a "expandirse" (de ahí el término dilatación)
src - la imagen de entrada.
dst - imagen de salida.
elemento: el elemento estructural utilizado para la expansión. Si está vacío, utilice elementos estructurales rectangulares de 3×3
Iteraciones--número de expansiones
3. Erosión (erosión)
La erosión extrae la fase bajo cobertura del núcleo El valor mínimo del elemento. Para realizar una operación de erosión, debe dibujar el núcleo B a lo largo de la imagen, luego extraer el valor mínimo de píxel del área cubierta por el núcleo B y reemplazarlo con el píxel en la ubicación del punto de anclaje.
src - imagen de entrada.
dst - imagen de salida.
elemento: el elemento estructural utilizado para la erosión. Si está vacío, se utiliza un elemento estructurante rectangular de 3×3
iteraciones: el número de iteraciones
4.
Mat strElement = Imgproc.getStructuringElement(Imgproc.MORPH_RECT, new Size(3, 3), new Point(-1, -1));
Hay tres formas de núcleo disponibles . Disponible:
Rectángulo. MORPH_RECT
Cruz: MORPH_CROSS
Elipse: MORPH_ELLIPSE
Especifique el tamaño del núcleo y la posición del ancla nuevamente. Si no se especifica ninguna posición de anclaje, el punto de anclaje predeterminado está en el centro del núcleo.
5. Abre la imagen
Operación de apertura: erosionar primero y luego expandir, adecuada para eliminar objetos pequeños
6. Operación de cierre en la imagen
p>
Operación de cierre: primero expandir y luego erosionar, utilizada para rellenar pequeños agujeros en el objeto de primer plano o borrar pequeños puntos negros en el objeto de primer plano
7. Degradado: la diferencia Diferencia entre el mapa de expansión y el mapa de erosión
7. > Puede usarse para resaltar bordes y preservar el contorno del borde del objeto
8.TopHat: Diferencia entre la imagen original y el resultado de la operación de apertura
La operación de apertura magnifica las grietas o áreas localmente menos brillantes, por lo que restar la operación de apertura de la imagen original da un resultado que resalta áreas que son más brillantes que el área alrededor del contorno original , que es proporcional al tamaño del kernel seleccionado relacionado. La operación TopHat se usa generalmente para separar parches que son más brillantes que los puntos vecinos y se puede usar para extraer el fondo
9. Operación Black Hat: la diferencia entre el resultado de la operación de cierre y la imagen original
El resultado de una operación de sombrero negro resalta áreas que son más oscuras que las áreas que rodean el contorno de la imagen original, por lo que la operación de sombrero negro se utiliza para separar parches que son más oscuros que los puntos adyacentes.
Referencia: /p/6147d69c879f