Los entresijos de BlinkID v5

dark illustration of blinkid scanning

En los últimos años, BlinkID se ha convertido en nuestro producto más popular. Se utiliza en todo el mundo para automatizar la extracción de datos personales de distintos tipos de documentos: carnés de identidad, permisos de conducir, visados de viaje, pasaportes, etc.

BlinkIDes la detección de documentos y rostros, que se utiliza para extraer la imagen del documento completo, además de la foto del DNI. Tras obtener la imagen, utiliza tecnología propia de reconocimiento inteligente y sistemático para extraer la información disponible en ese documento concreto, como el nombre, la dirección y la fecha de nacimiento.

Cambiar el rumbo

A medida que pasaba el tiempo y nuestra base de clientes aumentaba, los requisitos seguían creciendo. El sistema de plantillas que utilizamos para añadir compatibilidad con cada nuevo tipo de documento llegó a su límite. El proceso de definir una plantilla para un documento concreto era laborioso. Esa situación nos hizo darnos cuenta de que nuestro enfoque actual nos haría sacrificar la calidad de nuestras soluciones en el futuro. Nos pusimos metas altas y renunciar a soportar la captura, lectura y extracción de todos los documentos de identidad del mundo no era una opción.

Hace cinco meses, creamos un proceso de desarrollo completamente nuevo, respaldado por ML, para mejorar la extracción inteligente de datos.

Construir el nuevo proceso desde cero permitió una reutilización más eficiente del código y más tiempo para centrarse en las funciones que mejoran la UX. Una gran parte de ello es la mejora del procesamiento de imágenes, por ejemplo, nuestro algoritmo propio de detección de desenfoque. Otra ventaja, tanto para nuestros clientes como para nosotros, es la compatibilidad más rápida con nuevos tipos de documentos. Los clientes pueden centrarse en su tarea: automatizar la extracción de datos de los documentos, sin preocuparse de la idiosincrasia de cada tipo diferente de documento que admita su interfaz de usuario.

Reconocedor todo en uno

El Reconocedor es la unidad básica para procesar imágenes y extraer información significativa de ellas, en este caso de varios documentos de identidad.

Escanear varios documentos en una versión anterior de BlinkID implicaba configurar reconocedores específicos para cada tipo de documento, posiblemente implementar una interfaz de usuario para la selección de documentos y escribir mucho código repetitivo para gestionar la extracción de resultados de todos los reconocedores. Con BlinkID v5, los desarrolladores tienen que utilizar un único reconocedor BlinkIdCombined, lo que supone mucho menos código que escribir y mantener. Esto también significa que admitir nuevos documentos en la aplicación del cliente es tan fácil como aumentar el número de versión de BlinkID en su lista de dependencias.

Aunque los reconocedores combinados también existen en la versión anterior BlinkID, no estaban disponibles para todos los documentos. Algunos documentos tenían que escanearse utilizando dos reconocedores, uno para el anverso y otro para el reverso. Eso requería un esfuerzo de desarrollo adicional por parte del cliente, porque nuestras superposiciones incorporadas sólo admiten reconocedores combinados. En BlinkID v5, esto ya no es un problema, ya que ahora ofrecemos escaneado combinado con superposición incorporada para todos los documentos compatibles con BlinkIdCombinedRecognizer. Aparte de tener que escribir menos código, otra ventaja de tener un solo reconocedor es el rendimiento. Combinar varios reconocedores puede degradar el rendimiento, pero con el nuevo BlinkIdCombinedRecognizer eso no es motivo de preocupación. Admitimos más de 400 documentos manteniendo la velocidad y la precisión de escaneado al máximo nivel.

Menos es más

Con un solo reconocedor, admitimos más documentos de identidad que nunca y, al mismo tiempo, seguimos añadiendo sin problemas compatibilidad con nuevos tipos de documentos. Se podría pensar que esto supondría un peso adicional para el SDK móvil. Pero es al revés, BlinkID v5 es la versión más ligera de la historia.

Hemos reducido el impacto del SDK móvil en el tamaño de la aplicación del cliente en torno a un 40% en iOS y un 60% en Android. Para Android, también es importante tener en cuenta que BlinkID v5 tiene alrededor de un 35% menos de métodos, lo que puede significar la diferencia entre tener o no tener que utilizar multidex. En la última versión, la superficie de la API es mucho menor. Ya no es necesario conocer la clase exacta de reconocedor para cada documento ni preocuparse por los métodos específicos de cada reconocedor.

Como probablemente hayas notado, los cambios que hemos realizado se refieren principalmente al SDK móvil. Esto no significa que nos hayamos olvidado de la API web. Sólo significa que las actualizaciones de la API web aún están por llegar.

Los usuarios finales también apreciarán la v5

En BlinkID v5, hemos introducido cambios que mejoran la experiencia del usuario actual. Hay tres razones principales para ello. En primer lugar, ya no es necesario preseleccionar el tipo de documento antes de iniciar el escaneado. Ahora, gracias a la clasificación automática de documentos, el escaneado se inicia inmediatamente y sin problemas. En segundo lugar, hemos mejorado significativamente la detección de documentos de identidad para que el escaneado funcione independientemente de la orientación o el ángulo del documento. Por eso todos podemos olvidarnos del rectángulo del visor. Y, por último, hemos añadido una nueva llamada de retorno que permite a tus usuarios saber si el documento que intentan escanear no es compatible. Esto significa que los usuarios reciben una notificación cuando el documento no es compatible. Nos estamos esforzando mucho en crear una respuesta inteligente en tiempo real para mejorar la experiencia de escaneado. Hablaremos más sobre la nueva UX y el flujo de escaneado integrado en el próximo blog.

Cómo empezar

Puede que exista la preocupación de que probar o migrar a BlinkID v5 pueda suponer mucho trabajo. Pues… no lo es.

Aunque se trata de una actualización importante de la versión y ha habido muchas mejoras, la forma de utilizar el SDK para móviles no ha cambiado mucho. Con una simple actualización del código existente al reconocedor BlinkIdCombined en lugar de los reconocedores específicos de cada país y (opcionalmente) cambiar a nuestras nuevas superposiciones BlinkID.

Para más información, consulta nuestro Android y iOS con aplicaciones de ejemplo actualizadas y documentación.

20 de febrero de 2020

Descubre nuestras soluciones

Explorar nuestras soluciones está a un clic de distancia. Prueba nuestros productos o habla con nosotros con uno de nuestros expertos para profundizar en lo que ofrecemos.