Forum: Digitale Signalverarbeitung / DSP / Machine Learning Richtungsdetektierung Schall


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von egal (Gast)


Lesenswert?

Hallo Leute,

ich möchte 4 Silizium-Mikrofone mit einem 4-Channel PDM-to-TDM converter 
IC an einen STM32F7 anbinden.
Das Audio geht dann über 4 Kanal TDM da rein.

Ich wollte die 4 Mikrofone in einem Quadrat anordnen und darüber eine 
Richtungsdetektierung des Schalls machen (also Winkel berechnen).

Wisst Ihr ob es da irgendwo fertige Projekte gibt, die man nutzen kann?

Danke

von Audiomann (Gast)


Lesenswert?

Ja, hier liegen 2 Projekte rum. Bestellt und nicht abgeholt. Einer hat 
es dann selber gemacht und eine andere Firma hat ein Ingenieurbüro zur 
Fertigstellung beauftragt.

In keinem der beiden Fälle kam es produktionsfähiges bei raus!

Die option A bezieht sich auf die Lokalisation einer entfernten 
Schallquelle mit Zeitmessung und Abstandsermittlung, also eine Art 
akustisches Radar. Funktioniert im vorderen Halbraum. Für einen Vollraum 
braucht es mindestens 2 Anordnungen -> 6 Mikros.

Die option B bezieht sich auf die Verfolgung eines Objekts im 
Nahbereich. Die Person vor dem Mikro-Array wird verfolgt und getrackt. 
Die Signalverarbeitung wird auf diese Position optimiert und seine 
Sprache extrahiert. Ferner wird seine Position ausgegeben. Funktioniert 
im vorderen Viertelraum und braucht 6 Mikro.

Im dritten Schritt sollte erkannt werden, wer es ist. Das haben wir dann 
nicht mehr gemacht.

Für beide gibt es Prototypenaufbauten, die funktionieren und in 
Registern die per Microcontroller auslesbaren Daten zur Verfügung 
stehen.

von Hanffreund (Gast)


Lesenswert?

Schau mal wie die Amis (Militär) das machen, vielleicht hilft dir das 
auch weiter. Sofern man dazu etwas findet.

Die haben wohl so Systeme, die Waffen vollautomatisch auf Angreifer 
ausrichten können. Geht also sehr genau.

von Hanffreund (Gast)


Lesenswert?


von Ronny (Gast)


Lesenswert?


von oerks (Gast)


Lesenswert?

Mit ein paar mehr Mikrofonen und etwas mehr Rechnerei
kann man sogar 3D-Sonogramme machen.

Was quietscht denn da?

von Wolfgang (Gast)


Lesenswert?

egal schrieb:
> Wisst Ihr ob es da irgendwo fertige Projekte gibt, die man nutzen kann?

GPS - die Rolle von Sendern/Empfänger ist dort vertauscht und das 
Problem mit dem Äther gibt es dabei nicht. Beim Schall kannst du 
allerdings von homogener Ausbreitungsgeschwindigkeit ausgehen, was bei 
GPS nur bedingt der Fall ist.

von Blechbieger (Gast)


Lesenswert?

egal schrieb:
> ich möchte 4 Silizium-Mikrofone mit einem 4-Channel PDM-to-TDM converter
> IC an einen STM32F7 anbinden.
> Das Audio geht dann über 4 Kanal TDM da rein.

Warum über zusätzlichen Converter? Der F7 kann 4 PDM Mikros direkt 
anbinden, der H7 sogar 8.

von Tobias (. (Gast)


Lesenswert?

Hanffreund schrieb:
> 
https://www.spiegel.de/wissenschaft/mensch/us-militaer-mikrofone-orten-heckenschuetzen-a-360350.html
>
> Heißt wohl Boomerang-System.

Das dürften aber Spezialmikros sein, die den Schalldruck von Projektilen 
aushalten.

von uwe (Gast)


Lesenswert?


von J. S. (engineer) Benutzerseite


Lesenswert?

oerks schrieb:
> Mit ein paar mehr Mikrofonen und etwas mehr Rechnerei
> kann man sogar 3D-Sonogramme machen.

Nicht so ganz. Ein Knall von einem Schuss, wie bei den MIL-Anwendungen 
ist schon etwas anderes. Einerseits einfacher, andererseits 
problematischer, wegen der eventuellen Nähe und dem Schalldruck.

: Bearbeitet durch User
von Manfred (Gast)


Lesenswert?


von Maxe (Gast)


Lesenswert?

@Manfred: Danke für den Link!

Als mich im Sommer im Schlafzimmer öfters Stechmucken geplagt haben, 
dacht ich mir, man müsste sie über das Summen relativ gut orten können. 
Wenn ein Strahler dann dem Insekt folgt, könnte man es händisch leicht 
wegfangen. Vielleicht mag das jemand umsetzen :)

von tippgeber (Gast)


Lesenswert?

Wenn die Mücke fliegt, kannst du sie auch mit den Augen verfolgen und 
fangen. Gfs mit einem Staubsauger. Alternative die elektrischen 
Fliegenklatschen. Muss man nur dort schnell hin und herwedeln, wo man 
das Vieh gerade noch gesehen hat. Sind ja nicht so dolle schnell …

von Dieter (Gast)


Lesenswert?

tippgeber schrieb:
> Sind ja nicht so dolle schnell …

Haddu ein Ahnung, wie schnell die sein koennen, vor allem die 
Tigermuecken.

von Hp M. (nachtmix)


Lesenswert?

Maxe schrieb:
> Wenn ein Strahler dann dem Insekt folgt, könnte man es händisch leicht
> wegfangen.

Am besten machst du die Hände vorher nass, dann  können die Tierchen 
nicht daran abprallen, sondern kleben auf dem Wasserfilm fest.

von J. S. (engineer) Benutzerseite


Lesenswert?

Honig ist noch besser! Alles im Zimmer voller Honig! Dann können sie 
nirgends mehr landen! :-)

von depp (Gast)


Lesenswert?

Servus,

ich spiel auch gerade mit sowas rum...hab mir dafür das 4-mic array von 
seedstudio für den Pi besorgt:
https://wiki.seeedstudio.com/ReSpeaker_4_Mic_Array_for_Raspberry_Pi/

Dafür findet man auch einige python Programme, auch mit voice detection 
oder hotword detection:
https://github.com/respeaker/mic_array

sehr geiles Programm, kann das Ganze in 3D (nur leider braucht man dazu 
dieses odas studio zur visu):
https://github.com/introlab/odas

Gruß

von depp (Gast)


Lesenswert?

Auch noch ein nettes Projekt, funktioniert auch soweit mit kleinen 
Anpassungen dem 4-mic array...nur leider sehr langsam und nicht wirklich 
präzise...vll ist das Einstellungssache:
https://medium.com/swlh/experiments-in-diy-audible-frequency-digital-chirp-sonar-a860b37bb6c3

von depp (Gast)


Lesenswert?

Hier mal ein von mir selbst erstelltes Programm, allerdings bin ich am 
zweifeln, ob die berechneten Werte so richtig sind.

Ich bekomme bei den x-Werten zum Teil Unterschiede von einigen Metern, 
bei einem Quellenabstand von vll. 1m...das kann doch nicht passen?!

Vll. hat ja jemand einen Tipp, oder erkennt den Fehler?
1
import time
2
import numpy as np
3
from scipy import signal as sgn
4
from scipy.ndimage.interpolation import shift
5
import scipy
6
import pyaudio
7
import math
8
9
10
M = 343.2 # Schallgeschwindigkeit
11
mic_dist = 0.058 # Mikrofonabstand
12
13
mic_arr = [[0.0, 0.0],
14
           [mic_dist, 0.0],
15
           [mic_dist, mic_dist],
16
           [0.0, mic_dist]]
17
18
19
FORMAT = pyaudio.paInt16
20
CHUNK = 1024
21
CHANNELS = 4
22
RATE = 44100
23
24
Threshold = 30
25
26
audio = pyaudio.PyAudio()
27
28
#### find 4-mic audio divice ####
29
device_index = None
30
for i in range(audio.get_device_count()):
31
    dev = audio.get_device_info_by_index(i)
32
    name = dev['name'].encode('utf-8')
33
    print(i, name, dev['maxInputChannels'], dev['maxOutputChannels'])
34
    if dev['maxInputChannels'] == CHANNELS:
35
        print('Use {}'.format(name))
36
        device_index = i
37
        break
38
39
if device_index is None:
40
    raise Exception('can not find input device with {} channel(s)'.format(channels))
41
#################################
42
43
# audio-stream start:
44
stream = audio.open(
45
    format = pyaudio.paInt16,
46
    channels = CHANNELS,
47
    rate = RATE,
48
    input_device_index = device_index,
49
    output = False,
50
    input = True,
51
    frames_per_buffer=CHUNK)
52
53
def ping()
54
    
55
56
57
def listen():
58
    while True:
59
        data = stream.read(CHUNK)
60
        data_array = np.frombuffer(data, dtype='int16')
61
        signal1 = data_array[0::CHANNELS]
62
63
        ### RMS Pegel ###
64
        square = np.sum((signal1 * signal1))
65
        mean = square / CHUNK
66
        if mean < 1:
67
            mean = 1
68
        rms = math.sqrt(int(mean))
69
        #print(rms)
70
        #################
71
        if rms < Threshold:
72
            ssl(data_array)
73
74
75
def ssl(data_array):
76
    while True:
77
        #data = stream.read(CHUNK)
78
        #data_array = np.frombuffer(data, dtype='int16')
79
80
        signal1 = data_array[0::CHANNELS]
81
        signal2 = data_array[1::CHANNELS]
82
        signal3 = data_array[2::CHANNELS]
83
        signal4 = data_array[3::CHANNELS]
84
85
        # Cross-Correlation:
86
        #cc11 = sgn.correlate(signal1, signal1, mode = 'full')
87
        cc12 = sgn.correlate(signal1, signal2, mode = 'full')
88
        cc13 = sgn.correlate(signal1, signal3, mode = 'full')
89
        cc14 = sgn.correlate(signal1, signal4, mode = 'full')
90
91
        # maximum:
92
        mcc12 = np.argmax(cc12)
93
        mcc13 = np.argmax(cc13)
94
        mcc14 = np.argmax(cc14)
95
96
97
        # time difference:
98
        #t11 = mcc11 / RATE
99
        t12 = mcc12 / RATE
100
        t13 = mcc13 / RATE
101
        t14 = mcc14 / RATE
102
103
        # delta-Abstand
104
        x12 = M * t12
105
        x13 = M * t13
106
        x14 = M * t14
107
108
        print(t12, t13, t14)
109
110
        ### beamforming ###
111
        # signale shiften:
112
        bf1 = signal1
113
        bf2 = shift(signal2, mcc12, cval=0)
114
        bf3 = shift(signal3, mcc13, cval=0)
115
        bf4 = shift(signal4, mcc14, cval=0)
116
117
        # signale summieren:
118
        audio_bf = bf1 + bf2 + bf3 + bf4
119
120
        ###################
121
122
        break
123
124
listen()
125
#ssl()

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

https://dam-assets.fluke.com/s3fs-public/flk-6012097d-de-naam-ii900-ii910-ds-w_0.pdf?WP1Vquw5QxhvaaBtgFou9J1xUpF_Qwzp
gerade gelesen, Ultraschall von Gaslecks mit MEMS-Mikrofonen orten, 
Anzeige auf Bildschirm.
kleineres Modell 17500€, das größere 21000€ ohne MwSt.
leider noch nichts für den Hausgebrauch, aber das Video sieht 
beeindruckend aus.
vielleicht wirds mal billiger wie die Wärmebildkameras.

Taugt vielleicht auch zur Fledermausbeobachtung.

Gerade gesehen, dasselbe hatte uwe oben schon verlinkt

Im neuen Raspberry Pi Geek ist ein Artikel hierzu
https://wiki.seeedstudio.com/ReSpeaker/
2-6 Mikrofone für den Raspi. Dazu gibt es ein Softwareprojekt ODAS (open 
embedded audition system) und eine GUI dazu. Auf seed verlinkt.
Das dazu benötigte aktuelle "Node.js" sei noch nicht in den Raspi 
Paketquellen enthalten, man muss danach suchen.
https://wiki.seeedstudio.com/ReSpeaker_4_Mic_Array_for_Raspberry_Pi/

: Bearbeitet durch User
von Dr. Hardware (Gast)


Lesenswert?

Christoph db1uq K. schrieb:
> Ultraschall von Gaslecks mit MEMS-Mikrofonen orten,
> Anzeige auf Bildschirm.
Das dürfte so aber nur in der Nahdistanz funktionieren und für die 
Anwendung des TO nicht tauglich sein.

depp schrieb:
> audio_bf = bf1 + bf2 + bf3 + bf4
Könntest du das mal erläutern, was du da machst?
Ich vermisse eine Triangulation in dem Code, ich nehme an, dass sich das 
im BF-Teil verbrigt.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Aha. Der TO hat sich seit September nicht mehr gemeldet und keine 
Angaben zur gesuchten Reichweite gemacht.
Im Datenblatt zu den Fluke-Geräten steht: Detektorbereich
ii900: Bis zu 70 Meter, ii910: Bis zu 120 Meter

Interessanter finde ich die Projekte im Zusammenhang mit der 
Seeedstudio-Hardware.

von Hermann S. (diphtong)


Lesenswert?

Dr. Hardware schrieb:
> depp schrieb:
>
>> audio_bf = bf1 + bf2 + bf3 + bf4
>
> Könntest du das mal erläutern, was du da machst?
> Ich vermisse eine Triangulation in dem Code, ich nehme an, dass sich das
> im BF-Teil verbrigt.

Die bf1, bf2, ... Werte sind die zeitlich angeglichenen Signale der 4 
Mikrofone, welche dann addiert werden, um die signalstärke letztendlich 
zu erhöhen...aber Du hast es richtig erkannt, irgendwas fehlt noch oder 
ist nicht ganz richtig.
Mit der sgn.correlate Funktion und der darauffolgenden np.argmax wird ja 
die signalverschiebung berechnet und damit dann die zeitliche differenz 
und über die schallgeschwindigkeit dann der delta Abstand:
1
        # time difference:
2
        #t11 = mcc11 / RATE
3
        t12 = mcc12 / RATE
4
        t13 = mcc13 / RATE
5
        t14 = mcc14 / RATE
6
        # delta-Abstand
7
        x12 = M * t12
8
        x13 = M * t13
9
        x14 = M * t14

Und hier liegt irgendwo der Hund begraben...beim delta abstand kommt nur 
schmarrn raus. Die triangulation würde dann aus dem delta abstand 
berechnet, aber soweit bin ich noch nicht.

: Bearbeitet durch User
von J. S. (engineer) Benutzerseite


Lesenswert?

Bei einer derartigen Abstandsberechung spielt die Qualität der Signale 
und deren Varianz eine wichtige Rolle. Die Omnidirektionalität der 
MEMS-Mikros ist nämlich leider nicht perfekt. Es gibt u.a. durch die 
Verbauung immer spektrale Effekte und damit ein Problem, den Trigger 
qualitativ genau zu erfassen und die relative TOA exakt zu messen.

Hermann S. schrieb:
> Die triangulation würde dann aus dem delta abstand
> berechnet,
Bei solchen Aufgaben ist auch noch zu berücksichtigen, dass man eine 
gute T nur hinbekommt, wenn man ein überbestimmtes Gleichungssystem 
benutzt und mehre Kreise berechnet.

Gut funktioniert es, wenn man den Frequenzbereich überstreicht, also 
einen Chirp emitiert. Weniger gut ist es bei der Autokorrelation 
unbekannter Signale. Geht aber auch mit Musik hinreichend genau:

http://www.96khz.org/oldpages/soundsourcelocalisation.htm

Zum beamforming noch das: Richtungsselektivität durch Berechnung:
http://www.96khz.org/oldpages/cardioidemulationdecca.htm

von Hermann S. (diphtong)


Lesenswert?

Jürgen S. schrieb:
> Bei einer derartigen Abstandsberechung spielt die Qualität der Signale
> und deren Varianz eine wichtige Rolle. Die Omnidirektionalität der
> MEMS-Mikros ist nämlich leider nicht perfekt. Es gibt u.a. durch die
> Verbauung immer spektrale Effekte und damit ein Problem, den Trigger
> qualitativ genau zu erfassen und die relative TOA exakt zu messen.

Ja ich denke die Signalqualität ist vll. nicht perfekt, bzw. hab ich es 
bisher nur in meinem Zimmer ausprobiert, wo es natürlich auch einiges an 
Reflexionen gibt, vll. liegts daran. Hab aber bis jetzt keine Audio lib 
gefunden, mit der man die Signale entsprechend filtern kann, welche auch 
auf dem RPi läuft, z. B. Acoular.

> Hermann S. schrieb:
>> Die triangulation würde dann aus dem delta abstand
>> berechnet,
> Bei solchen Aufgaben ist auch noch zu berücksichtigen, dass man eine
> gute T nur hinbekommt, wenn man ein überbestimmtes Gleichungssystem
> benutzt und mehre Kreise berechnet.

Kannst Du das vll. etwas näher erklären?


> Zum beamforming noch das: Richtungsselektivität durch Berechnung:
> http://www.96khz.org/oldpages/cardioidemulationdecca.htm

Leider etwas wenig beschrieben...was ist A, B, X, Y ? Abstände zu was?

von Wolfgang (Gast)


Lesenswert?

Jürgen S. schrieb:
> Zum beamforming noch das: Richtungsselektivität durch Berechnung:
> http://www.96khz.org/oldpages/cardioidemulationdecca.htm

Jede Phase-Array-Antenne macht das so, z.B. im 5G Mobilfunknetz.
Und das lässt sich natürlich auch akustisch für die Empfangsseite 
umsetzen. Probleme durch Mehrwegausbreitung darf man aber nicht 
unterschätzen.

von Wolfgang (Gast)


Lesenswert?

Hermann S. schrieb:
> Kannst Du das vll. etwas näher erklären?

Es gibt mehr Daten, als man für eine eindeutige Lösung benötigt. Dies 
wird genutzt, um Rausch (Unsicherheit/statistische Fehler) zu 
reduzieren.
https://de.wikipedia.org/wiki/Methode_der_kleinsten_Quadrate

von J. S. (engineer) Benutzerseite


Lesenswert?

Hermann S. schrieb:
> Leider etwas wenig beschrieben...was ist A, B, X, Y ?
Ok, das ist jetzt gfs etwas zuviel Tontechnik im Detail. Die Abstände 
beziehen sich auf die jeweiligen Mikrofonachsen in Relation zum Objekt. 
Maßgeblich ist dabei auch der Abstand der beteiligten Mikrofone 
untereinander. Diese definieren über ihre Parameter das sognannte 
Polarpattern, also das Empfindlichkeitsmuster, das angibt, aus welchem 
Winkel wie sensitiv aufgenommen wird. Theoretisch lässt sich das in 
einfacher Form ohne Frequenzgang mit den Parametern A und B beschreiben, 
wie sie auch hier zu finden sind:
http://www.sengpielaudio.com/FormelnZumPolardiagramm.pdf

Wolfgang schrieb:
> Hermann S. schrieb:
>> Kannst Du das vll. etwas näher erklären?
> Es gibt mehr Daten, als man für eine eindeutige Lösung benötigt.
So ist es. Siehe "überbestimmtes Gleichungssystem". GPS nutzt das auch. 
Beim Schall sucht man sich die am Besten ausgesteuerten Mikrofone 
heraus, verwirft die übersteuerten und zieht auch vorzugsweise die 
heran, die gleichmäßig ausgesteuert sind, etc.

Wolfgang schrieb:
> Jede Phase-Array-Antenne macht das so, z.B. im 5G Mobilfunknetz.
So ist es, wobei es beim Schall mitunter etwas problematischer ist, 
wegen der zahlreichen Reflektionen, die mit anderem Spektrum daher 
kommen. Im Gegensatz zur Antenne, die ich auf eine Frequenz optimieren 
kann, ist das Spektrum beim Schall etliche Oktaven und es ist nicht so 
genau bekannt, was reinkommen wird. Die Autokorrelation wird 
anspruchsvoller (habe beides schon gemacht, z.b. bei UMTS).

Was bei Schall immer das unterschätzte Dauerproblem ist: Die 
Mikrofonrichtungsempfindlichkeit. Auch Kugelmikrofone haben eine starke 
Präferenz für Höhen auf der Hauptachse und damit wird eine einfache 
Triangulation nur für Bässe möglich, was wiederum phasenabhängige 
Probleme macht, da d/dt gering. Für die Höhen, wo das steiler ist, 
weicht das Signal bei dem Mikro, das dem Schall weniger gut zugewandt 
ist, mehr ab. Das muss berücksichtigt werden.

von Hp M. (nachtmix)


Lesenswert?

egal schrieb:
> Ich wollte die 4 Mikrofone in einem Quadrat anordnen und darüber eine
> Richtungsdetektierung des Schalls machen (also Winkel berechnen).

Eine quadratische Anordnung gibt dir keine eindeutige Antwort, weil die 
Zeitdifferenzen von Quellen, die sich oberhalb und unterhalb der 
quadratischen Fläche befinden, gleich sind.

Versuchs mal mit einer tetraedrischen Anordnung.

Im übrigen kann man damit nicht nur die Richtung, sondern auch den 
genauen Ort der Quelle ermitteln.
Solche Verfahren sind schon sehr sehr lange unter dem Begriff 
Hyperbelnavigation bekannt. Auch GPS gehört dazu.

von Simon R. (Gast)


Lesenswert?

Hp M. schrieb:
> Hyperbelnavigation
ist aber noch nicht automatisch dreidimensional, kann also zunächst 
keine Höhen einschätzen.

J. S. schrieb:
> http://www.96khz.org/oldpages/cardioidemulationdecca.htm
ist das dieses Navigationssystem?
https://de.wikipedia.org/wiki/Decca-Navigationssystem

von Chris K. (kathe)


Lesenswert?

egal schrieb:
> Wisst Ihr ob es da irgendwo fertige Projekte gibt, die man nutzen kann?

Sius (https://sius.com/),
Polytronic (http://www.polytronic.ch/de) und Imetron
(http://imetron.ch/sintro300).

Wird bei denen schon verwendet.

von Simon R. (Gast)


Lesenswert?

Chris K. schrieb:
> Wird bei denen schon verwendet.
Die detektieren aber nicht die Schallquellenposition, des Schützen 
sondern registrieren den Aufschlag des Projektils im Ziel. Das ist ein 
bischen was anderes. Sofern es nicht der Schall des Auftreffens ist, der 
entsteht, wenn das Projektil tritt, ist es die Machwelle.

von J. S. (engineer) Benutzerseite


Lesenswert?

S. R. schrieb:
> ist das dieses Navigationssystem?
Das ist ja schräg - kannte ich noch garnicht!

Als Antwort: Ja und Nein:  Die Lokalisation der Musiker und 
Schauspieler, die ich damals betrieben hatte, ist rein zufällig mit 
einem DECCA-Tree geschehen, weil dieses Aufnahmesystem eben im Bereich 
der Orchestermusik sehr weit verbreitet ist und da verwendet wurde, als 
ich die Idee mit dem Tracken hatte. Im Prinzip geht es auch mit einem 
AB-Mikro oder XY.  Aufgrund der Anordnung der Mikrofone fand ich die 
Idee, sie zur vollständigen Triangulation zu nutzen, halt irgendwie 
naheliegend, wobei das außer mir - zumindest damals - bisher noch keiner 
gemacht hatte. Auch heute ist mir nicht bekannt, dass das jemand macht.

Die gelinkte DECCA-Navigation hat damit nichts zu tun. Ist wohl rein 
Funkwellenanwendungen. Wie man lesen kann, scheint sie aber 
lustigerweise von einer Tochter eben jener DECCA-Plattenfirma entwickelt 
worden zu sein, welche die Tonaufaufnahme machte und dem System den 
Namen gab.  Die nehmen aber, soweit ich das sehe, nicht den 
Tontechnikbaum. Es scheint sich auch nur auf Funkwellennaviagtion zu 
beziehen. Irgendeinen praktischen Zusammenhang zur Tontechnik und 
Schallwellen muss es aber geben, wenn Ablager einer Plattenfirma 
plötzlich Ortungsysteme entwickeln.

Jedenfalls danke für den link!

von Rbx (rcx)


Lesenswert?

J. S. schrieb:
> Im Prinzip geht es auch mit einem
> AB-Mikro oder XY.

Wir haben ja auch nur 2 Ohren und können damit ganz gut orten. In einem 
Keyboards-Heft gab es mal Demo-Cds, da konnte man Kopfhörer aufsetzen, 
und tatsächlich verschiedene präsentierte "3D" Effekte hören. Steckt 
vielleicht auch viel Arbeit dahinter - auf jeden Fall muss umgekehrte 
Ortung auch möglich sein.

Steckmücken orientieren sich an der Atemluft und wenn sie einem aus dem 
Schlaf wecken, dann braucht man meist nur an der Wand entlangsehen, oder 
an der Decke.
Wenn man sitzt, können die auch am Stuhlbein hocken.
Recht sicher ist das Einfangen mit einem Trink-Glas (auch bei Bienen und 
Wespen etc.) und wenn man Kontaktspray parat hat..
Noch besser sind aber Fliegengitter vor den Fenstern.

: Bearbeitet durch User
von J. S. (engineer) Benutzerseite


Lesenswert?

Rbx schrieb:
> Wir haben ja auch nur 2 Ohren und können damit ganz gut orten.
Ja, wobei das schon einiges an Signalverarbeitung im Hirn erfordert:
Die Ohrmuschel fügt dem eintreffenden Schall richtungsabhängig einige 
Echos hinzu, die vorn/hinten und oben/unten unterscheidbar machen. Da 
muss das Hirn in den ersten Lebensmonaten und -jahren richtig viel 
dekodieren lernen. Um das mit Software zu machen, muss man auch 
ordentlich rechnen.

Es gibt Anordnungen mit denen das möglich ist, allerdings sind mehrere 
Mikros, die die Winkel abdecken, einfach eleganter und simpler zu 
prozessieren.

> In einem Keyboards-Heft gab es mal Demo-Cds, da konnte man
> Kopfhörer aufsetzen, und tatsächlich verschiedene präsentierte
> "3D" Effekte hören.

Binaurales Hören kam so Ende der 1970er auf und war bis in die 1990er 
noch vereinzelt zu hören. Ich selber habe damit Aufnahmen gemacht und 
auch CDs produziert - u.a. gab es immer mal eine Spur auf CDs mit 
Chören.

Es ist nur in der Qualität begrenzt, weil jedes Ohr individuell ist und 
damit das Hirn andere Echos erwartet. Hinzu kommt auch noch, dass in der 
Realität einige Schallanteile auch durch den Schädel kommen und 
mitgerechnet werden. Diese fehlen bei den Aufnahmen, bzw sind falsch.

Das Hauptproblem ist dass ein Kopfhörer den Schall auch nur wieder auf 
der Achse abstrahlt und damit nicht das Schallbild ans Ohr gelangt, das 
eigentlich benötigt wird.

Daher hat sich das nie so richtig etablieren können.

Ähnliches gilt für künstlich addierte Reflektionen mit Software als 
Plugin in DAWs oder ein Form von Signalprozessoren, die Räumlichkeit und 
Richtung erzeugen sollen. Bisweilen klappt das mit 3D-Prozessoren an 
HIFI-Systemen ganz gut, wo der Schall scheinbar von hinten kommt, obwohl 
da gar keine Lautsprecher stehen. Mein AIWA von 1998 konnte das.

... und einige Synthesizer behaupten, binaurales Stereo zu prozessieren. 
Scheint also wieder in Mode zu kommen. Da muss ich dann wohl mal meinen 
alten  DSP-Code aus der Kiste holen ....

Praktisch sieht es so aus, dass dadurch ein Haufen Sondereffekte 
entstehen, die z.T. unkontrollierbar sind, besonders wenn man man das 
dann ohne Kopfhörer hört. Besonders eindrucksvoll fand ich immer den 
Reverb vom Virus, der über Lausprecher sehr weit klang, über Kopfhörer 
aber irgendwie immer von hinten kam.

Vieles ist auch Zufall: Meine normales Stereosignal aus dem Fernseher 
reflektiert so komisch an den Wänden, dass manchmal sehr phasenversetzte 
Signale, wie die Zuschauergeräusche beim Fussball, von weit außen zu 
kommen scheinen. Klappt aber nur rechts, wegen des unsymmetrischen 
Raumes nehme ich an.

: Bearbeitet durch User
von Kai D. (Firma: Selbständiger Konstrukteur) (robokai)


Lesenswert?

Ist bekannt ob es eine smart phone app gibt, die eine Schallrichtung 
erkennen kann?

von Gunnar F. (gufi36)


Lesenswert?

Ja. Nein. Einfach mal nachdenken.

von Harald W. (wilhelms)


Lesenswert?

Dieter schrieb:

> Haddu ein Ahnung, wie schnell die sein koennen, vor allem die
> Tigermuecken.

Gibts auch Gepardmücken? Die sind dann noch schneller. :-)

von Rbx (rcx)


Lesenswert?

J. S. schrieb:
> und einige Synthesizer behaupten, binaurales Stereo zu prozessieren.
> Scheint also wieder in Mode zu kommen. Da muss ich dann wohl mal meinen
> alten  DSP-Code aus der Kiste holen ....

Ich fände 3D-Sounds in Computerspielen toll. Habe aber keine Ahnung, wie 
man das Implementieren könnte. Theoretisch ginge das wohl, dann müsste 
man aber einen Modulator für die Sounds haben, der sowas aufbereitet.
Also beispielsweise alle Sounds als Doppel - oder Mehrfach-Spur 
(+elendig viel Speicher) - oder on the fly duplizieren, modulieren usw.
Die Modulation selber könnte man zumindest teilweise in den 
Einstellungen anbieten, .. naja, schön wäre es, aber mir macht sowas 
ziemlich viel Spaß, also das Lauschen auf Ortung.
Teilweise geht es wohl, wegen der Entfernungsmodulation.
Wäre aber noch schöner, wenn es wirklich gut ginge. Oder eben Jagdschein 
machen, und das Wild jahrelang in der Kühltruhe verrotten lassen.

von Hmmm (hmmm)


Lesenswert?

Rbx schrieb:
> Ich fände 3D-Sounds in Computerspielen toll. Habe aber keine Ahnung, wie
> man das Implementieren könnte.

Das Stichwort ist HRTF, dafür gibt es fertige Lösungen, z.B. Dolby 
Headphone.

Ziemlich gutes Beispiel für HRTF-Audio, produziert von QSound Labs:
https://www.youtube.com/watch?v=IUDTlvagjJA

Dolby Headphone, erzeugt aus DTS 5.1-Ton:
https://www.youtube.com/watch?v=kFzcNuGiEKE

von Bernd S. (bernds1)


Lesenswert?

Such mal nach dem Stichwort "Beamforming"
Und in folgendem PDF ist vieles erläutert:
"BeBeC_2008_HeilmannDoeblerMeyer.pdf" (Bitte selbst suchen, ist zu groß)

Oder auch im Dokument "2006_Euronoise_paper.pdf"

mfg Bernd

von Kai D. (Firma: Selbständiger Konstrukteur) (robokai)


Lesenswert?

Rbx schrieb:
> Wäre aber noch schöner, wenn es wirklich gut ginge. Oder eben Jagdschein
> machen, und das Wild jahrelang in der Kühltruhe verrotten lassen.
Falscher thread?

Gunnar F. schrieb:
> Ja. Nein. Einfach mal nachdenken.
Danke für diesen erhellenden Beitrag.

Mein Gedanke geht dahin, dass das Telefon richtungsempfindlich ist, beim 
Hineinsprechen. Durch Schwenken müsste es möglich sein, die Quelle zu 
orten.

von Rbx (rcx)


Lesenswert?

Kai D. schrieb:
> Mein Gedanke geht dahin, dass das Telefon richtungsempfindlich ist, beim
> Hineinsprechen. Durch Schwenken müsste es möglich sein, die Quelle zu
> orten.

Leg dein Smartie lieber mal in einen kleinen Eimer (leerer Abfalleimer 
oder so) hinein, und dann frag mal von da aus was dein Gegenüber am 
anderen Telefon hört.

von Gunnar F. (gufi36)


Lesenswert?

Kai D. schrieb:
> Mein Gedanke geht dahin, dass das Telefon richtungsempfindlich ist, beim
> Hineinsprechen. Durch Schwenken müsste es möglich sein, die Quelle zu
> orten.

Klar, das ist natürlich im Grundsatz richtig. Aber das Mikrofon dürfte 
eine Kugelcharakteristk haben, da kannst Du am Ende raten, wo der Schall 
NICHT her kommt. Mein Verständnis von Orten wäre anders. Handy-Mikros 
sind dafür gemacht, Sprache aufzunehmen. Sprache mit eher hohem Pegel.

von J. S. (engineer) Benutzerseite


Lesenswert?

Gunnar F. schrieb:
> Klar, das ist natürlich im Grundsatz richtig. Aber das Mikrofon dürfte
> eine Kugelcharakteristk haben,
Das haben die - mehr oder weniger. Da hat allerdings sofort seine 
Grenzen, wenn es irgendwo vertieft eingebaut ist. Dann entsteht einen 
Schalltrichter, der eine Amplitudenabhängigkeit von der Achse macht und 
auch noch einen Kammfilter generiert. Eine gewisse Abhängigkeit ist da 
definitiv gegeben.

Um damit aver einen schwenkbaren Sucher zu machen, müsste sicher noch 
ein richtiger Trichter drauf. Am Besten einen Parabolreflektor.

Bernd S. schrieb:
> Such mal nach dem Stichwort "Beamforming"
So in etwa. Braucht aber mindestens 2 Mikros. Mir ist kein Smartfone 
bekannt, dass ein Stereomikro hätte. Wäre allerdings leicht verbaubar, 
z.B. als XY. Für phasendetektion ist das Smartphone zu klein. Die Mikros 
sässen zu eng. Mit einem tablet von 30cm wiederum ginge das.

Kai D. schrieb:
> smart phone app gibt, die eine Schallrichtung
> erkennen kann?
Zusammen mit einem externen Stereomikro geht das mit jeder Audio-APP, 
die ein Goniometer intus hat. Man stellt die Schallrichtung auf Mono und 
orientiert das Mikro so, dass die Interferenz minimal wird.
Das ginge damit auch rein optisch ohne Signalverarbeitung.

von J. S. (engineer) Benutzerseite


Lesenswert?

Hmmm schrieb:
> Das Stichwort ist HRTF, dafür gibt es fertige Lösungen, z.B. Dolby
> Headphone.
Das war ja mal der Riesenschrei, hat sich aber nicht durchgesetzt. 3D 
Audio über Kopfhörer ist immer stark reduziert, u.a. da die benötigten 
Signal an das individuelle Ohr des Hörenden angepast sein müssten, was 
ja nicht geht.

Die meisten DAWs können soetwas produzieren. Es braucht aber immer einen 
mehrkanaligen Input, d.h. die Spiele müssten das bereitstellen.

Wenn man das aber hat, geht man besser über eine 7:1 Soundkarte raus und 
stellt Lautsprecher. Meine billige Soundblaster im Mix-PC von 2012 hatte 
das bereits drin. Die spätere "Z" kann das sogar auch mischen, glaube 
ich - ich nutze es aber nicht.

3D über Kopfhörer klappt bei Vielen nicht richtig, vor allem wenn sie 
asymmetrische Ohren / Gehörgänge haben, die Ohrmuscheln nicht der 
Durchschnittsform entsprechen, die man beim Erzeugen annimmt und auch 
wenn der Schädel stark vom Durchschnitt abweicht, weil man auch 
Schädelresonanzen und darüber eindringende Signalanteile hat, die das 
Gehirn verarbeitet.

Bei künstlich gemischten Signalen stimmt das alles nicht so richtig.

von Hmmm (hmmm)


Lesenswert?

J. S. schrieb:
> Das war ja mal der Riesenschrei, hat sich aber nicht durchgesetzt.

Das kann jede etwas bessere Soundkarte. Die wird dann vom System als 
5.1-Karte erkannt, und der Treiber macht daraus bei passender 
Konfiguration HRTF-Ton.

Manche Spiele haben auch eine Option, um selbst HRTF-Stereoton zu 
erzeugen.

J. S. schrieb:
> 3D
> Audio über Kopfhörer ist immer stark reduziert, u.a. da die benötigten
> Signal an das individuelle Ohr des Hörenden angepast sein müssten, was
> ja nicht geht.

Vielleicht sind meine Ohren recht standardkonform, aber meine 
Erfahrungen damit sind positiv. Ansonsten gibt es tatsächlich auch 
"Personalized HRTF", meistens wird dafür Bildmaterial von den Ohren 
verwendet:

https://www.genelec.com/aural-id

J. S. schrieb:
> Es braucht aber immer einen
> mehrkanaligen Input, d.h. die Spiele müssten das bereitstellen.

Ist Bestandteil von DirectX.

J. S. schrieb:
> Wenn man das aber hat, geht man besser über eine 7:1 Soundkarte raus und
> stellt Lautsprecher.

Es ist bei Multiplayer-Spielen bloss unpraktisch, wenn der eigene Ton 
ins Mikrofon plärrt.

von Rbx (rcx)


Lesenswert?

Hmmm schrieb:
> Es ist bei Multiplayer-Spielen bloss unpraktisch, wenn der eigene Ton
> ins Mikrofon plärrt.

Lästige Rückkopplung ist ja auch immer so eine Sache. Ich hatte 
spannenderweise das hier gefunden:
https://github.com/HungryDoctor/x3daudio1_7_hrtf

Jetzt bin ich mir nicht ganz sicher, ob das auch bei Linux/Wine 
funktioniert. Der Sound (bei Skyrim) ist ja schon ein Wackelkandidat.
- auf jedenfall gibt es ein Video zum Anhören - und das finde ich 
eigentlich sehr gut. Es ist ja auch so, dass sich die Ohren, bzw. das 
Ding dazwischen, sich ganz gut anpassen können.
Das heißt, ein besseres Urteil hat man vielleicht, wenn man 1 Woche 
Testing durch hat.
Das ist, na, besser ich denke, das müsste ganz ähnlich sein, wie beim 
Sehen (man sieht ja meistens mehr, wenn man öfter hinsieht) oder beim 
Lernen von neuen Fremdwörtern bei einem Thema. Während letzteres noch 
ganz gut nachvollziehbar ist, ist so ein förmlicher Geistermoment des 
Unbewussten eher weniger gut zu erklären.
-> es ist gut, wenn man auch hinhören will, im Sinne von 
Mustererkennung, die mit der Zeit besser wird.
Kann man nicht so gut erklären, wie das mit den neuen Fremdwörtern - 
jedenfalls hilft die Übung und der gute Wille.
(Außerdem (wenn es funktioniert) viel besser als gar nichts in dieser 
"Richtung") ;)

: Bearbeitet durch User
von J. S. (engineer) Benutzerseite


Lesenswert?

Hmmm schrieb:
> J. S. schrieb:
>> Es braucht aber immer einen
>> mehrkanaligen Input, d.h. die Spiele müssten das bereitstellen.
> Ist Bestandteil von DirectX.
Klar, aber wie gesagt, müssten es die Spiele auch nutzen und das 
Verrechnen zu einem 2-kanal-Ton ist schon bei Dolby eine massive 
Reduktion.

Ich habe die Thematik ja in jeder zweiten Tonproduktion vor Augen. 
Animationen werden ja auch schon lange mit Mehrkanalton gefahren, d.h. 
die Klangquellen tönen von dem Ort, wo sie stehen und die bewegte Kamera 
dient als Mikrofonposition. Das ist ein gewaltiger Unterschied ob man 
daraus ein 7.1 macht oder auf Kopfhörersignal umrechnen lässt.

Kein Vergleich. Eine ganze Reihe von Tonaufzeichnungssystemem und 
Mikrofonsystemem sind für HRTF- nicht nutzbar, weil deren Information 
völlig verfälscht wird. Daher muss man Stereo anders aufnehmen, als 
Surround und dies wiederum abgegrenzt von binaurelm Stereo. Mit Besten 
geht da immer noch mit einem Kunstkopf parallel zum anderen 
Stereosystem.


>> Wenn man das aber hat, geht man besser über eine 7:1 Soundkarte raus und
>> stellt Lautsprecher.
> Es ist bei Multiplayer-Spielen bloss unpraktisch, wenn der eigene Ton
> ins Mikrofon plärrt.
Das ist ein Argument. Die Frage wäre dann, ob dann jeder Spieler auch 
seinen eigenen Surround bekommt - er hat ja eine andere Posision.

von Rbx (rcx)


Lesenswert?

J. S. schrieb:
> Das ist ein Argument. Die Frage wäre dann, ob dann jeder Spieler auch
> seinen eigenen Surround bekommt - er hat ja eine andere Posision.

Wobei beim Multiplayer ganz andere Sachen im Vordergrund stehen, als 
wenn man offline in die virtuelle Welt lauschen möchte.
Aber es gibt ja auch PVP-Szenarien, wo sowas dann wieder wichtig ist. 
Das könnte man zumindest ähnlich wie Teamspeak als Vorraussetzung 
organisieren.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.