J'ai utilisé à la fois la corrélation et la cohérence comme mesures de corrélation entre les signaux. Je pensais qu'une approche temps-fréquence me donnerait le meilleur de ces mondes.
Ma question est de savoir si ces données supplémentaires ajoutent suffisamment à l'image globale du signal pour justifier l'augmentation des coûts de calcul associée à la réalisation des transformées en ondelettes dans le cadre du calcul?
Référence: un article d' ArXiv : "Une technique de corrélation croisée dans le domaine des ondelettes pour la détection des ondes gravitationnelles stochastiques" par S.Klimenko, G.Mitselmakher, A.Sazonov
coherence
correlation
wavelet
jonsca
la source
la source
Réponses:
Tout d'abord, vous devez utiliser l'outil approprié pour le travail. Corrélation vs cohérence vs corrélation basée sur les ondelettes sont toutes des choses différentes, donc cette question est un peu comme demander "Quel est le meilleur? Tournevis ou marteaux?" Cela dépend de ce que vous essayez de faire, et si vous vous souciez de la similitude dans le temps, les spectres de fréquence, ou les deux.
Deuxièmement, je n'ai qu'une compréhension minimale des ondelettes, mais votre supposition selon laquelle les ondelettes nécessitent plus de calculs pourrait être erronée. La transformation de Fourier rapide prend opérations , tandis que la transformation d'ondelette rapide prend O ( n ) . Ainsi, la méthode des ondelettes pourrait en fait nécessiter moins de calculs, selon que vous pouvez utiliser les informations que vous en retirez.O ( n logn ) O ( n )
Empiriquement , produisant n sorties à partir de n entrées réelles, la transformation en ondelettes à plusieurs niveaux dans PyWavelets devient plus rapide que la FFT de NumPy lorsque n est supérieur à environ 4096.
toutefois
wavedec()
serait considéré comme une transformation rapide en ondelettes. Ils utilisent l'abréviation DWT dans leur documentation. Haar DWT et FWT sont-ils la même chose?Le point principal est que le temps de calcul est au moins à peu près similaire pour les deux, donc je ne pense pas que vous devriez vous en soucier lorsque vous décidez lequel utiliser.
la source
C'est très tard, mais ça vaut peut-être la peine quand même ...
Le DWT, ou transformée en ondelettes discrètes, ne calcule que des échelles discrètes, tout comme la FFT ne calcule que des fréquences discrètes. Et le commentaire que @Spacey a fait ci-dessus que le DWT n'est pas invariant à la traduction est correct. Cela se produit car à chaque étape du DWT, le signal est décimé par deux. Cela rend le DWT plus rapide que le FFT,O ( N) , mais détruit également la translation-invariance.
Donc, utiliser le DWT pour examiner le plan d'échelle de temps ne vous mènera pas très loin. Cela est particulièrement vrai parce que les échelles "visitées" par le DWT sont séparées par des facteurs de deux et sont beaucoup moins denses que la couverture que vous pouvez obtenir dans le plan temps-fréquence avec la FFT. Vous devez utiliser une transformée en ondelettes invariante par rapport à la traduction, parfois appelée transformée en ondelettes non décimée , parmi de nombreux autres noms. Même alors, vous avez encore la rareté des échantillons d'échelle calculés à affronter.
En outre, il est souvent souhaitable de considérer les emplacements dans le plan d'échelle de temps comme ayant une densité d'énergie. Cette approche est facilitée par l'utilisation d'une ondelette analytique, telle que l'ondelette Morlet complexe mentionnée précédemment. Une méthode qui équilibre la translation-invariance et l'analyticité par rapport au temps de calcul est la transformée en ondelettes à double arbre complexe . Faire la même chose dans le plan temps-fréquence est peut-être plus simple: faites d'abord une transformée de Hilbert approximative sur votre signal en effectuant une FFT, en mettant à zéro toutes les fréquences négatives, puis en effectuant un IFFT.
Si l'intuition selon laquelle la corrélation recherche la similitude dans le temps et la cohérence dans la similitude en fréquence est correcte, alors vous feriez mieux de vous en tenir au plan temps-fréquence. Il est certainement plus simple à calculer et il est facile d'affiner l'échantillonnage le long de l'axe des fréquences. Aucune des approches mentionnées ci-dessus ne concerne l'échantillonnage de l'axe de l'échelle de manière plus dense. Pour ce faire, vous devez à peu près aller à la transformation en ondelettes continue , bien qu'il puisse y avoir quelque chose d'autre que je ne sache pas. Si vous avez Matlab, suivez le lien ci-dessus et accédez-y.
la source