¿Cómo se puede almacenar huellas dactilares en una DB?

Iniciado por jam man, 13 Septiembre 2017, 03:38 AM

0 Miembros y 1 Visitante están viendo este tema.

jam man

Hola, buenas, estoy desarrollando un sistema de control de entrada y salida del personal docente y administrativo de una escuela, estoy usando Visual Studio 2017 y SQL Server Express y pues voy a utilizar un lector biométrico de la marca Digital persona U ARE U 4500, ya tengo las interfaces hechas, mi duda es cómo almacenar las huellas y hacer que por cada que alguien presione en el lector se muestre su información. El sistema va a constar de dos programas, uno para hacer los registros de entrada y salida y el otro será para el administrador que se encargaá de dar de alta, baja, modificar y generar reportes con la información registrada en la base de datos

Si alguien pudiera mostrarme un ejemplo o decirme más o menos cómo se almacenan las huellas dactilares se lo agradeceré bastante.  :D

AlbertoBSD

Antes que nada, tienes que saber las especificaciones del Lector de huellas que vas a usar, tienes que saber que tipo de informacion te manda este lector para despues poder leer los datos del mismo y asi decidir como vas a guardar la informacion en la base de datos.

Segun tengo entendido estos dispositivos leen patrones de las huellas como el tipo de huella y las curvas significativas que le dan a cada huella su individualidad. La idea es que apartir de unos cuantos marcadores que tenga la huella puedas determinar la posibilidad de que esa misma huella  no se repita en 1 de 10000000 o algo asi apartir de ahi es cuando determinas que es tal o cual persona.

Realmente no se que tipo de informacion devuelvan estos aparatos, si son imagenes, tendras que programar el reconocimiento desde 0, o en su defecto buscar algun algoritmo que ya lo realize.

Saludos
Donaciones
1Coffee1jV4gB5gaXfHgSHDz9xx9QSECVW

PalitroqueZ

segun parece el modelo de biometrico que mencionas, el fabricante provee un SDK para poder programarlo.

busca en google DigitalPersona One Touch for Windows SDK 1.6.1

"La Economía planificada lleva de un modo gradual pero seguro a la economía dirigida, a la economía autoritaria y al totalitarismo" Ludwig Erhard

jam man

Gracias por responder, este es el producto que quiero comprar,

https://articulo.mercadolibre.com.mx/MLM-576870712-lector-huella-digital-persona-uareu-4500-nuevo-caja-sdk-_JM

al parecer viene incluido el SDK y el driver.

No he trabajado con estos aparatos, es por eso que hacia la pregunta.
Si alguien mas tiene algun comentario se lo agradecera bastante.

[DAv!d]

El funcionamiento basico de un sistema como el que planteas es el siguiente:

FASE de nrolamiento
-------------------------------
dedo -> [SCANNER] -> imagen -> [EXTRACCION DE RASGOS] -> plantilla biometrica -> [ALMACENAR EN BD]              (OJO aqui: normalmente se almacena si no esta, por lo que se hace tambien verificacion)

FASE de Verificacion
-----------------------------
dedo -> [SCANNER] -> imagen -> [EXTRACCION DE RASGOS] -> plantilla biometrica -> [COTEJO(para cada plantilla en la base de datos)] -> esta, no esta

El SDK debe proporcionarte:
-El algorimo de extraccion de rasgos, generalmente alguno basado en minucias
-El algoritmo de cotejo [MATCHER] que determina si dos plantillas pertenecen al mismo dedo o no

En principio pudieras usar el propio SDK que trae el scaner.

El driver debe proporcionarte la posibilidad de acceder a la imagen (independientemente del SDK), aunque el SDK debe traer alguna funcionalidad especifica para esto. Esto ultimo es por si deseas emplear algun otro SDK disponible, o emplear algoritmos propios para la extracción de rasgos y el cotejo.

Como base de datos puedes usar tanto SQL como no SQL (p.e Tokyo Cabinet). Por tu parte queda implementar al algoritmo de indexacion-recuperacion que sea lo mas eficiente posible. Por ejemplo pudieras usar algun ID unico e implementar la busqueda sobre alguna extructura tipo diccionario (para esto tal vez sea mejor una BD no sQL, dan mas libertad). Aunque esto solo es critico solo cuando el numero de usuarios (es decir, el tamanho de la BD es muy grande)

salu2 y espero haber sido de ayuda
"Computing is fractal; wherever you look, there is infinite complexity." - Jim Gray

jam man

Cita de: [DAv!d] en 19 Septiembre 2017, 15:58 PM
El funcionamiento basico de un sistema como el que planteas es el siguiente:

FASE de nrolamiento
-------------------------------
dedo -> [SCANNER] -> imagen -> [EXTRACCION DE RASGOS] -> plantilla biometrica -> [ALMACENAR EN BD]              (OJO aqui: normalmente se almacena si no esta, por lo que se hace tambien verificacion)

FASE de Verificacion
-----------------------------
dedo -> [SCANNER] -> imagen -> [EXTRACCION DE RASGOS] -> plantilla biometrica -> [COTEJO(para cada plantilla en la base de datos)] -> esta, no esta

El SDK debe proporcionarte:
-El algorimo de extraccion de rasgos, generalmente alguno basado en minucias
-El algoritmo de cotejo [MATCHER] que determina si dos plantillas pertenecen al mismo dedo o no

En principio pudieras usar el propio SDK que trae el scaner.

El driver debe proporcionarte la posibilidad de acceder a la imagen (independientemente del SDK), aunque el SDK debe traer alguna funcionalidad especifica para esto. Esto ultimo es por si deseas emplear algun otro SDK disponible, o emplear algoritmos propios para la extracción de rasgos y el cotejo.

Como base de datos puedes usar tanto SQL como no SQL (p.e Tokyo Cabinet). Por tu parte queda implementar al algoritmo de indexacion-recuperacion que sea lo mas eficiente posible. Por ejemplo pudieras usar algun ID unico e implementar la busqueda sobre alguna extructura tipo diccionario (para esto tal vez sea mejor una BD no sQL, dan mas libertad). Aunque esto solo es critico solo cuando el numero de usuarios (es decir, el tamanho de la BD es muy grande)

salu2 y espero haber sido de ayuda


Muchas gracias, me has despejado muchas dudas, no he adquirido ni trabajado con el lector  tal vez sea por eso que tengo muchas dudas, pero en fin, muchas gracias por tu respuesta, me ha servido mucho, saludos  :D