79
Intelligentes Mikrofonsystem – Einsatzszenarien und Realisierung Bachelor-Thesis zur Erlangung des akademischen Grades B.Sc. Robert Ballon 1991198 Hochschule für Angewandte Wissenschaften Hamburg Fakultät Design, Medien und Information Department Medientechnik Erstprüfer: Prof. Dr. Eva Wilk Zweitprüfer: Prof. Dr. Wolfgang Fohl 28. August 2014

Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

Embed Size (px)

Citation preview

Page 1: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

Intelligentes Mikrofonsystem –Einsatzszenarien und Realisierung

Bachelor-Thesiszur Erlangung des akademischen Grades B.Sc.

Robert Ballon1991198

Hochschule für Angewandte Wissenschaften HamburgFakultät Design, Medien und InformationDepartment Medientechnik

Erstprüfer: Prof. Dr. Eva Wilk

Zweitprüfer: Prof. Dr. Wolfgang Fohl

28. August 2014

Page 2: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

Inhaltsverzeichnis

1 Einleitung 1

2 Einsatzszenarien 22.1 Vortrag und Präsentation . . . . . . . . . . . . . . . . . . . . . . . . 22.2 Diskussionsrunde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.3 Konzertabend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.4 Funktionen und ihre Systemanforderungen . . . . . . . . . . . . . . . 8

2.4.1 Automatisches Mono-Verfolgermikrofon und abgeleitete Funk-tionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.4.2 Automatisches Stereo-Mikrofon und abgeleitete Funktionen . . 142.4.3 Audiomischung, -routing und -aufzeichnung . . . . . . . . . . 152.4.4 Benutzerschnittstelle . . . . . . . . . . . . . . . . . . . . . . . 162.4.5 Periphere Funktionen . . . . . . . . . . . . . . . . . . . . . . . 19

3 Mikrofonarrays und Ambisonics 223.1 Mikrofonarrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.2 Ambisonics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.2.2 Kanaldefinition und Normierung . . . . . . . . . . . . . . . . . 263.2.3 FuMa-Gewichtsfaktoren und MaxN . . . . . . . . . . . . . . . 273.2.4 Kanalordnung . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.2.5 B-Format, A-Format und HOA . . . . . . . . . . . . . . . . . 293.2.6 Beamforming . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4 Konzeption und Realisierung 354.1 Funktionsumfang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354.2 Video . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.2.1 Microsoft Kinect-Sensor als optisches System . . . . . . . . . . 36

ii

Page 3: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

Inhaltsverzeichnis

4.2.2 Einbindung in die Steuerungssoftware . . . . . . . . . . . . . . 374.3 Audio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

4.3.1 Soundfield SPS200 als Mikrofonarray . . . . . . . . . . . . . . 404.3.2 Signalverarbeitung und Beamforming . . . . . . . . . . . . . . 41

4.4 Realisierung in vvvv . . . . . . . . . . . . . . . . . . . . . . . . . . . 494.4.1 Die Entwicklungsumgebung vvvv . . . . . . . . . . . . . . . . 494.4.2 Die Mikrofonsteuerung in vvvv . . . . . . . . . . . . . . . . . 52

5 Test, Bewertung und Erweiterungen 635.1 Theoretische Grenzen des Gesamtsystems . . . . . . . . . . . . . . . . 635.2 Das System in der Praxis und Erweiterungen . . . . . . . . . . . . . . 66

6 Fazit 68

A Daten auf der angehefteten CD-ROM 69

Abbildungsverzeichnis 70

Tabellenverzeichnis 71

Literaturverzeichnis 72

iii

Page 4: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

Abstract

A microphone system with the intelligent capability to recognize and react to itssurroundings can accomplish tasks automatically that would otherwise need to becompleted by an audio engineer. This thesis explores the various scenarios in whicha beamforming microphone array with a visual sensor capable of localizing humanswould be applicable, and the technical and functional requirements of these scenariosare analyzed. Of note are the two key functionalities: one an automatic tracking monomicrophone, the other a self-setting stereo microphone. Moreover, the idea behindthis system, inspired by the sensor technology, is expanded upon to include many morepotentially advantageous functionalities. The automatic tracking of moving personsby up to two directional microphones is realized. An ambisonic microphone arrayand a Microsoft Kinect sensor were used to accomplish this, and the developmentenvironment was vvvv. Beforehand, the topic of beamforming with ambisonics isexplored in detail.

Zusammenfassung

Ein Mikrofonsystem mit Intelligenz, welches die Umwelt wahrnehmen und daraufreagieren kann, ist in der Lage, Aufgaben die sonst manuell von tontechnischemPersonal erledigt werden müssen, automatisch auszuführen.In dieser Arbeit werden Einsatzszenarien für ein Mikrofonarray mit Beamforming-

funktion und einer optischen Sensorik, welche in er Lage ist, Personen zu lokalisieren,entworfen und auf die funktionalen sowie technischen Anforderungen hin analysiert.Zu nennen sind die beiden Kernfunktionalitäten, ein sich automatisch nachführen-des Monomikrofon sowie ein automatisch einstellendens Stereomikrofon. Zudem wirdein solches System weitergedacht und ein Gesamtsystem entworfen, in welchem sichviele weitere Funktionen, inspiriert durch die verwendete Sensorik, gewinnbringendverwenden ließen.Die Funktionalität des automatischen Nachführens von maximal zwei gerichteten

Mikrofonen, zeigend auf sich bewegende Personen, wird exemplarisch realisiert. Ver-wendet werden dazu ein Ambisonics-Mikrofonarray und ein Microsoft Kinect-Sensor,programmiert wird in der Entwicklungsumgebung vvvv. Im Vorfeld wird detailliertauf Ambisonics und das Beamforming mit Ambisonics eingegangen.

Page 5: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

1 Einleitung

Ein technisches intelligentes System ist entweder ein System, welches Entscheidungenaufgrund von Erfahrungen in Form von gespeicherten Daten oder aufgrund von sen-sorischen Daten trifft. Das hier behandelte System ist der zweiten Art zuzuordnen.Es handelt sich um ein Mikrofonsystem welches als zusätzlichen Eingang eine opti-sche Sensorik besitzt. Diese optische Sensorik liefert Daten an eine interpretierendeSoftware und macht das Mikrofon dadurch intelligent. Doch was für eine Intelligenzbenötigt ein Mikrofon? Und was nützt sie ihm?Das Mikrofon dieses Systems ist kein einfaches Mikrofon, sondern ein Mikrofonar-

ray. Das System ist dadurch in der Lage, durch Beamforming virtuelle, gerichteteMikrofone in frei wählbarer Anzahl, in frei wählbare Raumrichtungen und in einerfrei wählbarer Richtcharakteristik zu erstellen.Wenn nun das System durch den Input der optischen Sensorik, also z.B. einer

RGB- und einer 3D-Kamera, in der Lage ist, die ihm sichtbare Situation in eineMikrofonaufnahme zu übersetzen und das Mikrofon dementspechend zu steuern, dannkann man dieses ein intelligentes Mikrofonsystem nennen.Für solch ein System, welches insbesondere in der Lage ist, Menschen zu erkennen

und diese bestmöglich zu mikrofonieren, sollen Einsatzszenarien entworfen werden.Anhand dieser Einsatzszenarien kann man die einzelnen Funktionalitäten, welchesolch ein Mikrofonsystem sinnvoll machen, herausarbeiten und auf ihre technischeRealisierbarkeit hin untersuchen.Diese Aufgabe ist ein Teil der Zielsetzung dieser Arbeit. Zudem soll ein Anfang ge-

macht werden, genau solch ein System als ein Computerprogramm zu realisieren. Da-bei wird der abstrakte „Alleskönner“ reduziert auf eine konkrete Basisfunktion. DasErgebnis soll ein Angebot sein, immer mehr von diesem Abstrakten in das Konkretezu überführen. Eine exemplarische, leicht erweiterbare Softwareentwicklung wird indieser Arbeit angestrebt.

1

Page 6: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

Im Folgenden werden drei Einsatzszenarien vorgestellt in denen ein intelligentes Mi-krofonarray äußerst gewinnbringend eingesetzt werden kann. Nach der Beschreibungeines jeden Szenarios findet sich eine Auflistung der verwendeten Funktionalitäten.Ein numerischer Verweis auf die Funktionalität in der Liste ist dabei in die beschrei-bung der Szenarien mit eingearbeitet.Die hier vorgestellten Sammlung an Funktionen des Gesamtsystems erhebt keinerlei

Anspruch auf Vollständigkeit. Trotzdem wurde jedoch versucht, die Hauptfunktiona-litäten, die mit solch einem System zu realisieren wären, zu erwähnen und auch ineinen sinnvollen Kontext zu bringen.

2.1 Vortrag und Präsentation

Der Vortragender betritt die Bühne und stellt sich vor ein Rednerpult. Die Positi-on des Redners wird optisch erfasst und das Mikrofonarray generiert ein virtuellesRichtmikrofon, dessen Hauptaufnahmerichtung immer auf den Redner gerichtet ist(1). Nach ein paar Worten entfernt sich der Redner vom Rednerpult in Richtungder Projektion seiner Präsentationsfolie, um auf ihr etwas zu verdeutlichen. Dabeizeigt die Hauptaufnahmerichtung weiterhin in Richtung des Redners. Da der Rednernun wahrscheinlich einen anderen Abstand zum Mikrofonarray hat, wird sich auchder Schallpegel verändert haben, den das Mikrofon empfängt. Dieses Problem kanndurch Einbinden von Audioeffekten, wie z.B. Kompressoren, abgeschwächt werden(2). Da aber auch die Positionsdaten dazu verwendet werden können, den Abstandzwischen Redner und Mikrofon zu ermitteln, kann der akustische Pegelabfall auchdurch eine berechnete Pegelerhöhung versucht werden, zu kompensieren (3). DasWeiterschalten der Präsentationsfolien führt der Vortragende per Gestensteuerungaus. Dazu hält er seine Hand nach oben in Richtung der Projektion, greift in die Luftund bewegt die Hand nach links oder rechts, um sich in der Präsentation vor oder

2

Page 7: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

zurück zu bewegen (4).Ein weiterer Redner tritt auf die Bühne, um ein spezielles Unterkapitel zu bespre-

chen. Sobald er die Bühne betreten hat und seine Position erkannt wird, generiert dasSystem ein weiteres virtuelles Richtmikrofon, welches den zweiten Sprecher verfolgt(5). Außerdem wird automatisch ein Jingle oder eine Einlaufmusik eingespielt, wel-cher oder welche das Auftreten des Sprechers einleitet (6). Für die Zeit, in welcherdieser spricht, stellt sich der erste Vortragende an den Bühnenrand, in einen sog.„stummen“ Bereich. Der ihm zugeordnete Mikrofonkanal wird während des Aufent-halts in diesem Bereich stummgeschaltet (7).Am Ende des Kurzvortrages des zweiten Sprechers kommt es zu einem Dialog zwi-

schen den beiden Personen auf der Bühne (natürlich darf sich keiner von beiden imstummen Bereich aufhalten). Beiden sind unterschiedliche Audiokanäle zugewiesen,lassen sich unabhängig voneinander aufzeichnen (8) und sind also auch unabhängigvoneinander pegelbar. Dies allerdings im Rahmen der verwendeten Richtcharakteris-tik und der daraus resultierenden Quellentrennung. Der zweite Redner tritt wiedervon der Bühne ab und entfernt sich in diesem Fall aus dem Erfassungsbereich desoptischen Sensors, sein virtuelles Richtmikrofon wird daraufhin deaktiviert (9).Jede von der Automation vorgenommene Einstellung wurde währenddessen von

dem Tonverantwortlichen auf der grafischen Benutzeroberfläche verfolgt. Es ist einLive-Kamerabild der optischen Sensorik zu sehen, auf welcher die erkannten undgetrackten Personen markiert sind (10). Die virtuellen Mikrofone, die auf diese ge-trackten Personen gerichtet sind, werden durch ein 3D-Rendering der Richtcharak-teristik perspektivisch richtig dargestellt (11). Auf alle Parameter kann der Tonver-antwortliche manuell Einfluss nehmen. Er kann die Richtcharakteristik der virtuellenMikrofone verändern und diese stummschalten. Er kann das automatische Verfolgendeaktivieren und die Ausrichtung eines virtuellen Richtmikrofons mittels der Com-putermaus auf einem Kamera-Livebild manuell nachführen (12). Mit der Computer-maus kann er beliebig viele weitere virtuelle Richtmikrofone im Raum platzieren undwieder entfernen (13).Auch bestimmt der Tonverantwortliche das Audio-Routing der entstandenen Kanä-

le. Beide auf der Bühne erschienenen Sprecher wurden einzeln aufgezeichnet und dieSignale, gemischt zu einem Monosignal, auch an die Beschallungsanlage weitergege-ben (14)(15).Kurz vor Ende der Veranstaltung kommt es zu einer Fragerunde bzw. einer Dis-

3

Page 8: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

kussion zwischen den Zuhörern und dem Vortragenden. Es ist vorgesehen, dass denFragenden im Publikum ein Mikrofon gereicht wird, einerseits, um sie über die Be-schallungsanlage besser verständlich zu machen, andererseits um die Fragen auch aufder Audio-Aufzeichnung der Veranstaltung hörbar zu haben. Leider beginnt der Fra-gende im Publikum zu sprechen, bevor ein Tonassistent ihn mit einem Handmikrofonerreichen konnte. Der Tonverantwortliche hatte aber, sobald er den Wunsch zu spre-chen der Person im Publikum vernommen hatte, ein virtuelles Mikrofon, gerichtetauf die entsprechende Seite im Publikumsraum, erstellt (13). Auch, wenn der Fra-gende aufgrund der großen Entfernung nur leise zu hören war, so ist der Beginn seinerAnmerkungen und Fragen, bis das Handmikrofon bei ihm angekommen war, auf derAufzeichnung deutlich zu hören.

Funktionen:

1. automatisch ausrichtendes Mono-Verfolgermikrofon

2. Einbinden von Audioeffekten in den Signalweg

3. Pegelsteuerung durch Distanzmessung

4. Gestensteuerung von peripherer Software

5. simultanes Bereitstellen von mehreren unabhängigen virtuellen Mikrofonen

6. Auslösen von Ereignissen durch Betreten des Erfassungsbereiches des optischenSensors, z.B. Starten von Audio-Einspielungen.

7. Auslösen von Ereignissen durch Betreten eines vorher definierten Bereiches.

8. Audio-Aufzeichnung der virtuellen Mikrofone

9. Registrieren des Verlassens des Erfassungsbereiches

10. Monitoring der Tracking-Ergebnisse und der daraus resultierenden Parameterfür die Mikrofonsteuerung

11. 3D-Visualisierung des Mikrofons in einem Kamerabild mit Richtcharakteristikund Ausrichtung

12. manuelle Einflussnahme auf alle Parameter, Abschalten der Automation

4

Page 9: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

13. manuelles Hinzufügen von virtuellen Richtmikrofonen und komplett manuelleDefinition

14. Audio-Aufzeichnung

15. Generieren von Audio-Mischungen aus den zur Verfügung stehenden Audio-kanälen in Mono oder Stereo.

2.2 Diskussionsrunde

Der Moderator einer Diskussionsrunde betritt die Bühne und begrüßt das anwesen-de Publikum. Wie auch im Vortragsszenario, beschrieben in Kapitel 2.1 wird einvirtuelles Mikrofon generiert, dessen Hauptaufnahmerichtung ihn verfolgt (1). DerTonverantwortliche löst über die grafische Benutzeroberfläche die Einspielung einesJingles oder einer Einlaufmusik aus (16). Ein Teilnehmer der Diskussionsrunde be-tritt die Bühne und bewegt sich in Richtung des ihm zugewiesenen Stuhls. Als er einenbestimmten Bereich auf der Bühne passiert, blendet sich der Jingle automatisch aus(7). Auch wird ihm ein weiteres, virtuelles Mikrofon zur Verfügung gestellt (5). Die-ses kann entweder ortsfest auf die Sitzposition des Teilnehmers gerichtet (17), oderwie beim Moderator als Verfolgermikrofon ausgelegt sein.Weitere Gesprächsteilnehmer können der Diskussion beitreten, es findet der glei-

che Ablauf statt. Verlässt ein Teilnehmer die Diskussionsrunde, wird das virtuelleMikrofon deaktiviert und beim Abtreten von der Bühne wieder ein Jingle eingespielt,der sich nach vorgegebener Zeit automatisch ausblendet(9). Die Anordnung der Dis-kussionsteilnehmer bilden dabei mögliche Formen wie eine Reihe oder einen Kreis.Auch an einem Tisch sitzend kann man sie sich vorstellen. Die einzelnen virtuellenMikrofonkanäle werden zwar einzeln aufgezeichnet, gleichzeitig wird aber ein Mixerzeugt, bei welchem alle Diskussionsteilnehmer in einem Stereobild gleichmäßig vonlinks nach rechts angeordnet sind. Dies ist unabhängig davon, wie viele es sind undob sie z.B. in einer Reihe oder einem Kreis gesessen haben (15). Das Stereobild wirdgebildet durch Panning innerhalb der Software, es entsteht also Intensitätsstereofonie(18).

Neue Funktionen:

16. Auslösen von Ereignissen über die grafische Benutzeroberfläche

5

Page 10: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

17. Arretieren der Position von automatisch aktivierten virtuellen Mikrofonen

18. automatisches Panning, Anordnen auf der Stereobreite.

2.3 Konzertabend

Ein Moderator tritt auf die Bühne. Dieser Moderator wird vom System als Mode-rator identifiziert, da bestimmte Eigenschaften seines Körpers, wie z.B. die Beschaf-fenheit seines Gesichtes dem System vorher bekanntgemacht worden sind. Wie ausden anderen Szenarien bekannt, wird ein virtuelles Richtmikrofon erzeugt, welchesaber nur den Moderator verfolgt (1)(19). Er spricht zum Publikum und kündigtein Gesangsensemble an. Der Moderator verlässt die Bühne, der Mikrofonkanal wirdentfernt (9). Da sich der Moderator, welchen das System ja identifizieren kann, nichtmehr im Erfassungsbereich des optischen Systems befindet, wechselt das System auto-matisch den Betriebsmodus (20). Wäre der Moderator vorher nicht mit dem Systembekannt gemacht worden, hätte an dieser Stelle der Tonverantwortliche den Betriebs-modus manuell wechseln können. Im Folgenden wird die Mikrofonsteuerung nun keinevirtuellen Verfolgermikrofone generieren, sondern arbeitet in einem Stereo-Modus.Das Gesangsensemble begibt sich auf die Bühne und stellt sich auf. Dabei wird die

Position der äußeren Sänger links und rechts erfasst und anhand dieser Informationder Stereo-Aufnahmebereich sowie die optimale Richtcharakteristik für ein virtuellesXY-Stereo-Mikrofon berechnet und eingestellt (21). Zum letzten Stück des Ensembleskommen einige weitere Sängerinnen und Sänger auf die Bühne, der Aufnahmebereichdes Stereomikrofons vergrößert sich auf einen automatisch erfassten Wert. Damit sichwährend der Gesangsdarbietung und bei leichten Bewegungen der äußeren Sänger dieEinstellungen des Stereo-Mikrofons nicht verändern, hat der Tonverantwortliche denautomatisch eingestellten Stereo-Aufnahmebereich arretiert, vor Vergrößerung desEnsembles die Arretierung aber gelöst, damit sich der Aufnahmewinkel neu einstellenkann (22).Neben den Signalen des virtuellen XY-Stereomikrofons wurden auch noch MS-

Stereofoniesignale aufgezeichnet (14)(23). Selbstverständlich hätte man bei Auf-zeichnung der Ausgangssignale des Mikrofonarrays auch im Nachhinein noch einMS-Signal oder auch ein anderes Stereosignal generieren können, so steht aber di-rekt nach der Aufzeichnung schon ein gebrauchsfertiges und variables Stereoformatzur Verfügung.

6

Page 11: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

Den nächsten Programmpunkt des Konzertabends bilden zwei Schlagzeuger, diemit mehreren, auf der Bühne aufgebauten Instrumenten ihr aufzuführendes Stück ge-stalten. Sie werden sich dabei viel bewegen, eine automatische Einstellung des Stereo-Aufnahmebereichs ist deshalb nicht sinnvoll. Der Tonverantwortliche markiert in ei-nem Kamerabild des optischen Sensors mit der Computermaus die Außenpunkte desAufnahmebereichs, die ihm als schlüssig erscheinen. Die Mikrofonsteuerung berechnetdaraus wieder ein virtuelles Stereomikrofon. Dem Tonverantwortlichen werden hierbeialle Parameter wie z.B. Versatzwinkel der virtuellen Mikrofone für links und rechts,Aufnahmewinkel bzw. -bereich und die gewählte Richtcharakteristik angezeigt. Aufalle Parameter kann er hierbei manuell Einfluss nehmen(24).In einer vorangegangenen Probesituation, die auch aufgezeichnet werden sollte, ha-

ben die Schlagzeuger die Einstellung per Gestensteuerung gelöst. Dabei wurde durchStehen an einer der Grenzen des Aufnahmebereichs und durch eine nachfolgende, be-stimmte Geste ein Randpunkt des Aufnahmebereichs festgelegt. Dies geschah selbst-verständlich an beiden Grenzseiten des Bereichs (25). Dass die Einstellung erfolgtist, wurde den Musikern über eine akustischer Rückmeldung des Systems mitgeteilt(26). Auch das Starten und Beenden der Aufnahme ließ sich von den Musikern perGestensteuerung vollziehen (27).

Neue Funktionen:

19. Zuweisung bestimmter Funktionen nur an optisch identifizierte Personen

20. Definition verschiedener Betriebsmodi

21. Stereo-Mikrofonierung mit automatisch einstellendem Stereo-Aufnahmebereich

22. Arretierung des Aufnahmebereichs des automatisch eingestellten virtuellen Ste-reomikrofons

23. Virtualisierung von mehreren Stereomikrofonen in unterschiedlichen Stereo-Aufzeichnungsformaten

24. Manuelles Hinzufügen von virtuellen Stereomikrofonen und komplette manuelleDefinition

25. Gestengesteuerte Definition eines Stereo-Aufnahmebereichs

26. akustische Rückmeldung über erfolgte Einstellungen

7

Page 12: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

27. Gestengesteuertes Starten und Beenden einer Aufnahme

2.4 Funktionen und ihre Systemanforderungen

Die Funktionen in den beispielhaften Einsatzszenarien (siehe Kapitel 2) sind dem ers-ten Einsatz nach geordnet. Diese Reihenfolge macht Sinn, um die vielfältigen Funk-tionen in einem sinnvollen Kontext darzustellen. Auch kann diese Darstellung dazuführen, den Leser zu inspirieren, die beschriebenen Situationen weiterzudenken undmöglicherweise weitere ihm sinnvoll erscheinende Funktionen zu finden.Für eine tiefergehende Betrachtung der Funktion, insbesondere mit dem Augen-

merk auf eine technische Realisierung dieser, ist eine Einordnung der Funktionenmittels der folgenden Kategoriesierung sinnvoller: Alle Funktionen lassen sich eintei-len in Kernfunktionen, abgeleitete Funktionen und periphere Funktionen. Zusätzlicheinzuordnen sind Funktionen aus Kapitel 2, die im eigentlichen Sinne Gestaltungs-merkmale einer Benutzerschnittstelle sind.Kernfunktionen sind nur sehr wenige Funktionen, die aber die Beschaffenheit und

Erweiterbarkeit des Systems prägen. Die meisten in Kapitel 2 vorkommenden Funk-tionen gehören zu solch einer Kernfunktion und sind ihr unterstellt. Sie werden durchdiese erst realisierbar und auch sinnvoll, heißen also abgeleitete Funktionen. Die pe-ripheren Funktionen haben nichts mit den Kernfunktionen zu tun und extendierendas System in weitere Richtungen. Die peripheren Funktionen sind nicht „mikrofon-motiviert“, aber inspiriert durch die verwendete technische Auslegung. Gestaltungs-merkmale der Benutzerschnittstelle sind diese Funktionen, die es dem System er-möglichen, Informationen an den Benutzer zu leiten und wiederum dem Benutzerermöglichen, Befehle an das System zu geben.

2.4.1 Automatisches Mono-Verfolgermikrofon undabgeleitete Funktionen

Das automatisch ausrichtende, virtuelle Mono-Verfolgermikrofon ist eine Kernfunkti-on des Systems. Es erkennt, ob sich Personen im Erfassungsbereich befinden, generiertein Mikrofon, richtet seine Hauptaufnahmerichtung automatisch auf diese Person undhat dabei eine feste oder wählbare Richtcharakteristik. Es ist also definiert über dieZeigerichtung und die Richtcharakteristik.

8

Page 13: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

Steuerungssoftware

Human Detection/Gesichtsdetektion

Audiosig.-verarb.:

Beamforming

Winkelangaben dererkannten Person

Monosignal des virt. Mikrofons

Kamera

Mikrofonarray

Abbildung 2.1: Blockschaltbild des Mono-Verfolgermikrofons

Das virtuelle Mikrofon wird durch Beamforming des Mikrofonarrays generiert. DieSteuerungssoftware, welche die Audiosignalverarbeitung in Echtzeit und damit auchdie Steuerung des Beamforming übernimmt, muss also an folgende Informationengelangen: Gibt es eine Person, für welche ein virtuelles Mikrofon generiert werdensoll und wenn ja, wo befindet sich diese. Dazu erhält die Steuerungssoftware Bild-informationen eines optischen Systems. Durch eine Analyse dieser Bilddaten, kanndie Software nun einerseits die Präsenz von Personen und auch Standortinforma-tionen dieser erfassen. Hierzu bieten sich zwei Technologien an: Human Detectionund Gesichtsdetektion. Bei beiden wird nach menschlichen Mustern im Bild gesucht.Dieser Prozess kann auf 2D-Kamerabilder in Graustufen oder RGB, ein Farbbild,angewendet werden. Während nun Human Detection sich auf das Finden von For-men, die menschlichen Körpern entsprechen bezieht, wird bei der Gesichtsdetektionallein nach typischen Mustern gesucht, wie menschliche Gesichter sie darstellen. Hierlassen sich schon erste Vor- und Nachteile der Erkennungstechniken ausmachen: Soll-te sich eine Person im Erfassungsbereich der Kamera aufhalten und nicht verdecktsein, so wird ihr Körper immer zu erkennen sein. Das Gesicht ist dagegen nur dannerkennbar, wenn es auch in Richtung der Kamera zeigt. Das Gesicht hat aber denVorteil, dass wenn es zu sehen ist, es unwahrscheinlicher von anderen Gegenständen

9

Page 14: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

verdeckt wird, als der Rest des Körpers. So können bei Human Detection Möbel wiez.B. ein Rednerpult einen großen Teil der Person verdecken und die Erkennung starkerschweren. Auch Interaktionen mit Gegenständen können hier zu Problemen führen,was bei der Gesichtsdetektion sicherlich seltener der Fall ist. Natürlich spricht nichtsdagegen, beide Technologien gleichzeitig oder eine von beiden als Ausfallschutz, alsoals sog. Backup-Lösung zu verwenden.Ist eine der beiden Methoden erfolgreich, eine Person im Bild also detektiert und

sind die Abbildungseigenschaften der Kamera bekannt, so kann aufgrund der Positi-on der erkannten Muster in der Abbildung eine erste Lokalisation erfolgen. Es kannein vertikaler und horizontaler Winkel relativ zur optischen Achse der Kamera ange-geben werden, an welchem sich die erkannte Person aus Sicht der Kamera aufhält.Bei einer Ausrichtung des Mikrofonarrays an der optischen Achse der Kamera undtheoretisch gleicher Position des Mikrofonarrayzentrums und der Kamera, kann dererfasste horizontale und vertikale Winkel als Ausrichtung für das Beamforming ver-wendet werden. Sollte das Mikrofonarray an einem anderen Ort stehen, so fallen dieWinkelangaben für die Ausrichtung selbstverständlich anders aus. Hierzu müssen derSteuerungssoftware Positionsangaben des Arrays, relativ zur Kamera, vorliegen, umden entsprechenden Ausrichtungswinkel berechnen zu können.Für das Mono-Verfolgermikrofon ist also ein für das Beamforming erforderliches Mi-

krofonarray, eine Videokamera sowie Software für Echtzeit-Audiosignalverarbeitungund Bildanalyse mit Human Recognition oder Gesichtserkennung die Mindestanforde-rung. In der schlichtesten Ausführung kann das System eine Person verfolgen und einMono-Mikrofon virtualisieren. In Abbildung 2.1 findet sich dieses System als Block-schaltbild skizziert.

Mehrere, simultane Mono-Verfolgermikrofone (5)

Die Bereitstellung von mehreren, simultanen virtuellen Mikrofonen ist allein eineAnforderung an die Software. Die Signale des Mikrofonarrays können kopiert undtheoretisch unendlich oft bearbeitet werden. Der Bildanalysealgorithmus, der HumanDetection oder Gesichtsdetektion ausführt, muss dafür natürlich in der Lage sein,mehr als einen Menschen im Kamerabild zu erkennen. Es stellt sich nun aber dieFrage, wie mit mehreren Ausgangssignalen umgegangen wird. Die Audiosignalverar-beitung wird die Signale der einzelnen virtuellen Mikrofone vorerst getrennt haltenund kann diese in getrennten Audiokanälen ausgeben oder an eine weiterführende

10

Page 15: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

Signalverarbeitung weitergeben.

Manuelle Einstellung des Monomikrofons

Es kann der Wunsch bestehen, die Automation des Mikrofons vollständig oder inTeilen zu deaktivieren. Das Aktivieren und Deaktivieren von Mono-Mikrofonen, dieFestlegung der Anzahl an virtuellen Mikrofonen und auch die Richtung, in welche derBeam zeigt, kann manuell eingestellt werden. Mit der Erweiterung des manuellen Ein-griffs in die komplette oder teilweise Steuerung verändert sich nichts am Grundmodelldes Systems, allein die Notwendigkeit einer Benutzerschnittstelle kommt hinzu. DieDaten der Benutzereingaben können identisch zu den von der Automation erzeugtenSteuerdaten verarbeitet werden. Diese Benutzerschnittstelle findet sich in Kapitel2.4.4 genauer beschrieben.

Automatische Pegelsteuerung

Bei einem sich bewegenden Redner sind erhebliche Pegelschwankungen zu erwarten.Eine Verdopplung des Abstandes zum Mikrofon führt zu einer Dämpfung des vomMikrofon gewandelten Schalldruckpegels von 6 dB. In der Praxis kann durch den Ein-satz von Audio-Kompressoren diese unerwünschte Erscheinung abgeschwächt werden.In den meisten Fällen wird aber, um immer einen angemessenen Signalpegel zu er-reichen, ein manuelles Pegeln des Mikrofonsignals von einer Person mit wachsamemAuge von Nöten sein, die den Abstand zwischen Mikrofon und Redner überwacht.In der Konzeption des automatischen Mono-Verfolgermikrofons ist jedoch schon ein„Auge“, die Kamera, Bestandteil des Systems. Wenn sich eine Person weiter von derKamera entfernt, so wird auch die Abbildung dieser Person im aufgenommenen Kame-rabild kleiner. Da die Person entweder mit Gesichtsdetektion oder Human Detectionerkannt sein sollte, können auch die Ausmaße im Kamerabild ausgelesen werden. DasProblem hierbei ist, dass Menschen und auch ihre Gesichter unterschiedlich groß sind.Um wirklich absolute Angaben über ihre Entfernung aus dem Kamerabild machenzu können, müsste die automatische Pegelsteuerung für jede Person einzeln kalibriertbzw. eingestellt werden. Natürlich kann eine Kalibrierung mit Durchschnittswertenals Standardeinstellung dienen um diese Funktion immer auch ohne personenspezifi-sche Einstellung zur Verfügung zu stellen.Eine weitere Möglichkeit, den Abstand zwischen Mikrofon und Person zu ermitteln

ist der Einsatz eines Tiefensensors, also einer dreidimensionalen Bilderfassung. Wenn

11

Page 16: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

das Bild der Kamera in 3D erfasst wird, können absolute Angaben über die Positionder erkannten Person gemacht werden. Die vom optischen System bereitgestelltenDaten sind ausreichend, um eine über den horizontalen und vertikalen Winkel hin-ausgehende Angabe über den Standpunkt zu machen: Es kann zusätzlich noch derRadius, also der Abstand zwischen der Person und der Kamera angegeben werden.Mit den vollständigen Angaben der Position in Kugelkoordinaten, welche aber auch

aus der erwähnten 2D-Entfernungsberechnung gewonnen werden können, kann danndie Position in Koordinaten eines kartesischen Koordinatensystems umgerechnet wer-den. Wenn die Position des Mikrofons in diesem von der 3D-Kamera ausgehendenKoordinatensystem bekannt ist, kann aus der Position des Sprechers sehr einfach dieEntfernung zum Mikrofon ermittelt werden.Die Verwendung von Tiefenbilderfassung hätte noch einen anderen, dem System zu-

träglichen Vorteil. Bilddaten in 3D erleichtern stark die sog. Background-Substraction(Shotton et al. 2013). Background-Substraction ist ein Teil der Bearbeitungsschritte,der bei Human Detection und Gesichtsdetektion angewendet wird. Diese bildverarbei-tende Methode versucht, den Vordergrund eines Bildes vom Hintergrund zu trennen.In der Regel ist es der bewegte Vordergrund einer Szenerie, in dem sich die für dieAnalyse interessanten Informationen befinden, wie Personen oder Objekte.

Erzeugen von Anweisungen für automatisches Panning

Das automatisches Panning, also das durch Pegelverhältnisse in den Stereokanälenerzeugte Anordnen von Mono-Signalen auf der Stereobreite ist eine Funktion, dienicht eindeutig der Kernfunktion Mono-Verfolgermikrofon zugeordnet werden kann.Das Mono-Verfolgermikrofon ist lediglich die Funktion, die einzelne Mikrofone virtua-lisiert und gute, verwendbare Signale bereitstellen soll. Das Pannen von diesen Signa-len ist Aufgabe einer nachfolgenden Signalverarbeitung. Jedoch ist notwendigerweiseder Funktion Mono-Verfolgermikrofon die Position der aufzunehmenden Personenbekannt. Es können also neben den Mikrofonsignalen Steuerinformationen bzw. Me-tadaten an andere Systemteile weitergegeben werden. Dabei muss für die Funktiondes automatischen Pannings aber nicht zwangsläufig die Position bekannt sein. MitPositionsangaben lässt sich eine realistische Verteilung auf einer Stereobreite darstel-len, aber die Signale können jedoch auch einfach gleichmäßig im Stereo-Panoramaverteilt werden. Abbildung 2.2 zeigt dies und verdeutlicht das automatische Panning.

12

Page 17: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

Kamera

Person 1:- 70 °

Person 3:5 °

Person 2:-26 °

-90 °

100% links Mitte 100% rechts-60 ° 0 °-30 ° 30 ° 60 ° 90 °

1. Realistische Stereo-Abbildung

Person 1 Person 2 Person 3

0 ° 30 ° 60 ° 90 °-30 °-60 °-90 °

100% links Mitte 100% rechts

Person 1 Person 2 Person 3

2. Veränderte, gleichmäßige Stereo-Abbildung

Personen im Kamera-Erfassungsbereich

Abbildung 2.2: Automatisches Panning mit zwei unterschiedlichen Ergebnissen

13

Page 18: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

2.4.2 Automatisches Stereo-Mikrofon und abgeleiteteFunktionen

Das automatisch ausrichtende und einstellende Stereomikrofon ist eine weitere Kern-funktion des Systems. Die Steuerungssoftware erkennt wie das Mono-Verfolgermikrofonmittels Human Detection oder Gesichtsdetektion aus einem Kamerabild, ob sich Per-sonen im Erfassungsbereich befinden. Dabei behandelt die Software diese aber nichtindividuell, sondern erfasst den Klangkörper, den diese Menschen zusammen darstel-len. Die Ausdehnung dieses Klangkörpers wird vom System als Winkel bestimmt undder Wert dieses Winkels als Stereo-Aufnahmebereich verstanden. Dieser Wert kannnatürlich auch nur Bestandteil einer Berechnung des Stereo-Aufnahmebereichs sein,falls z.B. nicht die komplette Stereobreite ausgenutzt werden soll.Die Beschreibung des Stereomikrofons im Einsatzszenario „Konzertabend“ (sie-

he Kapitel 2.3) beschränkte sich nur auf ein XY-Stereomikrofon welches der Inten-sitätsstereofonie zuzuordnen ist. Je nach verwendetem Mikrofonarray können aberverschiedene Stereo-Aufnahmeverfahren verwendet werden. Bei einem räumlich aus-gedehnten Mikrofonarrays wie Linienarrays oder großen ringförmigen Mikrofonarrayswäre beide, Laufzeit- und Intensitätsstereofonie möglich.Bei Laufzeitstereofonie würden Kapselpaare ausgewählt, die entsprechend weit aus-

einanderliegen, dass der gewünschte Aufnahmebereich eingestellt ist. Sind die Kap-seln der Mikrofone Druckempfänger, haben also eine Kugelrichtcharakteristik, so sindmindestens 17 cm Kapselabstand für Laufzeitstereofonie erforderlich (Görne 2011).Um den Aufnahmebereich zu variieren, sind wesentlich größere Kapselabstände nötig.Ein ringförmiges Mikrofonarray wird beispielsweise bei einem Durchmesser von 1mschon recht unhandlich.Bei Intensitätsstereofonie würden wie beim Mono-Verfolgermikrofon mittels Be-

amforming zwei koinzidente, also in einem Punkt befindliche, gerichtete, virtuelleMikrofone generiert. Für die Realisierung eines Mikrofons mit dem gewünschten Auf-nahmebereich lässt sich die ideale Kombination aus Richtcharakteristik und der Ver-satzwinkel der Mikrofone ermitteln. Für jedes Koinzidenz-Stereomikrofon gibt es jenach gewählter Richtcharakteristik den theoretisch perfekten Versatzwinkel der ein-zelnen Mikrofone, bei dem das Stereomikrofon über den gesamten Aufnahmebereichmit fast gleichem Pegel aufnimmt (Görne 2011). Stellt man sich die Größe des Auf-nahmebereichs auf einem Zahlenstrahl aufgetragen vor, so gibt es also verschiedeneIntervalle, in denen sich die Wahl einer bestimmten Richtcharakteristik anbietet. Zu

14

Page 19: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

dieser Richtcharakteristik muss dann der passende Versatzwinkel der beiden virtuel-len Mikrofone berechnet werden. Dieses nun im Aufnahmebereich an den Klangkörperangepasste Stereomikrofon kann analog zum Mono-Verfolgermikrofon in die Richtungdes Klangkörpers rotiert werden. Das automatische Stereomikrofon definiert sich alsoüber Zeigerichtung, Aufnahmebereich und Richtcharakteristik der beiden einzelnenMikrofone.

Manuelle Einstellung des Stereomikrofons

Wie auch beim Monomikrofon kann es beim Anwender das Bedürfnis geben, dasStereomikrofon komplett selbst einzustellen, Stereomikrofone zu aktivieren und zudeaktivieren oder die Automation nur in Teilen zu deaktivieren. Dabei verändert sichauch beim Stereomikrofon nichts am grundsätzlichen Aufbau. Die nun nicht mehrvon der Automation übernommenen Aufaben müssen vom Benutzer getätigt werdenund dafür muss ihm durch die Befehlsstruktur der Software eine Möglichkeit gegebenwerden. Es wird deshalb zusätzlich eine Benutzerschnittstelle benötigt.

2.4.3 Audiomischung, -routing und -aufzeichnung

Nachdem nun von den Mikrofon-Kernfunktionen Audiosignale erzeugt wurden, wärees sinnvoll, diese für eine bestimmt Verwendung gleich weiterzuverarbeiten. Es hatnotwendigerweise für das Beamforming eine Audiosignalverarbeitung gegeben, diesebesteht bei Beamforming jedoch aus den Funktionen Verzögerung, Invertierung, Mul-tiplizierung mit Koeffizienten und Summierung. Um eine sinnvolle Nachbearbeitungunter Beachtung der in Kapitel 2 erwähnten Funktionen zu ermöglichen, muss die Au-dioweiterverarbeitung Monosignale durch entsprechende Gewichtung in den Kanälenzu Stereosignalen mischen können, Monosignale zu einer Mono-Summe summierenkönnen und eine Aufzeichnungsfunktion haben. Für die Aufzeichnung müssen die Si-gnale vor dem Beamforming, nach dem Beamforming und nach der Mischung derweiteren Audiobearbeitung aufgezeichnet werden können.Zudem sollte die Möglichkeit in der Software bestehen, die Audiokanäle an frei

wählbare Ausgänge sehr variablen zu routen, wie es in professioneller Audiosoftwaremöglich ist. Diese Ausgänge werden der Mikrofonsystemsoftware durch Audioschnitt-stellen zur Verfügung gestellt. Dabei ist es sinnvoll, für das Audiorouting die gleichenAbgriffspunkte zu wählen, wie für die Aufnahme. Denkbar wäre nämlich auch der Fall,

15

Page 20: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

dass die Aufnahme nicht in der Mikrofonsystemsoftware stattfinden soll. Falls ein Si-gnal z.B. noch zusätzlich über eine elektroakustische Anlage wiedergegeben werdensoll, müsste dieses Signal neben dem Aufnahmekanal auch noch auf einen weiterenAusgang geroutet werden.

2.4.4 Benutzerschnittstelle

Monitoring und Überwachung

Um eine vernünftige Überwachung des Systems zu möglich zu machen, müssen alleautomatisch und manuell eingestellten Parameter als Zahlen bzw. Text dargestelltwerden. Um eine schnelle und einfachere Kontrolle möglich zu machen, bietet sicheine Visualisierung der Parameter an, die Benutzerschnittstelle wird grafisch. Dabeikann das Kamerabild als Basis verwendet werden, welches bei Einsatz einer RGB-oder Graustufen-Kamera sowieso zur Verfügung steht. In dieses Kamerabild könnenan den Stellen Marker eingeblendet werden, auf welche virtuelle Mikrofone gerichtetsind. Im Bild kann erkennbar sein, ob sich ein Mikrofon automatisch steuert oder obes manuell eingestellt worden ist. Für diese Darstellungen ist das Rendern von zwei-dimensionalem Bildinhalt erforderlich. Das Kamerabild dient als Hintergrundebeneund die visualisierten Informationen werden über dieses gelegt.Angenehm für den Benutzer ist die dreidimensionale Darstellung der Richtcharak-

teristik im Raum, welche vom Mikrofon ausgeht und auf den aufzunehmenden Punktzeigt. Anhand der Abbildungseigenschaften der Kamera kann auf dem zweidimensio-nalen Bild der Kamera die Abbildung eines dreidimensionales Objekts, der Form derRichtcharakteristik, platziert werden und perspektivisch richtig erscheinen. Hierbeikann das Mikrofon, sollte es sich im Bild befinden, von der Abbildung der Richt-charakteristik überlagert werden, was zwar ein falsches, aber je nach Toleranz desAnwenders akzeptables Bild erzeugt. Trotzdem ist für diese Art der Darstellung ein3D-Bildrendering erforderlich, damit das Modell der Richtcharakteristik in Ausrich-tung und Position perspektivisch richtig erscheint.Die Realisierung von akustischen Signalen, die den Anwender über bestimmte Er-

gebnisse im Programmablauf informieren, ist z.B. über einen Signalgenerator oder dieAbspielmöglichkeit von Audiodateien auszuführen. Das Audiorouting dieses Signalsauf einen dedizierten Signalisierungskanal erscheint sinnvoll, damit Signalisierungs-und Nutzsignale voneinander getrennt werden, das Nutzsignal z.B. auf einem kleinen

16

Page 21: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

Lautsprecher des Steuerrechners oder über die Monitorlautsprecher auf einer Bühnewiedergegeben werden können.

Steuerung und Benutzereingaben

Über die Benutzerschnittstelle soll der Anwender Befehle an die Steuerungssoftwaregeben können. Dabei ist als Basis die Übermittlung von Parametern per Tastaturein-gabe und das Auslösen von Befehlen per Mausklick auf Schaltflächen sinnvoll. DasProgramm soll also vollständig über eine grafische Benutzeroberfläche überwachbarund steuerbar sein.Auch für die Steuerung des Systems ist die Einbindung des Kamerabildes sehr von

Vorteil. Die Position des Mauszeigers im Kamerabild kann direkt in einen horizontalenund vertikalen Winkel übersetzte werden. Durch einen Mausklick auf einen Punkt imKamerabild können z.B. sehr einfach die Parameter für ein virtuelles Monomikrofongesetzt werden.Neben den klassischen Eingabemethoden bieten sich aufgrund der für die Mikro-

fonfunktionalität verwendeten Bildanalysealgorithmen Human Detection oder Ge-sichtsdetektion weitere Möglichkeiten an, das System zu steuern. Die Lokalisierungvon Personen und die Anzahl von erkannten Personen können genutzt werden, umSteuerbefehle auszulösen, wie beispielsweise das Stummschalten eines automatischenMono-Verfolgermikrofons bei Aufenthalt in einem bestimmten Bühnenbereich. Dabeimuss, bestenfalls über die essentielle grafische Benutzeroberfläche, diese auf Persone-nerkennung und -lokalisierung basierenden Schnittstelle definiert werden können.Erweitern lassen sich diese auf Bildanalyse basierenden Eingabemethoden durch

die weiterverarbeitenden Technologien Gesichtserkennung und Posen- bzw. Geste-nerkennung.Gesichtserkennung ist ein Begriff, der im deutschen Sprachgebrauch oftmals für

die beiden Technologien Gesichtsdetektion und Gesichtserkennung (englisch: face re-cognition), also das Identifizieren von Gesichtern verwendet wird. Da aber hier dererste Fall immer als Gesichtsdetektion bezeichnet wurde, ist bei Verwendung desBegriffs Gesichtserkennung immer die identifizierende Methode gemeint. Bei der Ge-sichtserkennung wird die geometrische Anordnung des Gesichts erfasst und parame-trisiert gespeichert. Aufgrund der erlangten Kenntnis über diese Werte, kann dasSystem eine Person identifizieren, wenn bei einer erneuten Erfassung diese Wertemit den gespeicherten in festgelegten Toleranzgrenzen übereinstimmen. Auf die Be-

17

Page 22: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

nutzerschnittstelle angewendet bedeutet dies, dass eine Identifizierung von PersonenSteuerungsbefehle auslösen kann. Dabei können selbstverständlich unterschiedlichePersonen auch unterschiedliche Befehle auslösen. Auch hier ist es empfehlenswert,dass die Steuerung durch Identifizierung über die grafische Benutzerschnittstelle ge-nauer definiert werden kann.Posen und Gestenerkennung (englisch: pose recognition, gesture recognition) ist die

tiefergehende Analyse des ganzen Körpers statt nur des Gesichts. Dabei wird bei derPosenerkennung versucht, bestimmte Bestandteile des Körpers zu erkennen. Diese Be-standteile sind mindestens Rumpf, Kopf und Gliedmaße. Eine detailliertere Analysekann einzelne Glieder bis hin zu einzelnen Fingern umfassen. Sind diese Bestandteileerkannt, wird versucht, die relative Lage dieser Glieder zu ermitteln. Gelingt dies, istein dreidimensionales Modell des Körpers erstellt worden, auf dessen Basis man derPerson eine prototypische Körperhaltung zuordnen kann. Prototypische Körperhal-tungen sind zum Beispiel liegen, sitzen und stehen. Darüber hinaus können Aussagengetroffen werden, wie die Person von dieser Körperhaltung abweicht, also z.B. einenArm nach vorne und den anderen nach oben gestreckt hat.Die Gestenerkennung findet Anleihen in der Posenerkennung, verwertet aber noch

ein dynamisches Erkennungsmerkmal: die Bewegung der Körperteile. Eine Geste istdefiniert durch die Position von Kopf, Händen und Armen, die Formen, welche dieHände bilden sowie die Veränderung dieser Form und der Position. Die Geste „nachetwas greifen“ lässt sich beispielsweise beschreiben durch die folgende Sequenz vonVorgängen: Arm wird ausgestreckt, Finger sind dabei ausgestreckt, Hand ballt sichzu einer Faust, Arm wird wieder eingezogen.Um Posen- und Gestenerkennung zuverlässig und robust durchführen zu können,

ist eine Tiefenbilderfassung notwendig. Auf Basis eines zweidimensionalen Bildes istes erheblich schwerer bis unmöglich, ein dreidimensionales Modell der Körperhaltungvon Personen zu erstellen. Falls für die Realisierung der Mikrofonfunktionen aus denoben genannten Gründen schon eine 3D-Kamera zum Einsatz kommt, ist nur nochsoftwareseitig diese Funktion zu implementieren. Wie auch bei den anderen bildba-sierten Eingabemethoden ist es sinnvoll, diese über die grafische Benutzeroberflächegenauer definieren zu können.

18

Page 23: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

2.4.5 Periphere Funktionen

In Kapitel 2 wurden einige Funktionen beschrieben, die nicht dem Betreiben einesMikrofonsystems dienen. Da sich das Mikrofonsystem aber vielfältigen Steuerungs-arten bedienen kann und für verschiedene Anwendungen geeignet ist, bietet es sichan, die Steuerungsmethoden auf die den Anwendungen naheliegenden Bedürfnisseanzuwenden. Mit der Gestensteuerung lässt sich ein Mikrofonkanal stummschalten,aber genauso ließe sich damit eine Computerpräsentationssoftware steuern.

Senden von Steuersignalen über externe Schnittstellen

Für das Steuern von externer Software müssen also Schnittstellen in der Softwaredefiniert werden. Diese Schnittstellen können dann unabhängig von der zu steuerndenSoftware Befehle einem bestimmten Protokoll entsprechend ausgeben. Denkbar sindzum Beispiel Schnittstellen, die Steuerbefehle an andere Rechner senden lassen, andenen diese von einer Software als Tastaturbefehle ausgegeben werden. Auch könntenbestimmte Gesten über eine MIDI-Schnittstelle Befehle ausgeben, die von andererAudiosoftware empfangen werden.

Audiowiedergabe und Zumischung zu Mikrofonsignalen

Eine weitere periphere Funktion ist die Steuerung der Wiedergabe von Audiodateien,wie z.B. Jingles. Diese Funktion könnte natürlich mittels externer, von MIDI-Befehlengesteuerter Software ausgeführt werden. Bedenkt man jedoch, dass die Mikrofonsys-temsoftware auch eine eigene Audioaufzeichnungsfunktion haben kann, wäre es ange-bracht, die Wiedergabe von Audiodateien über die Benutzerschnittstellen steuerbarzu machen und das Audiosignal den Aufzeichnungs- oder Ausgabesignalen beizumi-schen. Für diese Funktion muss in der Software, wie auch für die akustische Signalisie-rung möglich, ein Audioplayer implementiert werden, dessen Signal für das Routen,Mischen und Aufzeichnen zur Verfügung gestellt wird.

Schnittstelle zur Einbindung von Audioeffekten

Nicht nur Schnittstellen nach außen, die das Kommunizieren mit externen Softwareermöglichen, auch Schnittstellen für externe Software, die die Ergebnisse der Mikro-fonsteuerungssoftware beeinflussen, vergrößern den Funktionsumfang des Mikrofon-systems sinnvoll. Ganz konkret seien hier VST- oder Audio-Unit-Schnittstelle ge-

19

Page 24: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

nannt, die das einfache Einbinden von Audioeffekten möglich machen. Sollten dieEffekte programmintern eingebunden sein, können sie von den Automationen profitie-ren: Sprachverbesserungs-Effekte könnten z.B. nur für virtuelle Mikrofone eingesetztwerden, die nicht manuell definiert sind, sondern Menschen bzw. Sprecher aufnehmen.Das Komplettsystem mit allen in Kapitel 2.4 beschriebenen Funktionen findet sich

unter Abbildung 2.3 als Blockschaltbild.

20

Page 25: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

2 Einsatzszenarien

Bild

ve

rarb

eitu

ng

Hum

an D

ete

ction

/G

esic

hts

dete

ktion

Bea

mfo

rmin

g

2D

-Ka

me

ra

Mik

rofo

na

rray

3D

-Ka

me

ra

VS

T/

AU

VS

T/

AU

Auto

matische

Pegels

teue

rung

Au

dio

mis

chu

ng

und

Pannin

g

VS

T/

AU

Au

dio

-A

ufz

eic

hn

un

g

Au

dio

-R

ou

tin

g a

uf

Au

sg

an

gska

le

Mo

no

- u

nd

Ste

reo

sig

na

le

Gesic

hts

-erk

ennung

/Id

en

tifika

tion

Posen-

und

Geste

nerk

en

nung

Inte

rpre

tatio

n v

on

Benutz

ere

ing

ab

en

Gra

fisch

eB

enutz

ero

be

rflä

ch

e

Audio

sig

na

lisie

run

g

Ma

us-

un

d T

asta

ture

ing

ab

en

Ste

ue

rbefe

hle

an

alle

Fu

nktio

nsm

od

ule

Exte

rne

Sch

nitts

telle

nz.B

. M

IDI

Au

dio

sig

na

lve

rarb

eitu

ng

Au

dio

-P

laye

r/S

ign

al-

ge

ne

rato

r

Au

dio

-Pla

ye

r(E

insp

ielu

ng

en

,Jin

gle

s)

Be

nu

tzers

ch

nitts

telle

Abbildung 2.3: Blockschaltbild des Mikrofonsystem in Maximalkonfiguration21

Page 26: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

3.1 Mikrofonarrays

Mikrofonarrays sind Mikrofone mit mehreren Mikrofonkapseln. Mikrofonarrays kön-nen verschiedenste Formen haben, häufig anzutreffen sind Linienarrays, Kugelarraysund Ringarrays. Diese Arrays können dabei Ausmaße von wenigen Zentimetern bishin zu mehreren Metern annehmen.Mikrofonarrays werden eingesetzt für Schallfeldanalysen, wie z.B. dem Lokalisieren

von Schallquellen oder wie in den besprochenen Einsatzszenarien, für das Beamfor-ming, bei welchem bestimmte Mikrofonrichtcharakteristiken virtuell erzeugt werden.Es hängt vom Mikrofonarray ab, auf welche Art und Weise das Beamforming ausge-

führt wird. Dabei unterscheiden sich generell zwei Techniken. Zum einen kann durchden Einsatz von Signalverzögerung und anschließende Summierung der KapselsignaleBeamforming erzielt werden. Eine andere Methode ist das sogenannte differenzielleBeamforming, bei welchem es durch Gewichtung und Subtraktion der Kapselsignalezu Beamforming kommt. Die Parameter der Signalverarbeitung sind in beiden Fällenvon sehr vielen Einzelheiten abhängig, eine universeller Algorithmus für ein univer-selles Mikrofonarray schwer zu implementieren. Es gibt jedoch auch Mikrofonarrays,deren Ausgangssignale einer Definition und Normierung entsprechen. Ein Beispieldafür ist Ambisonics. Ambisonics bezeichnet dabei nicht nur eine Art von Mikrofon,sondern versucht die Aufnahme, Speicherung, den Transport und die Wiedergabe zudefinieren. Ambisonics eignet sich zudem zu dreidimensionalem Beamforming. Ambi-sonics soll deshalb als der Standard für die weitere Betrachtung von Mikrofonarrays,Signalverarbeitung und Softwareentwicklung gelten.

22

Page 27: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

3.2 Ambisonics

3.2.1 Grundlagen

Das System Ambisonics beschreibt Verfahren zur Aufzeichnung und Wiedergabe vondreidimensionalen Schallfeldern. Das Schallfeld liegt nach der Aufzeichnung analysiertvor und wird während der Wiedergabe wieder synthetisiert. Dabei kann aufgrund derAnalyse des Schallfelds die Synthese abhängig von der Wiedergabesituation erfolgen.Die Wiedergabekanäle sind sind nicht die Aufzeichnungskanäle, sondern werden jenach Lautsprecheranordnung oder Verwendungszweck erst erzeugt. Die Reprodukti-on von Schall mit Höhenkomponente kann von einer beliebigen Lautsprecheranord-nung erzeugt werden, die einen dreidimensionalen Raum aufspannt und den Rezi-pienten umschließt. Es unterscheidet sich somit von kanalbasierten System wie z.B.5.1 Surround, bei denen jedem Aufzeichnungskanal ein festgelegter Wiedergabeka-nal zugeordnet ist. Ambisonics ist also nicht kanalbasiert sondern schallfeldbasiert.Die Grundlagen dazu wurden von Michael Gerzon in den 1970er Jahren dargelegt.(Gerzon 1973)Ziel des Verfahren ist, die Schalldruckverteilung auf der Oberfläche einer den Re-

zipienten umgebenden Kugel zu erfassen. Ist diese Schalldruckverteilung analysiert,hat die Wiedergabeseite die Aufgabe, mit einer Lautsprecheranordnung diese Schall-druckverteilung auf der Kugeloberfläche zu resynthetisieren. Dies geschieht mit derAbsicht, den Zuhörer die gleiche akustische Situation wahrnehmen zu lassen, wie siebei der Aufnahme vorgeherrscht hat. Der Zuhörer befindet sich dazu bestenfalls imZentrum dieser gedachten Kugel. (Gerzon 1973)Zu dieser vorzunehmenden Analyse wird die Schalldruckverteilung auf der Kugel

als Funktion betrachtet, welche sich als Summe von orthonormalen Eigenfunktionendarstellen lässt. Dies ist der Fall, wenn die Funktion quadratintegrierbar über dieEinheitskugel ist, es also gilt:

∫ ∞−∞|f(θ, φ)|2 dx <∞. (3.1)

Bekannt ist ein analoges Vorgehen in der Signalverarbeitung aus der Fourier-Analysis:Im zweidimensionalen Raum lässt sich eine periodische Funktion f (x) auf dem Ein-

23

Page 28: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

Abbildung 3.1: Die Konventionen des hier verwendeten Koordinatensystems, aus (Wi-kipedia 2014)

heitskreis, also mit der Periode p = 2π, in eine unendliche Reihe der Form

f (x) =∞∑

n=−∞cn · einx (3.2)

mit den Fourier-Koeffizienten cn entwickeln.(Gerzon 1973, Papula 2009).Im dreidimensionalen Raum bestehen diese orthonormalen Eigenfunktionen dann

nicht mehr nur aus einzelnen Sinus- und Cosinusfunktionen, sondern aus den sog.Kugelflächenfunktionen Y m

n (θ, φ) mit der Ordnung n und dem Grad m. Die Kugelflä-chenfunktionen erfahren je nach Anwendungsbereich (z.B. Physik, Chemie, Geologie)eine andere Definition und Notation. Eine häufig verwendete Definition, siehe Poletti(2005), welche auch für die hier folgende Betrachtungen passend erscheint, lautet

Y mn (θ, φ) = Nm

n · P |m|n (cos θ) · eimφ (3.3)

mit Pmn (cos θ) als die zugeordneten Legendre-Polynome mit cos θ als Argument und

Nmn als Normierungsfaktoren. Diese ergeben sich aus

Nmn =

√√√√(2n+ 1)4π

(n− |m|)!(n+ |m|)! . (3.4)

24

Page 29: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

Kugelflächenfunktionen sind es also, mit denen sich die Schalldruckverteilung auf derbesprochenen Kugeloberfläche komponentenweise zerlegen lässt. Als Beispiel sei hiereine Lösung der Wellengleichung im dreidimensionalen Raum als Reihenentwicklungangegeben. Gesetzt den Fall, dass alle Schallquellen außerhalb dieser betrachtetenKugel liegen, gilt für die Schalldruckverteilung auf ebendieser:

p (r, θ, φ, k) =∞∑n=0

n∑m=−n

Amn (k) jn(kr)Y mn (θ, φ) (3.5)

mit dem Radius r, mit jn(x), den Bessel-Funktionen erster Gattung und der Kreis-wellenzahl k = ω

cmit c, der Schallgeschwindigkeit (Poletti 2005).

Die räumliche Auflösungsmöglichkeit sinkt, wenn die Reihe früher abgebrochenwird, also für n ≤ ∞. Dies ist logisch nachvollziehbar: n bestimmt die Ordnung derKugelflächenfunktionen und ein maximal festgelegtes n, wir nennen es N , legt dieAnzahl der in dieser Summe verwendeten Kugelflächenfunktionen fest. Wenn n alsobeschränkt ist, wird die Anzahl der Komponenten, die das Schallfeld beschreiben,endlich, die Genauigkeit der Beschreibung dadurch auch. In der Praxis, und bezogenauf die Wiedergabesituation bei Ambisonics, bedeutet dies, dass die Ausdehnungdes Sweet-Spots sinkt, je kleiner N wird. Der Sweet-Spot befindet sich im Zentrumder mit Gleichung 3.5 beschriebenen Kugeloberfläche. Je größer N wird, desto weiterkann sich der Kopf eines Rezipienten aus dem Zentrum der gedachten Kugel entfernenund trotzdem noch das angestrebte Hörereignis wahrnehmen. Der Sweet-Spot istder Punkt innerhalb einer Lautsprecherkonfiguration, an dem die beste akustischeWahrnehmung gewährleistet ist.Die Genauigkeit eines Ambisonic-Systems ist also abhängig von der maximalen

Ordnung der beschreibenden Kugelflächenfunktionen. So heißt ein Ambisonics-System,welches mittels Kugelflächenfunktionen bis zur Ordnung n=1 beschrieben wird, Am-bisonics erster Ordnung, eines welches auch auf Kugelflächenfunktionen zweiter Ord-nung basiert, Ambisonics zweiter Ordnung usw. Die maximal verwendete Ordnung Nbestimmt die Anzahl der verwendeten Kugelflächenfunktionen und damit auch dieAnzahl N der benötigten Aufnahme-, Übertragungs- und Wiedergabekanäle einesAmbisonics-Systems. Dabei gilt

N ≥ (N + 1)2 . (3.6)

25

Page 30: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

3.2.2 Kanaldefinition und Normierung

In der Ambisonics-Praxis und -Literatur wird häufig eine andere Definition der Ku-gelflächenfunktionen verwendet als die in Gleichung 3.3 vorgestellte Version. Auf-grund des in 3.3 enthaltenen Faktors eimφ gilt Y m

n [0, π] × [0, 2π] → C, aber die dieAmbisonicskanäle repräsentierenden Kugelflächenfunktionen werden meistens reell-wertig definiert. Dabei wird eimφ ersetzt durch cos (mφ), falls m ≥ 1 oder durchsin (mφ), falls m ≤ −1. Bei m=0 fällt dieser Teil der Funktion weg, denn wie auchbei eimφ gilt: ei0φ = 1. (Daniel 2001)Auch für die Normierungsfaktoren Nm

n gibt es abweichende Varianten. Dabei habendie in Ambisonics verwendeten Normierungsfaktoren bestimmte technisch motivierteFormen. Die schon bekannte, in Gleichung 3.4 verwendete Normierung, führt zu derOrthonormalität der Kugelflächenfunktionen, es gilt also:

∫ 2π

0

∫ π

0Y mn (θ, φ)Y m

n (θ, φ)∗ sin θdθdφ = δnn′δmm′ (3.7)

mit (·)∗, dem komplex-konjugierten von (·) und δnm, dem Kronecker-Delta (δij = 1,falls i = j und δij = 0, falls i 6= j). (Teutsch 2007)Diese Normierung führt aber auch dazu, dass alle Kugelflächenfunktionen die Ober-

fläche O = 1 besitzen. Es gilt also:∫ 2π

0

∫ π

0|Y mn (θ, φ)|2 sin θ dθ dφ = 1 (3.8)

In der Praxis bedeutet dies, dass die Kugelflächenfunktionen, und damit auch dieAmbisonicskanäle, mit steigender Ordnung n immer höhere Maximalwerte annehmenkönnen. Stellt man sich ein statistisch verteiltes Schallfeld vor, sollte dies keine Pro-bleme bereiten. Kommt es aber zu dem Fall, dass stark gerichtete Schallquellen aufAmbisonics-Mikrofone höherer Ordnung strahlen, kann es passieren, dass die Dyna-mik des Übertragungs- bzw. Aufzeichnungskanals an ihre Grenzen stößt. (Malham2003)Um dies zu vermeiden, verwendet man die Normierung mit der Bezeichnung SN3D

(=Semi Normalised for 3D). Die als SN3D definierten Ambisonicskanäle verwendendie halbnormierten zugeordneten Legendre-Polynome nach Schmidt. Diese sind defi-niert als

P̃mn (η) =

√√√√(2− δm0)(n−m)!(n+m)! P

mn (η) , (3.9)

26

Page 31: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

die SN3D-Normierungsfaktoren ergeben sich also zu

Nm (SN3D)n =

√√√√(2− δm0)(n−m)!(n+m)! . (3.10)

Letztendlich sind also die Kugelflächenfunktionen bzw. Ambisonicskanäle mit SN3D-Normierung nach (Daniel 2001) definiert als

Y m (SN3D)n (θ, φ) =

√√√√(2− δm0)(n−m)!(n+m)! P

mn (cos θ)×

cos (mφ) falls m ≥ 11 falls m = 0sin (mφ) falls m ≤ −1

.

(3.11)

Verwendet werden die SN3D-Normierungsfaktoren aber aus dem oben genanntenGrund eher für Ambisonics-Systeme höherer Ordnungen. Für Ambisonics bis zur Ord-nung 3 hat sich die N3D-Definition (=Normalised for 3D) durchgesetzt. (Kronlachner2012)Normierung nach N3D liefert auch orthonormale Kugelflächenfunktionen, diese

sind jedoch auch reellwertig. Nach N3D sind die Kugelflächenfunktionen auf eineOberfläche von O = 4π normiert und nach (Daniel 2001) ergeben sich die Normie-rungsfaktoren aus

Nm (N3D)n =

√√√√(2− δm0) (2n+ 1) (n−m)!(n+m)! (3.12)

Die N3D-Normierung wird als am geeignetsten für die Arbeiten mit einem natür-lichen Schallfeld angesehen, aber SN3D bietet sich in einigen Fällen als die bessereWahl an (Chapman et al. 2009). Abbildung 3.2 verdeutlicht die Pegelunterschiedezwischen SN3D und N3D in zwei verschiedenen Schallfeld-Situationen.

3.2.3 FuMa-Gewichtsfaktoren und MaxN

Eine weitere Normierungsmethode bilden die Furse-Malham-Gewichtsfaktoren nachRichard Furse und Dave G. Malham. Sie stellen sicher, dass die den Ambisonicska-nal repräsentierenden Kugelflächenfunktion nur Werte zwischen -1 und 1 annehmenkönnen. Der erste Ambisonicskanal mit Ordnung und Grad n = 0,m = 0 ist auf den

27

Page 32: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

Abbildung 3.2: Pegelunterschiede der Ambisonicskanäle in Ahängigkeit von umgeben-den Schallfeld und Normierung. Die horizontale Achse gibt die Kanälein ACN-Kanalreihenfolge (siehe Kapitel 3.2.4 auf S.29) an. Die Zahlenan der Skaleneinteilung sind die Quadratwurzeln aus den Kanalnummernund markieren den Beginn einer neuen Ordnung.(Chapman et al. 2009)

28

Page 33: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

Maximalwert 1√2 normiert, liegt also unter 1. Diese Normierung ist eine in Ambiso-

nics häufig anzutreffende, gängige Praxis. Die FuMa-Gewichtungsfaktoren sind fastidentisch zu der von Daniel (2001) vorgestellten Max-Normierung (englisch: Max-Normalisation). Bei MaxN ist auch der erste Ambisonicskanal auf einen Maximalwertvon 1 normiert. (Malham 2003)Aufgrund einer bislang fehlenden Rekursiongleichung, wie z.B. die zugeordneten

Legendre-Polynome eine solche darstellen, sind diese Gewichtungsfaktoren noch nichtfür jede beliebige Ordnung automatisch berechenbar. In der Literatur finden sich dieseFaktoren definiert bis zur dritten Ordnung, für die Anwendung auf SN3D normierteAmbisonicskanäle (Malham 2003). Es kann hier also keine allgemein anwendbareUmrechnungsformel angegeben werden, ausschließlich die folgende Aussage über denWertebereich W von Y m (FuMa)

n getroffen werden:

W

(Ym (FuMa)n

)= [−1, 1] . (3.13)

3.2.4 Kanalordnung

Auch in der Benennung und Reihenfolge der einzelnen Ambisonicskanäle gibt es un-terschiedliche Systeme. Die bekanntesten und wichtigsten sind die FuMa-Kanalfolge(Furse-Malham-Kanalfolge) und die ACN-Kanalfolge (Ambisonics-Channel-Number-Kanalfolge) der Ambisonics Association. Die FuMa-Kanalbenennung bedient sich ausden Buchstaben des lateinischen Alphabets. Die ACN-Nummerierung dagegen ist mo-tiviert aus der mathematischen Notation und ergibt sich aus Ordnung und Grad derzugehörigen Kugelflächenfunktion nach: Kanalnummer Nr.(ACN) = n(n + 1) + m

(The Ambisonics Association 2008). In Tabelle 3.2.4 findet sich eine Übersicht derAmbisonicskanäle bis zur zweiten Ordnung mit den besprochenen Benennungen undNormierungen.

3.2.5 B-Format, A-Format und HOA

In der Ambisonics-Terminologie gibt es, wahrscheinlich aufgrund des noch jungenForschungsgebietes, keine Einigkeit. Insbesondere die Ausweitung von Ambisonics-Systemen auf höhere Ordnungen, hat dazu veranlasst, bestimmte Begriffe zu „deh-

29

Page 34: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

Ordn. FuMa-Kanal-benennung

ACN SN3D-Definition

n,m(SN3D)

N3D-Konv.-faktor

FuMa-Gewicht.-faktor

0 W 0 1 0, 0 1 1√2

1 X 3 sin θ cosφ 1, 1√

3 1

1 Y 1 sin θ sinφ 1, -1√

3 1

1 Z 2 cos θ 1, 0√

3 1

2 R 6 12 (3 cos2(θ)− 1) 2, 0

√5 1

2 S 7√

32 sin (2θ) cosφ 2, 1

√5 2√

3

2 T 5√

32 sin (2θ) sinφ 2, -1

√5 2√

3

2 U 8√

32 sin2θ cos (2φ) 2, 2

√5 2√

3

2 V 4√

32 sin2θ sin (2φ) 2, -2

√5 2√

3

Tabelle 3.1: SN3D-Definition der Ambisonicskanäle in FuMa-Kanalreihenfolge der erstenund zweiten Ordnung, Ambisonics-Channel-Number und Konvertierungs-bzw. Gewichtungsfaktoren, nach Malham (2003). Angegeben in der FuMa-Kanalreihenfolge. Die ACN-Kanalreihenfolge ergibt sich durch Umsortierungnach der fortlaufenden ACN.

30

Page 35: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

nen“. Das B-Format im klassischen Sinne ist das von M. Gerzon erwähnte, vierkanali-ge Ambisonics erster Ordnung. Es ist das System niedrigster Ordnung, mit dem eine3D-Schallfeldbeschreibung stattfinden kann. Alle Systeme höherer Ordnung werdenals Higher Oder Ambisonics (HOA) bezeichnet. Auch kommt es vor, dass der Be-griff Ambisonics synonym für das B-Format verwendet wird. HOA gilt dann jedochweiterhin als Bezeichnung höherer Systemordnungen.Unter dem A-Format versteht man im klassischen Sinne die Signale eines von Pe-

ter Craven und Michael Gerzon entworfenen, speziellen Mikrofontyps, namentlich desSoundfield-Mikrofons (Craven et al. 1977). Dieses Mikrofon besitzt vier Mikrofonkap-seln, welche auf einem gedachten Tetraeder angeordnet sind. Durch Mischung dieserMikrofonkapselsignale und einer Bearbeitung im Frequenzbereich ist es möglich, Si-gnale eines Ambisonics-Systems 1.Ordnung zu generieren. Diesen Vorgang nennt manA- zu B-Formatwandlung. Die Bearbeitung im Frequenzbereich ist nötig, um diedurch den Abstand der Mikrofonkapseln entstandenen Verzerrungen auszugleichen.Mit dem Aufkommen von HOA wird der Begriff „B-Format“ aber auch für Signale

von Ambisonics-Systemen höherer Ordnung verwendet, sollten sie die entsprechendenKugelflächenfunktionen repräsentieren (zu sehen beispielsweise bei Malham (2003)).In Folge darauf, wurde auch das A-Format als Begriff für „Roh“-Signale erweitert. AlsA-Format werden also auch Kapselsignale von Mikrofonen verstanden, die durch Ma-trizierung in die besser verwendbare, Kugelflächenfunktionen repräsentierende Formgebracht werden können und die eine höhere Ordnung als N = 1 aufweisen, wie dasklassische A-Format-Mikrofon.

3.2.6 Beamforming

Nach einer Ambisonics-Mikrofonierung liegt das Schallfeld analysiert vor. Man kannfür eine Wiedergabesituation das Schallfeld jetzt wieder resynthetisieren, man kanndie gewonnene Information aber auch dazu nutzen, das Schallfeld selektiv wiederzusammenzusetzen. Das Erstellen von virtuellen Mikrofon-Richtcharakteristiken istmöglich.In Kapitel 3.2.1 wurde dargelegt, dass jede Funktion, die quadratintegrierbar über

die Einheitskugel ist, in eine unendliche Reihe, eine Summe aus gewichteten Kugel-flächenfunktionen zerlegbar ist. Nun sind Funktionen, die Richtcharakteristiken vonMikrofonen beschreiben, genau solche Funktionen. Beschrieben wird eine gewünschte

31

Page 36: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

Richt-charakteristik

Kugel Breite Niere 1 Breite Niere 2 Niere Superniere Hyperniere Acht

BildA bzw. ε1 1,0 0,75 0,63 0,5 0,366 0,25 0Bündelungs-grad DF = γ

1,0 1,714 2,077 3,0 3,732 4,0 3,0

Vor-Rück-Verhältnis,s(0◦) /s(180◦)

1,0 2,0 3,85 ∞ 3,732 2,0 1,0

Abtands-faktorDSF = √γ

1,0 1,309 1,441 1,732 1,932 2,0 1,732

φ(−3 dB),Mono-Aufnahme-winkel

- ±100◦ ±78◦ ±65, 5◦ ±57, 5◦ ±52, 4◦ ±45◦

φ(−6 dB),Mono-Aufnahme-bereich

- ±180◦ ±110, 5◦ ±90◦ ±77, 8◦ ±70, 5◦ ±60◦

Tabelle 3.2: Die typischen Richtcharakteristiken erster Ordnung und ihre akustischenEigenschaften nach (Schneider 2008, Sengpiel 2002).

32

Page 37: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

Mikrofon-Richtcharakteristik Gd (θ, kR) durch die sog. Mikrofongleichung

Gd (θ) =∞∏v=1

εv + (1− εv) cos θ, (3.14)

bei einer Richtcharakterisitk der Ordnung N wird∞ ersetzt durch N . Die Abhängig-keit von (kR) mit der Kreiswellenzahl k und dem maximalen Radius R beschreibt dieFrequenzabhängigkeit. Diese spielt in dieser Betrachtung des Beamformings jedochkeine weitere Rolle und wird deshalb aus Gründen der Übersichtlichkeit weggelassen.Gd (θ) beschreibt die Richtfunktion als eine im dreidimensionalen Raum stehendeFunktion, in Richtung der z-Achse zeigend (Teutsch 2007). Die bekanntere Darstel-lung der Mikrofongleichung für Richtunktionen erster Ordnung, in Abhängigkeit vonφ als Funktion im zweidimensionalen Raum lautet

s (φ) = A+ (1− A) cosφ (3.15)

mit A = ε1. In Tabelle 3.2 findet man die gängigen Richtcharakteristiken ersterOrdnung mitsamt einer Auswahl ihrer akustischen Eigenschaften.Die Mikrofongleichung 3.14, entwickelt in eine unendliche Reihe aus Kugelflächen-

funktionen lautet wie folgt:

Gd (θ) =√

4π∞∑n=0

GdnY0n (θ, φ) (3.16)

mitGdn = 1

2√

2n+ 1∫ π

0G (θ)Pn (cos θ) sin θdθ. (3.17)

mit G (θ) wie Gd (θ) in Gleichung 3.14. Aus der Aussage, dass jede beliebige Richt-funktion in eine Reihe entwickelt werden kann, impliziert natürlich, dass sich derBeam in jede beliebige Raumrichtung ausrichten lässt. Jedoch ist es mathematischnachvollziehbarer und simpler, zuerst allein die Form der gewünschten Richtfunk-tion, in Richtung der z-Achse zeigend, mittels Kugelflächenfunktionen darzustellen.Vorteilhaft ist daran, dass dafür nur Kugelflächenfunktionen Y m

n (θ, φ) mit m = 0verwendet werden. Die Anzahl der in der Reihe verwendeten Kugelflächenfunktio-nen reduziert sich auf N + 1. Sind dann anhand Formel 3.17 die Koeffizienten Gdn

berechnet, kann der Beam in jede gewünschte Richtung rotiert werden. Mit einer

33

Page 38: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

3 Mikrofonarrays und Ambisonics

Ausrichtung nach (ϑ, ϕ) wird Gd (θ) zu

Gd (θ, φ, ϑ, ϕ) = 4π∞∑n=0

1√2n+ 1

n∑m=−n

GdnYmn (θ, φ)Y m

n (ϑ, ϕ)∗ (3.18)

34

Page 39: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Das intelligente Mikrofonsystem, dessen Funktionen und Bestandteile in Kapitel 2.4beschrieben wurden, soll exemplarisch realisiert werden. Dafür sollen ausgewählteFunktionalitäten so implementiert werden, dass sich die Grundstruktur des Systemsin der Entwicklung abzeichnet und sich das Verhalten des Systems im ersten prakti-schen Einsatz erproben lässt. Wichtig ist dabei, dass die Programmierung möglichsteinfach erweiterbar sein soll. Es sollen einfach neue Funktionen implementiert werdenund die hier gewählten Systemkomponenten, also Mikrofonarray, Audio-Interface undoptisches System, mit wenigen Änderungen ausgetauscht werden können.

4.1 Funktionsumfang

Realisiert werden soll die Kernfunktion „automatisches Mono-Verfolgermikrofon“. Essollen bis zu zwei Personen im Erfassungsbereich erkannt werden und virtuelle Mi-krofone in Abhängigkeit von der Präsenz dieser Personen aktiviert und deaktiviertwerden. Erkannte Personen sollen dabei optisch in einem Videobild des Erfassungs-bereiches markiert sein, um eine Kontrolle über Fehlerkennungen zu haben.Die für die virtuellen Mikrofone zur Verfügung stehenden Richtcharakteristiken

sollen Niere, Superniere und Hyperniere, sämtliche in erster und zweiter Ordnungsein. Das System und der Beamforming-Algorithmus werden softwareseitig also fürAmbisonics erster und zweiter Ordnung ausgelegt sein. In dieser exemplarischen Rea-lisierung soll vorerst jedoch nur ein Ambisonics-Mikrofon erster Ordnung zum Einsatzkommen. Das System soll Ambisonicssignale in den Normierungen SN3D, N3D undFuMa korrekt verarbeiten können. Alle für die Benutzung erforderlichen Benutzerein-gaben sollen über eine grafische Benutzeroberfläche bedienbar sein.

35

Page 40: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

4.2 Video

4.2.1 Microsoft Kinect-Sensor als optisches System

Abbildung 4.1: Der Kinect-Sensor für Xbox 360 von Microsoft, ohne Gehäuse, aus (iFixit2010)

Als optisches System wurde der Kinect-Sensor des Herstellers Microsoft gewählt.Der Kinect-Sensor (kurz: die Kinect) ist eine sogenannte RGB-D-Kamera. Zusätzlichzu einem RGB-Bild wird der Erfassungsbereich der Kinect auch in seiner Tiefe (engl.:depth) erfasst. Er wird über einen USB-Anschluss mit einem Computer verbunden.Zum Zeitpunkt der Erstellung dieser Arbeit gab es drei verschiedene Generationendes Kinect-Sensors. Hier verwendet wird der Sensor aus der ersten Generation, derKinect-Sensor für Xbox 360 (siehe Abbildung 4.1). Soweit nicht anders erwähnt, be-ziehen sich alle folgenden Aussagen auf genau diese Gerätegeneration, auch wenn imAllgemeinen von dem Kinect-Sensor gesprochen wird.Microsoft stellt für Softwareentwicklungen mit allen Kinect-Geräten ein Softwa-

re Development Kit zur Verfügung. Mit Hilfe dieser Programmierschnittstelle ist es

36

Page 41: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

möglich, auf die Daten der Kinect sowie auf von Microsoft für den Kinect-Sensorentwickelte Bildanalysealgorithmen zurückzugreifen. In diesen Algorithmen enthal-ten ist das sog. Skeletal Tracking. Das Skeletal Tracking analysiert die Positionenvon 20 verschiedenen Körperpunkten einer erkannten Person, relativ zum Sensor.Durch die Kinect können 2 Personen auf diese Art getrackt werden, das Ermittelnder Positionen von vier weiteren Personen ohne detaillierte Körperanalyse ist möglich(Microsoft 2014).Das Tiefenbild erfasst der Kinect Sensor, wie bei RGB-D-Kameras üblich, über

das Verfahren Active Triangulation. Dazu projiziert ein Infrarotprojektor ein codier-tes Lichtmuster (siehe Abbildung 4.2) in den Raum, das reflektierte Lichtmuster wirdvon einer um 5 cm versetzten Infrarotkamera wieder aufgenommen. Das aufgenom-mene Bild weist natürlich Abweichungen zum ausgesendeten Bild auf. Jeder Punktdes Lichtmusters, abhängig von der Entfernung des reflektierenden Punktes zur In-frarotkamera, wird durch den Infrarotsensor an einer anderen Stelle als auf dem ei-gentlich ausgesendeten Originalmuster erfasst. Aufgrund dieser Modulation, welcherjeder Punkt des Lichtmusters durch den Raum ausgesetzt ist, kann der Kinect-Sensordie Distanz jedes Punktes im Raum, im Rahmen der Auflösung des Infrarotsensorsvon 640 x 480 Pixeln, ermitteln. (Mutto et al. 2012).

4.2.2 Einbindung in die Steuerungssoftware

Die Microsoft-Software für den Kinect-Sensor gibt die Positionsdaten von getracktenPersonen und derer Körperteile in einem Koordinatensystem aus, in dessen Ursprungsich der Sensor befindet (siehe Abbildung 4.3). Alle Werte sind dabei in Meternangegeben. Für das Beamforming sind jedoch Winkelkoordinaten nötig, die in dieBeamforming-Gleichung (siehe Gleichung 3.18) eingesetzt werden können. Aus denPositionsdaten, angegeben in x-y-z-Koordinaten, wird die Position in Winkelkoordi-naten umgerechnet, der die Abweichung der Position von der z-Achse des Kinect-Sensors, also seiner optischen Achse, angibt. Dabei werden die Winkelkoordinaten inden Komponenten Azimut (φ) und Elevation (θ(Kinect)) angegeben. Der Azimut-winkel bezeichnet die Abweichung von der z-Achse in horizontaler Richtung, beziehtsich also auf die x-Komponente. Elevation ist dagegen die Abweichung in vertika-ler Richtung und bezieht sich auf die z-Achse. Da das von der Kinect verwendeteKoordinatensystem nicht den in den sonstigen Teilen dieser Arbeit verwendeten Ko-ordinatensystem entspricht, wird der Elevationswinkel mit dem Zusatz (·)(Kinect)

37

Page 42: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Abbildung 4.2: Von der Kinect projiziertes Infrarotmuster, erfasst vom Kinect-IR-Sensor,aus (Mutto et al. 2012: 42)

Abbildung 4.3: Koordinatensystem der Kinect, aus (Microsoft 2012)

38

Page 43: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

angegeben. Die Umrechnung der Elevation in das in dieser Arbeit verwendete Koor-dinatensystem geschieht nach

θ = −θ(Kinect) + 90◦. (4.1)

Sollte sich das Mikrofonarray nicht an gleicher Position wie der Kinect-Sensor befin-den, verändert dies die Winkelwerte, die für das Beamforming notwendig sind. Es solldie Möglichkeit geben, das Mikrofon entlang der optischen Achse des Kinect-Sensorszu verschieben. Um die Distanz d dieser Verschiebung muss der Wert z verringertwerden.Die Positionswinkel aus den x-,y-, und z-Werten sowie der Distanz d zwischen

Kinect-Sensor und Mikrofon berechnen sich wie folgt:

θ(Kinect) = tan−1 y

z − d(4.2)

φ = tan−1 x

z − d(4.3)

Einblendung der Tracking-Ergebnisse in das Videobild

Eine vom Kinect-Sensor erkannte Person soll im Videobild markiert werden, indementweder ein Punkt oder Text an dieser Position im Videobild zu sehen sind. Dazumuss die Darstellung auf den Aufnahmebereich der RGB-Kamera des Kinect Sensorsnormiert werden. Eine getrackte Person, die sich am Bildrand des Kinect-RGB-Bildesaufhält, sollte auch am Bildrand markiert werden. Normiert man die Position auf eineDarstellung zwischen -1 und 1, bei welcher der negative und der positive Wert jeweilseinem Bildrand entsprechen und die Mitte des Bildes folglich den Wert 0 hat, kannman für jede beliebige Bildauflösung die exakte Pixelposition errechnen. Die auf dasIntervall zwischen -1 und 1 normierte Darstellung für die vertikale Position v und diehorizontale Position h erhält man durch:

v = y

z · tan θmax2

(4.4)

h = x

z · tan φmax2

(4.5)

39

Page 44: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

mit θmax, dem Wert des vertikalen Aufnahmebereichs und φmax, dem Wert des hori-zontalen Aufnahmebereichs.Der Stream des Videobildes muss also ausgelesen werden und vor Bildschirmausga-

be an den berechneten Stellen manipuliert werden, um eine Markierung der getracktenPersonen zu erhalten.

Alternative Hardware

Statt des Microsoft Kinect-Sensors kann auch ein anderer optischer Sensor verwendetwerden, welcher auf der gleichen Technologie wie die Kinect basiert: der Xtion PROSensor von ASUS. Dabei wird die Verwendung in fast der selben Programmkonzeptionmöglich sein. Für das Produkt von ASUS muss jedoch ein anderer Treiber und einanderes Software Development Kit gewählt werden. Auch muss bei dem Gerät vonAsus auf einen RGB-Sensor verzichtet werden, dieser könnte aber einfach durch einZusatzgerät ergänzt werden.Auch möglich ist das Verwenden von produktunabhängiger Software zur Bildana-

lyse wie z.B. der Softwarebibliothek OpenCV. Dabei müssen aber Funktionen wieHuman Recognition und Lokalisierung wesentlich aufwendiger implementiert werden.Sollten durch die Verwendung anderer Systemkomponenten ähnliche Ergebnisse wiedurch die Kinect erzielt werden, lassen sich diese einfach in der hier konzeptioniertenStruktur weiterverarbeiten.

4.3 Audio

4.3.1 Soundfield SPS200 als Mikrofonarray

Als Mikrofonarray wurde das Soundfield SPS200 Software Controlled Microphoneder Firma TSL Products gewählt. Dieses Mikrofon ist ein A-Format-Mikrofon (sieheKapitel 3.2.5), besitzt somit vier in einem Tetraeder angeordnete Mikrofonkapseln.Die Mikrofonsignale werden analog über XLR-Anschlussstecker ausgegeben. Um dieSignale in das in der Praxis verwendete B-Format mit den nach FuMa benanntenKanälen W, X, Y und Z zu konvertieren, ist also eine komplexere Signalverarbeitungvon Nöten. Zu diesem Zweck liefert der Hersteller ein VST-Plugin mit dem Mikrofon,welches diese Formatwandlung übernimmt.Als Audio-Interface wurde das LIQUID Saffire 56 des Herstellers Focusrite verwen-

40

Page 45: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Abbildung 4.4: Das SoundField SPS200 Software Controlled Microphone der Firma TSLProducts, aus TSL Products (2014)

det, welches die Mikrofonsignale verstärkt und digital wandelt. Das Audio-Interfacewird mit einem gerätespezifischen ASIO-Treiber geliefert, welcher die einfache Ein-bindung der vom Interface angebotenen Ein- und Ausgangskanäle in Audio-Softwareermöglicht.

4.3.2 Signalverarbeitung und Beamforming

Der Zugriff auf die Eingangssignale muss separat und parallel möglich sein. Aus al-len Eingangskanälen, die systemseitig über das Audio-Interface abgreifbar sind, sollendiese, an denen die Ambisonics-Eingangssignale anliegen, auswählbar sein. Des Weite-ren soll es softwareseitig eine Möglichkeit geben, die Signalreihenfolge zu verändern.In der Konzeption mit dem Soundfield-Mikrofon wäre dies auch durch ein Umste-cken der XLR-Anschlüsse möglich. Die Software soll jedoch nicht exklusiv für diesesMikrofon in Verbindung mit dem verwendeten Audio-Interface ausgelegt sein. Solltez.B. ein Ambisonics-Mikrofon mit integriertem Audio-Interface verwendet werden, beiwelchem die Signale in einer festgelegten Reihenfolge anliegen, so soll diese Reihenfol-ge für die Signalverarbeitung beliebig änderbar sein. Als zu verwendende Eingangs-

41

Page 46: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Reihenfolge wird die FuMa-Kanalordnung gewählt. In diese FuMa-Kanalfolge müssendie Eingangssignale also bei Bedarf sortiert werden. Als Hilfestellung für den Anwen-der soll der Eingangspegel aller Eingangskäle dargestellt werden, um das korrekteAnliegen der Signale in der Software überprüfen zu können.In dem Fall des hier verwendeten Mikrofons werden vom Audio-Interface keine

praktikablen B-Format-Signale übergeben. Nach Auswahl der richtigen Eingangs-kanäle müssen diese zuerst durch das zugehörige VST-Plugin verarbeitet werden.Dazu muss im Signalweg eine VST-Schnittstelle implementiert werden.Die Anzahl der vom optischen System und Trackingsoftware erkannten Personen

bestimmt, wie oft der Satz an anliegenden Ambisonicskanälen für die weitere Verar-beitung kopiert wird. Für jede erkannte Person liegt ein Wertepaar aus horizontalemund vertikalem Winkel vor, nach welcher die Beamforminganweisung berechnet wird.Jeder vorliegende Satz an Ambisonicssignalen wird nun parallel und abhängig vonden ermittelten Positionswinkeln dem Beamformingprozess unterzogen. Alle Kanäleeines Signalsatzes müssen dafür unterschiedlich gewichtet und danach in einer Au-diosumme zusammengefasst werden. Nach diesem Prozess liegen also genau so vieleMono-Signale vor, wie Personen vom System erkannt worden sind.In einem nächsten Schritt kann nun entschieden werden, ob die beiden Signale auf

getrennten Kanälen ausgegeben werden, oder ob auch diese beiden Monosignale ineinem Monosignal summiert werden.

Anwendung der Beamforming-Gleichung

In Kapitel 3.2.6 wurde gezeigt, wie durch Summierung von gewichteten Kugelflächen-funktionen jede beliebige Richtfunktion erzeugt werden kann. Aus einer Mikrofonauf-nahme im Ambisonicsformat kann also durch Gewichtung der einzelnen Kanäle vorder Summierung dieses gewünschte gerichtete Mikrofon virtualisiert werden.Die Audiosignalverarbeitung muss dabei das leisten, was Gleichung 3.18 vorschreibt,

die Kugelflächenfunktionen bzw. Ambisonicskanäle also mit Variablen und Faktorengewichten und aufaddieren. Die Rotation des virtuellen Mikrofons geschieht in Echt-zeit, deswegen sind die Variablen die Ausrichtungsvariablen (ϑ, ϕ). Die für die Artder Richtcharakteristik verantwortlichen Beamforming-Koeffizienten Gdn stehen vor-her fest, werden im Vorfeld berechnet, und sind der Software also als Konstantenbekannt. Es sollen nun also die Berechnungsvorschriften gefunden werden, die aufjedes einzelne Ambisonics-Signal bis zur zweiten Ordnung angewendet wird und nach

42

Page 47: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Implementierung in der Steuerungssoftware dazu führt, dass bei der Summierung allerAmbisonicssignale am Ende ein Audiosignal entsprechend der gewünschten Richtcha-rakteristik ausgegeben werden kann.Die Beamforming-Gleichung 3.18 verwendet Kugelflächenfunktionen, welche als

komplexwertig definiert sind. Das Ergebnis Gd (θ, φ, ϑ, ϕ) nach Berechnung des Be-ams ist jedoch immer reellwertig und auch die Ambisonicskanäle, wie sie in derPraxis verwendet werden, sind rein reell. Es zeigt sich, dass bei einer Darstellungder Beamforming-Gleichung in algebraischer Form, also mit der getrennten Darstel-lung von Real- und Imaginärteil, und nach einer anschließenden Vereinfachung derGleichung, ausschließlich mit reellwertigen Kugelflächenfunktionen gearbeitet wer-den kann. Bei näherer Betrachtung der Kugelflächenfunktionen wird deutlich, dassdie reellwertig definierten Kugelflächenfunktionen ihre Entsprechung in den getrenn-ten Real- Imaginärteilen der komplexwertig definierten Funktionen finden. Tabelle4.3.2 zeigt die Kugelflächenfunktionen (bzw. Real- oder Imaginärteile dieser) in reell-und komplexwertiger Definition, die geometrisch ähnlich sind. Die Ähnlichkeit indiesem Fall bedeutet, dass allein die Normierung, also die Gewichtung der Kugel-flächenfunktionen unterschiedlich ist. Um diese Beziehungen der Kugelflächen nut-

FuMa-KanalbenennungY

0 (SN3D)0 ∼ Y 0

0 W

Y1 (SN3D)

1 ∼ Re(Y −1

1

)X

Y−1 (SN3D)

1 ∼ −Im(Y

(−1,1)1

)Y

Y0 (SN3D)

1 ∼ Y 01 Z

Y0 (SN3D)

2 ∼ Y 02 R

Y1 (SN3D)

2 ∼ Re(Y −1

2

)S

Y−1 (SN3D)

2 ∼ −Im(Y

(−1,1)2

)T

Y2 (SN3D)

2 ∼ Re(Y

(−2,2)2

)U

Y−2 (SN3D)

2 ∼ Im (Y 22 ) V

Tabelle 4.1: Geometrisch ähnliche Kugelflächenfunktionen bzw. deren Real- oder Ima-ginärteile zusammen mit den zugehörigen FuMa-Kanalbuchstaben

zen zu können betrachten wir die einzelnen Summanden der Beamforming-Gleichung

43

Page 48: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

und den komplexwertigen Funktionen in algebraischer Form. Entsprechend der Mul-tiplikationsregeln für komplexe Zahlen ergibt sich die Beamforming-Gleichung fürKugelflächenfunktionen bis zur Ordnung N = 1 zu

Gd (θ, φ, ϑ, ϕ) = 4π1∑

n=0

1√2n+ 1

n∑m=−n

GdnYmn (θ, φ)Y m

n (ϑ, ϕ)∗

= 4π((

Gd0

12√πY 0

0 (θ, φ))

+ 1√3

12

√3

2πGd1 sinϑ cosϕRe(Y −1

1 (θ, φ))

− 12

√3

2π Gd1 sinϑ sinϕ Im(Y −1

1 (θ, φ))

+ 12

√3

2π Gd1 i(sinϑ sinϕRe

(Y −1

1 (θ, φ))

+ sinϑ cosϕ Im(Y −1

1 (θ, φ)))

+ 12

√3πGd1 cosϑ Y 0

1 (θ, φ)

− 12

√3

2π Gd1 sinϑ cosϕRe(Y 1

1 (θ, φ))

− 12

√3

2π Gd1 sinϑ sinϕ Im(Y 1

1 (θ, φ))

+12

√3

2π Gd1 i(sinϑ sinϕRe

(Y 1

1 (θ, φ))− sinϑ cosϕ Im

(Y 1

1 (θ, φ))) .(4.6)

Da Re(Y −1

1 (θ, φ))

= −Re(Y 11 (θ, φ)) und Im

(Y −1

1 (θ, φ))

= Im(Y 11 (θ, φ)), verein-

facht sich Gd (θ, φ, ϑ, ϕ) zu

44

Page 49: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Gd (θ, φ, ϑ, ϕ) = 4π((

Gd0

12√πY 0

0 (θ, φ))

+ 1√3

√ 32πGd1 sinϑ cosϕRe

(Y −1

1 (θ, φ))

−√

32π Gd1 sinϑ sinϕ Im

(Y −1

1 (θ, φ))

+12

√3πGd1 cosϑ Y 0

1 (θ, φ) .

(4.7)

Mit den Beziehungen aus Tabelle 4.3.2 lassen sich die Bezeichnungen der Kugelflä-chenfunktionen durch die FuMa-Kanalbuchstaben ersetzen. Trotz der Verwendungder FuMa-Kanalbenenung entsprechen die Kanäle an dieser Stelle noch nicht ei-ner der in der Praxis verwendeten SN3D-, N3D- oder FuMa-Normierungen. DieBeamforming-Gleichung für Ambisonics erster Ordnung mit den Kanälen W, X, Yund Z ergibt sich zu

Gd (θ, φ, ϑ, ϕ) = 4π(Gd0

12√π·W

+ 1√3

√ 32π Gd1 sinϑ cosϕ ·X

+√

32π Gd1 sinϑ sinϕ · Y

+12

√3πGd1 cosϑ · Z

(4.8)

Führt man diese Berechnungen für Beamforming mit Ambisonics zweiter Ordnungaus, erweitert sich Gd (θ, φ, ϑ, ϕ) aus Gleichung 4.8 mit den zusätzlichen Ambisonics-

45

Page 50: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

kanälen R, S, T, U und V zu

Gd (θ, φ, ϑ, ϕ) = 4π2∑

n=0

1√2n+ 1

n∑m=−n

GdnYmn (θ, φ)Y m

n (ϑ, ϕ)∗

= 4π(Gd0

12√π·W + 1√

3Gd1

√ 32π sinϑ cosϕ ·X

+√

32π sinϑ sinϕ · Y +1

2

√3π

cosϑ · Z

+ 1√5Gd2

14

√5π

(3 cos2 ϑ− 1

)·R + 1

2

√152π sin 2ϑ cosϕ · S

+ 12

√152π sin 2ϑ sinϕ · T + 1

2

√152π sin2 ϑ cos 2ϕ · U

+12

√152π sin2 ϑ sin 2ϕ · V

.

(4.9)

Anpassung der Normierung

Die Audiosignalverarbeitung, welche das Beamforming ausführt, soll für SN3D-normierteEingangssignale ausgelegt sein. Die Kugelflächenfunktionen nach SN3D, Y m (SN3D)

n (θ, φ),unterscheiden sich jedoch in Ihrer Gewichtung von der hier verlangten Normierungfür orthonormale komplexwertige Kugelflächenfunktionen Y m

n (θ, φ) nach Definitionin Gleichung 3.3 . Die Division

Re bzw. Im(Y mn (θ, φ))

Ym (SN3D)n (θ, φ)

= Konv.-Faktor (4.10)

führt zu den erwünschten Faktoren, welche also die eingehende SN3D-Normierung indie in der Beamforming-Berechnung verwendete Normierung für die komplexwertigenorthonormalen Kugelflächenfunktionen konvertiert. In Tabelle 4.3.2 finden sich dieseFaktoren für die Kanäle erster und zweiter Ordnung.Die Eingangsignale sollen der Audiosignalverarbeitung jedoch auch in einer anderen

Normierung zugeführt werden können. Die Konvertierung ist einfach: In Tabelle 3.2.4findet man für jeden Ambisonicskanal bis zur zweiten Ordnung Konvertierungsfak-toren für die Normierungen N3D und FuMa, anzuwenden auf die SN3D-Normierung.Sollten die Eingangssignale eines von diesen beiden Formaten haben, können mit ei-ner Multiplikation der Kehrwerte dieser Faktoren die Signale nach SN3D konvertiert

46

Page 51: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

W 12√π

X,Y 12

√3

Z 12

√3π

R√

2

S, T, U, V 12

√5

Tabelle 4.2: Konvertierungsfaktoren für die gelisteten Ambisonicskanäle in FuMa-Benennung und SN3D-Normierung für die Verwendung in der hier darge-legten Beamforming-Berechnungsvorschrift

werden.

Beamforming-Anweisungen für die Audiosignalverarbeitung

Wendet man nun die Konvertierungsfaktoren aus Tabelle 4.3.2 auf die Ergebnisse ausGleichung 4.9 an, ist für jeden einzelnen Ambisonicskanal bis zur zweiten Ordnungdie Berechnungsvorschrift für das Beamforming festgelegt. Mit den folgenden For-meln können die Gewichtungsfaktoren für die einzelnen Ambisonicskanäle berechnetwerden, welche am Ende summiert werden. Die Gewichtungsfaktoren sind abhängigvon der Richtcharakteristik, hier beschrieben durch die Koeffizienten Gd0 , Gd1 undGd2 sowie durch die Rotation in die Richtung (ϑ, ϕ). Diese Formeln können in dieSoftware implementiert werden und lauten im Einzelnen:

47

Page 52: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Ambisonics-Kanal Faktor

W Gd0

X√

3 Gd1 sinϑ cosϕ

Y√

3 Gd1 sinϑ sinϕ

Z√

3 Gd1 cosϑ

R 12

√5 Gd2 (3 cos2 ϑ− 1)

S 12

√15 Gd2 sin 2ϑ cosϕ

T 12

√15 Gd2 sin 2ϑ sinϕ

U 12

√15 Gd2 sin2 ϑ cos 2ϕ

V 12

√15 Gd2 sin2 ϑ sin 2ϕ

Tabelle 4.3: Formeln zur Berechnung der Gewichtungsfaktoren der Ambisonicskanäleerster und zweiter Ordnung für das Beamforming

Berechnung der Beamforming-Koeffizienten Gdn

In der Mikrofonsteuerungssoftware soll das Beamforming mit den Richtcharakteris-tiken Niere, Superniere und Hyperniere in erster und zweiter Ordnung möglich sein.Die Koeffizienten ε1 und ε2 für die Mikrofongleichung 3.14 lauten je nach Richtcha-rakteristik:

Koeffizienten ε1, ε2

Richtcharakteristik 1. Ordnung 2. Ordnung

Niere ε1 = 0, 5 ε1,2 = 0, 5Superniere ε1 = 0, 366 ε1 = 0, 218, ε2 = 0, 472Hyperniere ε1 = 0, 25 ε1 = − 1√

5 , ε2 = 1√5

Tabelle 4.4: Mikrofon-Koeffizienten verschiedener Richtcharakteristiken (Schneider2008, Benesty et al. 2013)

Die Mikrofongleichung 3.14 wird mit den entsprechenden Koeffizienten aus Tabelle4.4 eingesetzt in die Gleichung 3.17. Die Mikrofongleichung ersetzt hierbei G (θ). Die

48

Page 53: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Gleichung zur Berechnung der Beamforming-Koeffizienten lautet also

Gdn = 12√

2n+ 1∫ π

0

( ∞∏v=1

εv + (1− εv) cos θ)Pn (cos θ) sin θdθGd (θ) (4.11)

und liefert die Ergebnisse, die in Tabelle 4.5 festgehalten sind. Mit diesen Beamforming-Koeffizienten und den Berechnungsvorschriften aus Tabelle 4.3 ist der Beamforming-Prozess für die softwareseitige Implementierung vollständig definiert.

Beamforming-Koeffizienten Gd0 , Gd1 , Gd2

Richtcharakteristik 1. Ordnung 2. OrdnungNiere Gd0 = 0.5, Gd1 ≈ 0.289 Gd0 ≈ 0.333, Gd1 ≈ 0.289, Gd2 ≈ 0.075

Superniere Gd0 = 0.366, Gd1 ≈ 0.366 Gd0 ≈ 0.241, Gd1 ≈ 0.279, Gd2 ≈ 0.123Hyperniere Gd0 = 0.25, Gd1 ≈ 0.433 Gd0 = 1

15 , Gd1 = 25√

3 , Gd2 = 815√

5

Tabelle 4.5: Beamforming-Koeffizienten verschiedener Richtcharakteristiken

4.4 Realisierung in vvvv

4.4.1 Die Entwicklungsumgebung vvvv

Die Entwicklungsumgebung vvvv (ausgesprochen: Vau vier) ist ein hybride Softwarebestehend aus grafischer Entwicklungsumgebung, textbasierter Entwicklungsumge-bung und Laufzeitumgebung. Vergleichbar ist vvvv am ehesten mit der bekannterenSoftware Max der Firma Cycling ’74 und zählt wie Max zu den datenstromorien-tierten Programmiersprachen. Daten werden von externen Quellen eingelesen oderintern erzeugt und in der zusammengestellten Struktur bearbeitet. Aus jedem Inputfolgt am Ende der Bearbeitungskette ein Output, vvvv arbeitet kontinuierlich. Esbefindet sich ununterbrochen im Laufzeitmodus und nötige Kompilierung wird fürden Anwender unmerklich im Hintergrund verrichtet.vvvv ist größtenteils ausgelegt für das Erstellen und Manipulieren von Video- und

Grafikdaten in 2D und 3D durch Integration der Rendering Engines SVG, DirectX9and DirectX11. Die auch über DirectX bereitgestellten Funktionen zur Audiosignal-verarbeitung sind in vvvv integriert, lassen aber nur grundlegende Verarbeitungs-schritte zu. Seit Dezember 2013 ist ein Zusatzpaket an Funktionen für vvvv verfügbar,mit welchem wesentlich weitreichendere Audiodatenmanipulation möglich ist. Die mit

49

Page 54: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

vvvv erstellten Programme sind nur innerhalb der vvvv-eigenen Laufzeitumgebungausführbar. Da die Laufzeitumgebung untrennbar mit der Entwicklungsumgebungverknüpft ist, muss auf jedem ausführenden System eine komplette vvvv-Installationzu finden sein.Für weitere Informationen über vvvv sei ein Blick auf die Homepage der vvvv

group empfohlen: http://vvvv.org.

Grafische Programmierung in vvvv

Die Programme in vvvv heißen Patches. Ein Patch ist die Oberfläche, auf welcherprogrammiert wird. Die beiden Elemente, mit denen programmiert wird sind die sog.Nodes und die Verbindungen zwischen den Nodes. Nodes in vvvv enthalten Datenoder Funktionen und haben Ein- und Ausgänge, die sog. Inlets und Outlets. Daten-Nodes sind i.d.R. die sog. IOBoxes. IOBoxes können Daten anzeigen und speichernund in ihnen können Werte manuell geändert werden. Alle Daten, wie z.B. Audio-oder Videodaten in vvvv können in Inlets und aus Outlets von IOBoxes fließen,angezeigt und manuell geändert werden können in IO-Boxes üblichen Datentypenwie z.B. Integer-, String-, Float- oder Boolean-Werte. Die Datenübergabe zwischenFunktionen und IOBoxes geschieht durch Verbinden der In- und Outlets. IOBoxessind auch die zentralen Bedienelemente in einem vvvv-Patch. Eine IOBox, die einenBoolean-Wert enthält kann z.B. als Schalter dargestellt werden, dessen Zustand perMausklick veränderbar ist. In Abbildung 4.5 ist ein einfaches Programm „gepatcht“,welches die grafische Programmierung mit den erwähnten Elementen verdeutlicht.Der Übersichtlichkeit halber können Patches als sog. Subpatches in andere Patches

eingebunden werden. Diese Subpatches werden wie andere Funktions-Nodes verwen-det. Dies hat den Vorteil, das ein Subpatch in mehreren anderne Patches Verwendungfinden kann, eine häufig verwendete Funktion also flexibel in anderen Patches aufruf-bar ist. Doch auch wenn eine Funktion in einem Patch mehrmals verwendet wird, solässt diese sich einmal als Subpatch erstellen und beliebig oft einbinden. In Abbildung4.6 ist die Funktion aus Abbildung 4.5 mittels eines Subpatches realisiert.Die Datenströme in vvvv sind in sog. Spreads organisiert. Ein Spread ist in etwa

vergleichbar mit einem Array. Ein Spread besteht aus mehreren Einzelwerten, densog. Slices. Eine IOBox kann einen Spread mit beliebig vielen Slices enthalten. Dientdiese IOBox als Input für eine Funktion, so werden alle Slices dieser IOBox vondieser Funktion gleich behandelt. Verarbeitet eine Funktion zwei Spreads gleichzeitig

50

Page 55: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Abbildung 4.5: Ein einfacher Patch in vvvv, welcher einen Zahlenwert quadriert und vomErgebnis einen anderen Wert subtrahiert.

Abbildung 4.6: vvvv-Patch aus Abbildung 4.5, realisiert als Subpatch

51

Page 56: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

und ist das Ergebnis abhängig von beiden Spread-Inputs, so wird die Funktion diebearbeitung Slice-weise vornehmen. Die Funktion verwendet also den Slice mit demIndex 0 von Spread 1 und Spread 2 und gibt einen Output aus, danach werden dieWerte aus Spread 1 und Spread 2 mit dem Index 1 verarbeitet usw. Abbildung 4.7verdeutlicht die Verarbeitung von Spreads.

Abbildung 4.7: vvvv-Patch aus Abbildung 4.5 als Subpatch, Spreads als Input

4.4.2 Die Mikrofonsteuerung in vvvv

Grundlegende Struktur

Die Konzeption des Systems in Kapitel 4 erfolgte getrennt nach Videosignal- undAudiosignalverarbeitung, diese Aufteilung findet sich auch im vvvv-Patch wieder. Dieeinzelnen Bestandteile sind als Subpatches realisiert und in einem Hauptpatch mitden Bedienelementen für den Endbenutzer zusammengeführt worden. Die wichtigenSubpatches, ihre Funktionen sowie die für die Mikrofonsteuerung wichtigen In- undOutlets sind im folgenden tabellarisch dargestellt:

52

Page 57: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

human_detection_kinect

Funktionen: Initialisiert den Kinect-Sensor, ließt die x-y-z-Koordinaten der er-kannten Personen aus, wandelt die Koordinaten in Winkelkoordinaten, generierteinen Text aus Winkelkoordinaten, normiert die Winkelkoordinaten auf den RGB-Kamerawinkel der Kinect, positioniert den Text an entsprechender Stelle im RGB-Bild der Kinect, gibt Bild und Winkelkoordinaten aus.

Inlets Outlets

Startbefehl zum Initialisieren der Kinect Anzahl der getrackten Personen

Reset-Befehl für Neuinitialisierung der Ki-nect

Winkelkoordinaten Elevation θ(Kinect) dergetrackten Personen

Abstandswert zwischen Kinect und Mikro-fon

Winkelkoordinaten Azimuth φ der ge-trackten Personen

RGB-Bild mit eingeblendeten Winkelkoor-dinaten an Position der getrackten Perso-nen

beampattern_select

Funktion: Lässt eine Richtcharakteristik wählen und gibt einen Spread mit denBeamforming-Koeffizienten Gd0 , Gd1 und Gd2aus.

Inlets Outlets

Niere Gd0 , Gd1 , Gd2

Superniere Name der gewählten Richtcharakteristik

Hyperniere

Niere 2. Ordnung

Superniere 2. Ordnung

Hyperniere 2. Ordnung

53

Page 58: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

beamforming_spreads

Funktion:Berechnet für jedes Winkelpaar jeder getrackter Person die Gewichtungs-faktoren für die Ambisonics_kanäle entsprechend der Ordnung des Ambisonics-systems, des Ausrichtungswinkel des Beams und der Beamforming-KoeffizientenGd0 , Gd1 , Gd2

Inlets Outlets

Vertikaler Ausrichtungswinkel θ Gewichtungsfaktoren für die Ambisonics-kanäle

Horizontaler Ausrichtungswinkel φ

Ordnung des Ambisonicssystems

Gd0 , Gd1 , Gd2

54

Page 59: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

audio_sig_proc

Funktion: Initialisiert die vvvv-AudioEngine, nimmt die Audiosignale entgegen,zeigt die Eingangspegel dieser Signale an, wählt die zu verarbeitenden Signale aus undsortiert diese dabei in die richtige Reihenfolge, lässt die Audiosignale bei Bedarf voneinem VST-Plugin bearbeiten, führt bei Bedarf eine Konvertierung der Abisonics-Normierung durch, kopiert die Signale der Anzahl der erkannten Personen entspre-chend, gewichtet die Ambisonicskanäle mit den Gewichtungsfaktoren, summiert je-den Satz an gewichteten Ambisonicssignalen zu einem Mono-Signal, summiert dieentstandenen virtuellen Mikrofonsignale bei Wunsch zu einem Mono-Signal, gibt diebearbeiteten Audiosignale an das Interface aus.

Inlets Outlets

Startbefehl zum Initialisieren der Au-dioEngine

Pegelwerte der aller Eingangskanäle

Auswahl des ASIO-Audiotreibers

Befehl zum Öffnen der Benutzeroberflächedes gewählten Audiotreibers

Samplingrate

Anzahl der Eingangskanäle des Interfaces

Anzahl der Ausgangskanäle des Interfaces

Ordnung des Ambisonicssystems

Auswahl einer optionalen Konvertierungder Ambisonicssignale nach SN3D

Format der Ambisonicssignale vor Konver-tierung

Anzahl der getrackten Personen/der zuvirtualisierenden Mikrofone

Gewichtungsfaktoren für die Ambisonics-kanäle

55

Page 60: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Datenverarbeitung im Detail

Die grundlegende Signalkette, von den Daten der Kinect bis zur Audio-Ausgabe sollim Folgenden detailliert dargestellt werden, um einen Einblick in die Programmie-rung zu geben. Der Patch „MAIN_PATCH“ dient als Benutzeroberfläche. Auf ihmsind alle wichtigen Bedienelemente durch IOBoxes realisiert und mit den Subpatches,beschrieben in den oberen Tabellen, verbunden. Alle diese Subpatches befinden sichdeshalb auch im Patch „MAIN_PATCH“, Abbildung 4.8 zeigt diesen.Abbildung 4.9 zeigt einen Ausschnitt aus dem Subpatch „human_detection_kinect“.

Der Node „Kinect“ bindet die Funktionen des Software Development Kits für Kinectein. An den Inlets des Nodes wird die Kinect, der RGB-Sensor sowie die Tiefenerfas-sung aktiviert. Am ersten Outlet des Nodes werden die Daten der Kinect ausgegeben.An diesen ist der Node „Skeleton“ angeschlossen. Dieser Node liefert unter anderemdie x-y-z-Position des Körperschwerpunktes der getrackten Personen in einem Spread.Mithilfe des Nodes „Vektor“ wird dieser Spread in seine einzelnen Komponenten zer-legt. „Vektor“ besitzt drei Outlets an welchen die Koordinaten getrennt nach x, y undz ausgegeben werden. Die Koordinaten werden an die Inlets des Subpatches „positi-on_angle_real_world“ weitergegeben. In diesem Subpatch werden die Winkelkoor-dinaten berechnet, wie es die Gleichungen 4.2 und 4.3 vorschreiben. Die Winkelkoor-dinaten werden in zwei IOBoxes ausgegeben und liegen bei zwei getrackten Personenals Spread vor. Über die Outlets von „human_detection_kinect“ können die Win-kelkoordinaten im Patch „MAIN_PATCH“ abgegriffen werden. Dort wird auch dieElevationskomponente entsprechend Formel 4.1 konvertiert. Die Winkelkoordinatenwerden den entsprechenden Inlets des Subpatches „beamforming_spreads“ überge-ben. Ein Ausschnitt dieses Subpatches ist zu sehen in Abbildung 4.10.Dem Subpatch „beamforming_spreads“ werden zusätzlich zu den Winkeldaten

noch die Beamforming-Koeffizienten Gd0 , Gd1 und Gd2 sowie die Ordnung des verwen-deten Ambisonics-Systems übergeben. In diesem Patch entsprechen die BeamformingKoeffizienten den folgenden Variablen: Gd0 = a0, Gd1 = a1 und Gd2 = a2. Anhandder Ordnung des gewählten Ambisonics-Systems wird in Node „Expr – number ofambisonic channels of given order“ nach Gleichung 3.2.1 die benötigte Kanalanzahlberechnet. Die Kanalanzahl (bei erster Ordnung: 4, bei zweiter Ordnung: 9) wirdmultipliziert mit der Anzahl der getrackten Personen. Der Node „Count – Num-ber of Beams“ ermittelt dabei die Größe des anliegenden Spreads. Entsprechend derGesamtanzahl der Kanäle wird die Größe eines zu erzeugenden, leeren Spreads ge-

56

Page 61: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Abbildung 4.8: Der Patch „MAIN_PATCH“, Ausgangspunkt der Steuerungssoftware

57

Page 62: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Abbildung 4.9: Ausschnitt aus dem Subpatch „human_detection_kinect“

58

Page 63: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Abbildung 4.10: Ausschnitt aus dem Subpatch „beamforming_spreads“

59

Page 64: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

wählt: der Träger der Gewichtungsfaktoren für die Ambisonicskanäle. Nachfolgendgibt es für jeden Ambisonicskanal erster und zweiter Ordnung einen „Expr –“-Node,welcher die zugehörige Gleichung aus Tabelle 4.3 enthält und den Gewichtungsfak-tor aus Winkelkoordinaten und Beamforming-Koeffizienten berechnet. Das Ergebniswird über einen „SetSlice“-Node an folgerichtiger Stelle im erzeugten, leeren Spreadgesetzt. Dieser Spread ist das Ergebnis des Subpatches „beamforming_spreads“ undkann über den Patch „MAIN_PATCH“ abgegriffen werden.Verwendet wird dieser Spread vom Subpatch „Audio_Sig_Proc “, in dem die ei-

gentliche Audiosignalverarbeitung stattfindet. Zu sehen sind zwei Ausschnitte desSubpatches in den Abbildungen 4.11 und 4.12. In diesem Subpatch befindet sich

Abbildung 4.11: 1. Ausschnitt aus dem Subpatch „Audio_Sig_Proc“

die vvvv-AudioEngine, jegliche Audiodaten werden ausschließlich innerhalb diesesPatches verarbeitet. In Patch „MAIN_PATCH“ wurden die Parameter für die In-itialisierung der AudioEngine gesetzt und über die Inlets an den Subpatch übergeben.

60

Page 65: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

Darunter finden sich die Auswahl des ASIO-Audiotreibers, die Samplingfrequenz so-wie die Anzahl der Ein- und Ausgangskanäle der angeschlossenen Audio-Hardware.Über den Node „AudioIn“ gelangen alle Audiokanäle der Audio-Hardware in dieSoftware. Dabei werden alle Audiokanäle über einen Outlet bereitgestellt, auch dieOrganisation der Audiodaten erfolgt in Spreads. Der Pegel der Audiodaten wird überden Node „Meter“ ermittelt und über eine IOBox ausgegeben, deren Werte als Sli-der (optische Schieberegler) dargestellt sind. Es ergibt sich die gewohnte Ansicht ei-nes Pegelmessgerätes. Diese Pegelwerte sind im Patch „MAIN_PATCH“ über einenOutlet des Subpatches abrufbar und darstellbar. Über einen „GetSlice“-Node werdendie Kanäle ausgewählt, an denen die Audiosignale anliegen. Der Index der Audio-kanäle beginnt bei i = 0. Die Reihenfolge der gewählten Kanalindices bestimmtdie Reihenfolge der Audiosignale. Die Signale sollen so gewählt sein, dass sie derFuMa-Kanalordnung entsprechen. Die Signale gelangen dann in den Inlet des Sub-patches „Ambisonics_Input_Format_Conversion“. Das Beamforming ist ausgelegtfür Ambisonics-Signale nach SN3D-Definition und -Normierung. Bei Bedarf werdenin diesem Subpatch die Eingangssignale durch Gewichtung umnormiert. Auch be-findet sich in diesem Subpatch eine VST-Schnittstelle. Diese ist von Nöten, um dieA-B-Formatwandlung für das SPS200-Mikrofon mit dem VST-Plugin des Herstellersvorzunehmen. Für die Einbindung wird der Node „VST-Plugin“verwendet. Ein Inletdieses Nodes bekommt einen String-Wert mit dem Dateipfad des Plugins zugespielt.Die Einstellung des Plugins kann über eine grafische Oberfläche oder über die Inletsdes „VST-Plugin“-Nodes erfolgen. Die eingestellten Werte bleiben nach Speicherungdes Patches auch beim Schließen von vvvv erhalten. Das Ergebnis der Formatwand-lung wird im „Audio_Sig_Proc“-Subpatch an den Node „MatrixMixer“ übergeben.Hier findet nun der eigentliche Prozess des Beamformings statt. Der Mixer, den derNode darstellt, gewichtet alle ankommenden Kanäle mit den an den Subpatch über-gebenen Gewichtungsfaktoren für die Ambisonicskanäle. Dabei liegt das Audiosignalsowie die Faktoren als Spread vor und die Gewichtung erfolgt dementsprechend slice-weise. Abhängig von dem Wert der per Inlet mitgeteilten Anzahl an Ausgangskanä-len werden die Signale aufsummiert. Bei einem Ausgangssignal, also einer getracktenPerson, vier anliegenden Signalen und vier Gewichtungsfaktoren, wird jeder Kanalentsprechend gewichtet und alle Kanäle aufsummiert ausgegeben. Bei zwei Ausgangs-signalen, also zwei getrackten Personen, vier Eingangsignalen und acht Gewichtungs-faktoren werden die Signale separat mit den ersten vier Faktoren gewichtet und zu

61

Page 66: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

4 Konzeption und Realisierung

einem Ausgangssignal aufsummiert, so wie die gleichen vier Eingangssignale mit denanderen vier Faktoren zu einem weiteren Ausgangssignal summiert werden. In demFall, dass gerade keine Person getrackt wird, werden alle anliegenden Signale mit Nullgewichtet, es wird also kein Audio ausgegeben.

Abbildung 4.12: 2. Ausschnitt aus dem Subpatch „Audio_Sig_Proc“

In nächsten Schritt gelangen die Signale zu einem weiteren „MatrixMixer“-Node.Hier werden alle eingehende Signale summiert und zwei mal ausgegeben. Dadurch er-hält man ein monophones „Stereosignal“. Ein Node namens „Switch‘, also ein Schal-ter, entscheidet, ob die Ausgangssignale des Beamformings einzeln, oder die ebenerstellten Mono-Summen an den „AudioOut“-Node weitergegeben werden. DieserSchalter kann über den Patch „MAIN_PATCH“ gesteuert werden. Der „AudioOut“-Node gibt letztendlich das Audiosignal an die Audio-Hardware zurück.

62

Page 67: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

5 Test, Bewertung undErweiterungen

5.1 Theoretische Grenzen des Gesamtsystems

Das erwünschte Ziel bei der Verwendung des Mono-Verfolgermikrofons ist die Schall-wandlung der akustischen Signale, die die getrackte Person von sich gibt. In denmeisten Fällen wird das die Stimme sein. Es wird ein gerichtetes und automatischnachgeführtes Mikrofon eingesetzt, da die Trennung von Direktschall und Diffus-schall angestrebt wird. Der Direktschall, den die Person aussendet ist das Nutzsignalund der und Diffusschall, welcher durch andere Störschallquellen und Reflektionendes Nutzsignals im Raum entsteht ist das unerwünschte Störsignal. Das Störsignalkann aber auch das Sprachsignal eines zweiten Sprechers sein, welcher von einemweiteren virtuellen Mikrofon erfasst werden soll. Will man die Leistungsfähigkeit desSystems ermitteln, so kann man dies auf zwei Ebenen tun. Die eben angesproche-ne Trennung des Nutz- und Störsignals beschränkt sich auf eine klassische Analysevon Mikrofonwerten und den resultierenden Signaleigenschaften und ist nicht ab-hängig von den Eigenarten des hier konstruierten Systems. Nun wird hier aber keinEinzelmikrofon mit fester Richtcharakterisik betrachtet, sondern ein Mikrofonarray,welches bestimmt Richtcharakteristiken nur virtualisert. Bei der Virtualisierung, alsodem Beamforming, wird von einem Satz an theoretisch perfekten Ambisonicssignalenausgegangen. Praktisch wird dies nie möglich sein, da gerichtete Mikrofone immerauch eine Frequenzabhängigkeit in ihrem Richtverhalten haben. An dieser Stelle sol-len aber nicht die Richteigenschaften der einzelnen Mikrofonkapseln des Soundfiel-SPS200-Mikrofons oder die Qualität der A-B-Formatwandlung bewertet werden. Ineiner Auseinandersetzung mit den akustischen Eigenschaften des Systems werden so-mit ideale B-Format-Signale angenommen.Die zweite Ebene ist die Genauigkeit und Robustheit des Nachführens, welche ja in

63

Page 68: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

5 Test, Bewertung und Erweiterungen

diesem Fall durch den Microsoft Kinect-Sensor ausgeführt wird. Der Kinect-Sensorwurde von Microsoft ursprünglich Spielecontroller für die Spielekonsole Xbox 360 ent-wickelt und vertrieben. Die Reaktionszeiten des Sensors wird den Anforderungen vonVideospielen durchaus gerecht, es ist in der Regel keine Latenz der Trackingergebnis-se bemerkbar. Eine Latenz vorhanden ist dagegen bei dem Erkennen von Personen.Dies geschieht nicht direkt nach Betreten des Erfassungsbereiches, die Algorithmenvon Microsoft scheinen nicht auf Schnelligkeit ausgelegt sein. Mit dem in vvvv ein-gebundenen Software Development Kit für Kinect ist das Tracken von gleichzeitig 2Personen möglich, auch bei zwei Personen ist bei der Positionsanalyse eine Latenzpraktisch nicht vorhanden. Nach Smisek et al. (2013: 13) hat das Bild der von derKinect erstellten Tiefendaten eine Auflösung von 640 x 480 Pixeln. Der Erfassungs-bereich hat eine Größe von 60◦ x 45◦. Dies ergibt eine Winkelauflösung von 0,938◦

Pixel. Schaut man sich die verwendeten Richtcharakteristiken erster sowie auch zwei-

ter Ordnung an, stellt man fest, dass sich um die Hauptaufnahmerichtung herumselbst bei wenigen Grad Abweichung der Übertragungsfaktor nur minimal verändert.Die Winkelauflösung der Kinect kann als mehr als ausreichend betrachtet werden.Die viel größere Eischränkung ist der horizontale Erfassungsbereich von 60◦. Mit

einer maximalen Entfernung vom Sensor von 4 m (Microsoft 2014) und der größedes horizontalen Erfassungsbereichs ist den Akteuren des Systems kein großer Bewe-gungsspielraum gegeben. Dieser eingeschränkte Bewegungsspielraum hat zudem auchAuswirkungen auf die aktustischen Eigenschaften: Betrachten wir den Fall, dass zweiSprecher vom System getrackt werden und mikrofoniert werden sollen. Das Mikrofonsteht dabei ca. 0 m von der Kinect entfernt. Stehen beide Sprecher an den Ränderndes Erfasungsbereiches, so werden ihre virtuellen Mikrofone den jeweils anderen mitdem Übertragungsfaktor aufnehmen, der bei der gewählten Mikrofoncharakteristikbei 60◦ liegt, denn 60◦ ist die maximale Abweichung von der Achse der Hauptauf-nahmerichtung, wenn beide Akteure noch im Erfassungsbereich des Kinect-Sensorsstehen.Die Hyperniere ist die Richtcharakterisktik mit dem höchsten Bündelungsgrad un-

ter den Richtcharakteristika erster Ordnung (siehe Tabelle 3.2). Bei einer Abweichungum 60◦ von der Hauptaufnahmerichtung ergibt sich nach der Mikrofongleichung 3.15eine Verringerung des Übertragunsfaktors um den Faktor s(60◦) = 0.625 = −4.1 dB.In Tabelle 3.2 ist als Monoaufnahmebereich der Winkel angeben, bei welchem sichder Übertragungsfaktor um 6 dB verringert hat.

64

Page 69: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

5 Test, Bewertung und Erweiterungen

Diese 6 dB können jedeoch auch mit dem hier konzeptionierten System erreichtwerden: durch eine Vergrößerung des Abstandes zwischen Mikrofonarray und Kinect.Nimmt man als die beiden Variablen den Abstand zwischen Mikrofonarray und KinectdKinMic und den Abstand zwischen Sprecher und Mikrofonarray dSprechMic, so ergibtsich der Winkel der maximalen Abweichung zwischen Hauptaufnahmerichtung undGrenze des Kinect-Erfassungsbereiches, bei Ausrichtung entlang der z-Achse zu

φ = 30◦ + sin−1(

12 ·

dKinMic

dSprechMic

). (5.1)

In Tabelle 5.1 sieht man einige Ergebniswerte dieser Gleichung und in Tabelle 5.1 diemaximal mögliche Dämpfung des Übertragungsfaktors bei Ausrichtung der Hauptauf-nahmerichtung in Richtung der z-Achse der Kinect und Verwendung einer Hyperniereals Richtcharakteristik.

dKinMic [m] dSprechMic [m]1 1.5 2 2.5 3

1 60.0◦ 78.6◦ 120◦ max. max1.5 49.5◦ 60.0◦ 71.8◦ 86.4◦ 120.0◦

2 44.5◦ 52.0◦ 60.0◦ 68.7◦ 78.6◦2.5 41.5◦ 47.5◦ 53.6◦ 60.0◦ 66.9◦

3 39.6◦ 44.5◦ 49.5◦ 54.6◦ 60.0◦

Tabelle 5.1: Maximale Abweichung von der Hauptaufnahmerichtung bis zur Grenze desKinect-Erfassungsbereiches

dKinMic [m] dSprechMic [m]1 1.5 2 2.5 3

1 -4.1 dB -8.0 dB -18.1 dB max. max.1.5 -2.6 dB -4.1 dB -6.3 dB -10.6 dB -18.1 dB2 -2.1 dB -3.0 dB -4.1 dB -5.6 dB -8.0 dB

2.5 -1.8 dB -2.4 dB -3.2 dB -4.1 dB -5.3 dB3 -1.6 dB -2.1 dB -2.6 dB -3.3 dB -4.1 dB

Tabelle 5.2: Die Werte aus Tabelle 5.1, eingesetzt in die Mikrofongleichung für Richtcha-rakteristik Hyperniere: Es gilt die Ausrichtung der Hauptaufnahmerichtungan der z-Achse der Kinect.

65

Page 70: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

5 Test, Bewertung und Erweiterungen

Es sind also, auch bei Einhaltung der 4 m Entfernung zur Kinect, bei einer „Entfes-selung“ des Mikrofonarraays von der Kinect maximale Pegeldämpfungen erreichbar.Zu beachten ist jedoch, dass sich der Bewegunsspielraum immer weiter verkleinert,je weiter das Mikrofon von der Kinect entfernt wird.

5.2 Das System in der Praxis und Erweiterungen

Entwickelt und ausgeführt wurde das System auf einem Apple MacBook mit 2,2 GhzIntel Core 2 Duo Prozessor und 4 GB 667 Mhz DDR2 SDRAM. Unter MicrosoftWindows 7 Professional war vvvv als Version 45beta31.2 x86 installiert.Es zeigte sich leider, das der verwendete Computer nicht den Systemanforderungen

des erstellten Programms genügt. Die Verwendung der Kinect nahm so viel Prozes-sorleistung in Anspruch, dass die Audioabtastrate nicht konstant gehalten werdenkonnte, es also ständig zu Aussetzern im Audiosignal kam. Bei einer Erhöhung desAudiopuffers auf den Wert von 2048 Samples sank die Prozessorauslastung leichtund es kam zu weniger Aussetzern im Audiosignal. Für die fehlerfreie Anwendungsei auf jeden Fall ein wesentlich leistungsstärkerer Computer empfohlen. Eine andereMöglichkeit, das Problem zu lösen, wäre das Verwenden von zwei Computern. EinRechner übernimmt das Tracking mit der Kinect und sendet die Daten, beispielswei-se per UDP über ein Netzwerk an den Rechner, welcher die Audiosignalverarbeitungausführt.Neben diesem Problem mit der Rechnerleistung arbeitet die erstellete Software

wie konzipiert. Die Gewichtungsfaktoren für die Ambisoncissignale werden korrektberechnet und die Audiokanäle korrekt gewichtet. Ein Hörtest bestätigt, dass dasausgewählte Mikrofon mitgeführt wird und Störschall, welcher nicht aus der Richtungdes Trackingergebnisses kommt, entsprechend gedämpft wird.Bei Verwendung des Systems fällt, wie auch schon in Kapitel 5.1 erwähnt auf, dass

die Bewegungsfreiheit im Erfassungsbereich, insbesondere bei einer Distanz zwischenMikrofon und Kinect, nicht genügend groß ist. In vvvv ist es jedoch möglich, mehrereKinect-Sensoren einzubinden. Dadurch könnte der Erfassungsbereich des Systemsvergrößert werden.Eine weiteres störendes Element ist das Fehlen einer Verwaltung der getrackten

Personen. Bewegt sich eine dritte Person in den Erfassungsbereich, so wird ein virtu-elles Mikrofon abgeschaltet und der neu erschienenen Person zur Verfügung gestellt.

66

Page 71: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

5 Test, Bewertung und Erweiterungen

Dieses Problem ist über ein Verwalten der UserID, welche in den Kinect-Daten be-reitgestellt wird, realisierbar.Die Verwendung des alternativen Treiberpakets und Software Development Kits

OpenNI, welches auch in der vvvv-Umgebung lauffähig ist, würde das Tracking vongleichzeitig 6 Personen mit der Kinect ermöglichen. Bei dem Aktionsradius der Ki-nect und den eingesetzten Richtcharakteristiken erscheint aufgrund der fehlendenTrennschärfe die Bereitstellung von 6 simultanen Mikrofonkanälen jedoch nicht alssinnvoll.

67

Page 72: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

6 Fazit

In dieser Arbeit wurde eine Vielzahl an Funktionalitäten für ein intelligentes Mikro-fonsystem gefunden. Dabei wurden auch Funktionen erörtert, welche nichts mit einemMikrofon zu tun haben. Es wurde ein großes Gesamtsystem entworfen und wenn einSystem wächst, dann nicht nur in die Richtung, in welcher es seinen Ursprung hat.Insgesamt ließ sich zeigen, dass sich mit den wenigsten Technologien, Human Detec-

tion und Beamforming und einfache Signalverarbeitung, theoretisch schon die meis-ten der Funktionen realisieren lassen. Mit der schnell steigenden Leistungsfähigkeitaktueller Technologien könnte in Zukunft die ein oder andere Funktion als selbstver-ständlich betrachtet werden, auch wenn sie heute noch die Grenzen der technischenRealisierbarkeit tangiert.Die exemplarische Realisierung des Mono-Verfolgermikrofons entspricht den ge-

stellten Anforderungen und hat eine Basis erzeugt, die auch von mir persönlich gerneweiterentwickelt werden will. Neue Funktionen ließen sich jetzt schnell implementierenund andere Systemkomponenten zu Vergleichszwecken mit dem System verwenden.Zu guter Letzt wäre es äußerst begrüßenswert, wenn diese Arbeit auch von eineranderen Person als Anlass genommen wird, die Ergebnisse weiterzuentwickeln.

68

Page 73: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

A Daten auf der angeheftetenCD-ROM

Auf der angehefteten CD-ROM befinden sich:

1. Die PDF-Version der Bachelorthesis

2. Ein Ordner mit der Programmversion der verwendeten vvvv-Version inklusivedes Audio Packs alpha.

3. Ein Ordner mit allen vvvv-Patches und Subpatches.

Um die Software auszuführen, muss die vvvv-Version entpackt auf die Festplatteeines Windows-x86-Computers kopiert werden.Zur Installation bitte den Anweisungen der Datei setup.exe folgen. Nach erfolgrei-

cher Installation kann die Datei MAIN_PATCH.v4p im Order Intelligente Mikrofon-steuerung geöffnet werden, um das Programm zu starten.

69

Page 74: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

Abbildungsverzeichnis

2.1 Blockschaltbild des Mono-Verfolgermikrofons . . . . . . . . . . . . . . 92.2 Automatisches Panning mit zwei unterschiedlichen Ergebnissen . . . . 132.3 Blockschaltbild des Mikrofonsystem in Maximalkonfiguration . . . . . 21

3.1 Die Konventionen des hier verwendeten Koordinatensystems, aus (Wi-kipedia 2014) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.2 Pegelunterschiede der Ambisonicskanäle SN3D/N3D . . . . . . . . . . 28

4.1 Der Kinect-Sensor für Xbox 360 von Microsoft, ohne Gehäuse, aus(iFixit 2010) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.2 Von der Kinect projiziertes Infrarotmuster, erfasst vom Kinect-IR-Sensor, aus (Mutto et al. 2012: 42) . . . . . . . . . . . . . . . . . . . . 38

4.3 Koordinatensystem der Kinect, aus (Microsoft 2012) . . . . . . . . . . 384.4 Das SoundField SPS200 Software Controlled Microphone der Firma

TSL Products, aus TSL Products (2014) . . . . . . . . . . . . . . . . 414.5 Ein einfacher Patch in vvvv, welcher einen Zahlenwert quadriert und

vom Ergebnis einen anderen Wert subtrahiert. . . . . . . . . . . . . . 514.6 vvvv-Patch aus Abbildung 4.5, realisiert als Subpatch . . . . . . . . . 514.7 vvvv-Patch aus Abbildung 4.5 als Subpatch, Spreads als Input . . . . 524.8 Der Patch „MAIN_PATCH“, Ausgangspunkt der Steuerungssoftware 574.9 Ausschnitt aus dem Subpatch „human_detection_kinect“ . . . . . . 584.10 Ausschnitt aus dem Subpatch „beamforming_spreads“ . . . . . . . . 594.11 1. Ausschnitt aus dem Subpatch „Audio_Sig_Proc“ . . . . . . . . . . 604.12 2. Ausschnitt aus dem Subpatch „Audio_Sig_Proc“ . . . . . . . . . . 62

70

Page 75: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

Tabellenverzeichnis

3.1 SN3D-Definition der Ambisonicskanäle mit Konvertierungsfaktoren . 303.2 Die typischen Richtcharakteristiken erster Ordnung und ihre akusti-

schen Eigenschaften nach (Schneider 2008, Sengpiel 2002). . . . . . . 32

4.1 Geometrisch ähnliche Kugelflächenfunktionen bzw. deren Real- oderImaginärteile zusammen mit den zugehörigen FuMa-Kanalbuchstaben 43

4.2 Konvertierungsfaktoren für das Beamforming . . . . . . . . . . . . . . 474.3 Formeln zur Berechnung der Gewichtungsfaktoren der Ambisonics-

kanäle erster und zweiter Ordnung für das Beamforming . . . . . . . 484.4 Mikrofon-Koeffizienten verschiedener Richtcharakteristiken (Schneider

2008, Benesty et al. 2013) . . . . . . . . . . . . . . . . . . . . . . . . 484.5 Beamforming-Koeffizienten verschiedener Richtcharakteristiken . . . . 49

5.1 Maximale Abweichung von der Hauptaufnahmerichtung bis zur Grenzedes Kinect-Erfassungsbereiches . . . . . . . . . . . . . . . . . . . . . 65

5.2 Die Werte aus Tabelle 5.1, eingesetzt in die Mikrofongleichung fürRichtcharakteristik Hyperniere: Es gilt die Ausrichtung der Hauptauf-nahmerichtung an der z-Achse der Kinect. . . . . . . . . . . . . . . . 65

71

Page 76: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

Literaturverzeichnis

The Ambisonics Association (2008): „Ambisonic Channels“, [online] http://ambisonics.ch/standards/channels/ [02.07.2014].

Benesty, Jacob, Jingdong Chen und Walter Kellermann (Hrsg.)(2013): Study andDesign of Differential Microphone Arrays, (=Springer Topics in Signal Processing,Bd. 6), Berlin Heidelberg: Springer.

Chapman, Michael et al (2009): „A standard for interchange of ambisonic signal sets.Including a file standard with metadata“, Ambisonics Symposium 2009, 25-27 Juli,Graz.

Schutzrecht US4042779 (A) (1977): Craven, Peter G. und Michael G. Gerzon, Prio-rität: GB19740030977 19740712, Coincident microphone simulation covering threedimensional space and yielding various directional outputs.

Daniel, Jérôme (2001): Représentation de champs acoustiques, application à la trans-mission et à la reproduction de scènes sonores complexes dans un contexte mul-timédia, Doktorarbeit ohne Fachangabe an der Université Paris 6.

Gerzon, Michael A. (1973): „Periphony: With-Height Sound Reproduction“, in: Jour-nal of the Audio Engineering Society, Jg. 21, Nr. 1, S. 2-10.

Görne, Thomas und Ulrich Schmidt (Hrsg.) (2011): Tontechnik, (Reihentitel undBandnummer unbekannt), München: Hanser.

iFixit (2010): „Microsoft Kinect Teardown“, [online] http://www.ifixit.com/Teardown/Microsoft+Kinect+Teardown/4066 [26.08.2014].

Jänich, Klaus (1995): Analysis für Physiker und Ingenieure. Funktionentheorie, Dif-ferentialgleichungen,Spezielle Funktionen, 3. Aufl., Berlin Heidelberg: Springer.

72

Page 77: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

Literaturverzeichnis

Kronlachner, Matthias (2012): Ambisonics Binaural Dekoder Implementation alsAudio Plug-in mit Headtracking zur Schallfeldrotation, Bacherlorarbeit im FachElektrotechnik-Toningeniuer an der Universität für Musik und darstellende KunstGraz.

Malham, Dave G. (2003): Higher order Ambisonic systems. Zusammenfassung aus:Space in Music - Music in Space, M.Phil-Thesis, ohne Fachangabe, University ofYork.

Microsoft Corporation (2012): „Kinect Sensor“, [online] http://msdn.microsoft.com/en-us/library/hh438998.aspx [26.08.2014].

Microsoft Corporation (2014): „Skeletal Tracking“, [online] http://msdn.microsoft.com/en-us/library/hh973074.aspx [20.08.2014].

Mutto, Carlo Dal, Pietro Zanuttigh und Guido Maria Cortelazzo (2012): Time-of-Flight Cameras and Microsoft Kinect, (=SpringerBriefs in Electrical and ComputerEngineering, Bandnummer unbekannt), London: Springer.

Papula, Lothar (2009): Mathematik für Ingenieure und Naturwissenschaftler. EinLehr- und Arbeitsbuch für das Grundstudium, Bd. 2, 12. Aufl., Wiesbaden: View-eg+Teubner.

Poletti, M. A. (2005): „Three-Dimensional Surround Sound Systems Based on Sphe-rical Harmonics“,in: Journal of the Audio Engineering Society, Jg. 53., Nr. 11, S.1004-1025.

Schneider, Martin (2008): „Mikrofone“, in: Stefan Weinzierl (Hrsg.): Handbuch derAudiotechnik, Berlin: Springer, S. 313-419.

Sengpiel, Eberhard (2002): „Alle Mikrofon-Richtcharakteristiken undweitere Parameter“, [online] http://www.sengpielaudio.com/AlleMikrofonRichtcharakteristiken.pdf [02.07.2014].

Shotton, Jamie, Toby Sharp, Alex Kipman, Andrew Fitzgibbon, Mark Finocchio,Andrew Blake, Mat Cook und Richard Moore (2013): „Real-Time Human PoseRecognition in Parts from Single Depth Images “, in: Communications of the ACM,Jg. 56, Nr. 1, S. 116-124.

73

Page 78: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

Literaturverzeichnis

Slavik, Karl M., Stefan Weinzierl (2008): „Wiedergabeverfahren“, in: Stefan Weinzierl(Hrsg.): Handbuch der Audiotechnik, Berlin: Springer, S.609-685.

Smisek, Jan, Michal Jancosek und Thomas Pajdla (2013): „3D with Kinect“, in: An-drea Fossati et al. (Hg.): Consumer Depth Cameras for Computer Vision: ResearchTopics and Applications (=Advances in Computer Vision and Pattern Recognition,Bandnummer unbekannt), London: Springer, S. 3-25

Teutsch, Heinz, Thoma, M. (Hrsg.) und Morari, M. (Hrsg.) (2007): Modal Array Si-gnal Processing: Principles and Applications of Acoustic Wavefield Decomposition,(=Lecture Notes in Control and Information Science, Bd. 348), Berlin Heidelberg:Springer.

TSL Products (2014): „SoundField SPS200 Software Controlled Microphone“, [on-line] http://www.tslproducts.com/soundfield/soundfieldsps200-software-controlled-microphone/ [26.08.2014].

Wikipedia (2014): „Kugelkoordinaten“, [online] http://de.wikipedia.org/wiki/Kugelkoordinaten [28.08.2014].

74

Page 79: Bachelorthesis Robert Ballon Intelligentes Mikrofonsystem - Einsatzszenarien und Realisierung

Ich versichere, die vorliegende Arbeit selbstständig ohne fremde Hilfeverfasst und keine anderen Quellen und Hilfsmittel als die angege-benen benutzt zu haben. Die aus anderen Werken wörtlich entnom-menen Stellen oder dem Sinn nach entlehnten Passagen sind durchQuellenangaben eindeutig kenntlich gemacht.

Ort, Datum Robert Ballon