Überarbeitet am 8. September 2026.
Gesichter direkt auf dem eigenen Nextcloud-Server erkennen lassen – genau das fand ich an der Face-Recognition-App schon vor Jahren spannend. Meine alte Anleitung dazu war allerdings inzwischen kaum noch brauchbar: PHP 7.3, dlib und pdlib von Hand kompilieren, mehrere Gigabyte PHP-Memory-Limit und ein Hintergrundjob per disown.
Die App gibt es weiterhin und sie wird sogar noch entwickelt. Der Aufbau hat sich aber deutlich verändert. Deshalb geht es hier nicht mehr darum, irgendwelche uralten Build-Befehle zu kopieren, sondern darum, wie Face Recognition heute grundsätzlich eingerichtet und getestet wird.
Wenn du Nextcloud gerade grundsätzlich einrichtest, findest du in Was bietet Nextcloud 2026? einen aktuellen Überblick über die Möglichkeiten der Cloud.
Was macht die Face-Recognition-App?
Face Recognition analysiert Bilder innerhalb der Nextcloud, erkennt Gesichter und gruppiert ähnliche Gesichter zu Personen. Die Verarbeitung läuft auf dem eigenen Server. Die Fotos müssen dafür nicht zu Google, Apple oder einem anderen externen Dienst geschickt werden.
Die gefundenen Personen tauchen unter anderem in den persönlichen Einstellungen, in der Seitenleiste der Dateien-App und in der Fotos-App auf. Dort können Gesichter benannt und zusammengeführt werden.
Stand September 2026: auf die Version achten
Beim Schreiben dieser Aktualisierung gibt es eine Besonderheit: Das Upstream-Projekt dokumentiert mit Version 0.9.94 Unterstützung für Nextcloud 34 und mindestens PHP 8.2. Im offiziellen Nextcloud App Store wird aktuell dagegen noch eine ältere Veröffentlichung mit maximal Nextcloud 31 angezeigt.
Deshalb würde ich vor der Installation immer zuerst die aktuelle Projektversion und deren Anforderungen prüfen. Eine alte App-Version sollte nicht mit Gewalt in eine neuere Nextcloud installiert werden.
Voraussetzungen
Das aktuelle Projekt nennt für die neue Generation unter anderem diese Anforderungen:
- eine unterstützte Nextcloud-Version,
- Dlib-PHP-Bindings beziehungsweise PDlib,
- PHP-Bzip2,
- ausreichend Arbeitsspeicher.
Die Gesichtserkennung ist CPU- und speicherintensiv. Gerade bei zehntausenden Fotos würde ich die Analyse nicht während der Hauptnutzungszeit mit maximaler Parallelität starten.
Warum ich die alten dlib-Build-Befehle entfernt habe
In meiner früheren Anleitung wurde dlib aus GitHub kompiliert und pdlib mit Befehlen wie phpize7.3 gebaut. Das war schon damals empfindlich gegenüber PHP-Versionen und Distributionen.
Heute würde ich zuerst die Installationsdokumentation des Projekts für das eigene Betriebssystem verwenden und – wenn verfügbar – vorkompilierte Pakete bevorzugen. Wer eine abweichende PHP-Version oder ein ungewöhnliches Container-Image verwendet, muss PDlib unter Umständen weiterhin selbst bauen. Das ist aber kein sinnvoller Copy-and-Paste-Schritt für eine allgemeine Nextcloud-Anleitung.
1. App installieren und Voraussetzungen prüfen
Wenn die zu deiner Nextcloud passende App-Version verfügbar ist, installierst und aktivierst du Face Recognition. Danach würde ich zunächst prüfen, ob alle Abhängigkeiten erkannt werden, bevor irgendwelche echten Fotos analysiert werden.
Das Projekt stellt dafür inzwischen einen eigenen Setup-Befehl bereit:
sudo -E -u www-data php /var/www/nextcloud/occ face:setupCode-Sprache: JavaScript (javascript)
Damit werden die grundlegende Konfiguration und das benötigte Erkennungsmodell eingerichtet.
2. Erst mit einem Testbenutzer ausprobieren
Diesen Tipp finde ich aus der aktuellen Projektdokumentation besonders sinnvoll: Nicht sofort die komplette private Fotosammlung loslaufen lassen. Stattdessen zuerst einen Testbenutzer anlegen und ein paar unkritische Testbilder hochladen.
Dann kann die Analyse gezielt für diesen Benutzer gestartet werden:
sudo -E -u www-data php /var/www/nextcloud/occ face:background_job -u TESTBENUTZER -t 900Code-Sprache: JavaScript (javascript)
So sieht man relativ schnell, ob PDlib funktioniert, ob die Modelle geladen werden und ob das Ergebnis für die eigene Installation brauchbar ist.
3. Nutzer müssen die Analyse erlauben
Face Recognition analysiert nicht einfach ungefragt sämtliche Bilder aller Benutzer. In den persönlichen Einstellungen gibt es einen eigenen Bereich für die Gesichtserkennung. Dort kann der Nutzer die Analyse aktivieren und später gefundene Personen verwalten.
Das ist gerade bei einer Mehrbenutzer-Nextcloud wichtig: Gesichtserkennung ist nicht nur ein technisches Feature, sondern verarbeitet biometrisch interessante Informationen. Entsprechend bewusst sollte man die Funktion einsetzen.
4. Hintergrundanalyse sauber planen
Die App ist für einen regelmäßig laufenden Hintergrundjob ausgelegt. Der zentrale Befehl ist heute:
sudo -E -u www-data php /var/www/nextcloud/occ face:background_jobCode-Sprache: JavaScript (javascript)
Auf einem Server mit mehreren CPU-Kernen kann parallel gearbeitet werden:
sudo -E -u www-data php /var/www/nextcloud/occ face:background_job --workers=4Code-Sprache: JavaScript (javascript)
Mehr Worker bedeuten aber auch mehr Speicherverbrauch, weil jeder Worker sein eigenes Modell lädt. Ich würde deshalb klein anfangen und die Last beobachten, statt direkt alle Kerne freizugeben.
5. Fortschritt anzeigen
Statt wie früher anhand irgendwelcher Prozesslisten zu rätseln, gibt es inzwischen einen eigenen Fortschrittsbefehl:
sudo -E -u www-data php /var/www/nextcloud/occ face:progressCode-Sprache: JavaScript (javascript)
Für eine Zusammenfassung von Bildern, Gesichtern und Personen gibt es außerdem:
sudo -E -u www-data php /var/www/nextcloud/occ face:statsCode-Sprache: JavaScript (javascript)
Alben nach Personen synchronisieren
Die App kann erkannte Personen auch mit der Nextcloud-Fotos-App verknüpfen. Dafür existiert inzwischen:
sudo -E -u www-data php /var/www/nextcloud/occ face:sync-albumsCode-Sprache: JavaScript (javascript)
Das ist deutlich näher an dem, was man von modernen Fotoverwaltungen kennt, als die sehr frühe Version der App, über die ich ursprünglich geschrieben hatte.
Serverlast nicht unterschätzen
Gesichtserkennung kann eine Menge Rechenzeit fressen. Besonders der erste Durchlauf über eine große Bildersammlung ist kein Job, den ich ungeplant zur Mittagszeit starten würde. Sinnvoller ist ein Zeitfenster, in dem der Server wenig genutzt wird.
Auch das restliche Nextcloud-Setup sollte sauber laufen. Für das normale Memory Caching habe ich meinen Artikel Nextcloud mit Redis und APCu beschleunigen aktualisiert.
Datenschutz nicht vergessen
Der große Charme dieser Lösung ist für mich weiterhin, dass die Bilder auf der eigenen Nextcloud bleiben. Trotzdem sollte man Gesichtserkennung nicht einfach als gewöhnliches Thumbnail-Plugin betrachten. Wer eine Nextcloud für mehrere Menschen betreibt, sollte transparent machen, dass und wie Gesichtsdaten analysiert werden.
Die allgemeine Absicherung des Servers habe ich hier zusammengefasst: Nextcloud richtig absichern.
Weiterführend: Face Recognition auf GitHub und Face Recognition im Nextcloud App Store.
Wie ist deine Meinung?
Schreib gern einen Kommentar unter dem Artikel oder diskutiere mit anderen im Matrix-Kanal:
#dasnetzundich:matrix.org
… hat dies repostet!
… hat dies repostet!
… hat dies repostet!
… hat dies repostet!
… hat dies repostet!