Configurações Gerais
As funções descritas abaixo devem ser usadas para ajustar o funcionamento do reconhecimento facial, conforme a necessidade do usuário. Assim como os outros parâmetros de configuração do dispositivo, o método HTTP usado para modificação é o POST e o contentType é application/json. O parâmetro será um Objeto JSON correspondente aos parâmetros de configuração que se deseja modificar.
Uso de máscara
Essa funcionalidade permite o reconhecimento da face de usuários que estão usando máscaras. Ou seja, se o dispositivo estiver instalado em um local onde o uso de máscara é obrigatório ou recomendado, essa função deve estar habilitada para que o reconhecimento dos usuários seja feito de forma correta. O parâmetro que define a ativação dessa função é o mask_detection_enabled. Os valores de entrada possíveis para ele são: "0" (desabilitado), indica que o acesso será autorizado ou não independentemente do uso de máscara; "1" (obrigatório), indica que o acesso somente será autorizado para usuários que estiverem utilizando máscara; e "2" (recomendado), indica que o acesso poderá ser autorizado sem a utilização de máscara, porém, uma mensagem será exibida ao usuário recomendando o uso de máscara. Por padrão de fábrica este parâmetro vem com o valor "0".
Obs: A restrição de acesso por uso de máscara só tem efeito quando o equipamento está operando em modo Standalone. Em modo Online, é enviado o parâmetro "face_mask" na resposta de identificação de usuário indicando se o usuário está de máscara, para validação de regra de acesso do lado do servidor.
Exemplo de requisição
Esta requisição configura os parâmetros de uso de máscara obrigatório.
$.ajax({
url: "/set_configuration.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(
{
"face_id": {
"mask_detection_enabled": "1",
}
}
)
});
Modo de detecção
Essa funcionalidade oferece a possibilidade de utilizar o reconhecimento facial em dois modos diferentes, o veicular e o pedestre. O modo pedestre é o modo usual e é o padrão de fábrica. O modo veicular permite o reconhecimento de pessoas que estão em veículos. Ou seja, se o dispositivo estiver instalado em um local onde detecção será feita em usuários que estão no interior de um veículo, essa função deve estar habilitada para que o reconhecimento dos usuários seja feito de forma correta. O parâmetro que define a ativação dessa função é o vehicle_mode. Os valores de entrada possíveis para ele são: "0" (desabilitado) ou "1"(habilitado). Por padrão de fábrica este parâmetro vem com o valor "0" - modo pedestre.
Exemplo de requisição
Esta requisição configura os parâmetros do modo de detecção.
$.ajax({
url: "/set_configuration.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(
{
"face_id": {
"vehicle_mode": "1"
}
}
)
});
Tempo para liberar de novo a mesma face (s)
Através dessa configuração é possível ajustar o tempo em que um mesmo usuário poderá ser novamente identificado, após a última identificação facial. O parâmetro que define este tempo é o max_identified_duration. Por padrão de fábrica este parâmetro vem com o valor "30000", que corresponde a 30 segundos, pois a unidade do parâmetro é em milissegundos.
Exemplo de requisição
Esta requisição configura os parâmetros para ajuste do tempo para liberar de novo a mesma face.
$.ajax({
url: "/set_configuration.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(
{
"face_id": {
"max_identified_duration": "30000"
}
}
)
});
Região de Interesse
Essa função torna possível fazer ajustes na câmera do dispositivo para definir a região onde o rosto do usuário deverá ser identificado. Podem ser feitos dois ajustes: Zoom ou Deslocamento vertical da imagem. O parâmetro que define o zoom aplicado está no módulo zoom e o que define o deslocamento vertical é o vertical_crop. Os valores de entrada possíveis para o zoom são números entre o intervalo: 3.25 (zoom máximo) até 1.0 (zoom mínimo). Os valores de entrada possíveis para deslocamento vertical da imagem são números entre o intervalo: -0.36 (máximo deslocamento para cima - zoom máximo) até 0.36 (máximo deslocamento para baixo - zoom máximo).O valor de entrada padrão de fábrica é 1.5 para o Zoom e -0.06 para o deslocamento vertical.
Obs: Apesar de ser possível alterar esses parâmetros remotamente, recomenda-se que estes ajustes não sejam feitos de forma remota, pois para um bom ajuste da região de interesse é importante uma verificação visual das mudanças no display do próprio equipamento. Além disso, os valores de zoom e deslocamento vertical possuem uma relação de dependência entre si. Sendo que conforme diminuímos o zoom, o deslocamento vertical é limitado.
Exemplo de requisição
Esta requisição configura os parâmetros de zoom.
$.ajax({
url: "/set_configuration.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(
{
"camera_overlay": {
"zoom": "1.5"
}
}
)
});
Esta requisição configura os parâmetros de deslocamento vertical da imagem.
$.ajax({
url: "/set_configuration.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(
{
"camera_overlay": {
"vertical_crop": "-0.06"
}
}
)
});
Ativação dos LEDs brancos
Essa configuração permite definir o nível de luminosidade ambiente necessário para o acendimento dos LEDs brancos durante a identificação. Existem 4 opções possíveis para o acendimento: baixa luminosidade, média luminosidade, alta luminosidade e acesos em qualquer ambiente. A configuração deve ser feita através do parâmetro light_threshold_led_activation
do módulo face_module
. Os valores de entrada possíveis e as respectivas condições são: "40" (baixa luminosidade, definido por padrão), "280" (média luminosidade), "1500" (alta luminosidade) e "1000000" (acesos em qualquer ambiente).
Exemplo de requisição
Esta requisição configura o acendimento dos LEDs brancos em ambientes com baixa luminosidade.
$.ajax({
url: "/set_configuration.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(
{
"face_module": {
"light_threshold_led_activation": "40"
}
}
)
});
Limitação de identificação à região do display
Essa configuração permite limitar a identificação facial à região visível no display do iDFace, a qual é exibida para o usuário. Por padrão, a região do campo de visão em que o dispositivo é capaz de detectar a presença de rostos e identificar o usuário é maior do que a região exibida no display do equipamento. A configuração deve ser feita através do parâmetro limit_identification_to_display_region
do módulo face_id
. Os valores são "0" para desativado ou "1" para ativar a restrição da identificação facial à região visível na tela.
Exemplo de requisição
Esta requisição limita identificação à região do display.
$.ajax({
url: "/set_configuration.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(
{
"face_id": {
"limit_identification_to_display_region": "1"
}
}
)
});
Modo de Liveness
Essa configuração modifica os parâmetros utilizados na detecção de rosto vivo do reconhecimento facial, adotando valores padrão ou mais rigorosos. Com isso, a identificação se trona mais restritiva ao determinar se a face detectada pertence a um indivíduo fisicamente presente ou não. A configuração deve ser feita através do parâmetro liveness_mode
do módulo face_id
. Os valores são "0" para utilizar o modo normal e "1" para o modo rigoroso.
Exemplo de requisição
Esta requisição ativa o modo de liveness rigoroso.
$.ajax({
url: "set_configuration.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(
{
"face_id": {
"liveness_mode": "1"
}
}
)
});
Distância de Identificação (cm)
Essa configuração modifica um dos parâmetros utilizados no processo de reconhecimento facial, a saber, a distância (em cm) em que o rosto do indivíduo deve estar com relação ao equipamento. Dessa forma, mesmo com a faixa de distância seguramente reconhecida pelo dispositivo (de 30cm a 200cm), é possível configurar um valor mais preciso a fim de se adequar ao contexto do ambiente (ambientes muito amplos podem requerer uma distância menor para que a liberação seja mais eficiente). A configuração deve ser feita através do parâmetro min_detect_bounds_width
do módulo face_id
. Contudo, o parâmetro não recebe a distância de identificação em centímetros (cm) mas, sim, o resultado de um cálculo.
Cálculo
- min_detect_bounds_width = 11.6/distance_cm
Exemplo de requisição
Esta requisição configura a distância de identificação do dispositivo para 40cm.
$.ajax({
url: "set_configuration.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(
{
"face_id": {
"min_detect_bounds_width": "0.29"
}
}
)
});
Brilho dos LEDs:
Essa configuração permite alterar o brilho dos LEDs brancos ativados durante o reconhecimento facial. Os valores determinam a potência do LED e são representados por uma porcentagem. Dessa forma, os valores válidos estão na faixa de 0 a 100. A configuração deve ser feita através do parâmetro brightness
do módulo led_white
. Os valores são entre "0" para LED apagado e "100" para LED com o máximo brilho possível.
Exemplo de requisição
Esta requisição configura o brilho dos LEDs para 70%.
$.ajax({
url: "set_configuration.fcgi?session=" + session,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(
{
"led_white": {
"brightness": "70"
}
}
)
});