algorithm - trata - Desarrollo del algoritmo de depilación
video viral de la moto (2)
Como requisito previo de mi proyecto, tengo que eliminar los pelos de la piel de la imagen. Para esto encontré un programa ya existente . La implementación se realiza en Matlab.
El enlace de arriba cita el siguiente
- Identifica las ubicaciones del cabello oscuro mediante una operación de cierre morfológico de escala de grises generalizada,
- Verifica la forma de los píxeles del cabello como una estructura delgada y larga, y reemplaza los píxeles verificados por una interpolación bilineal, y
- Suaviza los píxeles de cabello reemplazados con un filtro de mediana adaptable.
En cuanto a la parte de arriba que menciona la generalized grayscale morphological closing operation
no pude averiguar lo que significaba y tampoco pude implementarlo en Matlab.
Actualmente lo que tengo que hacer es simplemente
- Identificar pixeles capilares
- Verificar pixeles capilares
- Reemplazar píxeles de cabello con píxeles de piel vecinos
Me preguntaba si podría sugerir algún método que pueda usarse para la implementación de este algoritmo (detección de bordes y similares), ya que hasta ahora todos los intentos no han funcionado correctamente. Cualquier función de matlab que podría usarse sería muy útil también. También me preguntaba qué método podría usar para verificar los píxeles como estructuras delgadas y largas.
Actualizado : Como soy nuevo en el procesamiento de imágenes, no tengo ningún conocimiento previo de qué métodos usar para identificar los píxeles del cabello, verificarlos y reemplazarlos con píxeles vecinos, por lo tanto, la solicitud de orientación
Asumiré que usted comprende lo que es una imagen en escala de grises y las operaciones sobre ella. Si no, edita tu pregunta para aclarar.
Matlab Image Processing Toolbox incluye la función imclose . El cierre morfológico se explica en Wikipedia. Internet está inundado de información sobre la morfología matemática para el procesamiento de imágenes .
EDITAR después del comentario
Esta página ofrece una introducción general de la morfología matemática para el procesamiento de imágenes. Una vista de lo que intenta hacer es eliminar el ruido de su imagen, donde ese ruido se expresa como elementos oscuros largos (-ish) delgados (-ish) contra un fondo claro, si, es decir, los pelos son oscuros y la piel es liviana Esta no es una aplicación que he visto, así que no puedo brindar más ayuda. Que te diviertas.
La secuencia de operaciones es 1.Identify hair pixeles 2. Verifique los pixeles capilares 3. Reemplace los pixeles capilares con los píxeles de la piel contigua. Esto se debe principalmente a que los filtros morfológicos abiertos son de escala de grises o escalares. Por lo tanto, el problema de las imágenes en color puede resolverse bien encontrando un buen espacio de color (generalmente difícil a medida que varía el fondo) o realizando un cierre (como la respuesta anterior dice: si el pelo es oscuro y el fondo es claro) filtre en cada canal e interpole sobre los demás, que es la solución actual.
Por lo tanto, podemos echar un vistazo a lo que ofrece Matlab con lo que se menciona en el documento para detectar las estructuras alargadas del cabello:
se1 = strel(''line'',10,90);
se2 = strel(''line'',10,180);
figure, imshow(imclose(imclose(I,se1),se2),[]) % this closing is done channel wise independently.
Para fondos complejos, es necesario contar con buenas características de espacio de color. Aquí hay trabajos más o menos ya que la imagen en color está ordenada (rojo> verde> azul, o en algún orden similar - puede verificar esto)
El problema ahora es interpolar los valores perdidos, ya que el cierre deja algunos artefactos. uno puede usar el filtrado de la mediana de interpolación como se sugiere en Lee T, Ng V, Gallagher R, Coldman A, McLean D. DullRazor: un enfoque de software para la depilación de imágenes. Computers in Biology and Medicine 1997; 27: 533-543.
Otra idea simple sería realizar rgb2gray (I) -> Cierre morológico mediante estructuras lineales -> mapear la escala de grises a tonos RGB. ¡La asignación de vuelta es simple si el espacio de color de fondo no cambia demasiado y es robusto!