Os detalhes técnicos do BlinkID v5
Nos últimos anos, o BlinkID tornou-se nosso produto mais popular. Ele é utilizado em todo o mundo para automatizar a extração de dados pessoais de diferentes tipos de documentos — documentos de identidade, carteiras de habilitação, vistos de viagem, passaportes etc.
O recurso principal do BlinkID é a detecção de documentos e rostos, utilizada para extrair a imagem do documento inteiro, além da foto de identidade. Após obter a imagem, o sistema utiliza uma tecnologia proprietária de reconhecimento inteligente e sistemático para extrair as informações contidas nesse documento específico, como nome, endereço e data de nascimento.
Mudando o rumo
Com o passar do tempo e à medida que nossa base de clientes crescia, as exigências não paravam de aumentar. O sistema de modelos que utilizávamos para adicionar suporte a cada novo tipo de documento atingiu seu limite. O processo de definir um modelo para um documento específico era muito trabalhoso. Essa situação nos fez perceber que nossa abordagem atual nos levaria a sacrificar a qualidade de nossas soluções no futuro. Estabelecemos metas ambiciosas e desistir de oferecer suporte à captura, leitura e extração de todos os documentos de identidade do mundo não era uma opção.
Há cinco meses, criamos um processo de desenvolvimento totalmente novo, baseado em aprendizado de máquina, para aprimorar a extração inteligente de dados.
Construir o novo processo do zero permitiu uma reutilização mais eficiente do código e mais tempo para nos concentrarmos em recursos que aprimoram a experiência do usuário. Grande parte disso envolve o aprimoramento do processamento de imagens, por exemplo, nosso algoritmo proprietário de detecção de desfoque. Outra vantagem, tanto para nossos clientes quanto para nós, é o suporte mais rápido a novos tipos de documentos. Os clientes podem se concentrar em sua tarefa — automatizar a extração de dados de documentos — sem se preocupar com as particularidades de cada tipo diferente de documento que sua interface de usuário suporta.
Reconhecedor "Tudo em Um"
O Reconhecedor é a unidade básica para o processamento de imagens e a extração de informações significativas a partir delas, neste caso, de diversos documentos de identidade.
Digitalizar vários documentos em uma versão anterior do BlinkID exigia configurar reconhecedores específicos para cada tipo de documento, possivelmente implementar uma interface de usuário para a seleção de documentos e escrever muito código repetitivo para lidar com a extração de resultados de todos os reconhecedores. Com o BlinkID v5, os desenvolvedores precisam usar um único reconhecedor BlinkIdCombined, o que resulta em muito menos código para escrever e manter. Isso também significa que oferecer suporte a novos documentos no aplicativo do cliente se torna tão fácil quanto aumentar o número da versão do BlinkID na lista de dependências.
Embora também existissem reconhecedores combinados na versão anterior do BlinkID, eles não estavam disponíveis para todos os documentos. Alguns documentos precisavam ser digitalizados utilizando dois reconhecedores: um para a frente e outro para o verso. Isso exigia um esforço extra de desenvolvimento por parte do cliente, pois nossas sobreposições integradas suportam apenas reconhecedores combinados. No BlinkID v5, isso não é mais um problema, pois agora oferecemos digitalização combinada com sobreposição integrada para todos os documentos compatíveis com o BlinkIdCombinedRecognizer. Além de exigir menos código, outra vantagem de ter apenas um reconhecedor é o desempenho. Combinar vários reconhecedores pode levar à redução do desempenho, mas com o novo BlinkIdCombinedRecognizer isso não é mais uma preocupação. Oferecemos suporte a mais de 400 documentos, mantendo a velocidade e a precisão da digitalização no mais alto nível.

Menos é mais
Com um único reconhecedor, oferecemos suporte a mais documentos de identidade do que nunca e, ao mesmo tempo, continuamos adicionando suporte a novos tipos de documentos de forma integrada. Pode-se pensar que isso aumentaria o peso do SDK móvel. Mas é exatamente o contrário: o BlinkID v5 é a versão mais leve de todas.
Reduzimos o impacto do SDK móvel no tamanho do aplicativo do cliente em cerca de 40% no iOS e 60% no Android. No caso do Android, também é importante observar que o BlinkID v5 possui cerca de 35% menos métodos, o que pode significar a diferença entre ter ou não que usar o multidex. Na versão mais recente, a área de cobertura da API é bem menor. Não é mais necessário saber a classe exata do reconhecedor para cada documento nem se preocupar com métodos específicos de cada reconhecedor.
Como você provavelmente percebeu, as alterações que fizemos dizem respeito principalmente ao SDK para dispositivos móveis. Isso não significa que tenhamos esquecido a API da web. Significa apenas que as atualizações da API da web ainda estão por vir.
Os usuários finais também vão gostar da versão 5
No BlinkID v5, fizemos alterações que aprimoram a experiência do usuário existente. Há três motivos principais para isso. Primeiro, não é mais necessário pré-selecionar o tipo de documento antes do início da digitalização. Agora, graças à classificação automática de documentos, a digitalização começa imediatamente e sem interrupções. Em segundo lugar, aprimoramos significativamente a detecção de cartões de identidade, de modo que a digitalização funcione independentemente da orientação ou do ângulo do documento. É por isso que todos podemos esquecer o retângulo do visor. E, finalmente, adicionamos um novo aviso que informa aos usuários se o documento que estão tentando digitalizar não é compatível. Isso significa que os usuários são notificados quando o documento não é compatível. Estamos nos empenhando bastante para criar um feedback inteligente em tempo real, visando uma melhor experiência de digitalização. Falaremos mais sobre a nova experiência do usuário (UX) e o fluxo de digitalização integrado no próximo blog.
Introdução
Pode haver a preocupação de que testar ou migrar para o BlinkID v5 possa dar muito trabalho. Bem… não é o caso.
Embora se trate de uma atualização de versão principal e tenha havido muitas melhorias, a forma como o SDK para dispositivos móveis é utilizado não mudou muito. Basta uma simples atualização do código existente para o reconhecedor BlinkIdCombined, em vez dos reconhecedores específicos por país, e (opcionalmente) mudar para nossas novas sobreposições do BlinkID.
Para mais informações, confira nossos repositórios do GitHub para Android e iOS, com aplicativos de exemplo atualizados e documentação.