M U LT I K A M E R A P E R S O N E N L O K A L I S I E R U N G I N I N T E L L I G E N T E N U M G E B U N G E N steve brischke

M U LT I K A M E R A P E R S O N E N L O K A L I S I E R U N G I N INTELLIGENTEN UMGEBUNGEN steve brischke Diplomarbeit Fakultät für Informatik Muste...
Author: Swen Richter
1 downloads 2 Views 7MB Size
M U LT I K A M E R A P E R S O N E N L O K A L I S I E R U N G I N INTELLIGENTEN UMGEBUNGEN steve brischke

Diplomarbeit Fakultät für Informatik Mustererkennung in eingebetteten Systemen Lehrstuhl XII Technische Universität Dortmund

Steve Brischke Multikamera Personenlokalisierung in intelligenten Umgebungen Diplomarbeit

gutachter: Dipl.-Inf. Axel Plinge Prof. Dr.-Ing. Gernot A. Fink

Kurzbeschreibung

Die Detektion und Lokalisierung von Personen in intelligenten Umgebungen ist für viele praktische Anwendungen, wie z. B. nicht-invasiven Bedienkonzepten, relevant. Als typisches Szenario seien hier Gespräche in Konferenzräumen genannt, in denen neben einem sitzenden Publikum meist aktive Sprecher oder Vortragende anwesend sind. Es wurden zwei Verfahren entwickelt und evaluiert, welche die Lokalisierung von Personen in einer intelligenten Umgebung realisieren. Unter Verwendung mehrerer, verteilter Kameraperspektiven und auf histograms of oriented gradients basierenden Merkmalen werden die einzelnen Personendetektionen fusioniert und im Raum positioniert. Die Lokalisierung wurde zum Einen mittels Triangulierung von Projektionsgeraden und zum Anderen anhand der Rückprojektion der Detektionen in den Raum unter Verwendung normalverteiler Dichtefunktionen umgesetzt. Das Gesamtsystem wurde auf Aufnahmen von Sequenzen realer Gruppengesprächen evaluiert. Das Ergebnis ist ein robustes System, welches Personen in intelligenten Umgebungen mit hoher Präzision lokalisiert. Diese Lokalisierungsergebnisse stellen die Grundlage für die Entwicklung nahtlos integrierter Benutzersteuerungen in intelligenten Konferenzräumen dar.

Abstract

Detecting and Localizing people in smart environments is important for many applications, like non-invasive user interfaces. A typical situation for example is a conference room containing an audience and active speakers or presenters. Two methods for solving the localization task in intelligent environments were developed and evaluated. Using multiple, distributed camera perspectives, a person detector based on histograms of oriented gradients as feature vectors classifies image regions as persons, which are fused into positions in space. Localization was implemented using two approaches. The first method uses projective geometry and triangulation to estimate positions. The second approach projects all detections back into space using Gaussian distributions. The overall system was evaluated on simulated sequences as well as realistic group discussions. This resulted into a robust system that is able to precisely localize people in smart environments. These locations are the basis for the development of seamless user interfaces in intelligent conference rooms.

i

I N H A LT S V E R Z E I C H N I S 1

einleitung 1 1.1 Zielsetzung 1 1.2 Aufbau der Arbeit 2 2 hintergrund 3 2.1 Support Vector Machines 3 2.1.1 VC-Dimension 3 2.1.2 Trainingsphase 5 2.1.3 nichtlinear trennbare Trainingsmenge 5 2.2 Gradienten 6 2.3 Histogramme 6 2.4 Farbräume 7 2.5 Morphologisches Filtern 7 2.6 Multikamera projektive Geometrie 8 2.6.1 Pinhole-Kameramodell 8 2.6.2 3D-Rekonstruktion 9 3 verwandte arbeiten 11 3.1 funkbasierte Personendetektion 12 3.1.1 Abstandsmessung 12 3.1.2 RSS Profiling Measurements 13 3.1.3 passive Verfahren 14 3.1.4 Bewertung funkbasierter Lokalisierung 14 3.2 bildbasierte Personendetektion 14 3.2.1 Detektion basierend auf Silhouetten 15 3.2.2 Verformbare Teilmodelle 17 3.2.3 Optischer Fluss 20 3.2.4 Background Subtraction 22 3.2.5 Bewertung bildbasierter Personendetektion 22 3.3 Multikamera Personenlokalisierung 23 3.3.1 Assoziation von Detektionen 23 3.3.2 Stereo-Kameras im Easy-Living-Projekt 25 3.3.3 Multi-View 28 3.3.4 Optischer Fluss 30 3.3.5 Bewertung bildbasierter Lokalisierung 32 3.4 Fazit 32 4 methode 33 4.1 Überblick 33 4.2 Versuchsraum und Bildaufnahme 34 4.3 Personendetektion 36 4.3.1 HOG-Detektor 36 4.3.2 Background Subtraction 37 4.4 Lokalisierung mittels Geradenschnitten 39 4.4.1 Rückprojektion 39 4.4.2 Assoziation 40 4.4.3 Triangulierung 42 4.5 Lokalisierung mittels probabilistischer Rückprojektion 42 4.5.1 Rückprojektion 43 4.5.2 Fusion 45 4.5.3 Finden lokaler Maxima 46 4.6 Gesamtsystem 46

iii

5

evaluierung 49 5.1 Datensätze 49 5.1.1 Annotation 49 5.1.2 positive Trainingsdaten 50 5.1.3 negative Beispiele 50 5.1.4 Validierungsdaten 51 5.1.5 Testdaten 51 5.1.6 Testsequenz Lokalisierung 51 5.2 Metrik 52 5.2.1 Korrektheit einer Detektion 52 5.2.2 Receiver Operating Characteristic 53 5.2.3 Qualität der Lokalisierungen im Raum 55 5.2.4 Korrektheit einer farbbasierten Assoziation 56 5.2.5 Korrektheit einer räumlichen Assoziation 57 5.3 Personendetektion 57 5.3.1 Größe der Detektionsfenster 57 5.3.2 SVM-Kernel: linear vs. radiale Basisfunktion 58 5.3.3 Einfluss der Plausibilitätsprüfung 60 5.3.4 Wahl des Schwellenwertes 61 5.3.5 Zusammenfassung Personendetektion 62 5.4 Assoziation 63 5.4.1 Farbhistogramme 63 5.4.2 Räumliche Assoziation 64 5.4.3 Bewertung 65 5.5 Lokalisierung 65 5.5.1 Geradenschnitt mit ungewichtetem Mittelwert 65 5.5.2 Geradenschnitt mit gewichtetem Mittelwert 66 5.5.3 probabilistische Rückprojektion 67 5.5.4 Einfluss der Anzahl detektierender Kameras 68 5.6 Gesamtsystem 68 5.6.1 Personendetektion im finalen System 68 5.6.2 Lokalisierung im finalen System 69 6 fazit 71 6.1 Zusammenfassung 71 6.2 Ausblick 72 6.2.1 Multimodale Detektion 72 6.2.2 Wiedererkennen von Personen 72 6.2.3 Gestengesteuerte Präsentationen 73 6.2.4 Sprecherverfolgung mittels Audiolokalisierung 73 verzeichnisse 74 Abbildungsverzeichnis 74 Tabellenverzeichnis 77 Literaturverzeichnis 78

iv

inhaltsverzeichnis

ABKÜRZUNGEN UND AKRONYME AUC

area under curve

AVP

Average Precision

CHIL

Computers in the Human Interaction Loop

FINCA

a Flexible, Intelligent eNvironment with Computational Augmentation

FPR

False Positive Rate

fps

Einzelbilder pro Sekunde (frames per second)

HOG

histogram of oriented gradients (Histogramm orientierter Gradienten)

IRF

Institut für Roboterforschung

KDE

Kerndichteschätzung (Kernel Density Estimation)

OpenCV

Open Source Computer Vision. Bibliothek für Computer Vision und Machine Learning

PCA

Principal Components Analysis (Hauptachsentransformation)

RBF

Radiale Basisfunktion

ROC

Receiver Operation Characteristics

RSS

Received Signal Strength

SVM

Support Vector Machine

TOA

Time Of Arrival

TPR

True Positive Rate

VISCA

Video System Control Architecture

abkürzungen und akronyme

v

N O TAT I O N r

ein Skalar

a

ein Vektor ( x0 , . . . xn−1 ) T

A

eine Matrix

x (t) xn

ein Folgenwert

k·k

Euklidischer Abstand

(·)T

Transposition

N (µ, σ)

vi

eine kontinuierliche Funktion

notation

Normalverteilung mit Mittelwert µ und Standardabweichung σ

1

EINLEITUNG

Scheinbar mühelos gelingt es einem Menschen, zahllose Objekte zu klassifizieren. In Bruchteilen von Sekunden können komplexe Szenen erfasst und die vorhandenen Elemente erkannt werden. Auch Personen sind schnell erkannt und können leicht unterschieden sowie identifiziert werden. Diese kognitiven Fähigkeiten auf Maschinen zu übertragen, ist das Ziel der Forschung im Bereich des Maschinellen Sehens bzw. der Computer Vision.

kognitive Fähigkeiten des Menschen

Gesehene Personen oder allgemeiner Objekte können durch die Verarbeitung der Bilder beider Augen im Gehirn einer räumlichen Tiefe zugeordnet werden. Für diese Fähigkeit ist es essentiell, dass der Sehapparat aus zwei Augen besteht. Schließt der Mensch ein Auge, so ist diese Fähigkeit nur noch eingeschränkt vorhanden. Die disparate Tiefeninformation einer Szene geht bei der Abbildung mit einer Kamera analog verloren und kann nicht ohne Weiteres rekonstruiert werden. Durch den Einsatz mindestens zweier verteilter Perspektiven kann die Position eines in beiden Kameras sichtbaren Punktes im Raum rekonstruiert werden.

räumliches Sehen

In der modernen Welt spielt das Ubiquitous Computing, also die Allgegenwärtigkeit von Computern eine immer wichtigere Rolle, weshalb neue, nichtinvasive Benutzeroberflächen und Interaktionsmöglichkeiten weiter an Bedeutung gewinnen. Die Bedienung eines intelligenten Konferenzraums, in dem verschiedene Tätigkeiten ohne die Verwendung eines Eingabegeräts durchgeführt werden können, ist ein Beispiel für die Integration neuer Benutzerschnittstellen. Vorträge und Videokonferenzen lassen sich mit Videokameras aufzeichnen, wobei z. B. ein optimaler Ausschnitt aus verschiedenen Blickwinkeln oder eine Fokussierung anhand der Position eines aktiven Sprechers im Raum ausgewählt wird. Auch ist es denkbar, dass eine Präsentation mittels Gesten von einem Vortragenden, der sich in einem entsprechend ausgezeichneten Präsentationsbereich befindet, gesteuert wird.

Ubiquitous Computing

Zur Realisierung solcher Bedienkonzepte ist die Detektion und die Lokalisierung von Personen ein essentieller Schritt. Wie kann dies in einer intelligenten Umgebung durch den Einsatz verteilter Kameras umgesetzt werden?

Akteure erkennen

1.1

neue Formen der Interaktion

zielsetzung

Zur Lösung dieser Problemstellung werden vier, an der Decke des intelligenten Konferenzraums der FINCA1 montierte, dreh-, neig- und zoombare Kameras eingesetzt. Vor der eigentlichen Lokalisierung muss die Anwesenheit von Personen in den einzelnen Kamerabildern detektiert werden. Hierzu wird in den vier Perspektiven je ein Personendetektor eingesetzt, der Personen anhand von Intensitätsänderungen entlang ihrer Silhouette klassifiziert. Die gefundenen Bildbereiche der Detektion sollen auf ihre Zugehörigkeit zum Vordergrund mittels background subtraction überprüft und Fehldetektionen somit eliminiert werden.

1 a Flexible, Intelligent eNvironment with Computational Augmentation

1

Personendetektion in Bildern

Pers tika

Mul alisi nlok nten one llige en ung inte geb Um von e chk e Bris Stev k gilt Dan ner r, erer h mei ond Pete Bes rlich aucoline des Car rend natü ndin wäh es tzt Freu mich Jahr rstü die letzten unte los ngs :-* ingu hat. bed

a g in mer erun

Multikamera Personenlokalisierung in intelligenten Umgebungen von Steve Brischke Vielen Dank an Axel Plinge für die beste Betreuung, die sich ein Student nur wünschen kann.

Abbildung 1: Schematische Darstellung eines realen Vortragszenarios, in dem eine der drei Personen aktiv in der FINCA präsentiert. Die Positionen der vier deckenmontierten Kameras sind ebenfalls dargestellt.

Fusion der Perspektiven

Anschließend werden die einzelnen Detektionen der vier Kameraperspektiven fusioniert. Bei diesem Schritt werden zwei Verfahren zur Assoziation der gefundenen Bildbereiche untersucht. Der erste Ansatz vergleicht die Ähnlichkeit auf Basis der Verteilung von Farben in den relevanten Regionen. Bei diesem Vergleich wird die Minimierung des Einfluss des Hintergrunds durch die Gewichtung der entsprechenden Farben untersucht. Der zweite Ansatz ist geometrischer Natur. Hierbei werden Detektionen anhand ihres geschätzten Abstands zu den entsprechenden Kameras im Schnittpunkt ihrer Projektionsgeraden assoziiert.

Lokalisierung im Raum

Für die Lokalisierung werden ebenfalls zwei Verfahren untersucht. Zum Einen werden die Detektionen durch Triangulierung auf der Grundlage der projektiven Geometrie im Raum positioniert und zum Anderen wird eine Rückprojektion der in den Bildern gefundenen Personen in den Raum mittels normalverteilter Wahrscheinlichlichkeitsdichten für die Positionsbestimmung durchgeführt.

Evaluierung auf realen Daten

Zur Optimierung der Parameter der einzelnen Module werden während des Entwicklungsprozesses verschiedene Aufnahmen von Szenarien im intelligenten Konferenzraum der FINCA verwendet. Das Gesamtsystem wird abschließend auf Aufnahmen realer Gruppengespräche getestet und evaluiert. 1.2

aufbau der arbeit

Die vorliegende Arbeit gliedert sich in sechs Kapitel. Nachdem in der Einleitung die Motivation und zentrale Problemstellung beschrieben wurde, wird im zweiten Kapitel grundlegendes Wissen, welches zum Verständnis dieser Arbeit beiträgt, dargestellt. Nachfolgend werden verwandte Arbeiten vorgestellt, denen die gleiche oder eine ähnliche Aufgabenstellung zu Grunde liegt. Auf dieser Basis wird anschließend die umgesetzte Methodik im vierten Kapitel beschrieben. Die durchgeführten Experimente und Ergebnisse der Evaluierung beschreibt Kapitel fünf. Ein Fazit sowie ein Ausblick auf mögliche Erweiterungen schließen diese Arbeit ab.

2

einleitung

2

HINTERGRUND

Im folgenden Kapitel werden grundlegende Begriffe aus den Bereichen Mustererkennung und digitale Bildverarbeitung erläutert, die zum Verständnis der vorliegenden Arbeit beitragen. Das Kapitel gliedert sich in fünf Abschnitte. Zuerst wird die Klassifikation von Merkmalsvektoren durch den Einsatz von support vector machines (2.1) eingegangen. Danach werden in den folgenden Abschnitten die Themen Gradientenberechnung (2.2), Histogramme (2.3), Farbräume (2.4) sowie morphologisches Filtern (2.5) erörtert. Abschließend werden Grundlagen zur projektiven Geometrie sowie der 3DRekonstruktion mit verteilten Kameraperspektiven (2.6) dargestellt. 2.1

support vector machines

Die Unterteilung einer Eingabemenge von Objekten, die durch Merkmalsvektoren charakterisiert sind, in Klassen nennt sich in der Mustererkennung Klassifikation. Ein Klassifikationsverfahren zur Lösung von Zwei-KlassenProblemen bieten support vector machines (SVM) [Nie83]. Hierbei wird eine Trainingsmenge aus Merkmalsvektoren in zwei disjunkte Klassen eingeteilt, deren Stichprobenelemente für eine positive Klasse mit +1 sowie eine negative Klasse mit -1 markiert sind. In der Trainingsphase wird eine orientierte Hyperebene mittels quadratischer Optimierung gesucht, die die Stichprobe möglichst optimal linear im Merkmalsraum trennt. Die Beschränkung auf ein Zwei-Klassen-Problem ergibt sich aus dieser linearen Trennung, kann jedoch durch verschiedene kaskadierende Ansätze auf n Klassen verallgemeinert werden. Für eine möglichst gute Generalisierungsfähigkeit, also neue Eingabevektoren korrekt klassifizieren zu können, wird die Trennebene so trainiert, dass der Abstand zu allen Trainingsdaten maximal ist. Die Vektoren, die auf dem Rand des so zwischen den Klassen aufgespannten Korridors liegen, werden Stützvektoren (engl. support vectors) genannt. Diese Stützvektoren definieren die Trennfunktion. In der Klassifikationsphase werden zu klassifizierende Vektoren anhand ihrer Lage bezüglich der Trennebene in die entsprechenden Klassen eingeordnet. Beim Einsatz von SVMs zur Klassifikation „wird hier ausdrücklich der Einfluss einer endlichen Stichprobe berücksichtigt“ [Nie83, Kapitel 4.3]. Die Grundlage dafür ist die Vapnik-Chervonenkis-Dimension (VC-Dimension). 2.1.1

Kapitelinhalt

Merkmalsvektoren

Training

Klassifikation

VC-Dimension

Im Allgemeinen basieren Klassifikationsansätze auf der Minimierung des Klassifikationsrisikos bei gegebener Stichprobe, wobei in der Regel eine unbekannte Verteilungsfunktion P(c, y) der Merkmalsvektoren, die statistisch unabhängig aus ihrer Grundgesamtheit entnommen werden, vorliegt. Sei

3

Stichprobe

Abbildung 2: Trennung zweier linear separierbarer Klassen ω1 und ω2 durch eine optimale Hyperebene H* und eine schlechte H’ [Nie83]

zur Klassifikation eines Merkmalsvektors c eine Menge von Trennfunktionen T = {da (c)} mit dem Parametervektor a gegeben, so ergibt sich V (da (c)) = Klassifikationsrisiko empirisches Risiko

strukturelles Risiko

VC-Dimension

4

1 |da (c) − y|dP(c, y) 2

(1)

als das mittlere Klassifikationsrisiko mit Klasse y. Da die Verteilungsfunktion P(c, y) nicht bekannt ist, kann V (da (c)) durch das mittlere, empirische Risiko Ve (da ) =

Endlichkeit der Stichprobe

Z

1 N

N

1

∑ 2 | d a (cs ) − y s |

(2)

s =1

für eine Stichprobe der Größe N abgeschätzt werden. Die Verwendung von Ve (da ) stellt bei großen Stichproben kein Problem dar, jedoch folgt aus kleinen Stichproben eine schlechte Generalisierungsfähigkeit, also die Fähigkeit unbekannte Merkmalsvektoren gut zu klassifizieren. Bei kleinen Trainingsmengen wird das tatsächliche Klassifikationsrisiko V (da (c)) größer als das empirische Ve (da ) sein. Der Unterschied zwischen diesen beiden Größen wird durch das strukturelle Risiko s   ν h(log ( 2N h log ν h ) + 1) − log 4 φ , = (3) N N N abgeschätzt. Die VC-Dimension h gibt für ein Zweiklassenproblem die maximale Anzahl Muster an, die bei gegebener Trennfunktion in alle möglichen 2h Partitionen zerlegt werden können.

hintergrund

Daraus folgt die Abschätzung des Risikos für jede Trennfunktion da und N > h mit der Wahrscheinlichkeit 1 − ν als:   h log ν V (da ) ≤ Ve (da ) + φ , (4) N N Die support vector machine arbeitet so, dass die Abschätzung des empirischen Risikos Ve (da ) minimiert wird. 2.1.2

Trainingsphase

Für die spezielle Trennfunktion der orientierten Hyperebenen da (c) = cT a + a0 , mit a =

a0

orientierte Hyperebenen

!

a

(5)

gilt h = n + 1 im Rn . Bei dieser orientierten Trennfunktion kann die Lage eines Merkmalsvektors c eindeutig bezüglich der Ebene bestimmt werden. Beim Training einer SVM wird die annotierte Stichprobe f zweier Klassen von Merkmalsvektoren c gegeben durch f = {(ci , yi )} mit i = 1 . . . N und yi ∈ {−1, +1} exakt mit einer Hyperebene in positive und negative getrennt, dass gilt: ciT a + a0 ≥ +1, wenn yi = +1

(6)

ciT a + a0 ≥ −1, wenn yi = −1.

(7)

lineare Trennung der Stichprobe

und

Die optimale Hyperebene wird durch Lösung eines Optimierungsproblems unter Nebenbedingungen gefunden. Das zu optimierende Kriterium ist dabei die Breite des Korridors zwischen den Trainingsmengen unter der Nebenbedingung, dass sich alle Stichprobenelemente auf der jeweiligen korrekten Seite der Hyperebene befinden. Für weitere Details zur Lösung des Optimierungsproblems sei an [Nie83, Kapitel 4.4.3] verwiesen. 2.1.3

Optimierung unter Nebenbedingungen

nichtlinear trennbare Trainingsmenge

Ist die Stichprobe nicht linear separierbar, so kann die Bedingung, dass zwischen den beiden Ebenen, die den Korridor aufspannen kein Stichprobenelement vorliegen darf, durch den Einsatz von slack-Variablen abgeschwächt werden. Dabei fließen die slack-Variablen mit einer Gewichtung C in das Optimierungsproblem mit ein. Für die Bestimmung von C existiert keine geschlossene Lösung. Der Parameter lässt sich über eine Rastersuche bestimmen. Ebenfalls kann durch eine Transformation der Merkmalsvektoren in einen höherdimensionalen Raum eine lineare Trennung möglich sein. Mit einer geeigneten Kernelfunktion φ wird anstelle einer Trennebene d = cT a + a0 wird die nichtlineare Trennfunktion d0 = φ(c) T a0 + a00 verwendet. Geeignete Kernelfunktionen sind zum Beispiel Polynome von verschiedenem Grad sowie radiale Basisfunktionen mit denen sich komplexe Trennfunktionen bilden lassen.

2.1 support vector machines

soft margin

Kernelfunktion

5

2.2

partielle Ableitung

Betrag

gradienten

Gradienten werden unter Anderem dazu eingesetzt, um in digitalen Bildern Änderungen der lokalen Intensität darzustellen und somit z. B. Bildkanten zu detektieren. Ein Intensitätsgradient ist ein Vektor, welcher in die Richtung der größten Intensitätsänderung eines Pixels ( x, y) in einem Bild f zeigt (vgl. [GW01]). Er ist mit den partiellen Ableitung in x- und y-Richtung definiert als ! ! ∂f gx ∂x ∇f = = ∂f . (8) gy ∂y Der Vektor ∇ f steht orthogonal auf den Bildkanten in f . Aus dem Gradienten lassen sich sogenannte Kantenbilder erzeugen, in dem der Betrag M ( x, y) =

Orientierung

q

g2x + gy2

(9)

und die Orientierung   gy φ( x, y) = tan−1 gx

(10)

bestimmt werden. M( x, y) und φ( x, y) sind wiederum Bilder gleicher Größe, wie das Eingabebild f . Gradientenapproximation

Die Berechnung der Gradienten erfolgt in der Praxis mit Gradientenoperatoren, welche die partielle Ableitung anhand der Pixelnachbarschaft approximieren. Eine einfache Methode die erste Ableitung diskret zu bestimmen, ist z. B. f 0 ( x ) = f ( x + 1) − f ( x − 1) bzw. f 0 (y) = f (y + 1) − f (y − 1) .

(11)

Gebäuchlich sind Filtermasken, wie zum Beispiel der Sobel-Operator, welcher zwei Masken Sx sowie Sy – jeweils eine für die x- und y-Richtung – einsetzt. Damit ergibt sich die Filterantwort g als diskrete Faltung des Eingabebilds f mit einem Filter h der Größe m × n, wobei m = 2a + 1 und n = 2b + 1 aus:

1 0 -1 Sx: 2 0 -2 1 0 -1

a

1 2 1 S y: 0 0 0 -1 -2 -1

g(m, n) =



b



h(u, v) f (m + u, n + v)

(12)

u=(− a) v=(−b)

Diese 3 × 3 Masken des Sobel-Operators haben durch die Gewichtung der einzelnen Filterelemente eine glättende Wirkung und sind daher nicht so anfällig gegenüber Bildrauschen, was sich als hochfrequente Intensitätsänderungen darstellt. 2.3

histogramme

Eine anschauliche Form der Darstellung von Bildinformationen sind Farboder Intensitätshistogramme (vgl. z. B. [GW01, Wah84]). Ein Histogramm eines digitalen Bildes ist eine diskrete Funktion, welche die Verteilung vorkommender Intensitätswerte darstellt. Für ein 8-bit Graustufenbild mit einem Wertebereich von I = {0, 1, . . . , 255} wird durch Abzählen aller im Bild

6

hintergrund

(

M −1 N −1

h (i ) =

∑ ∑

δ( f (m, n) − i ), mit δ(ξ ) =

m =0 n =0

1,

für ξ = 0

0,

sonst

h(i)

vorkommenden Pixel mit der Intensität i ∈ I ein Intensitätshistogramm erzeugt. Sei ein Intensitätswert mit l bits darstellbar, so kann ein Bildpunkt f (m, n) in einem M × N großen Bild L = 2l verschiedene Messwerte annehmen. Das zugehörige Intensitätshistogramm ergibt sich als (13)

i

für alle i = 0, 1, . . . , L − 1. In Histogrammen lassen sich nicht nur Farbinformationen kompakt darstellen sondern auch komplexere Informationen wie Gradientenorientierungen. Dazu wird ein Kreis in äquidistante Abschnitte, genannt bins unterteilt. Nach der Berechnung der Orientierungen, werden diese in die bins geeignet diskretisiert und analog zum Vorgehen bei den Intensitätshistogrammen aufsummiert. 2.4

Gradientenhistogramme

farbräume

Farbräume können als standardisierte Modelle zur Darstellung von Farbinformationen angesehen werden. Jeder Punkt in dem spezifizierten Koordinatensystem des Farbraums stellt eine Farbe dar (vgl. [GW01]). Das wohl bekannteste ist das RGB-Modell, welches z. B. bei Computermonitoren oder Fernsehern eingesetzt wir. Die Farben setzen sich hier additiv durch die drei Grundfarben Rot, Grün und Blau zusammen. Die Farbdarstellung im RGB-Modell lässt sich in den HSV-Farbraum transformieren. Hier orientiert sich die Farbkomposition daran, wie Menschen Farben anhand von Farbwert (hue) , Sättigung (saturation) und der Helligkeitswert (value) beschreiben. Ein Unterschied zwischen dem HSV und dem RGB-Modell ist, dass die Helligkeitskomponente von den Farbinformationen entkoppelt ist, was eine unbhängige Betrachtung zulässt. Im Rahmen dieser Arbeit wird der HSV-Farbraum verwendet, um Detektionsbereiche möglichst unabhängig von der Beleuchtungssituation miteinander zu vergleichen. Dies wird durch die Vernachlässigung der V-Komponente erreicht.

RGB

HSV

Für weiterführende Informationen zur Konvertierung der verschiedenen Farbräume sowie deren Anwendungen in der Bildverarbeitung sei auf [GW01] verwiesen. 2.5

morphologisches filtern

Zwei grundlegende morphologische Bildoperationen sind Erosion und Dilation (vgl. [GW01]). In binären Eingabebildern werden nachfolgend Mengen betrachtet, deren Elemente aus Z2 stammen. Das bedeutet, jedes Element besteht aus dem Tupel ( x, y) der Bildpunkte, die den Wert 1 annehmen. Seien nun zwei Mengen A und B aus Z2 , so ist die Erosion definiert durch:

A B = {z| Bz ⊆ A}

Erosion

(14)

Das bedeutet, die Erosion von A und B ist die Menge aller Punkte z für die gilt, dass Bz in A enthalten ist. B wird Strukturelement genannt, welches alle

2.4 farbräume

7

Abbildung 3: Morphologisches Filtern, links: ein Eingabebild, rechts: nach Anwendung der morphologischen Operation Closing mit einem rechteckigen Strukturelement, feine Strukturen wurden entfernt

Koordinaten z ∈ A durchläuft. Erosion kann als Filter für Objekte in binären Bildern, die kleiner als das Strukturelement sind, betrachtet werden. Dilation

Im Gegensatz dazu erweitert die Dilation vorhandene Strukturen. Eine der einfachsten Anwendungen ist das Schließen von kleinen Löchern oder Brücken in binären Eingabebildern. Die Dilation zweier Mengen A und B aus Z2 ist definiert durch: A ⊕ B = {z| Bˆ z ∩ A 6= ∅}

(15)

Mit anderen Worten ist die Dilation die Menge aller Verschiebungen z, so dass Bˆ und A sich in mindestens einem Element überdecken. Opening

Durch die Verknüpfung der beiden Operationen resultiert das sogenannte Opening als A ◦ B = ( A B) ⊕ B. Das Opening eliminiert kleine Verbindungsbrücken sowie Ausbuchtungen von Objekten im binären Eingabebild. Im Rahmen dieser Arbeit wird diese Funktion verwendet, um das binäre Eingabebild im Rahmen der Plausibilitätsprüfung bei der Personendetektion zu verbessern. Für weitere morphologische Operationen und ihre Anwendungen sei an dieser Stelle auf [GW01] verwiesen. 2.6

Verlust der Tiefeninformation

Rekonstruktion durch mehrere Perspektiven

Durch Aufnahmen mit einer Kamera lassen sich dreidimensionale Szenen auf eine zweidimensionale Bildebene projizieren. Bei dieser Projektion gehen jedoch Tiefeninformationen verloren, so dass eine Rückprojektion der Bildebene in den Raum nicht ohne Weiteres möglich ist. Wird eine Szene mit mehreren Kameras aus verschiedenen, sich überlappenden Blickwinkeln aufgenommen, so ist es möglich die Szene zu rekonstruieren. Hierzu müssen jedoch die Parameter der Kameras sowie deren Position im Raum bekannt sein (vgl. [HZ04]). 2.6.1

PinholeKameramodell

8

multikamera projektive geometrie

Pinhole-Kameramodell

Grundlage für die Projektion und Rekonstruktion bildet das sogenannte Pinhole-Kameramodell. Bei der Bildaufnahme mit diesem Kameramodell han-

hintergrund

Y

X

y X x x Kamerazentrum C

optische Achse Z

Fokus F

n be

e

lde Bi

Abbildung 4: Pinhole-Kameramodell mit Kamerazentrum C und Fokus F im Mittelpunkt der Bildebene welche im Abstand f von C plaziert ist

delt es sich um eine zentrale Projektion p: R3 → R2 mit einer unendlich kleinen, idealen Blende, die das Zentrum C eines euklidischen Koordinatensystems darstellt. Idealisiert verläuft der Lichstrahl eines Szenenpunkts durch die Lochblende und trifft in einem Punkt auf eine Bildebene Z mit dem Abstand f zur Blende. Durch die Punktsymmetrie der Projektion kann die Bildebene zur vereinfachten Darstellung vor der Kamera positioniert werden. Sei x0 = [ X, Y, Z ] T ein Punkt im Raum in Weltkoordinaten. Dieser Punkt x0 wird auf die Koordinaten ( f X/Z, f Y/Z ) T in der Bildebene abgebildet. Durch die Darstellung der Welt- und Bildkoordinaten durch homogene Vektoren ergibt sich für die zentrale Projektion als lineare Abbildung:      X   f fX    Y    →  f Y  = 0      Z Z 0 1

0 f 0

  X 0 0    Y    0 0   Z 1 0 1 

(16)

Mit der 3 × 4-Matrix als Projektionsmatrix P kann verkürzt x = P x0 geschrieben werden. Für die Details zur Berechnung von P sei auf [HZ04, Kapitel 7] verwiesen. 2.6.2

zentrale Projektion

Kalibrierung

3D-Rekonstruktion

Unter 3D-Rekonstruktion versteht man die Konstruktion einer dreidimensionalen Szene aus Einzelbildern. Bei der linearen Abbildung einer Weltkoordinate auf die Bildebene, verläuft eine Projektionslinie ausgehend vom Szenenpunkt x0 durch die Blende der Kamera und schneidet die Bildebene in x. Durch diese Projektion gehen die Tiefeninformationen verloren, weshalb sich dieser Prozess nur bedingt umkehren lässt. Das bedeutet bei der Rückprojektion in den Raum bei gegebenem Bildpunkt x liegt der Punkt x0

2.6 multikamera projektive geometrie

R2 → R3

Triangulierung

9

s

x x'

C C'

Abbildung 5: Ideale Triangulierung: Die Projektionslinien ausgehend von den Kamerazentren C und C 0 verlaufen durch die Punkte x und x 0 in der Bildebene und schneiden sich in genau einem Punkt s im Raum, der die 3D-Rekonstruktion des Punktes X darstellt auf einer Geraden ausgehend vom Zentrum der Kamera durch den Punkt x in der Bildebene. Unter der Betrachtung der Bilder aus mindestens zwei Kameraperspektiven mit sich überlappenden Sichtfeldern, schneiden sich die rückprojizierten Geraden der Kameras durch den gleichen Bildpunkt in den jeweiligen Bildebenen in einem Punkt s im Raum. Dieser Schnittpunkt ist im idealisierten Fall die Rekonstruktion des Bildpunkts in Weltkoordinaten.

10

hintergrund

3

V E R WA N D T E A R B E I T E N

Die Detektion und Lokalisierung von Personen ist seit vielen Jahren ein Gebiet intensiver Forschung in der Computer Vision [Gav99]. Für viele praktische Anwendungen ist es erforderlich, Personen zu detektieren und deren Position in einer realen Umgebung zu bestimmen. Beispiele sind z. B. im Automobilbereich in intelligenten Fahrzeugen [EG09, KEG11], zum Ermöglichen eines sicheren Arbeitsumfelds für Personen, die mit Robotern oder Maschinen zusammenarbeiten [EH02], aber auch zu Überwachungszwecken. Nicht zuletzt ist die Personenlokalisierung für erweiterte Benutzeroberflächen und Interaktion in Multimedia-Anwendung relevant, wie Microsofts Kinect oder im Bereich von Videokonferenzen, in denen zum Beispiel eine Person identifiziert und mit einer Kamera fokussiert werden soll [Gav99].

Anwendungsgebiete Personenlokalisierung

Die Lokalisierung von Personen oder verallgemeinert von Objekten ist die Ermittlung der Position des betrachteten Objekts in seiner realen Umgebung. Nach [DCC12] kann zwischen Außen- und Innenbereichen unterschieden werden, da bestimmte Verfahren für die verschiedenen Einsatzbereiche besser oder schlechter geeignet bzw. nicht anwendbar sind. Weiter lässt sich die Lokalisierung in funk- und bildbasierte Verfahren einteilen, wobei funkbasiert in diesem Fall bedeutet, dass eine elektronische Vorrichtung an dem zu positionierenden Objekt angebracht wird, welche Informationen bzw. Signale sendet, welche die Lokalisierung unterstützen. Im Unterschied dazu stehen die bildbasierten Verfahren, bei denen die Position eines Objekts allein durch die Auswertung von statischen Einzelbildern oder einer Videosequenz bestimmt wird.

Kategorisierung von Verfahren zum Finden von Personen

Da das Szenario dieser Arbeit die Einschränkung auf den Innenbereich zulässt, werden hier nur Verfahren zur Anwendung im Innenbereich betrachtet. Dies schließt bestimmte Ansätze aus, wie etwa das Global Positioning System (GPS), welches heute in vielen mobilen Geräten und Smartphones Anwendung findet. Die Übertragung dieses Verfahrens auf den Innenbereich ist aufgrund der fehlenden aber notwendigen Sichtbeziehung zu Satelliten und der daraus resultierenden schwachen Signalstärke eher ungeeignet (vgl. [DCC12]).

Einschränkung auf Innenbereich

Eine robuste Lokalisierung in einer intelligenten Umgebung ist notwendig, um die Möglichkeit zu schaffen mit der Technik des Raums zu interagieren. Zum Beispiel wurden in [KHM+ 00] verschiedene Spiele und Interaktionsmöglichkeiten mittels Lokalisierung umgesetzt, wie das Starten einer DVD, wenn eine Person auf der im Raum befindlichen Couch sitzt oder die positionsabhängige Steuerung der Beleuchtung.

Interaktionsmöglichkeiten

In diesem Kapitel wird ein Überblick über die verschiedenen Arbeiten im Bereich funkbasierter (3.1) und bildbasierte (3.2) Personendetektion gegeben werden, bevor auf die Assoziation und Fusion von Detektionen in Multikamerasystemen (3.3) eingegangen wird. Den Abschluss des Kapitels bildet ein Fazit (3.4) im Kontext dieser Arbeit.

Kapitelaufbau

11

3.1

funkbasierte personendetektion

verschiedene Signalarten

Es existieren viele Verfahren, welche es vorsehen, dass eine zu positionierende Person ein elektronisches Gerät oder ein tag bei sich trägt, das Signale überträgt, die durch eine verarbeitende Schnittstelle zur Lokalisierung verwendet werden. Hierbei kommen verschiedene Arten von Signalen zum Einsatz, wie unter anderem Licht (Infrarot [WHFaG92]), Schall (Ultraschall [HHS+ 99]) oder Radiofrequenzen (RFID [ZWXJ13], [SN11], Bluetooth [Cha09]) sowie deren Kombination in hybriden Systemen (Infrarot, Ultraschall [PCB00]).

Inhalt

Bei diesen Verfahren werden zur Positionsbestimmung Abstandsmessungen zwischen dem aktiven Sender und einem passiven Empfangsgerät durchgeführt, um Hypothesen für die Position des Senders zu bestimmen. Im nachfolgenden wird auf die verschiedenen eingesetzten Verfahren zur Bestimmung des Abstands eingegangen, bevor zum Abschluss des Abschnitts kurz auf passive, funkbasierte Verfahren zur Personenlokalisierung eingegangen wird. 3.1.1

Abstandsmessung

Verfahren zur Abstandsbestimmung

Bei den funkbasierten Verfahren zur Positionsbestimmung, werden verschiedene Ansätze zur Abstandsbestimmung des Senders zum Empfänger, wie zum Beispiel Time Of Arrival (TOA) oder Received Signal Strength (RSS) eingesetzt [MFA07].

Signallaufzeit

time of arrival Bei Time Of Arrival Verfahren wird die Distanz zwischen Sender und Empfänger anhand der Signallaufzeit bestimmt, wobei zwei Ansätze verfolgt werden können.

one-way propagation time

Der erste Ansatz misst die Differenz zwischen dem Senden des Signals durch den Sender und dem Zeitpunkt des Empfangs am Empfänger. Aus der Differenz der beiden Zeiten wird die Laufzeit des Signals bestimmt. Hier besteht die Schwierigkeit in der Synchronisation zwischen beiden messenden Einheiten mit sich (engl. one-way propagation time), da die zu messenden Zeiten sehr kurz sind.

round trip propagation time

Dieses Problem wird beim zweiten Verfahren umgangen, da nur eine Zeitmessung durchgeführt wird. Es wird die Zeit gemessen, die ein Signal benötigt, um zum Empfänger und von dort zurück zum Sender gesendet zu werden (engl. round trip propagation time). Die Hauptfehlerquelle bei diesem Ansatz ist die Verzögerung, die bei der Verarbeitung des Signals beim Empfänger auftritt. Diese muss entweder a priori bekannt sein oder während des Verarbeitens gemessen, zurückgesendet und von der gesamten Verarbeitungsdauer subtrahiert werden.

hybrider Ansatz

Priyantha et al. haben das „Cricket Location-Support System“ entwickelt, welches die Notwendigkeit einer Synchronisation der Uhren auf Sender- und Empfängerseite umgeht [PCB00]. Dieser hybride Ansatz basiert auf der Tatsache, dass die Schallgeschwindigkeit viel kleiner als die Lichtgeschwindigkeit ist. Hierbei kommen Radiowellen und Ultraschall zum Einsatz, welche gleichzeitig zum Zeitpunkt einer Übertragung gesendet werden. Der Impuls der Radiowellen kommt dabei weit vor dem des Ultraschalls an, wobei aus

12

verwandte arbeiten

Abbildung 6: Handsender des 3D Ultraschall Lokalisierungssystems Bat System, einer Weiterentwicklung des infrarot-basierten Systems Active Badges (Quelle: http://www.cl.cam.ac.uk/ research/dtg/attarchive/bat)

der Zeitdifferenz zwischen den beiden Ereignissen die Signallaufzeit des Ultraschallimpulses abgeschätzt wird. received signal strength Diese Technik basiert auf einer Kennzahl, die in vielen WLAN-Geräten bereits implementiert ist, dem Received Signal Strength Indicator (RSSI) und wird unter anderem von Ni et al. [NLLP03] verwendet. Diese Kennzahl stellt die empfangene Signalstärke eines ausgesendeten Signals am Empfänger dar, woraus sich der Abstand zum Sender ableiten lässt.

RSS-Indikator

Nach erfolgter Richtungs- bzw. Abstandsbestimmung der Signalquelle zum Empfänger, lässt sich mittels Trilateration bzw. Triangulierung der Ursprung des Signals schätzen. Hierbei stützt sich die Trilateration auf Schnitte von Kreisen mit den jeweiligen Radien des gemessenen Abstands, wobei mindestens drei Werte aus unterschiedlichen Messpunkten vorliegen müssen, um eine eindeutige Postion bestimmen zu können. Bei der Triangulierung werden Geraden, die vom Messpunkt mit dem ermittelten Winkel ausgehen, geschnitten. Ausreichend sind bei dieser Methode zwei Messungen zur Lokalisierung (vgl. Abschnitt 2.6.2).

Positionsbestimmung

3.1.2

X

X

X

RSS Profiling Measurements

Einzelne RSS-Messungen lassen sich in einem RSS-Profil der zu betrachtenden Umgebung darstellen. Hierzu wird das RSS-Profil entweder a priori durch Messungen im Vorfeld [BP00] oder zur Laufzeit durch Sensoren an bekannten Positionen ermittelt [KKJ+ 04]. Neben aktiv sendenden Quellen (Ankerknoten) werden viele Empfänger (sogenannte sniffing devices) im zu untersuchenden Bereich verteilt. An diesen sniffing devices werden Vektoren

3.1 funkbasierte personendetektion

RSS-Modellierung

13

System

Genauigkeit

Reichweite

Signal

Active Badge [WHFaG92]

7 cm

5m

Infrarot

Cricket [PCB00]

2 cm

10 m

Ultraschall

LANDMARC [NLLP03]

1-2 m

50 m

RF

Tabelle 1: Leistungsfähigkeit ausgewählter aktiver Lokalisierungsverfahren nach [KY10]

von Signalstärken gemessen, wobei die i-te Position im Vektor die Signalstärke des zugehörigen i-ten Ankerknoten repräsentiert. Durch die Kombination aller Vektoren wird eine Karte der untersuchten Umgebung erstellt. Dieses so gewonnene RSS-Modell wird zentral gespeichert und die Position jedes nicht-Ankerknoten kann durch RSS-Messungen an den Ankerknoten mit Bezug zum RSS-Modell geschätzt werden. 3.1.3 passive, funkbasierte Verfahren

Im Gegensatz zu aktiven Verfahren trägt eine Person bei einem passiven Ansatz keine elektronischen Sender zur Positionsbestimmung bei sich. In der Literatur finden sich auch funkbasierte passive Verfahren, welche Änderungen in der Signalstärke innerhalb einer definierten Testumgebung auswerten und Personen erkennen [YMA07] oder Ansätze, die den Einfluss von Personen auf die Kapazitätsänderung zwischen Transmitter- und Empfängerelektroden zur Detektion und Lokalisierung verwenden [VMV09]. 3.1.4

Lokalisierungsgenauigkeit Grenzen

passive Verfahren

Bewertung funkbasierter Lokalisierung

Ein Vergleich der Leistungsfähigkeit bekannter Umsetzungen aktiver Verfahren, welche auf Abstandsmessungen zwischen Sender und Empfänger basieren, findet sich in Tabelle 1. Der größte Nachteil aktiver Lokalisierungsverfahren ist, dass immer ein Sender an der zu lokalisierenden Person zur Positionsbestimmung angebracht sein muss. Die hier betrachteten Szenarien lassen es nicht immer zu, jede Person mit einem solchen Sender auszustatten. Das Ziel ist ein minimal-invasives Verfahren zu entwickeln, welches ohne spürbaren Eingriff in die Situation Personen lokalisiert. 3.2

bildbasierte personendetektion

Der Fokus soll im Hinblick auf die umgesetzte Methode auf bildbasierte Verfahren gerichtet werden, wobei eine vorherige Detektion von Personen in einzelnen Eingabebildern die Grundlage für die anschließende Lokalisierung ist. Nachfolgend sollen verschiedene bildbasierte Detektoren für Personen diskutiert werden. Definition

Kategorisierung der Verfahren

14

Die Aufgabe der bildbasierten Detektion ist das Auffinden von Personen in statischen Bildern bzw. Videosequenzen aus einer einzelnen Perspektive. Hierzu gehört das Erkennen von Personen und die Markierung der Region durch ein umgebendes Rechteck (engl. bounding box). Die hier diskutierten Ansätze können in Verfahren eingeteilt werden, die auf aus dem Eingabebild extrahierten Merkmalen arbeiten und solche, die eine Vorverarbeitung

verwandte arbeiten

Eingabebild

Gammaund Farbkorrektur

Gradienten berechnen

Histogrammbildung

Blocknormalisierung

Konkatenation der HOGs

Lineare SVM zur Klassifikation

Person / nicht-Person Klassifikation

Abbildung 7: Übersicht der Verarbeitungskette des HOG-basierten Detektors aus [DT05]. Ein Eingabebild wird mit einem gleitenden Detektionsfenster in einem dichten Raster in allen Skalierungen auf Personen untersucht. Jedes Detektionsfenster ist in überlappende Blöcke unterteilt, für die histograms of oriented gradients berechnet werden. Die Konkatenation der blocknormalisierten Merkmalsvektoren bildet die Eingabe für eine lineare SVM, welche die Vektoren in die Klassen Person und nicht-Person klassifiziert.

in Form einer Segmentierung verwenden. Erstere lassen sich noch weiter unterteilen in form-, farb- und bewegungsbasierte Ansätze sowie deren Kombination. Der Rest dieses Abschnitts erläutert zu Beginn exemplarisch vier Verfahren zur Personendetektion in Einzelbildern. Im Anschluss folgt eine Zusammenfassung und Bewertung der Methoden im Kontext dieser Arbeit. 3.2.1

Inhalt

Detektion basierend auf Silhouetten

Eine der herausragendsten Arbeiten ist die Einführung von histograms of oriented gradients (HOG) von Dalal und Triggs [DT05], welche durch nahezu jeden modernen Detektor in einer Variation Verwendung finden [DWSP12].

histograms of oriented gradients

„Large gains came with the adoption of gradient-based features. Inspired by SIFT, Dalal and Triggs popularized histogram of oriented gradient (HOG) features for detection showing substantial gains over intensity based features. [. . . ] Since their introduction, the number of variants of HOG features has proliferated greatly with nearly all modern detectors utilizing them in some form.“ [DWSP12, S. 10] grundidee Die Methode basiert auf der Grundidee, dass die Erscheinungsform von Objekten sich recht gut durch die Verteilung lokaler Intensitätsgradienten, unabhängig von der genauen Position einer Kante, charakterisieren lassen. Hierzu wird das Eingabebild in sogenannte Zellen eingeteilt und für jede dieser Zellen ein Histogramm von Gradientenorientierungen bestimmt. Diese werden anschließend zur Reduktion von Einflüssen wie Beleuchtungsänderungen und Schatten bezüglich eines größeren Kontextes (sogenannten Blöcken) normalisiert. Diese normalisierten Deskriptorblöcke werden als histogram of oriented gradients (HOG) bezeichnet. Für ein dichtes Netz sich überlappender Blöcke in einem Detektionsfenster werden HOGDeskriptoren ermittelt und die Konkatenation fungiert als Eingabevektor für eine support vector machine (SVM). Diese klassifiziert die Eingabevektoren in die Klassen Person bzw. nicht-Person. Abbildung 7 stellt die komplette Verarbeitungskette des Detektors dar. Dalal und Triggs [DT05] haben ihre Parameter auf der MIT pedestrian database [PP00] und dem selbst erstellten, „significantly more challenging“ [DT05, S. 2] INRIA Datensatz optimiert. Die Parameter des angegebenen Standarddetektors sind Tabelle 2 zu entnehmen.

lokale Gradientenintensitäten

Normalisierung Deskriptor

SVM-Klassifikator

Standardparameter

Nachfolgend werden Details zu den einzelnen Verarbeitungsschritten und den vorgestellten Evaluationergebnissen dargestellt.

3.2 bildbasierte personendetektion

15

Parameter

Wert

Farbraum

RGB ohne Gammakorrektur

Gradientenfilter

[-1,0,1 ] ohne Glättung

Gradienteneinteilung

linear in 9 bins von 0◦ -180◦

Blockgröße

16 x 16 Pixel

Zellgröße

8 x 8 Pixel

Überlappung

8 Pixel

Detektionsfenstergröße

64 x 128 Pixel

SVM

linear

Tabelle 2: Parameter des Standarddetektors aus [DT05]

Vorverarbeitung

umsetzung Der erste Schritt der Vorverarbeitung der Eingabebilder durch Gamma- und Farbkorrektur hat keinen signifikanten Einfluss auf die Qualität des Detektors, was nach Dalal und Triggs darauf zurückgeht, dass die nachfolgende Blocknormalisierung des Deskriptors ähnliche Ergebnisse liefert. Die Reduktion des Farbraums auf Grauwerte verschlechter die Detektionsleistung um 1.5%.

Berechnung der Gradienten

Jedoch hat die Art der Gradientenbestimmung für jeden Pixel einer Zelle einen großen Einfluss auf die Güte des Detektors. Die besten Ergebnisse werden mit symmetrischen Gradientenbestimmung mittels einfachen [−1, 0, 1]Masken ohne Glättung erreicht. In Farbbildern werden die Gradienten für jeden Kanal bestimmt, wobei derjenige mit der größten Norm für den betrachteten Pixel gewählt wird. Größere Masken verschlechtern das Ergebnis genauso wie die Glättung mit einem Gauß-Kernel um bis zu 9%.

Sortierung in bins

Der nächste Schritt ist die gewichtete Einteilung der berechneten Gradienten in verschiedene Orientierungen, wobei die verwendeten Histogrammbins gleich über 180◦ oder 360◦ verteilt werden können. Die Richtung der Gradienten kann jedoch vernachlässigt werden, weshalb eine Einteilung in 180◦ ausreichend ist. Der Anteil eines Gradienten am Histogramm ist seine Länge, welche bilinear auf benachbarte bins aufgeteilt wird. Die Experimente in [DT05] zeigen, dass die Ergebnisse bis 9 bins signifikant ansteigen, aber darüber hinaus nur noch kleine Verbesserungen erreicht werden.

Blocknormalisierung

Die durch Konkatenation gebildeten HOG-Deskriptoren werden anschließend normalisiert, um Änderungen der Beleuchtungsintensität oder des Hintergrunds und damit einhergehende Schwankungen der Gradientenstärke zu kompensieren. Hierzu werden Gruppen von Zellen in größere Blöcke eingeteilt, um den Kontrast innerhalb jedes Blocks zu normalisieren. Durch die Überlappung der Blöcke werden Zellen im Kontext unterschiedlicher Blöcke normalisiert, was zu verbesserten Ergebnissen führt. Es wurden verschiedene Normalisierungen evaluiert, wobei die L2-norm neben anderen gute Ergebnisse liefert. Im Detail: Sei v ein nicht normalisierter Deskriptorvektor und ||v || p seine p-norm. Mit p = 2, einer kleinen Konstante e und der L2-norm folgt aus vn = q

v

||v ||22 + e2

(17)

der normalisierte Deskriptorvektor vn . Werden anschließend alle Werte von vn auf einen maximalen Wert (hier: 0,2) begrenzt und anschließend erneut

16

verwandte arbeiten

Abbildung 8: Visualisierung des HOG-Detektors: (a) Gemitteltes Gradientenbild über alle Trainingsdaten (b,c) Darstellung der positiven bzw. negativen SVM-Gewichte jedes Blocks (d) Ein Eingabebild aus dem Trainingsset (e) HOG-Deskriptor dieses Eingabebilds (f,g) Mit positiven bzw. negativen SVM-Gewichten gewichteter HOG-Deskriptor (Quelle: [DT05])

normalisiert, so erhält man die L2-Hysterese. Es zeigte sich, dass sich die Wahl von e nicht entscheidend auf die Detektionsergebnisse auswirkt. Eine detailliertere Untersuchung weiterer Normalisierungen sowohl für rechteckige als auch kreisförmige Blockgeometrien finden sich in [DT05, Kapitel 6.4]. Die Größe des Detektionsfensters kann je nach Szenario und Eingabebildern variieren. Dalal und Triggs haben für ihren Datensatz 64 x 128 Pixel große Trainingsbilder mit ca. 16 Pixeln umgebenden Kontext an allen vier Seiten einer Person gewählt. Der Kontext spielt eine signifikante Rolle für das Detektionsergebnis. So wird eine Verschlechterung um 6% bei der Verringerung des umgebenden Bereichs von 16 auf 8 Pixel genannt.

Parameter des Detektionsfensters

Zur Klassifikation der Deskriptoren wurde eine lineare SVM mit slackVariablen (soft margin mit C = 0, 01) trainiert (s. Abschnitt 2.1.3). Die Verwendung eines Gauß-Kernels hat die Klassifikationsleistung um 3% auf Kosten der Laufzeit erhöht.

soft margin SVM

Die Detektionsleistung des Standarddetektors wird mit 89% bei 10−4 Fehlalarmen pro Fenster angegeben. Die Verarbeitungsgeschwindigkeit beträgt dabei weniger als eine Sekunde bei einem Eingabebild mit den Dimensionen 320 x 240 Pixel (4000 Detektionsfenster).

Ergebnisse

Der hier vorgestellte Detektor wurde für komplett sichtbare, aufrecht stehende Personen entwickelt und evaluiert. Aus Sicht von Dalal und Triggs kann durch die Verwendung von „parts based models“ eine Verbesserung der Detektionen in verallgemeinerten Szenarien erfolgen [DT05, Kapitel 7]. Felzenszwalb et al. verfolgen einen Ansatz, der unter anderem den hier vorgestellten Detektor um weitere Detektoren und Modelle erweitert. Diese Arbeit soll im nächsten Abschnitt näher beleuchtet werden.

Grenzen

3.2.2

Verformbare Teilmodelle

Sind Dalal und Triggs in ihrer Arbeit noch von aufrecht stehenden Fußgängern ausgegangen, so wollen Felzenszwalb et al. [FGMR10] die Tatsache in Betracht ziehen, dass Personen und allgemein Objekte nicht immer die gleiche Form und Farbe haben. Diese Variationen resultieren nicht nur aus

3.2 bildbasierte personendetektion

hohe Variabilität von Objekten

17

Abbildung 9: Oben: Detektionen aus einem Personenmodell, bestehend aus einem groben root-Filter (a), mehreren höher aufgelösten Teilfiltern (b) und einem Kostenmodell für die Position der Teilfilter. Abbildung aus [FGMR10]

Beleuchtungsänderungen oder Änderungen des Blickwinkels, sondern auch zum Beispiel aus unterschiedlichen Posen, die eine Person einnehmen kann. Felzenszwalb et al. stellen ein Verfahren vor, dass variable Objekte mittels mixtures of multiscale deformable part models erkennt. Kombination von root- und Teilfiltern

grundidee Die Grundidee ist, einen auf HOG-Deskriptoren basierenden, sogenannten root-Filter zu verwenden und diesen mit höher aufgelösten Teilfiltern zu ergänzen. Die Filterantworten (scores) an verschiedenen Positionen und Skalierungen des Eingabebilds werden mit einem Deformationsmodell gewichtet, welches die Abweichung der Antworten der Teilfilter relativ zum root-Filter berücksichtigt. Die Teilfilter wurden hier mit doppelt so hoher Auflösung wie der zugehörige root-Filter modelliert.

star-Filter zur Objektkategorisierung

Diese so gebildeten sternförmigen Filter (engl. star-Filter) werden zu Objektkategorien zusammengefasst. Am Beispiel eines Fahrrads zeigt Abbildung 10 ein zwei Komponenten-Modell bestehend aus einer seitlichen und frontalen Ansicht. Zur Klassifikation wird eine latente SVM eingesetzt, wobei der verborgene Zustand die Spezifikation der Objektkonfiguration ist.

Berechnung einer Merkmalskarte

umsetzung Alle verwendeten Modelle werden als Filteroperationen angesehen, die auf Merkmalsvektoren angewandt werden. Hierzu werden für ein dichtes Raster von Positionen im Bild modifizierte HOG-Deskriptoren berechnet, woraus die sogenannte Merkmalskarte, die lokale Bildausschnitte beschreibt, entsteht. Ein Filter wird hier als Matrix von Gewichtsvektoren definiert, wobei die Gewichtsvektoren die gleiche Dimension wie die Merk-

Filteroperation

18

verwandte arbeiten

Abbildung 10: Oben: Detektionen aus einem Fahrrad-Modell bestehend aus zwei Komponenten, zur Modellierung der frontalen und seitlichen Ansicht. Das Modell lässt sich so verformen, dass auch das Fahren auf dem Hinerrad abgebildet werden kann. Abbildung aus [FGMR10]

malsvektoren aufweisen. Die Filterantwort F an der Position ( x, y) in der Merkmalskarte G ist die diskrete Faltung des Filters H mit einem Teilfenster der Merkmalskarte mit der oberen, linken Ecke an ( x, y) (vgl. Abschnitt 2.2). Um an verschiedenen Positionen und in verschiedenen Skalierungen Filterantworten zu berechnen, werden Merkmalspyramiden eingesetzt. Hierzu wird das Eingabebild wiederholt geglättet und unterabgetastet, um anschließend für jede Ebene eine Merkmalskarte zu berechnen. Diese Datenstruktur wird als Merkmalspyramide bezeichnet.

Merkmalspyramide

Für einen Filter F mit den Dimensionen w × h und gegebener Merkmalspyramide H ergibt sich die Filterantwort an Position p = ( x, y, l ) in der Ebene l von H als F 0 · φ( H, p, w, h), wobei F 0 die zeilenweise Konkatenation der Filterkoeffizienten und φ( H, p, w, h) die zeilenweise Konkatenation der Merkmale von H an Position p mit der Größe w × h ist.

Filterantwort

Zur Detektion wird durch den grob aufgelösten root-Filter die Position des Detektionsfensters festgelegt. Anschließend werden die höher aufgelösten Teilfilter auf der Ebene der Merkmalskarte ausgewertet, die der doppelten Auflösung der Ebene des root-Filters entspricht.

von grob zu fein

Die Modelle für ein Objekt bestehen aus dem Tupel ( F0 , P1 , . . . , Pn , b), wobei F0 den root-Filter und Pi die Teilfilter repräsentieren sowie b ein reeller Bias-Term ist. Die Teilfilter Pi bestehen aus dem Tupel ( Fi , vi , di ), wobei Fi den Filter beschreibt, vi ein zweidimensionaler Ankerpunkt relativ zum rootFilter ist und di die vier Koeffizienten einer quadratischen Funktion für die Abweichungskosten einer Positionierung relativ zum Ankerknoten darstellen.

Objektmodelle

3.2 bildbasierte personendetektion

19

Filterantworten der Objekthypothese

Die Filterantwort einer Objekthypothese z = ( p0 , . . . , pn ), die die Positionen pi = ( xi , yi , li ) aller Filter i aller Ebenen l eines Modells in der Merkmalspyramide beinhaltet, berechnet sich aus den scores der einzelnen Filter an ihren Positionen abzüglich der Abweichungskosten, welche sich aus der Positionierung relativ zum root-Filter ergeben, und dem Bias-Term b, also: score( p0 , . . . , pn ) =

Abweichungskosten

n

n

i =0

i =1

∑ Fi0 · φ( H, pi , w, h) − ∑ di · φd (dxi , dyi ) + b

(18)

mit der Abweichung des i-ten Teilfilters vom Ankerknoten

(dxi , dyi ) = ( xi , yi ) − (2( x0 , y0 ) + vi )

(19)

φd (dxi , dyi ) = (dx, dy, dx2 , dy2 ).

(20)

und

Bias

kombinierter Score

Der Bias-Term b wird verwendet, um die Vergleichbarkeit zwischen den Modellen herzustellen, wenn diese in einem Mehrkomponenten-Modell kombiniert werden. Zur Dektektion wird ein kombinierter Wert

score( p0 ) = max score( p0 , . . . , pn ) p1 ,...,pn

(21)

an der Position des root-Filters berechnet, wobei ein hoher Wert eine positive Detektion darstellt. MehrkomponentenModell

Zur Kombination mehrerer Komponenten werden die Modellparameter konkateniert und die Filterantworten aller Komponenten unabhängig voneinander wie oben beschrieben ausgewertet. Weitere Details zum Training der Modelle oder zur Modifikation der HOG-Deskriptoren mittels principal components analysis (PCA) zur Dimensionsreduktion finden sich in [FGMR10].

Ergebnis

Zur Evaluierung des Systems zur Personenerkennung wurde ein Einkomponentenmodell auf dem INRIA Datensatz [DT05] trainiert und ausgewertet. Felzenszwalb et al. geben eine Detektionsrate von 86, 9% an. Zum Vergleich erreichen Dalal und Triggs eine Detektionsrate von 89% auf dem gleichen Datensatz. Nicht nur über das Erscheinungsbild lassen sich Personen charakterisieren und detektieren, sondern auch über deren Bewegung im Raum. Im folgenden Abschnitt soll ein Ansatz vorgestellt werden, der ein Verfolgen von Personen mit mehreren Kameras in einer intelligenten Umgebung umsetzt und die Detektion über den optischen Fluss realisiert. 3.2.3

Tracking anhand des optischen Flusses

20

Optischer Fluss

Tsutsui et al. [TMS01] entwickelten einen Ansatz zur Verfolgung von Personen in einer, mit mehreren Kameras ausgestatteten Umgebung, um Probleme mit Überdeckung durch Einrichtungsgegenstände und der damit verbunden Problematik, dass Personen sich dann nicht mehr detektieren lassen, zu lösen. Dabei verfolgt jede Kamera unabhängig voneinander Personen im

verwandte arbeiten

Durchschni�licher Fluss

Prediction-Fenster ähnlich zum durchschni�lichen Fluss

1

2

3

4

durchschni�lichen Fluss berechnen Umrandung aller ähnlichen Flussrichtungen mit neuem Tracking-Fenster

Suchbereich

Abbildung 11: Tracking mittels Optical Flow. (1): Verschiebung des Tracking-Fensters um durchschnittlichen Fluss, (2): Berechnung des durchschnittlichen Flusses, (3): Auffinden von Pixeln mit ähnlichem optischen Fluss wie der durchschnittliche Fluss, (4): Markierung der gefundenen Pixel mit neuem Tracking-Fenster. Nach [TMS01]

Raum. Verliert eine Kamera eine Detektion, so erhält diese Perspektive Informationen über die Bewegungsgeschwindigkeit und Position, um die Person erneut zu finden. Basierend auf der Annahme, dass die Bewegungen in einer Sequenz gleichförmig sind, wird der optische Fluss unter Verwendung mehrerer orientierter Gauß-Filter bestimmt [CSA93]. Ein Objekt soll mit einer bounding box markiert und verfolgt werden.

Berechnung mittels orientierter Gauß-Filter

Bewegt sich ein Objekt in den Sichtbereich einer Kamera, so wird dieses als Ziel angenommen und die Region mit ausreichend Flussvektoren mit einem Tracking-Fenster markiert. Im nächsten Bild wird das Tracking-Fenster um den durchschnittlichen optischen Fluss verschoben, welches nun Prediction-Fenster genannt wird und dessen durchschnittlicher Fluss wiederum berechnet wird. Alle Pixel im Prediction-Fenster, die einen Fluss ähnlich dem durchschnittliche Fluss aufweisen, werden mit dem neuen Tracking-Fenster umgeben. Abbildung 11 stellt den Ablauf grafisch dar. In Abschnitt 3.3.4 wird diese Arbeit noch einmal aufgegriffen, um die Fusion verschiedener Kameraperspektiven und die Lokalisierung einer Personen mittels Triangulierung und Abstandsschätzung zu betrachten.

Vorgehen beim Tracking

3.2 bildbasierte personendetektion

21

Abbildung 12: Beispiel für background subtraction von links nach rechts: Hintergrundmodell, Eingabebild, background subtraction mit weißer Region als Vordergrundpixel

3.2.4

Grundidee

Hintergrundmodellierung

Klassifikation des Vordergrunds

Background Subtraction

In der Literatur findet sich häufig der Einsatz der background subtraction zur Erkennung von Objekten mit statischen Kameras ([KHM+ 00, AHL+ 08, MMK09, ZALA10]). Die Grundidee ist hierbei, eine Modellierung des Hintergrunds zu realisieren und im laufenden Betrieb aus der Differenz zum Eingabebild eine Segmentierung in Vorder- und Hintergrund zu schätzen [Pic04]. Ein Hintergrund wird dabei auf unterschiedliche Weise erzeugt. Zum Beispiel wird von Wren et al. [WADP97] der Hintergrund unabhängig für jeden Pixel mittels normalverteilter Wahrscheinlichkeitsdichten modelliert. Dabei werden die Parameter (µ, σ) der Dichtefunktion für jeden Pixel ( x, y) aus den letzten n Pixelintensitäten geschätzt. Zum Zeitpunkt t kann eine Pixelintensität It als Vordergrund klassifiziert werden, wenn

| It − µt | > kσt

(22)

erfüllt ist, wobei k ein frei wählbarer Schwellenwert ist. Andernfalls wird der entsprechende Pixel dem Hintergrund zugeordnet. Eine detaillierteres Review von background subtraction-Techniken findet sich in [Pic04]. 3.2.5

Bewertung bildbasierter Personendetektion

weitere Ansätze

Die hier vorgestellte Auswahl an Verfahren zur Personenerkennung lässt sich um weitere Arbeiten ergänzen, welche Gesichtserkennung [LDZG12] oder Sementierung nach Hautfarben [PS07] zur Detektion verwenden. Auch lassen sich verschiedene Verfahren kombinieren. Wang et al. [WCWZ11] zum Beispiel schränken mittels background subtraction den Suchraum für einen HOG-Detektor ein.

Grenzen im Kontext des Szenarios

Im Hinblick auf das hier betrachtete Szenario eines Vortrags oder einer Videokonferenz sind einige Ansätze schlecht anwendbar. Bei Ansätzen, welche sich auf den optischen Fluss zur Detektion stützen, besteht das Problem, dass unter Umständen wenig bis keine Bewegung von den Zuhörern oder passiven Teilnehmern an der Szene ausgeht. Auch kann eine vortragende Person sehr statisch im Raum stehen, so dass eine Detektion aufgrund der Bewegung schlecht zu realisieren ist.

22

verwandte arbeiten

Ähnlich verhält es sich mit der background subtraction. Personen, die sich nicht oder wenig bewegen, können bei einem adaptiven Hintergrundmodell im Laufe der Zeit dem Hintergrund zugeordnet werden und damit aus den Detektionsergebnissen verschwinden. Bei Verfahren, die auf Hautfarben oder Gesichtserkennung basieren, ist es essentiell, dass eine Person das Gesicht zur Kamera gedreht hat. In einer Umgebung mit mehreren Kameras ist dies nicht für alle Perspektiven möglich und beeinträchtigt damit das Detektionsergebnis sowie die angestrebte Lokalisierung negativ. Seit der Einführung des Verfahrens von Dalal und Triggs [DT05] verwenden nahezu alle modernen Detektoren eine Abwandlung der HOG-Deskriptoren [DWSP12]. Für das vorliegende Szenario hat der in der Arbeit ursprünglich vorgestellte Detektor den Nachteil, dass er lediglich bei stehenden, komplett sichtbaren Personen anschlägt. Dies kann aber in einer realen Umgebung mit Einrichtungsgegenständen oder für sitzende Personen nicht vorausgesetzt werden. Das lässt sich jedoch lösen, indem nur die Kopf-SchulterPartie modelliert und detektiert wird, was in der Methodik dieser Arbeit in Kapitel 4 näher dargestellt wird. 3.3

multikamera personenlokalisierung

Nach erfolgreicher Detektion, sollen Personen im Raum lokalisiert werden können, um eventuelle Interaktionen zu ermöglichen. Hierzu werden die Detektionen der verschiedenen Kameraperspektiven fusioniert.

nächster Schritt: Fusion

Bei der Fusion der Detektion mehrerer Personen ergeben sich zwei Teilprobleme. Ein Assoziationsproblem, bei dem die Detektionen in den unterschiedlichen Perspektiven einander zugeordnet werden, und dem der Fusion, bei dem Positionshypothesen aus gegebenen Detektionen bestimmt werden.

Teilprobleme Fusion

Der Rest dieses Abschnitts ist wie folgt aufgebaut. Als erstes wird auf das Assoziationsproblem isoliert eingangen. Es werden zwei Arbeiten vorgestellt, welche die Assoziation anhand verschiedener Merkmale der einzelnen Detektionen lösen. Daran anschließend werden drei Arbeiten vorgestellt, die Personen detektieren und mittels bildbasierter Verfahren im Raum lokalisieren.

Aufbau des Abschnitts

3.3.1

Assoziation von Detektionen

Ziel der Assoziation ist die korrekte Zuordnung der Detektionen über die verschiedenen Perspektiven, wobei in der Literatur unterschiedliche Merkmale Anwendung finden. Nachfolgend werden zwei Ansätze vorgestellt. Die erste Arbeit basiert auf zwei Merkmalen zur Unterscheidung von Personen; der räumlichen Position sowie der Kleidungsfarbe der jeweiligen Personen. Die zweite Arbeit verwendet einen regelbasierten Ansatz, der die Orientierung einer Person zu den Kameras durch den Einsatz einer Gesichtserkennung bestimmt und so nicht plausible Assoziationen ausschließt.

3.3 multikamera personenlokalisierung

23

Abbildung 13: Kamerakonfiguration aus [CHF06]. Eine Person betritt den Sichtbereich von Kamera B und soll einer in Kamera A identifizierten Personen zugeordnet werden.

3.3.1.1

geometische Bedingungen

Geradenschnitt

minimaler Abstand windschiefer Geraden

räumliche Nähe über die Zeit

Assoziation

Räumliche und farbbasierte Assoziation

Cheng et al. [CHF06] schlagen in ihrer Arbeit einen zweistufigen Ansatz vor, um korrespondierende Detektionen in ihrem Multikamera-System über verschiedene Perspektiven zu finden. Es werden ein geometrischer Ansatz sowie ein Vergleich der Kleidungsfarbe eingesetzt. Kalibrierte Kameras mit überlappenden Sichtfeldern, deren pan- und tilt-Werte bekannt sind, kommen hier zum Einsatz. Aus den bekannten Positionen sowie den gegebenen pan- und tilt-Werten können Geradengleichungen für jede Kamera aufgestellt werden. Jede Gerade in Weltkoordinaten2 verläuft dabei vom Zentrum der Linse durch die Koordinaten der Detektion in der Bildebene. Handelt es sich bei den Detektionen um die gleiche Person in verschiedenen Bildebenen, existiert im Idealfall genau ein Schnittpunkt, der die Position der Person darstellt. In realen Detektionen schneiden sich die korrespondierenden Geraden einer Person nicht zwangsläufig und eine Lokalisierung ist nicht möglich, weshalb der minimale Abstand zweier Geraden berechnet wird. Ist dieser Abstand kleiner als ein passender Schwellenwert, der sich zum Beispiel an der tatsächlichen Größe des Kopfes einer Person orientiert, handelt es sich bei den Detektionen um die selbe Person. Eine zweite Bedingung für eine korrekte Assoziation folgt aus der Berechnung der Schnittpunkte in zwei aufeinander folgenden Bildern. Zur Zeit t seien die Koordinaten der Position einer Person ( x, y, z) und zum Zeitpunkt t − 1 seien diese ( x 0 , y0 , z0 ). Bei einer einzelnen Person soll der Abstand zwischen z und z0 minimal sein. Seien nun zum Beispiel zwei Personen im Sichtbereich von Kamera A detektiert. Betritt eine nicht identifizierte Person den Sichtbereich einer zweiten Kamera B, muss diese den beiden in Kamera A identifizierten Personen zu2 Koordinaten in der realen Umgebung, in der eine Detektion lokalisiert werden soll

24

verwandte arbeiten

geordnet werden. Für alle Kombinationen von Geraden in Kamera B durch die neue Person und allen bereits identifizierten Personen in Kamera A werden die beiden Bedingungen für eine korrekte Assoziation ausgewertet. Sind nach der geometrischen Zuordnung noch mehr als eine Person nicht identifiziert, wird die Farbe der Kleidung zur Assoziation verwendet. Der zweite Schritt geht davon aus, dass die Kleidungsfarben von verschiedenen Personen unterschiedlich sind.

3.3.1.2

farbliche Assoziation

Regelbasierte Assoziation

Einen regelbasierten Ansatz wählen Talantzis et al. [TPC08] zur Lösung des Assoziationsproblems in ihrem hybriden System zum Tracking von Personen. Hierbei werden Personen mittels background subtraction aus fünf kalibrierten Kameras (vier in den oberen Ecken des Raumes und eine Panoramaansicht an der Decke) extrahiert. Anschließend wird im oberen Teil der Detektion eine Gesichtserkennung nach Viola und Jones [VJ01] mit trainierten Kaskaden für frontale Ansichten und Perspektiven aus dem Profil angewandt, um die Blickrichtung einer Person zu bestimmen. Es wurden lediglich Ansichten von links trainiert, so dass sich Ansichten von rechts aus der Anwendung des Detektors auf das gespiegelte Eingabebild ergeben. Da eine Person zu einem gegebenen Zeitpunkt im betrachteten Raum nicht gleichzeitig frontal in zwei verteilte Kameraperspektiven schauen kann, lassen sich Regeln zur Assoziation von Detektionen ableiten. In einem ersten Schritt werden frontale Ansichten mit Profilansichten von links zusammengeführt, um anschließend mögliche Kandidaten, die von rechts gesehen werden hinzuzufügen. Dieses Vorgehen verhindert das falsche Assoziieren von linken und rechten Profilansichten. Abbildung 14 zeigt die Assoziationsregeln in einem Ausschnitt des Ablaufdiagramms aus [TPC08].

Personen- und Gesichtserkennung

regelbasierte Assoziation

Ist das Assoziationsproblem gelöst, sollen die verschiedenen Detektionen über alle Kameraperspektiven in Weltkoordinaten fusioniert werden. Im Hinblick auf die Methode, welche in dieser Arbeit entwickelt wurde, werden nachfolgend drei Verfahren dargestellt, die eine bildbasierte Detektion und Lokalisierung in einer Multikamera-Umgebung verfolgen. 3.3.2

Stereo-Kameras im Easy-Living-Projekt

Krumm et al. [KHM+ 00] verwenden zwei Stereokameras, welche sowohl ein Tiefen- als auch ein Farbbild erzeugen. Jede Kamera ist an einen Computer angeschlossen, der mittels background subtraction für jede Kameraperspektive Personen detektiert und über die Tiefeninformation auf eine Bodenebene projiziert. Diese Instanzen werden als Stereo Modul bezeichnet und senden für jede Kamera die zweidimensionalen Positionen der erkannten Personen auf einer Grundebene an ein Tracking-Modul (Person Tracker) auf einem dritten Computer. Abbildung 15 zeigt die Übersicht des Setups. Der Person Tracker verwendet u. a. Informationen der Kamerapositionen, Öffnungswinkel und Farbhistogramme zur Positionsbestimmung und Identifizierung.

Setup

Die relative Position und Orientierung der beiden verwendeten Stereokameras müssen bekannt sein bzw. initial kalibriert werden, um die Detektionen auf die Bodenebene zu projizieren. Krumm et al. [KHM+ 00] haben zwei Ansätze umgesetzt. Zum Einen kann ein Nutzer manuell beliebige, korrespondierenden Punkte im Raum in beiden Kameras anklicken, um so die

Kamerakalibrierung

3.3 multikamera personenlokalisierung

25

Abbildung 14: Ausschnitt aus dem Ablaufdiagramm zur regelbasierten Assoziation aus [TPC08]

Relation zwischen beiden Perspektiven und dem Boden herstellen zu können. Zum Anderen wird die Position des Bodens anhand des Pfads einer durch den Raum gehenden Person geschätzt. Hierbei zeichnet jede Kamera den Pfad auf und es werden die notwendige Translation sowie Rotation beider Pfade für die beste Überdeckung berechnet. Im laufenden Betrieb werden dann jeweils die ermittelte Verschiebung und Drehung auf die zweidimensionalen Lokalisierungen der einen Kamera angewandt, um diese auf die gleiche Ebene der anderen Kamera zu projizieren. Personendetektion

In den kalibrierten Kameras werden Personen mittels background subtraction detektiert, wobei Tiefen- und Farbbilder verwendet werden, um Änderungen der Beleuchtungsintensität entgegenzuwirken. Zur Modellierung des Hintergrunds wird der Mittelwert sowie die Varianz jedes Pixels in 30 aufeinanderfolgenden Bildern des leeren Raums geschätzt. Anschließend wird das Tiefen- sowie das Farbbild für die Detektion verwendet, wobei zuerst alle ungültigen Tiefeninformationen (mangels Textur) verworfen werden. Die verbleibenden Pixel werden zum Vordergrund gezählt, wenn: • ein gültiger Tiefenpixel über einem ungültigen Hintergrundpixel auftritt,

26

verwandte arbeiten

Abbildung 15: Das Setup des Easy-Living-Projekts beinhaltet zwei Stereo-Kameras, die an dedizierte Rechner (Stereo-Module) angeschlossen sind, welche die Stereo-Informationen und Farbhistogramme verwalten. Der Rechner mit dem Person-Tracker ist mit den StereoModulen verbunden und führt die Assoziation und das Tracking durch. Abbildung aus [KHM+ 00]

• ein Tiefenpixel signifikant vom Hintergrund abweicht (background subtraction des Tiefenbilds), • eine der Farbkomponenten (RGB) signifikant vom Hintergrund abweicht (background subtraction des Farbbilds). Die resultierende Liste von Pixeln, die zu Personen gehören, wird zu blobs mit großer räumlicher Nähe verbunden. Die Zentroiden der gefundenen blobs werden auf die Bodenebene der Kamera projiziert und anschließend an den Person Tracker gesendet. Zur Lösung des Assoziationsproblems werde während des Trackings in jedem Stereo Modul Farbhistogramme für jede Person vorgehalten. Diese Histogramme bestehen aus vier gleichgroßen Intervallen für jede RGBFarbkomponente, woraus sich ein 4x4x4 großer Farbraum und damit ein 64wertiges Farbhistogramm ergibt. Diese spärliche Repräsentation dient dem Ausgleich von Beleuchtungsänderungen im Raum. Die Bodenebene ist in quadratische Zellen eingeteilt, die Histogramme für jede Person, welche eine neue Zelle betritt, vorhalten. Folglich werden mehrere Histogramme für eine Person in verschiedenen Teilen des Raums gespeichert, wodurch Effekte durch Änderungen der Beleuchtungs- und Farbitensität verringert werden. Jedes Stereo Modul vergleicht Histogramme aus den aktuellen Bildern mit den gespeicherten Histogrammen mittels histogram intersection [SB91] d( H1 , H2 ) =

∑ min ( H1 ( I ), H2 ( I )).

Assoziation

Histogrammvergleich

(23)

I

Die so berechneten Werte werden normalisiert und an den Person Tracker weitergeleitet.

3.3 multikamera personenlokalisierung

27

Abbildung 16: Plot eines Pfads auf Bodenebene, links: vor Kalibrierung, rechts: nach Kalibrierung, Abbildung aus [KHM+ 00]

Lokalisierung und Tracking

Das anschließende Tracking der Personen wird von Bild zu Bild durchgeführt. Der Person Tracker läuft auf einem dedizierten PC, unabhängig von den beiden Stereo Modulen. Die eingehenden Informationen werden in ein gemeinsames Koordinatensystem, basierend auf der vorher ermittelten Kalibrierung, überführt. Für jede Person wird eine Spur (engl. track), also die Historie der vergangenen Positionen, verwaltet. Auf dieser Spur wird eine Bewegungsrichtung berechnet, die verwendet wird, um die nächste Position der Detektion zu schätzen und somit den Suchraum des Person Trackers einzugrenzen. Befinden sich mehrere Detektionen in diesem Suchbereich, werden die gespeicherten Histogramme verwendet, um die Personen den Spuren zuzuordnen. Können an einer geschätzten Position keine Detektionen ausgemacht werden, bleibt eine Spur weiterhin mit der geschätzten Position und Bewegungsrichtung bestehen, um robust gegenüber Überdeckungen zu sein. Wird eine Spur über einen längeren Zeitraum nicht von Detektionen gestützt, wird diese verworfen. Abschließend werden die gefundenen Assoziationen an das jeweilige Stereo Modul zur Aktualisierung der gespeicherten Histogramme zurückgemeldet.

creation- und deletion-Zonen

Neue Spuren können nur in fest definierten creation- und deletion-Zonen entstehen bzw. bestehende Spuren verschwinden. Diese Zonen sind üblicherweise Türen oder die Kanten des Sichtbereichs einer Kamera.

Ergebnisse

Die Genauigkeit dieses Ansatzes wird von Krumm et al. [KHM+ 00] mit ca. 10 cm angegeben. Dabei laufen die Demonstrationen typischerweise für ca. 20 Minuten mit einer Wiederholrate von 3,5 Hz, wobei die Verarbeitung der Stereoinformationen der limitierende Faktor ist. Während dieser Demonstrationen betreten und verlassen Personen den Raum. Die zugehörigen Spuren werden korrekt erzeugt bzw. gelöscht. Das Tracking arbeitet mit maximal drei Personen im Raum zuverlässig, stößt darüber hinaus an Grenzen durch die häufige gegenseitige Überdeckung. 3.3.3

Verfahren ohne Stereokameras

28

Multi-View

Das Easy-Living-Projekt verwendet Tiefeninformationen aus den StereoKameras zur Bestimmung des Abstands zwischen Objekt und Kamera, um die Lokalisierung durchzuführen. Stehen keine Tiefeninformationen aus Stereokameras zur Verfügung, so kann dieser Ansatz jedoch nicht verwendet werden, um Personen zuverlässig zu lokalisieren. Bernardin et al.

verwandte arbeiten

Abbildung 17: Ausgabe des Trackings aus [BGS08]. Die weißen Rechtecke stellen die gefundenen Körperregionen und die zur Gewichtung des Hintergrunds verwendeten Bereiche dar.

[BGS07, BGS08] präsentieren einen kamerabasierten Ansatz ohne Stereoinformationen. Das vorgestellte System verwendet mehrere fest installierte Kameras in den Ecken des Versuchsraums. Zur Personendetektion kommen kaskadierte Klassifikatoren basierend auf haar-like features [VJ01, LM02] zum Einsatz, wobei Kaskaden zur Gesichts- und Oberkörpererkennung aus der OpenCV Bibliothek [Bra00] verwendet werden. Zur Erkennung wird das Eingabebild in verschiedenen Skalierungen untersucht und erkannte Personen mit einer bounding box umgeben. Zur Verringerung falsch-positiver Detektionen wird in der Vorverarbeitung eine background subtraction zur Einschränkung des Suchraums durchgeführt. Für jede positive Detektion wird ein Farbhistogramm der Vordergrundpixel berechnet und das Tracking mittels meanshift-Algorthmus [CM02] gestartet. Da dieses ausschließlich auf den ermittelten Farbinformationen basiert, werden zur Reduktion des negativen Einflusses des Hintergrunds die Hintergrundpixel, welche die Person unmittelbar umgeben, in den Farbhistogrammen herausgefiltert. Hierzu werden die Farbintensitäten der Bereiche, die sich unmittelbar über und neben einer Detektion befinden verwendet (Abbildung 17). Basierend auf den anschlagenden Kaskaden und der Größe der detektierten Region werden der Schwerpunkt sowie der Abstand der Person zur Kamera geschätzt und als Hypothesen zur Assoziation der Detektionen verschiedener Blickwinkel verwendet. Diese Hypothesen für jede Kamera werden zur Triangulierung genutzt, um eine 3D-Position zu bestimmen. Dafür müssen die Kameras kalibriert und die relativen Positionen der Kameras zueinander im Raum bekannt sein. Vom optischen Zentrum jeder Kamera ausgehend wird eine Gerade durch die entsprechenden 2D-Punkte der Detektion in der Bildebene konstruiert und zur Positionsbestimmung geschnitten. Existiert kein Schnittpunkt, so kann ein minimaler Abstand zwischen beiden

3.3 multikamera personenlokalisierung

Setup und Personendetektion

Farbhistogramme meanshift-Tracking

Herausfiltern des Hintergrunds

Distanzschätzung

Lokalisierung

29

Geraden berechnet werden. Liegt dieser Abstand unter einem Schwellenwert, so werden diese Detektionen dennoch assoziiert. Ergebnis

Evaluiert wurde das System auf der im Rahmen des CHIL-Projekts3 erstellten CLEAR’06 3D Multiperson Tracking-Datenbank. Das Ergebnis wird mit einer Genauigkeit von rund 20 cm für die Lokalisierung angeben. Dieses Tracking-Verfahren benötigt mindestens zwei Kameras, um 3D-Hypothesen zu erzeugen und arbeitet mit steigernder Anzahl Kameras robuster. 3.3.4

Optischer Fluss

Abschließend soll, wie in Abschnitt 3.2.3 angekündigt, die Fusionsmethode von Tsutsui et al. [TMS01] näher beleuchtet werden. Triangulierung mittels Ebenen

Die Position einer Detektion im Raum wird auch hier mittels Triangulierung bestimmt. Jedoch werden nicht die Strahlen, welche ausgehend von den Brennpunkten der Kameras durch die Detektionen verlaufen geschnitten, sondern eine Zielebene, auf welcher der Projektionsstrahl verläuft und orthogonal auf der Bodenebene steht.

Personenmodell

Das bedeutet im Detail, dass Personen als vertikaler Zylinder modelliert werden, dessen Höhe und Radius der Größe und Breite der Person entspricht. Sei durch x0 = [ X, Y, Z, 1] T ein Punkt im Weltkoordinatensystem und mit x = [ x, y, 1] T die Projektion des Punktes x0 in der Bildebene gegeben, dann lässt sich die Projektion des dreidimensionalen Punkts im Raum durch folgende Gleichung auf die zweidimensionale Bildebene projizieren:

Projektion

x = P x0

(24)

wobei P die vorher bestimmte Projektionsmatrix der Kamera ist. Lokalisierung

Ist die Objektregion im Eingabebild korrekt bestimmt, wird anschließend für den Schwerpunkt x dieser Region, die Weltkoordinate x0 bestimmt. Die endgültige Position der Person wird durch den Schnitt von mindestens zwei Ebenen bestimmt, die senkrecht zum Boden stehen und auf denen der Projektionsstrahl von der entsprechenden Kamera durch die zugehörige Detektion verläuft (siehe Abbildung 18). Die so bestimmte Schnittgerade stellt die senkrechte Achse des gesuchten Zylinders dar. Existieren mehr als zwei Ebenen für eine Detektion, so wird die Achse mittels der Methode kleinster Quadrate (engl. least squares) bestimmt. Für Details zum Vorgehen sei an dieser Stelle auf [TMS01] verwiesen.

Lokalisierung aus einer Perspektive

Für den Fall, dass das Ziel nur durch eine Kamera detektiert wird oder der Winkel zwischen den betrachteten Zielebenen sehr klein ist, ist die bestimmte Position nicht sehr genau und die Position wird aus einer Kameraperspektive abgeschätzt. Dazu wird ein Abstands- und Breitenintervall des Ziels mit Hilfe des Tracking-Fensters geschätzt, welches wie in Abschnitt 3.2.3 beschrieben, einen Teil des Objekts umrandet.

Distanzschätzung

Seien Lh und L f die Projektionslinien in der Zielebene, welche durch die obere bzw. untere Kante des Tracking-Fensters verlaufen. Anschließend wird die Ebene Zh parallel zum Boden auf der tatsächlich gemessenen Kopfhöhe der Zielperson konstruiert und der Schnittpunkt Mh dieser Ebene mit der Geraden Lh berechnet. Nun ist die Ebene Ph , welche senkrecht zur Zielebene und zum Boden steht und in der Mh liegt, der Abstand, hinter dem die Person 3 Computers in the Human Interaction Loop

30

verwandte arbeiten

Abbildung 18: Bestimmung der endgültigen Position einer Detektion mittels Schnittgeraden von Ebenen aus [TMS01]

zu lokalisieren ist. Analog wird für die untere Kante des Tracking-Fensters vorgegangen. L f schneidet die Bodenebene Z0 , woraus sich die Position der zweiten Begrenzungsebene Pf ergibt. Die Position der Detektion liegt zwischen den beiden so bestimmten Ebenen Ph und Pf . Analog zur Abstandsschätzung wird ein Breitenintervall für eine Detektion unter Verwendung des Radius, des eine Person beschreibenden Zylinders, bestimmt (Details: [TMS01, Kap.3.2]). Der so definierte Suchbereich wird an alle Perspektiven, die das Objekt, z. B. durch Überdeckung verloren haben, propagiert und in diesem Bereich das Ziel erneut gesucht.

Breitenschätzung

Bildebene

Brennpunkt

TrackingFenster Z=Zh

Mh Lh

Zielebene Mf Lf

Pf

Z=Z0 Tiefenintervall

Ph

Abbildung 19: Bestimmung des Abstandsintervalles zur Kamera mittels einer Perspektive. Eigene Darstellung nach [TMS01]

3.3 multikamera personenlokalisierung

31

System

Abstandsbestimmung

Genauigkeit

EasyLiving [KHM+ 00]

Stereo-Kameras

10 cm

Multi-View [BGS07]

Größe der Detektion

20 cm

Optical-Flow [TMS01]

Größe der Detektion

20 cm

Tabelle 3: Leistungsfähigkeit der vorgestellten Verfahren zur bildbasierten Personenlokalisierung in intelligenten Umgebungen

3.3.5 Lokalisierungsgenauigkeit

Tabelle 3 fasst die Genauigkeit der diskutierten bildbasierten Verfahren zusammen. Der große Vorteil bildbasierter Verfahren ist die Tatsache, dass minimal-invasiv vorgegangen wird. Es ist kein Eingriff in das Szenario notwendig, um eine Lokalisierung durchzuführen. Die Genauigkeit der Positionen ist sehr stark von der Distanzbestimmung zwischen Kamera und Detektion abhängig. Durch den Einsatz von Sterokameras kann der Abstand direkt bestimmt werden, wobei das erzeugte Tiefenbild nur für texturreiche Objekte zuverlässige Werte liefert (vgl. [KHM+ 00]). Die Distanzschätzung aus der Größe des Detektionsfensters bietet eine Möglichkeit ohne den Einsatz von Stereo-Kameras 3D-Informationen zu erhalten. Hierbei wird ein Bereich geschätzt, der als wahrscheinlicher Abstand zur Kamera gilt. Durch die Triangulierung in einem Multi-Kamera-System lassen sich Personen anhand von Schnittpunkten der Projektionslinien positionieren, wobei das Assoziationsproblem zu lösen ist. Dies kann unter Verwendung verschiedener Merkmale, wie der räumlichen Situation oder der Farbe einer Detektion geschehen. 3.4

funkbasierte Verfahren

bildbasierte Verfahren

Bewertung bildbasierter Lokalisierung

fazit

Es existieren viele funk- und bildbasierte Verfahren zur Lokalisierung von Personen. Der Hauptnachteil funkbasierter Verfahren besteht im Tragen eines elektronischen Geräts zur Ortsbestimmung, wovon der Einsatz eines solchen Systems immer abhängig ist. Die Genauigkeit ist hier mit bis zu wenigen Zentimetern (siehe Tabelle 1) besonders hervorzuheben. Jedoch soll das hier entwickelte Verfahren minimal-invasiv sein, also so wenig Einfluss wie möglich auf das Szenario nehmen. Auch ist es nicht immer möglich jede Person mit einem tag auszustatten, wenn es sich zum Beispiel um eine Vorlesung (hohe Kosten) oder eine kurzfristig angesetzte Videokonferenz (lange Vorbereitungsdauer) handelt. Diese Nachteile haben die vorgestellten bildbasierten Verfahren nicht. Hierbei werden lediglich mehrere kalibrierte Kameras mit überlappenden Sichtfeldern benötigt, um eine Lokalisierung von Personen durchzuführen. Die Qualität der Lokalisierung hängt hier jedoch auch entscheidend von der Güte des Personendetektors ab, weshalb Fehlalarme vermieden werden sollen. Die Genauigkeit der hier vorgestellten Verfahren mit weniger als 20 cm ist ausreichend, um Interaktionen, wie das Verfolgen einer Person mit einer aktiven Kamera, zu steuern. Eine weiterführende Betrachtung dieser und anderer Verfahren und deren Umsetzungen findet sich in den Untersuchungen von Deak et al. [DCC12].

32

verwandte arbeiten

4

METHODE

Die zentrale Zielsetzung dieser Arbeit ist die Entwicklung und Evaluierung eines Verfahrens zur Detektion und Lokalisierung von Personen in einer intelligenten Umgebung. Im folgenden Kapitel wird die verwendete Methodik im Detail beschrieben, mit welcher dieses Ziel erreicht wurde.

Zielsetzung

Nach einer Gesamtübersicht wird zuerst auf die Bildaufnahme, die Merkmalsextraktion und Klassifikation zur Personendetektion eingegangen. Zur anschließenden Fusion der Detektionen wurden zwei alternative Verfahren umgesetzt. Der erste Ansatz basiert auf Schnittpunkten von Geraden, die von den optischen Zentren der Kameras durch die Detektion in der Bildebene verlaufen und sich idealerweise in einem Punkt im Raum schneiden. Die zweite Methode verfolgt einen probabilistischen Ansatz, wobei die Besetzung des Raums durch Personen mit normalverteilten Dichtefunktionen abgebildet wird und die Positionshypothesen durch lokale Maxima bestimmt werden. Zum Abschluss des Kapitels wird auf das umgesetzte Gesamtsystem eingegangen.

Kapitelaufbau

4.1

überblick

Diese Arbeit basiert auf den in Kapitel 3 beschriebenen vorherigen Arbeiten aus dem Bereich der bildbasierten Personenlokalisierung, wobei verschiedene Ansätze aus der Literatur zu einem System kombiniert werden. In einem ersten Schritt gilt es Personen in den einzelnen zur Verfügung stehenden Kameras der intelligenten Umgebung zu detektieren, bevor diese zu Positionshypothesen fusioniert werden. Dabei arbeitet die Detektion auf HOGbasierten Merkmalen, welche mit einer linearen SVM klassifiziert werden. Anschließend werden die Detektionen der Kameraperspektiven zu Positionen fusioniert, wobei zwei alternative Ansätze verfolgt wurden. Zum Einen die Lokalisierung über Geradenschnitte und zum Anderen die Bestimmung der Positionen durch die Rückprojektion normalverteilter Wahrscheinlichkeitsdichten.

Aufbau Zielsystem

Die Eingabe des Gesamtsystem bildet eine Aufnahme der Szene aus verschiedenen Blickwinkeln. Für die Bilder jeder Perspektive werden Merkmale basierend auf histograms of oriented gradients extrahiert und mit einer linearen SVM in die Klassen Person und nicht-Person klassifiziert. Anschlie-

BildAufnahme

MerkmalsExtraktion

aktive Kameras

Sliding Window Gradienten Histogramme

Personen Detektion

Fusion

SVM Rückprojektion Mean Shift Cluster Geradenschnitt Background Subtraction

Abbildung 20: Pipeline des Gesamtsystems

33

Lokalisierung

Abbildung 21: Die FINCA aus der Sicht aller Kameraperspektiven ßend folgt die Fusion aller Einzeldetektionen, die zu Positionshypothesen verrechnet und ausgegeben werden. Im Folgenden werden die einzelnen Verarbeitungsschritte und deren Umsetzung im Detail erörtert. 4.2

versuchsraum und bildaufnahme

intelligente Umgebung

Die erarbeitete Methode wird im intelligenten Konferenzraum der FINCA, installiert im Institut für Roboterforschung (IRF) zur Entwicklung intelligenter Umgebungen [PKCF08], evaluiert und getestet. Neben verschiedenen Sensoren, wie Mikrofonarrays und Bewegungsmeldern, befinden sich vier dreh-, schwenk- und zoombare digitale Kameras an der Decke der FINCA, deren Montierungen fix und bekannt sind.

Überdeckung durch Einrichtung

Im Konferenzraum der FINCA befindet sich in der Mitte ein Tisch, durch den Personen, die sich im Raum bewegen teilweise überdeckt werden können. Hieraus ergibt sich auch das Problem, dass kein GanzkörperPersonendetektor eingesetzt werden kann, wie z. B. bei Fußgängern verwendet wird. Für die Detektion ist eine Unterscheidung, ob eine Person sitzt oder steht unerheblich. Es wird ein Detektor für die Kopf-SchulterPartie modelliert, da dieser Bereich bei sitzenden und stehenden Personen sichtbar ist, sobald sie sich im Blickfeld einer Kamera aufhält.

Kamerapositionen

Bei den vier in der FINCA befindlichen Kameras handelt es sich um Sony EVI D70P Kameras mit einer Bauhöhe von 120 mm, die an der Decke des Raums mit einer Deckenhöhe von 256 cm montiert sind. Drei Kameras sind in den Ecken plaziert, damit diese einen möglichst großen Bereich abdecken können. Die vierte Kamera ist auf das im Raum befindliche Whiteboard gerichtet. Diese Kamera dient zur Aufzeichnung des Sprechers und der gezeigten Präsentationsfolien, welche auf das Whiteboard projiziert werden

34

methode

Abbildung 22: Abmessungen der FINCA mit eingezeichneten Kamerapositionen

können. Die genauen Positionen der grün eingezeichneten Kameras können Abbildung 22 entnommen werden. Alle Längenangaben sind dabei in Millimetern angegeben. Die roten Zahlen zeigen die Drehwinkel der jeweiligen Kameras relativ zum angegeben Raumkompass an. Alle folgenden Winkelangaben beziehen sich auf diese Kameraausrichtungen. Die synchronisierten Kameras erzeugen Farbbilder in einer Auflösung von 768 × 576 Pixeln und einer Bildwiederholrate von maximal 25 Hertz. Der Öffnungswinkel des Objektives beträgt 48◦ . Der automatische Weißableich wurde ausgeschaltet, um keine unkontrollierbaren Änderungen über die verschiedenen Perspektiven zu erzeugen. Tabelle 4 zeigt die Konfiguration der Kameras bezüglich Drehung (pan), Neigung (tilt) und gewähltem Profil für den Weißabgleich.

Kamerakonfiguration

Jede Kamera ist an einen dedizierten Computer angeschlossen. Diese Kameraserver, welche den Kameras ihren Namen geben, speichern die aufgenommenen Bilder und geben die Konfigurations- und Steuerbefehle an die Kameras weiter. Die Kommunikation erfolgt über das von Sony entwickelte VISCA-Protokoll. Damit ein Nutzer mit einer intelligenten Umgebung interagieren kann, muss die Umgebung die Anwesenheit und Position von Personen erkennen. Dazu werden Personen in den einzelnen Bildern der jeweiligen Kameraperspektive detektiert. Es wurde ein Klassifikator auf Ba-

Kameraserver

Bezeichnung A B C D

Kameraserver

pan

tilt

Auflösung

Weißableich

Godard Eastwood Welles Wenders

20, 0◦

−15, 0◦

20, 0◦ −20, 0◦ −135, 0◦

−15, 0◦ −18, 0◦ −20, 0◦

384 × 288 384 × 288 384 × 288 384 × 288

outdoor outdoor outdoor outdoor

Tabelle 4: Kamerakonfiguration der vier Kameras in der FINCA

4.2 versuchsraum und bildaufnahme

35

Abbildung 23: links und mitte: zwei Rückprojektionen von HOG-Deskriptoren einzelner Eingabebilder, rechts: aus Trainingsdaten berechneter HOG-Detektor

sis von HOGs als Merkmalen trainiert. Die Merkmalsextraktion und das Training werden im nächsten Abschnitt erläutert. 4.3

personendetektion

Wie bereits in Abschnitt 3.2 beschrieben, gibt es zahlreiche Ansätze zur Personendetektion in statischen Bildern. Einige sind jedoch im Hinblick auf das grundlegende Szenario weniger geeignet, da unter Umständen mit wenig Bewegung der anwesenden Personen, sei es ein ruhig sitzendes Auditorium oder ein statischer Sprecher, zu rechnen ist. Aus diesem Grund werden Verfahren, die Personen mittels background subtraction oder optical flow detektieren nicht weiter betrachtet. Die Entscheidung fiel auf einen HOG-basierten Ansatz. Um die Anzahl falsch-positiver Detektionen zu verringern, wurde anschließend eine Prüfung auf Plausibilität mittels background subtraction durchgeführt. Diese beiden Schritte der hier umgesetzten Personendetektion sollen nachfolgend betrachtet werden. 4.3.1 Merkmalsextraktion

sliding window

Klassifikation

36

HOG-Detektor

Als Merkmale für die Personendetektion werden histograms of oriented gradients (Abschnitt 3.2.1) verwendet. Diese basieren auf der Annahme, dass Personen oder allgemeiner Objekte anhand der Verteilung von Gradientenintensitäten beschrieben werden. Ausgehend davon, dass sich eine Person hinreichend von ihrem Hintergrund abhebt, was sich in hohen Gradientenintensitäten entlang ihrer Silhouette zeigt, können die Gradientenhistogramme mit einem sliding window für das gesamte Eingabebild bestimmt werden, um anschließend in die Klassen Person oder nicht-Person eingeteilt zu werden. Im Detail bedeutet das, dass ein rechteckiges Detektionsfenster fester Größe in einem dichten Raster über das Eingabebild gleitet und für jede Position einen HOG-Deskriptor berechnet. Da Personen, je nach Entfernung zur Kamera, in verschiedenen Skalierungen erkannt werden müssen, wird das Eingabebild unterabgetastet und die Berechnung der HOG-Deskriptoren erneut durchgeführt. Dieses geschieht so lange das Eingabebild größer als das Detektionsfenster ist. Die so berechneten Deskriptoren sind die hochdimensionalen Eingabevektoren für die lineare support vector machine. Jeder Vektor wird in die Ebenen-

methode

Abbildung 24: links: Detektionen vor Meanshift-Gruppierung, rechts: nach Gruppierung mittels Meanshift

gleichung der orientierten Hyperebene eingesetzt und liefert einen Abstand m zurück. Die SVM klassifiziert die einzelnen Deskriptoren anhand eines gegebenen Schwellenwertes θ H . Ist der Abstand m des Eingabevektor zur (k)

Hyperebene größer θ H , so gilt der Deskriptor als positive Detektion δi

in

(k) δi

Kamera k und wird mit dem Tupel = ( x, y, w, h) beschrieben, wobei die obere linke Ecke der rechteckige Region an den Bildkoordinaten x, y positioniert ist und die Breite w und Höhe h hat. Durch das dichte Durchlaufen des Eingabebildes in verschiedenen Skalierungen, können sich überlappende, positive Detektionen gefunden werden. Dalal [Dal06] schlägt einen Ansatz vor, bei dem alle Detektionen mittels Kernel Density Estimation (KDE) im dreidimensionalen Raum (position scale pyramid) dargestellt werden. Bei der KDE handelt es sich um ein Verfahren zur Schätzung von Verteilungsdichten, wobei an jedem beobachteten Datenpunkt eine Kernelfunktion angelegt wird. Sei xi = ( xi , yi ) die Position einer Detektion und m dessen Abstand zur Hyperebene, so wird der Punkt in der position scale pyramid als p = ( x, y, m0 ), mit m0 = log(m) dargestellt. Jeder Punkt p wird mit dem Abstand m zur Hyperebene gewichtet. Anschließend können mit einem iterativen mean-shift-Algorithmus [CM02] die Moden in der Verteilung über alle Detektionen gefunden werden. Die so gefundenen Maxima im dreidimensionalen Raum stellen die finalen Detektionen mit ihrer Position und Skalierung dar. Da sich falsch-positive Detektionen auf die Lokalisierung negativ auswirken, gilt es diese so gut es geht zu vermeiden. Hierzu kann ein niedriger Schwellenwert θ H für die verwendete SVM gewählt werden. Dieses hat jedoch dann den negativen Effekt, dass die miss rate, also die Anzahl nicht gefundener Personen, ansteigt. Die Verringerung der falsch-positiven Detektionen wird nachfolgend beschrieben. 4.3.2

multiscale-Detektion

Meanshift

Abstand zur Hyperebene

Background Subtraction

Der hier umgesetzte Ansatz prüft die Detektionen auf Plausibilität mittels background subtraction, um einen hohen Schwellenwert θ H wählen zu können und möglichst viele falsch-positive Detektionen auszuschließen. Wie bereits in Abschnitt 3.2.5 beschrieben, ist ein adaptives Hintergrundmodell in diesem Szenario weniger geeignet. Sitzende Personen oder ruhig stehen-

4.3 personendetektion

Verringerung von Fehldetektionen

37

Abbildung 25: Eliminierung falsch-positiver Detektionen mittels background subtraction, oben links: binäres Differenzbild DG, oben rechts: DG morphologisch gefiltert, unten links: Detektionen vor Plausibilitätsprüfung, unten rechts: nach erfolgter Plausibilitätsprüfung

Hintergrundmodellierung

de Personen würden im Laufe der Zeit mit dem Hintergrund verschmelzen, so dass keine Aussage über die Plausibilität einer Detektion anhand der background subtraction möglich wäre. Wird das System über einen langen Zeitraum ununterbrochen eingesetzt, wird die Toleranz gegenüber falschpositiven Detektionen zwangsläufig zunehmen, da sich z. B. die Beleuchtung stark verändern kann. Da aus den genannten Gründen kein adaptives Hintergrundmodell zum Einsatz kommt, wird eine kurze Initialisierungsphase benötigt, in der sich keine Person im Raum befindet. Während dieser Phase werden für alle vier Perspektiven Durchschnittsbilder BG ( x, y) =

Plausibilitätsprüfung

Opening

38

1 N

N



I ( xn , yn )

(25)

n =1

aus N Eingabebildern berechnet, welche als einfaches Hintergrundmodell dienen. Während des laufenden Betriebs, wird für das aktuelle Eingabebild E ein binäres Differenzbild ( 1, wenn BG ( x, y) − E( x, y) > θ R DG ( x, y) = (26) 0, sonst berechnet. Um das auftretende Rauschen auf Grund der einfachen Hintergrundmodellierung zu verringern, werden nacheinander die morphologischen Operationen Erosion gefolgt von Dilation auf das binäre Differenzbild angewandt. Diese Operationen vermeiden das feinkörnige Rauschen,

methode

(k)

das beobachtet werden kann. Anschließend wird für jede Detektion δi Breite w und Höhe h ein Plausibilitätswert Ψi =

h ∑w u=0 ∑v=0 DG ( xu , yv ) w·h

mit

(27)

berechnet. Ist der Wert Ψi , welcher den Anteil an vordergründigen Pixeln innerhalb einer Detektion i beschreibt, größer als ein Schwellenwert θ P und der Abstand mi zur Hyperebene der SVM größer θ H , so gilt die Detektion i als gültig. Nach erfolgter Plausibilitätsprüfung, gehen alle gültigen Detektionen ∆(k) = (k)

(k)

(k)

[δ1 , . . . , δn ] mit δi 4.4

lokalisierung mittels geradenschnitten

Die Lokalisierung der Detektionen mittels Geradenschnitten ist inspiriert von Tsutsui et al. [TMS01]. Wie in Abschnitt 3.3.4 beschrieben, werden Ebenen durch die Detektion im Raum geschnitten. Eine Möglichkeit zur Bestimmung der Schnittgeraden der Ebenen ist die Berechnung der Schnittpunkte von Geraden, die in den Ebenen liegen. Die Höhe kann im Rahmen des hier betrachteten Szenarios nicht auf einen bestimmten Wert festgelegt werden, da Personen sowohl sitzen als auch stehen können. Deshalb wird diese hier vernachlässigt. Die Lokalisierung der Detektionen auf einer Bodenebene bleibt davon unberührt. Die Schnittpunkte der Geraden werden senkrecht auf eine gemeinsame Ebene projiziert. Nachfolgend wird zuerst die Rückprojektion der Bilddetektionen in den Raum sowie die Berechnung der Schnittpunkte (4.4.1) erläutert. Da sich die Projektionslinien in mehreren Punkten schneiden können, gilt es ein Assoziationsproblem zu lösen. Die beiden alternativen Ansätze, der farbbasierte sowie der räumliche, werden in Abschnitt 4.4.2 beschrieben. Zum Abschluss wird die Umsetzung der Positionsbestimmung mittels Triangulierung (4.4.3) erörtert. 4.4.1

gültige Detektionen

= ( x, y, w, h) für Kamera k in die Lokalisierung ein.

Geradenschnitt in 2D

Aufbau des Abschnitts

Rückprojektion (k)

Die Geradengleichung für jede Detektion δi in Parameterform durch (k)

gi

: ok + λ · ai

= ( x, y, w, h) in Kamera k sei

Geradengleichung

(28)

gegeben, wobei der Punkt ok durch den Ursprung der Kamera k definiert ist. Der Richtungsvektor ai verläuft durch den Mittelpunkt der Detektion in der Bildebene. Da für jede Kamera die Position ok und Drehung αk bekannt ist, ist der Richtungsvektor ak der Geraden, die durch den Mittelpunkt der Bildebene von Kamera k verläuft gegeben durch ak =

cos αk sin αk

! .

(29)

Zur Berechnung der Geraden, die durch den Mittelpunkt einer Detektion verläuft, wird die Abweichung der Detektion vom gegebenen Mittelpunkt

4.4 lokalisierung mittels geradenschnitten

Projektionsgerade

39

m x der Bildebene in x-Richtung, deren Auflösung wb × hb beträgt, benötigt. Diese ergibt sich als ∆xi = xi0 − m x

(30)

mit Mittelpunkt der Detektion xi0 = xi + (wi /2). Daraus ergibt sich bei bekanntem Öffnungswinkel β der Kameras und der halben Bildbreite b = wb /2 in Pixeln der Winkel der Abweichung γi =

∆xi β · b 2

(31)

der Projektionsgeraden von der Geraden durch den Mittelpunkt der Bildebene. Anschließend ergibt sich die Gerade (k) gi

Schnittwinkel

sin αk + γi

! ,

(32)

die durch den Mittelpunkt einer Detektion verläuft. Nachdem für jede Detektion in jeder Kamera die zugehörige Gerade berechnet wurde, werden alle Geraden miteinander geschnitten. 4.4.2

Assoziationsproblem

= ok + λ ·

cos αk + γi

Assoziation

Die Schnittpunkte ergeben alle möglichen Positionshypothesen, wobei es vorkommt, dass eine Gerade mehrere Schnittpunkte in einer zweiten Perspektive hat (siehe Abbildung 26). Daraus ergibt sich das Assoziationsproblem: Welche Detektionen gehören über alle Kameraperspektiven zusammen? Zur Lösung wurden zwei Alternativen umgesetzt und evaluiert. Eine bildbasierte Assoziation, welche auf der Annahme aufsetzt, dass Personen unterschiedlich gefärbte Kleidung tragen und über einen Histogrammvergleich zu unterscheiden sind sowie ein geometrischer Ansatz, welcher Schnitte assoziiert, die in einer Region, die im geschätzten Abstand der Detektion zur Kamera dicht zusammen liegen. Beide Verfahren haben ihre Stärken und Schwächen. Ausschlaggebend für das Gesamtsystem ist letztendlich allein die Performanz in der realen Testumgebung. Die räumlich basierte Assoziation funktioniert im hier verwendeten Anwendungsfall besser. 4.4.2.1

Farbhistogramme

Gewichtung mit Hintergrund

40

Farbbasierte Assoziation

Die erste Variante basiert auf den Detektionen selbst. Jedes Detektionsfenster wird in den HSV-Farbraum transformiert, um anschließend ein Farbhistogramm zu berechnen. Diese werden mit einem geeigneten Ähnlichkeitsmaß verglichen. Der offensichtliche Nachteil bei der Betrachtung der Histogramme über das Detektionsfenster ist die Einbeziehung des Hintergrunds in den Vergleich. Der Ansatz die Hintergrundpixel bei der Berechnung der Histogramme herunter zu gewichten stammt aus den Arbeiten von Bernardin et al. [BGS08]. Zur Schätzung des Hintergrunds wird die unmittelbare Umgebung einer Detektion herangezogen. Getestet wurden verschiedene Bereiche um eine Detektion. Experimente haben gezeigt, dass die Verwendung des Bereichs direkt oberhalb einer Detektion die besten Ergebnisse liefert. In den anderen Bereichen unterhalb und neben einer Person befinden

methode

Abbildung 26: Assoziationsproblem: die beiden Detektionen jeder Perspektive erzeugen vier Schnittpunkte und damit vier Positionshypothesen. Die Assoziation der einzelnen Detektionen ist zu lösen

sich oft Kleidungsstücke, was die Performanz der Histogrammvergleiche negativ beeinflusst, da somit auch relevante Pixel des Vordergrunds in den Histogrammen nicht mehr berücksichtigt werden. Die so erzeugten Farbhistogramme werden mit verschiedenen Metriken verglichen. Die besten Ergebnisse erzielen Histogrammen der Komponenten hue (H) und saturation (S) des HSV-Farbraums mit der Korrelation als Ähnlichkeitsmaß. Die Korrektheit der Assoziationen liegt bei ca. 83% (siehe Abschnitt 5.4.1). Die Annahme des farbbasierten Verfahren, dass alle Personen anhand ihrer Kleidungsfarbe unterscheidbar sind, hält nicht in allen Szenarien. Trügen alle anwesenden Personen einen blauen Anzug, wäre die farbbasierte Unterscheidbarkeit nicht mehr gegeben.

4.4.2.2

Ergebnis

Grenzen uniforme Kleidung

räumliche Assoziation

Der zweite Ansatz basiert auf einer Distanzschätzung der Detektionen zur entsprechenden Kamera. Der Abstand zwischen Detektion und einer Kamera, in der diese detektiert wurde, wird aus der Breite des Detektionsfensters, welche in etwa der Schulterbreite entspricht, geschätzt. Liegt ein Schnittpunkt innerhalb der Region Di ± θ D definiert durch die entsprechenden Abstandsschätzungen Di und einem Schwellenwert θ D , so werden die zugehörigen Detektionen assoziiert. Der Abstand einer Detektion δi mit der Breite wδi in der Bildebene ist bei gegebener durchschnittlicher Schulterbreite ws , welche aus [Jür04] entnommen wurde, definiert durch:

Di =

wb ws · wδi tan β

Distanzschätzung aus Breite des Detektionsfensters

(33)

mit den bekannten Parametern Bildbreite wb und Öffnungswinkel β für alle Kameras. Bei diesem Verfahren liegt die Rate der korrekten Assoziationen in dem

4.4 lokalisierung mittels geradenschnitten

Ergebnis

41

Grenzen räumliche Nähe

hier verwendeten Testdatensatz bei 100%, wobei für die Abweichung der Schwellenwert θ D = 1 m angenommen wird. Befinden sich Personen nah beieinander, können bei der räumlich basierten Assoziation einzelne Detektionen nicht mehr korrekt aufgelöst werden. Alle Detektionen in diesem Bereich würden auf eine einzige Position abgebildet werden. 4.4.3

Fallunterscheidung Anzahl Schnittpunkte

Triangulierung

Nach erfolgter Assoziation können die Geraden bestimmt werden, die einer Detektion über alle Kameraperspektiven entsprechen. Deren Schnittpunkte liefern die Grundlage für die endgültige Positionierung. Die Anzahl der Schnittpunkte bestimmt das Verfahren zur Ermittlung der genauen Positionshypothese. Dabei lassen sich drei Fälle unterscheiden. 1. Existiert für eine Person nur in einer Perspektive eine Detektion, so wird die Position entlang der Projektionsgeraden im geschätzen Abstand zur Kamera festgelegt (Abbildung 27, magenta Lokalisierung links). 2. Ist eine Person über zwei Perspektiven sichtbar, so wird diese im Schnittpunkt der Geraden positioniert (Abbildung 27, rote Lokalisierung oben rechts). 3. Im Falle von drei oder mehr korrespondierenden Detektionen kommt es vor, dass sich die Geraden nicht in einem Punkt schneiden. Verlaufen die sich schneidenden Geraden in einem sehr flachen Winkel κ zueinander, kann die Lokalisierung ungenau werden. Um diesem Umstand Rechnung zu tragen, werden alle Schnittpunkte si mit µs = sin(κ )

(34)

gewichtet. Anschließend wird über alle korrespondierenden Schnittpunkte das gewichtete, arithmetische Mittel gebildet und die Detektion in diesem Punkt angesiedelt (Abbildung 27, grüne Lokalisierung unten rechts) Lokalisierung außerhalb des Raums

Durch die Ungenauigkeiten in der Distanzschätzung kann es vorkommen, dass Personen, welche nur von einer Kamera detektiert werden, außerhalb des Raums lokalisiert werden, was jedoch physikalisch nicht möglich ist. Daher wird die finale Position in entsprechenden Fällen vor einer Außenwand in einem Abstand von 15 cm angenommen. Dieser Wert resultiert aus der halben, durchschnittlichen Tiefe einer Person. Dabei werden zur durchschnittlichen Brustkorbtiefe von 25 cm [Jür04] pauschal 5 cm für Bekleidung hinzuaddiert.

Ergebnis

Die Lokalisierung mittels Geradenschnitten ist eine einfach umzusetzende Methode, die robuste Ergebnisse liefert. Die Genauigkeit liegt unter 20 cm Abweichung. Eine genaue Evaluierung der Methode wird in Abschnitt 5.5.1 durchgeführt. 4.5

Inhalt des Abschnitts

42

lokalisierung mittels probabilistischer rückprojektion

Der zweite Ansatz, der zur Personenlokalsierung in intelligenten Umgebungen umgesetzt wurde, basiert auf der Modellierung von Positionen im Raum mittels Wahrscheinlichkeitsdichten. In einem ersten Schritt werden

methode

Abbildung 27: Visualisierung einer Lokalisierung in der FINCA. Die grauen Linien stellen die Sichtbereiche der Kameras, den zentralen Tisch sowie die Bodenfliesen dar. Die Projektionsgeraden sind schwarz gefärbt. Die Kreise markieren die assoziierten Schnittpunkte, die Rechtecke stellen die Positionen der Lokalisierung dar.

die Rückprojektionen der Detektionen einzelner Kameraperspektiven in den Raum bestimmt, um auf dieser Grundlage die Fusion über alle Ansichten durchzuführen. Abschließend wird die Lokalisierung durch das Finden von lokalen Maxima in der Verteilungsfunktion vorgenommen. 4.5.1

Rückprojektion

Bei der hier beschriebenen Methode werden normalverteilte Dichtefunktionen verwendet, um für jeden Punkt im Sichtbereich die Wahrscheinlichkeit zu bestimmen, dass sich eine Detektion an dieser Stelle befindet. Der intelligente Konferenzraum der FINCA wird in gleichgroße Flächen (Voxel) fixer Seitenlänge aufgeteilt. Für jeden Voxel im Sichtbereich von Kamera k wird (k)

bei gegebener Detektion δi die Wahrscheinlichkeit für die Anwesenheit einer Person bestimmt. Aufgrund von Ungenauigkeiten in der Winkelbestimmung und Distanzschätzung, werden normalverteilte Wahrscheinlichkeitsdichten für die Drehung p (pan) der Projektionslinie und den geschätzten Abstand d (distance) der Detektion angenommen. Die Sichtbarkeit eines Voxel wird dabei für jede Kamera einzeln bestimmt. Dazu werden in einem ersten Schritt die kartesischen Koordinaten ( x, y) des Raums in pan p, der Abweichung vom Zentrum der Bildebene und distance d bezüglich der entsprechenden Position ( xk , yk ) der k-ten Kamera mit pk ( x, y) = atan2(y − yk , x − xk )

Diskretisierung der intelligenten Umgebung

( x, y) → ( p, d)

(35)

und dk ( x, y) =

q

( x − x k )2 + ( y − y k )2

(36)

4.5 lokalisierung mittels probabilistischer rückprojektion

43

transformiert, wobei der Arkustangens mit zwei Argumenten als   arctan      arctan     arctan atan2(y, x ) :=  +π/2       −π/2    0

y x y x y x

wenn x + π wenn x − π wenn x wenn x wenn x wenn x

>0 < 0, y ≥ 0 < 0, y < 0 = 0, y > 0 = 0, y < 0 = 0, y = 0

(37)

definiert ist. Abweichung von der Bildmitte

Mit der Abweichung a( p) =

Sichtbarkeit eines Voxels

p β

(38)

des Drehwinkels p von der Bildmitte bei gegebenem Kameraöffnungswinkel β, ergibt sich die Sichtbarkeit ( s(k, p, d) =

1,

wenn a( p) < 1

0,

sonst

(39)

des Voxel ( p, d) bezüglich Kamera k. Die Sichtbarkeit wird verwendet, um den Suchraum der betrachteten Voxel bei der Rückprojektion der einzelnen Kameraperspektiven einzuschränken. Es werden nur die Voxel betrachtet, die unter Kamera k sichtbar sind. Zur Berechnung der Wahrscheinlichkeitsverteilung werden nun, analog zum Vorgehen in den Abschnitten 4.4.1 und (k)

(k)

(k)

4.4.2.2, für jede Detektion δi der Drehwinkel pi und der Abstand di relativ zu Kamera k bestimmt. Sei nun eine normalverteilte Dichtefunktion als σ2 = 0.5

N ( x; µ, σ) = √

σ2 = 1

1 2πσ2

·e



( x − µ )2 2σ2

(40)

definiert. µ

stochastische Unabhängigkeit von p und d

Zur Bestimmung der Wahrscheinlichkeit eines Voxel wird die Annahme getroffen, dass alle Positionen, die eingenommen werden können gleichverteilt im Raum sind. Folglich sind die Wahrscheinlichkeiten für die Drehung P( p) und den Abstand P(d) stochastisch unabhängig voneinander. Es gilt P( p|d) = P( p) sowie P(d| p) = P(d), woraus folgt, dass P( p) ∩ P(d) = P ( p ) · P ( d ). Daraus folgt aus       (k) (k) (k) P ( p, d)|δi = N p; pi , σp N d; di , σd

Wahrscheinlichkeit für eine Detektion

(41)

die Wahrscheinlichkeit, dass sich eine Person in dem Voxel mit der Position (k) (k) ( p, d) bei gegebenen Drehwinkel pi und Abstand di für eine Detektion (k)

δi befindet. Die Varianz σ2 wurde experimentell bestimmt (siehe 5.5.3). Die Abweichung der Distanzschätzung beträgt dabei σd = 0, 75 m und die Abweichung in Drehrichtung σp = 3, 5◦ .

44

methode

P(d|δi,k ) P( p|δi.k ) P

0.4 0.2 0 0

6 5

1 2

4 3

3 p

2

4 5

d

1 60

Abbildung 28: Resultierende Wahrscheinlichkeitsverteilung bei zwei gegebenen Verteilungsdichten (k)

(k)

P( p|δi ) und P(d|δi )

Um alle Detektionen einer Kameraperspektive zusammenzufassen, wird für den jeweiligen Voxel im sichtbaren Bereich das Maximum gebildet. Daraus ergibt sich die Gesamtwahrscheinlichkeit   n  o (k) P ( p, d)|∆(k) = max P ( p, d)|δi (42)

Wahrscheinlichkeit für alle Detektionen einer Perspektive

i

(k)

für alle Detektionen δi 4.5.2

einer Perspektive k.

Fusion

Um Positionen aus allen Kameraperspektiven bestimmen zu können, werden die normalverteilten Dichten der einzelnen Kameras aufaddiert. Die teilweise Sichtbarkeit von Detektionen in sich überlappenden Sichtbereichen, aber auch die Sichtbarkeit einer Person in nicht allen Perspektiven, ist so unproblematisch modellierbar. Daher resultiert für die Menge aller Detektionen ∆ die Wahrscheinlichkeit P(( p, d)|∆) =

K

∑P



( p, d)|∆(k)



Wahrscheinlichkeit über alle Perspektiven

(43)

k =1

für die Besetzung eines Voxel ( p, d) mit einer Person als Summe der Wahrscheinlichkeiten der K Einzelperspektiven. Aufgrund der Positionierung der Normalverteilungen im Raum anhand der Distanzschätzung und des berechneten Drehwinkels, wurde das Assoziationsproblem implizit über die räumliche Zuordnung gelöst.

4.5 lokalisierung mittels probabilistischer rückprojektion

räumliche Assoziation

45

Abbildung 29: Visualisierung einer Lokalisierung in der FINCA. Die grauen Linien stellen die Grenzen des Sichtbereichs der vier Kameras und den zentralen Tisch dar. Die Werte der Wahrscheinlichkeitsverteilung sind analog zu den Graustufen zu lesen und liegen im Intervall [0, 255]

4.5.3 globales Thresholding

lokale Maxima in blobs

Die lokalen Maxima der so erzeugten Verteilung stellen die konkreten Lokalisierungen der Detektionen dar. Hierzu wird im ersten Schritt ein geeigneter Schwellenwert auf die Verteilung angewandt. Die Verteilung zerfällt daraufhin in Regionen mit Wahrscheinlichkeiten größer dem Schwellenwert. Innerhalb dieser Regionen wird nun jeweils das lokale Maximum gesucht. Die Positionen der gefundenen Maxima werden als Lokalisierung einer Person ausgegeben. Die Ergebnisse liegen bei einer Präzision von ca. 21 cm, also im Mittel über den Resultaten der Lokalisierung anhand von Geradenschnitten. Eine detaillierte Evaluierung der Detektionsleistung erfolgt in Abschnitt 5.5.3. 4.6

HOG-basierter KopfSchulter-Detektor

Finden lokaler Maxima

gesamtsystem

Das Gesamtsystem verwendet zur Detektion einen Kopf-Schulter-Detektor, basierend auf histograms of oriented gradients. Diese Merkmale werden unter Verwendung einer linearer SVM in die Klassen Person und nicht-Person klassifiziert. Jede positive Detektion i in Kamera k besteht aus dem Tu(k)

Plausibilitätsprüfung

Lokalisierung mittels Geradenschnitten

46

pel δi = ( x, y, w, h), also einem Rechteck mit der Breite w und der Höhe h, dessen obere linke Ecke sich an der Position ( x, y) in der Bildebene befindet. Die Detektionen ∆ = {∆(1) , . . . , ∆(K ) } über alle K Kameras mit (k) (k) ∆(k) = [δ1 , . . . , δn ] gehen nach erfolgter Plausibilitätsprüfung mittels background subtraction in die Lokalisierung ein. Die Lokalisierung wird mit dem in Abschnitt 4.4 vorgestellten Verfahren mittels Geradenschnitten durchgeführt. Die gute Performanz, die Robustheit sowie die einfache Umsetzbarkeit waren ausschlaggebend für den Einsatz dieser Methode. Über die räumliche Assoziation werden die Schnittpunkte den korrekten Detektionen zugewiesen. Die farbbasierte Variante ist

methode

hierbei nicht robust genug gegenüber uniformer oder farblich dem Hintergrund ähnlicher Kleidung. Ausgabe des Systems sind Positionsangaben für jede Person, die anhand der Detektionen in den Einzelbildern erfasst wurde. Die Präzision der Positionshypothesen liegt dabei unter 20 cm Abweichung von den tatsächlichen Positionen. In 5.6.2 wird die Evaluierung des Gesamtsystems im Detail erläutert.

4.6 gesamtsystem

Ausgabe von Positionen

47

5

E VA L U I E R U N G

Nachfolgend werden die entwickelten Module des Systems evaluiert. Dabei kommen reale Aufnahmen verschiedener Szenarien zum Einsatz. Vor der eigentlichen Evaluierung wird der Aufbau der einzelnen Sequenzen zum Training, zur Validierung sowie zum Testen eingangs beschrieben, wobei auch auf die Annotationen eingegangen wird. Im Anschluss werden die verschiedenen Methoden, die bei der Durchführung der Experimente zum Einsatz kommen definiert. Die Struktur der Evaluierung orientiert sich am Aufbau des Gesamtsystems. Zuerst wird die Personendetektion in den einzelnen Kameraperspektiven untersucht. Hierbei wird auf den Einfluss der Fenstergröße, des verwendeten Kernels des SVM-Klassifikators sowie der Plausibilitätsprüfung auf das Detektionsergebnis eingegangen. Die Evaluierung des farbbasierten sowie des räumlichen Verfahrens zur Lösung des Assoziationsproblems schließt sich an, wobei gesondert auf Histogramme mit und ohne Hintergrundschätzung eingegangen wird. Darauf folgt die Auswertung der Lokalisierungsergebnisse. Bei der Evaluierung der Methode basierend auf Geradenschnitten wird auf den Einfluss der Positionsfindung mittels ungewichtetem und gewichtetem Mittelwert auf die Präzision eingegangen, bevor die Performanz der probabilistischen Rückprojektion sowie der Einfluss der Anzahl detektierender Kameras näher beleuchtet wird. Zum Abschluss dieses Kapitels wird das Gesamtsystem anhand eines realen Szenarios getestet und bewertet. 5.1

Personendetektion

Lokalisierung

Gesamtsystem

datensätze

Für das Training sowie die Validierungen und Tests werden verschiedene Aufnahmen verwendet. Dabei sind die jeweiligen Datensätze disjunkt, was bedeutet, dass es sich um verschiedene Sequenzen für die einzelnen Datenmengen handelt. Die Aufnahmen wurden dabei alle mit den in Abschnitt 4.2 beschriebenen Kamerapositionen und -einstellungen durchgeführt. Jeder Datensatz besteht aus Bildern aller vier verfügbaren Kameraperspektiven. Nach den Details zur Annotation, werden die verschiedenen Szenarien für die Trainings-, Validierungs- und Testdaten beschrieben. 5.1.1

Annotation

Zur Annotation, also der Beschreibung der zu Grunde liegenden Wahrheit (ground truth) wurde das vom Lehrstuhl zur Verfügung gestellte Werkzeug javaannotate verwendet. Es wurden die Kopf-Schulterpartien von Personen mit einer quadratischen bounding box versehen, wobei die Schulterbreite ausschlaggebend für die Größe des Annotationsrechtecks war. Zur Auswertung der Assoziationsverfahren, wurden zusätzlich eindeutige Identifikatoren vergeben, so dass sich eine Annotation i zum Zeitpunkt t als Tupel at = ( x, y, w, h, i ) eindeutig darstellen lässt, wobei x und y die Koordinaten der oberen linken Ecke des Annotationsrechtecks mit der Breite w und Höhe

49

Erzeugung der Grundwahrheit Schulterbreite, rechteckige Annotationen

Abbildung 30: Beispielhafte Einzelbilder aus zwei verschiedenen Perspektiven aus dem Trainingsset mit annotierten Kopf-Schulter-Partien

h darstellen. Abbildung 30 zeigt exemplarisch zwei annotierte Eingabebilder des Trainingsdatensatzes. 5.1.2 PG-Sitzung

positive Trainingsdaten

Die Trainingsdaten wurden aus einer Projektgruppensitzung (Sequenz 1) mit elf anwesenden Personen generiert. Es wurden 6510 Kopf-SchulterPartien annotiert. Diese verteilen sich wie folgt auf die verschiedenen Perspektiven: • Kamera A: 2323 Positive Beispiele • Kamera B: 1654 Positive Beispiele • Kamera C: 2066 Positive Beispiele • Kamera D: 467 Positive Beispiele

Einschränkung Kamera D

Durch den eingeschränkten Blickwinkel von Kamera D sind hier relativ wenig positive Beispiele vorhanden.

Spiegelung

Zur Vergrößerung der gesamten Trainingsmenge wurden alle annotierten Beispiele um ihre senkrechte Achse gespiegelt (vgl. [DT05]), was in 13020 positiven Beispielen resultiert. Es wird zum Training der SVMs ausschließlich diese Menge der positiven Daten verwendet. 5.1.3

negative Beispiele

unterschiedliche Beleuchtung

Aus allen vorliegenden Aufnahmen wurden für jede Perspektive 40 Einzelbilder ohne Personen ausgewählt. Da die Bilder zu verschiedenen Zeitpunkten aufgenommen wurden, ist eine Änderung der Beleuchtungssituation bei Tageslicht sowie bei eingeschalteter Beleuchtung im möglichen Rahmen berücksichtigt. Für die Modellierung des Hintergrunds wurden die Bilder ohne anwesende Personen ebenfalls verwendet.

sliding window

Aus den 40 Beispielbildern wurden mittels gleitenden Fenstern in Größen von 10x10 bis 200x200 Pixeln mit jeweils 10 Pixeln Versatz 19138 Negativbeispiele generiert, welche die Trainingsmenge komplettieren.

50

evaluierung

5.1.4

Validierungsdaten

Zur Optimierung der Parameter wurde ein Validierungsdatensatz eingesetzt, welcher zwei Personen enthält. Diese Sequenz (Sequenz 2) besteht aus 1500 Einzelbildern, aufgenommen mit einer Wiederholrate von 10 Bildern pro Sekunde. Die Personen sind nicht im Trainingsdatensatz enthalten. Die Aufnahme stellt eine für das betrachtete Szenario typische Situation dar. Eine passive Person sitzt am Tisch während die andere, aktive Person einen Vortrag an der Tafel hält und sich im Raum umher bewegt.

reales Szenario mit zwei Personen

Dabei liegt folgende Verteilung von Personen im Sichtfeld der jeweiligen Perspektive vor: • Kamera A: 3002 positive Detektionen • Kamera B: 2531 positive Detektionen • Kamera C: 3002 positive Detektionen • Kamera D: 1488 positive Detektionen 5.1.5

Testdaten

Die Testsequenz (Sequenz 3), auf der das gesamte System getestet wird, besteht ebenfalls aus 1500 Einzelbildern, welche mit 10 fps aufgezeichnet wurden. Auch hier wird eine typische Vortragssituation dargestellt, bei der sich drei Personen in der FINCA aufhalten. Zwei Zuhörer sitzen am Tisch und eine Person steht an verschiedenen Positionen vor dem Whiteboard.

reales Szenario mit drei Personen

Folgende möglichen positiven Detektionen je Perpektive gilt es zu erkennen: • Kamera A: 4389 positive Detektionen • Kamera B: 1629 positive Detektionen • Kamera C: 2946 positive Detektionen • Kamera D: 1362 positive Detektionen Zusätzlich zu den Positionen im Bild, wurde ein Ausschnitt von 400 Bildern mit Positionsdaten für die drei Personen versehen, um neben der Detektionsrate ebenfalls die Lokalisierungsgenauigkeit bestimmen zu können. 5.1.6

Testsequenz Lokalisierung

Zur Evaluierung der Lokalisierung wurde die Sequenz 4 aufgenommen. In dieser nimmt eine Testperson verschiedene sitzende und stehende Positionen um den zentralen Tisch ein. Ebenso wurden verschiedene Positionen vor dem Whiteboard abgebildet, welche ein Vortragender einnehmen würde.

Einzelpositionen

Aus dieser Testsequenz wurden die Einzelbilder der in Abbildung 31 dargestellten 15 Positionen extrahiert und annotiert, um anschließend als Eingabe für die Auswertung der Lokalisierung zu dienen. Gestrichelte Kreise symbolisieren sitzende Positionen, wo hingegen durchgezogene Kreise stehende Positionen darstellen. Die Abmessungen der FINCA können in Abschnitt 4.2 der Abbildung 22 entnommen werden, wobei die eingezeichneten Bodenfliesen je 60x60 cm groß sind.

sitzend und stehend

5.1 datensätze

51

15

9

8

14

12

13

1 = 11

10

7

2

6

5

4

3

Abbildung 31: Positionen in Testsequenz 4, die gestrichelten Kreise stellen sitzende und die durchgezogenen Kreise stehende Positionen dar

5.2

metrik

Nachfolgend wird auf die Methoden eingegangen, wie die einzelnen Hypothesen auf ihre Korrektheit geprüft werden. Hierbei sind die verschiedenen Teilaspekte des Gesamtsystems berücksichtigt und Detektionen, Lokalisierungen sowie Assoziationen werden getrennt beschrieben. 5.2.1

Korrektheit einer Detektion

bounding boxes

Eine Personendetektion ist nur korrekt, wenn sich diese mit einer Annotation deckt. Hierzu werden die bounding boxes einer Detektion, also die rechteckige Ausgabe des Detektors mit den Annotationen verglichen, wobei eine gewisse Unschärfe toleriert wird. Die Auswertung der bounding boxes basiert auf den Vorgaben der VOC-Challenge [EGW+ 10].

Überdeckungsgrad

Es werden die Flächen des kleinsten Schnitts Ai sowie der größten Vereinigung Au der beiden zu betrachtenden Rechtecke berechnet. Das berechnete Verhältnis r=

korrekte Detektion

52

Ai Au

(44)

stellt eine Kennzahl für den Überdeckungsgrad der beiden Rechtecke dar und wird mittels Schwellenwert θu ausgewertet. Eine korrekte Detektion liegt vor, wenn r ≥ θu . Eine korrekte Detektion hat eine Überdeckung von 50%, wobei die Fläche der Detektion nicht kleiner als 50% des Annotationsrechtecks betragen darf, also gilt θu = 0, 5 (vgl. [EGW+ 10]).

evaluierung

Abbildung 32: Darstellung von Detektionen anhand des Überdeckungsgrads. Blau dargestellt ist die ground truth, korrekte Detektionen sind grün, falsche Detektionen sind rot eingezeichnet

5.2.2

Receiver Operating Characteristic

Receiver Operating Characteristics-Kurven (ROC) werden zur Visualisierung der Güte eines Klassifikators eingesetzt [Faw06]. Diese Charakteristik wird eingesetzt, um die Qualität anhand von Trefferrate und Fehlalarmrate zu beschreiben [Ega75]. Ein trainierter Klassifikator wird auf die Testdatenmenge angewandt und die positiven Klassifikationsergebnisse anhand der ground truth den Klassen true positive (TP) und false positive (FP) durch einfaches Abzählen zugeordnet, wobei jedes Klassifikationsergebnis zusätzlich den ermittelten Abstand m H zur Hyperebene erhält. Zur Analyse der ROC-Charaktersitik wird der Schwellenwert θ H für den Abstand m H zur Hyperebene verwendet. Die Detektionen werden anhand von θ H und der ground truth in eine der vier in Abbildung 33 dargestellten Klassen eingeteilt. Durch die Variation von θ H ergeben sich die ROC-Kurven. Das bedeutet im Detail, dass eine Detektion der Klasse TP zugeordnet wird, wenn diese korrekt ist und der Abstand zur Hyperebene größer θ H ist. Ist der Abstand kleiner dem Schwellenwert so wird die Detektion bei Korrektheit in die Klasse false negative (FN) eingeordnet. Analog dazu werden die nicht korrekten Detektion mit Abstand größer θ H in die Klasse FP sowie mit Abstand kleiner θ H in die Klasse true negative (TN) eingeteilt. Eine Übersicht über die Klasseneinteilung gibt Tabelle 5. Auf Grundlage dieser Einordnung der Detektionen in die verschiedenen Klassen, lassen sich Kennzahlen zur Bestimmung der Güte eines Klassifikators mit variierendem θ H bestimmen. Die Trefferrate (auch true positive rate oder recall) TPR =

TP TP + FN

TP und FP anhand ground truth

TN und FN anhand θH

Kennzahlen TPR und FPR

(45)

5.2 metrik

53

Klassifikation

Wahre Klasse p

n

Y

true positives

false positives

N

false negatives

true negatives

Abbildung 33: Kontingenzmatrix nach [Faw06]

sowie die Rate der Fehlalarme eines Klassifikators (auch false positive rate) FPR =

FP FP + TN

(46)

sind die beiden in der ROC-Analyse eingesetzten Kennzahlen. precision

Neben diesen beiden Metriken wird ebenfalls die Kennzahl precision (auch positiver Vorhersagewert) precision =

TP TP + FP

(47)

zur Bewertung von Klassifikatoren herangezogen ([Lew90], [Lew91]). Dieser Ansatz findet ursprünglich im Bereich des information retrieval seinen Einsatz, um die Qualität der Klassifikation von Texten zu einer Suchanfrage zu beurteilen. Kombinierte Kennzahl

Eine Metrik ist das sogenannte F-Maß (engl. F1 -score) F1 = 2 ·

precision · recall , precision + recall

(48)

welches die beiden Maße precision und recall kombiniert. precision-recallKurve ROC-Kurve

area under curve

average precision

54

Die zur Klassifikation verwendete SVM gibt den Abstand zur Hyperebene θ H zurück. Es lassen sich nun für jedes θ H die Größen precision (p) und recall (r) bestimmen. Mit der Funktion p(r ) lässt sich eine precision-recall-Kurve darstellen [DG06]. Im ROC-Graphen hingegen werden die, sich aus der Variation des Schwellenwerts θ H ergebenden Trefferraten auf die Y-Achse sowie die Fehlalarmraten auf der X-Achse aufgetragen. Um die Güte eines Klassifikators in einem Wert auszudrücken, wird der Flächeninhalt unter der ROC-Kurve (auch: area under curve, AUC) approximiert. Diese Zahl lässt sich einfacher vergleichen und die verschiedenen Klassifikatoren in Bezug setzen, als der ROC-Graph. Im Fall der precision-recallKurve wird die average precision (AVP) herangezogen. Diese ist definiert als R1 AVP = 0 p(r )dr. Sowohl AUC als auch AVP werden mittels Treppenfunktion näherungsweise bestimmt, wobei die Summe U = ∑in=1 f ( x ) · ( xi+1 − xi ) gebildet wird.

evaluierung

Parameter

Klasse

wahre Klasse positiv, m H ≥ θ H

TP

wahre Klasse positiv, m H < θ H

FN

wahre Klasse negativ, m H ≥ θ H

FP

wahre Klasse negativ, m H < θ H

TN

Tabelle 5: Klasseneinteilung confusion matrix

5.2.3

Qualität der Lokalisierungen im Raum

Die Genauigkeit einer Position im Raum wird anhand des euklidischen Abstands der Hypothese zum realen Punkt bestimmt. s

|| x − y|| =

euklidischer Abstand

n

∑ ( x i − y i )2

(49)

i =1

Dabei gilt eine Position als getroffen, wenn sich eine Detektion in der Nähe befindet; konkret || x − y|| ≤ θd beträgt. Befindet sich keine Lokalisierung in der Nähe einer Position der ground truth, so zählt diese als miss. Befindet sich eine Lokalisierung hingegen nicht in der Nähe einer Position, so gilt dieses als false positive. Als missmatch werden jene Detektionen bezeichnet, die sich in der Nähe einer bereits als getroffen markierten Position befinden.

Kategorisierung der Hypothesen

Zur Zusammenfassung der Lokalisierungsergebnisse über eine Videosequenz, werden die zwei Kennzahlen für die Präzision multiple object tracking precision (MOTP) und Genauigkeit multiple object tracking accuracy (MOTA), definiert durch Bernardin et al. [BGS07] verwendet. Dabei ergibt sich die Präzision als

MOTP und MOTA

MOTP =

∑i,t di,t , ∑t ct

(50)

wobei ct die Anzahl korrekter Treffer zur Zeit t und di,t die euklidische Distanz zwischen dem Objekt oi und der zugeordneten Hypothese i sei. Für die Genauigkeit über alle vorhandenen Objekte der ground truth gt gilt MOTA = 1 −

∑t (mt + f pt + mmet ) ∑ t gt

(51)

mit mt der Anzahl verpasster Detektionen (misses), f pt die falsch-positiven Detektionen (false positives) sowie den falsch zugeordneten Hypothesen mmet (missmatches). Für die Wahl des Schwellenwertes θd geben Bernardin et al. [BES06a] nur den Anhaltspunkt, dass dieser sich an der Größe des betrachteten Objekts orientieren soll und geben als Beispiel die durchschnittliche Breite einer Person an. Da die durchschnittliche Schulterbreite ca. 50 cm beträgt ([Jür04]), wird θd = 0, 5 m als Toleranzwert für abweichende Positionierungen gewählt.

5.2 metrik

Schwellenwert

55

5.2.4

Ähnlichkeitsmaße

HSVFarbhistogramme

confusion matrix

Assoziationsrate

Korrektheit einer farbbasierten Assoziation

Zur Auswertung der Assoziationen, werden verschiedene Farbhistogramme der einzelnen Detektionen verglichen, wobei vier Metriken zum Einsatz kommen. Neben der Korrelation und dem Schnitt zweier Histogramme, wurden auch der Bhattacharyya Abstand und der Chi-Quadrat-Test als Metrik für die Übereinstimmung der Farbhistogramme ausgewertet. Für die Korrelation und den Schnitt gilt, je höher die Metrik, desto besser stimmen die Histogramme überein. Entgegengesetzt verhält es sich für die verbleibenden Ähnlichkeitsmaße. Je kleiner die Kennzahl ist, desto ähnlicher sind sich die Histogramme bei der Auswertung des Bhattacharyya Abstands und dem Chi-Quadrat-Test. Für die Evaluierung der Assoziation wurden die Annotationen des Validierungsdatensatzes mit eindeutigen Identifikatoren über alle Kameraperspektiven versehen. Jeder Detektionsbereich im Eingabebild wird in den HSV-Farbraum überführt. Durch die Vernachlässigung der Helligkeitskomponente V bei der Betrachtung der Ähnlichkeit soll eine höhere Robustheit gegenüber Schwankungen in der Beleuchtungsintensität erreicht werden. Anschließend werden für die Detektionen Farbhistogramme berechnet und mit den verschiedenen Ähnlichkeitsmaßen verglichen und entsprechend assoziiert, wobei die Anzahl der bins für die Farb- und Sättigungswerte variiert wird. Die Zuordnung der ähnlichsten Detektionen zueinander wird in einer confusion matrix dargestellt. Tabelle 6 stellt ein Beispiel für die Assoziation von zwei Detektionen dar. Auf der Spur der Matrix werden die korrekt zugeordneten Detektionen aufsummiert. Abweichende Assoziationen werden in den entsprechenden Zellen der Matrix dargestellt. Die Gesamtkennzahl G=

Definition Metriken

c a

(52)

zur Darstellung der Güte des Assoziationsverfahrens, ist das Verhältnis der Anzahl korrekt zugeordneter Detektionen c zu allen Zuordnungen a, also der Anteil korrekter Assoziationen. Nachfolgend werden die verschiedenen eingesetzten Metriken definiert (vgl. z. B. [Cha07, BK08]). korrelation Die Korrelation zweier Histogramme H1 und H2 mit den Intensitäten Hk ( I ) in N bins ist definiert durch: K ( H1 , H2 ) = q

∑ I ( H1 ( I ) − H 1 ) · ( H2 ( I ) − H 2 )

(53)

∑ I ( H1 ( I ) − H 1 )2 · ∑ I ( H2 ( I ) − H 2 )2

mit den Mittelwerten Hk =

1 N

∑ Hk ( I )

histogrammschnitt definiert durch: S( H1 , H2 ) =

evaluierung

Der Schnitt zweier Intensitätshistogramme ist

∑ min ( H1 ( I ), H2 ( I )) I

56

(54)

I

(55)

Detektion 1

Detektion 2

Detektion 1

1456

335

Detektion 2

266

1654

Tabelle 6: Klasseneinteilung confusion matrix mit G ∼ 0, 838

bhattacharyya abstand Die Bhattacharyya Distanz zweier Histogramme H1 und H2 ist definiert durch: s B( H1 , H2 ) =

1− p

chi-quadrat-test folgt definiert: χ2 ( H1 , H2 ) =

5.2.5

1 H1 H2 N2



q

H1 ( I ) · H2 ( I )

(56)

I

Die Prüfgröße χ2 für zwei Farbhistogramme ist wie

( H1 ( I ) − H2 ( I ))2 ∑ H1 ( I ) I

(57)

Korrektheit einer räumlichen Assoziation

Über die ground truth lassen sich jeder lokalisierten Person im Raum die eindeutigen Identifikatoren der Annotationen zuordnen. Es ist bekannt, welche Detektion die entsprechende Projektionslinie und damit die Schnittpunkte erzeugt hat. Das lässt einen Rückschluss auf alle zu einem Schnittpunkt zugeordneten Detektionen in der Bildebene zu. Der Vergleich der Identifikatoren der so zusammengefassten Detektionen ergibt die Korrektheit einer Assoziation. Die Ergebnisse werden, wie im vorherigen Abschnitt beschrieben, in einer confusion matrix, woraus sich G ergibt, dargestellt. 5.3

Rückrechnung der Schnittpunkte auf die Detektionen

personendetektion

Im folgenden Abschnitt werden die Ergebnisse der Evaluierung des HOGbasierten Personendetektors dargestellt. 5.3.1

Größe der Detektionsfenster

Um die optimale Größe der Detektionsfenster zu finden, wird zuerst auf die möglichen Distanzen zu den einzelnen Kameras eingegangen. Anhand von Testaufnahmen wurde der zu untersuchende Bereich für diesen Parameter eingegrenzt. Dazu bewegte sich eine Testperson zum weitesten bzw. nächst möglichen Punkt der jeweiligen Kamera. Berücksichtigt wurde dabei auch die Bewegungseinschränkung durch den Tisch. Die Aufnahmen wurden ausgehend von der Schulterbreite im Eingabebild annotiert und die Größe des Annotationsfensters als minimale bzw. maximale Größe für den Untersuchungsbereich festgelegt. Tabelle 7 zeigt die verschiedenen Suchräume für die jeweilige Perspektive zur Bestimmung der optimalen Fenstergröße.

5.3 personendetektion

untersuchte Fenstergrößen

57

Perspektive

mögliche Personengrößen

Kamera A (Godard)

40x40 – 96x96

Kamera B (Eastwood)

40x40 – 80x80

Kamera C (Welles)

40x40 – 96x96

Kamera D (Wenders)

48x48 – 96x96

Tabelle 7: Mögliche Größen des Detektionsfensters in den einzelnen Kameraperpektiven abhängig von der Schulterbreite einer Person im Eingabebild

HOG Parameter

Ergebnis

Anschließend wurden Klassifikatoren mit verschiedenen Parametern trainiert und getestet, um den Einfluss der Größe der Detektionsfenster auf die Güte des Klassifikators zu bestimmen. Ausgangspunkt für die Wahl der weiteren Parameter ist der Standarddetektor aus [DT05] mit den hier gegebenen Größenverhältnissen. Das Detektionsfenster wird in vier gleichgroße Blöcke eingeteilt und die Blöcke jeweils in vier gleichgroße Zellen. Die Schrittweite der Blöcke ist gleich der Zellgröße, so dass sich eine vierfache Überlappung bei der Blocknormalisierung ergibt. Eine vorherige Gammakorrektur des Eingabebilds wird nicht durchgeführt, da die Blocknormalisierung eine ähnliche Funktion einnimmt und keine Verbesserungen im Ergebnis erwartet werden [DT05]. Es wurden 9 bins gleichverteilt über 180◦ für die Einteilung der Gradientenorientierung gewählt, wobei die Richtung des Gradienten außer acht gelassen wird. Für die Evaluierung der verschiedenen Fenstergrößen wird jeweils eine soft margin SVM trainiert und getestet. Für den Parameter C wurde der in [DT05] verwendete Wert C = 0, 01 eingesetzt. Die Auswertung der Detektionsergebnisse zeigt, dass die richtige Größe der Detektionsfenster für jede Kameraperspektive einen teils erheblichen Einfluss auf die Detektionsrate hat. Dabei ergeben sich die in Abbildung 34 dargestellten precision-recall-Kurven für die einzelnen Kameraperspektiven bei variabler Größe des Detektionsfensters. Abbildung 35 stellt die average precision für jede Kameraperspektive abhängig vom gewählten Detektionsfenster dar. Die AVP ist die Grundlage für die Auswahl der optimalen Fenstergröße. In Tabelle 8 finden sich die Größen für die anhand des Validierungsdatensatzes ermittelten optimalen Detektionsfenster mit der höchsten AVP. 5.3.2

Vergleich lineare SVM gegen RBF-Kernel

SVM-Kernel: linear vs. radiale Basisfunktion

Sind Trainingsdaten nicht linear durch eine Hyperebene separierbar, so können durch Einsatz eines Kernel die Daten in einen höherdimensionalen

Perspektive

Fenstergröße

Kamera A (Godard)

72x72

Kamera B (Eastwood)

64x64 56x56

Kamera C (Welles) Kamera D (Wenders)

48x48

Tabelle 8: Optimale Fenstergrößen, die anhand des Validierungsdatensatzes experimentell ermittelt wurden

58

evaluierung

Kamera A

Kamera B

0.8

0.8

0.6

0.6

0.4

0.4

0.2

0.2

0

0

0.2

0.4

0.6

0.8

0

1

0.2

0.6

0.4

recall

recall

Kamera C

Kamera D

0.8

1

precision

1

0

1

0.8

0.8

0.6

0.6

0.4

0.4

0.2

0.2

0

precision

1

0

0.2

0.4

0.6

0.8

0

1

0.2

recall

40x40

48x48

0.6

0.4

0.8

1

precision

precision

1

0

recall

56x56

64x64

72x72

80x80

88x88

96x96

Abbildung 34: Darstellung der precision-recall-Kurve für die einzelnen Perspektiven bei unterschiedlicher Detektionsfenstergröße

Raum überführt und die lineare Trennung in diesem durchgeführt werden. Nachfolgend werden der von [DT05] vorgeschlagene lineare Klassifikator und die Verwendung der häufig eingesetzten Radial-Basisfunktion (RBF) als Kernel anhand der AVP verglichen. Hierzu werden jeweils zwei Klassifikatoren je Kameraperspektive trainiert. Die Parameter entsprechen den in Abschnitt 5.3.1 beschriebenen Verhältnissen und den optimalen Fenstergrößen, die Tabelle 8 entnommen werden können. Die Auswertung der Detektionen erfolgt erneut nach der in Abschnitt 5.2 beschriebenen Methodik.

Training und Parameter

Die Ergebnisse zeigen, dass unter Verwendung der radialen Basisfunktion als Kernel keine oder keine deutliche Verbesserung in der Detektionsrate erreicht wird. Ein Vergleich der AVP für die verschiedenen Kernel ist in Abbildung 36 dargestellt. Durch den starken Anstieg von ca. 1700 im linearen Fall auf über 5000 support vectors bei Verwendung einer RBF, ergibt sich ein

Ergebnis

5.3 personendetektion

59

1.2

0.8 0.6 0.4

average precision

1

0.2 40x40

56x56

72x72

88x88

0

Fenstergröße Kamera A

Kamera B

Kamera C

Kamera D

Abbildung 35: average precision je Kameraperspektive bei verschieden gewählten Größen der Detektionsfenster, die gestrichelte Linie zeigt die Fenstergröße 64x64, des Standarddetektors aus [DT05] an

deutlicher Abfall der Verarbeitungsgeschwindigkeit von ungefähr 15 fps auf unter 2 fps. Als Testrechner kam ein iMac (21.5-inch, Mid 2011) mit 2,5 GHz Intel Core i5 und 12 GB RAM zum Einsatz. Aus diesen Gründen kommt für das Gesamtsystem eine lineare SVM bei der Klassifikation zum Einsatz. 5.3.3

Einfluss der Plausibilitätsprüfung

Vorgehen

Alle positiven Detektionen werden einer Plausibilitätsprüfung unterzogen, wobei nur Detektionen für gültig erklärt wurden, die neben der Bedingung für den Abstand zur Hyperebene m ≥ θ H auch noch einen gewissen Anteil von Vordergrundpixeln enthalten. Durch das morphologische Filtern werden kleine Veränderungen des Hintergrunds über die Zeit, wie der Tafelanschrieb in Abbildung 37, der während der Aufnahme entstand und somit nicht im Hintergrundmodell vorhanden ist, eliminiert.

Ergebnis

Abbildung 38 zeigt den Einfluss der Plausibilitätsprüfung bei wachsendem Schwellenwert θ P . Dabei ist das Ergebnis bei θ P = 0 auf 100% gesetzt und der Einfluss relativ zu diesem Wert aufgetragen. Ab der Schwelle θ P > 0.3 werden auch korrekte Detektionen herausgefiltert, weshalb θ P = 0.3 gewählt wurde. Die relative Verbesserung gemittelt über alle Perspektiven beträgt 12, 4%.

Grenzen

Fehldetektionen, die im unteren Bereich einer Person auftreten, werden durch die Plausibilitätsprüfung nicht eliminiert, da die Beine naturgemäß zum Vordergrund gehören. Ebenfalls ist in der getesteten Sequenz die Beleuchtung eingeschaltet, was teilweise zu einem Schattenwurf führt, der

60

evaluierung

area under curve

1 0.8 0.6 0.4 0.2 0 RBF Kamera A

LIN

Kamera B

Kamera C

Kamera D

Abbildung 36: Gegenüberstellung AUC-Werte von linearen und RBF-Kernelfunktionen

nicht durch die background subtraction und das morphologische Filtern eliminiert und als Vordergrund interpretiert wird. Dadurch werden Fehldetektionen im Schatten ebenfalls nicht eliminiert. Es wäre zu untersuchen, ob ein robusteres Hintergrundmodell in Kombination mit der Schätzung der Schattenbereiche die Eliminierung der Fehldetektionen weiter verbessern würde, was jedoch im Rahmen dieser Arbeit nicht weiter verfolgt wird. 5.3.4 Wahl des Schwellenwertes Für die Wahl des Schwellenwertes θ H zeigt Tabelle 9 die über alle Perspektiven arithmetisch gemittelten Detektionsraten bei einer FPR von 2%, 5%, 10% und 20%. Zu Grunde gelegt wurden die Detektoren mit den in Abschnitt 5.3.1 ermittelten optimalen Fenstergrößen.

Vorgehen

Bei der anschließenden Lokalisierung der Detektionen können viele Fehldetektionen die Lokalisierungsgenauigkeit negativ beeinflussen. Daher wird der Schwellenwert θ H für den SVM-Klassifikator so gewählt, dass bei einem recall von über 90% maximal 5% Fehldetektionen toleriert werden, um möglichst robuste und präzise Lokalisierungen zu erhalten.

Ergebnis

Abbildung 37: Morphologisches Filtern, von links nach rechts: Eingabebild, binarisierter Vordergrund, Ergebnis nach Opening

5.3 personendetektion

61

relative Abweichung

1.2

1

0.8 korrekte Detektionen Fehldetektionen 0.6

0

0.1

0.2

0.3

0.4

0.5

θP Abbildung 38: Einfluss der Plausibilität auf die Detektionsrate und die Rate der Fehldetektionen. Die jeweilige Rate bei θ P = 0 wurde auf 1 gesetzt und die Abweichung relativ dazu berechnet. Die gestrichelte Linie zeigt dabei den optimalen Schwellenwert θ P = 0.3 an, an dem die Detektionsrate beginnt zu sinken.

5.3.5 Ergebnis

Vergleich mit Standarddetektor

Zusammenfassung Personendetektion

Tabelle 10 stellt die Detektionsraten und Schwellenwerte für die lineare SVM bei einer Fehlalarmrate von weniger als 5% dar. Dabei werden die in Abschnitt 5.3.1 dargestellten Parameter zur Merkmalsextraktion verwendet, denen die optimalen Fenstergrößen für das Testszenario zugrunde gelegt werden. Zum Vergleich findet sich ebenfalls die Detektionsrate bei Verwendung des Standarddetektors mit einer Fenstergröße von 64 × 64 Pixeln bei gleicher Fehlalarmrate. Die Klassifikation wurde mit einer linearen SVM mit dem angegebenen Schwellenwert θ H durchgeführt. Es liegt in der Natur der Sache, dass die Schwellenwerte nur für die konkret trainierte SVM gelten können. Die Auswertung muss selbstverständlich bei erneutem Training wiederholt betrachtet werden. Der Vergleich der Detektionsraten der Detektoren mit kameraspezifischen Fenstergrößen gegenüber dem von [DT05] vorgeschlagenen Standarddetektor mit 64 × 64 Pixeln großem Detektionsfenster zeigt,

FPR

recall

precision

F1 -Maß

2%

0, 859

0, 905

0, 881

5%

0, 911

0, 811

0, 858

10%

0, 936

0, 677

0, 786

20%

0, 965

0, 512

0, 669

Tabelle 9: Precision, Recall und F1 -score für verschiedene Fehldetektionsraten

62

evaluierung

Perspektive

Fenstergröße

Detektionsrate

θH

bei (64x64)

Kamera A (Godard)

72x72

0,877

0,8

0,882

Kamera B (Eastwood)

64x64

0,821

1,1



Kamera C (Welles)

56x56

0,931

1,1

0,870

Kamera D (Wenders)

48x48

0,974

1,3

0,930

Tabelle 10: Auf dem Validierungsdatensatz optimierte Fenstergrößen mit den jeweiligen Schwellenwerten θ H für die lineare SVM bei einer FPR ≤ 5% im Vergleich zur Leistung des Standarddetektors bei gleicher Fehlerrate

dass je nach betrachteter Perspektive eine Steigerung der Detektionsrate von bis zu 6% erzielt werden kann. 5.4

assoziation

Das zu lösende Problem ist hier die Assoziation der einzelnen Detektionen über alle Kameraperspektiven. Hierzu wurden zwei Ansätze umgesetzt, deren Verhalten nachfolgend evaluiert werden soll. Hierzu wird die Sequenz 2 (siehe Abschnitt 5.1.4) verwendet. 5.4.1

Farbhistogramme

Für die Evaluierung der farbbasierten Assoziation werden alle rechteckigen Detektionen in den HSV-Farbraum konvertiert und mit den Werten für die Sättigung und den Farbwert Farbhistogramme mit variierender Anzahl bins berechnet. Der Helligkeitswert wird dabei nicht betrachtet, um Schwankungen in der Beleuchtungsintensität nicht in den Vergleich einfließen zu lassen. Anschließend werden die so berechneten Histogramme mit den verschiedenen Metriken verglichen und entsprechend ihrer Ähnlichkeit assoziiert.

HSV ohne Helligkeitswert

Es werden zwei Verfahren zur Histogrammbestimmung eingesetzt. Zum Einen werden Histogramme über den gesamten Detektionsbereich berechnet und zum Anderen Pixel mit gleichen Werten wie der Hintergrund heruntergewichtet, um anschließend die Histogramme zu bestimmen. Damit soll erreicht werden, dass die Histogramme sich auf die Personen beziehen und der Hintergrund weitestgehend unberücksichtigt bleibt. Es wurden verschiedene Bereiche der Umgebung für die Hintergrundschätzung getestet.

zwei Bereiche für Histogramme

ungewichtete histogramme Die Experimente mit den ungewichteten Histogrammen zeigen schnell, dass die Ergebnisse nicht vielversprechend sind. Es wird klar, dass der Hintergrund des Innenraums sehr starken Einfluss auf die Qualität der Assoziationen hat. Die Assoziationsraten bewegen sich zwischen 50 und 70%. Tabelle 11 zeigt einen Ausschnitt der Ergebnisse. Das beste Ergebnis mit einer Assoziationsrate von 70, 4% wurde mit 50 × 60 bins fassenden Histogrammen erzielt, welche mit dem Chi-QuadratTest verglichen werden.

Histogramm über Detektionsbereich

max. 70, 4% korrekte Assoziationen

gewichtete histogramme Für die Schätzung des Hintergrunds werden verschiedene Bereiche im unmittelbaren Umfeld der Detektion ver-

5.4 assoziation

63

S-bins, H-bins

Korrelation

Schnitt

Chi-Quadrat

Bhattacharyya

4, 4

0, 622

0, 491

0, 536

0, 503

30, 32

0, 546

0, 638

0, 519

0, 622

50, 60

0, 652

0, 496

0, 704

0, 622

100, 120

0, 659

0, 529

0, 698

0, 622

Tabelle 11: Korrekter Anteil der Assoziation mittels ungewichteter Farbhistogramme bei Variation der bins für den Farbwert (hue) und die Sättigung (saturation)

niedrige Gewichtung des Hintergrunds

wendet. Hierbei wurden kreisförmige Umgebungen von vornherein ausgeschlossen, da bei dem umgesetzten Kopf-Schulter-Detektor in diesem Fall immer ein Teil der Kleidung in die Hintergrundschätzung mit eingehen und heruntergewichtet werden würde. Die Kleidung ist jedoch bei einem farbbasierten Ansatz eines der größten Unterscheidungsmerkmale zwischen Personen. Aus diesem Grund wurden Kombinationen der Bereiche links, rechts und oberhalb einer Detektion evaluiert.

bester Bereich für Hintergrundschätzung

Die Auswertung der Assoziationsraten hat gezeigt, dass die Verwendung des Bereichs oberhalb der Detektion am besten geeignet ist, um die Farbverteilung des Hintergrunds zu schätzen. Nimmt man die seitlichen Bereiche hinzu, verschlechtern sich die absoluten Assoziationsraten zum Teil signifikant um bis zu 20%. Dies erklärt sich durch die natürlichen Posen, welche die Personen der Testsequenz eingenommen haben. Durch das Aufstützen der Ellenbogen beim Sitzen auf den Tisch oder das Schreiben des Vortragenden am Whiteboard gelangen die Arme in den Bereich neben den Detektionen. Damit werden Teile der Kleidung und bei kurzärmeligen Oberteilen sogar die Hautfarben in den Histogrammen heruntergewichtet, so dass wichtige Informationen zur Unterscheidbarkeit verloren gehen.

max. 83% korrekte Assoziationen

Das beste Ergebnis von 83, 26% wurde mit einem 100 × 120 bins großen Histogramm und der Korrelation als Ähnlichkeitsmaß erreicht, was einer Steigerung um 12, 86% gegenüber ungewichteten Histogrammen entspricht. 5.4.2

Räumliche Assoziation

Bei der räumlichen Assoziation werden die Schnittpunkte gemäß der Abstandsschätzung einer Detektion zur jeweiligen Kamera assoziiert. Durch die Rückrechnung (siehe Abschnitt 5.2.5) der Zugehörigkeit der Schnittpunkte zu den erzeugenden Detektionen ergeben sich die Assoziationsraten für dieses Verfahren. 100% korrekte Assoziationen

Grenzen

In der verwendeten Testsequenz 2 wurde keine Detektion fehlerhaft assoziiert. Die Assoziationsrate liegt bei 100%. Dabei wurde der Schwellenwert für die Abweichung der Distanzschätzung θ D = 1 m angenommen. Dieser Wert ergibt sich aus der vierfachen4 durchschnittlichen Personentiefe von 0, 25 m. In der Validierungssequenz waren alle Personen weiter als 1 m voneinander entfernt, was zu einer perfekten Assoziation führt. Auch die Testsequenz weist nur Situationen auf, in denen sich Personen weit genug voneinander entfernt befinden, um die Detektionen zu 100% zu assoziieren. Bewegen sich Personen näher aufeinander zu, so ist zu erwarten, dass die Assoziationsra4 Fehlertoleranz von zweifacher Personentiefe für jeweils zu weite und zu kurze Distanzschätzungen

64

evaluierung

te abfällt. Jedoch würde auch die Genauigkeit der Lokalisierungen abfallen, da die Positionen nicht aufgelöst werden könnten und zu einer Hypothese verschmelzen. 5.4.3

Bewertung

Die Ergebnisse zeigen deutlich, dass die Assoziation über die Farbhistogramme nicht robust genug ist. Die höchste Assoziationsrate von ca. 83% wurde mit einem sehr großen Histogramm erreicht. Beim Einsatz des in der FINCA befindlichen Beamers, werden Personen unter Umständen von den gezeigten Folien angestrahlt. Dadurch ist eine farbbasierte Assoziation kaum noch möglich. Da sich jeder Fehler bei der Assoziation im Lokalisierungsergebnis niederschlägt, wird dieses Verfahren zur Zuordnung der Schnittpunkte als nicht geeignet bewertet.

Farbhistogramme

Eine vielversprechendere Methode ist die Zuordnung der Detektionen über den geschätzten Abstand zu den jeweiligen Kameras. Die Assoziationsrate beträgt in den getesteten Sequenzen 100%. Es treten keine Probleme bei Änderungen der Beleuchtung durch z. B. das Einschalten des Beamers auf. Befinden sich Personen näher zueinander, als die Lokalisierung mittels Geradenschnitt auflösen kann, so kommt es zu Fehlern in der Assoziation. Jedoch findet sich hier zusätzlich das Problem, dass einzelne Positionen verschmelzen und so nicht mehr korrekt dargestellt werden können. Dieser Aspekt wird jedoch im Rahmen der vorliegenden Arbeit nicht weiter untersucht.

räumliche Assoziation

5.5

lokalisierung

Zur Evaluierung der Lokalisierung werden zwei Sequenzen herangezogen. Es wird Sequenz 4 (siehe Abschnitt 5.1.6) mit Einzelbildern einer Person, die verschiedene stehende und sitzende Positionen um oder am Tisch sowie vor dem Whiteboard einnimmt, verwendet. Zusätzlich kommt ein Ausschnitt aus Sequenz 3 (Abschnitt 5.1.5), welcher eine reale Situation mit drei Personen im Raum darstellt, zum Einsatz.

verwendete Testdaten

Um die Lokalisierung getrennt von der Personendetektion auswerten zu können, werden für beide Testsequenzen die Lokalisierungen sowohl mittels Geradenschnitt, als auch mit probabilistischer Rückprojektion auf der ground truth durchgeführt, wobei beim Geradenschnitt gesondert auf die Auswirkung der Gewichtung des Mittelwerts gegenüber dem arithmetischen Mittel zur Positionsbestimmung eingegangen wird. Anschließend wird auf Grundlage der Positionshypothesen die Auswertung der Kennzahlen (siehe 5.2.3) vorgenommen. Zusätzlich wird mit Sequenz 4 (Einzelpositionen) der Einfluss der Anzahl Kameras, die eine Person detektieren, auf die Präzision der Lokalisierung evaluiert.

isolierte Evaluierung auf ground truth

5.5.1

Geradenschnitt mit ungewichtetem Mittelwert

Die Evaluierung wird auf der ground truth eines realen Szenarios durchgeführt. Hierzu kommt ein Ausschnitt aus Sequenz 3 zum Einsatz, in dem zwei Personen am Tisch sitzen und ein Vortragender sich vor der Tafel von einer Position nahe der Tür in Richtung der Fensterseite der FINCA bewegt.

5.5 lokalisierung

arithmetisches Mittel

65

3 2 1 0

0

2

1

3

5

4

6

Abbildung 39: Darstellung der ground truth (blau, +) und der Positionshypothesen ermittelt mit gewichteten Geradenschnitt auf den Annotationen des Auschnitts aus Sequenz 3 (rot, ·), der eingezeichnete Tisch dient der Orientierung

Die finale Positionierung p der Detektionen ergibt sich aus dem arithmetischen Mittel p( j ) =

1 N

N

∑ si

( j)

(58)

i =1

der N assoziierten Schnittpunkte si der Position j. Die Bewertung der Genauigkeit sowie Präzision über alle Eingabebilder erfolgt mit den in Abschnitt 5.2.3 beschriebenen Kennzahlen MOTA und MOTP. Die Abweichungstoleranz beträgt θd = 0, 5 m. MOTP = 17, 46 cm MOTA = 99, 65%

Die Lokalisierung mittels ungewichtetem Geradenschnitt weist eine mittlere Präzision von 17, 46 cm auf, mit einer Genauigkeit von 99, 65%. In diesem realen Szenario waren 1158 Positionen zu lokalisieren. Es wurden lediglich zwei misses sowie zwei false positives verzeichnet. 5.5.2

gewichteter Mittelwert

Geradenschnitt mit gewichtetem Mittelwert

Dem gegenübergestellt wird das Verfahren zur Bestimmung der finalen Positionshypothese bei Sichtbarkeit einer Person in mehr als zwei Kameraperspektiven mit gewichtetem Mittelwert. Jedem der Position j zugeordneten ( j)

Schnittpunkt si wird, wie in Abschnitt 4.4.3 beschrieben, ein Gewicht wi abhängig vom Schnittwinkel der zugehörigen Geraden zugewiesen. Für die ( j)

N mit wi gewichteten Schnittpunkte si

ergibt sich die Positionshypothese

( j)

p( j ) =

66

∑iN=1 si · wi ∑iN=1 wi

evaluierung

(59)

MOTA

MOTP

gewichtet

0, 997

15, 59 cm

ungewichtet

0, 997

17, 46 cm

Tabelle 12: MOTA und MOTP der beiden Varianten für die Lokalisierung mittels Geradenschnitt

als gewichtete Summe. Aus der Berechnung der MOTA ergibt sich kein Unterschied in der Genauigkeit zwischen den beiden Verfahren. Beide lokalisieren 99, 65% der 1158 Positionen korrekt bei jeweils zwei misses und false positives. Die Präzision der gewichteten Positionsbildung steigt im Mittel um ca. 1, 9 cm, also eine Steigerung um gut 10%. Dies stützt die Vermutung, dass die Präzision der Lokalisierungen unter spitzem Winkel der zugehörigen Projektionsgeraden abnimmt. Tabelle 12 fasst die Ergebnisse der beiden Verfahren zusammen. 5.5.3

MOTP = 15, 59 cm MOTA = 99, 65%

probabilistische Rückprojektion

Die Evaluierung der Lokalisierung mittels probabilistischer Rückprojektion verläuft analog zu den vorangegangenen Auswertungen. Es werden die Positionen des selben Ausschnitts aus Testsequenz 3 verwendet. Der Einfluss der gewählten Varianzen für die verwendeten Normalverteilungen auf das Lokalisierungsergebnis wird in einem plausiblen Rahmen untersucht. Dabei werden die in [Jür04] ermittelten durchschnittlichen Maße einer Person zu Grunde gelegt. Zur Auswertung wird für die Brustkorbtiefe 25 cm angenommen. Anschließend werden ganzzahlige Vielfache x der beiden Werte für die Varianzen der Distanzschätzung x · σd2 in Metern sowie x · σp2 für die Abweichung des Drehwinkels (pan) in Grad beginnend mit der einfachen Personentiefe und einer Abweichung von 0, 5◦ evaluiert. Als Obergrenze wird jeweils das Zehnfache der Werte verwendet. Die Ergebnisse werden erneut anhand der MOTA und MOTP bewertet und sind in Tabelle 13 dargestellt. Die Ergebnisse zeigen zwei optimale Parametersätze. Das beste Ergebnis für die Genauigkeit mit 0, 969 wird mit σp2 = 1, 5◦ und σd2 = 0, 75 m erzielt. Die präzisesten Lokalisierung ergeben sich mit σp2 = 3, 5◦ und σd2 = 1, 75 m. Die Kombination der beiden besten Parameter für die jeweilige Kennzahl liefert eine Präzision von 21, 21 cm bei einer Genauigkeit von 0, 934 mit σp2 = 3, 5◦ und σd2 = 0, 75 cm.

Vorgehen

MOTP = 21, 21 cm MOTA = 93, 4%

x=

1

2

3

4

5

6

7

8

9

10

MOTA MOTP σp2

0, 663 25, 16 0, 5

0, 863 24, 06 1, 0

0, 969 24, 87 1, 5

0, 754 27, 41 2, 0

0, 750 28, 47 2, 5

0, 779 27, 68 3, 0

0, 864 19, 28 3, 5

0, 857 20, 08 4, 0

0, 600 26, 59 4, 5

0, 646 26, 64 5, 0

σd2

0, 25

0, 50

0, 75

1, 00

1, 25

1, 50

1, 75

2, 00

2, 25

2, 50

Tabelle 13: MOTA und MOTP in cm für die Lokalisierung mittels Rückprojektion bei variierenden Varianzen σp2 und σd2

5.5 lokalisierung

67

x≥1

x≥2

x≥3

x≥4

MOTP

0, 358 m

0, 277 m

0, 193 m

0, 195 m

MOTA

86, 67%

81, 82%

75%

75%

MOTP

0, 359 m

0, 255 m

0, 212 m

0, 151 m

MOTA

100%

100%

100%

100%

Verfahren

Kennzahl

Gauß Geradenschnitt

Tabelle 14: MOTA und MOTP in Abhängigkeit zur Anzahl der detektierenden Kameras

5.5.4

Einfluss der Anzahl detektierender Kameras

Einfluss auf MOTP

Zur Überprüfung des Einflusses der Anzahl Kameras, welche dieselbe Person zur Lokalisierung detektieren, wird die Testsequenz 4 verwendet. Die Lokalisierungsergebnisse sind in Tabelle 14 in Abhängigkeit zur Sichtbarkeit der Detektion in mindestens x Kameras dargestellt. Es zeigt sich, dass es bei den hier umgesetzten Verfahren wichtig ist, dass eine Person von möglichst vielen Kameras gesehen wird, um eine präzise Positionierung zu erreichen.

nicht optimale Raumabdeckung durch Kameras

Kamera D (Wenders) nimmt hier eine besondere Stellung ein, da das Sichtfeld durch die Ausrichtung auf die Projektionsfläche einen sehr kleinen Teil der Raums abdeckt. Somit sind nur Personen von dieser Kamera erfasst, die vor dem Whiteboard stehen oder sitzen. Auch der Neigungswinkel der Kameras über dem Tisch (Welles und Eastwood) ist immer ein Kompromiss zwischen einer guten Raumabdeckung und der Möglichkeit am Tisch sitzende Personen mit den Kameras zu erfassen. Durch die Anbringung einer weiteren Kamera über der Tür (vgl. aktuelle Konfiguration in Abschnitt 4.2), könnte dieses Problem gelöst werden. Wird diese Kamera analog zu den Kameras A – C in den Raum gerichtet, so würden alle Personen in der Testsequenz von mindestens 2 Kameras erfasst.

Einfluss auf MOTA

Die Ergebnisse zeigen, dass die Genauigkeit der Lokalisierung nicht unmittelbar von der Anzahl Kameras, die eine Person beobachten, abhängt. Die Anzahl Fehldetektionen, welche die multiple object tracking accuracy beeinflussen, wurden bei Detektionen, die im Blickfeld von drei bzw. vier Kameras waren erzeugt, was darauf hindeutet, dass dieses Problem nicht mit steigender Anzahl Kameras eliminiert werden kann. 5.6

gesamtsystem

Das Gesamtsystem wird in zwei Schritten auf Testsequenz 3 getestet, was sich im folgenden Aufbau des Abschnitts widerspiegelt. Zuerst wird die Personendetektion mit den in der Evaluierung ermittelten Parametern anhand des Testszenarios evaluiert. Die so gefundenen Detektionen werden anschließend als Eingabe für die Lokalisierung verwendet. Die abschließende Bewertung der Lokalisierungen in einem realen Szenario erfolgt erneut anhand der Kennzahlen MOTA und MOTP. 5.6.1 Vorgehen

68

Personendetektion im finalen System

Zur Auswertung der Personendetektion wird für jede Perspektive ein Detektor mit den in Abschnitt 5.3.5 dargestellten Parametern trainiert. Diese

evaluierung

Kamera

TPR

FPR

precision

A

0,692

0,09

0,695

B

0,823

0,02

0,830

C

0,928

0,13

0,688

D

1,000

0,03

0,797

Tabelle 15: Detektionsergebnisse je Kameraperspektive auf der Testsequenz werden anschließend auf den Testdatensatz angewandt und die TPR, FPR und precision ausgewertet, welche in Tabelle 15 dargestellt sind. Auffallend gut sind die Ergebnisse für Kamera D. Der eingeschränkte Blickwinkel und die Nähe zur einzigen Person im Sichtfeld können diese Detektionsrate erklären. Im Kontrast dazu sind die Detektionsraten der Kameras A und C deutlich niedriger. Ein Grund dafür könnte sein, dass Kamera A am weitesten vom Vortragenden der Testsequenz entfernt ist, wodurch die Person nicht mehr gut aufgelöst ist und zu wenig Pixel für die Berechnung der Gradientenhistogramme vorhanden sind. Im Sichtbereich von Kamera C befindet sich der Vortragende teilweise am linken Bildrand und wird dort nicht immer detektiert. Die niedrige precision kann eventuell auch auf die Schwierigkeit des Testdatensatzes zurückgeführt werden. Die vortragende Person trägt weiße Kleidung und befindet sich relativ weit von der Kamera entfernt, was zu Problemen bei der Detektion führt. Der HOG-basierte Ansatz verwendet Intensitätsgradienten zur Beschreibung von Silhouetten. Da der Hintergrund ebenfalls hell ist, stößt das Verfahren hier an Grenzen. Es wird ein Kontrast zwischen Vorder- und Hintergrund benötigt, um Personen erfolgreich zu detektieren. Auch beim Einsatz der Background Subtraction kommt es durch die helle Kleidung zu Problemen mit der Zuordnung der Person zum Hintergrund. Im Validierungsszenario tragen die Personen Farben, die einen Kontrast zum Innenraum der FINCA bilden, weshalb die Detektionsergebnisse für diesen Datensatz deutlich besser sind. 5.6.2

Bewertung der Ergebnisse

Lokalisierung im finalen System

In die Lokalisierung des finalen Systems gehen die vorher ermittelten Detektionen der Sequenz 3 ein. Durch Fehldetektionen und verpasste Personen im Eingabebild sinkt die Genauigkeit der Lokalisierung um ca. 30% auf eine multiple object tracking accuracy von 0, 699. Die Präzision wird durch die Größe der Detektionsfenster beeinflusst. Der Detektor erzeugt auf dem Validierungsset von den Annotationen abweichende umgebende Rechtecke. Das kann eine Erlärung dafür sein, dass die multiple object tracking precision sich im Mittel um ca. 4 cm auf 19, 81 cm verschlechtert.

5.6 gesamtsystem

MOTP = 19, 81 cm MOTA = 69, 9%

69

6

FA Z I T

Zum Abschluss folgt eine Zusammenfassung der umgesetzten Methodik dieser Arbeit sowie der Ergebnisse der Evaluierung, bevor mögliche Erweiterungen aufgezeigt werden. 6.1

zusammenfassung

Die zu lösende Problemstellung dieser Arbeit war die Entwicklung eines Systems zur Personenlokalisierung in intelligenten Umgebungen unter der Verwendung mehrerer, verteilter Kameraperspektiven. Hierzu waren zwei Teilprobleme zu lösen. Erstens wurden in einzelnen Kameraperspektiven Personen detektiert und zweitens Positionshypothesen durch die Fusion aller assoziierten Detektionen ermittelt. Das Anwendungsszenario, dass dieser Arbeit zu Grunde lag, war eine Vortragssituation mit mehreren, sich im Raum befindlichen Personen.

Problemstellung

Für die Entwicklung der bildbasierten Personenlokalisierung standen vier deckenmontierte Kameras im intelligenten Konferenzraum der FINCA zur Verfügung. Unabhängig voneinander wurde in jeder Perspektive ein KopfSchulter-Detektor zur Personendetektion eingesetzt. Zur Beschreibung von Personen wurden histograms of oriented gradients als Merkmalsvektoren verwendet. Mit einem gleitenden Fenster wurden Merkmale an allen Positionen und Skalierungen extrahiert und mittels einer linearen support vector machine in die Klassen Personen und nicht-Person unterteilt. Positive Detektionen wurden mit einem einfachen Hintergrundmodell auf ihre Plausibilität bezüglich des Anteils Vordergrundpixel im Detektionsbereich hin überprüft. Damit konnte eine relative Verbesserung der FPR um 12, 4% gegenüber den ungeprüften Detektionen erreicht werden.

Ausgangssituation

Für die Lokalisierung, welche auf die Detektion folgt wurden zwei Ansätze umgesetzt und evaluiert. Der erste Ansatz basiert auf der Triangulierung von Projektionsgeraden. Gesondert wurde hier das auftretende Assoziationsproblem betrachtet, wobei sich in Experimenten herausstellte, dass der räumliche Ansatz unter Verwendung der Abstandsschätzung anhand der Detektionsbreiten, das Problem besser löst, als das auf Vergleichen von gewichteten und ungewichteten Farbhistogrammen basierende Vorgehen. Für das Finden der endgültigen Positionshypothesen aus den Schnitten der Projektionsgeraden wurden gewichtete und ungewichtete Mittelwerte eingesetzt. Hierbei zeigte sich, dass unter Berücksichtigung des Schnittwinkels eine Steigerung der Präzision um ca. 10% bei isolierter Betrachtung der Lokalisierung auf den Testdaten erreicht wird.

Triangulierung

Für den zweiten Ansatz wurde eine Rückprojektion der Detektionen in den Raum umgesetzt. Dabei wird für jeden Voxel die Wahrscheinlichkeit der Besetzung durch eine Person anhand normalverteilter Dichtefunktionen geschätzt. Berücksichtigt wurden dabei der aus jedem Detektionsfenster ermittelte Drehwinkel sowie der jeweilige geschätzte Abstand zur Kamera. Die einzelnen Verteilungen aller Perspektiven wurden zur Fusion aufsummiert

Rückprojektion

71

Personendetektion

und die finalen Positionshypothesen der Detektionen anschließend durch das Finden lokaler Maxima bestimmt. Ergebnisse

MOTP 20 cm

Experimente haben gezeigt, dass die Präzision der Lokalisierung mit steigender Kameraanzahl zunimmt. Sowohl beim Geradenschnitt als auch bei der Rückprojektion konnte eine deutliche Steigerung beobachtet werden. Die Ergebnisse verbesserten sich von knapp 36 cm auf ca. 15 cm bei isolierter Betrachtung der Lokalisierung mittels Geradenschnitten. Die Lokalisierung im Gesamtsystem basiert auf Geradenschnitten mit gewichtetem Mittelwert. Diese Entscheidung wurde auf Grund der besseren Präzision und Genauigkeit getroffen. Experimente auf Testaufnahmen realer Gesprächssituationen haben gezeigt, dass die multiple object tracking accuracy des Gesamtsystems ca. 70% bei einer multiple object tracking precision von knapp unter 20 cm beträgt. 6.2

nahtlose Benutzerschnittstellen

ausblick

Die Positionshypothesen des hier umgesetzten Systems lassen sich vielfältig zur Gestaltung neuer Benutzerschnittstellen, die ohne Eingabegeräte auskommen, verwenden. Personen, die sich in gekennzeichneten Bereichen befinden können aktiv etwa durch Gesten mit der Technik des Raums interagieren oder passiv durch das Einnehmen spezifischer Positionen Aktionen auslösen. Die vielfältigen Forschungsergebnisse, welche in den letzten Jahren in der FINCA erreicht wurden, können zu einem interaktiven Konferenzraum kombiniert werden. 6.2.1

Steigerung der Robustheit

Die Verbesserung der Detektionsergebnisse hat einen direkten Einfluss auf die Genauigkeit und Präzision der Lokalisierungen. Daher wäre es denkbar, den Personendetektor um weitere Merkmale, wie eine Gesichtserkennung oder Audiolokalisierung zu erweitern. Damit könnten die Detektionsraten gesteigert und Fehlalarme eliminiert werden. Auch ist der Einsatz von Microsofts KINECT eine Möglichkeit die bildbasierten Distanzschätzung zu unterstützen oder die Hintergrundmodellierung zu verbessern. 6.2.2

Nutzerspezifische Interaktion

multimodale Detektion

72

Multimodale Detektion

Wiedererkennen von Personen

Das hier umgesetzte System detektiert Personen, erkennt sie jedoch nicht. Ein Wiedererkennen von Personen bietet vielschichtige Möglichkeiten zur Interaktion in einer intelligenten Umgebung. Jegliche Konfiguration des Konferenzraums, wie die bevorzugten Einstellungen der Präsentationstechnik könnten automatisch beim Betreten der Präsentationsfläche geladen werden. Dabei wäre zu untersuchen, ob ein rein videobasierter Ansatz trotz der hohen Varianz im Erscheinungsbild einer Person gute Erkennungsraten liefern kann oder ein multimodeales Verfahren unter Einsatz verschiedener Sensorik eine bessere Identifikation ermöglicht. Da die FINCA neben aktiven Videokameras mit Mikrofonarrays ausgestattet ist, wäre eine multimodale Personenerkennung durch die Kombination von Video und Sprache eine denkbare Erweiterungsmöglichkeit. Bernardin et al. [BES06b] haben zum

fazit

Beispiel ein System basierend auf der Fusion von Audiolokalisierungen und Gesichterkennung entwickelt, dass mehrere Personen erkennt und verfolgt. 6.2.3

Gestengesteuerte Präsentationen

Die Untersuchungen videobasierter Gestenerkennung von Richarz et al. [RF11, RF10] befassen sich mit der Konzeption einer berührungslosen und nutzerunabhängigen Mensch-Maschine-Interaktion in intelligenten Umgebungen. Anhand der Position im Raum, z. B. eines ausgezeichneten Präsentationsbereichs, kann es Personen ermöglicht werden eine Präsentationen durch Armgesten ohne Verwendung eines Eingabegeräts zu steuern. 6.2.4

Interaktion durch Gesten

Sprecherverfolgung mittels Audiolokalisierung

Die FINCA verfügt über Mikrofonarrays, welche ebenfalls im Fokus der Forschung stehen (vgl. [PF13, PHHF11]). Die Steigerung der Detektionsgenauigkeit und das Erkennen eines aktiven Sprechers lässt sich durch den Einsatz einer Audiolokalisierung realisieren. Ebenfalls ist die Umsetzung einer multimodalen Interaktion denkbar, in der lokalisierte Personen als Sprecher erkannt und mit einer Kamera verfolgt werden. Dies eröffnet Möglichkeiten zur Aufzeichnung und Übertragung von Videokonferenzen ohne die Notwendigkeit einer Auseinandersetzung mit der Einstellung und Bedienung der Aufnahmetechnik.

6.2 ausblick

Erkennen aktiver Sprecher

Fokussierung mittels Kamera

73

ABBILDUNGSVERZEICHNIS

Abbildung 1

Schematische Darstellung eines realen Vortragszenarios, in dem eine der drei Personen aktiv in der FINCA präsentiert. Die Positionen der vier deckenmontierten Kameras sind ebenfalls dargestellt. 2

Abbildung 2

Trennung zweier linear separierbarer Klassen ω1 und ω2 durch eine optimale Hyperebene H* und eine schlechte H’ [Nie83] 4

Abbildung 3

Morphologisches Filtern, links: ein Eingabebild, rechts: nach Anwendung der morphologischen Operation Closing mit einem rechteckigen Strukturelement, feine Strukturen wurden entfernt 8

Abbildung 4

Pinhole-Kameramodell mit Kamerazentrum C und Fokus F im Mittelpunkt der Bildebene welche im Abstand f von C plaziert ist 9

Abbildung 5

Ideale Triangulierung: Die Projektionslinien ausgehend von den Kamerazentren C und C 0 verlaufen durch die Punkte x und x 0 in der Bildebene und schneiden sich in genau einem Punkt s im Raum, der die 3D-Rekonstruktion des Punktes X darstellt 10

Abbildung 6

Handsender des 3D Ultraschall Lokalisierungssystems Bat System, einer Weiterentwicklung des infrarotbasierten Systems Active Badges (Quelle: http:// www.cl.cam.ac.uk/research/dtg/attarchive/bat) 13

Abbildung 7

Übersicht der Verarbeitungskette des HOG-basierten Detektors aus [DT05]. Ein Eingabebild wird mit einem gleitenden Detektionsfenster in einem dichten Raster in allen Skalierungen auf Personen untersucht. Jedes Detektionsfenster ist in überlappende Blöcke unterteilt, für die histograms of oriented gradients berechnet werden. Die Konkatenation der blocknormalisierten Merkmalsvektoren bildet die Eingabe für eine lineare SVM, welche die Vektoren in die Klassen Person und nicht-Person klassifiziert. 15

Abbildung 8

Visualisierung des HOG-Detektors: (a) Gemitteltes Gradientenbild über alle Trainingsdaten (b,c) Darstellung der positiven bzw. negativen SVM-Gewichte jedes Blocks (d) Ein Eingabebild aus dem Trainingsset (e) HOG-Deskriptor dieses Eingabebilds (f,g) Mit positiven bzw. negativen SVM-Gewichten gewichteter HOG-Deskriptor (Quelle: [DT05]) 17

Abbildung 9

Oben: Detektionen aus einem Personenmodell, bestehend aus einem groben root-Filter (a), mehreren höher aufgelösten Teilfiltern (b) und einem Kostenmodell für die Position der Teilfilter. Abbildung aus [FGMR10] 18

74

Abbildung 10

Oben: Detektionen aus einem Fahrrad-Modell bestehend aus zwei Komponenten, zur Modellierung der frontalen und seitlichen Ansicht. Das Modell lässt sich so verformen, dass auch das Fahren auf dem Hinerrad abgebildet werden kann. Abbildung aus [FGMR10] 19

Abbildung 11

Tracking mittels Optical Flow. (1): Verschiebung des Tracking-Fensters um durchschnittlichen Fluss, (2): Berechnung des durchschnittlichen Flusses, (3): Auffinden von Pixeln mit ähnlichem optischen Fluss wie der durchschnittliche Fluss, (4): Markierung der gefundenen Pixel mit neuem Tracking-Fenster. Nach [TMS01] 21

Abbildung 12

Beispiel für background subtraction von links nach rechts: Hintergrundmodell, Eingabebild, background subtraction mit weißer Region als Vordergrundpixel 22

Abbildung 13

Kamerakonfiguration aus [CHF06]. Eine Person betritt den Sichtbereich von Kamera B und soll einer in Kamera A identifizierten Personen zugeordnet werden. 24

Abbildung 14

Ausschnitt aus dem Ablaufdiagramm zur regelbasierten Assoziation aus [TPC08] 26

Abbildung 15

Das Setup des Easy-Living-Projekts beinhaltet zwei Stereo-Kameras, die an dedizierte Rechner (StereoModule) angeschlossen sind, welche die Stereo-Informationen und Farbhistogramme verwalten. Der Rechner mit dem Person-Tracker ist mit den Stereo-Modulen verbunden und führt die Assoziation und das Tracking durch. Abbildung aus [KHM+ 00] 27

Abbildung 16

Plot eines Pfads auf Bodenebene, links: vor Kalibrierung, rechts: nach Kalibrierung, Abbildung aus [KHM+ 00] 28

Abbildung 17

Ausgabe des Trackings aus [BGS08]. Die weißen Rechtecke stellen die gefundenen Körperregionen und die zur Gewichtung des Hintergrunds verwendeten Bereiche dar. 29

Abbildung 18

Bestimmung der endgültigen Position einer Detektion mittels Schnittgeraden von Ebenen aus [TMS01] 31

Abbildung 19

Bestimmung des Abstandsintervalles zur Kamera mittels einer Perspektive. Eigene Darstellung nach [TMS01] 31

Abbildung 20

Pipeline des Gesamtsystems 33

Abbildung 21

Die FINCA aus der Sicht aller Kameraperspektiven 34

Abbildung 22

Abmessungen der FINCA mit eingezeichneten Kamerapositionen 35

Abbildung 23

links und mitte: zwei Rückprojektionen von HOGDeskriptoren einzelner Eingabebilder, rechts: aus Trainingsdaten berechneter HOG-Detektor 36

Abbildung 24

links: Detektionen vor Meanshift-Gruppierung, rechts: nach Gruppierung mittels Meanshift 37

Abbildungsverzeichnis

75

Abbildung 25

Abbildung 26

Abbildung 27

Abbildung 28

Eliminierung falsch-positiver Detektionen mittels background subtraction, oben links: binäres Differenzbild DG, oben rechts: DG morphologisch gefiltert, unten links: Detektionen vor Plausibilitätsprüfung, unten rechts: nach erfolgter Plausibilitätsprüfung 38 Assoziationsproblem: die beiden Detektionen jeder Perspektive erzeugen vier Schnittpunkte und damit vier Positionshypothesen. Die Assoziation der einzelnen Detektionen ist zu lösen 41 Visualisierung einer Lokalisierung in der FINCA. Die grauen Linien stellen die Sichtbereiche der Kameras, den zentralen Tisch sowie die Bodenfliesen dar. Die Projektionsgeraden sind schwarz gefärbt. Die Kreise markieren die assoziierten Schnittpunkte, die Rechtecke stellen die Positionen der Lokalisierung dar. 43 Resultierende Wahrscheinlichkeitsverteilung bei zwei (k)

Abbildung 29

Abbildung 30

Abbildung 31

Abbildung 32

Abbildung 33 Abbildung 34

Abbildung 35

Abbildung 36 Abbildung 37

Abbildung 38

76

(k)

gegebenen Verteilungsdichten P( p|δi ) und P(d|δi ) 45 Visualisierung einer Lokalisierung in der FINCA. Die grauen Linien stellen die Grenzen des Sichtbereichs der vier Kameras und den zentralen Tisch dar. Die Werte der Wahrscheinlichkeitsverteilung sind analog zu den Graustufen zu lesen und liegen im Intervall [0, 255] 46 Beispielhafte Einzelbilder aus zwei verschiedenen Perspektiven aus dem Trainingsset mit annotierten Kopf-Schulter-Partien 50 Positionen in Testsequenz 4, die gestrichelten Kreise stellen sitzende und die durchgezogenen Kreise stehende Positionen dar 52 Darstellung von Detektionen anhand des Überdeckungsgrads. Blau dargestellt ist die ground truth, korrekte Detektionen sind grün, falsche Detektionen sind rot eingezeichnet 53 Kontingenzmatrix nach [Faw06] 54 Darstellung der precision-recall-Kurve für die einzelnen Perspektiven bei unterschiedlicher Detektionsfenstergröße 59 average precision je Kameraperspektive bei verschieden gewählten Größen der Detektionsfenster, die gestrichelte Linie zeigt die Fenstergröße 64x64, des Standarddetektors aus [DT05] an 60 Gegenüberstellung AUC-Werte von linearen und RBFKernelfunktionen 61 Morphologisches Filtern, von links nach rechts: Eingabebild, binarisierter Vordergrund, Ergebnis nach Opening 61 Einfluss der Plausibilität auf die Detektionsrate und die Rate der Fehldetektionen. Die jeweilige Rate bei θ P = 0 wurde auf 1 gesetzt und die Abweichung relativ dazu berechnet. Die gestrichelte Linie zeigt dabei den optimalen Schwellenwert θ P = 0.3 an, an dem die Detektionsrate beginnt zu sinken. 62

Abbildung 39

Darstellung der ground truth (blau, +) und der Positionshypothesen ermittelt mit gewichteten Geradenschnitt auf den Annotationen des Auschnitts aus Sequenz 3 (rot, ·), der eingezeichnete Tisch dient der Orientierung 66

TA B E L L E N V E R Z E I C H N I S

Tabelle 1 Tabelle 2 Tabelle 3

Tabelle 4 Tabelle 5 Tabelle 6 Tabelle 7

Tabelle 8 Tabelle 9 Tabelle 10

Tabelle 11

Tabelle 12 Tabelle 13

Tabelle 14 Tabelle 15

Leistungsfähigkeit ausgewählter aktiver Lokalisierungsverfahren nach [KY10] 14 Parameter des Standarddetektors aus [DT05] 16 Leistungsfähigkeit der vorgestellten Verfahren zur bildbasierten Personenlokalisierung in intelligenten Umgebungen 32 Kamerakonfiguration der vier Kameras in der FINCA 35 Klasseneinteilung confusion matrix 55 Klasseneinteilung confusion matrix mit G ∼ 0, 838 57 Mögliche Größen des Detektionsfensters in den einzelnen Kameraperpektiven abhängig von der Schulterbreite einer Person im Eingabebild 58 Optimale Fenstergrößen, die anhand des Validierungsdatensatzes experimentell ermittelt wurden 58 Precision, Recall und F1 -score für verschiedene Fehldetektionsraten 62 Auf dem Validierungsdatensatz optimierte Fenstergrößen mit den jeweiligen Schwellenwerten θ H für die lineare SVM bei einer FPR ≤ 5% im Vergleich zur Leistung des Standarddetektors bei gleicher Fehlerrate 63 Korrekter Anteil der Assoziation mittels ungewichteter Farbhistogramme bei Variation der bins für den Farbwert (hue) und die Sättigung (saturation) 64 MOTA und MOTP der beiden Varianten für die Lokalisierung mittels Geradenschnitt 67 MOTA und MOTP in cm für die Lokalisierung mittels Rückprojektion bei variierenden Varianzen σp2 und σd2 67 MOTA und MOTP in Abhängigkeit zur Anzahl der detektierenden Kameras 68 Detektionsergebnisse je Kameraperspektive auf der Testsequenz 69

Tabellenverzeichnis

77

L I T E R AT U R V E R Z E I C H N I S

[AHL+ 08]

´ E. Hristov, N. Lehment, B. Hornler, B. Schuller D. Arsic, und G. Rigoll: Applying multi layer homography for multi camera person tracking. In: Distributed Smart Cameras, 2008. ICDSC 2008. Second ACM/IEEE International Conference on, Seiten 1–9, 2008.

[BES06a]

K. Bernardin, A. Elbs und R. Stiefelhagen: Multiple object tracking performance metrics and evaluation in a smart room environment. In: Sixth IEEE International Workshop on Visual Surveillance, in conjunction with ECCV, Band 90, Seite 91, 2006.

[BES06b]

K. Bernardin, H. K. Ekenel und R. Stiefelhagen: Multimodal identity tracking in a smartroom. In: Artificial Intelligence Applications and Innovations, Seiten 324–336. Springer-Verlag, 2006.

[BGS07]

K. Bernardin, T. Gehrig und R. Stiefelhagen: Multi- and Single View Multiperson Tracking for Smart Room Environments. In: R. Stiefelhagen und J. Garofolo (Herausgeber): Multimodal Technologies for Perception of Humans, Band 4122 der Reihe Lecture Notes in Computer Science, Seiten 81–92. Springer Berlin Heidelberg, 2007.

[BGS08]

K. Bernardin, T. Gehrig und R. Stiefelhagen: Multi-level particle filter fusion of features and cues for audio-visual person tracking. In: Multimodal Technologies for Perception of Humans, Seiten 70– 81. Springer-Verlag, 2008.

[BK08]

G. Bradski und A. Kaehler: Learning OpenCV. O’Reilly Media, 2008.

[BP00]

P. Bahl und V. Padmanabhan: RADAR: an in-building RF-based user location and tracking system. In: INFOCOM 2000. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings. IEEE, Band 2, Seiten 775–784, 2000.

[Bra00]

G. Bradski: The OpenCV Library. Dr. Dobb’s Journal of Software Tools, 2000.

[Cha07]

S.-H. Cha: Comprehensive Survey on Distance/Similarity Measures between Probability Density Functions. International Journal of Mathematical Models and Methods in Applied Sciences, 2007.

[Cha09]

S. Chawathe: Low-latency indoor localization using bluetooth beacons. In: Intelligent Transportation Systems, 2009. ITSC ’09. 12th International IEEE Conference on, Seiten 1–7, 2009.

[CHF06]

Y.-S. Cheng, C.-M. Huang und L.-C. Fu: Multiple People Visual Tracking in a Multi-Camera System for Cluttered Environments. In: Intelligent Robots and Systems, 2006 IEEE/RSJ International Conference on, Seiten 675–680, 2006.

[CM02]

D. Comaniciu und P. Meer: Mean Shift: A Robust Approach Toward Feature Space Analysis. IEEE Transactions on Pattern Analysis and Machine Intelligence, 24(5), 2002.

[CSA93]

H.-J. Chen, Y. Shirai und M. Asada: Obtaining optical flow with multi-orientation filters. In: Computer Vision and Pattern Recognition, 1993. Proceedings CVPR ’93., 1993 IEEE Computer Society Conference on, Seiten 736–737, 1993.

79

80

[Dal06]

N. Dalal: Finding People in Images and Videos. Doktorarbeit, Institut National Polytechnique de Grenoble-INPG, 2006.

[DCC12]

G. Deak, K. Curran und J. Condell: Review: A survey of active and passive indoor localisation systems. Comput. Commun., 35(16):1939–1954, 2012.

[DG06]

J. Davis und M. Goadrich: The Relationship Between PrecisionRecall and ROC Curves. In: Proceedings of the 23rd International Conference on Machine Learning, ICML ’06, Seiten 233–240, 2006.

[DT05]

N. Dalal und B. Triggs: Histograms of oriented gradients for human detection. IEEE Conf. Computer Vision and Pattern Recognition, 2005.

[DWSP12]

P. Dollár, C. Wojek, B. Schiele und P. Perona: Pedestrian Detection: An Evaluation of the State of the Art. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012.

[EG09]

M. Enzweiler und D. Gavrila: Monocular Pedestrian Detection: Survey and Experiments. Pattern Analysis and Machine Intelligence, IEEE Transactions on, 31(12):2179–2195, 2009.

[Ega75]

J. P. Egan: Signal detection theory and ROC analysis. Series in Cognition and Perception. Academic Press, New York, NY, 1975.

[EGW+ 10]

M. Everingham, L. Gool, C. K. Williams, J. Winn und A. Zisserman: The Pascal Visual Object Classes (VOC) Challenge. Int. J. Comput. Vision, 88(2):303–338, jun 2010.

[EH02]

D. Ebert und D. Henrich: Safe human-robot-cooperation: imagebased collision detection for industrial robots. In: Intelligent Robots and Systems, 2002. IEEE/RSJ International Conference on, Band 2, Seiten 1826–1831, 2002.

[Faw06]

T. Fawcett: An introduction to ROC analysis. Pattern Recogn. Lett., 27(8):861–874, June 2006.

[FGMR10]

P. F. Felzenszwalb, R. B. Girshick, D. McAllester und D. Ramanan: Object Detection with Discriminatively Trained Part Based Models. IEEE Transactions on Pattern Analysis and Machine Intelligence, 32(9):1627–1645, 2010.

[Gav99]

D. M. Gavrila: The Visual Analysis of Human Movement: A Survey. Computer Vision and Image Understanding, 73:82–98, 1999.

[GW01]

R. C. Gonzalez und R. E. Woods: Digital Image Processing. Addison-Wesley Longman Publishing Co., Inc., 2nd Auflage, 2001.

[HHS+ 99]

A. Harter, A. Hopper, P. Steggles, A. Ward und P. Webster: The anatomy of a context-aware application. In: Proceedings of the 5th annual ACM/IEEE international conference on Mobile computing and networking, Seiten 59–68, 1999.

[HZ04]

R. I. Hartley und A. Zisserman: Multiple View Geometry in Computer Vision. Cambridge University Press, Second Auflage, 2004.

[Jür04]

H. W. Jürgens: Erhebung anthropometrischer Maße zur Aktualisierung der DIN 33 402. Teil 2. Technischer Bericht, Bundesanstalt für Arbeitsschutz und Arbeitsmedizin, 2004.

[KEG11]

C. Keller, M. Enzweiler und D. Gavrila: A new benchmark for stereo-based pedestrian detection. In: Intelligent Vehicles Symposium

literaturverzeichnis

(IV), 2011 IEEE, Seiten 691–696, 2011. [KHM+ 00]

J. Krumm, S. Harris, B. Meyers, B. Brumitt, M. Hale und S. Shafer: Multi-Camera Multi-Person Tracking for EasyLiving. Third IEEE International Workshop on Visual Surveillance, Seiten 3–10, 2000.

[KKJ+ 04]

P. Krishnan, A. S. Krishnakumar, W.-H. Ju, C. Mallows und S. Gamt: A system for LEASE: location estimation assisted by stationary emitters for indoor RF wireless networks. In: INFOCOM 2004. Twenty-third AnnualJoint Conference of the IEEE Computer and Communications Societies, Band 2, Seiten 1001–1011, 2004.

[KY10]

H. Koyuncu und S. H. Yang: A survey of indoor positioning and object locating systems. IJCSNS International Journal of Computer Science and Network Security, 10(5):121–128, 2010.

[LDZG12]

D. Liu, Y. Du, Q. Zhao und X. Guan: Vision-based indoor occupants detection system for intelligent buildings. In: Imaging Systems and Techniques (IST), 2012 IEEE International Conference on, Seiten 273–278, 2012.

[Lew90]

D. D. Lewis: Representation quality in text classification: an introduction and experiment. In: Proceedings of the workshop on Speech and Natural Language, HLT ’90, Seiten 288–295, Stroudsburg, PA, USA, 1990. Association for Computational Linguistics.

[Lew91]

D. D. Lewis: Evaluating text categorization. In: Proceedings of the workshop on Speech and Natural Language, HLT ’91, Seiten 312– 318, Stroudsburg, PA, USA, 1991. Association for Computational Linguistics.

[LM02]

R. Lienhart und J. Maydt: An extended set of Haar-like features for rapid object detection. In: Image Processing. 2002. Proceedings. 2002 International Conference on, Band 1, 2002.

[MFA07]

G. Mao, B. Fidan und B. D. O. Anderson: Wireless sensor network localization techniques. Comput. Netw., 51(10):2529–2553, 2007.

[MMK09]

E. Monari, J. Maerker und K. Kroschel: A Robust and Efficient Approach for Human Tracking in Multi-camera Systems. In: Advanced Video and Signal Based Surveillance, 2009. AVSS ’09. Sixth IEEE International Conference on, Seiten 134–139, 2009.

[Nie83]

H. Niemann: Klassifikation von Mustern. Springer-Verlag, 1983.

[NLLP03]

L. Ni, Y. Liu, Y. C. Lau und A. Patil: LANDMARC: indoor location sensing using active RFID. In: Pervasive Computing and Communications, 2003. (PerCom 2003). Proceedings of the First IEEE International Conference on, Seiten 407–415, 2003.

[PCB00]

N. B. Priyantha, A. Chakraborty und H. Balakrishnan: The Cricket location-support system. In: Proceedings of the 6th annual international conference on Mobile computing and networking, MobiCom ’00, Seiten 32–43, New York, NY, 2000. ACM.

[PF13]

A. Plinge und G. A. Fink: Online Multi-Speaker Tracking Using Multiple Microphone Arrays Informed by Auditory Scene Analysis. In: European Signal Processing Conference (EUSIPCO), 2013.

[PHHF11]

A. Plinge, D. Hauschildt, M. H. Hennecke und G. A. Fink: Multiple Speaker Tracking using a Microphone Array by Combining Auditory Processing and a Gaussian Mixture Cardinalized Probability Hypothesis Density Filter. In: Proc. Int. Conf. on Acoustics,

literaturverzeichnis

81

Speech and Signal Processing, 2011. [Pic04]

M. Piccardi: Background subtraction techniques: a review. In: Systems, Man and Cybernetics, 2004 IEEE International Conference on, Band 4, Seiten 3099–3104, 2004.

[PKCF08]

T. Plötz, C. Kleine-Cosack und G. A. Fink: Towards Human Centered Ambient Intelligence. In: Ambient Intelligence. Springer Berlin Heidelberg, 2008.

[PP00]

C. Papageorgiou und T. Poggio: A Trainable System for Object Detection. Int. J. Comput. Vision, 38(1):15–33, 2000.

[PS07]

S. Pszczółkowski und A. Soto: Human Detection in Indoor Environments Using Multiple Visual Cues and a Mobile Robot. In: Progress in Pattern Recognition, Image Analysis and Applications, Band 4756 der Reihe Lecture Notes in Computer Science, Seiten 350–359. Springer Berlin Heidelberg, 2007.

[RF10]

J. Richarz und G. A. Fink: Feature Representations for the Recognition of 3D Emblematic Gestures. In: Proceedings of the First International Conference on Human Behavior Understanding, HBU’10, Seiten 113–124, 2010.

[RF11]

J. Richarz und G. A. Fink: Visual Recognition of 3D Emblematic Gestures in an HMM Framework. J. Ambient Intell. Smart Environ., 3(3):193–211, August 2011.

[SB91]

M. J. Swain und D. H. Ballard: Color indexing. Int. J. Comput. Vision, 7(1):11–32, 1991.

[SN11]

S. Saad und Z. Nakad: A Standalone RFID Indoor Positioning System Using Passive Tags. Industrial Electronics, IEEE Transactions on, 58(5):1961–1970, 2011.

[TMS01]

H. Tsutsui, J. Miura und Y. Shirai: Optical flow-based person tracking by multiple cameras. In: in Proc. International Conference on Multisensor Fusion and Integration for Intelligent Systems (MFI ’01, Seiten 91–96, 2001.

[TPC08]

F. Talantzis, A. Pnevmatikakis und A. Constantinides: Audio-Visual Active Speaker Tracking in Cluttered Indoors Environments. In: Systems, Man, and Cybernetics, Part B: Cybernetics, IEEE Transactions on, 2008.

[VJ01]

P. Viola und M. Jones: Robust Real-time Object Detection. Second International Workshop On Statistical And Computation Theories Of Vision-Modeling, Learning, Computing and Sampling, 2001.

[VMV09]

M. Valtonen, J. Maentausta und J. Vanhala: TileTrack: Capacitive human tracking using floor tiles. In: Pervasive Computing and Communications, 2009. PerCom 2009. IEEE International Conference on, Seiten 1–10, 2009.

[WADP97]

C. Wren, A. Azarbayejani, T. Darrell und A. Pentland: Pfinder: real-time tracking of the human body. Pattern Analysis and Machine Intelligence, IEEE Transactions on, 19(7):780–785, 1997.

[Wah84]

F. M. Wahl: Digitale Bildsignalverarbeitung. 1984.

Springer-Verlag,

[WCWZ11] B.-B. Wang, Z.-X. Chen, J. Wang und L. Zhang: Pedestrian detection based on the combination of HOG and background subtraction method. In: Transportation, Mechanical, and Electrical Enginee-

82

literaturverzeichnis

ring (TMEE), 2011 International Conference on, Seiten 527–531, 2011. [WHFaG92] R. Want, A. Hopper, V. Falcão und J. Gibbons: The active badge location system. ACM Trans. Inf. Syst., 10(1):91–102, 1992. [YMA07]

M. Youssef, M. Mah und A. Agrawala: Challenges: device-free passive localization for wireless environments. In: Proceedings of the 13th annual ACM international conference on Mobile computing and networking, MobiCom ’07, Seiten 222–229, 2007.

[ZALA10]

I. Zuriarrain, J. I. Aizpurua, F. Lerasle und N. Arana: Multiple-person tracking devoted to distributed multi smart camera networks. In: IROS, Seiten 2469–2474, 2010.

[ZWXJ13]

H. Zou, H. Wang, L. Xie und Q.-S. Jia: An RFID indoor positioning system by using weighted path loss and extreme learning machine. In: Cyber-Physical Systems, Networks, and Applications (CPSNA), 2013 IEEE 1st International Conference on, Seiten 66– 71, 2013.

literaturverzeichnis

83

Suggest Documents