detección de rostros
me gustaría utilizar los Haarcascades disponibles en CV abierta para llevar a cabo la detección de rostros rápida y precisa.
http://opencv.willowgarage.com/wiki/FaceDetection
de reconocimiento de rostro
me gustaría utilizar un método como el Análisis de Componentes Principales (PCA) a.k.a Eigenfaces.
http://www.cognotics.com/opencv/servo_2007_series/part_5/index.html
Ese vínculo muestra un tutorial sobre cómo conseguir que el trabajo con OpenCV - Creo que esto está escrito para C, pero estoy seguro de que puede obtener el jist básica de la misma.
También podría mirar a implementar por sí mismo si se siente valiente (que no es demasiado malo) ...
http://www.face-rec.org/algorithms/PCA/jcn.pdf
http://blog.zabarauskas.com/eigenfaces-tutorial/
base de datos
realidad hice algo similar a usted, aunque en una PC no es un iPhone, pero sigue siendo el mismo concepto. Almacenaba todas mis imágenes en la base de datos como tipos de datos Blob y luego las cargaba en mi programa cuando era necesario.
Editar
La base de datos es una parte particularmente complicado del sistema ya que es donde la mayor cuello de botella es. En mi solicitud, me gustaría ir a través de los siguientes pasos ...
- aplicación abierta y formación de agarre imágenes de la base de datos
- Generar conjunto de entrenamiento basado en estas imágenes
- vez 1 y 2 se ha completado el sistema es muy rápido ya que solo realiza reconocimiento contra el conjunto de entrenamiento.
Afortunadamente para mí, mi servidor de base de datos estaba ubicado en una LAN por lo tanto la velocidad no era un problema, pero puedo ver por qué tiene un problema debido a que en un dispositivo móvil tiene una conexión de datos limitada (velocidad/ancho de banda). Puede comprimir las imágenes, pero esto puede llevar a una peor tasa de reconocimiento, debido a la reducción de la calidad de la imagen y también tendrá que decodificar en el dispositivo. También está la cuestión de cómo exponer la base de datos remota a la aplicación, sin embargo, sí creo que esto es posible utilizando PHP y JSON (y otras tecnologías, ver a continuación).
Retrieving data from a remote database
Tal vez usted podría hacer una Sincronizar inicial con la base de datos para que las imágenes se almacenan en caché en el teléfono? De una forma u otra, creo que probablemente tendrá que tener las imágenes en el teléfono en algún momento independientemente.
Descubrir la mejor manera de almacenar los datos/imágenes de reconocimiento en la base de datos fue uno de los mayores desafíos que enfrenté, por lo que me interesaría saber si encuentra un buen método.
posible duplicado de [Reconocimiento de caras en OpenCV] (http://stackoverflow.com/questions/4856929/face-recognition-in-opencv) – karlphillip
también posible duplicado de [¿Cómo hacer Reconocimiento de caras usando OpenCV?] (Http : //stackoverflow.com/questions/7949494/how-to-do-face-recognition-using-opencv) y muchos más. – karlphillip
posible duplicado de [¿Cómo puedo realizar el reconocimiento facial en iOS?] (Http://stackoverflow.com/questions/8020842/how-can-i-perform-facial-recogntion-on-ios) – Monolo