Analisando a documentação de identidade com o Amazon Textract - Amazon Textract

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Analisando a documentação de identidade com o Amazon Textract

Para analisar documentos de identidade, use a API AnalyzeID e passa um arquivo de documento como entrada.AnalyzeIDRetorna uma estrutura JSON que contenha o texto analisado. Para obter mais informações, consulte Analisar documentos de identidade.

Você pode fornecer um documento de entrada como uma matriz de bytes de imagem (bytes de imagem codificados em base64) ou um objeto do Amazon S3. Neste procedimento, você carrega um arquivo de imagem no bucket do S3 e especifica o nome do arquivo.

Para analisar um documento de identidade (API)
  1. Se ainda não tiver feito isso:

    1. Criar ou atualizar um usuário do IAM comAmazonTextractFullAccesseAmazonS3ReadOnlyAccesspermissões. Para obter mais informações, consulte Etapa 1: Configurar uma conta da AWS e criar um usuário do IAM.

    2. Instale e configure a AWS CLI e os SDKs da AWS. Para obter mais informações, consulte Etapa 2: Configurar aAWS CLIeAWSSDKs da.

  2. Carregue uma imagem que contenha um documento no bucket do S3.

    Para obter instruções, consulteCarregar objetos no Amazon S3noGuia do usuário do Amazon Simple Storage Service.

  3. Use os exemplos a seguir para chamar a operação AnalyzeID.

    CLI

    O exemplo a seguir recebe um arquivo de entrada de um bucket do S3 e executa aAnalyzeIDoperação nele. No código abaixo, substitua o valor debaldeCom o nome do seu bucket do S3, o valor dearquivoCom o nome do arquivo no bucket e o valor deregiãoCom o nome doregionAssociado à sua conta do.

    aws textract analyze-id --document-pages '[{"S3Object":{"Bucket":"bucket","Name":"name"}}]' --region region

    Você também pode chamar a API com a frente e a parte de trás de uma carteira de motorista adicionando outro objeto S3 à entrada.

    aws textract analyze-id --document-pages '[{"S3Object":{"Bucket":"bucket","Name":"name front"}}, {"S3Object":{"Bucket":"bucket","Name":"name back"}}]' --region us-east-1

    Se você estiver acessando a CLI em um dispositivo Windows, use aspas duplas em vez de aspas simples e escape das aspas duplas internas por barra invertida (ou seja,\) para resolver quaisquer erros de analisador que você possa encontrar. Para obter um exemplo, veja a seguir:

    aws textract analyze-id --document-pages "[{\"S3Object\":{\"Bucket\":\"bucket\",\"Name\":\"name\"}}]" --region region
    Python

    O exemplo a seguir recebe um arquivo de entrada de um bucket do S3 e executa aAnalyzeIDoperação sobre ela, retornando os pares de chave/valor detectados. No código abaixo, substitua o valor debucket_nameCom o nome do seu bucket do S3, o valor defile_nameCom o nome do arquivo no bucket e o valor deregiãoCom o nome doregionAssociado à sua conta do.

    import boto3 bucket_name = "bucket-name" file_name = "file-name" region = "region-name" def analyze_id(region, bucket_name, file_name): textract_client = boto3.client('textract', region_name=region) response = textract_client.analyze_id(DocumentPages=[{"S3Object":{"Bucket":bucket_name,"Name":file_name}}]) for doc_fields in response['IdentityDocuments']: for id_field in doc_fields['IdentityDocumentFields']: for key, val in id_field.items(): if "Type" in str(key): print("Type: " + str(val['Text'])) for key, val in id_field.items(): if "ValueDetection" in str(key): print("Value Detection: " + str(val['Text'])) print() analyze_id(region, bucket_name, file_name)
    Java

    O exemplo a seguir recebe um arquivo de entrada de um bucket do S3 e executa aAnalyzeIDoperação nele, retornando os dados detectados. Na função principal, substitua os valores des3bucketesourceDocCom os nomes do bucket do Amazon S3 e da imagem usada na etapa 2.

    /* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ package com.amazonaws.samples; import com.amazonaws.regions.Regions; import com.amazonaws.services.textract.AmazonTextractClient; import com.amazonaws.services.textract.AmazonTextractClientBuilder; import com.amazonaws.services.textract.model.*; import java.util.ArrayList; import java.util.List; public class AnalyzeIdentityDocument { public static void main(String[] args) { final String USAGE = "\n" + "Usage:\n" + " <s3bucket><sourceDoc> \n\n" + "Where:\n" + " s3bucket - the Amazon S3 bucket where the document is located. \n" + " sourceDoc - the name of the document. \n"; if (args.length != 1) { System.out.println(USAGE); System.exit(1); } String s3bucket = "bucket-name"; //args[0]; String sourceDoc = "sourcedoc-name"; //args[1]; AmazonTextractClient textractClient = (AmazonTextractClient) AmazonTextractClientBuilder.standard() .withRegion(Regions.US_EAST_1) .build(); getDocDetails(textractClient, s3bucket, sourceDoc); } public static void getDocDetails(AmazonTextractClient textractClient, String s3bucket, String sourceDoc ) { try { S3Object s3 = new S3Object(); s3.setBucket(s3bucket); s3.setName(sourceDoc); com.amazonaws.services.textract.model.Document myDoc = new com.amazonaws.services.textract.model.Document(); myDoc.setS3Object(s3); List<Document> list1 = new ArrayList(); list1.add(myDoc); AnalyzeIDRequest idRequest = new AnalyzeIDRequest(); idRequest.setDocumentPages(list1); AnalyzeIDResult result = textractClient.analyzeID(idRequest); List<IdentityDocument> docs = result.getIdentityDocuments(); for (IdentityDocument doc: docs) { List<IdentityDocumentField>idFields = doc.getIdentityDocumentFields(); for (IdentityDocumentField field: idFields) { System.out.println("Field type is "+ field.getType().getText()); System.out.println("Field value is "+ field.getValueDetection().getText()); } } } catch (Exception e) { e.printStackTrace(); } } }
  4. Isso fornecerá a você a saída do JSON para oAnalyzeIDoperação.