|
|
für die i-te Amplitude die zugehörige Frequenz und Phase |
|
josekamara |

Forum-Meister
|
 |
Beiträge: 529
|
 |
|
 |
Anmeldedatum: 26.04.08
|
 |
|
 |
Wohnort: München
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 06.11.2008, 13:44
Titel: für die i-te Amplitude die zugehörige Frequenz und Phase
|
 |
Hallo,
habe bitte eine Frage, weiß jemand wie man aus einem gegebenem Signal (Amplitude, Zeit) für jede i-te Amplitude ihre zugehörige i-te Frequenz und Phase direkt berechnen kann.
Ich freue mich auf jeden Vorschlag.
Danke,
Jose
_________________
Simulation
|
|
|
|
|
derOli |

Forum-Meister
|
 |
Beiträge: 579
|
 |
|
 |
Anmeldedatum: 19.03.08
|
 |
|
 |
Wohnort: Leipzig
|
 |
|
 |
Version: 2010a
|
 |
|
|
 |
|
Verfasst am: 06.11.2008, 16:35
Titel:
|
 |
Könntest du das etwas genauer erklären? Was heißt den für jede Amplitude die Frequenz und Phase? Wenn du ein Signal im Zeitbereich hast (Zeit, Amplitude) kann doch ein einzelnes Signal daraus keine Frequenz und Phase haben? Oder meinst du das anders?
Viele Grüße,
der Oli
|
|
|
josekamara |
Themenstarter

Forum-Meister
|
 |
Beiträge: 529
|
 |
|
 |
Anmeldedatum: 26.04.08
|
 |
|
 |
Wohnort: München
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 06.11.2008, 18:22
Titel:
|
 |
Also ich will eigentlich eine additive synthese zur Verklanglichung eines Signals a(t) benutzen, aus der Literatur konnte ich herausnehmen dass es mit dieser Formel geht:
s(t) = Sum ( a_i(t) * sin (2 * pi * f_i * t + phase_i);
Also ich will aus dem Signal a(t) anders formulieren, und für jede Amplitude a_i des Signals a(t) ihre zugehörige Frequenz berechnen.
Danke.
_________________
Simulation
|
|
|
derOli |

Forum-Meister
|
 |
Beiträge: 579
|
 |
|
 |
Anmeldedatum: 19.03.08
|
 |
|
 |
Wohnort: Leipzig
|
 |
|
 |
Version: 2010a
|
 |
|
|
 |
|
Verfasst am: 06.11.2008, 20:25
Titel:
|
 |
Ich verstehe immernoch nicht wie das funktionieren soll. Steht a_i wirklich für ein Sample von a(t) oder vielleicht für ein frame bestehend aus mehreren samples? Vielleicht kannst du mir ja mal die Buchseite per PN oder Email schicken. Wenn a(t) ein Signal ist, zB ein Soundsignal verstehe ich das nicht.
Viele Grüße,
der Oli
|
|
|
dib0r |

Forum-Guru
|
 |
Beiträge: 413
|
 |
|
 |
Anmeldedatum: 09.05.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 07.11.2008, 10:06
Titel:
|
 |
|
 |
|
Hallo,
so wie dies verstehe, versucht man mit der obgenannten Formel ein Signal nachzubilden. Dabei ist s(t) das nachgebildete Signal, a_i(t) ein zeitabhängiger Verstärkungsfaktor, und der Rest sollte bekannt sein. Da gehts eigentlich nur darum, dass man periodische Signal synthetisieren kann, über diese Formel, wobei in der Theorie (z.B. Rechtecksignal) i natürlich auch unendlich groß sein kann.
Unterschiedliche Parameter (besonders der Verstärkungsfaktor müsste da viel ausmachen) führen dann zu unterschiedlichen Klangfarben, d.h. ein gewisser Parametersatz simuliert z.B. eine Trompete. Soviel zu dem was ich glaube zu meinen verstanden zu haben.
Nunja, da das Ding aber additive synthesis heisst, geht das in die Richtung Synthese, d.h. alle Parameter auf der rechten Seite sollten bekannt sein. Ich glaube auch nicht, dass es möglich ist, aus einem Audiosignal durch irgendein Verfahren, den Parametersatz zu erhalten. Die Trennung in einzelne Frequenzen ist afaik (noch) nicht möglich.
Das einzige was mir jetzt spontan einfallen würde, ist eine zeitliche Fensterung, dann eine FFT darüber und dann mehrere Bandpässe mit den prominenten Frequenzen darüber laufen zu lassen.
EDIT: Anscheined funktioniert es doch (laut SPEAR - siehe Wikipedia) - vermutlich so ähnlich wie oben geschrieben. Lies dir mal http://www.klingbeil.com/papers/spearfinal05.pdf durch, da sollte das Verfahren erklärt sein.
MfG
|
|
|
derOli |

Forum-Meister
|
 |
Beiträge: 579
|
 |
|
 |
Anmeldedatum: 19.03.08
|
 |
|
 |
Wohnort: Leipzig
|
 |
|
 |
Version: 2010a
|
 |
|
|
 |
|
Verfasst am: 07.11.2008, 11:43
Titel:
|
 |
Ok, mit dem was dibor geschrieben hat und der PN wo die Literatur zitiert wird. Macht das Ganze Sinn. Die Umkehrung ist zu einem gewissen Grad machbar. Allerdings wie dibor schon gesagt hat müsste man das Ausgangssignal dazu framen, dann könnte man für jedes Frame die Summe der Amplitude, Frequenz und Phase bestimmen. Um die Anzahl zu begrenzen wird oft ein peak picking Algorithmus eingesetzt und auch die Maximal Anzahl von den resultierenden Tripeln wird begrenzt. (Vergleich McAulay auf 40 Triple pro Frame). Allerdings gibt es noch ein paar Tricks um die Frameübergänge smoother zu machen. Aber in deinem Fall reichen denke ich mal überlappende Frames aus.
Ich hoffe wir konnten dir da helfen. Ich war bloß Anfangs sehr verwirrt wie du einem einzigen Sample eines Soundsignals jeweils eine Amplitude, Frequenz und Phase zuordnen willst. Die Frequenz entsteht ja erst wenn man mehrere Samples betrachtet.
Viele Grüße,
der Oli
|
|
|
josekamara |
Themenstarter

Forum-Meister
|
 |
Beiträge: 529
|
 |
|
 |
Anmeldedatum: 26.04.08
|
 |
|
 |
Wohnort: München
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 07.11.2008, 17:41
Titel:
|
 |
Ich danke Euch für Euere Vorschläge und Erklärung, ich werde mich damit noch tiefer befassen und hoffe dass es was wird. Aber ich denke die Implementierung wird keine einfache Sache sein.
Danke nochmals,
Beste Grüße,
Jose
_________________
Simulation
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|