Funcionalidades¶
Dentre as principais funcionalidades do CPQD Biometria de Voz, destacam-se:
Cadastro da biometria
O cadastro da biometria da voz é a primeira etapa do processo de reconhecimento biométrico de um usuário. O cadastro é realizado através do envio de uma ou mais amostras de fala e como resultado, o sistema gera uma representação do locutor que chamamos de voiceprint (em analogia à fingerprint, ou impressão digital). Além da fala, o sistema precisa receber também um identificador desse usuário, que deve ser definido e controlado pela aplicação externa.
Recomendamos fortemente que o identificador de usuário não utilize informações sensíveis que possam ser relacionadas diretamente ao usuário, como CPF, e-mail ou número de telefone. Utilize sequências anonimizadas ou Identificadores Únicos Universais (UUID).
Verificação de locutor
Uma vez criado o cadastro biométrico (voiceprint), o usuário já pode se autenticar no sistema utilizando a sua voz. No processo de verificação de locutor, o usuário deve se identificar previamente, para que o sistema saiba com qual voiceprint deverá comparar a amostra de fala. Como resultado, o sistema gera uma pontuação ou score, indicando a aderência entre a amostra de fala recebida e o voiceprint. Quanto maior o score, mais similar é a voz em relação ao voiceprint, e portanto, maior a chance daquela voz pertencer ao usuário cadastrado.
Identificação
No processo de identificação biométrica, o usuário fornece apenas a sua voz. O sistema deve então compará-la com um conjunto de voiceprints cadastrados. Como resultado, o sistema gera uma lista de pontuações, ou scores, indicando a aderência entre a amostra de fala recebida e cada um dos voiceprints do repositório.
Biometria dependente e independente de texto
O reconhecimento biométrico pode ser dependente ou independente de texto, ou seja, o conteúdo falado no momento do cadastro deve ser o mesmo (ou não) no momento da verificação. O processo dependente de texto traz vantagens e desvantagens em relação ao independente, e seu uso deve ser avaliado no contexto da aplicação.
O processo dependente de texto tem a vantagem de necessitar de falas mais curtas no processo de cadastro e verificação, para se obter uma boa acurácia. No entanto, ele exige que o usuário memorize ou seja induzido a falar um conteúdo específico e fixo, e por isso, esse cenário de uso é muitas vezes denominado senha falada. A aplicação deverá utilizar um recurso adicional de reconhecimento de fala (speech-to-text) para transcrever a fala e comparar com o conteúdo esperado, lidando com as pequenas variações ou erros no texto que podem surgir em função de má articulação e ruídos ambientes.
Já no processo independente de texto, o conteúdo falado no momento do cadastro não precisa ser o mesmo do momento da verificação. Esse cenário de uso é conhecido como fala livre. A desvantagem desse cenário é que para o funcionamento adequado do sistema, é necessário que o cadastro seja feito com amostras de fala de maior duração, e que a verificação também seja feita com frases maiores. O motivo disso é que para gerar um cadastro que represente adequadamente as características biométricas de uma pessoa, é necessário que as amostras de fala possuam riqueza fonética suficiente e abrangente, o que normalmente implica em maiores durações de áudio. No processo de verificação, as amostras de fala também devem ter um mínimo de riqueza fonética para permitir a comparação com o voiceprint.
Podemos dizer que no cenário de senha falada, a frase pode ser curta, de poucos segundos. Enquanto que no cenário de fala livre, o cadastro pode ser feito com dezenas de segundos e a verificação com frases de alguns segundos.
Formatos de áudio
O CPQD Biometria de Voz provê suporte aos seguintes formatos de áudio de entrada: WAV, MP3, FLAC, e OPUS. Além disso, aceita áudios sem cabeçalho nos formatos PCM Linear16 com taxa de 8kHz, usado em telefonia, e 16 kHz para aplicações digitais com maior qualidade. É importante ressaltar que a qualidade do áudio é um fator de impacto na acurácia do sistema.
Proteção contra ataques de replay
Sistemas de biometria estão sujeitos a tentativas de ataques (spoofing) para burlar o processo de reconhecimento. Um fraudador pode estar de posse de uma gravação da voz do usuário e com isso reproduzir o áudio no momento do reconhecimento. É muito difícil diferenciar uma reprodução de um áudio gravado com um áudio capturado do usuário ao vivo, dada a boa qualidade dos dispositivos de reprodução atuais. No entanto, o sistema é capaz de perceber se um áudio foi enviado mais de uma vez, e com isso irá rejeitar a tentativa de verificação.
Reconhecimento de estado emocional, gênero e idade
O CPQD Biometria de Voz contém módulos adicionais para o reconhecimento do estado emocional, gênero e idade do locutor a partir da voz. O sistema utiliza módulos independentes, que lidam com problemas de complexidades distintas.
O reconhecimento de gênero utiliza um modelo de classificação binária, onde existem duas respostas possíveis: masculino e feminino. O modelo é limitado a vozes adultas, e portanto espera-se altas taxas de erro com crianças.
Já o reconhecimento de idade utiliza um modelo “dois em um”, produzindo uma estimativa da idade mais provável e em paralelo, calcula a probabilidade por faixas etárias entre zero e 100 anos, com intervalo de 10 anos.
O reconhecimento de emoções considera um conjunto de 10 classes de tom emocional, e estima a probabilidade individual de cada uma. As classes de emoções reconhecidas pelo sistema são:
irritado, enojado, entusiasmado, surpreso, neutro, triste, ansioso, frustrado, amedrontado, feliz.
No entanto, sabemos que a análise do resultado dessa classificação é subjetiva e sujeita a controvérsias, e com isso algumas classificações são mais ou menos “confiáveis”. A relação acima está ordenada por ordem crescente de “confiabilidade”, ou seja, o score para irritado é mais confiável que o de feliz.
Para minimizar o problema da confiabilidade na classificação, é possível utilizar um modelo simplificado, onde as classes são organizadas em grupos menores e mais intuitivos. Os grupos de classes emocionais simplificadas são:
negativo ativado: irritado
negativo (desativado): triste, frustrado, enojado
neutro:neutro, amedrontado
positivo: feliz, entusiasmado, surpreso, ansioso