2016-04-20 2 views
1

J'essaie de passer 2000 robinets au filtre fft dans gnuradio. Comment puis-je lire le fichier et le transmettre au filtre fft tapé?Passer les robinets au filtre en utilisant le fichier dans gnuradio

+0

2000 Les taraudages sont ** massifs **. Dans 90% des cas où j'ai demandé aux gens s'ils avaient réellement besoin d'un filtre aussi massif, il s'est avéré qu'ils ne l'avaient pas fait, mais ils ont simplement généré un filtre beaucoup plus strict que l'application ne l'exigeait réellement. –

Répondre

0

Cela ne peut pas être fait. Cependant, vous pouvez utiliser les variables Filter Taps disponibles dans le GRC pour produire les prises souhaitées lors de l'initialisation de votre diagramme de flux. Passez le ID de la variable au champ taps de votre bloc FFT filter et vous avez terminé. Si vos taps sont très spécifiques et ne peuvent pas être construits à partir de la variable des taps de filtre disponibles, vous pouvez éventuellement éditer le fichier python généré et utiliser un tableau python pour les stocker.

EDIT: Comme @Marcus l'a noté, vous pouvez utiliser numpy pour charger des prises à partir d'un fichier. Utilisez simplement l'élément Import du GRC pour importer numpy, puis en utilisant un élément Variable, utilisez numpy.fromfile('filename') pour charger les robinets souhaités.

+0

Pas tout à fait d'accord avec cela; on pourrait penser à une solution de contournement qui utilise un bloc 'import numpy', puis utiliser' numpy.fromfile (...) 'dans le champ taps! –

+0

Oui, bonne solution. Cependant, je pense qu'il a juste besoin des moyens déjà existants pour produire les robinets. 2000 robinets est bien trop grand pour être pratique. – Manos

+0

Re: 2000 robinets. Vrai. Mais, il peut y avoir un usage particulier qui nécessite un filtre spécifique - et honnêtement, si vous avez le temps ou la puissance du processeur, les filtres FFT multithread font un coup de poing et permettent de traiter ces longueurs de filtre - si la stabilité numérique permet (FFT est assez stable, cependant). –