Si no només preneu imatges de màquines o estrelles, la gestió de cares pot ser una característica interessant (fins i tot amb una màquina pot haver-hi operari humà). En el digiKam, aquesta característica consta de dues tasques: Detecció de cares i Reconeixement facial.
El flux de treball de la gestió de cares ajuda a identificar i reconèixer persones a les fotografies utilitzant xarxes neuronals d'aprenentatge profund. La detecció de cares identifica les cares que apareixen a les imatges, que és un pas necessari abans del reconeixement. El reconeixement de cares reconeixerà automàticament les persones a les fotos, però necessita un entrenament inicial etiquetant algunes cares detectades amb els noms corresponents.
Important
Perquè la gestió de cares funcioni correctament, el digiKam necessita descarregar els models d'aprenentatge profund de la web. Aquests fitxers es poden baixar quan s'executa per primer cop el digiKam (vegeu els detalls a la secció d'Inici ràpid), o els fitxers es poden baixar fent clic al botó Baixa les dades binàries requerides a la pàgina Arranjament ‣ Miscel·lània ‣ Sistema.
El primer pas és permetre que el digiKam localitzi totes les fotografies que contenen cares, sense identificar encara a qui pertany la cara. Per a començar, feu clic a la pestanya Persones a la barra lateral esquerra. A la part inferior trobareu una vista de configuració amb un menú desplegable on podeu seleccionar diverses opcions:
Omet les imatges que ja s'han explorat: seleccioneu aquesta opció per a la primera exploració, o si voleu explorar imatges noves.
Torna a explorar i fusiona els resultats: seleccioneu aquesta opció quan heu canviat la configuració. Això tornarà a explorar totes les imatges seleccionades a la pestanya Cerca*, i pot trigar força temps.
Neteja els resultats no confirmats i torna a explorar: Seleccioneu aquesta opció quan hàgiu canviat la configuració i vulgueu suprimir totes les cares sense nom de la base de dades. Això tornarà a explorar totes les imatges seleccionades a la pestanya Cerca en, i pot pot trigar força temps.
La vista del flux de treball en el digiKam amb la gestió de les cares¶
La primera opció és la predeterminada per a l'operació normal. Utilitzeu-la per a l'exploració inicial de detecció de cares o quan afegiu imatges noves a la biblioteca. La segona i tercera opcions s'han d'utilitzar quan canvieu la configuració que afecti els resultats de detecció de cares. Aquestes opcions no afecten el procés de reconeixement de cares.
Per a aquesta tasca, assegureu-vos de seleccionar Detecta cares. Atès que la detecció de cares pot trigar força temps, és millor limitar l'exploració en lloc d'explorar immediatament. A Cerca en, podeu limitar l'exploració a àlbums o etiquetes específiques. Vegeu la secció Cerca en per a més informació.
Una vegada hàgiu triat acuradament les opcions, feu clic a Explora la col·lecció cercant cares. Depenent de l'abast de la selecció, després d'un temps es presentarà el resultat a l'àrea d'imatges. A la llista d'etiquetes de la barra lateral esquerra, veureu la branca Persones de l'arbre d'etiquetes. Per a veure el conjunt complet de cares identificades, assegureu-vos de seleccionar l'etiqueta superior Persones. També veureu una etiqueta virtual nova anomenada Desconeguda que inclourà totes aquelles imatges en què es reconeixen cares, però que encara no estan assignades a una persona. Si acabeu d'explorar per primera vegada, també trobareu aquí el conjunt complet de cares identificades.
Vídeo d'una captura de pantalla del procés de detecció de cares en el digiKam que s'executa sobre col·leccions i omple la base de dades¶
Cal tenir en compte que les miniatures presentades aquí no mostren tota la imatge. Mostren l'àrea de la imatge a on el model de detecció de cares ha afegit una etiqueta de cara. Podreu veure la imatge sencera si feu clic sobre la miniatura. A la vista prèvia que s'obrirà, veureu tota la imatge amb totes les etiquetes de cares. Si no les veieu, feu clic al botó de la gent a la cantonada superior esquerra de la vista prèvia. Si hi ha més d'una etiqueta de cara a la imatge, també estarà representada per més d'una miniatura.
La llista de mostres de la detecció de sota prové d'una col·lecció gran de fotografies explorades pel digiKam.
ID
Mostres detectades de cara
Comentaris
01
Una cara poc exposada
02
Una cara d'animal
03
Una cara borrosa d'infant
04
Una cara no humana
05
Una cara molt borrosa i parcial
06
Una cara girada
07
Cara coberta amb una caputxa
08
Una cara de perfil
09
Una cara subexposada i parcial
10
Una detecció de fals positiu
11
Una cara d'animal
12
Una cara coberta amb una raqueta
S'han triat les captures de pantalla 02 i 11 perquè mostren una característica important: l'algorisme és capaç de detectar cares d'animals. Això no és un fals positiu, excepte si voleu veure només rostres humans en la col·lecció.
La captura de pantalla 10 és un resultat incorrecte (fals positiu), que mostra que l'algorisme a vegades identificarà detalls en una imatge que semblen una cara però que no són cares real. Aquí és on és útil el botó Elimina. Eliminarà l'etiqueta de cara de la fotografia i, si és l'única etiqueta que queda de cara, la fotografia desapareixerà del resultat de l'exploració.
Les captures de pantalla 01, 03, 05, 08, 09 i 12 es poden considerar com a no cares o es poden filtrar augmentant precisió de la detecció a la vista Configuració de la gestió de cares. Però aquests exemples mostren la capacitat de l'algorisme per a detectar cares inclús en condicions desafiants.
La captura de pantalla 04 mostra que el model pot detectar altres cares no humanes en imatges, incloent estàtues, pintures i imatges dins de les imatges.
Després que s'hagi completat l'exploració de detecció, hauríeu de veure una etiqueta nova anomenada Desconeguda a la vista Persones. Heu d'etiquetar manualment algunes d'aquestes cares abans de continuar amb el reconeixement de cares.
L'assignació d'etiquetes de persones a etiquetes de cares és un pas crucial per al reconeixement de cares. El digiKam només pot reconèixer cares si té cares de referència per a la comparació. És la vostra feina entrenar-lo identificant cares, així com etiquetar-les com Lara, Joan, Pere, etc. En general, només cal etiquetar manualment una cara per a una persona per al procés de reconeixement per a identificar cares addicionals.
Després de realitzar una exploració de detecció tal com es descriu a la secció anterior, seleccioneu l'etiqueta Desconeguda a la barra lateral esquerra.
La vista d'icones de la gestió de cares del digiKam amb una selecció múltiple de cares semblants a etiquetar amb el nom Agnès.¶
En el camp etiquetat Qui és aquest/a? podreu escriure el nom d'una etiqueta existent de Persones fora del vostre arbre d'etiquetes o utilitzar la funció desplegable per a mostrar l'arbre d'etiquetes i seleccionar-ne una. També podeu aplicar la mateixa etiqueta a diverses cara a la vegada. Confirma desa el nom a la base de dades i mou la miniatura des de Desconeguda a l'etiqueta de la cara.
La vista d'icones de la gestió de cares del digiKam amb un conjunt confirmat de 12 cares utilitzant el nom Agnès¶
Nota
Utilitzant l'element del menú contextual Assigna una etiqueta en lloc del procediment descrit anteriorment, no s'assignarà una etiqueta de cara. S'assignarà una etiqueta ordinària a tota la imatge.
Un cop confirmada una etiqueta de cara, el digiKam només mostra el nom sense els botons per a eliminar, editar o confirmar. Si els necessiteu per a editar o eliminar una etiqueta confirmada, senzillament feu doble clic en el nom i els botons tornaran a aparèixer.
Per a obtenir més informació sobre l'etiquetatge automàtic de les cares utilitzant el motor de reconeixement facial del digiKam, vegeu la secció següent d'aquest manual.
Podeu etiquetar manualment persones de diferents maneres:
Des de la pestanya Desconeguda a la vista Persones: passeu per sobre de qualsevol cara Desconeguda a la vista d'icones i utilitzeu el quadre de text per a assignar un nom. Això crearà una etiqueta de cara nova en el cas d'una persona el nom de la qual encara no s'ha introduït.
Vídeo d'una captura de pantalla de l'etiquetatge manual de cares des de la vista d'icones¶
Des de la pestanya Persones de la barra lateral esquerra: arrossegueu i deixeu anar entre la vista d'icones i la vista en arbre d'etiquetes de cara. Seleccioneu els elements etiquetats com a Desconeguda als quals voleu assignar una etiqueta de cara. Feu un moviment amb el ratolí a la jerarquia d'elements Persones. Apareixerà un menú emergent per a confirmar l'assignació de cares.
Vídeo d'una captura de pantalla de l'assignació manual de cares usant arrossega i deixa¶
Des de la drecera de teclat: podeu assignar una tecla màgica a una etiqueta de cara i utilitzar ràpidament el teclat per a assignar el nom de l'etiqueta de cara als elements seleccionats.
El diàleg de propietats de les etiquetes de cara en el digiKam amb una drecera de teclat assignada¶
Si hi ha una cara que no voleu que es reconegui, podeu marcar-la com a ignorada. Això portarà a la creació d'una etiqueta nova Ignorada. Això és reversible, mes tard podreu desmarcar la cara si és necessari.
Una cara marcada com a Ignorada des de la vista d'icones¶
A més d'etiquetar cares detectades automàticament, podeu afegir manualment una regió de cara:
Des del Mode de vista prèvia: feu clic en la icona Afegeix una etiqueta de cara o seleccioneu aquesta opció des del menú contextual, com es ressalta en la captura de pantalla a continuació.
L'etiquetatge manual de cares en el digiKam des del menú contextual¶
Després dibuixeu un rectangle al voltant de la cara mentre manteniu premut el botó esquerre del ratolí, seguit de la introducció del nom de la persona i premeu la tecla Retorn. Si premeu la tecla Esc, sortireu de l'editor de nom de la persona.
L'editor d'etiquetatge manual de cares en el digiKam¶
Nota
En lloc de fer clic sobre la icona Afegeix una etiqueta de cara, podeu dibuixar una regió de cara mentre manteniu premuda la tecla Ctrl.
El menú contextual del Mode de vista prèvia també inclou dues opcions més per a l'etiquetatge manual de cares:
Exploració de cares: aquesta opció activarà l'algorisme de detecció de cares per a identificar i marcar automàticament àrees de cares a la imatge. Les cares s'assignen de manera predeterminada com a Desconeguda en la base de dades. El procés utilitza els paràmetres més recents de la Detecció de cares. Si es detecten cares, podreu editar manualment els noms de les cares com s'ha explicat anteriorment.
Mostra les etiquetes de les cares: mostra les àrees d'etiqueta de cara visibles i canvia automàticament al mode d'edició quan el ratolí es mou sobre seu.
Nota
A la vista Comportament divers del diàleg de configuració, es pot activar una opció per a completar només la vista en arbre d'etiquetes amb les etiquetes de cara assignades a una cara mentre introduïu un nom.
Un cop assignada una etiqueta a unes quantes fotografies, podeu fer que el digiKam intenti fer coincidir les cares Desconegudes amb cares similars que ja han estat confirmades (etiquetades). Per a iniciar aquest procés, aneu a la pestanya del flux de treball, seleccioneu Reconeix les cares i, a continuació, feu clic a Explora la col·lecció cercant cares. El procés etiquetarà cares detectades similars amb l'etiqueta Gent apropiada de l'arbre d'etiquetes, i la miniatura corresponent desapareixerà de la selecció d'etiquetes Desconegudes. La miniatura apareixerà a la secció d'etiquetes Sense confirmar i s'afegirà a la secció d'etiquetes de cares suggerides.
La vista d'icones en la gestió de cares del digiKam amb cares noves reconegudes amb l'etiqueta suggerida Agnès.¶
El reconeixement facial és més ràpid que la detecció de cares, però encara té sentit utilitzar la pestanya Cerca en per a restringir l'exploració a certs àlbums o etiquetes en la pestanya Àlbums, com l'etiqueta Desconeguda. Vegeu la pestanya Cerca en.
Nota
El reconeixement de cares només funciona bé amb cares que han estat detectades automàticament pel digiKam, no amb rectangles de cares dibuixades manualment o cares d'altres programes.
La vista d'icones en la gestió de cares del digiKam amb cares noves reconegudes que suggereix com a Agnès.¶
Els resultats del reconeixement facial nou apareixen en la forma de resultats Sense confirmació. Aquests resultats es marcaran amb l'etiqueta Sense confirmació, i també amb l'etiqueta de la persona suggerida per a cada cara. Per a completar el procés de reconeixement, cal confirmar les cares reconegudes noves. Un cop confirmades, aquestes cares es mouran permanentment a l'etiqueta de cara apropiada. En passar per sobre de les cares sense confirmar, es mostraran les opcions següents:
El botó Confirma permet desar el suggeriment. Això assignarà el nom suggerit a la cara.
El botó Rebutja retorna la cara a Desconeguda si el suggeriment és incorrecte.
El botó Suprimeix elimina la regió de la cara de la base de dades si el suggeriment no és una cara.
De manera predeterminada, les cares es categoritzen segons el seu nom. Podreu canviar aquest comportament anant a Visualitza ‣ Separa els elements. L'ús d'un ordre de categorització diferent farà que les cares Confirmades i Sense confirmació apareixeran mesclades entre si. Per a canviar aquest comportament, podeu modificar l'ordre de classificació dins de cada categoria anant a Visualitza ‣ Ordena els elements ‣ Per tipus de cara.
Nota
El digiKam no guarda cap registre de cares rebutjades. Es podria suggerir la mateixa cara en futures exploracions de reconeixement. Per evitar-ho, podeu etiquetar la cara amb un nom nou o triar ignorar-la.
El reconeixement de cares en el digiKam és acumulatiu. Com més cares confirmades al nom d'etiqueta, el digiKam podrà trobar més cares que siguin similars. Quan es construeix per primera vegada la biblioteca, pot ser que calguin diverses exploracions de reconeixement de la biblioteca per a reconèixer totes les cares detectades similars. Això permet al digiKam aprendre aspectes diferents de les cares, i l'ajuda a reconèixer a la mateixa persona en edats diferents.
Exemple 1: Una imatge d'una cara de la part davantera coincidirà amb cares similars girades lleugerament cap al costat. Les cares girades lleugerament cap al costat coincidiran amb cares similars força girades cap a un costat. Les cares força girades cap a un costat coincidiran amb cares similars de perfil complet.
Exemple 2: Una imatge d'un infant coincidirà amb cares similars quan l'infant té aproximadament la mateixa edat, i quan l'infant és un any o dos més jove o més gran. Les cares de l'infant quan és pocs anys més jove o més gran coincidiran amb cares similars quan encara és més jove o més gran.
Important
Es recomana que executeu diverses exploracions de Reconeixement de cares quan esteu construint la biblioteca per primera vegada. Reviseu atentament i confirmeu els suggeriments entre cada exploració.
La precisió del reconeixement de cares és molt alta una vegada que s'ha construït i entrenat la vostra biblioteca.
Important
Reviseu atentament els suggeriments de nom de ara abans de confirmar-los. Una única confirmació incorrecta pot donar lloc a nombrosos suggeriments inexactes del sistema de reconeixement de cares.
Per a millorar el resultat del reconeixement de cares, a més d'ajustar la configuració esmentada a sota, també podeu millorar la precisió reconstruint les dades d'entrenament. Això es pot fer navegant a Eines ‣ Manteniment ‣ Detecta i reconeix les cares i seleccionar Reconstrueix totes les dades d'entrenament.
La pestanya Cerca en permet triar quins àlbums i etiquetes d'imatge s'inclouran en una exploració. Podeu seleccionar àlbums o etiquetes específiques per a la detecció i el reconeixement.
Per a la detecció, el digiKam explorarà les imatges seleccionades al filtre per trobar cares.
Per al reconeixement, el digiKam intentarà fer coincidir les etiquetes de cara Desconegudes i Sense confirmació a les imatges incloses en el filtre amb totes les etiquetes de cara confirmades.
La vista de «Cerca en» de la gestió de les cares del digiKam¶
La pestanya Configuració permet ajustar els resultats de les exploracions de detecció i reconeixement. Aquí podeu ajustar els models de detecció i reconeixement, establir els nivells de precisió i configurar la detecció de cares per a casos especials. A més, podeu controlar la càrrega del processador utilitzada per a la detecció i el reconeixement de cares. Els valors predeterminats s'han triat acuradament per a un ús normal després de proves exhaustives en diversos conjunts de dades, inclosos els conjunts de dades estàndard de la indústria com LFW i els conjunts de dades personals.
Nota
Començant amb digiKam 8.5.0, YuNet és el model recomanat per a la detecció de cares, i SFace es recomana per al reconeixement de cares.
Per a la detecció de cares, hi ha 3 paràmetres que l'usuari pot ajustar per a controlar com el digiKam determina si hi ha una cara en una imatge.
La vista de la configuració de la gestió de les cares del digiKam¶
Precisió: la configuració de menor precisió pot detectar més cares en una imatge, però també augmentarà el nombre d'àrees incorrectes identificades com a cares (falsos positius). Es recomana la configuració predeterminada de 7 per a un ús normal.
Model: el digiKam admet 3 models diferents per a la detecció de cares. YuNet és el model de detecció recomanat. És més ràpid i configurable que YOLO v3 i SSD.
Mida de les cares: aquesta opció només s'aplica a YuNet, i es desactivarà si se selecciona un model de detecció diferent. La configuració de la mida de les cares més gran augmenta la velocitat de detecció de les cares, però pot perdre cares petites en fotos de grup o en el fons de les imatges. Vegeu la secció Casos especials a continuació per a més detalls.
Per al reconeixement de cares, hi ha 2 paràmetres que l'usuari pot ajustar per a controlar com el digiKam fa coincidir les cares desconegudes amb les cares confirmades.
La vista de la configuració del reconeixement de cares del digiKam¶
Precisió: la configuració de menor precisió produirà més suggeriments, però augmentarà el nombre de suggeriments incorrectes. Es recomana la configuració predeterminada de 7 per a un ús normal.
Model: SFace és el model de reconeixement recomanat. És molt més precís que OpenFace. Canviar d'un model de reconeixement a un altre requereix tornar a entrenar la vostra biblioteca facial, que pot trigar força temps.
La detecció de cares i el reconeixement de cares poden ser tasques que requereixen força temps depenent de la mida de la vostra biblioteca i el filtratge seleccionat a Cerca en. Per a ajudar a accelerar el procés, podeu triar utilitzar tots els nuclis del processador. Tot i que això farà que el procés s'executi més de pressa, potencialment pot fer que altres processos s'executin més lentament i fer que el vostre ordinador trigui en contestar mentre es processen les cares.
Truc
A causa de les limitacions tècniques del Windows, el suport multinucli amb una base de dades MySQL/MariaDB no té un bon rendiment. En el seu lloc, recomanem utilitzar una base de dades SQLite per a millorar el rendiment.
De tant en tant, podeu trobar casos especials en els quals la configuració de detecció de cares recomanada no produeixi els millors resultats. En aquests casos, hauríeu d'ajustar la configuració de detecció d'una imatge única o un grup petit d'imatges. No es recomana canviar la configuració predeterminada per a un ús normal, i es recomana canviar la configuració de nou als seus valors predeterminats quan acabeu amb els casos especials.
Fotos de grups grans: pot ser que tingueu imatges de grups grans de persones, i voleu generar una etiqueta de cara per a cada persona de la imatge. Utilitzant el model de detecció YuNet, establint la precisió de la detecció a 1 i establint la mida de les cares a Extra petita hauria de detectar la majoria, si no totes les cares de la imatge. Això també etiquetarà incorrectament més àrees de la imatge com a cares (falsos positius).
Retrats: quan es prenen retrats des de l'espatlla cap amunt, especialment amb càmeres modernes d'alta resolució de més de 40 megapíxels, el reconeixement de cares pot no detectar la cara o pot etiquetar múltiples àrees d'una sola cara. Utilitzant el model de detecció YuNet, establint la precisió de la detecció a 8, i establir la mida de les cares a Extra Gran detectarà només la cara i eliminarà les regions d'etiquetes que siguin falsos positius.