ich muss zwei Signale vergleichen um festzustellen dass sie gleich sind.
Das versuche ich unter Canape durchzuführen.
was ich mir überlegt habe, dass ich die zwei Signale von einander
subtrahiere? Im Canape gibt's dafür eine fertige Funktion. das Problem
ist, ich kriege als Ergebnis kein sauberes Signal, da die zwei Signale
manchmal zeitverschoben sind oder manchmal gibt Abweichungen(kleine
Abweichungen sind nicht relevant) im Amplituden . Ich wollte als
Ergebnis einfach ein Peak bekomment wo die Signale größe Unterschied
haben
Deswegen wollte ich eine neue Funktion schreiben, die diesen Vergleich
durchführen kann. kann man das Problem auch mit der Autokorrolation
lösen?
oder hat jemand hier eine andere Idee?
Die Signale die ich untersuchen muss, können periodische Signale oder
nicht periodische Signale sein
Gruß Fabian
bzw. Kreuzkorrelation
beide Signale werden zu jeder "Zeitverschiebung" miteinander
multipliziert und dann integriert. Dort wo das Ergebnis am größten ist,
sind die Signale am ähnlichsten bzw. gleich.
Hat den Vorteil dass du nicht von der Amplitude des zweiten Signals
abhängig bist. So kann man z.B. auch noch das Echo eines Signals quasi
aus dem Rauschen detektieren.
Timmo H. schrieb:> bzw. Kreuzkorrelation> beide Signale werden zu jeder "Zeitverschiebung" miteinander> multipliziert und dann integriert. Dort wo das Ergebnis am größten ist,> sind die Signale am ähnlichsten bzw. gleich.
ich wollte eigentlich ein Peak bekommen, da wo die Signale net gleich
sind(unterschiedliche Amplituden, zeitverschiebung) kleine Abweichungen
sollen dann rausgefiltert werden
und so kann man schnell an der Stelle wo die beide Signale
unterschiedlich sind untersuchen wo es dran lag
Timmo H. schrieb:> Naja umgedreht bekommst du natürlich einen kleinen Wert wo die Signale> am wenigsten Deckungsgleich sind.
ja so werde ich ganz viel Peaks bekommen. Ich will den Bereich
untersuchen, wo die Signale unterschiedlich sind
Fabian schrieb:> Timmo H. schrieb:>> Naja umgedreht bekommst du natürlich einen kleinen Wert wo die Signale>> am wenigsten Deckungsgleich sind.>> ja so werde ich ganz viel Peaks bekommen. Ich will den Bereich> untersuchen, wo die Signale unterschiedlich sind
Hä?
Kannst du nicht mal irgendwie Signalbeispiele anhängen, damit man
versteht, was du willst?
Du schreibst ganz oben, dass du Signale auf Gleichheit überpüfen willst,
dann wieder, dass du die ungleichen Stellen untersuchen willst. Was
willst du eigentlich mit den ungleichen Stellen machen?
Gun B. schrieb:> Was> willst du eigentlich mit den ungleichen Stellen machen?
die will ich ja untersuchen, warum sie unterschiedlich ist. Die Signale
werden im Canape dargestellt.
Damit ich mir die Arbeit sparen kann, wollte ich eine neue Funktion
schreiben die mir eine Signal zurück gibt. Das Ergebniss Signal zeigt
mir dann wo die zwei Signale unterschiedlich sind
Fabian schrieb:> ich wollte eigentlich ein Peak bekommen, da wo die Signale net gleich> sind(unterschiedliche Amplituden, zeitverschiebung) kleine Abweichungen> sollen dann rausgefiltert werden> und so kann man schnell an der Stelle wo die beide Signale> unterschiedlich sind untersuchen wo es dran lag
Wenn ich deine Aufgabe jetzt richtig verstehe, dann musst du aber immer
noch die Phasenverschiebung suchen, bei der die beiden Signale am
ähnlichsten sind -> Kreuzkorrelation.
Die Kreuzkorrelation sagt dir, wie du die Signale deckungsgleich
bekommst, wenn man nicht zu genau hinschaut. Und das, was dann noch an
Unterschieden bleibt, das ist das was dich interessiert.
@Fabian:
Siehe Beispiel im Anhang.
Dort, wo beide Signale am ähnlichsten sind, ist ein Maximum, dort wo sie
sich weniger oder gar nicht ähnlich sind, folgen minimale Werte. Davon
gibt es nicht "einen" Wert, sondern eine ganze Folge, ist ja auch
logisch.
Du musst die Kreuzkorrelation verstehen lernen, dann nach der Lösung
deines Problems suchen.
Canape? Von Vector? Bei mir 9 Jahre her. Meinst du aber, oder?
Gun B. schrieb:> Canape? Von Vector? Bei mir 9 Jahre her. Meinst du aber, oder?
ja Canape von Vector, da wollte ich eine neue Funktion schreiben, die
mir auswerten kann wo die zwei Signale unterschiedlich sind
Fabian schrieb:> Gun B. schrieb:>> Canape? Von Vector? Bei mir 9 Jahre her. Meinst du aber, oder?>>> ja Canape von Vector, da wollte ich eine neue Funktion schreiben, die> mir auswerten kann wo die zwei Signale unterschiedlich sind
OK,
ist wie gesagt lange her, kann mich an CAPL als spezifische
Programmiersprache erinnern.
Zum Vergleich zweier Signale bietet sich im Zeitbereich auf jeden Fall
die Korrelation an und sollte auch in CAPL leicht zu implementieren
sein.
Die ungleichen Stellen siehst du ja im Ergebnis in obigem Beispiel an
den Stellen, wo die Samples null sind.
Falls du es noch gebrauchen kannst:
Das Ergebnis (3.Samplediagramm) erhälst du anschaulich nach der
Papierstreifenmethode: du stellst dir das 2.te Samplediagramm über das
erste verschoben vor:
Samples mit gleichem Index jeweils multiplizieren, dann alle Produkte
summieren, dann verschieben und das ganze von vorne, bis der Streifen
"hinten angekommen" ist.
So ergibt sich das 3.Bild als Ergebnis.
Alle Stellen gleich Null sind Stellen maximaler Ungleichheit.
So, muss nu weitermachen.
Gruß
Gunb