Vista de pessoas

Se você não fotografa apenas máquinas ou estrelas, o gerenciamento de rostos pode ser um recurso útil (até mesmo máquinas podem ter um operador humano). No digiKam, esse recurso envolve duas tarefas principais: Detecção de rostos e Reconhecimento facial.

O fluxo de trabalho de gerenciamento de rostos ajuda você a identificar e reconhecer pessoas em suas fotos usando redes neurais de aprendizado profundo. A Detecção de rostos identifica os rostos que aparecem em suas imagens, o que é uma etapa necessária antes do reconhecimento. O Reconhecimento facial identifica automaticamente as pessoas em suas fotos, mas requer um treinamento inicial, rotulando alguns rostos detectados com os nomes correspondentes.

Importante

Para que o gerenciamento de rostos funcione corretamente, o digiKam precisa baixar os modelos de aprendizado profundo da web. Esses arquivos podem ser baixados na primeira execução do digiKam (consulte a seção Início Rápido para obter detalhes) ou clicando no botão Baixar os dados binários necessários na página Configurações ‣ Diversos ‣ Sistema.

Detecção de rostos

O primeiro passo é permitir que o digiKam localize todas as fotos que contêm rostos, sem ainda identificar a quem pertencem. Para começar, clique na aba Pessoas na barra lateral esquerda. Na parte inferior, você encontrará o painel das configurações. O painel de configurações é dividido em duas abas: Pesquisar em e Configurações. No painel de configurações, selecione a aba Configurações para ajustar as configurações de detecção e reconhecimento facial.

  • Analisar novas imagens: Selecione esta opção para sua primeira análise ou se quiser analisar imagens adicionadas recentemente que não foram analisadas antes.

  • Analisar todas as imagens: Selecione esta opção se você alterou as configurações. Isso analisará novamente todas as imagens selecionadas na aba Pesquisar em, o que pode ser demorado.

  • Reconhecer rostos somente: selecione esta opção se você já tiver analisado suas imagens e quiser reconhecer rostos nas imagens que já foram detectadas.

Vista das configurações de gerenciamento de rosto do digiKam

Para operação normal, use a primeira opção, que é definida como padrão. Isso é ideal para sua varredura facial inicial ou ao adicionar novas imagens à sua biblioteca. A segunda e a terceira opções devem ser utilizadas ao modificar configurações que afetam os resultados de rostos. Independentemente da opção escolhida, o sistema tentará reconhecer os rostos. A aba Pesquisar em permite limitar a varredura a álbuns ou etiquetas específicos. Consulte a seção Pesquisar em para obter mais informações. Após selecionar suas opções, clique em Procurar rostos na sua coleção.

Dependendo do escopo da sua seleção, pode demorar um pouco para que os resultados apareçam na área de imagens. Na lista de etiquetas na barra lateral esquerda, você verá o ramo Pessoas da sua árvore de etiquetas. Para visualizar todo o conjunto de rostos identificados, certifique-se de que a etiqueta Pessoas mais acima esteja selecionada. Você também notará uma nova etiqueta virtual chamada Desconhecido, que inclui todas as imagens em que rostos foram detectados, mas ainda não atribuídos a uma pessoa. Se esta for sua primeira varredura, você também encontrará o conjunto completo de rostos identificados aqui.

Screencast do processo de detecção de rostos do digiKam em execução nas coleções e preenchendo o banco de dados

Observe que as miniaturas apresentadas aqui não mostram a imagem inteira. Elas mostram a área da imagem onde o modelo de detecção facial adicionou uma Etiqueta de rosto. Você pode ver a imagem inteira clicando na miniatura. Na visualização que se abre, você verá a imagem inteira com todas as etiquetas de rosto. Caso não as veja, clique no botão de pessoa icon_showfacetags no canto superior esquerdo da visualização. Se houver mais de uma etiqueta de rosto na imagem, ela também será representada por mais de uma miniatura.

A lista de amostras de detecção abaixo vem de uma enorme coleção de fotos digitalizadas pelo digiKam.

ID

Amostra de rostos detectados

Comentários

01

Um rosto subexposto

02

Um rosto de um animal

03

Um rosto de criança borrado

04

Um rosto não humano

05

Um rosto muito desfocado e parcial

06

Um rosto rotacionado

07

Um rosto coberto com um capuz

08

Um rosto em perfil

09

Um rosto subexposto e parcial

10

Um falso positivo detectado

11

Um rosto de um animal

12

Um rosto coberto por uma raquete

As capturas de tela 02 e 11 foram selecionadas para destacar um recurso importante: o algoritmo consegue detectar rostos de animais. Isso não é um falso positivo, a menos que você queira especificamente ver apenas rostos humanos em sua coleção.

A captura de tela 10 apresenta um resultado incorreto (falso positivo), demonstrando que o algoritmo às vezes identifica detalhes em uma imagem que se assemelham a um rosto, mas não são realmente rostos. É aqui que o botão Remover se torna útil. Ele remove a marcação de rosto da fotografia e, se for a única marcação de rosto restante, a fotografia desaparecerá dos resultados da análise.

As capturas de tela 01, 03, 05, 08, 09 e 12 podem ser consideradas não-rostos ou podem ser filtradas aumentando a configuração de precisão de detecção no painel de Configurações do gerenciamento de rostos. No entanto, esses exemplos demonstram a capacidade do algoritmo de detectar rostos mesmo em condições desafiadoras.

A captura de tela 04 mostra que o modelo pode detectar outros rostos não humanos em imagens, incluindo estátuas, pinturas e imagens dentro de imagens.

Após a conclusão da verificação, uma nova marcação com o nome Desconhecido deverá aparecer em Pessoas na vista de Pessoas. Você precisará marcar manualmente alguns desses rostos antes que o digiKam possa começar a corresponder automaticamente a outros rostos desconhecidos.

Etiquetamento de rostos

Atribuir nomes a etiquetas de rosto é uma etapa crucial para o reconhecimento facial. O digiKam só reconhece rostos se tiver rostos de referência para comparação. É sua função treiná-lo identificando rostos, como Lara, João, Pedro, etc. Normalmente, você só precisa marcar manualmente um rosto de uma pessoa para que o processo de reconhecimento identifique rostos adicionais.

Após executar uma análise conforme descrito na seção anterior, selecione a etiqueta Desconhecido na barra lateral esquerda.

A vista em miniaturas do gerenciamento de rosto do digiKam permite que várias seleções de rostos semelhantes sejam marcados com o nome Adam.

No campo Quem é?, você pode digitar o nome de uma etiqueta de pessoa existente na sua árvore de etiquetas ou usar a função suspensa para exibir sua árvore de etiquetas e selecionar uma etiqueta. Você também pode aplicar a mesma etiqueta a vários rostos simultaneamente. Confirmar salva o nome no banco de dados e move a miniatura de Desconhecido para a etiqueta de rosto correspondente.

A vista de miniaturas do gerenciamento de rosto do digiKam exibindo um conjunto confirmado de 6 rostos marcados com o nome Adam.

Nota

Usar o item de menu de contexto Atribuir etiqueta em vez do procedimento descrito acima não atribuirá uma etiqueta de rosto. Em vez disso, atribuirá uma etiqueta normal à imagem.

Após a confirmação de uma etiqueta de rosto, o digiKam exibe apenas o nome, sem os botões para remover, editar ou confirmar. Se precisar editar ou remover uma etiqueta de rosto confirmada, basta clicar duas vezes no nome e os botões reaparecerão.

Para obter mais informações sobre etiquetamento de rosto automático usando o mecanismo de reconhecimento facial do digiKam, consulte a próxima seção deste manual.

Você pode marcar pessoas manualmente de diferentes maneiras:

  • Na aba de Desconhecido na vista de Pessoas: passe o mouse sobre qualquer rosto Desconhecido na vista de miniaturas e use a caixa de texto para atribuir um nome. Isso criará uma nova etiqueta de rosto no caso de uma pessoa cujo nome ainda não tenha sido inserido.

    Screencast de marcação de rosto manual na vista de miniaturas

  • Na aba Pessoas da barra lateral esquerda: use o recurso de arrastar e soltar entre a vista de miniaturas a vista em árvore de etiquetas de rosto. Selecione os itens rotulados como Desconhecido aos quais deseja atribuir uma etiqueta de rosto. Mova o mouse até a hierarquia de itens Pessoas. Um menu pop-up aparecerá para confirmar a atribuição de rosto.

    Screencast de atribuição manual de rosto usando arrastar e soltar

  • Atalho de teclado: você pode atribuir um atalho de teclado a uma etiqueta de rosto e usar rapidamente o teclado para atribuir o nome da etiqueta aos itens selecionados.

    A janela de propriedades da etiqueta de rosto do digiKam com um atalho de teclado atribuído

Caso haja um rosto que você não queira que seja reconhecido, você pode marcá-lo como ignorado. Isso leva à criação de uma nova etiqueta Ignorado. Isso é reversível; você pode desmarcar o rosto posteriormente, se necessário.

Um rosto marcado como Ignorado no vista de miniaturas

Além de marcar rostos detectados automaticamente, você pode adicionar manualmente uma região de rosto:

  • No Modo de visualização: clique no ícone Adicionar uma etiqueta de rosto ou selecione a opção no menu de contexto, conforme destacado na captura de tela abaixo.

    Marcação manual de rostos a partir do menu de contexto do digiKam

    Em seguida, desenhe um retângulo ao redor do rosto enquanto segura o botão esquerdo do mouse, digite o nome da pessoa e pressione a tecla Enter. Se você pressionar a tecla Esc, o editor de nome da pessoa será fechado.

    Editor de marcação de rosto manual do digiKam

    Nota

    Em vez de clicar no ícone Adicionar uma etiqueta de rosto, você pode desenhar uma região do rosto enquanto mantém pressionada a tecla Ctrl.

    O menu de contexto do Modo de visualização também inclui duas outras opções para marcação manual de rosto:

    • Procurar rostos: Esta opção aciona o algoritmo de detecção de rostos para identificar e marcar automaticamente áreas de rostos na imagem. Por padrão, esses rostos são rotulados como Desconhecido no banco de dados. O processo utiliza as configurações mais recentes de Detecção de rostos. Se rostos forem detectados, você pode editar manualmente os nomes dos rostos, conforme descrito anteriormente.

    • Mostrar etiquetas de rosto: exibe as áreas de etiquetas de rosto visíveis e alterna automaticamente para o modo de edição quando o mouse passa sobre elas.

    Nota

    Na aba de Comportamentos na página Diversos da janela de configuração, é possível ativar uma opção para preencher a vista em árvore de etiquetas apenas com apenas etiquetas de rosto quando você for inserir um nome em uma etiqueta de rosto.

Reconhecimento facial

Depois de atribuir uma etiqueta a algumas fotos, você pode fazer com que o digiKam tente combinar rostos Desconhecidos com rostos semelhantes que já foram confirmados (marcados). Para iniciar esse processo, acesse a aba de fluxo de trabalho, selecione Reconhecer rostos somente e clique em Procurar rostos na coleção. O processo marcará rostos semelhantes detectados com a etiqueta de pessoa apropriada da sua árvore de etiquetas, e a miniatura correspondente desaparecerá da seção de Desconhecidos. A miniatura aparecerá na seção Não confirmado e será adicionada à seção da etiqueta de rosto sugerida.

Vista em miniatura do gerenciamento facial do digiKam com rostos recém-reconhecidos com uma etiqueta sugerida de Adam.

O reconhecimento facial é mais rápido que a detecção de rostos, mas ainda faz sentido usar a aba Pesquisar em para restringir a busca a determinados álbuns ou rostos na aba Álbuns, como a etiqueta Desconhecido. Consulte a aba Pesquisar em.

A vista de miniatura do gerenciamento de rosto do digiKam com novos rostos reconhecidos sugeridos como Adam.

Os resultados do novo reconhecimento facial aparecem como resultados Não confirmados. Esses resultados serão marcados com a etiqueta Não confirmado e a etiqueta da pessoa sugerida para cada rosto. Para concluir o processo de reconhecimento, você precisa Confirmar os rostos recém-reconhecidos. Após a confirmação, esses rostos serão movidos permanentemente para a etiqueta de rosto apropriada. Ao passar o mouse sobre os rostos não confirmados, diversas opções serão exibidas:

  • O botão Confirmar permite salvar a sugestão. Isso atribui o nome sugerido ao rosto.

  • O botão Rejeitar move o rosto de volta para Desconhecido se a sugestão estiver incorreta.

  • O botão Excluir remove a região do rosto do banco de dados se a sugestão não for um rosto.

Por padrão, os rostos são categorizados com base no nome. Você pode alterar esse comportamento acessando: menuselection:Exibir –> Separar os itens. Usar uma ordem de categorização diferente fará com que os rostos Confirmados e Não confirmados apareçam misturados. Para ajustar isso, você pode modificar a ordem de classificação dentro de cada categoria acessando Exibir ‣ Ordenar itens ‣ Por tipo de rosto.

Nota

O digiKam não mantém registro de rostos rejeitados. O mesmo rosto pode ser sugerido em futuras varreduras de reconhecimento. Para evitar isso, você pode rotular o rosto com um novo nome ou optar por ignorá-lo.

Como o reconhecimento funciona

O reconhecimento facial no digiKam é cumulativo. Quando mais rostos são confirmados para um nome de etiqueta, o digiKam consegue encontrar mais rostos semelhantes. Ao criar sua biblioteca pela primeira vez, podem ser necessárias várias varreduras de reconhecimento para reconhecer todos os rostos semelhantes detectados. Isso permite que o digiKam aprenda diferentes aspectos dos rostos e o ajuda a reconhecer a mesma pessoa em diferentes idades.

  • Exemplo 1: Uma foto de um rosto de frente corresponderá a rostos semelhantes ligeiramente virados para o lado. Rostos ligeiramente virados para o lado corresponderão a rostos semelhantes virados completamente para o lado. Rostos virados completamente para o lado corresponderão a rostos semelhantes de perfil completo.

  • Exemplo 2: A imagem de uma criança corresponderá a rostos semelhantes quando ela tiver aproximadamente a mesma idade e quando for um ou dois anos mais nova ou mais velha. Rostos de crianças alguns anos mais novas ou mais velhas corresponderão a rostos semelhantes quando forem ainda mais novas ou mais velhas.

Importante

Recomenda-se que você execute várias varreduras com Reconhecer rostos somente ao criar sua biblioteca pela primeira vez. Revise e confirme cuidadosamente as sugestões entre cada varredura.

A precisão do reconhecimento facial é muito alta depois que você cria e treina sua biblioteca.

Importante

Analise cuidadosamente as sugestões de nomes de rostos antes de confirmá-las. Uma única confirmação incorreta pode levar a inúmeras sugestões imprecisas do sistema de reconhecimento facial.

Para melhorar os resultados do reconhecimento facial, além de ajustar as configurações mencionadas abaixo, você também pode melhorar a precisão reconstruindo os dados de treinamento. Para isso, acesse Ferramentas ‣ Manutenção ‣ Gerenciamento do motor de reconhecimento facial e selecione Reconstruir todos os dados de treinamento.

Aba Pesquisar em

A aba Pesquisar em permite escolher quais álbuns e etiquetas de imagem incluir em uma varredura. Você pode selecionar álbuns ou etiquetas específicos para detecção e reconhecimento.

  • Para Analisar todas as imagens e Analisar novas imagens, o digiKam analisará as imagens selecionadas no filtro em busca de rostos.

  • Para Reconhecer rostos somente, o digiKam tentará corresponder as etiquetas de rosto Desconhecido e Não confirmado nas imagens incluídas no filtro com todas as etiquetas de rosto confirmadas.

O painel de pesquisa do gerenciamento de rosto do digiKam

Aba de Configurações

A aba Configurações permite ajustar os resultados das varreduras de detecção e reconhecimento. Aqui, você pode ajustar os modelos de detecção e reconhecimento, definir os níveis de precisão e configurar a detecção facial para casos especiais. Além disso, você pode controlar a carga do processador usada para detecção e reconhecimento facial. Os valores padrão foram cuidadosamente selecionados para uso normal após testes exaustivos em diversos conjuntos de dados, incluindo conjuntos de dados padrão da indústria, como o LFW, e conjuntos de dados pessoais.

O painel de configurações de detecção de gerenciamento facial do digiKam

Configurações de detecção de rosto

Para detecção de rosto, há duas configurações que o usuário pode ajustar para controlar como o digiKam determina se há um rosto em uma imagem.

  • Precisão: Configurações de precisão mais baixas podem detectar mais rostos em uma imagem, mas também aumentarão o número de áreas incorretas identificadas como rostos (falsos positivos). A configuração padrão de 7 é recomendada para uso normal.

  • Tamanho do rosto: Configurações maiores de tamanho de rosto aumentam a velocidade de detecção de rostos, mas podem não detectar rostos pequenos em fotos de grupo ou no fundo de imagens. Consulte a seção Casos especiais abaixo para obter mais detalhes.

Configurações de reconhecimento facial

Para reconhecimento facial, há apenas uma configuração que o usuário pode ajustar para controlar como o digiKam compara rostos Desconhecidos com rostos confirmados.

  • Precisão: Configurações de precisão mais baixas produzirão mais sugestões, mas aumentarão o número de sugestões incorretas. A configuração padrão de 7 é recomendada para uso normal.

Trabalhar em todos os núcleos do processador

A detecção e o reconhecimento facial podem ser tarefas demoradas, dependendo do tamanho da sua biblioteca e da filtragem selecionada em Pesquisar em. Recomenda-se usar todos os núcleos do processador. Isso tornará o processo mais rápido, mas pode potencialmente tornar outros processos mais lentos e fazer com que seu computador pare de responder durante o processamento de rostos. Você pode desmarcar Usar todos os processadores se sua máquina estiver lenta e você quiser executar outras tarefas enquanto o escaneamento facial estiver em execução.

Dica

Devido a limitações técnicas no Windows, o suporte multi-core para bancos de dados MySQL/MariaDB não apresenta bom desempenho. Para melhor desempenho, recomendamos o uso de um banco de dados SQLite.

Casos especiais

Ocasionalmente, você pode encontrar casos especiais em que as configurações recomendadas de detecção de rosto não produzem os melhores resultados. Nesses casos, você deve ajustar as configurações de detecção para uma única imagem ou um pequeno grupo de imagens. Não é recomendável alterar as configurações padrão para uso normal, e é recomendável retornar as configurações aos valores padrão quando terminar de usar em casos especiais.

  • Fotos de grupos grandes: Você pode ter imagens de grupos grandes de pessoas e deseja gerar uma marcação facial para cada pessoa na imagem. Definir a Precisão de detecção como 1 e o Tamanho do rosto como Muito pequeno deve detectar a maioria, senão todos, os rostos na imagem. Isso também marcará incorretamente mais áreas da imagem como rostos (falsos positivos).

  • Retratos: Ao fotografar retratos do ombro para cima, especialmente com câmeras modernas de alta resolução com mais de 40 megapixels, o reconhecimento facial pode não detectar o rosto ou marcar várias áreas de um único rosto. Definir a Precisão de detecção como 8 e o Tamanho do rosto como Muito grande detectará apenas o rosto e eliminará regiões de marcação de falsos positivos.

  • Baixa qualidade: O digiKam filtra intencionalmente rostos muito pequenos, borrados e de baixa qualidade. Isso garante que apenas amostras de alta qualidade sejam usadas para treinar o mecanismo de reconhecimento facial, melhorando a precisão e a confiabilidade. Para otimizar o reconhecimento facial, use apenas imagens de alta qualidade com rostos nítidos e bem definidos para o treinamento. Evite incluir imagens pequenas, borradas ou de baixa resolução em seu fluxo de trabalho.