-
GEBIET DER ERFINDUNG
-
Diese Erfindung bezieht sich allgemein auf die Medienüberwachung und insbesondere auf Vorrichtungen zur Erkennung von Spillover in einem Publikumsüberwachungssystem.
-
HINTERGRUND
-
Der Konsum von Medienpräsentationen beinhaltet im Allgemeinen das Anhören von Audioinformationen und/oder das Ansehen von Videoinformationen, wie z. B. Radioprogramme, Musik, Fernsehprogramme, Filme, Standbilder usw. Medienorientierte Unternehmen wie z. B. Werbefirmen, Rundfunkanstalten usw. sind häufig an den Seh- und Hörinteressen ihres Publikums interessiert, um Produkte und/oder Dienstleistungen besser vermarkten zu können.
-
Figurenliste
-
- 1 ist ein Blockdiagramm einer Beispielumgebung, in der ein Beispielsystem zur Publikumsmessung, das in Übereinstimmung mit den Lehren dieser Erfindung konstruiert wurde, betrieben werden kann, um Publikumsmessdaten zu sammeln.
- 2 ist eine vergrößerte Darstellung eines Teils des Beispiel-Messsystems von 1.
- 3 ist ein Blockdiagramm einer Beispielimplementierung des Messgeräts von 1.
- 4 ist eine vergrößerte Darstellung eines Teils des Beispiel-Messsystems von 1.
- 5 ist ein Blockdiagramm einer Beispielimplementierung des Richtungsdetektors von 2.
- 6 ist ein Blockdiagramm einer Beispielimplementierung des Postprozessors von 5.
- 7 zeigt das Beispielmessgerät von 1 im Betrieb.
- 8A und 8B sind Abbildungen von Beispieltabellen, die in Verbindung mit dem Beispielmesssystem von 1 verwendet werden.
- 9-10 sind Flussdiagramme, die beispielhafte maschinenlesbare Anweisungen darstellen, die ausgeführt werden können, um das Beispielmessgerät der 1-3 zu implementieren.
- 11 ist ein Flussdiagramm, das beispielhafte maschinenlesbare Anweisungen darstellt, die ausgeführt werden können, um den beispielhaften Richtungsdetektor der 3 und 4 zu implementieren.
- 12 ist ein Flussdiagramm, das beispielhafte maschinenlesbare Anweisungen darstellt, die ausgeführt werden können, um den beispielhaften Postprozessor der 5 und 6 zu implementieren.
- 13 zeigt eine Beispieltabelle, die in Verbindung mit dem Beispiel-Postprozessor der 4 und 5 verwendet wird.
- 14 ist ein Blockdiagramm eines Beispielverarbeitungssystems, das in der Lage ist, die maschinenlesbaren Beispielanweisungen der 9-11 und/oder 12 auszuführen, um das Beispielmessgerät 112 der 1-3, den Beispielrichtungsdetektor 300 der 3 und 5 und/oder den Beispielpostprozessor 520 der 5 und 6 zu implementieren.
-
DETAILLIERTE BESCHREIBUNG
-
Eine Technik zur Messung der Exposition und/oder der Anzahl der Zuschauer, die den Medien ausgesetzt sind, beinhaltet die Vergabe von Medienexpositionskrediten für eine Medienpräsentation, wenn ein Zuschauer der Medienpräsentation ausgesetzt ist. Die Vergabe von Mediennutzungsgutschriften kann anhand der Medien, denen die Zuschauer ausgesetzt sind, und der Ermittlung der Identität und/oder Anzahl der Personen im Publikum bestimmt werden. Die Mediennutzung, die die Aktivitäten der Zuschauer identifiziert, kann auch mit Hilfe eines Messgeräts überwacht werden, das in der Nähe eines Medienpräsentationsgeräts, z. B. eines Fernsehers, angebracht ist. Das Messgerät kann so konfiguriert sein, dass es eine oder mehrere Techniken zur Überwachung der Mediennutzung (z. B. Seh- und/oder Höraktivitäten) eines oder mehrerer Zuschauer einsetzt. Eine Technik zur Überwachung der Mediennutzung umfasst beispielsweise das Erkennen und/oder Sammeln von Informationen (z. B. Codes, Signaturen usw.) aus Audiosignalen, die von Medienwiedergabegeräten (z. B. Fernsehgeräten, Stereoanlagen, Lautsprechern, Computern usw.) ausgesendet oder präsentiert werden.
-
Wenn die Zuschauer mit Medien konfrontiert werden, die von einem Medienpräsentationsgerät dargeboten werden, kann das Messgerät den mit den Medien verbundenen Ton erkennen und daraus Überwachungsdaten erzeugen. Im Allgemeinen können die Überwachungsdaten alle Informationen enthalten, die für eine bestimmte Medienpräsentation (z. B. Inhalt, Werbung, Lied, Fernsehprogramm, Film, Videospiel usw.) repräsentativ sind (oder damit verbunden sind) und/oder zur Identifizierung einer bestimmten Medienpräsentation verwendet werden können. Die Überwachungsdaten können beispielsweise Signaturen enthalten, die vom Messgerät auf der Grundlage der Audiocodes, die mit den Medien gesendet werden (z. B. eingebettet in diese), erfasst oder erzeugt werden.
-
Leider stellt der typische Haushalt das Messgerät vor einzigartige Herausforderungen bei der Überwachung. Ein typischer Haushalt umfasst beispielsweise mehrere Medienübertragungsgeräte, von denen jedes so konfiguriert ist, dass es Medien an bestimmte Sicht- und/oder Hörbereiche innerhalb des Hauses überträgt. Ein Messgerät, das sich in einem Sichtbereich (z. B. in einem Raum des Haushalts) befindet, kann so konfiguriert sein, dass es alle Medien erkennt, die von einem bestimmten Medienpräsentationsgerät in den überwachten Bereich geliefert werden, und dass es die mit den Medien verbundene Programmierung als den Zuschauern ausgesetzt anrechnet. Das Messgerät arbeitet also unter der Prämisse, dass jedes vom Messgerät erfasste Medium mit einem Programm in Verbindung steht, das von einem bestimmten Medienpräsentationsgerät im überwachten Bereich stammt. In einigen Fällen kann ein Messgerät jedoch Medieninhalte erkennen, die von einem oder mehreren anderen Medienabgabegeräten ausgestrahlt werden, die sich nicht im Sichtbereich befinden, wodurch die erkannte Programmierung fälschlicherweise dem falschen Gerät und/oder Zuschauer gutgeschrieben wird.
-
Die Fähigkeit des Messgeräts, Töne zu erkennen, die außerhalb des überwachten Bereichs übertragen werden, ist ein Effekt, der als „Spillover“ bezeichnet wird, weil die Medien, die außerhalb des überwachten Bereichs übertragen werden, als „Überschwappen“ in den Sichtbereich des Messgeräts und des speziellen Medienpräsentationsgeräts, das das Messgerät messen soll, beschrieben werden. Ein Spillover-Effekt kann beispielsweise auftreten, wenn ein Messgerät, das mit einem Fernseher in einem Schlafzimmer verbunden ist und sich in dessen Nähe befindet, Audiosignale erkennt, die von einem Fernseher in einem angrenzenden Wohnzimmer geliefert werden, wodurch das Messgerät die Medien fälschlicherweise als von dem Fernseher im Schlafzimmer stammend und den Personen im Schlafzimmer ausgesetzt ansieht.
-
Das Messgerät kann auch verwendet werden, um festzustellen, ob die zu überwachende Medienpräsentationsvorrichtung eingeschaltet ist. Diese Feststellung kann durch die Überwachung des vom Messgerät erfassten Schallpegels erfolgen, und es kann festgestellt werden, dass das Medienpräsentationsgerät eingeschaltet ist, wenn der erfasste Schallpegel über einem Schwellenwert liegt (z. B. einem Schwellenwert für die Audioenergie in dB). Wenn jedoch Raumgeräusche (z. B. von Personen, die sich in der Nähe des Messgeräts unterhalten) oder Geräusche von einem anderen Medienpräsentationsgerät das Messgerät dazu veranlassen, einen Schallpegel oberhalb des Schwellenwerts zu erfassen, kann das Messgerät fälschlicherweise feststellen, dass das zu überwachende Medienpräsentationsgerät eingeschaltet ist, obwohl es eigentlich ausgeschaltet ist.
-
Beispielhafte Vorrichtungen, Systeme und/oder Herstellungsgegenstände, die hier offenbart werden, umfassen ein Messgerät zum Empfangen von Audiosignalen von einer Medienpräsentationsvorrichtung und zum Überwachen von Audiocodes, die in die von der Medienpräsentationsvorrichtung empfangenen Audiosignale eingebettet sind, über zwei Mikrofone auf beiden Seiten des Messgeräts, die durch einen Abstand getrennt sind. In einigen hier offengelegten Beispielen bestimmt das Messgerät die Richtung, aus der Audio empfangen wird, indem es die Zeitdifferenz zwischen dem Empfang von Audio durch jedes der beiden Mikrofone misst. In anderen hierin offengelegten Beispielen bestimmt das Messgerät anhand der ermittelten Richtung des Schalls, ob der empfangene Ton von dem zu überwachenden Medienpräsentationsgerät stammt.
-
1 ist ein Blockdiagramm einer Beispielumgebung, in der ein Beispielsystem zur Publikumsmessung, das gemäß den Lehren dieser Offenbarung konstruiert wurde, arbeiten kann, um Publikumsmessdaten zu sammeln. Aus Gründen der Klarheit und Effizienz werden das Beispielsystem und die entsprechenden Systeme, Vorrichtungen und/oder Herstellungsgegenstände hier in Bezug auf ein Beispielgebiet/eine Beispielumgebung 102 beschrieben. Im illustrierten Beispiel von 1 ist der Bereich 102 ein Haushalt. In anderen Beispielen kann es sich bei dem Bereich 102 jedoch auch um ein Geschäft (z. B. eine Einzelhandelseinrichtung), ein Einkaufszentrum, einen Vergnügungspark und/oder andere Bereiche handeln. Die Beispielumgebung 102 umfasst Räume 104 und 106, ein Mediengerät 108, einen oder mehrere Medienvorrichtungslautsprecher 110, ein Spillover-Mediengerät 122, einen oder mehrere Spillover-Medienvorrichtungslautsprecher 124 und ein oder mehrere Zuschauer 118, 120, 126. Die Umgebung des dargestellten Beispiels wird von 112, 114 und 116 überwacht. Die in der Umgebung gesammelten Daten werden über ein Netzwerk 128 an eine Datenerfassungseinrichtung 130 mit einem Server 132 und einer Datenbank 134 übermittelt.
-
Die Räume 104 und 106 des gezeigten Beispiels sind Räume innerhalb des Haushalts 102 (z. B. ein Schlafzimmer, eine Küche, ein Wohnzimmer usw.).
-
Die Beispiel-Medienvorrichtung 108 liefert Medien (z. B. Inhalte und/oder Werbung), und die ein oder mehreren Lautsprecher 110 geben Audiosignale ab, die sich im gesamten Raum 104 ausbreiten. Die Zuhörer 118, 120 im Raum 104 werden mit den von der Medienvorrichtung 108 gelieferten Medien konfrontiert. Die Medienvorrichtung 108 kann durch ein Fernsehgerät, ein Radio, einen Computer usw. dargestellt werden.
-
In dem in 1 dargestellten Beispiel überwacht das Messgerät 112 die von der Medienvorrichtung 108 gelieferten Medien, indem es Audiosignale von den Lautsprechern 110 der Medienvorrichtung erkennt. Das Beispielmessgerät 112 erkennt einen oder mehrere Audiocodes, die in ein erkanntes Audiosignal eingebettet sind. Die Audiocodes identifizieren eine bestimmte Medienpräsentation (z. B. ein Fernsehprogramm), die von der Medienvorrichtung 108 geliefert wird. Die Identifizierung kann durch die Identifizierung der Medienpräsentation anhand des Namens oder durch die Identifizierung eines Senders und/oder einer Signatur und eines Zeitstempels erfolgen, die das Nachschlagen des Programms in einer Tabelle ermöglichen. Das Beispielmessgerät 112 des gezeigten Beispiels wird im Raum 104 in der Nähe der Medienvorrichtung 108 platziert, und die von dem einen oder den mehreren Lautsprechern 110 abgegebenen Audiosignale werden von dem ersten Mikrofon 114 und dem zweiten Mikrofon 116 erfasst. Im gezeigten Beispiel von 1 sind das erste Mikrofon 114 und das zweite Mikrofon 116 durch einen Abstand voneinander getrennt (z. B. basierend auf der Größe des Gehäuses des Messgeräts 112 (z. B. drei Zoll)). Da das erste Mikrofon 114 räumlich näher an den Lautsprechern 110 liegt als das zweite Mikrofon 116, erreicht der vom Messgerät 112 erfasste Schall das erste Mikrofon, bevor er das zweite Mikrofon 116 erreicht. Die Zeitdifferenz zwischen den beiden Mikrofonen, die den Schall erfassen, kann zur Bestimmung der Herkunftsrichtung verwendet werden (d. h. der Richtung, aus der der Schall kam).
-
Im dargestellten Beispiel von 1 breiten sich Audiosignale, die von den Lautsprechern 110 des Mediengeräts, den Spillover-Lautsprechern 124 des Mediengeräts und/oder anderen Quellen ausgesendet werden, mit Schallgeschwindigkeit im gesamten Raum 104 aus. Im Allgemeinen ist die Schallgeschwindigkeit von den atmosphärischen Bedingungen, einschließlich Lufttemperatur und -feuchtigkeit, abhängig und wird hier als Ausbreitungsgeschwindigkeit von 13.041,6 Zoll pro Sekunde (331,25 Meter pro Sekunde) angenommen. Es können sich jedoch eine oder mehrere andere Ausbreitungsgeschwindigkeiten für eine oder mehrere andere Umgebungsbedingungen ergeben. Für den Fall, dass der Beispiellautsprecher 110 des Mediengeräts einen Ton zum Zeitpunkt Null (t0) abgibt, erreicht der abgegebene Ton das erste Mikrofon 114 zu einem ersten Zeitpunkt (t1) und der abgegebene Ton das zweite Mikrofon 116 zu einem zweiten Zeitpunkt (t2 ). Das Beispielmessgerät 112 kann die Differenz zwischen dem Zeitpunkt, zu dem ein Audiosignal das erste Mikrofon 114 erreicht (t1), und dem Zeitpunkt, zu dem das Audiosignal das zweite Mikrofon 116 erreicht (t2), berechnen. Da die Ausbreitungsgeschwindigkeit des Schalls bekannt ist und der Abstand zwischen dem ersten Mikrofon 114 und dem zweiten Mikrofon 116 bekannt ist, kann das Beispielmessgerät 112 außerdem den Winkel zwischen dem Beispielmessgerät 112 und der Quelle des Audiosignals bestimmen.
-
Im gezeigten Beispiel von 1 ist das Spillover-Mediengerät 122 ein Medienabgabegerät (z. B. ein Fernseher, ein Radio usw.), das sich in dem Raum 106 befindet. Das Beispiel des Spillover-Mediengeräts 122 liefert Medien-Audio über einen oder mehrere Spillover-Medienvorrichtungslautsprecher 124, die dazu bestimmt sind, Medien an Zuschauer 126 innerhalb des Raums 106 zu liefern. Die von den Lautsprechern 124 des Spillover-Mediengeräts ausgestrahlten Audiosignale können jedoch in den anderen Raum 104 übergreifen und vom Messgerät 112 erfasst werden. Dies kann dazu führen, dass das Messgerät 112 die von der Spillover-Medienvorrichtung 122 abgegebenen Medien fälschlicherweise als von der Medienvorrichtung 108 abgegeben aufzeichnet. Dies kann zu Fehlern bei der Meldung der von den Mediengeräten 108, 122 im Haushalt 102 präsentierten Medien führen.
-
Die beispielhafte Datenerfassungseinrichtung 130 des in 1 dargestellten Beispiels empfängt Daten, die von dem beispielhaften Messgerät 112 erfasst werden (z. B. erkannte Audiocodes, erkannte Herkunftsrichtungen der empfangenen Audiosignale). Im illustrierten Beispiel von 1 enthält die Datenerfassungseinrichtung 130 den Server 132 und die Datenbank 134. Die Beispieldatenbank 134 speichert Daten, die von der Datenerfassungseinrichtung 130 vom Messgerät 112 empfangen werden, und kann mit jedem geeigneten Speicher und/oder Datenspeichergerät und/oder - verfahren implementiert werden. Der Beispielserver 132 analysiert die in der Datenbank 134 gespeicherten Informationen, um z. B. eine oder mehrere Mediennutzungsaktivitäten des Beispielhaushalts 102 zu bestimmen.
-
Im dargestellten Beispiel von 1 kann das Messgerät 112 über das Netzwerk 128 mit der Datenerfassungseinrichtung 130 kommunizieren und umgekehrt. Das Beispielnetzwerk 128 von 1 ermöglicht es, eine Verbindung zwischen dem Beispielzähler 112 und der Beispiel-Datenerfassungseinrichtung 130 selektiv aufzubauen und/oder abzubauen. Das Beispielnetzwerk 128 kann mit jeder Art von öffentlichem oder privatem Netzwerk implementiert werden, wie z. B. dem Internet, einem Telefonnetzwerk, einem lokalen Netzwerk (LAN), einem Kabelnetzwerk und/oder einem drahtlosen Netzwerk. Um die Kommunikation über das Beispielnetzwerk 128 zu ermöglichen, enthalten der Beispielzähler 112 und die Beispiel-Datenerfassungseinrichtung 130 von 1 des dargestellten Beispiels eine Kommunikationsschnittstelle, die eine Verbindung mit einem Ethernet, einer digitalen Teilnehmerleitung (DSL), einer Telefonleitung, einem Koaxialkabel und/oder einer drahtlosen Verbindung usw. ermöglicht.
-
2 zeigt eine Beispielimplementierung zur Erkennung von Nebengeräuschen in einer Umgebung mit einem oder mehreren bestimmten Standorten der Mediengerätelautsprecher 110 und der Nebengeräuschmediengerätelautsprecher 124. Audiosignale werden von dem ersten Mikrofon 114 entweder vor oder nach dem Empfang derselben Audiosignale durch das zweite Mikrofon 116 empfangen. Die Zeitverzögerung zwischen dem Empfang von Audiosignalen durch die beiden Mikrofone 114, 116 hängt von der Entfernung zwischen den beiden Mikrofonen 114, 116 und dem Winkel ab, aus dem der Schall empfangen wird. Da der Abstand zwischen den Mikrofonen 114, 116 in dem in 2 dargestellten Beispiel fest ist, hängt die Zeitverzögerung zwischen dem Empfang eines Audiosignals durch die beiden Mikrofone 114, 116 vom Winkel der Quelle des Audiosignals ab.
-
In dem in 2 dargestellten Beispiel sind die Mediengerätelautsprecher 110 und die Spillover-Medienvorrichtungslautsprecher 124 in unterschiedlichen Winkeln zum Messgerät 112 angeordnet. Der Schall von den Beispiellautsprechern 110 des Mediengeräts wird vom Messgerät 112 aus einem Winkel (A) 202 empfangen, der anzeigt, dass sich die Schallquelle im Bereich 204 befindet. Darüber hinaus wird Schall von den Beispiellautsprechern 124 des Spillover-Mediengeräts von dem Beispielmessgerät 112 von außerhalb des Winkels (A) 202 empfangen, was auf eine Schallquelle innerhalb des Bereichs 206 hinweist. Durch die Erkennung der Ursprungsrichtung des Schalls unter Verwendung der hier beschriebenen Techniken kann das Messgerät 112 Audiocodes akzeptieren, die aus dem Bereich 204 empfangen werden, und Audiocodes ignorieren, die aus dem Bereich 206 kommen. Auf diese Weise kann das Messgerät 112 lokale Medien (z. B. von der Medienvorrichtung 108 ausgestrahlte Audiosignale) von Spillover-Medien (z. B. von der Spillover-Medienvorrichtung 122 ausgestrahlte Audiosignale) unterscheiden und Audiosignale von den Lautsprechern 124 der Spillover-Medienvorrichtung ignorieren und nur von den Lautsprechern 110 der Medienvorrichtung empfangene Audiocodes akzeptieren.
-
In dem in 2 dargestellten Beispiel wird der Winkel des empfangenen Tons durch Messung der Zeitdifferenz zwischen dem Empfang des Tons durch das erste Mikrofon 114 und das zweite Mikrofon 116 bestimmt. Audio, das von den Beispiellautsprechern 110 des Mediengeräts aus 1 empfangen wird, wird von dem ersten Mikrofon 114 und dem zweiten Mikrofon 116 etwa zur gleichen Zeit empfangen, da der Abstand zwischen den Lautsprechern 110 des Mediengeräts und dem ersten Mikrofon 114 der gleiche ist wie der Abstand zwischen den Lautsprechern 110 des Mediengeräts und dem zweiten Mikrofon 116. Allerdings ist der Abstand zwischen dem ersten Mikrofon 114 und dem Punkt 208 im Beispiel von 2 derselbe wie der Abstand zwischen dem zweiten Mikrofon 116 und dem Punkt 208. Daher werden Audiosignale, die vom Messgerät 112 von einer Schallquelle am Punkt 208 empfangen werden, gleichzeitig vom ersten Mikrofon 114 und vom zweiten Mikrofon 116 empfangen. Wenn also Audiosignale vom ersten Mikrofon 114 und vom zweiten Mikrofon 116 gleichzeitig empfangen werden, stellt das Messgerät 112 fest, dass die Audiosignale entweder aus der Richtung der Lautsprecher des Mediengeräts 110 im Beispiel von 2 oder aus der Richtung des Punktes 208 kommen. Das Messgerät 112 ist jedoch nicht in der Lage zu bestimmen, aus welcher dieser beiden Richtungen der Ton kam. Dies wird als Vorderseiten-Rückseiten-Unbestimmtheit bezeichnet und wird durch die Tatsache verursacht, dass das Messgerät 112 nur zwei Mikrofone verwendet. Wie nachstehend näher beschrieben, erleichtern die hier offengelegten Beispielsysteme, -vorrichtungen und/oder -artikel die Lösung der Vorderseiten-Unbestimmtheit durch planmäßige, periodische und/oder aperiodische Drehung des ersten und zweiten Mikrofons 114, 116.
-
3 ist ein Blockdiagramm einer Implementierung des Beispielmessgeräts 112 von 1. In dem in 3 dargestellten Beispiel umfasst das Messgerät 112 das erste Mikrofon 114, das zweite Mikrofon 116, einen Richtungsdetektor 300, einen Filter 302, eine Mediengerätedatenbank 304, einen Codeleser 306, einen Speicher 308 und einen Datensender 310.
-
Das erste Mikrofon 114 und das zweite Mikrofon 116 des in 3 dargestellten Beispiels befinden sich auf verschiedenen Seiten des Gehäuses des Messgeräts 112 und sind durch einen Abstand (z. B. drei Zoll) getrennt. In einigen Beispielen wird das Messgerät 112 um 90 Grad gedreht (durch einen Motor oder eine andere Vorrichtung), um die Ausrichtung des ersten Mikrofons 114 und des zweiten Mikrofons 116 zu ändern. In anderen Beispielen bleibt das Messgerät 112 stationär, während sich das erste und zweite Mikrofon 114, 116 innerhalb eines Gehäuses des Messgeräts drehen.
-
4 zeigt ein Ausführungsbeispiel des Messgeräts 112, bei dem das Messgerät 112 gedreht werden kann. Im Beispiel von 4 wird das Messgerät 112 so gedreht, dass das erste und das zweite Mikrofon 114, 116 so ausgerichtet sind, dass sie auf das Mediengerät 108 „zeigen“, wie in 4 dargestellt. Dies kann die Genauigkeit der vom Messgerät 112 durchgeführten Messungen erhöhen. In anderen Beispielen wird das Messgerät 112 gedreht, um mit Unbestimmtheiten umzugehen, wie unten beschrieben.
-
Wie oben beschrieben, kann eine Vorder-Rückseiten-Unbestimmtheit auftreten, wenn das erste und das zweite Mikrofon 114, 116 in einer Linie von links nach rechts zueinander ausgerichtet sind und das Beispielmessgerät 112 nicht in der Lage ist zu bestimmen, ob sich eine Schallquelle vor oder hinter der von dem ersten und dem zweiten Mikrofon 114, 116 belegten Linie befindet (z. B. wie in 2 in Bezug auf das erste und das zweite Mikrofon 114, 116 und die Schallquellen 110 und 208 gezeigt). Eine seitliche (z. B. links-rechts) Unbestimmtheit kann auftreten, wenn das erste und das zweite Mikrofon 114, 116 in einer Linie von vorne nach hinten zueinander ausgerichtet sind und das Beispielmessgerät 112 nicht in der Lage ist zu bestimmen, ob sich eine Schallquelle links oder rechts von der von dem ersten und dem zweiten Mikrofon 114, 116 belegten Linie befindet. Wenn das erste und das zweite Mikrofon 114, 116 in regelmäßigen, geplanten, aperiodischen und/oder manuellen Abständen um z. B. 90 Grad gedreht werden, können ein oder mehrere Probleme der Unbestimmtheit überwunden werden.
-
Wenn das Messgerät 112 beispielsweise wie in 2 dargestellt ausgerichtet ist, führt dies zu einer Vorder-Rückseiten-Unbestimmtheit, wie im Zusammenhang mit 2 erläutert. Wenn jedoch das erste und das zweite Mikrofon 114, 116 oder das Messgerät 112 um 90 Grad gedreht werden, führt die Änderung der Ausrichtung des ersten und des zweiten Mikrofons 114, 116 zu einer Links-Rechts-Unbestimmtheit. Die Messung der Tonrichtung mit zwei verschiedenen Ausrichtungen beseitigt jegliche Unbestimmtheit.
-
Der Richtungsdetektor 300 des in 3 dargestellten Beispiels erkennt die Ursprungsrichtung eines vom Messgerät 112 empfangenen Audiosignals. Eine Beispielimplementierung des Richtungsdetektors 300 wird in Verbindung mit 5 weiter erörtert. Der Beispielfilter 302 von 3 filtert Audiosignale heraus, die aus einer oder mehreren Ursprungsrichtungen empfangen werden (z. B. akzeptiert der Filter 302 Audiosignale, die innerhalb des Winkels (A) 202 empfangen werden, und ignoriert Audiosignale, die außerhalb des Winkels (A) 202 empfangen werden, wie in 2 gezeigt). Der Beispielfilter 302 von 3 bestimmt, welche Audiosignal-Ursprungsrichtungen zu filtern sind, indem er auf die Beispiel-Mediengerätedatenbank 304 zugreift, in der Informationen über den Standort des Messgeräts 112 im Haushalt 102, die Ausrichtung des Messgeräts 112 und den Standort des Mediengeräts 108 im Haushalt 102 gespeichert sind. Der Beispielfilter 302 verwendet die in der Mediengerätedatenbank 304 gespeicherten Informationen, um die Richtung zu bestimmen, in der sich das Mediengerät 108 vom Messgerät 112 aus gesehen befindet, und um zu ermitteln, welche Winkel der Tonursprungsrichtung herausgefiltert werden sollten.
-
Der Beispiel-Codeleser 306 von 3 erkennt Audiocodes, die in empfangenen Audiosignalen eingebettet sind, die nicht durch den Filter 302 herausgefiltert werden. Ein oder mehrere erkannte Audiocodes können im Beispielspeicher 308 gespeichert werden, um eine periodische, geplante, aperiodische und/oder manuelle Übertragung an die Beispiel-Datensammelstelle 130 über den Beispiel-Datensender 310 zu ermöglichen. Die eingebetteten Audiocodes können ein Fernsehprogramm oder einen Fernsehsender identifizieren, das/der von dem Beispiel-Mediengerät 108 präsentiert wird.
-
In einigen Beispielen wird anstelle des Codelesers 306 oder zusätzlich zu diesem ein Signaturgenerator verwendet, um Mediensignaturen zu erzeugen. Mediensignaturen sind eine Darstellung einer Eigenschaft des Mediensignals (z. B. eine Eigenschaft des Frequenzspektrums des Signals). Signaturen kann man sich wie Fingerabdrücke vorstellen. Sie sind in der Regel nicht von der Einfügung von Identifikationscodes in die Medien abhängig, sondern spiegeln vorzugsweise eine inhärente Eigenschaft der Medien und/oder des Mediensignals wider. Systeme zur Verwendung von Codes und/oder Signaturen für die Publikumsmessung sind seit langem bekannt. Siehe z.B. Thomas,
U.S. Patent No. 5,481,294 , das hiermit in vollem Umfang in den Text aufgenommen wird.
-
5 ist ein Blockdiagramm einer Implementierung des Beispiel-Richtungsdetektors 300 aus 3. Der beispielhafte Richtungsdetektor 300 umfasst einen ersten Mikrofonempfänger 500, einen zweiten Mikrofonempfänger 502, einen Audio-Sampler 504, einen Absolutwertrechner 506, einen Schwellenwertprozessor 508, einen Rechner für den gleitenden Mittelwert 510, einen Audio-Sample-Selektor 512, einen Audiosignal-Delayer 514, eine Korrelationsmaschine 516, einen Offset-Selektor 518 und einen Postprozessor 520.
-
Im Betrieb bestimmt der Beispiel-Richtungsdetektor 300 die Ursprungsrichtung einer Audioquelle in Bezug auf das Beispiel-Messgerät 112 für ein Audiosignal, das von dem Messgerät 112 von der Audioquelle empfangen wird. Der beispielhafte Richtungsdetektor 300 der 3 und 4 bestimmt eine Audiosignal-Ursprungsrichtung, indem er die Zeitdifferenz zwischen dem Empfang des Audiosignals durch das beispielhafte erste Mikrofon 114 und dem Empfang desselben Audiosignals durch das beispielhafte zweite Mikrofon 116 bestimmt.
-
7 veranschaulicht zum Beispiel die Ausbreitung von Geräuschen von einer ersten Quelle 700, einer zweiten Quelle 702 und einer dritten Quelle 704 zum Beispielmessgerät 112. In dem in 7 dargestellten Beispiel ist die erste Quelle 700 gleich weit von dem ersten Mikrofon 114 und dem zweiten Mikrofon 116 entfernt. Daher erreicht der von der ersten Quelle 700 ausgehende Schall das erste Mikrofon 114 und das zweite Mikrofon 116 zur gleichen Zeit. Andererseits ist die zweite Quelle 702 weiter von dem ersten Mikrofon 114 entfernt als von dem zweiten Mikrofon 116. Daher erreicht der von der zweiten Quelle 702 ausgehende Schall das zweite Beispielmikrofon 116, bevor er das erste Beispielmikrofon 114 erreicht. Im Beispiel von 7 ist die dritte Quelle 704 ebenfalls weiter vom ersten Mikrofon 114 entfernt als das zweite Mikrofon 116, aber der Abstandsunterschied ist nicht so groß wie bei der zweiten Quelle 702. Daher erreicht der von der dritten Quelle 704 ausgehende Schall das zweite Mikrofon 116, bevor er das erste Mikrofon 114 erreicht, aber dieser Zeitunterschied ist nicht so groß wie der Schall von der zweiten Quelle 702.
-
In dem in 7 dargestellten Beispiel wird angenommen, dass die Schallgeschwindigkeit 13.041,6 Zoll/Sekunde beträgt, dass das erste Mikrofon 114 und das zweite Mikrofon 116 drei Zoll voneinander entfernt sind und dass der vom Messgerät 112 empfangene Ton mit 48.000 Hertz (d. h. 48.000 Samples pro Sekunde) abgetastet wird. Daher muss der von der zweiten Schallquelle 702 ausgehende Schall in dem in 7 dargestellten Beispiel drei Zoll weiter reisen, um das erste Mikrofon 114 zu erreichen, als um das zweite Mikrofon 116 zu erreichen. Die Zeit, die der Schall benötigt, um drei Zoll zurückzulegen, kann berechnet werden, indem man drei Zoll durch 13.041,6 Zoll/Sekunde dividiert, was ungefähr 0,00023 Sekunden entspricht. Da das Beispielmessgerät 112 empfangene Audiosignale mit 48.000 pro Sekunde abtastet, ergibt die Multiplikation von 0,00023 Sekunden mit 48.000 Abtastungen pro Sekunde ungefähr 11 Abtastungen, die vom zweiten Mikrofon 116 von der zweiten Quelle 702 empfangen werden, bevor die erste Abtastung von der zweiten Quelle 702 vom ersten Mikrofon 114 empfangen wird. Daher sollte das Audiosignal, das das zweite Mikrofon 116 von der zweiten Quelle 702 mit einer Verzögerung von elf Samples empfängt, mit dem Audiosignal übereinstimmen, das das erste Mikrofon 114 von der zweiten Quelle 702 empfängt.
-
Eine ähnliche Verzögerung in Audio-Samples zwischen einem Audiosignal, das von dem ersten Mikrofon 114 und dem zweiten Mikrofon 116 empfangen wird, kann für jeden anderen Quellenstandort bestimmt werden, indem der Abstand zwischen der/den jeweiligen Quelle(n) und dem ersten und zweiten Mikrofon 114, 116 ermittelt und ähnliche Berechnungen wie oben beschrieben durchgeführt werden.
-
8A ist ein Diagramm 800, das Beispielverzögerungen in Anzahl der Abtastungen zwischen dem Empfang eines Audiosignals durch das erste Mikrofon 114 und dem Empfang des Audiosignals durch das zweite Mikrofon 116 für eine oder mehrere Platzierungen der Audioquelle in einem Raum zeigt. In der Beispieltabelle 800 von 8A ist der Raum 12 Fuß lang und 24 Fuß breit, und das Beispielmessgerät 112 ist in der Mitte des Raums platziert. In Zeile 802 des Beispieldiagramms 800 ist aufgeführt, wie weit eine Audioquelle von der linken Seite des Raums entfernt ist, und das Beispielmessgerät 112 ist zwischen 5,2 und 5,7 Fuß von der linken Seite des Raums entfernt. Spalte 804 der Beispieltabelle 800 listet auf, wie weit eine Audioquelle vor oder hinter der Raummitte liegt, wobei positive Zahlen Audioquellen vor der Raummitte und negative Zahlen Audioquellen hinter der Raummitte darstellen.
-
Die Werte des Beispieldiagramms 800 von 8A geben die Anzahl der Abtastwerte eines Audiosignals von einer Audioquelle an, die das erste Mikrofon 114 erreichen würden, bevor das Audiosignal das zweite Mikrofon 116 erreicht. Positive Zahlen bedeuten, dass das Audiosignal das erste Mikrofon 114 erreicht, bevor es das zweite Mikrofon 116 erreicht. Negative Zahlen zeigen an, dass das Audiosignal das zweite Mikrofon 116 vor dem ersten Mikrofon 114 erreichen würde. Zum Beispiel würde eine Audioquelle, die 1,6 Fuß von der linken Seite des Raumes und 4,8 Fuß vor oder hinter der Mitte des Raumes liegt, sieben Abtastwerte an das erste Mikrofon 114 senden, bevor der erste Abtastwert des Audiosignals das zweite Mikrofon 116 erreicht (wie durch die Punkte 806 und 808 in dargestellt). Da das erste Mikrofon 114 und das zweite Mikrofon 116 im Beispiel von von links nach rechts ausgerichtet sind, wird das gleiche Ergebnis von 7 Abtastungen erzielt, unabhängig davon, ob sich die Tonquelle 4,8 Fuß vor oder 4,8 Fuß hinter dem Beispielmessgerät 112 befindet. Dies veranschaulicht ein Beispiel für die Unbestimmtheit der Vorderseite und der Rückseite.
-
Der Richtungsdetektor 300 kann ein Diagramm wie das Diagramm 800 erstellen, um den Winkel einer Schallquelle zu bestimmen, wie in 8B gezeigt. Wenn der Richtungsdetektor 300 in dem in 8B gezeigten Beispiel feststellt, dass ein vom zweiten Mikrofon 116 empfangenes Audiosignal um sieben Abtastwerte gegenüber dem vom ersten Mikrofon 114 empfangenen Audiosignal verzögert war, dann bestimmt der Richtungsdetektor 300, dass das Audiosignal entweder aus einem Winkel (A) oder einem Winkel (-A) empfangen wurde, weil ein aus einem anderen Winkel empfangenes Audiosignal zu einer anderen Abtastwertverzögerung zwischen dem vom ersten und zweiten Mikrofon 114, 116 empfangenen Audiosignal geführt hätte. Wenn der Richtungsdetektor 300 feststellt, dass ein vom zweiten Mikrofon 116 empfangenes Audiosignal um sieben oder mehr Abtastwerte gegenüber dem vom ersten Mikrofon 114 empfangenen Audiosignal verzögert war, bestimmt der Richtungsdetektor 300, dass das Audiosignal innerhalb eines Winkels (B) empfangen wurde, da eine von außerhalb des Winkels (B) empfangene Audioquelle eine Abtastverzögerung von weniger als sieben zwischen dem vom ersten und zweiten Mikrofon 114, 116 empfangenen Audiosignal aufweisen würde. Der Beispielfilter 302 kann Audiosignale herausfiltern, die von einem Winkel außerhalb des Winkels (B) empfangen wurden, wenn sich beispielsweise das Beispielmediengerät 108 innerhalb des Winkels (B) befindet.
-
Zurück zu 5: Der erste Mikrofonempfänger 500 des dargestellten Beispiels empfängt die vom ersten Mikrofon 114 erfassten Audiosignale. Der zweite Mikrofonempfänger 502 von 5 empfängt die vom zweiten Mikrofon 116 erfassten Audiosignale. Bei den vom ersten Mikrofonempfänger 500 und vom zweiten Mikrofonempfänger 502 empfangenen Audiosignalen handelt es sich um analoge Audiosignale, die von den Lautsprechern des Mediengeräts 110, den Spillover-Lautsprechern des Mediengeräts 124, den Zuschauern 118, 120, 126 oder anderen Audioquellen im Haushalt 102 abgegeben werden.
-
Der Audio-Sampler 504 des gezeigten Beispiels wandelt die von dem ersten Mikrofonempfänger 500 und dem zweiten Mikrofonempfänger 502 empfangenen analogen Audiosignale in digitale Audiosignale um, indem er die empfangenen analogen Audiosignale abtastet. Im gezeigten Beispiel beträgt die Abtastrate 48.000 Hertz (d. h. die analogen Audiosignale werden 48.000 Mal pro Sekunde abgetastet). In anderen Beispielen können auch andere Abtastraten verwendet werden. Der Absolutwert-Rechner 506 des gezeigten Beispiels berechnet den Absolutwert eines Audiosignals.
-
Der Schwellenwertprozessor 508 des gezeigten Beispiels bestimmt einen Dezimierungsschwellenwert für ein Audiosignal und eliminiert Audioabtastwerte mit einem Audiointensitätswert unterhalb des bestimmten Dezimierungsschwellenwerts. Im gezeigten Beispiel von 5 bestimmt der Schwellenwertprozessor 508 einen Dezimierungsschwellenwert für die vom ersten Mikrofonempfänger 500 empfangenen Audiosignale und einen anderen Dezimierungsschwellenwert für die vom zweiten Mikrofonempfänger 502 empfangenen Audiosignale. Alternativ kann der Schwellenwertprozessor 508 auch denselben Dezimierungsschwellenwert für die vom ersten Mikrofonempfänger 500 und vom zweiten Mikrofonempfänger 502 empfangenen Audiosignale bestimmen. Im gezeigten Beispiel bestimmt der Schwellenwertprozessor 508 einen Dezimierungsschwellenwert für ein Audiosignal, so dass 98,5 % der Abtastwerte des Audiosignals unter dem Dezimierungsschwellenwert liegen und 1,5 % der Abtastwerte des Audiosignals über dem Dezimierungsschwellenwert liegen. In anderen Beispielen können auch andere Schwellenwerte bestimmt werden.
-
Der Rechner für den gleitenden Mittelwert 510 des dargestellten Beispiels berechnet einen gleitenden Mittelwert eines Audiosignals. Ein gleitender Mittelwert kann von dem Beispielrechner 510 für den gleitenden Mittelwert als Tiefpassfilter implementiert werden, indem der Mittelwert eines Audioabtastwerts und eines oder mehrerer benachbarter Audioabtastwerte für jeden Abtastwert in einem Audiosignal ermittelt wird. In dem in 5 dargestellten Beispiel nimmt der Rechner 510 für den gleitenden Mittelwert einen gleitenden Mittelwert aus zwei Abtastwerten. In anderen Beispielen kann der Rechner für den gleitenden Mittelwert 510 einen gleitenden Mittelwert aus einer anderen Anzahl von Abtastwerten bilden.
-
Der Audio-Sample-Selektor 512 des gezeigten Beispiels wählt eine Anzahl von Samples (z. B. 1.000 Samples) aus, die gleichmäßig über ein Audiosignal verteilt sind (z. B. ein 36 Sekunden langes Audiosegment, das vom ersten Mikrofonempfänger 500 empfangen wird). In einigen Beispielen wählt der Audio-Sample-Selektor 512 eine Anzahl von Samples aus, die nicht gleichmäßig über ein Audiosignal verteilt sind (z. B. können mehr Samples aus bestimmten Teilen des Audiosignals und weniger Samples aus anderen Teilen des Audiosignals ausgewählt werden). Im gezeigten Beispiel von 5 wählt der Audio-Sample-Selektor 512 1.000 Samples aus. In anderen Beispielen kann eine andere Anzahl von Samples ausgewählt werden. Der Beispiel-Audio-Sample-Selektor 512 wählt zwei oder mehr Sätze von 1.000 Samples aus, wobei jeder Satz von Samples um eine unterschiedliche Zeitdauer versetzt ist. Beispielsweise wählt der Audio-Sample-Selektor 512 zunächst 1.000 Samples aus einem Audiosignal aus, wobei die ausgewählten Audio-Samples gleichmäßig zwischen dem ersten Sample des Audiosignals und einem anderen späteren Sample im Audiosignal (z. B. 36 Sekunden im Audiosignal) angeordnet sind. Der Beispiel-Audioabtastwert-Selektor 512 kann später 1.000 Abtastwerte aus dem Audiosignal auswählen, wobei die ausgewählten Audioabtastwerte gleichmäßig zwischen einem Abtastwert nach dem ersten Abtastwert des Audiosignals (z. B. einem Abtastwert nach 0,5001 Sekunden im Audiosignal) und einem anderen späteren Abtastwert (z. B. einem Abtastwert nach 36,5 Sekunden im Audiosignal) beabstandet sind. Die Beispiel-Audio-Sample-Auswahlvorrichtung 512 kann zusätzliche Auswahlen von 1.000 Samples vornehmen, wobei jede nachfolgende Auswahl von 1.000 Samples um eine zusätzliche Zeit (z. B. 0,5001 Sekunden) von den zuvor ausgewählten 1.000 Samples versetzt ist.
-
Der Audiosignalverzögerer 514 des gezeigten Beispiels wählt Audiosamples aus einem Audiosignal aus, das um eine Anzahl von Samples eines anderen Audiosignals verzögert ist. Wenn der Beispiel-Audio-Sample-Selektor 512 beispielsweise 1.000 Samples aus dem vom ersten Mikrofonempfänger 500 empfangenen Audiosignal auswählt, wobei die 1.000 Samples zu 1.000 verschiedenen Zeitpunkten empfangen werden, kann die Beispiel-Audiosignal-Verzögerungseinheit 514 1.000 Samples aus dem vom zweiten Mikrofon 502 zu denselben 1.000 Zeitpunkten empfangenen Audiosignal auswählen. Die Beispiel-Audiosignalverzögerungseinheit 514 kann später 1.000 Samples aus dem vom zweiten Mikrofon 502 empfangenen Audiosignal auswählen, und zwar jeweils ein Sample nach den 1.000 Samples, die zuvor von der Audiosignalverzögerungseinheit 514 ausgewählt wurden (d. h. das Audiosignal ist um 1 Sample verzögert). Die Beispiel-Audiosignalverzögerung 514 kann später 1.000 Samples aus dem vom zweiten Mikrofon 502 empfangenen Audiosignal auswählen, und zwar ein Sample vor jedem der 1.000 Samples, die ursprünglich von der Audiosignalverzögerung 514 ausgewählt wurden (d. h. das Audiosignal ist um -1 Sample verzögert).
-
Die Korrelationsmaschine 516 des gezeigten Beispiels ermittelt eine Korrelation zwischen zwei Audiosignalen. Im gezeigten Beispiel bestimmt die Korrelationsmaschine 516 eine Korrelation zwischen 1.000 Samples des vom ersten Mikrofonempfänger 500 empfangenen Audiosignals und 1.000 Samples des vom zweiten Mikrofonempfänger 502 empfangenen Audiosignals, versetzt um eine bestimmte Anzahl von Samples. Im gezeigten Beispiel bestimmt die Korrelationsmaschine 516 mehrere Korrelationen zwischen den vom Audio-Sample-Selektor 512 des ersten Mikrofonempfängers 500 ausgewählten Samples und den vom Audiosignalverzögerer 514 des zweiten Mikrofonempfängers 502 ausgewählten Samples, wobei der Audiosignalverzögerer 514 das vom zweiten Mikrofonempfänger 502 empfangene Audiosignal verzögert, bevor jede Korrelation berechnet wird. Die Beispielkorrelationsmaschine 516 kann jede Art von statistischem und/oder Korrelationsalgorithmus auf empfangene Audiosignale anwenden, wie z. B. eine normalisierte Korrelation, Pearson-Korrelationskoeffizienten und/oder Rangkorrelationskoeffizienten, aber nicht darauf beschränkt.
-
Der Offset-Selektor 518 des gezeigten Beispiels bestimmt, welche der von der Korrelations-Engine 516 ermittelten Korrelationen zwischen einem Satz von Abtastwerten, die vom Audio-Sample-Selektor 512 ausgewählt wurden, und den Sätzen von Abtastwerten, die von der Audiosignal-Verzögerungseinheit 514 ausgewählt wurden, den höchsten Korrelationswert aufweist. Das heißt, der Offset-Selektor 518 des gezeigten Beispiels bestimmt den Sample-Offset des vom zweiten Mikrofonempfänger 502 empfangenen Audiosignals, der am stärksten mit dem vom ersten Mikrofonempfänger 500 empfangenen Audiosignal korreliert.
-
Der Postprozessor 520 des dargestellten Beispiels verarbeitet die Ausgaben des Offset-Selektors 518. Eine Beispielimplementierung des Postprozessors 520 wird im Zusammenhang mit 6 näher erläutert.
-
6 ist ein Blockdiagramm einer Implementierung des Beispiel-Postprozessors 520 aus 5. Der Beispiel-Postprozessor 520 umfasst einen Offset-Analysierer 600, einen Cluster-Analysierer 602 und einen gewichteten Mittelwert 604.
-
Der Beispiel-Offset-Analysierer 600 des gezeigten Beispiels zählt, wie oft jeder Offset in Stichproben vom Offset-Selektor 518 bestimmt wurde, um einen Offset-Zähler für jeden bestimmten Offset zu ermitteln (z. B. wurde ein Offset von 7 Stichproben dreimal bestimmt, ein Offset von 3 Stichproben wurde zweimal bestimmt, ein Offset von -4 Stichproben wurde einmal bestimmt usw.). Eine oder mehrere dieser Offset-Zählungen werden dann an den Beispiel-Cluster-Analysierer 602 gesendet. Im gezeigten Beispiel werden die Zählungen der drei häufigsten Offsets (d. h. die drei Offsets, die am häufigsten vom Beispiel-Offset-Selektor 518 ermittelt wurden) an den Cluster-Analysierer 602 gesendet. In anderen Beispielen kann eine andere Anzahl von Zählungen an den Cluster-Analysierer 602 gesendet werden.
-
Der Cluster-Analysierer 602 des gezeigten Beispiels bestimmt, ob jede der vom Offset-Analysierer 600 empfangenen Offset-Zählungen in einen Cluster aufgenommen werden soll. Die vom Beispiel-Offset-Analysierer 600 gesendeten Offset-Zählungen werden vom Beispiel-Cluster-Analysierer 602 einzeln empfangen. Wenn der erste Offset-Zählwert von dem Beispiel-Cluster-Analysierer 602 empfangen wird, wird der Offset-Zählwert in den Cluster aufgenommen. Wenn der Beispiel-Cluster-Analysierer 602 nachfolgende Offset-Zählungen empfängt, wird eine empfangene Offset-Zählung nur dann in den Cluster aufgenommen, wenn die Differenz zwischen dem Offset, der der Offset-Zählung entspricht, und dem Offset, der mindestens einer der anderen Offset-Zählungen entspricht, die sich bereits im Cluster befinden, kleiner als oder gleich zwei ist. Nachdem der Beispiel-Cluster-Analysierer 602 jede der vom Beispiel-Offset-Analysierer 600 gesendeten Offset-Zählungen analysiert hat, werden die in den Cluster aufgenommenen Offset-Zählungen und die entsprechenden Offsets an den Beispiel-gewichteten Durchschnittswertgeber 604 gesendet.
-
Der gewichtete Mittelwertbildner 604 des gezeigten Beispiels berechnet einen gewichteten Durchschnitt der vom Cluster-Analysierer 602 in den Cluster aufgenommenen Offsets, wobei jeder Offset mit der entsprechenden Offsetanzahl gewichtet wird. Der gewichtete Mittelwert, der von der beispielhaften gewichteten Mittelwertbildung 604 ausgegeben wird, kann verwendet werden, um einen Winkel einer Audioquelle zu bestimmen, indem beispielsweise die Beispieltabelle 800 verwendet wird, die in Verbindung mit 8A offengelegt wurde.
-
Während eine beispielhafte Art und Weise der Implementierung des Publikumsmesssystems von 1 in den 1-7 dargestellt ist, können ein oder mehrere der in den 1-7 dargestellten Elemente, Prozesse und/oder Geräte kombiniert, geteilt, neu angeordnet, weggelassen, eliminiert und/oder auf jede andere Weise implementiert werden. Ferner können das Beispiel-Messgerät 112, das Beispiel-Erstmikrofon 114, das Beispiel-Zweitmikrofon 116, die Beispiel-Datenerfassungseinrichtung 130, der Beispiel-Server 132, die Beispiel-Datenbank 134, der Beispiel-Richtungsdetektor 300, das Beispiel-Filter 302, die Beispiel-Mediengerätedatenbank 304, der Beispiel-Code-Leser 306, der Beispiel-Speicher 308, der Beispiel-Datensender 310, der Beispiel-Erstmikrofonempfänger 500, der Beispiel-Zweitmikrofonempfänger 502, der Beispiel-Audio-Sampler 504, der Beispiel-Absolutwert-Rechner 506, der Beispiel-Schwellenwert-Prozessor 508, der Beispiel-Rechner für den gleitenden Mittelwert 510, der Beispiel-Audio-Sample-Selektor 512, die Beispiel-Audio-Signalverzögerung 514, die Beispiel-Korrelations-Engine 516, der Beispiel-Offset-Selektor 518, der Beispiel-Post-Prozessor 520, der Beispiel-Offset-Analysierer 600, der Beispiel-Cluster-Analysierer 602 und/oder der Beispiel-Gewichteter-Mittelwert-Rechner 604 können durch Hardware, Software, Firmware und/oder eine beliebige Kombination von Hardware, Software und/oder Firmware implementiert werden. So kann z. B. jede der folgenden Komponenten eingesetzt werden: das Beispiel-Messgerät 112, das Beispiel-Erstmikrofon 114, das Beispiel-Zweitmikrofon 116, die Beispiel-Datenerfassungseinrichtung 130, der Beispiel-Server 132, die Beispiel-Datenbank 134, der Beispiel-Richtungsdetektor 300, das Beispiel-Filter 302, die Beispiel-Mediengerätedatenbank 304, der Beispiel-Codeleser 306, der Beispiel-Speicher 308, der Beispiel-Datensender 310, der Beispiel-Erstmikrofon-Empfänger 500, der Beispiel-Zweitmikrofon-Empfänger 502, der Beispiel-Audio-Sampler 504, der Beispiel-Absolutwert-Rechner 506, der Beispiel-Schwellenwert-Prozessor 508, der Beispiel-Rechner für den gleitenden Mittelwert 510, den Beispiel-Audio-Sample-Selektor 512, den Beispiel-Audiosignal-Delayer 514, die Beispiel-Korrelations-Engine 516, den Beispiel-Offset-Selektor 518, den Beispiel-Post-Prozessor 520, den Beispiel-Offset-Analysierer 600, den Beispiel-Cluster-Analysierer 602 und/oder den Beispiel-gewichteten Averager 604, und/oder allgemeiner kann das Beispiel-Publikumsmesssystem durch eine oder mehrere analoge oder digitale Schaltungen, Logikschaltungen, programmierbare Prozessoren, anwendungsspezifische integrierte Schaltungen (ASICs), programmierbare Logikbausteine (PLDs) und/oder feldprogrammierbare Logikbausteine (FPLDs) implementiert werden. Wenn man einen der Geräte- oder Systemansprüche dieses Patents so liest, dass er eine reine Software- und/oder Firmware-Implementierung abdeckt, muss mindestens eines der folgenden Elemente vorhanden sein: das Beispiel-Messgerät 112, das Beispiel-Erstmikrofon 114, das Beispiel-Zweitmikrofon 116, die Beispiel-Datenerfassungseinrichtung 130, der Beispiel-Server 132, die Beispiel-Datenbank 134, der Beispiel-Richtungsdetektor 300, das Beispiel-Filter 302, die Beispiel-Mediengerätedatenbank 304, der Beispiel-Code-Leser 306, der Beispiel-Speicher 308, der Beispiel-Datensender 310, der Beispiel-Erstmikrofonempfänger 500, der Beispiel-Zweitmikrofonempfänger 502, der Beispiel-Audio-Sampler 504, den Beispiel-Absolutwert-Rechner 506, den Beispiel-Schwellenwert-Prozessor 508, den Beispiel-Rechner für den gleitenden Mittelwert 510, den Beispiel-Audio-Sample-Selektor 512, den Beispiel-Audio-Signal-Delayer 514, die Beispiel-Korrelations-Engine 516, den Beispiel-Offset-Selektor 518, den Beispiel-Post-Prozessor 520, den Beispiel-Offset-Analysierer 600, der Beispiel-Cluster-Analysierer 602 und/oder der Beispiel-gewichtete Mittelwertbildner 604 und/oder allgemeiner das Beispiel-Zuhörermesssystem ist/sind hiermit ausdrücklich so definiert, dass es/sie ein greifbares, computerlesbares Speichergerät oder eine Speicherplatte wie einen Speicher, eine Digital Versatile Disk (DVD), eine Compact Disk (CD), eine Blu-ray-Disk usw. auf dem die Software und/oder Firmware gespeichert ist. Darüber hinaus kann das Beispiel-Zuschauermesssystem von 1 ein oder mehrere Elemente, Prozesse und/oder Vorrichtungen zusätzlich zu den in 1-7 dargestellten oder anstelle von diesen enthalten und/oder kann mehr als eines oder alle der dargestellten Elemente, Prozesse und Vorrichtungen enthalten.
-
Flussdiagramme, die beispielhafte maschinenlesbare Anweisungen für die Implementierung des Beispielmessgeräts 112 der 1-3, des Beispiel-Richtungsdetektors 300 der 3 und 5 und des Beispiel-Postprozessors 520 der 5 und 6 darstellen, sind in den 9-12 gezeigt. In diesen Beispielen umfassen die maschinenlesbaren Anweisungen ein Programm zur Ausführung durch einen Prozessor wie den Prozessor 1412, der in der Beispielprozessorplattform 1400 gezeigt wird, die unten in Verbindung mit 14 besprochen wird. Das Programm kann in Software verkörpert sein, die auf einem greifbaren, computerlesbaren Speichermedium wie einer CD-ROM, einer Diskette, einer Festplatte, einer Digital Versatile Disk (DVD), einer Blu-ray-Disk oder einem dem Prozessor 1412 zugeordneten Speicher gespeichert ist, aber das gesamte Programm und/oder Teile davon könnten alternativ auch von einem anderen Gerät als dem Prozessor 1412 ausgeführt werden und/oder in Firmware oder spezieller Hardware verkörpert sein. Obwohl das Beispielprogramm unter Bezugnahme auf die in den 9-12 dargestellten Flussdiagramme beschrieben wird, können auch viele andere Methoden zur Implementierung des Beispielzählers 112 der 1-3, des Beispiel-Richtungsdetektors 300 der 3 und 5 und des Beispiel-Postprozessors 520 der 5 und 6 verwendet werden. Zum Beispiel kann die Reihenfolge der Ausführung der Blöcke geändert werden und/oder einige der beschriebenen Blöcke können geändert, eliminiert oder kombiniert werden.
-
Wie oben erwähnt, können die Beispielprozesse der 9-12 unter Verwendung kodierter Anweisungen (z. B. computer- und/oder maschinenlesbarer Anweisungen) implementiert werden, die auf einem greifbaren, computerlesbaren Speichermedium gespeichert sind, wie z. B. einem Festplattenlaufwerk, einem Flash-Speicher, einem Nur-Lese-Speicher (ROM), einer Compact Disk (CD), einer Digital Versatile Disk (DVD), einem Cache, einem Direktzugriffsspeicher (RAM) und/oder einem beliebigen anderen Speichergerät oder einer Speicherplatte, in dem/der Informationen für eine beliebige Dauer gespeichert werden (z. B., für längere Zeiträume, dauerhaft, für kurze Zeiträume, zur vorübergehenden Zwischenspeicherung und/oder zum Zwischenspeichern von Informationen). Der Begriff „greifbares computerlesbares Speichermedium“ wird hier ausdrücklich so definiert, dass er jede Art von computerlesbarem Speichergerät und/oder Speicherplatte einschließt und die Übertragung von Signalen ausschließt. Die Begriffe „greifbares computerlesbares Speichermedium“ und „greifbares maschinenlesbares Speichermedium“ werden hier synonym verwendet. Zusätzlich oder alternativ können die Beispielprozesse der 9-12 unter Verwendung kodierter Anweisungen (z.B. computer- und/oder maschinenlesbarer Anweisungen) implementiert werden, die auf einem nichttransitorischen computer- und/oder maschinenlesbaren Medium gespeichert sind, wie z.B. einem Festplattenlaufwerk, einem Flash-Speicher, einem Nur-Lese-Speicher, einer Compact Disk, einer Digital Versatile Disk, einem Cache, einem Direktzugriffsspeicher und/oder einem anderen Speichergerät oder einer Speicherplatte, in dem/der Informationen für eine beliebige Dauer gespeichert werden (z.B, für längere Zeiträume, dauerhaft, für kurze Zeiträume, zur vorübergehenden Zwischenspeicherung und/oder zum Zwischenspeichern von Informationen). Der hier verwendete Begriff „nicht transitorisches computerlesbares Medium“ ist ausdrücklich so definiert, dass er jede Art von computerlesbarem Gerät oder Datenträger einschließt und sich ausbreitende Signale ausschließt. Wenn die Formulierung „mindestens“ als Übergangsbegriff in einer Präambel eines Anspruchs verwendet wird, ist sie ebenso wie der Begriff „umfassend“ offen definiert.
-
9 ist ein Flussdiagramm, das ein Beispiel für maschinenlesbare Anweisungen zur Implementierung des Beispielmessgeräts 112 der 1-3 darstellt. 9 beginnt damit, dass das Beispielmessgerät 112 feststellt, ob ein Audiosignal von dem ersten Mikrofon 114 und dem zweiten Mikrofon 116 empfangen wurde (Block 900). Wenn das Beispielmessgerät 112 feststellt, dass kein Audiosignal empfangen wurde (Block 900), dann wartet das Beispielmessgerät 112, bis ein Audiosignal empfangen wurde. Wenn das Beispielmessgerät 112 feststellt, dass Audio empfangen wurde (Block 900), dann bestimmt der Beispiel-Richtungsdetektor 300 die Ursprungsrichtung (z. B. den Winkel), aus der das Audiosignal empfangen wurde (Block 902). Ein Beispielverfahren zur Implementierung von Block 902 von 9 wird in Verbindung mit 11 weiter erörtert.
-
Nachdem der Beispiel-Richtungsdetektor 300 die Ursprungsrichtung bestimmt hat, aus der das Audiosignal empfangen wurde (Block 902), bestimmt der Beispiel-Filter 302 einen Schwellenwinkel (z. B. einen Winkel in Bezug auf das Beispiel-Messgerät 112, in dem sich das Beispiel-Mediengerät 108 befindet), indem er auf die Datenbank des Beispiel-Mediengeräts zugreift (Block 904). Der Beispielfilter 302 bestimmt dann, ob die vom Beispielrichtungsdetektor 300 ermittelte Ursprungsrichtung innerhalb des Schwellenwinkels liegt (Block 906).
-
Wenn der Beispiel-Richtungsdetektor 300 feststellt, dass die vom Beispiel-Richtungsdetektor 300 ermittelte Ursprungsrichtung nicht innerhalb des Schwellenwinkels liegt (Block 906), geht die Steuerung zu Block 916 über. Wenn der Beispiel-Richtungsdetektor 300 feststellt, dass die vom Beispiel-Richtungsdetektor 300 ermittelte Ursprungsrichtung innerhalb des Schwellenwinkels liegt (Block 906), dann erkennt der Beispiel-Codeleser 306 Audiocodes, die in das von dem ersten Beispiel-Mikrofon 114 und dem zweiten Beispiel-Mikrofon 116 empfangene Audiosignal eingebettet sind, unter Verwendung bekannter Techniken (Block 908). Das Beispiel-Codelesegerät 306 speichert dann die erkannten Audiocodes in dem Beispielspeicher 308 (Block 910).
-
Das Beispiel-Messgerät 112 bestimmt dann, ob Daten an die Beispiel-Datenerfassungseinrichtung 130 übertragen werden sollen (Block 912). Diese Entscheidung kann auf der Tageszeit (z. B. werden Daten jeden Tag um 12:00 Uhr übertragen), der Zeit seit der letzten Datenübertragung (z. B. werden Daten jede Stunde übertragen), der Datenmenge im Beispielspeicher 308 (z. B. werden Daten übertragen, wenn der Beispielspeicher 308 voll ist) oder anderen Faktoren basieren. Wenn der Beispielzähler 112 feststellt, dass Daten übertragen werden sollen (Block 912), dann überträgt der Beispiel-Datensender 310 die Daten im Beispielspeicher 308 an die Beispiel-Datenerfassungseinrichtung 130 (Block 914). Wenn der Beispielzähler 112 feststellt, dass keine Daten übertragen werden sollen (Block 912), geht die Steuerung zu Block 916 über.
-
Nachdem der Beispiel-Datensender 310 die Daten im Beispielspeicher 308 an die Beispiel-Datenerfassungseinrichtung 130 übertragen hat (Block 914) oder nachdem das Beispiel-Messgerät 112 festgestellt hat, dass keine Daten übertragen werden sollen (Block 912), oder nachdem der Beispiel-Filter 302 festgestellt hat, dass die vom Beispiel-Richtungsdetektor 300 erfasste Ursprungsrichtung nicht innerhalb des Schwellenwinkels liegt (Block 906), bestimmt das Beispiel-Messgerät 112, ob der Betrieb fortgesetzt werden soll (Block 916). Diese Entscheidung kann davon abhängig gemacht werden, ob das Beispiel-Mediengerät 108 ausgeschaltet ist oder von anderen Faktoren. Wenn das Beispielmessgerät 112 feststellt, dass der Betrieb fortgesetzt werden soll (Block 916), kehrt die Steuerung zu Block 900 zurück. Wenn das Beispielmessgerät 112 entscheidet, den Betrieb nicht fortzusetzen (Block 916), endet das Beispiel von 9.
-
10 ist ein Flussdiagramm, das beispielhafte maschinenlesbare Anweisungen für eine alternative Art der Implementierung des Beispielmessgeräts 112 der 1-3 darstellt, um festzustellen, ob das Beispiel-Mediengerät 108 von 1 ein- oder ausgeschaltet ist. 10 beginnt, wenn das Beispielmessgerät 112 feststellt, ob ein Audiosignal von dem ersten Mikrofon 114 und dem zweiten Mikrofon 116 empfangen wurde (Block 1000). Wenn das Beispielmessgerät 112 feststellt, dass kein Audiosignal empfangen wurde (Block 1000), wartet das Beispielmessgerät 112, bis ein Audiosignal empfangen wurde. Wenn das Beispielmessgerät 112 feststellt, dass Audio empfangen wurde (Block 1000), dann bestimmt der Beispiel-Richtungsdetektor 300 die Ursprungsrichtung (z. B. den Winkel), aus der das Audiosignal empfangen wurde (Block 1002). Ein Beispielverfahren zur Implementierung von Block 1002 von 10 wird in Verbindung mit 11 weiter erörtert.
-
Nachdem der Beispiel-Richtungsdetektor 300 die Ursprungsrichtung bestimmt hat, aus der das Audiosignal empfangen wurde (Block 1002), bestimmt der Beispiel-Filter 302 einen Schwellenwinkel (z. B. einen Winkel in Bezug auf das Beispiel-Messgerät 112, in dem sich das Beispiel-Mediengerät 108 befindet), indem er auf die Datenbank des Beispiel-Mediengeräts zugreift (Block 1004). Der Beispielfilter 302 bestimmt dann, ob die vom Beispielrichtungsdetektor 300 ermittelte Ursprungsrichtung innerhalb des Schwellenwinkels liegt (Block 1006).
-
Wenn der Beispiel-Richtungsdetektor 300 feststellt, dass die vom Beispiel-Richtungsdetektor 300 ermittelte Ursprungsrichtung innerhalb des Schwellenwinkels liegt (Block 1006), dann stellt der Beispiel-Richtungsdetektor 300 fest, dass die Medienvorrichtung 108 eingeschaltet ist (Block 1008). Wenn der Beispiel-Richtungsdetektor 300 feststellt, dass die vom Beispiel-Richtungsdetektor 300 ermittelte Ursprungsrichtung nicht innerhalb des Schwellenwinkels liegt (Block 1006), dann bestimmt der Beispiel-Richtungsdetektor 300, dass das Mediengerät 108 ausgeschaltet ist (Block 1010). Nachdem der Beispiel-Richtungsdetektor 300 festgestellt hat, dass das Mediengerät 108 eingeschaltet ist (Block 1008), oder nachdem der Richtungsdetektor 300 festgestellt hat, dass das Mediengerät 108 ausgeschaltet ist (Block 1010), endet das Beispiel von 10.
-
11 ist ein Flussdiagramm, das beispielhafte maschinenlesbare Anweisungen zur Implementierung des beispielhaften Richtungsdetektors 300 der 3 und 4 darstellt. 11 beginnt, wenn der erste Mikrofonempfänger 500 ein vom ersten Mikrofon 114 erfasstes Audiosignal (ein erstes Audiosignal) und der zweite Mikrofonempfänger 502 ein vom zweiten Mikrofon 116 erfasstes Audiosignal (ein zweites Audiosignal) empfängt (Block 1100). Der Beispiel-Audio-Sampler 504 tastet dann die ersten und zweiten Audiosignale ab, um die empfangenen Audiosignale von analogen in digitale Audiosignale umzuwandeln (Block 1102). Der Beispiel-Absolutwertrechner 506 bestimmt dann den Absolutwert des ersten und zweiten Audiosignals (Block 1104).
-
Der Beispiel-Schwellenwertprozessor 508 bestimmt dann einen Dezimierungsschwellenwert für das erste Audiosignal, das vom ersten Mikrofonempfänger 500 empfangen wird (Block 1106). Im gezeigten Beispiel bestimmt der Schwellenwertprozessor 508 einen Dezimierungsschwellenwert für die Audiointensität, so dass z. B. 98,5 % der Audioabtastwerte im ersten Audiosignal unter den Dezimierungsschwellenwert fallen. Der Beispiel-Schwellenwertprozessor 508 bestimmt dann einen Dezimierungsschwellenwert für das zweite Audiosignal, das vom zweiten Mikrofonempfänger 502 empfangen wird (Block 1108). Im gezeigten Beispiel bestimmt der Schwellenwertprozessor 508 einen Dezimierungsschwellenwert für die Audiointensität, so dass z. B. 98,5 % der Audioabtastwerte im zweiten Audiosignal unter den Dezimierungsschwellenwert fallen. Der Beispiel-Schwellenwertprozessor 508 entfernt dann die Audioabtastwerte aus dem ersten und zweiten Audiosignal, deren Intensität unter den jeweiligen ermittelten Dezimierungsschwellenwerten liegt (Block 1110). Der Beispielrechner für den gleitenden Mittelwert 510 bestimmt dann einen gleitenden Mittelwert des ersten und zweiten Audiosignals (Block 1112). Im gezeigten Beispiel ermittelt der Rechner 510 für den gleitenden Mittelwert einen gleitenden Mittelwert über das erste und das zweite Audiosignal, wobei zur Ermittlung des gleitenden Mittelwerts eine Stichprobengröße von zwei verwendet wird.
-
Der Beispiel-Audio-Sample-Selektor 512 wählt dann eine Teilmenge der Samples aus dem ersten Audiosignal aus (Block 1114). Im gezeigten Beispiel wählt der Audio-Sample-Selektor 512 zum Beispiel 1.000 Samples aus dem ersten Audiosignal zu 1.000 Zeitpunkten aus, die gleichmäßig über ein Segment des ersten Audiosignals verteilt sind (z. B. über die ersten 36 Sekunden des empfangenen Audiosignals). Die Beispiel-Audiosignalverzögerung 514 wählt dann eine gleiche Anzahl von Samples aus dem zweiten Audiosignal zu denselben Zeitpunkten aus, jedoch um eine bestimmte Anzahl von Samples verzögert (Block 1116). Im illustrierten Beispiel von 11 wählt die Audiosignalverzögerungseinheit 514 1.000 Samples aus dem zweiten Audiosignal zu denselben Zeitpunkten wie die 1.000 Samples aus dem ersten Audiosignal aus, jedoch um eine bestimmte Anzahl von Samples verzögert. In dem in 8A gezeigten Beispiel, bei dem der Abstand zwischen dem ersten und dem zweiten Mikrofon 114, 116 drei Zoll beträgt, kann die Verzögerung zwischen einem Audiosignal, das am ersten Mikrofon 114 und am zweiten Mikrofon 116 ankommt, je nach Standort der Schallquelle bis zu elf Samples betragen. Im gezeigten Beispiel sind die von der Audiosignalverzögerung 514 ausgewählten Audiosamples des zweiten Audiosignals im Vergleich zu den vom Audiosample-Selektor 512 ausgewählten Samples des ersten Audiosignals um zwischen -11 und 11 Samples verzögert.
-
Nachdem der Beispiel-Audio-Sample-Selektor 512 einen Satz von Samples aus dem ersten Audiosignal und der Beispiel-Audiosignal-Delayer 514 einen Satz von Samples aus dem zweiten Audiosignal ausgewählt hat, bestimmt das Beispiel-Korrelationsmodul 516 eine Korrelation zwischen den beiden Sätzen von Audio-Samples (Block 1118). Das Beispiel-Korrelationsmodul 516 kann jede Art von statistischem und/oder Korrelationsalgorithmus auf empfangene Audiosignale anwenden, wie z. B. eine normalisierte Korrelation, Pearson-Korrelationskoeffizienten und/oder Rangkorrelationskoeffizienten, aber nicht darauf beschränkt.
-
Nachdem das Beispiel-Korrelationsprogramm 516 eine Korrelation zwischen den beiden Sätzen von Audioabtastwerten ermittelt hat (Block 1118), bestimmt der Beispiel-Offset-Selektor 518, ob zusätzliche Korrelationen zwischen dem ersten Audiosignal und dem zweiten Audiosignal erforderlich sind, die um eine unterschiedliche Anzahl von Abtastwerten versetzt sind. Im dargestellten Beispiel wird, wie oben erläutert, eine Korrelation zwischen den Abtastwerten des ersten Audiosignals und jedem der Sätze von Abtastwerten des zweiten Audiosignals, die um eine unterschiedliche Anzahl von Abtastwerten von -11 bis 11 versetzt sind (d. h. 23 unterschiedliche Sätze von Abtastwerten des zweiten Audiosignals), hergestellt. Im dargestellten Beispiel bestimmt der Offset-Selektor 518 in Block 1118, ob die Korrelationsmaschine 516 eine Korrelation zwischen dem Satz von Abtastwerten des ersten Audiosignals und allen 23 Sätzen von Abtastwerten des zweiten Audiosignals ermittelt hat. Wenn der Beispiel-Offset-Selektor 518 feststellt, dass zusätzliche Offsets des zweiten Audiosignals von der Beispiel-Korrelations-Engine 516 verarbeitet werden müssen (Block 1120), kehrt die Steuerung zu Block 1116 zurück und ein zusätzlicher Satz von Abtastwerten aus dem zweiten Audiosignal mit einem Offset einer anderen Anzahl von Abtastwerten wird von der Audiosignal-Verschiebeeinheit 514 ausgewählt. Wenn der Beispiel-Offset-Selektor 518 feststellt, dass keine zusätzlichen Offsets des zweiten Audiosignals von der Beispiel-Korrelationsmaschine 516 verarbeitet werden müssen (Block 1120), geht die Steuerung zu Block 1122 über.
-
In Block 1122 wählt der Beispiel-Offset-Selektor die OffsetAnzahl von Abtastwerten (z. B. einen Offset zwischen -11 und 11 Abtastwerten), die den höchsten Korrelationswert mit den Abtastwerten des ersten Audiosignals ergeben hat. Der Beispiel-Offset-Selektor speichert diesen Offset-Wert. Der Beispiel-Audio-Sample-Selektor 512 bestimmt, ob zusätzliche Offsets des ersten Audiosignals berücksichtigt werden müssen (Block 1124), wie unten beschrieben.
-
In Block 1122 wählte der Beispiel-Offset-Selektor 512 die Offset-Menge an Samples für das zweite Audiosignal aus, die am besten mit den Samples des ersten Audiosignals korrelierte. Bei dieser Korrelation wurde jedoch nur ein Teil der gesamten Abtastwerte des ersten Audiosignals berücksichtigt. Wenn beispielsweise ein 36-Sekunden-Audiosegment mit 48.000 Samples pro Sekunde abgetastet wird, würde das Audiosegment 1.728.000 Samples haben, aber die Korrelation könnte nur 1.000 dieser Samples berücksichtigt haben. Daher können bessere Ergebnisse erzielt werden, wenn ein anderer Satz von Samples aus dem ersten Audiosignal (z. B. andere 1.000 Samples) berücksichtigt wird.
-
Im gezeigten Beispiel werden zwanzig solcher Sätze von 1.000 Abtastwerten aus dem ersten Audiosignal betrachtet, und jeder dieser zwanzig Sätze von Abtastwerten wird mit 23 Sätzen von Abtastwerten aus dem zweiten Audiosignal korreliert (d. h. um zwischen -11 und 11 Abtastwerte versetzt). Der beste Offset-Wert aus diesen 23 Sätzen von Abtastwerten aus dem zweiten Audiosignal (z. B. der Offset, der am besten mit dem Satz von Abtastwerten aus dem ersten Audiosignal korreliert) wird für jeden der zwanzig Sätze von Abtastwerten aus dem ersten Audiosignal ausgewählt, und die zwanzig Offsets werden kombiniert, um den besten Gesamtoffset zu bestimmen.
-
Um die besten Ergebnisse zu erzielen, wählt der Audio-Sample-Selektor 512 die zwanzig verschiedenen Sätze von Samples aus dem ersten Audiosignal so aus, dass es die kleinstmögliche Überlappung zwischen den Samples gibt, die in jedem der zwanzig Sätze von Samples enthalten sind. Im gezeigten Beispiel ist jede der 1.000 Gruppen von Samples aus dem ersten Audiosignal um 0,5001 Sekunden voneinander entfernt. Der Wert von 0,5001 wurde in dem gezeigten Beispiel gewählt, weil die Verschiebung der Sätze von 1.000 Abtastwerten um diese Zeitspanne eine relativ geringe Überlappung zwischen den Abtastwerten der Sätze von Abtastwerten ergibt. In anderen Beispielen, in denen z. B. eine andere Anzahl von Abtastwerten in jedem Satz von Abtastwerten gewählt oder eine andere Abtastrate verwendet wird, kann ein anderer Zeitversatzwert gewählt werden.
-
Zurück zu 11: Wenn der Beispiel-Audio-Abtastwert-Auswahlschalter 512 feststellt, dass zusätzliche Sätze von Abtastwerten aus dem ersten Audiosignal berücksichtigt werden sollen (Block 1124), dann kehrt die Steuerung zu Block 1114 zurück und der Beispiel-Audio-Abtastwert-Auswahlschalter 512 wählt einen zusätzlichen Satz von Abtastwerten aus dem ersten Audiosignal aus, der um einen bestimmten Betrag (z. B. 0,5001 Sekunden) gegenüber dem zuvor ausgewählten Satz von Abtastwerten versetzt ist. Wenn der Beispiel-Audio-Sample-Selektor 512 feststellt, dass zusätzliche Sätze von Samples aus dem ersten Audiosignal nicht in Betracht gezogen werden sollen (Block 1124), dann wird jeder der vom Beispiel-Offset-Selektor 518 ausgewählten Offsets (z. B. jeder von 20 Offset-Werten) durch den Beispiel-Postprozessor 520 verarbeitet (Block 1126). Ein Beispielverfahren zur Implementierung des Blocks 1126 wird in Verbindung mit 12 weiter erörtert. Nachdem der Beispiel-Postprozessor 520 einen Gesamtabtastwert-Offset zwischen dem ersten Audiosignal und dem zweiten Audiosignal bestimmt hat (Block 1126), bestimmt der Beispiel-Richtungsdetektor 300 eine Ursprungsrichtung für die Quelle der empfangenen Audiosignale, indem er zum Beispiel eine Tabelle wie die Tabelle 800 von 8A betrachtet oder einen Algorithmus verwendet (Block 1128). Das Beispiel von 11 endet dann.
-
12 ist ein Flussdiagramm, das beispielhafte maschinenlesbare Anweisungen zur Implementierung des beispielhaften Postprozessors 520 der 4 und 5 darstellt. 12 beginnt, wenn der Beispiel-Offset-Analysierer 600 die Frequenz jedes der vom Beispiel-Offsetselektor 518 von 5 ausgegebenen Probenoffsets bestimmt (Block 1202). Ein Beispiel für eine solche Bestimmung ist in 13 dargestellt.
-
13 zeigt eine Beispieltabelle 1300, die Beispieldaten enthält, die von dem Beispiel-Offset-Selektor 518 aus 5 ausgegeben werden. Spalte 1304 der Tabelle 1300 listet Beispiel-Offset-Werte auf, die vom Beispiel-Offset-Selektor 518 ausgegeben werden. Spalte 1302 der Tabelle 1300 listet auf, wie oft jeder der Offsets durch den Beispiel-Offset-Selektor 518 ausgegeben wurde. Im Beispiel der Tabelle 1300 wurde ein Offset von -12 Samples dreimal durch den Beispiel-Offset-Selektor 518 ausgewählt und ein Offset von -13 Samples wurde zweimal durch den Beispiel-Offset-Selektor 518 ausgewählt.
-
Zurück zu 12: Nachdem der Beispiel-Offset-Analysierer 600 die Häufigkeit jedes vom Beispiel-Offset-Selektor 518 ausgegebenen Offsets bestimmt hat (Block 1202), lädt der Beispiel-Cluster-Analysierer 602 den häufigsten Offset (z. B. den Offset-Wert, der vom Beispiel-Offset-Selektor 518 die meisten Male ausgewählt wurde). Im Beispiel von 13 war der häufigste Offset -12 Samples, der vom Beispiel-Offset-Selektor dreimal ausgewählt wurde. Der Beispiel-Cluster-Analysierer 602 bestimmt dann, ob der Offset in den Cluster aufgenommen werden soll (Block 1206). Beim ersten Mal, wenn ein Offset vom Beispiel-Cluster-Analysierer 602 berücksichtigt wird, akzeptiert der Cluster-Analysierer 602 den Offset in den Cluster. Nachfolgende Offset-Werte, die von dem Beispiel-Cluster-Analysierer 602 berücksichtigt werden, werden in das Cluster aufgenommen, wenn der betrachtete Offset-Wert innerhalb von zwei Abtastwerten eines der anderen Offset-Werte im Cluster liegt. In der Beispieltabelle 1300 von 13 würde der Offset-Wert von -12 Abtastwerten in den Cluster-Analysierer aufgenommen, da er der erste berücksichtigte Wert wäre. In der Beispieltabelle 1300 von 13 würde der Offsetwert von -13 Proben als nächstes betrachtet und in den Cluster aufgenommen werden, da -13 innerhalb von zwei von -12 liegt. In der Beispieltabelle 1300 von 13 würde der Offsetwert von 20 als nächstes betrachtet und nicht in den Cluster aufgenommen werden, da 20 nicht innerhalb von zwei von -13 oder -12 liegt.
-
Zurück zu 12: Wenn der Beispiel-Cluster-Analysierer 602 feststellt, dass der betrachtete Offset-Wert nicht in den Cluster aufgenommen wird (Block 1206), dann geht die Steuerung zu Block 1210 über. Wenn der Beispiel-Cluster-Analysierer 602 feststellt, dass der betrachtete Offset-Wert im Cluster akzeptiert wird (Block 1206), dann wird der Cluster mit dem neuen Offset-Wert und der Offset-Zahl aktualisiert (z. B. ein Offset-Wert von -12 und eine Offset-Zahl von 3, in der Beispieltabelle 1300 von 13) (Block 1208).
-
Der Beispiel-Cluster-Analysierer 602 bestimmt dann, ob weitere Offsets berücksichtigt werden sollen (Block 1210). Im dargestellten Beispiel ermittelt der Cluster-Analysierer 602 die drei häufigsten Offset-Werte, die vom Beispiel-Offset-Selektor 518 ausgegeben werden. In anderen Beispielen kann auch eine andere Anzahl der häufigsten Offset-Werte berücksichtigt werden. Wenn im gezeigten Beispiel mehr als drei Offsets für die drei häufigsten Zeitpunkte ausgewählt werden (z. B. wenn es einen Gleichstand gibt, wie in Tabelle 1300 von 13, in der -13 Proben, 20 Proben, -6 Proben und -14 Proben alle zweimal vom Beispiel-Offset-Selektor 518 ausgewählt wurden), dann wählt der Cluster-Analysierer 602 zufällig die Offset-Werte aus, die verwendet werden sollen, um den Gleichstand zu brechen (z. B. werden in der Beispieltabelle 1300 von 13 die Offset-Werte von -13 Proben und 20 Proben zusammen mit -12 Proben ausgewählt). In anderen Beispielen können zusätzliche Offset-Werte (z. B. mehr als drei) ausgewählt werden, wenn ein Gleichstand zwischen den am häufigsten ausgewählten Offset-Werten besteht.
-
Wenn der Beispiel-Cluster-Analysierer 602 feststellt, dass zusätzliche Offsets zu berücksichtigen sind (Block 1210), kehrt die Steuerung zu Block 1204 zurück. Wenn der Beispiel-Cluster-Analysierer 602 feststellt, dass zusätzliche Offsets nicht zu berücksichtigen sind (Block 1210), dann nimmt der Beispiel-gewichtete Mittelwertbildner 604 einen gewichteten Mittelwert der Offset-Werte im Cluster, gewichtet mit den Offset-Zahlen. In der Beispieltabelle 1300 von 13 werden, wie oben beschrieben, die Offsets von -12 Proben mit einer Offset-Zahl von 3 und -13 Proben mit einer Offset-Zahl von 2 in den Cluster aufgenommen. In der Beispieltabelle 1300 von 13 würde der gewichtete Durchschnittswert 604 daher einen gewichteten Durchschnitt von ((3 * -12) + (2 * -13)) / (3 + 2) berechnen, was einen Wert von -12,4 Proben ergibt. Das Beispiel von 12 ist damit beendet.
-
Die hier offengelegten Beispielvorrichtungen, -systeme und/oder -artikel ermöglichen die Bestimmung der Ursprungsrichtung einer Audioquelle unter Verwendung einer relativ kleinen Anzahl von Abtastwerten eines von der Audioquelle ausgesendeten Audiosignals. Zum Beispiel kann das Hörermesssystem des gezeigten Beispiels die Ursprungsrichtung eines 36 Sekunden langen Audiosegments einer Audioquelle bestimmen, das mit 48.000 Samples pro Sekunde abgetastet wird, was 1.728.000 Samples ergibt. Das Hörermesssystem des gezeigten Beispiels bestimmt die Herkunftsrichtung der Audioquelle durch Berechnung von Korrelationen zwischen 20 Sätzen von Audio-Samples, die von zwei Mikrofonen erfasst werden, wobei jeder Satz 1.000 Audio-Samples enthält. Dies führt zu einer deutlich höheren Effizienz, einer geringeren Verarbeitungszeit und/oder weniger erforderlichen Ressourcen als ein Messsystem, das eine Korrelation zwischen den von zwei Mikrofonen empfangenen Audiosignalen unter Verwendung aller 1.728.000 Abtastwerte berechnet.
-
14 ist ein Blockdiagramm einer Beispielprozessorplattform 1400, die in der Lage ist, die Anweisungen der 9-12 auszuführen, um das Beispielmessgerät 112, das Beispiel der 1 und 3, den Beispielrichtungsdetektor 300 der 3 und 5 und den Beispielpostprozessor 520 der 5 und 6 zu implementieren. Bei der Prozessorplattform 1400 kann es sich beispielsweise um einen Server, einen Personalcomputer, ein mobiles Gerät (z. B. ein Mobiltelefon, ein Smartphone, ein Tablet wie ein iPad™), einen persönlichen digitalen Assistenten (PDA), ein Internetgerät, einen DVD-Player, einen CD-Player, einen digitalen Videorekorder, einen Blu-ray-Player, eine Spielkonsole, einen persönlichen Videorekorder, eine Set-Top-Box oder eine andere Art von Computergerät handeln.
-
Die Prozessorplattform 1400 des gezeigten Beispiels enthält einen Prozessor 1412. Der Prozessor 1412 des gezeigten Beispiels ist eine Hardware. Der Prozessor 1412 kann beispielsweise durch eine oder mehrere integrierte Schaltungen, Logikschaltungen, Mikroprozessoren oder Steuerungen einer beliebigen Familie oder eines beliebigen Herstellers implementiert werden.
-
Der Prozessor 1412 des abgebildeten Beispiels umfasst einen lokalen Speicher 1413 (z. B. einen Cache). Der Prozessor 1412 des abgebildeten Beispiels steht über einen Bus 1418 mit einem Hauptspeicher in Verbindung, der einen flüchtigen Speicher 1414 und einen nichtflüchtigen Speicher 1416 umfasst. Der flüchtige Speicher 1414 kann durch einen synchronen dynamischen Direktzugriffsspeicher (SDRAM), einen dynamischen Direktzugriffsspeicher (DRAM), einen dynamischen RAMBUS-Direktzugriffsspeicher (RDRAM) und/oder jede andere Art von Direktzugriffsspeicher realisiert werden. Der nichtflüchtige Speicher 1416 kann durch einen Flash-Speicher und/oder jede andere gewünschte Art von Speichervorrichtung implementiert werden. Der Zugriff auf den Hauptspeicher 1414, 1416 wird durch einen Speicher-Controller gesteuert.
-
Die Prozessorplattform 1400 des gezeigten Beispiels umfasst auch eine Schnittstellenschaltung 1420. Die Schnittstellenschaltung 1420 kann durch jede Art von Schnittstellenstandard implementiert werden, z. B. eine Ethernet-Schnittstelle, einen universellen seriellen Bus (USB) und/oder eine PCI-Express-Schnittstelle.
-
Im dargestellten Beispiel sind ein oder mehrere Eingabegeräte 1422 mit der Schnittstellenschaltung 1420 verbunden. Das (die) Eingabegerät(e) 1422 ermöglicht (ermöglichen) es einem Benutzer, Daten und Befehle in den Prozessor 1412 einzugeben. Das (die) Eingabegerät(e) kann (können) z. B. durch einen Audiosensor, ein Mikrofon, eine Kamera (Standbild oder Video), eine Tastatur, eine Taste, eine Maus, einen Touchscreen, ein Trackpad, einen Trackball, einen Isopoint und/oder ein Spracherkennungssystem realisiert werden.
-
An die Schnittstellenschaltung 1420 des dargestellten Beispiels sind auch ein oder mehrere Ausgabegeräte 1424 angeschlossen. Die Ausgabegeräte 1424 können z.B. durch Anzeigegeräte (z.B. eine Leuchtdiode (LED), eine organische Leuchtdiode (OLED), eine Flüssigkristallanzeige, eine Kathodenstrahlröhrenanzeige (CRT), einen Touchscreen, ein taktiles Ausgabegerät, eine Leuchtdiode (LED), einen Drucker und/oder Lautsprecher) realisiert werden. Die Schnittstellenschaltung 1420 des gezeigten Beispiels umfasst daher typischerweise eine Grafiktreiberkarte, einen Grafiktreiberchip oder einen Grafiktreiberprozessor.
-
Die Schnittstellenschaltung 1420 des gezeigten Beispiels umfasst auch eine Kommunikationsvorrichtung wie einen Sender, einen Empfänger, einen Transceiver, ein Modem und/oder eine Netzwerkschnittstellenkarte, um den Datenaustausch mit externen Maschinen (z. B. Computergeräten jeglicher Art) über ein Netzwerk 1426 (z. B. eine Ethernet-Verbindung, eine digitale Teilnehmerleitung (DSL), eine Telefonleitung, ein Koaxialkabel, ein Mobiltelefonsystem usw.) zu erleichtern.
-
Die Prozessorplattform 1400 des gezeigten Beispiels umfasst auch ein oder mehrere Massenspeichergeräte 1428 zum Speichern von Software und/oder Daten. Beispiele für solche Massenspeichergeräte 1428 sind Diskettenlaufwerke, Festplattenlaufwerke, Compact-Disk-Laufwerke, Blu-ray-Disk-Laufwerke, RAID-Systeme und DVD-Laufwerke (Digital Versatile Disk).
-
Die kodierten Anweisungen 1432 der können im Massenspeicher 1428, im flüchtigen Speicher 1414, im nichtflüchtigen Speicher 1416 und/oder auf einem entfernbaren, greifbaren, computerlesbaren Speichermedium wie einer CD oder DVD gespeichert werden.
-
Obwohl hierin bestimmte beispielhafte Vorrichtungen und Herstellungsgegenstände offenbart wurden, ist der Anwendungsbereich dieses Patents nicht darauf beschränkt. Vielmehr deckt dieses Patent alle Vorrichtungen und Herstellungsgegenstände ab, die in den Anwendungsbereich der Patentansprüche fallen.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-