Forum: Digitale Signalverarbeitung / DSP / Machine Learning Kohärenz zweier Signale


von Detlef E. (the_sugar_c)


Lesenswert?

Hallo leute gibt es irgendein Programm das die Kohärenz zweier signale 
ausrechnet. Komm mit der formel in wiki nicht klar und Beispiele im netz 
gibt es auch keine. Habt ihr zufällig noch eine Beispielrechnung ? Oder 
kennt ihr die Befehle für matlab.


Danke im Voraus

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Heisst das nicht üblicherweise Kreuzkorellation?

http://de.wikipedia.org/wiki/Kreuzkorrelation
Anscheinend ist das ist noch eine Funktion der Phasenverschiebung

http://de.wikipedia.org/wiki/Koh%C3%A4renz_%28Signalanalyse%29
Bei Kohärenz kommt eine einzige Zahl heraus

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

1
% Generate some signals
2
s = randn(1,20000);
3
x1 = s;
4
x2 = fftfilt([1 2 3 4],s) + randn(size(s));
5
6
% Short-Time Fourier Transform
7
X1 = spectrogram(x1,hamming(1024),512);
8
X2 = spectrogram(x2,hamming(1024),512);
9
10
% Estimate auto- and cross-PSDs
11
Sx1x1 = mean(abs(X1).^2,2);
12
Sx2x2 = mean(abs(X2).^2,2);
13
Sx1x2 = mean(X1.*conj(X2),2);
14
15
% Compute coherence estimate
16
C = Sx1x2./sqrt(Sx1x1.*Sx2x2);
17
18
% Plot magnitude squared coherence
19
plot(abs(C).^2)

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Wieder was gelernt
Die Abkürzung PSD kannte ich noch nicht
http://de.wikipedia.org/wiki/Spektrale_Leistungsdichte

"Wird die spektrale Leistungsdichte über dem Frequenzspektrum angegeben, 
entsteht ein Leistungsdichtespektrum (LDS) oder Autoleistungsspektrum 
(engl. Power-Spectral-Density (PSD))"

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Und wozu kann man die Kohärenz praktisch benutzen?
Als Ist-Wert einer Regelschleife?

PS: einige Variationen zum bekannten Thema "Korrelation von 
Storchpopulation und Geburtenrate":
http://www.tylervigen.com/
Der Autor hat einen etwas morbiden Humor.
z.B. "Amerikanische Forschungsausgaben und Selbstmordrate durch Erhängen 
korrellieren zu 99,2 Prozent".

: Bearbeitet durch User
von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Christoph Kessler (db1uq) schrieb:
> Und wozu kann man die Kohärenz praktisch benutzen?

Die Kohärenz ist ein normiertes Maß für die lineare Abhängigkeit 
zwischen zwei Signalen, ähnlich dem Korrelationskoeffizienten, aber 
frequenzabhängig. Anwendungen gibt es z.B. in der Akustik, um den Grad 
der Diffusität eines Schallfeldes bei verschiedenen Frequenzen zu 
messen.

: Bearbeitet durch Admin
von Detlef E. (the_sugar_c)


Lesenswert?

Da steht ja auch noch, dass man für die Leistungsspektren (Kreuleistungs 
und autoleistungs) die gemittelten werte nehmen soll. Mit wieviel werten 
soll ich die denn mitteln. Alle können es ja nicht sein, dann hätte ich 
ja im endeffekt nur ein Wert für die Koharenzfunktion.


Danke im voraus

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Die Leistungsdichtespektren musst du durch Mittelung über die Zeit 
schätzen (z.B. rekursive Glättung oder Welch-Methode), nicht über die 
Frequenz. Wie stark diese Glättung sein muss, das hängt von der Art des 
Signals ab. Wenn das Signal stationär ist, so lange wie möglich.

: Bearbeitet durch Admin
von Mike (Gast)


Lesenswert?

Christoph Kessler (db1uq) schrieb:
> Und wozu kann man die Kohärenz praktisch benutzen?

Bei Lasern brauchst du die für interferometrische Anwendungen. Da wird 
oft auch noch die Kohärenzlänge benötigt, um z.B. bei Hologrammen den 
Entfernungsbereich zu charakterisieren.
http://de.wikipedia.org/wiki/Koh%C3%A4renzl%C3%A4nge

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.