Détectez les signatures sur des documents ou des images à l'aide de la fonctionnalité de signatures d'Amazon Textract

Amazon Textract est un service d’apprentissage automatique (ML) qui extrait automatiquement le texte, l’écriture manuscrite et les données de n’importe quel document ou image. AnalyzeDocument Signatures est une fonctionnalité d’Amazon Textract qui permet de détecter automatiquement les signatures sur n’importe quel document. Cela peut réduire le besoin d’examen humain, de code personnalisé ou d’expérimentation de ML.

Dans cet article, nous discutons des avantages de la fonctionnalité AnalyzeDocument Signatures et de la manière dont l’API AnalyzeDocument Signatures aide à détecter les signatures dans les documents. Nous apprenons également à utiliser la fonctionnalité via la console Amazon Textract et fournissons des exemples de code pour utiliser l’API et traiter la réponse à l’aide de la bibliothèque Amazon Textract Response Parser. Enfin, nous partageons quelques bonnes pratiques pour utiliser cette fonctionnalité.

Avantages de la fonctionnalité de signatures

Nos clients des secteurs de l’assurance, des prêts hypothécaires, du droit et de la fiscalité sont confrontés au défi de traiter d’énormes volumes de documents papier tout en respectant les exigences réglementaires et de conformité qui exigent des signatures sur les documents. Vous voudrez peut-être vous assurer que certains formulaires tels que les demandes de prêt ou les réclamations de vos clients finaux contiennent des signatures avant de commencer à traiter la demande. Pour certains workflows de traitement de documents, vous devrez peut-être aller plus loin pour extraire et comparer les signatures à des fins de vérification.

Historiquement, les clients acheminaient généralement les documents vers un réviseur humain pour découvrir les signatures. L’utilisation de réviseurs humains pour découvrir les signatures a tendance à demander beaucoup de temps et de ressources. Cela peut également entraîner des inefficacités dans les flux de travail de traitement des documents, entraînant des délais de livraison plus longs et une mauvaise expérience pour l’utilisateur final.

La fonctionnalité AnalyzeDocument Signatures vous permet de détecter automatiquement les signatures manuscrites, les signatures électroniques et les initiales sur les documents. Cela peut vous aider à créer une solution évolutive et automatisée avec moins de recours à un traitement manuel coûteux et chronophage. Non seulement vous pouvez utiliser cette fonctionnalité pour vérifier si un document est signé, mais vous pouvez également valider si un champ particulier du formulaire est signé en utilisant les détails du signataire des signatures détectées. Vous pouvez également utiliser les informations de localisation pour supprimer les informations personnellement identifiables (PII) dans votre document.

Comment AnalyzeDocument Signatures découvre les signatures dans les documents

L’API AnalyzeDocument contient quatre types de fonctionnalités : formulaires, tables, requêtes et signatures. Lorsqu’Amazon Textract traite des documents, les résultats sont renvoyés dans un tableau d’objets Block. La fonctionnalité de signatures peut être utilisée seule ou en combinaison avec d’autres types de fonctionnalités. Lorsqu’elle est utilisée seule, la fonctionnalité Type de signatures fournit une réponse JSON qui inclut l’emplacement et les scores de confiance des signatures détectées et du texte brut (mots et lignes) des documents. La fonctionnalité de signatures combinée à d’autres types de fonctionnalités, tels que les formulaires et les tableaux, peut aider à tirer des informations utiles. Dans les cas où la fonctionnalité est utilisée avec des formulaires et des tableaux, la réponse affiche la signature dans le cadre d’une paire clé-valeur ou d’une cellule de tableau. Par exemple, la réponse au formulaire suivant contient la clé comme Signature du prêteur et valeur comme Block But.

Comment utiliser la fonctionnalité de signatures dans la console Amazon Textract

Avant d’aborder l’exemple d’API et de code, examinons la console Amazon Textract. Après avoir téléchargé le document sur la console Amazon Textract, sélectionnez Détection des signatures dans le Composition des documents Département et sélection demande de configuration.

La capture d’écran suivante montre un exemple de talon de paie sur un signatures L’onglet Analyze Document API sur la console Amazon Textract.

La fonctionnalité détecte et présente la signature avec la page correspondante et son score de confiance.

Exemples de code

Vous pouvez utiliser la fonction de signatures pour découvrir les signatures sur différents types de documents, tels que les chèques, les formulaires de demande de prêt, les formulaires de réclamation, les bordereaux de paiement, les documents hypothécaires, les relevés bancaires, les contrats de location et les contrats. Dans cette section, nous discutons de certains de ces documents et montrons comment appeler l’API AnalyzeDocument à l’aide du paramètre signatures pour détecter les signatures.

Le document d’entrée peut être au format tableau d’octets ou résider dans un compartiment Amazon Simple Storage Service (Amazon S3). Pour les documents au format tableau d’octets, vous pouvez envoyer des octets d’image à un processus d’API Amazon Textract à l’aide d’un fichier bytes Propriété. Les signatures sont prises en charge en tant que type de fonctionnalité par l’API AnalyzeDocument pour le traitement synchrone des documents et StartDocumentAnalysis pour le traitement asynchrone des documents.

Dans l’exemple suivant, nous découvrons les signatures sur une lettre de vérification d’emploi.

Nous utilisons l’exemple de code Python suivant :

import boto3
import json

#create a Textract Client
textract = boto3.client('textract')
#Document
documentName = image_filename

response = None
with open(image_filename, 'rb') as document:
    imageBytes = bytearray(document.read())

# Call Textract AnalyzeDocument by passing a document from local disk
response = textract.analyze_document(
    Document={'Bytes': imageBytes},
    FeatureTypes=("FORMS",'SIGNATURES')
    )

Analysons la réponse que nous obtenons de l’API AnalyzeDocument. La réponse suivante a été coupée pour ne montrer que les parties pertinentes. Répondez-y un BlockType pour SIGNATURE Affiche le score de confiance, l’identifiant de bloc et les détails de la boîte englobante :

'BlockType': 'SIGNATURE',
   'Confidence': 38.468597412109375,
   'Geometry': {'BoundingBox': {'Width': 0.15083004534244537,
     'Height': 0.019236255437135696,
     'Left': 0.11393339931964874,
     'Top': 0.8885205388069153},
    'Polygon': ({'X': 0.11394496262073517, 'Y': 0.8885205388069153},
     {'X': 0.2647634446620941, 'Y': 0.8887625932693481},
     {'X': 0.264753133058548, 'Y': 0.9077568054199219},
     {'X': 0.11393339931964874, 'Y': 0.907513439655304})},
   'Id': '609f749c-5e79-4dd4-abcc-ad47c6ebf777'})

Nous utilisons le code suivant pour imprimer l’identifiant et l’emplacement sous forme de tableau :

#print detected text
from tabulate import tabulate
d = ()
for item in response("Blocks"):
    if item("BlockType") == "SIGNATURE":
        d.append((item("Id"),item("Geometry")))

print(tabulate(d, headers=("Id", "Geometry"),tablefmt="grid",maxcolwidths=(None, 100)))

La capture d’écran suivante montre nos résultats.

Plus de détails et le code complet sont disponibles dans le notebook sur le référentiel GitHub.

Pour les documents contenant des signatures explicites dans des formats clé-valeur, nous pouvons utiliser l’analyseur de réponse Textract pour extraire uniquement les champs de signature en recherchant la clé et la valeur correspondante pour ces clés :

from trp import Document
doc = Document(response)
d = ()

for page in doc.pages:
    # Search fields by key
    print("\nSearch Fields:")
    key = "Signature"
    fields = page.form.searchFieldsByKey(key)
    for field in fields:
        d.append((field.key, field.value))        

print(tabulate(d, headers=("Key", "Value")))

Le code ci-dessus renvoie les résultats suivants :

Search Fields:
Key                        		Value
-------------------------  		--------------
8. Signature of Applicant 	Paulo Santos
26. Signature of Employer 	Richard Roe
3. Signature of Lender     	Carlos Salazar

Notez que pour noter les signatures de cette manière, les signatures doivent être lisibles.

Meilleures pratiques pour l’utilisation de la fonctionnalité de signatures

Gardez à l’esprit les bonnes pratiques suivantes lorsque vous utilisez cette fonctionnalité :

  • Pour les réponses en temps réel, utilisez l’opération synchrone de l’API AnalyzeDocument. Pour les cas d’utilisation où vous n’avez pas besoin de répondre en temps réel, comme le traitement par lots, nous vous suggérons d’utiliser le fonctionnement asynchrone de l’API.
  • La fonction de signature fonctionne mieux lorsqu’il y a jusqu’à trois signatures sur une page. Lorsqu’il y a plus de trois signatures sur une page, il est préférable de diviser la page en sections et d’entrer chaque section séparément dans l’API.
  • Utilisez les scores de confiance fournis avec les signatures détectées pour orienter les documents vers un examen humain lorsque les scores n’atteignent pas un seuil. Un score de confiance n’est pas une mesure de précision, mais une estimation de la confiance du modèle dans sa prédiction. Vous devez sélectionner le degré de confiance qui convient le mieux à votre cas d’utilisation.

résumé

Dans cet article, nous avons fourni un aperçu de la fonction de signature d’Amazon Textract pour détecter automatiquement les signatures sur les documents, tels que les listes de paiement, les contrats de location et les contrats. AnalyzeDocument Signatures élimine le besoin de réviseurs humains et vous aide à réduire les coûts, à gagner du temps et à créer des solutions de traitement de documents évolutives.

Pour commencer, connectez-vous à la console Amazon Textract pour essayer la fonctionnalité. Pour en savoir plus sur les fonctionnalités d’Amazon Textract, consultez Amazon Textract, Amazon Textract Developer Guide ou Textract Resources.


À propos des auteurs

Maran Chandrasekaran Il est architecte de solutions senior chez Amazon Web Services, travaillant avec nos entreprises clientes. En dehors du travail, il aime voyager et faire de la moto dans le Texas Hill Country.

Shebeen Mikairaj Il est chef de produit senior au sein de l’équipe AWS Textract. Il se concentre sur la création de produits basés sur l’IA/ML pour les clients AWS.

Subrakash Dutta Architecte de solutions chez Amazon Web Services. Il se concentre sur la stratégie de transformation numérique, la modernisation et la migration des applications, l’analyse des données et l’apprentissage automatique. Il fait partie de la communauté AI/ML chez AWS et conçoit des solutions intelligentes de traitement de documents.

Enregistrer un commentaire

Plus récente Plus ancienne

نموذج الاتصال