Reconhecimento Facial com Face API 和 Node.js
Reconhecimento Facial com Face API 和 Node.js
Reconhecimento Facial com Face API 和 Node.js
Dando 继续在Node.js 中继续使用 Cognitivos 服务和 IA com Node.js,并最终实现同时翻译 com 或翻译文本和vimos 或 poderoso和fazer uso dos Serviços Cognitivos para deixar as nossas aplicações mais智力、动态和互动!
Hoje,vamos falar um pouco sobre o Face Api。 Porém,vamos entender um pouco o que seria o Face API!
什么是 Face API?
O Face API是Azure认知服务,允许探测器、侦察器和图像分析器对人类进行分析。 Como ele faz isso?感谢算法! E o Face API 可能具有不同的功能!正文:
-
➡️ Reconhecimento Facial:允许重新调整人类的形象。额外的一系列信息:gênero、idade、emoção entre outros pontos。
-
➡️面部验证:aqui a API irá avaliar se dois rostos pertencem à mesma pessoa。
-
➡️ Encontrar Rostos Semelhantes:不同的面部验证,可以通过 API 获取面部图像和识别信息,
matchPerson
并通过 API面部过滤器实现 - 验证和恢复面部列表pertencem a mesma pessoa。 -
➡️ Agrupamento 面部护理:从头开始,与各种团体的 rostos desconhecidos 结合在一起。 Aqui se faz uso da API Face - 组
-
➡️身份识别:aqui o uso da API é bem legal。识别 Pois Podemos 的检测和比较 com uma 基础的数据。 Esse recurso 和 legal Podemos fazer uso de gerenciamento de fotos。您可以使用 API 来获取更多信息,并获取有关人脸识别的文档
有关 Face API 的更多信息,请参阅AQUI 的概述。
刷新应用程序!
Sim,这是一个在 Node.js 上使用 Face API 的代码和应用程序的时刻。 Para isso, utilizaremos:
您可以通过大学学院或大学的阿尔古玛学院的学生,了解有关Azure for Students 的信息。此内容包含 100,00 美元的受益人信用证,用于免费管理服务,但需要持有信用证。 Para ativar essa conta, bastam acessar o link ao lado: AQUI
Todo o codigo desenvolvido desse artigo encontra-se disponível AQUI。您可以通过 Azure 来安装和使用本教程。
Criando Recurso do Face API(无 Azure)
Assim,como no artigo anterior,precisamos criar um Recurso do Face API no Portal Azure。 Após isso, aí sim, poderemos começar a codar a nossa applicação。 Caso não Saibam,bastam seguir o passo a passo no gif abaixo:
观察图像,然后点击 Azure Portal 的 Recurso dentro,然后key
点击endpoint
。 Guardem essa key
,pois precisaremos dela para o próximo passo。
开发或代码
Agora que já temos a nossa key
,vamos agora criar a plicação em Node.js para fazer uso do Face API。首先,打开Visual Studio Code,然后将面食放入项目中,然后再进行操作,然后将其放入项目中package.json
:
> npm init -y
Com esse comando ele criará um arquivo padrão do package.json
。 Porém,abre o Visual Studio Code e altere o arquivo conme o código abaixo:
- 档案:package.json
{
"name": "faceapi-node.js-demo",
"version": "1.0.0",
"description": "Demo para realizar reconhecimento de imagem via Face API & Node.js",
"main": "face-detection.js",
"scripts": {
"dev": "node src/face-detection.js"
},
"repository": {
"type": "git",
"url": "https://github.com/glaucia86/faceapi-node.js-demo.git"
},
"keywords": [
"nodejs",
"cognitive-services",
"azure",
"face-api",
"javascript"
],
"author": "Glaucia Lemos",
"license": "MIT",
"bugs": {
"url": "https://github.com/glaucia86/faceapi-node.js-demo/issues"
},
"homepage": "https://github.com/glaucia86/faceapi-node.js-demo#readme"
}
佩菲托!集市上,大声喊出符合图像的 estrutura do projeto :src -> face-detection.js
没有档案.gitignore
,包括后续的代码块
- 档案:.gitignore
node_modules
lib
.env
展示! Vamos agora 安装为依赖项 no nosso projeto。 Precisaremos de 2:
-
请求:通过 código 实现不需要 Face API 的 ajudará 实现。
-
dotenv : 这是一个伟大的协议,包括在 Azure 应用程序中提供的服务,并且不支持外发,该协议是一个环境变量,可以在我们的本地环境中进行精确的“设置”。
Para isso, vamos instalar esse dois pacotes com o seguinte comando via prompt:
> npm i request dotenv
没有最终结果,o nosso arquivo package.json
ficará da seguinte maneira:
{
"name": "faceapi-node.js-demo",
"version": "1.0.0",
"description": "Demo para realizar reconhecimento de imagem via Face API & Node.js",
"main": "face-detection.js",
"scripts": {
"dev": "node src/face-detection.js"
},
"repository": {
"type": "git",
"url": "https://github.com/glaucia86/faceapi-node.js-demo.git"
},
"keywords": [
"nodejs",
"cognitive-services",
"azure",
"face-api",
"javascript"
],
"author": "Glaucia Lemos",
"license": "MIT",
"bugs": {
"url": "https://github.com/glaucia86/faceapi-node.js-demo/issues"
},
"homepage": "https://github.com/glaucia86/faceapi-node.js-demo#readme",
"dependencies": {
"dotenv": "^8.2.0",
"request": "^2.88.0"
}
}
Agora,vamos 可以通过 Face API 和 Node.js 实现逻辑或图像识别。
Criando 逻辑没有 arquivo 'face-detection.js'
Abram 或 arquivoface-detection.js
包括后续的 código abaixo 区块:
- 档案:face-detection.js
/**
* arquivo: src/facedetection.js
* Data: 16/10/019
* Descrição: Arquivo responsável por realizar o reconhecimento facial usando o Face API & Node.js
* Author: Glaucia Lemos
*/
'use strict';
const request = require('request');
require('dotenv').config();
const subscriptionKey = process.env.SUBSCRIPTION_FACE_API_KEY;
const uriBase = process.env.URI_BASE;
const imageUrl = 'https://cdn-ofuxico.akamaized.net/img/upload/noticias/2019/05/13/silvio_santos_reproducao_instagram_349201_36.jpg';
Aqui estamos fazendo or chamada de 2 pacotes: request
eo dotenv
.徽标 abaixo,criando 3 variáveis para processar as informações geradas para nós no Portal Azure:key
,endpoint
e uma url de uma imagem que estaremos pegando na internet!
注意什么是变化的subscriptionKey
,uriBase
estamos criando uma espécie 变化的秘密? É justamente aí que usaremos o pacote dotenv
。 Para isso,crie um arquivo chamado .env
,fora da Pasta src
e vejam como ela deve ficar:
请注意以下信息:关键点、端点和所有信息!请注意,您可以在 GitHub 上下载或使用.gitignore
GitHub 上的文件。 Justamente,para evitar de ser usado por outras pessoas!
Dando 继续nosso desenvolvimento,vamos agora concluir esse arquivo!包括以下内容:
- 档案:face-detection.js
const params = {
'returnFaceId': 'true',
'returnFaceLandmarks': 'false',
'returnFaceAttributes': 'age,gender,headPose,smile,facialHair,glasses,' +
'emotion,hair,makeup,occlusion,accessories,blur,exposure,noise'
};
const options = {
uri: uriBase,
qs: params,
body: '{"url": ' + '"' + imageUrl + '"}',
headers: {
'Content-Type': 'application/json',
'Ocp-Apim-Subscription-Key' : subscriptionKey
}
};
request.post(options, (error, response, body) => {
if (error) {
console.log('Error ao identificar a imagem: ', error);
return;
}
let jsonResponse = JSON.stringify(JSON.parse(body), null, ' ');
console.log('JSON Response\n');
console.log(jsonResponse);
});
没有任何代码块,我们声明了不同的变化,以便通过 URL 来实现通过 URL 识别图像的方式。请注意,在params
json 格式中,参数参数中的内容是不同的。 Face API 的基本参数、AQUI分析器
为此,我们将 Json 重新命名为各种请求信息params
。
Vamos 测试了应用程序?! Vejam no gif abaixo como testar:
观察一下 api 的返回结果,看看我的家乡的图像,你的马罗姆,不是我们所使用的,而是根据我的资料推断出来的。
Vejam or retorno abaixo para a imagem do Silvio Santos
:
- JSON 响应
[
{
"faceId": "8b121a4e-407a-4b91-9b90-4ba2592a6329",
"faceRectangle": {
"top": 82,
"left": 237,
"width": 163,
"height": 163
},
"faceAttributes": {
"smile": 1,
"headPose": {
"pitch": -6.3,
"roll": 4.4,
"yaw": -7.5
},
"gender": "male",
"age": 50,
"facialHair": {
"moustache": 0.1,
"beard": 0.1,
"sideburns": 0.1
},
"glasses": "NoGlasses",
"emotion": {
"anger": 0,
"contempt": 0,
"disgust": 0,
"fear": 0,
"happiness": 1,
"neutral": 0,
"sadness": 0,
"surprise": 0
},
"blur": {
"blurLevel": "medium",
"value": 0.42
},
"exposure": {
"exposureLevel": "goodExposure",
"value": 0.72
},
"noise": {
"noiseLevel": "medium",
"value": 0.46
},
"makeup": {
"eyeMakeup": false,
"lipMakeup": false
},
"accessories": [],
"occlusion": {
"foreheadOccluded": false,
"eyeOccluded": false,
"mouthOccluded": false
},
"hair": {
"bald": 0.17,
"invisible": false,
"hairColor": [
{
"color": "brown",
"confidence": 1
},
{
"color": "black",
"confidence": 0.85
},
{
"color": "gray",
"confidence": 0.48
},
{
"color": "blond",
"confidence": 0.1
},
{
"color": "red",
"confidence": 0.09
},
{
"color": "other",
"confidence": 0.05
}
]
}
}
}
]
合法吗?! Mas, e se eu quiser ver a imagem eo retorno no browser?!这就是问题所在!在应用程序之外,请执行以下操作:demo-2
- Node.js
- 哈巴狗
- 表达
- 引导
- JQuery
Vejam em ação aqui no gif abaixo:
Todo o codigo desenvolvido encontra-se AQUI。没有明确的存储库可以作为应用程序开发执行器! ;)
帕拉夫拉斯·菲奈斯
Podemos fazer muitas coisas lawais usando o Face API com Node.js 和 JavaScript。 Pois como se trata de uma API aberta,可以使用不同的方法!
Lembrando que o Face API 可以使用其他语言,例如:
Abaixo listo alguns recursos e links 重要的链接,可用于使用 Face API 的应用程序:
您将在未来重新编写 Vue.js 教程!通过使用 Face API 和 Node.js 来实现直播。 Assim que,aguardem!
E para ficarem por dentro de várias outras novidades, no deixem de me seguir lá no twitter!
不! Até a próxima série pessoal! 😍
鏂囩珷鏉ユ簮锛�https://dev.to/azure/reconhecimento-facial-com-face-api-node-js-1h6p