Vista Persone¶
Se non stai fotografando solo foto macchine o stelle, la Gestione dei volti può risultarti utile (anche le macchine potrebbero avere un operatore umano). In digiKam, questa funzionalità comprende da due fasi principali: il rilevamento facciale e il riconoscimento facciale.
La procedura di gestione dei volti ti aiuta a individuare e riconoscere le persone nelle tue fotografie, utilizzando le reti neurali di apprendimento profondo. Il rilevamento facciale identifica i volti che appaiono nelle immagini, passaggio necessario prima del riconoscimento dei volti. Il riconoscimento facciale riconosce poi automaticamente le persone nelle tue foto, ma richiede un addestramento iniziale attraverso l’etichettatura di alcuni volti individuati con i relativi nomi.
Importante
Per un corretto funzionamento della gestione dei volti, digiKam deve scaricare i modelli di apprendimento profondo dalla rete. Questi file possono essere scaricati sia al primo avvio di digiKam (per i dettagli vedi la sezione Avvio rapido), sia facendo clic sul pulsante Scarica i dati degli eseguibili richiesti nella pagina .
Rilevamento facciale¶
Il primo passaggio è permettere a digiKam di individuare tutte le fotografie che contengono volti, senza identificare ancora a chi appartengono. Per iniziare, fai clic sulla scheda Persone nella barra laterale sinistra. In basso è presente una vista delle impostazioni con un menu a tendina in cui è possibile selezionare da varie opzioni:
Salta le immagini già analizzate: seleziona questa opzione per la tua prima analisi, o se vuoi analizzarne di nuove.
Rianalizza e unisci i risultati: seleziona questa opzione quando hai cambiato le impostazioni. Quest’azione rianalizzerà tutte le immagini selezionate nella scheda Ricerca in, e potrà risultare piuttosto lunga.
Pulisci i risultati non confermati e rianalizza: seleziona questa opzione quando hai cambiato le impostazioni e vuoi eliminare tutti i volti senza nome dalla banca dati. Questa azione rianalizzerà tutte le immagini selezionate nella scheda Ricerca in, e potrà risultare piuttosto lunga.
La prima opzione è quella predefinita per le operazioni normali. Usala per il rilevamento facciale iniziale o quando aggiungi nuove immagini alla tua libreria. La seconda e la terza opzione devono essere usate quando cambi le impostazioni che influenzano i risultati del rilevamento facciale. Queste opzioni non influenzano il processo di riconoscimento dei volti.
Per questa operazione, accertati di selezionare Rileva i volti. Dato che il rilevamento facciale occupa molto tempo, è meglio limitare l’analisi piuttosto che analizzare subito. Nella scheda Ricerca in puoi limitare l’analisi ad album o tag specifici. Vedi la sezione Ricerca in per ulteriori informazioni.
Dopo aver selezionato con cura le tue opzioni fai clic su Analizza la raccolta alla ricerca di volti. A seconda della portata della tua selezione, ci vorrà un po” di tempo prima che i risultati compaiano nell’area dell’immagine. Nell’elenco dei tag nella barra laterale sinistra sarà presente il ramo Persone dell’albero dei tuoi tag. Per visualizzare l’intero gruppo di volti identificati, accertati che sia selezionato il tag Persone in cima. Noterai anche un nuovo tag virtuale chiamato Sconosciuto, che include tutte le immagini in cui i volti sono stati riconosciuti ma non ancora collegati a una persona. Se questa è la tua prima analisi, troverai l’intero gruppo di volti identificati anche qui.
Nota come le miniature presentate qui non mostrano l’immagine intera. Esse mostrano l’area dell’immagine dove il modello di rilevamento facciale ha aggiunto un tag volto. Puoi osservare l’intera immagine se fai clic sulla miniatura. Nell’anteprima che si apre, vedrai l’immagine completa con sopra tutti i tag volto. Se non li vedi, fai clic sul pulsante persone , nell’angolo superiore sinistro dell’anteprima. Se è presente più di un tag volto sull’immagine, essa sarà rappresentata da più di una miniatura.
L’elenco dei campioni di rilevamento sotto riportato proviene da una grande raccolta di foto analizzate da digiKam.
ID |
Campioni di volti rilevati |
Commenti |
---|---|---|
01 |
Viso sottoesposto |
|
02 |
Volto di un animale |
|
03 |
Volto sfuocato di un bambino |
|
04 |
Volto non umano |
|
05 |
Volto parziale molto sfuocato |
|
06 |
Viso ruotato |
|
07 |
Viso coperto da un cappuccio |
|
08 |
Volto di profilo |
|
09 |
Volto parziale e sottoesposto |
|
10 |
Rilevamento di un falso positivo |
|
11 |
Volto di un animale |
|
12 |
Viso coperto da una racchetta |
Le schermate 02 e 11 sono state selezionate per evidenziare una caratteristica importante: l’algoritmo è in grado di individuare i volti degli animali. Questo non è un falso positivo, a meno che tu non voglia vedere nella tua raccolta, in modo specifico, solamente volti umani.
La schermata 10 è un risultato sbagliato (falso positivo), che dimostra che l’algoritmo talvolta identifica dei dettagli in un’immagine che assomigliano a un volto, ma che in realtà non lo sono. È in questi casi che torna utile il pulsante Rimuovi: rimuove il tag volto dalla fotografia; e se quel tag volto è l’unico presente, la fotografia sparirà dai risultati della ricerca.
Le schermate 01, 03, 05, 08, 09 e 12 possono essere considerate non volti, o possono essere filtrate via aumentando l’impostazione di accuratezza del rilevamento nella vista Impostazioni della gestione dei volti. Tuttavia, questi esempi dimostrano l’abilità dell’algoritmo di rilevare i volti in condizioni impegnative.
La schermata 04 mostra che il modello è in grado di rilevare volti non umani nelle immagini, incluse statue, dipinti e foto all’interno di immagini.
Dopo completata l’analisi di rilevamento, dovresti vedere un nuovo tag con etichetta Sconosciuto sotto Persone, nella vista Persone. Devi aggiungere manualmente dei tag a questi volti prima di procedere con il riconoscimento facciale.
Attribuzione dei tag volto¶
Assegnare tag di persone ai tag volto è un passaggio cruciale per il Riconoscimento facciale. digiKam può riconoscere i volti soltanto se contiene volti di riferimento per il confronto. Il tuo compito è addestrare il programma identificando facce, etichettandole come Laura, Giovanni, Pietro, ecc. Per il processo di riconoscimento d’identificazione di altri volti, in genere basta soltanto aggiungere manualmente un tag al volto di una persona.
Dopo aver eseguito una scansione di rilevamento come descritta nella sezione precedente, seleziona il tag Sconosciuto nella barra laterale sinistra.
Nel campo etichettato Chi è questo? puoi sia inserire il nome di un tag Persona esistente nel tuo albero dei tag, oppure usare la funzione a tendina per mostrare il tuo albero dei tag e selezionarne uno. Puoi anche applicare lo stesso tag a più volti allo stesso tempo. Conferma salva il nome nella banca dati e sposta la miniatura dal tag Sconosciuto al tag volto.
Nota
Usando la voce del menu contestuale Assegna tag, invece della procedura descritta sopra, non assegnerai un tag volto. Assegnerai invece un tag regolare all’intera immagine.
Una volta che un tag volto è confermato, digiKam mostra solo il nome senza i pulsanti per rimuoverlo, modificarlo o confermarlo. Se hai necessità di modificare o eliminare un tag volto confermato, basta fare doppio clic sul nome e i pulsanti verranno nuovamente visualizzati.
Per ulteriori informazioni riguardo l’attribuzione di tag volto automatici tramite il motore di riconoscimento facciale di digiKam, vedi la sezione successiva di questo manuale.
Puoi attribuire manualmente tag alle persone in vari modi:
Dal tag Sconosciuto nella vista Persone: passa sopra su uno dei volti sconosciuto dalla vista a icone e usa il riquadro di testo per assegnargli un nome. Questo creerà un nuovo tag volto, nel caso di una persona il cui nome non sia già stato inserito.
Dalla scheda Persone della barra laterale sinistra: usa il trascinamento tra la vista a icone e la vista ad albero dei tag volto. Seleziona gli elemento con etichetta Sconosciuto a cui vuoi assegnare un tag volto. Esegui uno spostamento con il mouse nella gerarchia degli elementi delle Persone. Si aprirà un menu a comparsa per confermare l’assegnazione del volto.
Dalla scorciatoia di tastiera: puoi assegnare un tasto magico a un tag volto e usare rapidamente la tastiera per assegnare il nome del tag volto agli elementi selezionati.
Nel caso in cui esista un volto che non vuoi che sia riconosciuto, puoi contrassegnarlo come ignorato. Questo creerà un nuovo tag Ignorato; questo è reversibile, puoi togliere la spunta al volto in seguito, se necessario.
In aggiunta all’attribuzione di tag ai volti rilevati automaticamente, puoi aggiungere manualmente un’area a un volto:
Dalla modalità anteprima: fai clic sull’icona Aggiungi un tag volto o seleziona l’opzione sul menu contestuale, come evidenziato nella schermata sottostante.
Quindi disegna un rettangolo attorno al volto mentre tieni premuto il pulsante sinistro del mouse seguito dall’immissione del nome della persona e premendo il tasto Invio. Se premi il tasto Esc, uscirai dall’editor del nome della persona.
Nota
Invece di fare clic sull’icona Aggiungi un tag volto, puoi disegnare una regione del volto premendo contemporaneamente il tasto Ctrl.
Il menu contestuale della modalità anteprima include anche due altre opzioni per l’attribuzione manuale di tag volto:
Analizza i volti: questa opzione attiva l’algoritmo del rilevamento facciale per identificare e contrassegnare automaticamente aree dei volti sull’immagine. Per impostazione predefinita, questi volti sono etichettati come Sconosciuto nella banca dati. Il processo usa le impostazioni di rilevamento facciale usate più di recente. Come spiegato in precedenza, se vengono trovati rilevati volti potrai modificare manualmente il loro nome.
Mostra i tag volto: questa opzione mostra le aree dei tag volto visibili e passa automaticamente in modalità modifica quando il mouse ci passa sopra.
Nota
Nella vista Comportamento varie della finestra di dialogo della configurazione, può essere attivata un’opzione per popolare solo la vista ad albero dei tag con i tag volto assegnati a un volto mentre inserisci il suo nome.
Riconoscimento facciale¶
Una volta che hai assegnato un tag ad alcune fotografie, digiKam tenterà di far corrispondere i volti sconosciuti a volti simili che sono stati già confermati (attribuito un tag). Per avviare questa operazione, vai alla scheda del flusso di lavoro, seleziona Riconosci i volti, quindi fai clic su Analizza la raccolta alla ricerca di volti. L’operazione aggiungerà ai volti individuati come simili l’opportuno tag di persone dall’albero dei tag, e la miniatura corrispondente scomparirà dalla selezione del tag Sconosciuto. La miniatura apparirà nella sezione di tag Non confermato e sarà aggiunta alla sezione di tag volto suggerita.
Il Riconoscimento facciale è più veloce del Rilevamento facciale ma ha ancora senso per utilizzare la scheda Ricerca in per restringere l’analisi a determinati album o tag nella scheda Album, per esempio al tag Sconosciuto. Vedi la scheda Ricerca in.
Nota
Riconoscimento facciale funziona bene solo con volti che sono stati riconosciuti automaticamente da digiKam, non con i rettangoli di volti disegnati manualmente o da altri programmi.
I risultati del nuovo riconoscimento facciale appaiono come risultati Non confermati. Saranno contrassegnati col tag Non confermato e il tag della persona suggerita per ciascun volto. Per completare il processo di riconoscimento, devi Confermare i volti appena riconosciuti. Una volta confermati, questi volti saranno permanentemente spostati al tag volto appropriato. Se passi il mouse sopra i volti non confermati saranno visualizzate diverse opzioni:
Col pulsante Conferma salverai il suggerimento e il nome suggerito sarà assegnato al volto.
Col pulsante Rifiuta sposterai il volto di nuovo a Sconosciuto, se il suggerimento risulta sbagliato.
Col pulsante Elimina rimuoverà l’area del volto dalla banca dati, se il suggerimento non è un volto.
I volti appariranno categorizzati, per impostazione predefinita, in base al loro nome. Puoi cambiare questo comportamento da
. L’uso di un ordine di categorizzazione differente restituirà volti confermati e non confermati, mischiati assieme. Per regolare questo aspetto, puoi modificare l’ordine all’interno di ciascuna categoria da .Nota
digiKam non mantiene un registro dei volti rifiutati. Lo stesso volto potrebbe essere suggerito in future analisi. Per evitare questo comportamento, puoi etichettare il volto con un nuovo nome, oppure scegliere di ignorarlo.
Come funziona il riconoscimento¶
Il Riconoscimento facciale in digiKam è cumulativo. Quando sono confermati più volti a un nome tag, digiKam sarà in grado di trovare più volti simili. Quando costruisci per la prima volta la tua libreria, ci vorranno svariate analisi di riconoscimento per riconoscere tutti i volti simili rilevati. Ciò permetterà a digiKam di apprendere diversi aspetti dei volti e lo aiuterà a riconoscere la stessa persona a età diverse.
Esempio 1: la foto di un volto frontale corrisponderà con volti simili girati leggermente di lato. I volti girati leggermente di lato corrisponderanno con volti simili girati quasi del tutto su un lato. I volti girati quasi del tutto su un lato corrisponderanno con volti simili interamente di profilo.
Esempio 2: una foto di un bambino corrisponderà con volti simili quando il bambino ha circa la stessa età, e quando il bambino è uno o due anni più piccolo o più grande. I volti del bambino quando è più piccolo o più grande di diversi anni corrisponderanno con volti simili quando sono persino più piccoli o più grandi.
Importante
Quando stai costruendo la tua libreria, è consigliato avviare diverse volte l’operazione Riconosci i volti. Controlla accuratamente e conferma i suggerimenti tra un’analisi e l’altra.
La precisione del riconoscimento facciale è molto alta una volta che hai costruito e addestrato la tua libreria.
Importante
Ricontrolla accuratamente i suggerimenti dei nomi dei volti prima di confermarli. Una conferma scorretta può generare molti suggerimenti sbagliati dal sistema di riconoscimento facciale.
Per migliorare il riconoscimento facciale, oltre a regolare le impostazioni citate sotto, puoi anche migliorare la precisione ricostruendo i dati di addestramento da
e selezionando Ricostruisci tutti i dati di addestramento.Scheda Ricerca in¶
La scheda Ricerca in ti permette di scegliere quali album e tag immagine includere in un’analisi. Puoi selezionare specifici album o tag per il rilevamento e il riconoscimento.
Per il rilevamento, digiKam analizzerà le immagini selezionate nel filtro dei volti.
Per il riconoscimento, digiKam tenterà di concordare i tag volto Sconosciuto e Non confermato nelle immagini incluse nel filtro con tutti i tag volto confermati.
Scheda Impostazioni¶
La scheda Impostazioni ti permette di regolare in modo preciso i risultati delle analisi di rilevamento e riconoscimento. Qui puoi regolare i modelli di rilevamento e riconoscimento, impostare il livello di accuratezza e configurare il rilevamento facciale per i casi speciali. In aggiunta, puoi controllare il carico del processore utilizzato per il rilevamento e il riconoscimento facciale. I valori predefiniti sono stati scelti con cura per un utilizzo normale dopo test completi su gruppi di dati multipli, inclusi gruppi di dati di standard industriale quali LFW, e gruppi di dati personali.
Nota
Da digiKam 8.5.0, YuNet è il modello di rilevamento facciale consigliato, mentre SFace è quello consigliato per il riconoscimento facciale.
Impostazioni del rilevamento facciale¶
Per il rilevamento facciale sono regolabili tre impostazioni per controllare come digiKam determina se è presente un volto in un’immagine.
Accuratezza: impostazioni di accuratezza più basse possono rilevare più volti in un’immagine ma aumentano il numero di aree sbagliate identificate come volti (falsi positivi). L’impostazione predefinita raccomandata per un uso normale è 7.
Modello: digiKam supporta tre diversi modelli di rilevamento facciale. YuNet è il modello consigliato. È più veloce e più configurabile di YOLO v3 e SSD.
Dimensione del volto: questa impostazione si applica soltanto a YuNet, e sarà disabilitata se viene selezionato un modello di rilevamento diverso. Impostazioni di dimensione del volto maggiori aumenteranno la velocità del rilevamento facciale ma perderanno probabilmente i visi piccoli nelle foto di gruppo o nello sfondo delle immagini. Per maggiori dettagli vedi la sezione Casi speciali più avanti.
Impostazioni del riconoscimento facciale¶
Per il riconoscimento facciale sono regolabili due impostazioni per controllare come digiKam fa coincidere i volti sconosciuti con i volti confermati.
Accuratezza: impostazioni di accuratezza più basse produrranno più suggerimenti ma aumenteranno il numero di suggerimenti sbagliati. L’impostazione predefinita raccomandata per un uso normale è 7.
Modello: SFace è il modello di riconoscimento raccomandato. È molto più accurato di OpenFace. Il passaggio da un modello di riconoscimento a un altro rende necessario un nuovo addestramento della libreria dei volti, operazione che può risultare dispendiosa in termini di tempo.
Lavora con tutti i core del processore¶
Il rilevamento facciale e il riconoscimento facciale possono essere operazioni dispendiose in termini di tempo, a seconda della libreria in tuo possesso e del tipo di filtro selezionato nell’opzione Ricerca in. Per aumentare la velocità dell’elaborazione, puoi scegliere di utilizzare tutti di core del processore. Questa opzione aumenterà la velocità di elaborazione, ma potrebbe rallentare altri processi e bloccare temporaneamente il computer mentre sta elaborando i volti.
Suggerimento
A causa di limitazioni tecniche in Windows, il supporto multi-core con una banca dati Mysql/MariaDB non restituisce buone prestazioni. Per ottenere risultati migliori, consigliamo di utilizzare invece una banca dati SQlite.
Casi speciali¶
Occasionalmente potresti imbatterti in casi speciali dove le impostazioni di rilevamento facciale raccomandate non restituiscono i migliori risultati. In tali casi, devi regolare le impostazioni di rilevamento per un’immagine singola o dei piccoli gruppi di immagini. Non è consigliato cambiare le impostazioni predefinite per l’utilizzo normale, ed è consigliato riportare poi le impostazioni ai suoi valori predefiniti, una volta concluse le operazioni sui casi speciali.
Grandi foto di gruppo: ti potrebbe capitare di avere grandi gruppi di persone e di voler generare un tag volto per ciascuna persona presente nell’immagine. Utilizzando il modello di rilevamento YuNet, impostando il livello di Accuratezza del rilevamento a uno e la Dimensione volto a Molto piccolo dovresti riuscire a rilevare la maggior parte dei volti nell’immagine, se non addirittura tutti. Queste impostazioni rileveranno però anche dei tag volto scorretti in più aree dell’immagine (falsi positivi).
Ritratti: quando scatti ritratti dalle spalle in su, in particolare con le fotocamere ad alta risoluzione moderne sopra i 40 megapixel, il riconoscimento facciale potrebbe non rilevare il volto o potrebbe attribuire tag a più aree di un volto singolo. Utilizzando il modello di rilevamento YuNet, impostando il livello di Accuratezza del rilevamento a otto e la Dimensione volto a Molto grande riuscirai a rilevare soltanto il volto, ed eliminerai le regioni con i tag di falsi positivi.