2011-01-27 50 views
11

¿Cuál sería el mejor enfoque para detectar y eliminar el cabello de una persona en una imagen de retrato simple? ¿Alguna biblioteca útil de algoritmos? He estado buscando durante OPENCV la que parece que podría ser de alguna utilidadDetectando cabello en una imagen de retrato?

+0

¿Encontró una solución para esto todavía? – nithinreddy

+0

¿Encontró una solución para esto todavía? – Suisse

Respuesta

11

Usted está tratando con dos problemas diferentes aquí:

  1. detectar si una cara en un retrato tiene el pelo
  2. "eliminación" el cabello

la primera es solucionable con bastante facilidad:

  • separada de la cara de la backgro und (como mencionó una "imagen de retrato simple", esto no debería ser demasiado difícil).
  • Convierta su imagen en el espacio de color Y'CbCr
  • La piel humana tiene un rango bastante estrecho de valores de crominancia, independientemente de la raza. Consulte this paper para los detalles.
  • El enfoque anterior le ayudará a separar las áreas de la piel de la cara de las áreas que no son de la piel
  • Suponga que las áreas que no son de la piel están formadas por pelo. Tenga en cuenta que el vello facial también se recogerá como un área que no es de la piel.

En cuanto al segundo problema va, es necesario aclarar exactamente qué quiere decir con "eliminar":

  • ¿Está simplemente cortando la parte del retrato que tiene el pelo? En este caso, la solución se sigue directamente del método de detección anterior.
  • ¿Está tratando de hacer que parezca que la persona no tiene vello (por ejemplo, es calvo, bien afeitado?) En este caso, las cosas serán mucho más difíciles. Hay una razón por la cual los manipuladores profesionales de fotos pagan bien .
+1

Hola, cuando dices cabello separado. ¿Alguna idea de cómo se puede hacer esto usando Open CV? – user281300