信号処理についての違いとローパスフィルタリングについて

このQ&Aのポイント
  • 信号処理において、奇数列と偶数列の違いや、離散フーリエ変換と逆フーリエ変換の操作による時間領域と周波数領域の変換について説明します。
  • 奇数列の値を無視して偶数列の強度と時間のみを取り出す操作と、離散フーリエ変換をかけて高周波側の値を0とし逆フーリエ変換で時間領域に戻す操作の違いについて解説します。
  • ローパスフィルタリングとは、信号処理において高周波成分を除去し、低周波成分のみを通過させる操作のことで、逆フーリエ変換やフーリエ変換を用いて実現することができます。
回答を見る
  • ベストアンサー

信号処理について

信号処理について 数学、物理、コンピュータともに初心者です. 2秒に1度、2000個のランダム値を配列として出力し、それを時間(配列インデックス)-強度(Value)グラフとして表示させています. そこで、 1. 2000個の入力配列のうち、例えば奇数列の値を無視して、偶数列の強度・時間のみを取り出し出力する. 2. 2000個の配列データに離散フーリエ変換をかけ、出てきた2000個の周波数領域の配列(2000個は合ってますでしょうか?)のうち、高周波側より1500個の値を0とし、逆フーリエ変換で時間領域に戻す. これらの違いはどのように説明できるのでしょうか? また、2.のような操作は一般的にローパスフィルタリングと呼べるのでしょうか? ご指導よろしくお願いいたします.

質問者が選んだベストアンサー

  • ベストアンサー
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

「2000Hzの信号を1000Hzにする」というのがどういうことを意味するのかがわかりません. ・ダウンサンプリング: 例えば「1秒に 2000個のデータをサンプリングする」データがあったときに, そこから「1秒に 1000個のデータをサンプリングする」ようにデータを間引く操作. どう考えても「2000 Hz の信号」を 1000 Hz にすることはできない. ・ローパス: 低周波数成分だけを取り出す. 例えば「2000 Hz の信号」に対してカットオフ周波数 1500 Hz のローパスフィルタに通したら出力は何もない.

masaj14
質問者

お礼

サンプリング周波数の意味を間違えて、混同していました、ありがとうございます. 配列の数を減らしたいと思っていて、等間隔にデータを抽出する以外にも、抽出の仕方によっては意味を持ちそうなのですが(例えば、初めの6個の配列に注目してその中で最大値と最小値を選び新たな配列の2個とし、それを繰り返すことで配列の数が1/3となる)、意味のある(これも目的によりますが)ダウンサンプリングとして、他に有名な方法などあるのでしょうか? よろしくお願いいたします.

その他の回答 (2)

  • misawajp
  • ベストアンサー率24% (918/3743)
回答No.2

前提は *2000個のデータが等時間間隔(サンプリング)で採取されたデータであること *そのデータにはサンプリング間隔の2倍以下の時間での変動が無いこと(サンプリング周波数の1/2以上の周波数成分が存在しないこと) この前提が満足されなければ、意義ある結果は得られません その意味で 1.はサンプリング周波数の1/4以上の成分が存在すれば誤差を生じます) 2.も少々危ういです、条件を吟味することです

masaj14
質問者

お礼

ご回答ありがとうございます. その前提を満たしている(等時間間隔で、これらが全てのデータとして満たされているつまり、この2倍以下の時間での変動が無い)として、「2.も少々危ういです」というのはどのような意味でしょうか? また、2000個のデータを1000個のデータとするときに、意味のある(無作為に1000個抽出するなどではない)方法で知られているものにはどのようなものがありますでしょうか? 続けざまにすみません、よろしくお願いいたします.

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

2 でやってることはまさに「ローパス」だね. 低周波数成分だけ残ってるから. まあ, あんまり「フィルタリング」ってイメージじゃないけど. 1 はただのダウンサンプリング.

masaj14
質問者

お礼

ご回答ありがとうございます. ダウンサンプリングとローパスの関係がわからないのですが、例えば2000Hzの信号を1000Hzにすることはダウンサンプリングなのでしょうか?それともローパスなのでしょうか? 続けざまにすみません、よろしくお願いいたします.

関連するQ&A

  • アナログ信号とフーリエ変換

    デジタル信号の周波数分析として離散フーリエ変換があります。そして、アナログ信号の周波数分析としてフーリエ変換と考えていました。またアナログ信号を離散フーリエ変換で考える方法もあり、アナログ信号をサンプリングすることで離散フーリエ変換で考えることが出来ると考えています。 ですが、「アナログ信号の周波数分析にフーリエ変換を使うと定義されている」という考え方は間違いであると言われました。 何が違うのか分かりません。よく分からないので詳しく教えてください。

  • 画像の離散フーリエ変換

    現在画像の離散フーリエ変換をしており、 「c言語で学ぶ実践画像処理」という本には、 水平方向に1次元の離散フーリエ変換をした後、垂直方向に1次元の離散フーリエ変換をすれば良いと書いてあるのですが、 疑問があります。 最初に実部用の配列と虚部用の配列を用意します。 原画像を水平方向に離散フーリエ変換します。 そうすると、初めに用意した実部、虚部用の配列に値が入ります。 ここからさらに垂直方向の離散フーリエ変換をすると、 実部の垂直方向の離散フーリエ変換から実部と虚部が出て、 虚部の垂直方向の離散フーリエ変換から実部と虚部が出て、最終的には実部用の配列が2個、虚部用の配列が2個必要で、 ここからどうやって離散逆フーリエ変換や、振幅スペクトルを求められるのだろうかと混乱しております。 水平方向に1次元の離散フーリエ変換をした後、垂直方向に1次元の離散フーリエ変換はどのようにすれば良いのでしょうか? よろしくお願いいたします。

  • 離散ウェーブレットのスケール関数

    ウェーブレットは、ローパスとハイパスの組み合わせでできていると聞いたんですが、ドベシィの数列をフーリエ変換してみたところ、周波数領域で、左端と右端で値が大きくなっていました。 これでは低い周波数も高い周波数も通してしまうような気がするのですが、なぜこれで低い周波数を取り出せるんでしょうか?

  • 信号処理についての相談

    最近, 信号処理について勉強しているのですが, いまいち差別化ができていません. フーリエ変換, 高速フーリエ変換, MAR, VAR, 時間周波数解析 これらの特徴や利点, 欠点, どのような処理の時に用いればよいのか, これらを解りやすく教えて頂けないでしょうか?

  • 離散フーリエ変換

    フーリエ変換を計算機で扱う場合について聞きたいです。 ある関数(例えばsin(x))を離散フーリエ変換しようとして、まずxを0.1ずつ増やしながらsin(x)をサンプリングします。これを虚部を0として複素数にします。 この後、複素数のフーリエ変換を行い結果が得られます。 と、ここまでは正しいと思うのですが、 その後が分かりません。 文献などに載っているフーリエ変換後のグラフは、横軸が周波数νで、縦軸がf(ν)です。 このグラフと合うようにするには 横軸・縦軸には何をとればいいのでしょうか? 横軸が周波数って言うのは、この場合は1/0.1のことでしょうか? 教えて頂きたいです。お願いします。

  • デジタル信号処理のフーリエ変換で

    matlabで勉強中なんですが、以下の操作をするとどうなるのか教えて頂きたいです。 (音声信号xにfftをかけて、フーリエ係数Xを求めてあるとします。) ・xを一定間隔で間引いた(3点中2点を0で埋めていく)場合、fftをかけるとフーリエ係数はどうなるのか? ・同様にXを間引いてifftをかけたら、復元された信号はどうなるのか? (間引く: □□□□□□□□□□□□… → □00□00□00□00□… ) 要するに、 時間領域で時系列の間引きを行うと周波数領域ではどんな影響がでるのか? 周波数領域でスペクトルを間引くと時間領域でどんな影響がでるのか? ということを知りたいのです。 実際にやってみたのですが、結果がどういう意味なのかイマイチわからず悩んでいます。 前者は、周波数領域で振幅を調べたら、1/3の長さのスペクトルが3つ並んでいました。 後者は、時間領域で複数(この場合3つかな?)の音が重なった感じになっていて、波形は元の信号とだいぶ異なっていました。 わかりやすく説明してもらえると助かります。よろしくお願いします。

  • 画像の2次元フーリエ変換の結果の表示の仕方について

    現在、C言語で画像に2次元離散フーリエ変換を施し、高速フーリエ変換と比較しろという課題に取り組んでいます。 以下の様なプロセスで2次元フーリエ離散変換を施し、結果を表示しようと思っています。 ・画像を読み込み、float型配列に入れる。 (画像は一番左上が原点とします。256×256のサイズです) ・上記のfloat型配列の、第1象限と第3象限、第2象限と第4象限を各々入れ替える。 ・各行ごと、つまり、f[0][0]~f[0][255]、f[1][0]~f[1][255]、と順々)に1次元離散フーリエ変換を施す。 ・上記のフーリエ変換の結果を各列ごと、つまり、f[0][0]~f[255][0],f[1][1]~f[255][1]という風に1次元離散フーリエ変換を施す。 ・フーリエ変換の結果の、第1象限と第3象限、第2象限と第4象限を各々入れ替える。 ・f[][]のパワースペクトル(実部の2乗+虚部の2乗の、自然対数をとったもの)を計算する。 ・そのパワースペクトルとをfloat型なので、char型に置き換えて画像として出力する。 正規化等の少し細かいところは省略しました。 結果として、参考書等で見かけるもの(真ん中が直流成分で、含まれる周波数を濃淡で表したもの)になればいいのですが、上記のプロセスで大丈夫ですか? パワースペクトルを計算した後に、何らかの移動の処理(つまり、画像の真ん中が直流成分となるような処理)を施す必要がなく、 フーリエ変換の計算の前と後に象限の入れ替えを施すだけで、直流成分が出力画像の真ん中に来るということですか? フーリエ変換の前と後で、象限を入れ替えるだけで周波数空間では原点が真ん中になることが納得できないです。 ややこしい質問ですが、「プロセスのここが間違ってるよ」等を教えていただけると助かります。特にパワースペクトルの部分等。 よろしくお願いします。

  • 離散フーリエ変換

    今、離散フーリエ変換の値が求まっています。 これから、振幅の値を出すのは、どうしたらいいのでしょうか? 自分で調べたところ、離散フーリエ変換の値に標本化関数のフーリエ変換をかけて、サンプリングの間隔で割ればいいのでは、と考えているのですが、標本化関数というものがよくわかりません。このやり方で良いのかもわかりません。 アドバイスお願いします。

  • 離散フーリエ変換の性質について

    現在デジタル信号処理の分野について学習しているのですが、離散フーリエ変換の性質、線形性として、 時間領域:ax(n) 周波数領域:aX(k) の関係が成立しますが、 時間領域??? 周波数領域:g(k)X(k) のように周波数領域で、定数ではなく関数(g(k):実数)が掛け合わされたときに、時間領域ではどのような関係が成立するかなにかありますでしょうか? 計算しても求めることがまだできないため、誰か知っている人がいたら教えてください。

  • 離散フーリエ変換の周波数分解能

    失礼します。 DFT(離散フーリエ変換)について質問させてください。 DFTの周波数分解能は時間領域でのデータが持つ幅の逆数で決まりますが、 この周波数分解能で表現されなかった周波数成分はどこに行くのか教えていただけないでしょうか? DFTでの離散的な周波数の間にある成分はどこへ行くのか? 単純に考えて、DFTは形としては級数和なので、 それらの成分はどこかに畳み込まれているように思うのですが、 表現されない周波数成分の情報は消されたりするのでしょうか? よろしくお願い致します。

専門家に質問してみよう