Partilhar via


Composição da imagem de prateleira (pré-visualização)

Parte do fluxo de trabalho de Reconhecimento de Produto envolve a correção e modificação das imagens de entrada para que o serviço possa ser executado corretamente.

Este guia mostra como usar a API de costura para combinar várias imagens da mesma prateleira física: isso oferece uma imagem composta de toda a prateleira de varejo, mesmo que ela seja vista apenas parcialmente por várias câmeras diferentes.

Este guia também mostra como usar a API de Retificação para corrigir a distorção da perspetiva quando você costura imagens diferentes.

Pré-requisitos

  • Uma assinatura do Azure - Crie uma gratuitamente
  • Depois de ter sua assinatura do Azure, crie um recurso Visão no portal do Azure. Ele deve ser implantado na região Leste dos EUA ou Oeste dos EUA 2. Depois de implantar, selecione Ir para recurso.
    • Você precisará da chave e do ponto de extremidade do recurso criado para conectar seu aplicativo ao serviço Azure AI Vision. Você colará sua chave e ponto de extremidade no código abaixo mais adiante no início rápido.
  • Um recurso de Armazenamento do Azure com um contêiner de armazenamento de blob. Criar um
  • cURL instalado. Ou, você pode usar uma plataforma REST diferente, como Swagger ou a extensão REST Client para VS Code.
  • Um conjunto de fotos que mostram partes adjacentes da mesma prateleira. Recomenda-se uma sobreposição de 50% entre as imagens. Você pode baixar e usar as imagens "descosturadas" de exemplo do GitHub.

Usar a API de costura

A API de costura combina várias imagens da mesma prateleira física.

Três fotos de prateleiras, ao lado de sua foto composta combinada.

Nota

As marcas mostradas nas imagens não são afiliadas à Microsoft e não indicam qualquer forma de endosso dos produtos da Microsoft ou da Microsoft pelos proprietários da marca, ou um endosso dos proprietários da marca ou seus produtos pela Microsoft.

Para executar a operação de costura de imagem em um conjunto de imagens, execute estas etapas:

  1. Carregue as imagens que você gostaria de costurar no seu contêiner de armazenamento de blob e obtenha o URL absoluto para cada imagem. Pode costurar até 10 imagens de uma só vez.

  2. Copie o seguinte curl comando para um editor de texto.

    curl.exe -H "Ocp-Apim-Subscription-Key: <subscriptionKey>" -H "Content-Type: application/json" "<endpoint>/computervision/imagecomposition:stitch?api-version=2023-04-01-preview" --output <your_filename> -d "{
        'images': [
            '<your_url_string_>',
            '<your_url_string_2>',
            ...
        ]
    }"
    
  3. Faça as alterações seguintes ao comando, se for necessário:

    1. Substitua o valor de pela sua chave de recurso Visão <subscriptionKey> .
    2. Substitua o valor de pelo seu ponto de extremidade de recurso Vision <endpoint> . Por exemplo: https://YourResourceName.cognitiveservices.azure.com.
    3. Substitua o <your_url_string> conteúdo pelos URLs de blob das imagens. As imagens devem ser ordenadas da esquerda para a direita e de cima para baixo, de acordo com os espaços físicos que mostram.
    4. Substitua <your_filename> pelo nome e extensão do arquivo onde você gostaria de obter o resultado (por exemplo, download.jpg).
  4. Abra uma janela da linha de comandos.

  5. Cole o comando editado curl do editor de texto na janela do prompt de comando e execute o comando.

Examine a resposta da costura

A API retorna uma 200 resposta e o novo arquivo é baixado para o local especificado.

Usar a API de Retificação

Depois de concluir a operação de costura, recomendamos que você faça a operação de retificação para obter os melhores resultados de análise.

Fotos de uma prateleira de varejo, antes e depois da operação de retificação.

Nota

As marcas mostradas nas imagens não são afiliadas à Microsoft e não indicam qualquer forma de endosso dos produtos da Microsoft ou da Microsoft pelos proprietários da marca, ou um endosso dos proprietários da marca ou seus produtos pela Microsoft.

Para corrigir a distorção da perspetiva na imagem composta, siga estas etapas:

  1. Carregue a imagem que deseja retificar para o contêiner de armazenamento de blob e obtenha o URL absoluto.

  2. Copie o seguinte curl comando para um editor de texto.

    curl.exe -H "Ocp-Apim-Subscription-Key: <subscriptionKey>" -H "Content-Type: application/json" "<endpoint>/computervision/imagecomposition:rectify?api-version=2023-04-01-preview" --output <your_filename> -d "{
      'url': '<your_url_string>',
      'controlPoints': {
        'topLeft': {
          'x': 0.1,
          'y': 0.1
        },
        'topRight': {
          'x': 0.2,
          'y': 0.2
        },
        'bottomLeft': {
          'x': 0.3,
          'y': 0.3
        },
        'bottomRight': {
          'x': 0.4,
          'y': 0.4
        }
      }
    }"
    
  3. Faça as alterações seguintes ao comando, se for necessário:

    1. Substitua o valor de pela sua chave de recurso Visão <subscriptionKey> .

    2. Substitua o valor de pelo seu ponto de extremidade de recurso Vision <endpoint> . Por exemplo: https://YourResourceName.cognitiveservices.azure.com.

    3. Substitua <your_url_string> pelo URL de armazenamento de blob da imagem.

    4. Substitua as quatro coordenadas do ponto de controle no corpo da solicitação. X é a coordenada horizontal e Y é vertical. As coordenadas são normalizadas, então 0,5,0,5 indica o centro da imagem, e 1,1 indica o canto inferior direito, por exemplo. Defina as coordenadas para definir os quatro cantos do acessório de prateleira como ele aparece na imagem.

      Foto de uma prateleira com os quatro cantos delineados.

    5. Substitua <your_filename> pelo nome e extensão do arquivo onde você gostaria de obter o resultado (por exemplo, download.jpg).

  4. Abra uma janela da linha de comandos.

  5. Cole o comando editado curl do editor de texto na janela do prompt de comando e execute o comando.

Examinar a resposta de retificação

A API retorna uma 200 resposta e o novo arquivo é baixado para o local especificado.

Próximos passos

Neste guia, você aprendeu como preparar fotos de prateleira para análise. Em seguida, chame a API de Compreensão do Produto para obter os resultados da análise.