Développement de BlinkID Capture : une expérience utilisateur encore améliorée et une extraction de données optimisée
Chez Microblink, nous sommes fiers de nous considérer comme des experts en IA et en documents d’identité. Et pourtant, nous cherchons sans cesse à nous améliorer — tant pour nos clients partenaires que pour les utilisateurs finaux qui interagissent avec nos produits. Dans la foulée d'une nouvelle version passionnante de BlinkID, nous avons discuté avec Luka Slibar, notre chef de produit BlinkID, et Daniel Balchev, ingénieur en apprentissage automatique, de notre approche pour résoudre les défis spécifiques liés à l'identité numérique et de la capture d'images qui est au cœur de notre suite BlinkID. Les conversations ci-dessous ont été éditées et condensées pour plus de clarté.
Relever les défis liés à l'identité numérique avec Luka Šlibar
Je travaille chez Microblink à divers postes depuis 2014. Alors que je me consacrais initialement au développement commercial, j’ai ensuite évolué vers un poste de chef de produit chargé de nos initiatives en matière d’IA, avant de prendre la direction des modules de capture et d’extraction de BlinkID.
Au fil des ans, Microblink a traité plus de 12 milliards de documents d’identité de toutes sortes, ce qui nous a permis d’acquérir une vision unique des subtilités et des défis liés à ces documents. Les pièces d’identité varient selon les régions et les personnes, et leur format et leur mise en page changent régulièrement. Qu'il s'agisse d'ouvrir un compte ou d'effectuer un virement, la plupart des expériences utilisateur numériques modernes que nous considérons aujourd'hui comme allant de soi reposent sur la numérisation et l'authentification réussies de ces documents variés. C'est là qu'intervient BlinkID.
Pour répondre aux défis de nos clients et repousser les limites de l'identité numérique, nous décomposons le processus en trois étapes clés : la saisie, l'extraction et la vérification.

Une numérisation exceptionnelle des documents est essentielle à la réussite des vérifications en aval. Quels que soient les besoins spécifiques de l’entreprise, il est impossible de procéder à une vérification précise et fiable des documents d’identité sans une numérisation et une extraction d’images d’une qualité exceptionnelle. En d’autres termes, la capacité à vérifier la validité d’un document ou à le signaler comme potentiellement frauduleux dépend de la qualité des données extraites, qui dépend elle-même de la qualité de la capture initiale. Si le processus de capture est peu intuitif, déroutant ou source d’erreurs, les utilisateurs risquent fort de l’abandonner purement et simplement.
Depuis toujours, Microblink est réputée pour le développement et la fourniture de SDK et d’API permettant d’automatiser les deux premières étapes du processus avec une rapidité et une précision inégalées dans le secteur. Le traitement sur appareil de BlinkID offre une expérience utilisateur supérieure grâce à un retour d'information en temps réel (par exemple « ne bougez pas le document » ou « reculez »), à la sécurité des données et à la capacité de prendre en charge des cas d'utilisation sans connexion Internet stable.
Cependant, malgré tous les progrès réalisés en matière de puissance de calcul des téléphones portables, celle-ci reste inférieure à celle d'un serveur à part entière. De plus, dans de nombreux secteurs fortement réglementés, tels que les services bancaires et financiers, auxquels notre technologie s'adresse, les images capturées sont de toute façon envoyées vers un serveur pour y être traitées ultérieurement.
Si nous avons su répondre aux besoins variés de nos clients grâce à des options d'intégration flexibles et à une large couverture des plateformes, nous avons également identifié une opportunité d'améliorer l'approche existante, en commençant par la capture d'images.
L'expérience de Microblink dans le développement de produits hautement optimisés pour les appareils nous a placés dans une position unique pour relever ce défi. En tant qu'équipe, nous savons comment développer des modèles d'apprentissage automatique légers et offrir une expérience de capture d'images conviviale sans alourdir inutilement le SDK. Cela a également rendu ce projet particulièrement intéressant pour nos équipes pluridisciplinaires.
Notre SDK Capture, qui vient d'être lancé, s'intègre aux applications mobiles de nos clients pour leur offrir l'expérience utilisateur exceptionnelle en matière de capture d'identité qui fait la renommée de notre produit phare, BlinkID, sans alourdir de manière significative la taille globale de l'application. Il permet également un traitement et une extraction des images plus performants côté serveur, ce qui est essentiel pour notre vision à long terme : proposer la meilleure solution mondiale de vérification des documents d’identité sur le marché.
Vers une capture d’images encore plus intelligente grâce au machine learning, avec Daniel Balchev
J'ai rejoint Microblink fin 2022 en tant que l'un des trois premiers employés à Sofia, en Bulgarie, et je suis ravi de lancer le premier produit sur lequel j'ai travaillé avec l'équipe ! Grâce à notre vaste bibliothèque de modèles d'apprentissage automatique existants et à notre importante base de données interne permettant de former de nouveaux modèles, nous avons pu lancer ce SDK en seulement 5 mois.
La création d’un produit comme celui-ci nécessite la collaboration de nombreux acteurs, et ce résultat est le fruit d’une étroite collaboration avec plusieurs ingénieurs en apprentissage automatique, des ingénieurs logiciels multiplateformes, des concepteurs de produits et nos chefs de projet. Nous avons également échangé avec nos clients et nos collègues en contact direct avec la clientèle afin d’intégrer leurs retours d’expérience et de nous assurer que nous développons le bon produit. Ce SDK de capture d’images est riche en fonctionnalités, notamment :
- Détection automatique des documents : notre SDK est capable de détecter quand un document est visible et de localiser son emplacement exact, ce qui nous permet de déterminer si l'utilisateur tient le document trop près ou trop loin de l'appareil photo, ou encore s'il le tient à un angle trop prononcé. Nous fournissons alors des instructions pour aider l'utilisateur à obtenir une meilleure numérisation.

- Classification des types de documents : notre nouveau SDK classe les documents en plusieurs catégories qui nous aident à déterminer leur format prévu et à savoir s'il s'agit de documents recto ou recto-verso. Cette fonctionnalité est particulièrement intéressante, car elle nous permet d’adapter l’expérience utilisateur et le processus de numérisation en fonction du type de document. En d’autres termes, si l’utilisateur présente une pièce d’identité, nous saurons qu’il faut lui demander de numériser le recto et le verso, contrairement au passeport, pour lequel seul le recto est nécessaire.

- Détection du flou : détecte si le document est flou et attend que l'utilisateur prenne une photo plus nette et plus stable.
- Détection des reflets : si un reflet recouvre le document, nous le détecterons et demanderons à l'utilisateur de déplacer le document afin que ce reflet ne soit plus visible.
- Détection de l’inclinaison : permet de déterminer la position du document dans l’image ou le cadre de la caméra, et d’estimer s’il est incliné ou non. Bien que nous puissions prendre en charge les documents inclinés lors du traitement ultérieur, la transformation de ces images entraîne inévitablement une certaine distorsion de l’image transformée, ce qui est souvent indésirable lorsqu’il s’agit de vérifier si une image a été trafiquée. Il n'existe aucun moyen de corriger cela après la capture ; la seule solution consiste donc à fournir en temps réel à l'utilisateur final des instructions sur la manière de positionner correctement le document afin d'éliminer l'inclinaison et de garantir la meilleure capture d'image possible.
- Occlusion de la main : ce SDK réutilise les modèles de détection des mains issus de notre modèle de vérification pour détecter si la main d’un utilisateur recouvre une partie significative du document. (La notion de « significative » peut être configurée par le client dans les paramètres.) Cela permet notamment de s'assurer que nous ne capturons pas d'images sur lesquelles un doigt recouvre une partie importante du document, par exemple.

- Estimation de la netteté : nous capturons plusieurs images du document d'identité à partir du flux vidéo, puis nous les filtrons afin de sélectionner celle qui présente la meilleure qualité d'image, pour garantir la plus grande précision lors des traitements en aval.
- Estimation des conditions d'éclairage : nous pouvons détecter si l'utilisateur effectue une numérisation dans une pièce sombre ou s'il y a trop de lumière, et lui demander de modifier ces conditions afin d'obtenir une meilleure image.

Il en résulte des retours d'expérience plus proactifs et plus détaillés pour les utilisateurs : grâce à l'apprentissage automatique, la qualité de l'image est vérifiée, ce qui garantit une numérisation optimale dès le premier essai. Cela réduit ainsi le risque que les utilisateurs doivent répéter l'opération et permet d'obtenir une meilleure extraction.
Outre l'expérience de capture et la qualité d'image exceptionnelles qu'il offre, notre SDK de capture autonome n'est pas limité à une liste de documents pris en charge ; il est donc conçu pour fonctionner avec toutes les cartes d'identité, tous les permis de conduire et tous les passeports de format standard, aujourd'hui comme à l'avenir. Si une nouvelle version d’un document est publiée, les clients n’ont pas besoin d’imposer une mise à jour à leurs utilisateurs ; il leur suffit de mettre à jour le backend pour l’extraction.
Merci à Luka et Daniel de nous avoir accordé cet entretien !