• 締切済み

DFTによるフィルターで悩んでます。

実験で採取した電圧データーに電源ノイズが入ってしまい、DFTフィルターの プログラム(FORTRAN)を作りました。ノイズは(7Hz)ピークがはっきりしていているので、DFT結果の該当部分を強制的に DFT=Oのようにして、逆DFTを行いました。ノイズはうまく分離できたと思えます。  ここで波形だけでなく、電圧全体の平均値も、重要なデーターになるため、平均をとると、全体=0となってしまします。  フーリエの積分自体が、全体=0のよう考え方なのは、なんとなく知っていましたが、どうにか平均値を出す方法があれば是非教えてください。 (無理な場合は、もとのデータを平均してしまおうと思います。) 苦心してプログラムも作ったためどうにかなれば、非常に助かります。

みんなの回答

回答No.2

質問の回答ではありませんが、気になったので蛇足かもしれませんが一言。  上記内容が、何の実験でそのデータをどのように使おうとしているかわかりませんが、生のデータに人為的な手を入れると思わぬ結果になる場合があります。  このような場合は、必ず「生データ」、「手を入れた理由」、「どのような処理をしたか」とセットでその結果のデータを使用下さい。  それらを省略した手を入れたデータを生データのように取り扱うことはメーキングデータとして禁止されています。

  • rabbit_cat
  • ベストアンサー率40% (829/2062)
回答No.1

>フーリエの積分自体が、全体=0のよう考え方なのは そんなことはないです。どういう意味で仰っているのかはっきりしないので誤解かもしれませんが。 平均値は、離散フーリエ変換したときの、DC成分として現れます。

関連するQ&A

  • 方形波をフーリエ変換した理由と分かる事

    A―――――――― |       |  =       |    |B       発振器 >       |    <       |  ―――――――― C AC間とコンデンサーの両端の電圧波形とスペクトル波形があります。(400Hzと4kHzの方形波を流しました。)何が何故最初のピークの奇数倍となってるのでしょうか?またフーリエ変換した理由が分かりません。教えてください。

  • フーリエ変換を用いた画像処理_DFT,FFT

    こんにちは,私は現在フーリエ変換を勉強しておりまして,2次元高速フーリエ変換のプログラムを作成してみました.確認のため,フーリエ変換後のデータを逆変換して,元データの再構成を試みたところ,データが上下左右反転していることがわかりました.とあるネット上の解説では,「DFTを行うと上下左右が反転することがある…」と見かけたのですが,その情報も少なく,こちらとしては納得のいく解釈にはつながりません.どなたかなぜ逆変換時のデータが上下左右反転してしまっているのかわかる方はいらっしゃいませんか.

  • サンプリングを高くするほどフーリエ変換値がずれる?

    ある周波数解析ソフトで「フーリエ変換」釦があるのですが、サンプリング周波数を高くするほど、フーリエ変換値がずれてしまいます。 (例)60Hzの正弦波のみの1s間の波形を「フーリエ変換」釦を押すと、 (1)サンプリング周期(10ms)→ 50.5Hz、 52.5Hz、 76.5Hz、の順でピーク点 (2)   〃    (1.0ms)→ 62.5Hz がピーク点。 (3)   〃    (0.1ms)→ 98.5Hz が 〃 (4)   〃   (0.001ms)→  0.0Hz が 〃 となり、周波数ピーク点が60Hzに合いません。このように大きくずれてしまうものでしょうか? なお、同ソフトで「フーリエ級数展開」釦では特定区間指定でき、60Hzの「1次」のみに表示されるのですが、「フーリエ変換」機能には、区間指定釦がありません。 詳しい説明書きはないのですが、通常そのような使い方となるものでしょうか?

  • savitzky-golayのフィルタについて

    1500個の数値からなる、ある測定結果があります。 この測定結果はおよそ100個で1周期を取るような波形データですが、ところどころ高い値を示すノイズが見られます。 この測定結果からノイズを除去してきれいな波形を得るためにフィルタをかけようと思い、いろいろ調べたところsavitzky-golayという方法を見つけ、それを実現するプログラムも見つけました。 このプログラムは計算に使用する前後のデータポイント数と、多項式の次数を設定しなければなりません。現在、データポイント数を前:50・後:50、次数4として実行してみたところ、意図していたような近似グラフが得られました。 しかし、この二つの数字に根拠は無いというのが現状です。 そこで質問なのですが、この二つの項目を指定するに当たり、何か決まりや指標といったものはあるのでしょうか? ちなみに、測定結果は全て正の数値で、必要なのはピーク値のみです。 宜しくお願いしいます。

  • fortranでフーリエ変換→パワースペクトル算出

    プログラミング全くの初心者です タイトル通り、任意のデータ(100個ほど)による波長をフーリエ変換し、 そのパワースペクトル算出をfortranで行いたいのです。 (横軸時間、縦軸大きさのデータです) フーリエ変換の理論上の原理、およびパワースペクトル(=虚部の二乗+実部の二乗) という定義は、教科書から理解できたのですが、 実際に任意のデータに対してフーリエ変換を施す、となると、一体全体何からはじめていいかわからないのです。 そもそもフーリエ変換をしてデータを補間し、100個をさらに分割して増やさなければならないと思うのですが、(違うかもしれませんが) 何をしたらいいのかわからず途方にくれています。 フーリエ係数を求めるのに積分が出てきますが、これもプログラムでどう表現していいのかわかりません 無教養で申し訳ありません。 どうにもこうにも調べ方がわかりませんでしたので質問させていただきます どなたかヒントをお願いします・・・・・

  • 積分回路で、出力電圧波形を描きたい

    添付ファイルにて 理想オペアンプの性質を用いて、積分回路の入力電圧viに対する出力電圧voの波形を描きたいのですがよくわかりません。 理想オペアンプの為、vo=-500∫vidtという式が成り立つことはわかりました。 このため、入力電圧の式を積分すればいいと思うのですがどのように式に直すのかわかりません。(フーリエ級数で求めるのでしょか?) また、積分したとしても波形をどのように描けばいいのかわかりません。(おそらく三角波になると思いますが、式からどのように描けばいいのかわかりません。) よろしくお願いいたします。 ※入力電圧は方形波で、最大電圧が10V,周期は4msです。

  • マイコンとD/Aでつくる正弦波のひずみ率

    正弦波の1HzをマイコンとD/Aコンバータにより作りました。 正弦波の1周期を1024に分割して、正弦波のP-P(ピークtoピーク)を 4096(12bit)分割して、それぞれの部分においてSIN値に応じた電圧出力をします。 波形はオシロ画面を拡大すれば階段状の正弦波になります。 この波形の「正弦波らしさ」を「ひずみ率」で表現したいと思いますが、 市販のひずみ率計では1Hzという超低周波数は測定できないと思います。 スイッチングノイズなし、アナログフィルターなし・・・として この、1Hzの理論的なひずみ率の計算方法があるのでしょうか? ご存じの方、ご教授をお願いします。

  • (V/√Hz)から実効値雑音電圧(Vrms)の導出

    入力換算雑音電圧のデータ(単位V/√Hz)から雑音の量を定量的に数で示したいので実効値雑音電圧(Vrms)を求めたいのですが,どう計算したらいいのかわからないです. 手元にデータとして入力換算雑音のcsvファイルがあります. 要は雑音(V/√Hz)の波形から1~10kHzあたりまでの雑音量をひとつの数(Vrms)で示したいのですが,積分するにしてもデータの横軸は対数軸でΔfがよくわからないし,MATLABで台数積分なるものをやってみましたが,それっぽい値が出てきませんでした. それとも私のやりたいことは全くの方向違いで,意味不明の無意味なのでしょうか. 困っています.どなたかご教授お願い致します. 添付は入力換算雑音波形です.

  • コンセントからのノイズ周波数について

    現在、電気化学計測器を用いて、微弱電流(pAレベル)測定を行っています。 微弱電流と言う事で、電源からのノイズを測定器が拾っている様です。 電流値をフーリエ変換してみると60Hzに大きなピークが見られます。60Hzにノイズが出るのは理解できるのですが(大阪なので)、なぜか、40Hzにも大きなピークが出てきてしまいます。 現在、ファラデーゲージ等に入れて実験をしているのですが、この、40Hzの正体が分かりません。 同じ器械で、東京で測定を行うと50Hzの所にのみ、ピークが出ます。 実験室が違うので、単純な比較は出来ませんが、電源からのノイズと理解して良いのでしょうか? 測定機器は、3芯の電源ケーブルを使い、3芯のアース付きコンセントに差しています。もしかしたら、建物自体のアースが取れていないのかなぁとも考えています。

  • 離散フーリエの周期区切りのズレをどうやって修復?

    離散フーリエは周期の整数倍のデータを入れなければなりません。 しかし、ジャストで1周期のデータにはなりません。 どうすればこのズレを修復できるでしょうか? 具体的な状況としては試料に電界をかけたデータとそのままのデータとの位相差を出したいのです。 そこで出力された電圧のデータから位相差を出すのに 離散フーリエが必要なのです。 測定内容は 入力電圧 5V 周波数  1000Hz 測定点数 最高で1000点 ここで周波数が1000HZで測定点数が1000点までなので 細かく切れないのでズレが出るというわけです。 知ってる方できれば、積分の式にどういう関数を かければいいとか、例題的に教えて下さい。 理論だけだと理解が辛くて・・・お願いします。