Im codage quelque chose au moment où Im prendre un tas de valeurs au fil du temps d'une boussole matérielle. Cette boussole est très précise et mise à jour très souvent, avec le résultat que si elle jiggles légèrement, je me retrouve avec la valeur étrange qui est sauvagement incompatible avec ses voisins. Je veux lisser ces valeurs. Après avoir fait quelques lectures, il semblerait que ce que je veux est un filtre passe-haut, un filtre passe-bas ou une moyenne mobile. Moyenne mobile je peux descendre avec, il suffit de garder un historique des dernières 5 valeurs ou autre, et d'utiliser la moyenne de ces valeurs en aval dans mon code où j'ai été une fois juste en utilisant la valeur la plus récente. Cela devrait, je pense, lisser ces jiggles joliment, mais il me semble que son probablement tout à fait inefficace, et c'est probablement l'un de ces problèmes connus aux programmeurs appropriés à qui theres une solution vraiment ordonnée Clever Math. Je suis, cependant, l'un de ces programmateurs autodidactes horribles sans un morceau de l'éducation formelle dans quelque chose même vaguement liés à CompSci ou Math. La lecture autour d'un peu suggère que cela peut être un filtre passe-haut ou bas, mais je ne peux pas trouver quoi que ce soit qui explique en termes compréhensibles à un hack comme moi ce que l'effet de ces algorithmes serait sur un tableau de valeurs, travaux. La réponse donnée ici. Par exemple, techniquement répond à ma question, mais seulement en termes compréhensibles à ceux qui seraient probablement déjà savoir comment résoudre le problème. Ce serait une personne très belle et intelligente en effet qui pourrait expliquer le genre de problème, c'est, et comment les solutions de travail, en termes compréhensibles pour un diplômé Arts. Si votre moyenne mobile doit être longue afin d'obtenir le lissage requis, et que vous n'avez pas vraiment besoin d'une forme particulière de noyau, alors vous êtes mieux si vous utilisez une moyenne mobile exponentiellement en décomposition: où vous Choisissez minuscule pour être une constante appropriée (par exemple, si vous choisissez le minuscule 1- 1N, il aura la même quantité de moyenne que la fenêtre de taille N, mais différemment différemment sur les points plus anciens). Quoi qu'il en soit, puisque la prochaine valeur de la moyenne mobile ne dépend que de la précédente et vos données, vous n'avez pas à garder une file d'attente ou quoi que ce soit. Et vous pouvez penser à cela comme faire quelque chose comme, Eh bien, Ive a obtenu un nouveau point, mais je ne fais pas vraiment confiance, donc Im va garder 80 de ma vieille estimation de la mesure, et ne font confiance à ce nouveau point de données 20. Thats À peu près la même chose que de dire, Eh bien, je ne fais confiance à ce nouveau point 20, et Ill utiliser 4 autres points que je fais confiance à la même quantité, sauf qu'au lieu de prendre explicitement les 4 autres points, vous êtes en supposant que la moyenne que vous avez fait la dernière fois Était raisonnable, donc vous pouvez utiliser votre travail précédent. Répondre Sep 21 10 at 14:27 Hey, je sais que c'est 5 ans de retard, mais merci pour une réponse géniale. I39m travaillant sur un jeu où le son change en fonction de votre vitesse, mais en raison de l'exécution du jeu sur un ordinateur slow-ass, la vitesse fluctuerait sauvagement, ce qui était bien pour la direction, mais super ennuyeux en termes de son. C'était une solution vraiment simple et bon marché pour quelque chose que je pensais être un problème vraiment complexe. Ndash Adam Mar 16 15 at 20:20 Si vous essayez de supprimer la valeur impair occasionnelle, un filtre passe-bas est le meilleur des trois options que vous avez identifié. Les filtres passe-bas permettent des changements à faible vitesse tels que ceux causés par la rotation d'une boussole à la main, tout en rejetant des changements à grande vitesse tels que ceux provoqués par des bosses sur la route, par exemple. Une moyenne mobile ne sera probablement pas suffisante, car les effets d'un seul flip dans vos données affecteront plusieurs valeurs ultérieures, selon la taille de votre fenêtre de moyenne mobile. Si les valeurs impaires sont facilement détectées, vous pouvez même être mieux avec un algorithme de suppression de glitch qui les ignore complètement: Voici un graphique guick à illustrer: Le premier graphe est le signal d'entrée, avec un glitch désagréable. Le deuxième graphique montre l'effet d'une moyenne mobile de 10 échantillons. Le graphe final est une combinaison de la moyenne de 10 échantillons et de l'algorithme de détection de glitch simple représenté ci-dessus. Lorsque le glitch est détecté, la moyenne de 10 échantillons est utilisée au lieu de la valeur réelle. Moyenne mobile, je peux descendre avec. Mais il me semble que son probablement tout à fait inefficace. Theres vraiment aucune raison qu'une moyenne mobile devrait être inefficace. Vous conservez le nombre de points de données que vous voulez dans un tampon (comme une file d'attente circulaire). Sur chaque nouveau point de données, vous générez la valeur la plus ancienne et soustrayez-la d'une somme, puis appuyez sur la plus récente et ajoutez-la à la somme. Donc, chaque nouveau point de données implique vraiment seulement un poppush, un ajout et une soustraction. Votre moyenne mobile est toujours cette somme décalage divisée par le nombre de valeurs dans votre tampon. Il devient un peu plus délicat si vous recevez des données simultanément à partir de plusieurs threads, mais puisque vos données proviennent d'un périphérique matériel qui me semble très douteux. Oh et aussi: horribles programmeurs autodidactes se réunissent) La moyenne mobile semblait inefficace pour moi parce que vous devez stocker un tampon de valeurs - mieux faire juste quelques Clever Maths avec votre valeur d'entrée et la valeur de travail courante Je pense que la moyenne mobile exponentielle travaux. Une optimisation que j'observe pour ce type de moyenne mobile implique l'utilisation d'un ampli de files d'attente de longueur fixe, un pointeur vers l'endroit où vous vous trouvez dans cette file d'attente, et juste d'envelopper le pointeur autour (avec ou un if). Voila Pas cher pushpop. Puissance pour les amateurs, le frère ndash Henry: Pour une moyenne mobile straight-up vous avez besoin de la mémoire tampon simplement pour que vous sachiez ce que la valeur se fait sauter lorsque la prochaine valeur obtenir poussé. Cela dit, l'ampli de queue de longueur fixe, un pointeur que vous décrivez est exactement ce que je voulais dire par file d'attente quotcirculaire. C'est pourquoi je disais que ce n'est pas efficace. Qu'est-ce que vous pensez que je voulais dire Et si votre réponse est quotan tableau qui décale ses valeurs sur chaque suppression indexée (comme std :: vector en C). Je ne sais pas sur AS3, mais un programmeur Java a obtenu des collections comme CircularQueue à son disposition (I39m pas un Java développeur donc I39m sûr il ya de meilleurs exemples là-bas that39s juste ce que j'ai trouvé à partir d'une recherche rapide Google), qui implémente précisément la fonctionnalité we39re parler. Je suis assez convaincu que la majorité des langages de niveau moyen et bas avec des bibliothèques standard ont quelque chose de similaire (par exemple dans QueueltTgt). Quoi qu'il en soit, j'étais moi-même la philosophie. tout est pardonné. Ndash Dan Tao Sep 22 10 at 12:44 Une moyenne mobile exponentiellement en décomposition peut être calculée à la main avec seulement la tendance si vous utilisez les valeurs appropriées. Voir fourmilab. chhackdiete4 pour une idée sur la façon de le faire rapidement avec un stylo et du papier si vous cherchez exponentiellement lissée moyenne mobile avec 10 lissage. Mais puisque vous avez un ordinateur, vous voulez probablement faire le décalage binaire plutôt que le décalage décimal) De cette façon, tout ce que vous avez besoin est une variable pour votre valeur actuelle et une pour la moyenne. La moyenne suivante peut alors être calculée à partir de cela. Il ya une technique appelée une porte de gamme qui fonctionne bien avec des échantillons parasites faible occurrence. En supposant l'utilisation de l'une des techniques de filtrage mentionnées ci-dessus (moyenne mobile, exponentielle), une fois que vous avez suffisamment d'historique (une constante de temps), vous pouvez tester le nouvel échantillon de données entrantes pour le caractère raisonnable avant d'être ajouté au calcul. Une certaine connaissance du taux de changement de signal maximal raisonnable est nécessaire. L'échantillon brut est comparé à la valeur lissée la plus récente et si la valeur absolue de cette différence est supérieure à la plage autorisée, cet échantillon est rejeté (ou remplacé par une certaine heuristique, par exemple une prédiction basée sur la différence de pente ou la tendance Valeur de prédiction du double lissage exponentiel) Répondue Apr 30 16 à 6: 56Lecture 12: Filtrage Sujets couverts: Relation à la propriété de convolution de la transformée de Fourier Filtres sélectifs de fréquence idéaux et non idéaux: domaine fréquentiel et domaine temporel Fréquence temps continu Filtres sélectifs décrits par les équations différentielles Filtres passe-bas et passe-haut RC Filtres discrets à fréquence discrète sélectionnés par équations de différence Filtres à moyenne mobile Filtres récursifs à temps discret Démonstration: un regard sur le filtrage dans une salle de contrôle audio commerciale. Instructeur: Prof. Alan V. Oppenheim Lecture 1: Introduction Leçon 2: Signaux et Syst. Conférence 3: Signaux et Syst. Conférence 4: Convolution Lecture 5: Propriétés de Li. Conférence 6: Systèmes Represen. Leçon 7: Temps continu. Leçon 8: Temps continu. Conférence 9: Fourier Transfor. Lecture 10: Temps discret F. Lecture 11: Temps discret F. Lecture 12: Filtrage Lecture 13: Temps continu. Conférence 14: Démonstration o. Lecture 15: Discret-Temps M. Lecture 16: Échantillonnage Lecture 17: Interpolation Lecture 18: Discret-Temps P. Lecture 19: Discret-Temps S. Lecture 20: Laplace Tra. Lecture 21: Temps continu. Conférence 22: La Conférence z-Transformer 23: Cartographie Continue. Conférence 24: Butterworth Fil. Lecture 25: Feedback Lecture 26: Feedback Exampl. Ressources associées Le contenu suivant est fourni sous une licence Creative Commons. Votre soutien aidera MIT OpenCourseWare continuer à offrir des ressources pédagogiques de haute qualité gratuitement. Pour faire un don ou voir des documents supplémentaires provenant de centaines de cours MIT, visitez MIT OpenCourseWare à ocw. mit. edu. PROFESSEUR: En discutant les transformées de Fourier en temps continu et en temps discret, nous avons développé un certain nombre de propriétés importantes. Deux facteurs particulièrement importants, comme je l'ai mentionné à l'époque, sont la propriété de modulation et la propriété de convolution. A partir de la prochaine conférence, celle qui suit celle-ci, bien être de développer et d'exploiter certaines des conséquences de la propriété de modulation. Dans la conférence d'aujourd'hui, j'aimerais revoir et développer la notion de filtrage, qui, comme je l'ai mentionné, s'écoule plus ou moins directement à partir de la propriété de convolution. Pour commencer, permettez-moi juste d'examiner rapidement ce qu'est la propriété convolution. Tant pour le temps continu que pour le temps discret, la propriété de convolution nous dit que la transformée de Fourier de la convolution de deux fonctions temporelles est le produit des transformées de Fourier. Or, ce que cela signifie en termes de filtres linéaires invariants dans le temps, puisque nous savons que dans le domaine temporel la sortie d'un filtre linéaire invariant dans le temps est la convolution de l'entrée et de la réponse impulsionnelle, elle dit essentiellement alors dans le domaine fréquentiel Que la transformée de Fourier de la sortie est le produit de la transformée de Fourier de la réponse impulsionnelle, à savoir la réponse en fréquence, et la transformée de Fourier de l'entrée. Ainsi, la sortie est décrite à travers ce produit. Maintenant, rappelez-vous aussi qu'en développant la transformée de Fourier, j'ai interprété la transformée de Fourier comme l'amplitude complexe d'une décomposition du signal en termes d'un ensemble d'exponentielles complexes. Et la réponse en fréquence ou la propriété de convolution, en effet, nous dit comment modifier les amplitudes de chacune de ces exponentielles complexes lorsqu'elles traversent le système. Maintenant, cela a conduit à la notion de filtrage, où le concept de base était que puisque nous pouvons modifier les amplitudes de chacun des composants exponentiels complexes séparément, nous pouvons, par exemple, conserver certains d'entre eux et éliminer totalement d'autres. Et c'est la notion de base du filtrage. Ainsi, comme vous le rappelez-vous, tout d'abord la notion en temps continu d'un filtre idéal, par exemple, j'illustre ici un filtre passe-bas idéal où nous passons exactement des composantes de fréquence dans une bande et rejetons les composantes de fréquence dans une autre bande. La bande étant passée, bien sûr, appelée bande passante, et la bande rejetée comme bande d'arrêt. J'ai illustré ici un filtre passe-bas. Nous pouvons, bien sûr, rejeter les basses fréquences et conserver les hautes fréquences. Et cela correspond alors à un filtre passe-haut idéal. Ou nous pouvons simplement conserver les fréquences au sein d'une bande. Et donc je montre ci-dessous ce qui est communément appelé un filtre passe-bande. Maintenant, c'est ce que les filtres idéaux ressemblaient pour le temps continu. Pour le temps discret, nous avons exactement la même situation. A savoir, nous avons un filtre passe-bas temps discret idéal, qui passe exactement les fréquences qui sont les basses fréquences. Basses fréquences, bien sûr, étant autour de 0, et en raison de la périodicité, également autour de 2pi. Nous montrons également un filtre passe-haut idéal. Et un filtre passe-haut, comme je l'ai indiqué la dernière fois, passe les fréquences autour de pi. Et finalement, en dessous, je montre un filtre passe-bande idéal passant des fréquences quelque part dans la plage entre 0 et pi. Et rappelez-vous aussi que la différence fondamentale entre le temps continu d'un temps discret pour ces filtres est que les versions à temps discret sont, bien sûr, périodiques en fréquence. Maintenant, regardons ces filtres idéaux, et en particulier le filtre passe-bas idéal dans le domaine du temps. Nous avons la réponse en fréquence du filtre passe-bas idéal. Et ci-dessous est la réponse impulsionnelle. Voici donc la réponse en fréquence et en dessous la réponse impulsionnelle du filtre passe-bas idéal. Et cela, bien sûr, est un sine x sur x forme de réponse impulsionnelle. Et reconnaître aussi ou rappeler que puisque cette réponse en fréquence est réelle, la réponse impulsionnelle, en d'autres termes, la transformée inverse est une fonction pair du temps. Et remarquez aussi, puisque je veux me référer à cela, que la réponse impulsionnelle d'un filtre passe-bas idéal, en fait, est non causale. Cela découle, entre autres, du fait que sa fonction est égale. Mais gardez à l'esprit, en fait, qu'une fonction sinus x sur x va à l'infini dans les deux directions. Ainsi, la réponse impulsionnelle du filtre passe-bas idéal est symétrique et continue à avoir des queues à l'infini plus et moins. Maintenant, la situation est essentiellement la même dans le cas à temps discret. Examinons la réponse en fréquence et la réponse impulsionnelle associée pour un filtre passe-bas discret idéal. Donc, encore une fois, voici la réponse en fréquence du filtre passe-bas idéal. Et en dessous de ce que je montre la réponse impulsionnelle. Encore une fois, c'est un sine x sur x type de réponse impulsionnelle. Et là encore, nous reconnaissons que dans le domaine fréquentiel, cette réponse en fréquence est réelle. Cela signifie, en conséquence des propriétés de la transformée de Fourier et de la transformée de Fourier inverse, que la réponse impulsionnelle est une fonction pair dans le domaine temporel. Et aussi, incidemment, la fonction sinus x sur x va à l'infini, encore une fois, dans les deux directions. Maintenant, nous avons parlé des filtres idéaux dans cette discussion. Et les filtres idéaux sont tous, en fait, idéaux dans un certain sens. Ce qu'ils font idéalement est qu'ils passent une certaine bande de fréquences exactement et ils rejettent une bande de fréquences exactement. D'autre part, il ya beaucoup de problèmes de filtrage dans lesquels, en général, nous n'avons pas une nette distinction entre les fréquences que nous voulons passer et les fréquences que nous voulons rejeter. Un exemple de ce qui est développé dans le texte est la conception d'un système de suspension automobile, ce qui, en fait, est la conception d'un filtre passe-bas. Et essentiellement ce que vous voulez faire dans un cas comme celui-ci est de filtrer ou d'atténuer les variations de route très rapide et de garder les variations inférieures, bien sûr, l'élévation de l'autoroute ou de la route. Et ce que vous pouvez voir intuitivement, c'est qu'il n'y a pas vraiment une distinction très nette ou forte coupure entre ce que vous appelleriez logiquement les basses fréquences et ce que vous appelleriez les hautes fréquences. Maintenant, aussi quelque peu lié à ceci est le fait que, comme nous l'avons vu dans le domaine du temps, ces filtres idéaux ont un caractère très particulier de caractère. Par exemple, regardons en arrière sur le filtre passe-bas idéal. Et nous avons vu la réponse impulsionnelle. La réponse impulsionnelle est ce que nous avons montré ici. Examinons maintenant la réponse en échelon du filtre passe-bas idéal en temps discret. Et remarquez le fait qu'il a une queue qui oscille. Et quand l'étape frappe, en fait, il a un comportement oscillatoire. Maintenant, exactement la même situation se produit en temps continu. Examinons la réponse en échelon du filtre passe-bas idéal en temps continu. Et ce que nous voyons est que quand une étape frappe alors, en fait, nous obtenons une oscillation. Et très souvent, cette oscillation est quelque chose qui est indésirable. Par exemple, si vous conceviez un système de suspension automobile et que vous frappiez une courbe, ce qui est une entrée étape, en fait, vous n'auriez probablement pas envie d'avoir l'automobile oscillant, la mort en bas dans l'oscillation. Maintenant, il ya un autre point très important, qui à nouveau, nous pouvons voir soit en temps continu ou discret-temps, qui est que même si nous voulons qu'il ait un filtre idéal, le filtre idéal a un autre problème si nous voulons essayer de mettre en œuvre En temps réel. Quel est le problème Le problème est que puisque la réponse impulsionnelle est uniforme et, en fait, a des queues qui vont au plus et moins l'infini, son non-causal. Donc, si, en fait, nous voulons construire un filtre et le filtre est limité à fonctionner en temps réel, alors, en fait, nous ne pouvons pas construire un filtre idéal. Donc, ce que cela signifie, c'est que, dans la pratique, bien que les filtres idéaux sont agréables à penser et peut-être se rapportent à des problèmes pratiques, plus typiquement ce que nous considérons sont des filtres nonidés et dans le cas discret, un filtre nonideal alors nous aurions une caractéristique Un peu comme Ive indiqué ici. Au lieu d'une transition très rapide de la bande passante à la bande d'arrêt, il y aurait une transition plus graduelle avec une fréquence de coupure de bande passante et une fréquence de coupure de bande de blocage. Et peut-être aussi au lieu d'avoir une caractéristique exactement plate dans la bande d'arrêt dans la bande passante, nous permettrait une certaine quantité d'ondulation. Nous avons également exactement la même situation en temps continu, où ici tout simplement simplement changer notre axe de fréquence à un axe de fréquence continue au lieu de l'axe de fréquence discret. Encore une fois, on pourrait penser en termes d'une ondulation de bande passante admissible, une transition de bande passante à bande stop avec une fréquence de coupure de bande passante et une fréquence de coupure de bande de blocage. Donc, la notion ici est que, de nouveau, les filtres idéaux sont idéaux à certains égards, pas idéal à d'autres égards. Et pour de nombreux problèmes pratiques, nous ne les voulons peut-être pas. Et même si nous les voulions, nous pourrions ne pas être en mesure de les obtenir, peut-être en raison de cette question de la causalité. Même si la causalité n'est pas un problème, ce qui se passe dans la conception et la mise en œuvre du filtre, en fait, est que plus le résultat est net, plus le filtre coûte cher, en quelque sorte, le filtre devient, Ou en termes de calcul en temps discret. Et donc il ya toute cette variété de questions qui rendent vraiment important de comprendre la notion de filtres nonidéal. Maintenant, juste pour illustrer à titre d'exemple, permettez-moi de vous rappeler un exemple de ce qui, en fait, est un filtre passe-bas nonideal. Et nous avons examiné précédemment l'équation différentielle associée. Permettez-moi maintenant, en fait, de le relier à un circuit, et en particulier un circuit RC, où la sortie pourrait soit être à travers le condensateur ou la sortie peut être à travers la résistance. Donc, en fait, nous avons deux systèmes ici. Nous avons un système, qui est la fonction du système de la source de tension d'entrée à la sortie du condensateur, le système de la source de tension d'entrée à la sortie de la résistance. Et, en fait, juste en appliquant la loi de tension de Kirchhoffs à ceci, nous pouvons relier ceux d'une manière très directe. Il est très simple de vérifier que le système de l'entrée à la sortie de la résistance est simplement le système d'identité avec la sortie du condensateur soustrait de lui. Maintenant, nous pouvons écrire l'équation différentielle pour l'un de ces systèmes et, comme nous avons parlé de la dernière fois dans les dernières conférences, résoudre cette équation en utilisant et en exploitant les propriétés de la transformée de Fourier. En fait, si nous considérons l'équation différentielle reliant la sortie du condensateur à l'entrée de la source de tension, nous reconnaissons qu'il s'agit d'un exemple qui, en fait, a déjà été résolu. Ainsi, en appliquant la transformée de Fourier à l'équation différentielle et en générant la fonction système en prenant le rapport de la tension du condensateur ou de sa transformée de Fourier à la transformée de Fourier de la source, nous avons alors la fonction système associée à la Pour lequel la sortie est la tension du condensateur. Ou si nous résolvons à la place pour la fonction système associée à la sortie de la résistance, nous pouvons simplement soustraire H1 de l'unité. Et la fonction système que nous obtenons dans ce cas est la fonction système que je montre ici. Ainsi, nous avons maintenant deux fonctions système, une pour la sortie du condensateur, l'autre pour la sortie de la résistance. Et un, le premier, correspondant à la sortie du condensateur, en fait, si nous le tracer sur une échelle d'amplitude linéaire, ressemble à cela. Et comme vous pouvez le voir, et comme nous l'avons vu la dernière fois, est une approximation d'un filtre passe-bas. Il s'agit, en fait, d'un filtre passe-bas non-résidentiel, alors que la sortie de la résistance est une approximation d'un filtre passe-haut ou, en fait, d'un filtre passe-haut non non. Donc dans un cas, juste en comparant les deux, nous avons un filtre passe-bas comme la sortie du condensateur associé à la sortie du condensateur, et un filtre passe-haut associé à la sortie de la résistance. Laisse juste regarder rapidement cet exemple maintenant, en regardant un complot de Bode, au lieu de sur l'échelle linéaire que nous avons montré avant. Et rappelez-vous incidemment, et soyez conscient incidemment, du fait que nous pouvons naturellement cascader plusieurs filtres de ce type et améliorer les caractéristiques. J'ai donc montré en haut un graphique Bode de la fonction système associée à la sortie du condensateur. Son plan à une fréquence correspondant à 1 sur la constante de temps, RC. Et puis il tombe à 10 dB par décennie, une décennie étant un facteur de 10. Ou si l'on regarde plutôt la fonction système associée à la sortie de la résistance, qui correspond à une augmentation de fréquence de 10 dB par décennie jusqu'à approximativement la réciproque De la constante de temps, puis s'approcher d'une caractéristique plane après cela. Et si l'on considère l'un ou l'autre de ceux-ci, en regardant en arrière sur le filtre passe-bas, si nous devions cascader plusieurs filtres avec cette réponse en fréquence, alors parce que nous avons des choses tracées sur un tracé de Bode, le tracé de Bode pour la cascade serait simplement la sommation celles-ci. Par conséquent, si l'on met en cascade, par exemple, deux étages au lieu d'un roll-off à 10 dB par décennie, il roule à 20 dB par décennie. Maintenant, les filtres dans ce type, les filtres RC, peut-être plusieurs d'entre eux en cascade, sont en fait très répandue. Et en fait, dans un environnement comme celui-ci, où étaient, en fait, faire l'enregistrement, nous voyons qu'il ya des filtres de ce type qui se présentent très souvent à la fois dans la partie audio et la vidéo du traitement du signal qui est associé à la fabrication de cet ensemble De bandes. En fait, regardons dans la salle de contrôle. Et ce que Ill être en mesure de vous montrer dans la salle de contrôle est la partie audio du traitement qui est fait et les types de filtres, beaucoup du type dont nous venons de parler, qui sont associés au traitement du signal thats fait dans la préparation de l'audio Pour les bandes. Alors laisse juste prendre une promenade dans la salle de contrôle et voir ce que nous voyons. C'est la salle de contrôle qui est utilisée pour la commutation de caméra. Son utilisé pour l'édition d'ordinateur et aussi le contrôle audio. Vous pouvez voir les moniteurs, et ceux-ci sont utilisés pour la commutation de l'appareil photo. Et c'est la console d'édition informatique qui est utilisé pour l'édition en ligne et hors ligne. Ce que je veux vraiment démontrer, dans le contexte de la conférence, c'est le panneau de contrôle audio, qui contient entre autres des filtres pour les fréquences hautes fréquences, les basses fréquences, et cetera, essentiellement les filtres d'égalisation. Et ce que nous avons en matière de filtrage est, tout d'abord, ce qu'on appelle un égaliseur graphique, qui consiste en un ensemble de filtres passe-bande, que je vais décrire un peu plus attentivement dans une minute. Et puis aussi, un panneau de contrôle audio, qui est ici et qui contient des circuits égaliseur séparés pour chacun d'un ensemble de canaux et aussi beaucoup de contrôles sur eux. Eh bien, permettez-moi de commencer dans la démonstration en démontrant un peu de ce que fait l'égaliseur graphique. Eh bien, ce que nous avons est un ensemble de filtres passe-bande. Et ce qui est indiqué ici sont les fréquences centrales des filtres, puis un commutateur de curseur pour chacun qui nous permet d'atténuer ou d'amplifier. Et c'est une échelle de dB. Donc, essentiellement, si vous regardez à travers cette banque de filtres avec la sortie totale de l'égaliseur juste être la somme des sorties de chacun de ces filtres, intéressant la position du curseur commutateurs que vous vous déplacez à travers ici, en effet, vous montre ce que La réponse en fréquence de l'égaliseur est. Vous pouvez donc modifier la forme globale du filtre en déplaçant les commutateurs vers le haut et vers le bas. À l'heure actuelle, l'égaliseur est éteint. Mettons l'égaliseur dans le circuit. Et maintenant je mets cette caractéristique de filtrage. Et ce que j'aimerais démontrer est le filtrage avec cela, lorsque nous faisons des choses qui sont un peu plus dramatiques que ce qui serait normalement fait dans un réglage d'enregistrement audio typique. Et pour ce faire, nous allons ajouter à ma voix de la musique pour le rendre plus intéressant. Pas que ma voix n'est pas intéressante comme elle est. Mais en tout cas, laissons de la musique. Et maintenant ce que je fais est de régler les basses fréquences à plat. Et laissez-moi sortir les hautes fréquences au-dessus de 800 cycles. Et maintenant, ce que nous avons, effectivement, est un filtre passe-bas. Et maintenant, avec le filtre passe-bas, permettez-moi de ramener les hauts. Et donc, j'apporte ces filtres passe-bande. Et maintenant laissez-moi couper les bas. Et vous entendrez les bas disparaître et, en effet, en gardant les hauts en crispens efficacement le son, soit ma voix ou la musique. Et enfin, laissez-moi revenir à l'égalisation de 0 dB sur chacun des filtres. Et ce que Ill aussi faire maintenant est de prendre l'égaliseur hors du circuit totalement. Maintenant, nous allons jeter un oeil au panneau de contrôle maître audio. Et ce panneau a, bien sûr, pour chaque canal et, par exemple, le canal en cours, d'un contrôle de volume. Je peux baisser le volume, et je peux augmenter le volume. Et il a également pour ce circuit d'égaliseur particulier, un ensemble de trois filtres passe-bande et boutons qui nous permettent soit de monter jusqu'à un gain de 12 dB soit une atténuation de 12 dB dans chacune des bandes, ainsi qu'un sélecteur qui nous permet Sélectionnez le centre de la bande. Permettez-moi de revenir un peu sur ce point. Et nous allons obtenir un plan rapproché de ce panneau. Donc, ce que nous avons, comme je l'ai indiqué, est trois filtres passe-bande. Et ces boutons que Im pointant ici sont des contrôles qui nous permettent pour chacun des filtres de mettre en jusqu'à un gain de 12 dB ou une atténuation de 12 dB. Il y a également avec chacun des filtres un sélecteur qui nous permet de régler la fréquence centrale du filtre. Il s'agit essentiellement d'un commutateur à deux positions. Il y a aussi, comme vous pouvez le voir, un bouton qui nous permet soit de mettre l'égalisation en ou hors. Actuellement, la péréquation est terminée. Mettons l'égalisation dans. Nous n'entendrons aucun effet de cela, parce que les contrôles de gain sont tous réglés à 0 dB. Et Ill veux illustrer sous peu l'effet de ces derniers. Mais avant moi, permettez-moi d'attirer votre attention sur un autre filtre, qui est ce commutateur blanc. Et ce commutateur est un filtre passe-haut qui coupe essentiellement les fréquences inférieures à environ 100 cycles. Donc, ce que cela signifie, c'est que si je mets ce commutateur, tout est plus ou moins plat au-dessus de 100 cycles. Et ce qui est utilisé pour, fondamentalement, est d'éliminer peut-être le bruit de cycle 60, si c'est le cas, ou un bourdonnement de basse fréquence ou quoi que ce soit. Eh bien, nous ne montrerons vraiment rien avec ça. Laissez aller maintenant avec la péréquation dans, démontrer l'effet de stimuler ou d'atténuer les fréquences basses et hautes. Et encore, je pense que pour démontrer cela, il illustre le point le mieux si nous avons un peu de musique de fond. Donc maître, si vous pouvez apporter cela. Et maintenant ce que je vais faire, c'est d'abord amplifier les basses fréquences. Et c'est ce que ce bouton potentiomètre fera. Donc maintenant, augmenter le gain de basse fréquence et, en fait, tout le chemin jusqu'à 12 dB quand j'ai le bouton sur autant que Ive allé ici. Et donc qui a un son très bassy. Et en fait, nous pouvons le rendre encore plus bass en prenant les hautes fréquences et en les atténuant de 12 dB. OK bien, permet de mettre quelques-unes des hautes fréquences de retour po Et maintenant, permet de tourner le gain de basse fréquence d'abord revenir à 0. Et maintenant étaient de retour à l'égalisation à plat. Et maintenant je peux tourner le gain de basse fréquence vers le bas afin que j'atténue les basses fréquences de beaucoup comme 12 dB. Et c'est là que nous sommes maintenant. Et donc cela a, bien sûr, un son beaucoup plus croustillant. Et pour améliorer les hauts encore plus, je peux, en plus de couper les bas, augmenter les hauts en mettant, encore, jusqu'à 12 dB. OK bien, laisse tomber la musique maintenant et retourne à aucune égalisation en réglant ces boutons à 0 dB. Et en fait, nous pouvons sortir l'égaliseur. Eh bien, c'est un regard rapide sur certains filtres du monde réel. Maintenant, laissons de s'arrêter de s'amuser, et nous allons retourner à la conférence. D'accord, c'est un peu en arrière-scène. Ce que j'aimerais faire maintenant, c'est de tourner notre attention vers des filtres à temps discret. Et comme je l'ai dit dans les conférences précédentes, il ya essentiellement deux classes de filtres à temps discret ou des équations de différence de temps discret. Une classe est référée à un filtre non récursif ou à moyenne mobile. Et l'idée de base avec un filtre de moyenne mobile est quelque chose que vous êtes quelque peu familier avec intuitivement. Pensez à la notion de prendre une séquence de données, et laisse supposer que ce que nous voulions faire était d'appliquer un certain lissage à la séquence de données. Nous pourrions, par exemple, penser à prendre des points adjacents, à les rapprocher ensemble, puis à déplacer cette moyenne le long de la séquence de données. Et ce que vous pouvez voir intuitivement, c'est que cela s'appliquerait un peu de lissage. Donc, en fait, l'équation des différences, disons, pour la moyenne mobile à trois points serait l'équation de différence que j'indique ici, simplement en prenant un point de données et les deux points de données adjacents et en formant une moyenne de ces trois. Donc, si nous pensions au traitement impliqué, si nous formions une valeur de séquence de sortie, nous prendrions trois points adjacents et les moyenne. Cela nous donnerait la sortie ajouter le temps associé. Et puis pour calculer le prochain point de sortie, nous allons tout simplement glisser ce point d'un point, la moyenne ces ensemble, et qui nous donnerait le point de sortie suivante. Et nous continuions, tout simplement glisser et calculer la moyenne pour former la séquence de données de sortie. Maintenant, thats un exemple de ce qui est communément appelé une moyenne mobile à trois points. En fait, nous pouvons généraliser cette notion de plusieurs manières. Une façon de généraliser la notion de moyenne mobile à partir de la moyenne mobile à trois points, que je résume ici, c'est d'envisager de l'étendre à un plus grand nombre de points et, en fait, d'appliquer des pondérations à celle-ci comme je l'ai indiqué ici Que, en plus de simplement résumer les points et diviser par le nombre de points somme, nous pouvons, en fait, appliquer des poids individuels aux points de sorte que son ce qui est souvent appelé une moyenne mobile de pondération. And I show below one possible curve that might result, where these would be essentially the weights associated with this weighted moving average. And in fact, its easy to verify that this indeed corresponds to the impulse response of the filter. Well, just to cement this notion, let me show you an example or two. Here is an example of a five-point moving average. A five-point moving average would have an impulse response that just consists of a rectangle of length five. And if this is convolved with a data sequence, that would correspond to taking five adjacent points and, in effect, averaging them. Weve looked previously at the Fourier transform of this rectangular sequence. And the Fourier transform of that, in fact, is of the form of a sine n x over sine x curve. And as you can see, that is some approximation to a lowpass filter. And so this, again, is the impulse response and frequency response of a nonideal lowpass filter. Now, there are a variety of algorithms that, in fact, tell you how to choose the weights associated with a weighted moving average to, in some sense, design better approximations and without going into the details of any of those algorithms. Let me just show the result of choosing the weights for the design of a 251-point moving average filter, where the weights are chosen using an optimum algorithm to generate as sharp a cutoff as can possibly be generated. And so what I show here is the frequency response of the resulting filter on a logarithmic amplitude scale and a linear frequency scale. Notice that on this scale, the passband is very flat. Although here is an expanded view of it. And in fact, it has whats referred to as an equal-ripple characteristic. And then here is the transition band. And here we have to stopband, which in fact is down somewhat more than 80 dB and, again, has whats referred to as an equal-ripple characteristic. Now, the notion of a moving average for filtering is something that is very commonly used. I had shown last time actually the result of some filtering on a particular data sequence, the Dow Jones Industrial Average. And very often, in looking at various kinds of stock market publications, what you will see is the Dow Jones average shown in its raw form as a data sequence. And then very typically, youll see also the result of a moving average, where the moving average might be on the order of day, or it might be on the order of months. The whole notion being to take some of the random high frequency fluctuations out of the average and show the low frequency, or trends, over some period of time. So lets, in fact, go back to the Dow Jones average. And let me now show you what the result of filtering with a moving average filter would look like on the same Dow Jones industrial average sequence that I showed last time. So once again, we have the Dow Jones average from 1927 to roughly 1932. At the top, we see the impulse response for the moving average. Again, I remind you on an expanded time scale, and whats shown here is the moving average with just one point. So the output on the bottom trace is just simply identical to the input. Now, lets increase the length of the moving average to two points. And we see that there is a small amount of smoothing, three points and just a little more smoothing, that gets inserted. Now a four-point moving average, and next the five-point moving average, and a six-point moving average next. And we see that the smoothing increases. Now, lets increase the length of the moving average filter much more rapidly and watch how the output is more and more smooth in relation to the input. Again, I emphasize that the time scale for the impulse response is significantly expanded in relationship to the time scale for both the input and the output. And once again, through the magic of filtering, weve been able to eliminate the 1929 Stock Market Crash. All right, so weve seen moving average filters, or what are sometimes referred to as non-recursive filters. And they are, as I stressed, a very important class of discrete-time filters. Another very important class of discrete-time filters are what are referred to as recursive filters. Recursive filters are filters for which the difference equation has feedback from the output back into the input. In other words, the output depends not only on the input, but also on previous values of the output. So for example, as Ive stressed previously, a recursive difference equation has the general form that I indicate here, a linear combination of weighted outputs on the left-hand side and linear combination of weighted inputs on the right-hand side. And as weve talked about, we can solve this equation for the current output y of n in terms of current and past inputs and past outputs. For example, just to interpret this, focus on the interpretation of this as a filter, lets look at a first order difference equation, which weve talked about and generated the solution to previously. So the first order difference equation would be as I indicated here. And imposing causality on this, so that we assume that we are running this as a recursive forward in time, we can solve this for y of n in terms of x of n and y of n minus 1 weighted by the factor a. And I simply indicate the block diagram for this. But what we want to examine now for this first order recursion is the frequency response and see its interpretation as a filter. Well in fact, again, the mathematics for this weve gone through in the last lecture. And so interpreting the first order difference equation as a system, what were attempting to generate is the frequency response, which is the Fourier transform of the impulse response. And from the difference equation, we can, of course, solve for either one of those by using the properties, exploiting the properties, of Fourier transform. Applying the Fourier transform to the difference equation, we will end up with the Fourier transform of the output equal to the Fourier transform of the input times this factor, which we know from the convolution property, in fact, is the frequency response of the system. So this is the frequency response. And of course, the inverse Fourier transform of that, which I indicate below, is the system impulse response. So we have the frequency response obtained by applying the Fourier transform to the difference equation, the impulse response. And, as we did last time, we can look at that in terms of a frequency response characteristic. And recall that, depending on whether the factor a is positive or negative, we either get a lowpass filter or a highpass filter. And if, in fact, we look at the frequency response for the factor a being positive, then we see that this is an approximation to a lowpass filter, whereas below it I show the frequency response for a negative. And there this corresponds to a highpass filter, because were attenuating low frequencies and retaining the high frequencies. And recall also that we illustrated this characteristic as a lowpass or highpass filter for the first order recursion by looking at how it worked as a filter in both cases when the input was the Dow Jones average. And indeed, we saw that it generated both lowpass and highpass filtering in the appropriate cases. So for discrete-time, we have the two classes, moving average and recursive filters. And there are a variety of issues discussed in the text about why, in certain contexts, one might want to use one of the other. Basically, what happens is that for the moving average filter, for a given set a filter specifications, there are many more multiplications required than for a recursive filter. But there are, in certain contexts, some very important compensating benefits for the moving average filter. Now, this concludes, pretty much, what I want to say in detail about filtering, the concept of filtering, in the set of lectures. This is only a very quick glimpse into a very important and very rich topic, and one, of course, that can be studied on its own in an considerable amount of detail. As the lectures go on, what well find is that the basic concept of filtering, both ideal and nonideal filtering, will be a very important part of what we do. And in particular, beginning with the next lecture, well turn to a discussion of modulation, exploiting the property of modulation as it relates to some practical problems. And what well find when we do that is that a very important part of that discussion and, in fact, a very important part of the use of modulation also just naturally incorporates the concept and properties of filtering. Je vous remercie. Free DownloadsMoving Average Filter kate wrote: gt Hi, gt gt I am looking for some code for a low-pass filter which I can apply to gt a signal prior to carrying out spectral analysis. gt gt I apoligise for my ignorance, but this is way outside my field so Im gt not really making any sense of it. What are the inputs that are gt needed other than the signal itself gt gt Thanks, gt Kate In the analog domain, folks use low-pass filtering for at least a couple of reasons that come to mind (i) make the signal look better (ii) avoid aliasing during Analog-to-Digital conversion, which results in high-frequency noisesignals being aliased to low frequencies, which can corrupt the lower frequency signals of interest and increase the noise floor. It does not appear that either of these considerations apply to your situation (i) youre not looking at the signal directly (youre going to do spectral analysis) (ii) your signal is already digitized. Specifically, when you do spectral analysis, the high-frequency stuff will show up at the high-frequency end and you can choose to ignore it. For any linear technique (this includes FFT and the Matlab filter() function), the high-frequency content will not interfere with the spectral analysis of the low-frequency content. Unless you wish to decimate your data before filtering. Is there a particular reason you want to get rid of the high-frequency content before spectral analysis kate wrote: gt Hi, gt gt I am looking for some code for a low-pass filter which I can apply to gt a signal prior to carrying out spectral analysis. gt gt I apoligise for my ignorance, but this is way outside my field so Im gt not really making any sense of it. What are the inputs that are gt needed other than the signal itself gt gt Thanks, gt Kate In the analog domain, folks use low-pass filtering for at least a couple of reasons that come to mind (i) make the signal look better (ii) avoid aliasing during Analog-to-Digital conversion, which results in high-frequency noisesignals being aliased to low frequencies, which can corrupt the lower frequency signals of interest and increase the noise floor. It does not appear that either of these considerations apply to your situation (i) youre not looking at the signal directly (youre going to do spectral analysis) (ii) your signal is already digitized. Specifically, when you do spectral analysis, the high-frequency stuff will show up at the high-frequency end and you can choose to ignore it. For any linear technique (this includes FFT and the Matlab filter() function), the high-frequency content will not interfere with the spectral analysis of the low-frequency content. Unless you wish to decimate your data before filtering. Is there a particular reason you want to get rid of the high-frequency content before spectral analysis To be honest I dont know why Im trying to get rid of the high frequencies. Im basically following the instructions in an ISO. As you may have guessed, computer programming and signal processing is really not my area so the language used is alien to me What Im doing is as follows - Im a civil engineer and Im trying to analyse a road surface profile. The profile is basically the equivilent of a signal that varies with distance (but since velocity is constant, this is the same as varying with time). The exact wording of the ISO is pre-processing filters should be used for example butterworth. However I thought that the moving average might be an easier place to start I presume the reason Im trying to eradicate high frequencies is because they would be negligible in terms of road surface damage. I greatly appreciate your time, Katherine Rajeev wrote: gt gt gt kate wrote: gtgt Hi, gtgt gtgt I am looking for some code for a low-pass filter which I can gt apply to gtgt a signal prior to carrying out spectral analysis. gtgt gtgt I apoligise for my ignorance, but this is way outside my field so gt Im gtgt not really making any sense of it. What are the inputs that are gtgt needed other than the signal itself gtgt gtgt Thanks, gtgt Kate gt gt In the analog domain, folks use low-pass filtering for at least a gt couple of reasons that come to mind (i) make the signal look better gt (ii) avoid aliasing during Analog-to-Digital conversion, which gt results in high-frequency noisesignals being aliased to low gt frequencies, which can corrupt the lower frequency signals of gt interest gt and increase the noise floor. gt gt It does not appear that either of these considerations apply to gt your gt situation (i) youre not looking at the signal directly (youre gt going gt to do spectral analysis) (ii) your signal is already digitized. gt gt Specifically, when you do spectral analysis, the high-frequency gt stuff gt will show up at the high-frequency end and you can choose to ignore gt it. gt For any linear technique (this includes FFT and the Matlab filter() gt function), the high-frequency content will not interfere with the gt spectral analysis of the low-frequency content. Unless you wish to gt decimate your data before filtering. gt gt Is there a particular reason you want to get rid of the gt high-frequency gt content before spectral analysis gt gt HTH gt - rajeev - gt gt Katherine wrote: gt To be honest I dont know why Im trying to get rid of the high gt frequencies. Im basically following the instructions in an ISO. gt As you may have guessed, computer programming and signal processing gt is really not my area so the language used is alien to me gt gt What Im doing is as follows - Im a civil engineer and Im trying to gt analyse a road surface profile. The profile is basically the gt equivilent of a signal that varies with distance (but since velocity gt is constant, this is the same as varying with time). The exact gt wording of the ISO is pre-processing filters should be used for Some questions come to mind. une. What does the ISO ask you to do after the pre-processing filters b. How is the spectral analysis implemented c. Does the ISO specify the cutoff frequency for the filter. ie get rid of frequencies above X gt example butterworth. However I thought that the moving average gt might be an easier place to start I tend to agree, moving average would be easier. It also has a property that all frequency components are delayed by exactly the same amount, which means that the waveform shape is preserved going through the filter (of course some frequency compnents will be attenuated, but they wont be shifted by, say, 90 degrees, relative to other frequencies). The Butterworth filter (and to varying degrees all analog filters) does not have this property, which is known as linear-phase or phase-linear. Butterworth refers to a class of analog filters with a particular phase and frequency response, that happens to be easy to implement with electronic components like resistors, capacitors and inductors. (My reasonable guess is that) people developed digital equivalents to these and other analog filters because they were familiar with their properties. However a lot of folks today would ask, if youre going to operate on a digitized signal, why bother with an analog-look-alike filter. gt I presume the reason Im trying to eradicate high frequencies is gt because they would be negligible in terms of road surface damage. gt gt I greatly appreciate your time, gt Katherine Again, I am much indebted to you for taking the time i have tried to answer your qs below: gt Some questions come to mind. gt gt a. What does the ISO ask you to do after the pre-processing filters After the pre-processing filters it asks that i carry out a FFT which I guess is also an answer to your next question. The big comprehension problem that im having is that I generated the road profile myself, specifying that I wanted the frequencies to be a minimum of 0.01cyclesmeter and a max of 4cyclesmeter. Why then should I need to filter out high frequencies gt gt b. How is the spectral analysis implemented gt gt c. Does the ISO specify the cutoff frequency for the filter. ie gt get gt rid of frequencies above X It doesnt specify any cutoff frequency. gtgt example butterworth. However I thought that the moving average gtgt might be an easier place to start gt gt I tend to agree, moving average would be easier. It also has a gt property gt that all frequency components are delayed by exactly the same gt amount, gt which means that the waveform shape is preserved going through the gt filter gt (of course some frequency compnents will be attenuated, but they gt wont gt be shifted by, say, 90 degrees, relative to other frequencies). gt The gt Butterworth filter (and to varying degrees all analog filters) does gt not gt gt have this property, which is known as linear-phase or phase-linear. gt gt Butterworth refers to a class of analog filters with a particular gt phase gt and frequency response, that happens to be easy to implement with gt electronic gt components like resistors, capacitors and inductors. (My gt reasonable gt guess gt is that) people developed digital equivalents to these and other gt analog gt filters because they were familiar with their properties. However gt a gt lot gt of folks today would ask, if youre going to operate on a digitized gt signal, gt why bother with an analog-look-alike filter. gt gtgt I presume the reason Im trying to eradicate high frequencies is gtgt because they would be negligible in terms of road surface damage. gtgt gtgt I greatly appreciate your time, gtgt Katherine gt gt lt. gt gt gt HTH gt - rajeev - Thank you. Katherine Sounds like you may be filtering the data already the way you are specifying the frequency range. What is you sampling rate Is it spatial or temporal If you are specifying 4 cyclesmeter to the system is very unlikely that it would only be sampling to get that rate (Fs18 meter) without some sort of moving average filter built in. What is the ISO requirement (ISO standard , from where) One effect of the filtering is to shift the energy onto the lower frequencies rather than just chopping it off like you would do in the frequency domain. If the end goal is to calculate a IRI or some sort of other road roughness metric than this can be critical. gt gt After the pre-processing filters it asks that i carry out a FFT which gt I guess is also an answer to your next question. The big gt comprehension problem that im having is that I generated the road gt profile myself, specifying that I wanted the frequencies to be a gt minimum of 0.01cyclesmeter and a max of 4cyclesmeter. Why then gt should I need to filter out high frequencies gt Charlie, I am very ignorant on the correct terminology in this stuff and Im not sure what you mean by sample rate. Ill just tell you what im doing. First I am generating a random road profile which has spatial frequencies varying from 0.01 - 4 cyclesm. The ISO 8608:1995 have classifications of road and depending on this, it gives a PSD value for each of the frequencies between 0.01 and 4 thats you want. These values are then put into an equation for road generation which creates a road with any number of points (in my case 8000, or 400meters, i. e. every 0.05 meter). I then graph all of the ISO values for the PSD against the spatial frequencies that I had above. I am then trying to work backwards to see if I can generate that same graph by using the same road profile, and finding the FFT of it and then the PSD. i dont know what you mean by sampling frequency Im afraid, maybe it is up there in what i have described Thank you so much for your time, I am completely like a fish out of water on this one Charlie wrote: gt gt gt Katherine, gt gt Sounds like you may be filtering the data already the way you are gt specifying gt the frequency range. What is you sampling rate Is it spatial or gt temporal gt If you are specifying 4 cyclesmeter to the system is very unlikely gt that it gt would only be sampling to get that rate (Fs18 meter) without some gt sort of gt moving average filter built in. gt gt What is the ISO requirement (ISO standard , from where) gt gt One effect of the filtering is to shift the energy onto the lower gt frequencies rather than just chopping it off like you would do in gt the gt frequency domain. If the end goal is to calculate a IRI or some gt sort of gt other road roughness metric than this can be critical. gt gt Charlie gt gtgt gtgt After the pre-processing filters it asks that i carry out a FFT gt which gtgt I guess is also an answer to your next question. The big gtgt comprehension problem that im having is that I generated the gt road gtgt profile myself, specifying that I wanted the frequencies to be a gtgt minimum of 0.01cyclesmeter and a max of 4cyclesmeter. Why then gtgt should I need to filter out high frequencies gtgt gt gt gt Thanks for the info on ISO 8608:1995 it looks like good reference for some of my work on road profile processing. Back to your project. As I understand it you are doing: 1. Create road profile in spatial frequency domain with content in 0.01-4 cyclesm 2. Generate spatial profile from 1 using some equations (400 meters long, dx0.05 m, Spatial sampling frequency1dx20 cyclesm) 3. Graph your road PSD from 1 against the ISO values from ISO 8608 4. Calculate the fft and the PSD from 2 and compare it to 3 to see if you are able to re-produce it. If this is correct and I understand the ISO standard. I dont believe you need to do any filtering at all. Your profile from 2 should be able to generate frequency data from 0.0025-10 cyclesm, but you should not see any content above 4 cyclesm. Hope this helps rather than confuses. You may want to look at The Little Book of Profiling at umtri. umich. eduerdroughnessindex. html for more info. Katherine ltkatherine. cashellucd. iegt wrote in message news:ef02d7a.7webx. raydaftYaTP. gt Charlie, gt I am very ignorant on the correct terminology in this stuff and Im gt not sure what you mean by sample rate. Ill just tell you what im gt doing. gt gt gt First I am generating a random road profile which has spatial gt frequencies varying from 0.01 - 4 cyclesm. The ISO 8608:1995 have gt classifications of road and depending on this, it gives a PSD value gt for each of the frequencies between 0.01 and 4 thats you want. These gt values are then put into an equation for road generation which gt creates a road with any number of points (in my case 8000, or gt 400meters, i. e. every 0.05 meter). gt I then graph all of the ISO values for the PSD against the spatial gt frequencies that I had above. gt I am then trying to work backwards to see if I can generate that same gt graph by using the same road profile, and finding the FFT of it and gt then the PSD. gt i dont know what you mean by sampling frequency Im afraid, maybe it gt is up there in what i have described gt gt Thank you so much for your time, I am completely like a fish out of gt water on this one gt gt Katherine gt Thanks for that - really is useful just to see the correct terminology being used for the figures Charlie wrote: gt gt gt Katherine, gt gt Thanks for the info on ISO 8608:1995 it looks like good reference gt for some gt of my work on road profile processing. Back to your project. As I gt gt understand it you are doing: gt gt 1. Create road profile in spatial frequency domain with content in gt 0.01-4 gt cyclesm gt 2. Generate spatial profile from 1 using some equations (400 gt meters long, gt dx0.05 m, Spatial sampling frequency1dx20 cyclesm) gt 3. Graph your road PSD from 1 against the ISO values from ISO gt 8608 gt 4. Calculate the fft and the PSD from 2 and compare it to 3 to gt see if gt you are able to re-produce it. gt gt If this is correct and I understand the ISO standard. I dont gt believe you gt need to do any filtering at all. Your profile from 2 should be gt able to gt generate frequency data from 0.0025-10 cyclesm, but you should not gt see any gt content above 4 cyclesm. gt gt Hope this helps rather than confuses. You may want to look at The gt Little gt Book of Profiling at ltumtri. umich. eduerdroughnessindex. html gt gt gt or more info. gt gt Charlie gt gt Katherine ltkatherine. cashellucd. iegt wrote in message gt news:ef02d7a.7webx. raydaftYaTP. gtgt Charlie, gtgt I am very ignorant on the correct terminology in this stuff and gt Im gtgt not sure what you mean by sample rate. Ill just tell you what im gtgt doing. gtgt gtgt gtgt First I am generating a random road profile which has spatial gtgt frequencies varying from 0.01 - 4 cyclesm. The ISO 8608:1995 gt have gtgt classifications of road and depending on this, it gives a PSD gt value gtgt for each of the frequencies between 0.01 and 4 thats you want. gt These gtgt values are then put into an equation for road generation which gtgt creates a road with any number of points (in my case 8000, or gtgt 400meters, i. e. every 0.05 meter). gtgt I then graph all of the ISO values for the PSD against the gt spatial gtgt frequencies that I had above. gtgt I am then trying to work backwards to see if I can generate that gt same gtgt graph by using the same road profile, and finding the FFT of it gt and gtgt then the PSD. gtgt i dont know what you mean by sampling frequency Im afraid, maybe gt it gtgt is up there in what i have described gtgt gtgt Thank you so much for your time, I am completely like a fish out gt of gtgt water on this one gtgt gtgt Katherine gtgt gt gt gt What is a watch list You can think of your watch list as threads that you have bookmarked. Vous pouvez ajouter des balises, des auteurs, des fils et même des résultats de recherche à votre liste de surveillance. De cette façon, vous pouvez facilement garder une trace des sujets qui vous intéressent po Pour afficher votre liste de surveillance, cliquez sur le lien quotMus Newsreaderquot. Pour ajouter des éléments à votre liste de surveillance, cliquez sur le lien quotadd to watch listquot au bas de chaque page. Comment ajouter un élément à ma liste de surveillance Pour ajouter des critères de recherche à votre liste de surveillance, recherchez le terme souhaité dans la zone de recherche. Cliquez sur le lien "Ajouter cette recherche à ma liste de surveillance" dans la page des résultats de recherche. Vous pouvez également ajouter une balise à votre liste de surveillance en recherchant la balise avec la directive quottag: tagnamequot où tagname est le nom de la balise que vous souhaitez regarder. Pour ajouter un auteur à votre liste de surveillance, accédez à la page de profil des auteurs et cliquez sur le lien Ajouter cet auteur à ma liste de surveillance, en haut de la page. Vous pouvez également ajouter un auteur à votre liste de surveillance en accédant à un fil que l'auteur a posté et en cliquant sur le quotAjouter cet auteur à ma liste de watchquot lien. Vous serez averti chaque fois que l'auteur fera un post. Pour ajouter un fil à votre liste de surveillance, allez à la page du fil et cliquez sur le lien quotAdd this thread à mon watch list, en haut de la page. À propos des groupes de discussion, des lecteurs de nouvelles et de MATLAB Central Les groupes de discussion Les forums de discussion sont un forum mondial ouvert à tous. Les groupes de discussion sont utilisés pour discuter d'une vaste gamme de sujets, faire des annonces et échanger des fichiers. Les discussions sont enchaînées ou regroupées de manière à ce que vous puissiez lire un message posté et toutes ses réponses dans l'ordre chronologique. Cela rend facile de suivre le fil de la conversation, et de voir whatrsquos déjà été dit avant de publier votre propre réponse ou de faire une nouvelle affectation. Le contenu des groupes de discussion est distribué par des serveurs hébergés par diverses organisations sur Internet. Messages are exchanged and managed using open-standard protocols. Aucune entité unique n'a décrété les groupes de discussion. Il ya des milliers de groupes de discussion, chacun traitant d'un seul sujet ou domaine d'intérêt. MATLAB Central Newsreader affiche et affiche des messages dans le groupe de discussion comp. soft-sys. matlab. Comment lire ou publier dans les groupes de discussion Vous pouvez utiliser le lecteur de nouvelles intégré au site Web de MATLAB Central pour lire et publier des messages dans ce groupe de discussion. MATLAB Central est hébergé par MathWorks. Les messages affichés via le lecteur de nouvelles MATLAB Central sont vus par tout le monde à l'aide des groupes de discussion, peu importe comment ils accèdent aux groupes de discussion. Il existe plusieurs avantages à utiliser MATLAB Central. Un compte Votre compte MATLAB Central est lié à votre compte MathWorks pour un accès facile. Utilisez l'adresse courriel de votre choix Le lecteur MATLAB Central vous permet de définir une autre adresse e-mail que votre adresse postale, évitant le fouillis dans votre boîte aux lettres principale et réduisant le spam. Contrôle du courrier indésirable La plupart des courriers indésirables des groupes de discussion sont filtrés par le lecteur de nouvelles MATLAB Central. Étiquetage Les messages peuvent être étiquetés avec une étiquette appropriée par tout utilisateur connecté. Les balises peuvent être utilisées comme mots-clés pour trouver des fichiers particuliers intéressants ou pour classer vos annonces marquées d'un signet. Vous pouvez choisir d'autoriser d'autres personnes à afficher vos balises, et vous pouvez afficher ou rechercher d'autres balises ainsi que celles de la communauté en général. Le marquage permet de voir à la fois les grandes tendances et les idées et applications plus petites et plus obscures. Listes de surveillance La mise en place de listes de surveillance vous permet d'être informé des mises à jour effectuées sur les annonces sélectionnées par auteur, thread ou toute variable de recherche. Vos notifications de liste de surveillance peuvent être envoyées par courrier électronique (résumé journalier ou immédiat), affichées dans Mon lecteur de nouvelles ou envoyées via le flux RSS. Autres moyens d'accéder aux groupes de discussion Utiliser un lecteur de nouvelles par l'intermédiaire de votre école, de votre employeur ou de votre fournisseur d'accès Internet Payer l'accès à un groupe de discussion auprès d'un fournisseur commercial Utiliser les groupes Google Mathforum. org fournit un lecteur de nouvelles avec accès au groupe comp. soft sys. matlab Exécutez votre propre serveur. For typical instructions, see: slyckng. phppage2 Select Your Country
No comments:
Post a Comment