2012-06-20 5 views
7

Actualmente estoy trabajando en el proyecto de reconocimiento de caras donde utilizo Fisherfaces/LDA para filtrar las imágenes en un nivel más amplio y luego uso SURF para verificar el resultado de LDA . ¿Cuál sería un buen umbral de Hesse que debería pasar a CvSURFParam()? El código de muestra proporcionado por OpenCV tiene 500. ¿Es óptimo?Umbral de arpillera óptimo para la extracción de características de SURF en opencv + Descripciones mínimas que coinciden con

Además, ¿cuál sería el número mínimo de descriptores que deberían coincidir para que mi código pueda confirmar la identidad? ¿El 50% es suficiente?

Estoy usando OpenCV 2.4 con C++ en Windows.

+4

Solo usted puede responder a este tipo de preguntas: pruebe sus datos de entrada en diferentes umbrales, constantes, etc. y compruebe si es óptimo para usted. – ArtemStorozhuk

+0

Lo hice. Pero no estaba seguro ya que mi base de datos no es lo suficientemente grande. Estaba comprobando si existía algún valor probado en la investigación o no para esto. Gracias de todos modos. – ahirnish

Respuesta

0

ArtemStorozhuk tiene razón. Como no conocemos su conjunto de datos (particularmente la calidad de las imágenes), no hay forma de que sugiramos un mejor valor para un umbral. Y sí, no hay respuesta general para que

Para aumentar la cantidad de imágenes de prueba en su conjunto de entrenamiento se puede utilizar una base de datos de cara dominio público (por ejemplo. FERET).

Por favor, permítanme señalar (también para todos los que encontrarán esto en el futuro con un motor de búsqueda), que lo que está intentando no es una buena idea. El uso de SURF solo confirmará que ha encontrado solo otra cara. Establecer un mínimo para los descriptores que tienen que coincidir es de nuevo muy dependiendo de la calidad de imagen. Encontrar menos funciones de SURF puede significar simplemente que la imagen era demasiado borrosa.

Cuestiones relacionadas