Imagem
O envio de uma foto de rosto é mandatório para a utilização de nossa API de reconhecimento facial. Visando garantir uma maior confiabilidade das análises executadas, é necessário que o cliente siga algumas regras na hora de tirar a foto:
- A foto deve conter apenas um rosto;
- Todo o rosto deve estar visível na foto;
- O rosto deve ocupar ao menos 15% da area da foto;
- O rosto deve estar encarando a câmera e paralelo a ela;
- O rosto deve estar com os olhos abertos;
- O rosto deve estar com a boca fechada;
- O rosto deve possuir expressão neutra e sem sorrisos;
- O rosto não deve estar coberto por nenhum tipo de acessório (chapéus, óculos ou máscaras).
Além disso, somente imagens .jpeg e .png com tamanho máximo de 3MB serão aceitas.
Envio de arquivos
Request Body
{
"image": "base64_image_code"
}
Response Body
{
"image_key": "f4b5337a-7b50-406e-8c8e-7d0e77b5aa02",
"file_size": 47407,
"width_px": 0,
"height_px": 0,
"created_at": "2020-07-29T18:40:57Z"
}
Em casos que seja necessário o envio de uma imagem sem a execução imediata das rotinas de cadastro ou validação facial, um objeto JSON contendo o Base64 da imagem deve ser enviado. Para tal deve-se enviar uma requisição do tipo POST para o endpoint:
https://api.caas.qitech.app/face_recognition/image
Uma vez enviada, a imagem será submetida a testes de qualidade e, caso aprovada, será retornado um JSON contendo a chave de acesso à imagem. Essa chave deverá ser usada para referenciar a foto durante o cadastro ou validação facial.
Deve ser enviado apenas o código Base64 correspondente a imagem.
Validação de qualidade da imagem
Response Body: Caso de imagem inválida
{
"title": "image_quality",
"description": "This image was not approved in quality assessment. The face is too close to image edges.",
"image_status": "not_center"
}
Ao realizar um post no endpoint de imagem, caso a imagem não seja suficiente para validação, um HTTP Status Code 400 será retornado.
O valor do campo description é a mensagem que explica o motivo da imagem ser inválida.
Além disso, retornamos um enumerador image_status para que seja maepado o motivo da imagem ser inválida. Abaixo temos a listagem dos possíveis image_status:
image_status | descrição |
---|---|
no_faces | Nenhum rosto identificado. |
multiple_faces | Mais de um rosto identificado. |
close_face | Rosto muito próximo à câmera. |
distant_face | Rosto muito distante à câmera. |
not_centered | Rosto não está centralizado o suficiente. |
inclined_face | Rosto está inclinado. |
wearing_acessories | Pessoa está utilizando acessórios que cobrem parte do rosto. |
facial_expression | A pessoa está com a boca aberta, sorrindo ou com os olhos fechados. |
brightness_problem | A imagem não está com a iluminação adequada. |
sharpness_problem | A imagem não está nítida o suficiente. |
Atenção - Existem outros motivos pelos quais retornaremos 400 (Todos relacionados a dados inválidos). Somente os retornos com title "image_quality" são resultantes da validação de qualidade da imagem e portanto devem ser repassados ao usuário.
Recuperação dos arquivos
Recuperação de imagem
curl "https://api.caas.qitech.app/face_recognition/image/f4b5337a-7b50-406e-8c8e-7d0e77b5aa02/file" \
-H "Authorization: EXAMPLE_API_KEY"
Em qualquer momento é possível recuperar as imagens enviadas. Para isso, basta enviar uma requisição GET adequadamente autenticada no endpoint:
https://api.caas.qitech.app/face_recognition/image/{image_key}/file
Onde image_key é o valor retornado durante o envio da imagem.
Recuperação de arquivo processado
Recuperação de imagem processada
curl "https://api.caas.qitech.app/face_recognition/image/f4b5337a-7b50-406e-8c8e-7d0e77b5aa02/cropped_file" \
-H "Authorization: EXAMPLE_API_KEY"
Após a associação de uma imagem a um cadastro ou uma validação, essa imagem será processada e uma nova imagem contendo apenas o rosto utilizado nas rotinas de reconhecimento facial será gerada.
Esta imagem está disponível para ser recuperada através de uma requisição GET, adequadamente autenticada, no endpoint:
https://api.caas.qitech.app/face_recognition/image/{image_key}/cropped_file
Onde image_key é o valor retornado durante o envio da imagem base.
Recuperação dos meta-dados do arquivo
Recuperação de meta dados
curl "https://api.caas.qitech.app/face_recognition/image/f4b5337a-7b50-406e-8c8e-7d0e77b5aa02" \
-H "Authorization: EXAMPLE_API_KEY"
Após o envio de uma imagem para a API, é possível recuperar os meta-dados da imagem utilizando o endpoint:
https://api.caas.qitech.app/face_recognition/image/{image_key}
Onde image_key é o valor retornado durante o envio da imagem.