ebook img

Neuronale Netze und andere Verfahren zur Gesichtserkennung in der Heimautomatisierung PDF

109 Pages·2017·9.47 MB·German
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Neuronale Netze und andere Verfahren zur Gesichtserkennung in der Heimautomatisierung

Masterarbeit zur Erlangung des akademischen Grades Master of Science Studiengang Informatik – Sommersemester 2017– Neuronale Netze und andere Verfahren zur Gesichtserkennung in der Heimautomatisierung von Constantin Kirsch Erstprüfer: Prof.Dr.KarlJonas Zweitprüfer: Prof.Dr.MarlisvonderHude Eingereichtam: 29.August2017 Erklärung HiermiterkläreichanEidesStatt,dassichdievorliegendeArbeitselbstangefertigthabe; die aus fremden Quellen direkt oder indirekt übernommenen Gedanken sind als solche kenntlichgemacht.DieArbeitwurdebisherkeinerPrüfungsbehördevorgelegtundauch nochnichtveröffentlicht. Bonn,den29.August2017 Datum Unterschrift Danksagung AndieserStellemöchteichmichbeiallenPersonenbedanken,diemichbeiderAnfer- tigungdieserAbschlussarbeitunterstütztundmotivierthaben. DieserDankgiltinersterLiniemeinemErstprüferProf.Dr.KarlJonas,derdieseArbeit betreut und ermöglicht hat. Des Weiteren möchte ich den Mitarbeitern und Kommili- tonen im Labor C060 der Hochschule Bonn-Rhein-Sieg danken, welche mir stets mit sinnvollen Tipps weiter geholfen haben und zudem als Versuchspersonen bereit stan- den. Ganz besonders möchte ich auch Aline Augsburg danken, die viel Zeit in die Korrek- tur dieser Arbeit gesteckt und mich unermüdlich motiviert sowie moralisch durch alle Tiefphasenhindurchunterstützthat. Nicht zuletzt danke ich meinen Eltern, dafür das sie mich während meines gesamten Studiumsunterstützthaben. Inhaltsverzeichnis IV Inhaltsverzeichnis Tabellenverzeichnis VI Abbildungsverzeichnis VII Abkürzungsverzeichnis IX 1. Einleitung 1 1.1. Problemstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2. AufbauderArbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Stand der Forschung 3 2.1. MachineLearning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1.1. Lernmethoden . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1.2. Validierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.1.3. EnsembleLearning . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2. DatensätzezurGesichtserkennung . . . . . . . . . . . . . . . . . . . . 8 2.2.1. Vorverarbeitung . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2.2. Augmentierung . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.3. Gesichtsdetektion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3.1. Viola-Jones-Verfahren . . . . . . . . . . . . . . . . . . . . . . 18 2.3.2. HistogramofOrientedGradients . . . . . . . . . . . . . . . . . 20 2.4. VerfahrenzurGesichtserkennung . . . . . . . . . . . . . . . . . . . . . 21 2.4.1. MerkmalbasierteVerfahren . . . . . . . . . . . . . . . . . . . . 22 2.4.2. HolistischeVerfahren . . . . . . . . . . . . . . . . . . . . . . . 23 2.5. NeuronaleNetze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.5.1. ConvolutionalNeuralNetworks . . . . . . . . . . . . . . . . . 35 2.5.2. AktuelleEntwicklung . . . . . . . . . . . . . . . . . . . . . . 38 2.6. Frameworks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 2.6.1. OpenCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 2.6.2. Dlib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 2.6.3. Scikit-Learn. . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 2.6.4. FaceRec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 2.6.5. OpenFace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 2.6.6. Sonstige . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3. Vergleich der Gesichtserkennungsverfahren 43 3.1. Implementierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 3.1.1. Vorverarbeitung . . . . . . . . . . . . . . . . . . . . . . . . . . 44 3.1.2. Augmentierung . . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.1.3. Eigenfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 V 3.1.4. Fisherfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 3.1.5. LocalBinaryPattern . . . . . . . . . . . . . . . . . . . . . . . 49 3.1.6. Dlib-Deskriptor . . . . . . . . . . . . . . . . . . . . . . . . . . 50 3.1.7. Openface-Deskriptor . . . . . . . . . . . . . . . . . . . . . . . 50 3.1.8. VGG19-Deskriptor . . . . . . . . . . . . . . . . . . . . . . . . 51 3.1.9. k-Nearest-Neighbors . . . . . . . . . . . . . . . . . . . . . . . 52 3.1.10. NeuronalesNetz . . . . . . . . . . . . . . . . . . . . . . . . . 53 3.1.11. SupportVectorMachines . . . . . . . . . . . . . . . . . . . . . 53 3.1.12. EinfachesConvolutionalNeuralNetwork . . . . . . . . . . . . 55 3.1.13. AbgestimmtesConvolutionalNeuralNetwork . . . . . . . . . . 56 3.2. AusgewählteDatensätze . . . . . . . . . . . . . . . . . . . . . . . . . 57 3.2.1. H-BRSHaut-,Gesichts-undFälschungsdatenbank . . . . . . . 57 3.2.2. Labordatensatz . . . . . . . . . . . . . . . . . . . . . . . . . . 58 3.3. BeschreibungderTestreihe . . . . . . . . . . . . . . . . . . . . . . . . 58 3.4. VorbereitungenundAnnahmenfürdieTestreihe . . . . . . . . . . . . . 60 3.5. DurchführungderTestreihe . . . . . . . . . . . . . . . . . . . . . . . . 62 3.6. Auswertung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 3.6.1. Kombinationsverfahren . . . . . . . . . . . . . . . . . . . . . . 63 3.6.2. All-In-One-Verfahren . . . . . . . . . . . . . . . . . . . . . . . 71 3.6.3. AbschließenderVergleichderVerfahren . . . . . . . . . . . . . 74 3.7. Auswahl/Begründung . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 4. Implementierung des Prototyps 76 4.1. AnforderungenandenPrototyp. . . . . . . . . . . . . . . . . . . . . . 76 4.2. UmsetzungdesPrototyps . . . . . . . . . . . . . . . . . . . . . . . . . 78 5. Zusammenfassung und Ausblick 84 Literaturverzeichnis 88 A. Anhang 97 A.1. PrototypStandardkonfiguration . . . . . . . . . . . . . . . . . . . . . . 97 A.2. REST-API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 A.3. Prototyp-Oberfläche . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 Tabellenverzeichnis VI Tabellenverzeichnis 1. ZuvergleichendeVerfahren . . . . . . . . . . . . . . . . . . . . . . . . 43 2. DurchRastersucheermittelteSVM-Parameter . . . . . . . . . . . . . . 54 3. AnforderungenandenPrototyp. . . . . . . . . . . . . . . . . . . . . . 77 Abbildungsverzeichnis VII Abbildungsverzeichnis 1. BeispielausdemAT&T-Datensatz. . . . . . . . . . . . . . . . . . . . . 9 2. BeispielausderPIE-Datenbank . . . . . . . . . . . . . . . . . . . . . 9 3. BeispielausderHaut-,Gesichts-undFälschungsdatenbank . . . . . . . 11 4. BeispielfürRegeleinerwissensbasiertenGesichtsdetektion . . . . . . . 15 5. MerkmaleausViola-Jones-Verfahren . . . . . . . . . . . . . . . . . . . 18 6. VisualisierungderGradientenhistogramme . . . . . . . . . . . . . . . 20 7. AblaufderGesichtserkennung . . . . . . . . . . . . . . . . . . . . . . 22 8. Darstellungdes„FaceSpace“-Unterraum . . . . . . . . . . . . . . . . 25 9. DarstellungeinesLocalBinaryPatterns . . . . . . . . . . . . . . . . . 27 10. DarstellungeinerHyperebene . . . . . . . . . . . . . . . . . . . . . . 28 11. DarstellungeinesNeurons . . . . . . . . . . . . . . . . . . . . . . . . 30 12. Vergleichvonein-undmehrschichtigenNetzwerken . . . . . . . . . . 31 13. Aktivierungsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . 33 14. Gradientenabstieg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 15. LokalesrezeptivesFeld . . . . . . . . . . . . . . . . . . . . . . . . . . 36 16. FeatureMaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 17. Pooling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 18. BeispieldarstellungCNN . . . . . . . . . . . . . . . . . . . . . . . . . 38 19. UnterschiedderBounding-Boxes . . . . . . . . . . . . . . . . . . . . . 45 20. DatenverarbeitungsschrittefürTests . . . . . . . . . . . . . . . . . . . 46 21. Beispielfüreine3-facheAugmentierung. . . . . . . . . . . . . . . . . 48 22. SchematischerÜberblickvonOpenface . . . . . . . . . . . . . . . . . 51 23. TopologievonVGG19 . . . . . . . . . . . . . . . . . . . . . . . . . . 52 24. TopologiedesneuronalenNetzeszurKlassifizierung . . . . . . . . . . 54 25. TopologiedeseinfachenCNN . . . . . . . . . . . . . . . . . . . . . . 55 26. TopologiedesabgestimmtenCNN . . . . . . . . . . . . . . . . . . . . 56 27. GenauigkeitderKombinationsverfahren . . . . . . . . . . . . . . . . . 64 28. GenauigkeitderKombinationsverfahrenabhängigzurDatenmenge . . . 65 29. GenauigkeitderKlassifiziererabhängigzurDatenmenge . . . . . . . . 66 30. TrainingsdauerKlassifiziererabhängigvonFE . . . . . . . . . . . . . . 67 31. TrainingsdauerKlassifizierergetrenntnachDatensatz . . . . . . . . . . 68 32. DurchlaufzeitenderFEs . . . . . . . . . . . . . . . . . . . . . . . . . 68 33. DurchlaufzeitenderKlassifizierer . . . . . . . . . . . . . . . . . . . . 69 34. TukeyHSDfürFEs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 35. TukeyHSDfürKlassifizierer . . . . . . . . . . . . . . . . . . . . . . . 70 36. GenauigkeitAIO-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . 71 37. GenauigkeitAIO-VerfahrenabhängigzurDatenmenge . . . . . . . . . 72 Abbildungsverzeichnis VIII 38. TrainingsdauerAIO-Verfahren . . . . . . . . . . . . . . . . . . . . . . 72 39. KlassifizierungsdauerAIO-Verfahren . . . . . . . . . . . . . . . . . . 73 40. TukeyHSDfürAbschlussvergleich . . . . . . . . . . . . . . . . . . . . 74 41. Datenbankmodell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 42. ScreenshotderGalerie-Übersicht . . . . . . . . . . . . . . . . . . . . . 99 43. ScreenshotderLive-Ansicht . . . . . . . . . . . . . . . . . . . . . . . 99 44. ScreenshotbisherigeKlassifizierungen . . . . . . . . . . . . . . . . . . 100 45. ScreenshotderModellübersicht . . . . . . . . . . . . . . . . . . . . . 100 Abkürzungsverzeichnis IX Abkürzungsverzeichnis AI ArtificialIntelligence AIO AllInOne API ApplicationProgrammingInterface AR AugmentedReality BRSU Bonn-Rhine-SiegUniversity CNN ConvolutionalNeuralNetwork CPU CentralProcessingUnit FE FeatureExtractor FERET FacialRecognitionTechnology GPU GraphicsProcessingUnit HOG HistogramofOrientedGradients HSD HonestlySignificantDifference ILSVRC ImageNetLargeScaleVisualRecognitionChallenge JPG JointPhotographicExpertsGroup kNN k-Nearest-Neighbors LBP LocalBinaryPattern LDA LinearDiscriminantAnalysis LFW LabeledFacesintheWild MLP MultiLayerPerceptron n.a. nichtanwendbar ORM ObjectRelationalMapper PCA PrincipalComponentAnalysis PIE Pose,Illumination,andExpression ReLU RectifiedLinearUnit REST REpresentationalStateTransfer RGB Rot-Grün-Blau SGD StochasticGradientDescent SLP SingleLayerPerceptron SVD SingularValueDecomposition SVM SupportVectorMachine URL UniformResourceLocator Einleitung 1 1. Einleitung Die Fähigkeit einzelne Gesichter erkennen und unterscheiden zu können, ist für die meisten Menschen etwas vollkommen Alltägliches und Unbewusstes. Um Systeme zu entwickeln, die ebenfalls zur Gesichtserkennung in der Lage sind, war jahrzehntelange Forschung nötig, welche noch nicht abgeschlossen ist. Dabei wurden die biologischen Abläufe im Gehirn untersucht und diese als Inspiration zur Entwicklung von Verfahren zurGesichtserkennunggenutzt.HeutzutagenutzendigitalePlattformensowieBehörden und Unternehmen automatische Gesichtserkennungssysteme für eine Vielzahl an Zwe- cken. Dazu gehören die Identifizierung und Verifikation an Geldautomaten, Flughäfen, Gebäuden, gegenüber Banken und viele weitere Anwendungszwecke [1]. Anbieter sol- cher Dienste haben dabei die Möglichkeit, auf umfangreiche Gesichtsdatenbanken und stetig wachsende Rechenleistung zuzugreifen. Beides war lange Zeit ein limitierender Faktor für eine effiziente Gesichtserkennung. Auch heute sind dies die Hauptgründe, welcheeineNutzungdieserTechnologieimprivatenUmfelderschweren.DieHeimau- tomatisierung verbreitet sich aufgrund geringer Kosten und einfacher Nutzung immer mehrundstelltdamiteinenperfektenRahmenzurEinbindungvonGesichtserkennungs- systemendar.EssindzudemautomatischeZugangssystemedenkbar,welchedasGesicht einer Person als biometrisches Merkmal nutzen, da es einige Vorteile gegenüber bishe- rigen biometrischen Merkmalen wie Fingerabdrücke und Iris besitzt [1]. Bis die dabei entstehenden Hindernisse überwunden sind, gibt es dennoch Anreize, eine automati- sche Gesichtserkennung in der Heimautomatisierung zu ermöglichen. Bewohner könn- ten über eintreffende Gäste informiert werden oder auch erfahren, ob sich unbekannte Personen vor der Tür befinden. Ein solches System würde nicht nur Komfort bieten. Menschen,dieältersindoderunterbestimmtenKrankheitenleiden,könnenSchwierig- keitenhaben,Personenzuerkennenundzuunterscheiden.FürdieseMenschensteigert eineautomatischeGesichtserkennung,seiesvorderHaustüroderimAlltag,dieLebens- qualität,ermöglichtmehrSelbstständigkeitundbietetSicherheit. 1.1. Problemstellung Diese Arbeit befasst sich mit der Frage, ob mit heutigen Möglichkeiten eine automa- tische Gesichtserkennung, also ohne menschliche Interaktion, in der Heimautomatisie- rungmöglichist.ÜblicherweisesinddafürgroßeMengenanDatenundRechenleistung nötig.FortschritteimBereichderneuronalenNetze,sowieimmergünstigereundschnel- ler werdende Rechnersysteme könnten eine Umsetzung dennoch ermöglichen. Zudem besteht für private Wohnräume nicht der Anspruch, beliebig große Mengen an Perso- nen zu erkennen. Viele Dienstleister stellen Schnittstellen im Internet bereit, um eine

Description:
LBP. Local Binary Pattern. LDA. Linear Discriminant Analysis. LFW . nologien zu verstehen, erfolgt in diesem Kapitel eine Einführung in den face detection. (FD) feature extraction. (FE) face recognition. (FR) [65] Y. Lecun, L. Bottou, Y. Bengio, and P. Haffner, “Gradient-based learning applied
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.