(57)【要約】【課題】ＤＣ近傍の低周波領域の成分の除去を行う信号処理装置において、ＤＣ近傍の低周波領域の成分を除去するまでの所要時間を従来よりも短くする。【解決手段】入力信号から予め定められたカットオフ周波数よりも低い周波数成分を除去して出力するハイパスフィルタをＩＩＲフィルタにより実現する場合において、予め定められたカットオフ周波数よりも高い周波数に対応するフィルタ係数を用いて入力信号に対するフィルタ処理演算を開始し、予め定められたカットオフ周波数に対応するものに徐々に近づくようにフィルタ係数を更新しつつ当該フィルタ処理演算を継続させる。【選択図】図２
2013038700.tif 000002
【特許請求の範囲】
【請求項１】
入力信号から予め定められたカットオフ周波数よりも低い周波数の信号成分を除去して出力するハイパスフィルタ処理を実行する信号処理手段と、
前記ハイパスフィルタ処理を前記信号処理手段に実行させる場合には、当該ハイパスフィルタ処理に用いるフィルタ係数の初期値として前記予め定められたカットオフ周波数よりも高い周波数に対応するフィルタ係数を前記信号処理手段に与えて処理を開始させ、当該ハイパスフィルタ処理の実行過程において前記予め定められたカットオフ周波数に対応するものに徐々に近づくように前記信号処理手段に与えるフィルタ係数を更新する信号処理制御手段と
を有することを特徴とする信号処理装置。
【請求項２】
前記信号処理制御手段は、前記信号処理手段に与えるフィルタ係数を前記入力信号のサンプリング周期の整数倍の時間が経過する毎に更新するとともに、各更新タイミングにおいて前記信号処理手段に与えるフィルタ係数を補間演算により算出する
ことを特徴とする請求項１に記載の信号処理装置。
【請求項３】
前記補間演算は、線形補間または対数補間であることを特徴とする請求項２に記載の信号処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルフィルタを用いた信号処理に関する。
【背景技術】
【０００２】
ハイパスフィルタの一形態として、処理対象信号からＤＣ近傍の低周波領域の成分（例えば、１００Ｈｚ以下の周波数成分）を除去するＤＣカットフィルタがある。また、この種のＤＣカットフィルタとして、ＩＩＲ（Infinite Impulse Response）フィルタやＦＩＲ（Finite Impulse Response）フィルタ等のデジタルフィルタにより実現されたものが知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２７１３７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、一般にハイパスフィルタは、カットオフ周波数が低いほどＤＣ成分がカットされるまでの時間が長くなる（例えば、特許文献１の「発明が解決しようとする課題」参照）。そのため、ＤＣカットに数１００ｍｓかかり、ＣＰＵやマイコンをその時間の間、待機状態にしておく必要がある。そのため、信号処理装置の起動に時間がかかり、リアルタイム性を要求されるシステムでは制御上問題となっていた。
本発明は上記課題に鑑みて為されたものであり、ＤＣ近傍の低周波領域の成分の除去を行う信号処理装置において、ＤＣ近傍の低周波領域の成分を除去するまでの所要時間を従来よりも短くする技術を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するために本発明は、入力信号から予め定められたカットオフ周波数よりも低い周波数の信号成分を除去して出力するハイパスフィルタ処理を実行する信号処理手段と、前記ハイパスフィルタ処理を前記信号処理手段に実行させる場合には、当該ハイパスフィルタ処理に用いるフィルタ係数の初期値として前記予め定められたカットオフ周波数よりも高い周波数に対応するフィルタ係数を前記信号処理手段に与えて処理を開始させ、当該ハイパスフィルタ処理の実行過程において前記予め定められたカットオフ周波数に対応するものに徐々に近づくように前記信号処理手段に与えるフィルタ係数を更新する信号処理制御手段とを有することを特徴とする信号処理装置、を提供する。
【０００６】
本出願人の行った実験によれば、ハイパスフィルタ処理において前記予め定められたカットオフ周波数よりも高い周波数に対応するフィルタ係数を用いてフィルタ処理演算を開始し、信号処理手段に与えるフィルタ係数を上記カットオフ周波数に対応するものに徐々に近づけてゆくことで、最初から当該カットオフ周波数に対応するフィルタ係数を信号処理手段に与える場合よりも、ＤＣ近傍の低周波領域の成分を除去するまでの所要時間が短くなることが判明した。つまり、本発明の信号処理装置によれば、ＤＣ近傍の低周波領域の成分を除去するまでの所要時間を従来よりも短くすることが可能になるのである。
【０００７】
より具体的には、前記信号処理制御手段は、前記信号処理手段に与えるフィルタ係数を前記入力信号のサンプリング周期の整数倍の時間が経過する毎に更新するとともに、各更新タイミングにおいて前記信号処理手段に与えるフィルタ係数を前記初期値と前記予め定められたカットオフ周波数に対応するフィルタ係数とから所定の補間演算により算出することを特徴とする。なお、上記記補間演算の具体例としては、線形補間または対数補間が挙げられる。
【０００８】
また、本発明の別の態様としては、入力信号から予め定められたカットオフ周波数よりも低い周波数成分を除去して出力するハイパスフィルタであって、前記カットオフ周波数よりも高い周波数に対応するフィルタ係数を用いて前記入力信号に対するフィルタ処理演算を開始し、前記カットオフ周波数に対応するものに徐々に近づくようにフィルタ係数を更新しつつ当該フィルタ処理演算を継続することを特徴とするハイパスフィルタを提供する態様や、入力信号から予め定められたカットオフ周波数よりも高い周波数成分を除去して出力するローパスフィルタであって、前記カットオフ周波数よりも低い周波数に対応するフィルタ係数を用いて前記入力信号に対するフィルタ処理演算を開始し、前記カットオフ周波数に対応するものに徐々に近づくようにフィルタ係数を更新しつつ当該フィルタ処理演算を継続することを特徴とするローパスフィルタを提供する態様も考えられる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態である信号処理装置１０の構成を示す図である。
【図２】同信号処理装置１０の信号処理制御部４００の動作を説明するための図である。
【図３】本実施形態の効果を説明するための図である。
【図４】本実施形態の効果を説明するための図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照しつつ本発明を実施するための形態について説明する。
図１は、本発明の一実施形態の信号処理装置１０の構成例を示すブロック図である。図１の信号処理装置１０は、ＤＳＰ（Digital Signal Processor）であり、入力信号Ｘに対して以下の式（１）に示すＩＩＲフィルタ処理を施して出力信号Ｙを生成するように予めプログラムされている。式（１）において、ｘ（ｎ）は、入力信号Ｘを所定のサンプリング周期Ｔでサンプリングして得られるサンプルであり、ｘ（ｎ−１）はｘ（ｎ）を１サンプル周期分だけ遅延させたサンプルである。また、式（１）の左辺のｙ（ｎ）は出力信号Ｙのサンプルであり、ｙ（ｎ−１）はｙ（ｎ）を１サンプル周期分だけ遅延させたサンプルである。式（１）のα１、α２およびα３の各々はＩＩＲフィルタ処理のフィルタ係数である。
ｙ（ｎ）＝α１ｘ（ｎ）＋α２ｘ（ｎ−１）−α３ｙ（ｎ−１）…（１）
【００１１】
図１に示すように、信号処理装置１０は、データパス部１００、係数記憶部２００、インタフェース３００、および信号処理制御部４００を有している。データパス部１００は、信号処理制御部４００による制御の下で式（１）に示す演算を実行する装置である。図１に示すように、データパス部１００は演算器１１０とワークＲＡＭ（Random Access Memory）１２０を有している。演算器１１０は、式（１）に示す演算に含まれる係数乗算演算を実行する乗算器１１１と同加算演算を実行する加算器１１２とを各々１個ずつ有する。ワークＲＡＭ１２０は、同式（１）のｘ（ｎ−１）やｙ（ｎ−１）を生成するための遅延処理を実行する際に利用される。
【００１２】
係数記憶部２００は、例えばＥＥＰＲＯＭ（Erasable Programmable Read Only Memory）などのデータの書き換えが可能な不揮発性メモリである。この係数記憶部２００には、信号処理装置１０をハイパスフィルタとして機能させるためのフィルタ係数が予め記憶されている。より詳細に説明すると、係数記憶部２００には、複数種類の周波数（図１では、ｆａ、ｆｂおよびｆｃの３種類、ただし、ｆａ＞ｆｂ＞ｆｃ）の各々に対応付けて、それら各周波数をカットオフ周波数とするハイパスフィルタ処理のフィルタ係数が格納されている。例えば、カットオフ周波数をｆａとするハイパスフィルタ処理をデータパス部１００に実行させる場合には、当該周波数ｆａに対応付けて係数記憶部２００に記憶されているフィルタ係数ａｉ（ｉ＝１〜３）を読出し、αｉ＝ａｉとしてデータパス部１００に式（１）に示す演算を実行させるようにすれば良い。
【００１３】
インタフェース３００は、信号処理装置１０の外部の装置との間で信号の授受を行う装置である。信号処理装置１０は、インタフェース３００により、入力信号Ｘのサンプルｘ（ｎ）を外部から取得し、ハイパスフィルタ処理により得られる出力信号Ｙのサンプルｙ（ｎ）を外部へ出力する。
【００１４】
信号処理制御部４００は、図１に示す信号処理装置１０全体の制御を行う。図１では詳細な図示を省略したが、信号処理制御部４００は、ＣＰＵ（Central Processing Unit）と、信号処理装置１０全体の制御をＣＰＵに実行されるためのプログラムが記憶されたＲＯＭ（Read Only Memory）と、作業用のＲＡＭとを含んでいる。信号処理制御部４００は、係数記憶部２００からフィルタ係数を読み出してデータパス部１００の乗算器１１１に設定し、データパス部１００に対する時分割制御によって乗算器１１１や加算器１１２を時間を区切って作動させることにより、式（１）に示す演算をサンプリング周期Ｔ毎にデータパス部１００に実行させる。これにより、入力信号に対するハイパスフィルタ処理が実現されるのである。
【００１５】
本実施形態の特徴は、信号処理制御部４００によるデータパス部１００へのフィルタ係数の設定の仕方にある。従来の信号処理装置では、ＩＩＲフィルタ処理のカットオフ周波数としてある値（例えば、ｆｃ）が指定された場合には、当該カットオフ周波数に対応するフィルタ係数（すなわち、図１のｃ１、ｃ２およびｃ３）を係数記憶部２００から読出し、αｉ＝ｃｉ（ｉ＝１〜３）となるように乗算器１１１に対するフィルタ係数の設定を行っていた。これに対して本実施形態では、カットオフ周波数として指定された周波数ｆｃよりも高い周波数ｆａ（＞ｆｃ）に対応するフィルタ係数を初期値としてフィルタ処理を開始させ、そのフィルタ処理演算の実行過程で当該カットオフ周波数ｆｃに対応するものに徐々に近づくようにフィルタ係数を更新する制御を信号処理制御部４００に実行させるようにした点に特徴がある。
【００１６】
例えば、ハイパスフィルタ処理のカットオフ周波数としてｆｃが指定された場合には、信号処理制御部４００は、上記カットオフ周波数ｆａに対応するフィルタ係数ａ１、ａ２およびａ３を初期値としてフィルタ処理を開始させ、当該フィルタ処理の実行過程で上記カットオフ周波数ｆｃに対応するもの（すなわち、ｃ１、ｃ２およびｃ３）に徐々に近づくようにデータパス部１００に与えるフィルタ係数を更新する制御を実行するのである。より詳細に説明すると、信号処理制御部４００は、図２に示すように、入力信号Ｘのサンプリング周期ＴのＭ（Ｍは１以上の整数）倍の時間Ｓ（Ｓ＝Ｍ×Ｔ：Ｍの好適な値については適宜実験を行って定めるようにすれば良い）が経過する毎に、上記初期値と目標とするカットオフ周波数に対応するフィルタ係数とからその更新タイミングにおけるフィルタ係数を補間演算により算出する。例えば、Ｎ（Ｎは１以上の整数：Ｎの好適な値については適宜実験を行って定めるようにすれば良い。）回の更新によりフィルタ係数を上記初期値から上記目標とするカットオフ周波数に対応した値に徐々に近付けてゆく態様においては、信号処理制御部４００は、ｋ（ｋ＝１〜Ｎ）番目の更新タイミングにおけるフィルタ係数αｉ（ｋ）（ｉ＝１〜３）を以下の式（２）に示す線形補間演算によって算出し、次の更新タイミングまでαｉ＝αｉ（ｋ）として前掲式（１）に示す演算をサンプリング周期Ｔ毎にデータパス部１００に実行させる。
αｉ（ｋ）＝ａｉ＋（ｃｉ−ａｉ）×ｋ／Ｎ…（２）
【００１７】
本実施形態では、式（２）に示す線形補間演算によりｋ番目の更新タイミングにおけるフィルタ係数αｉ（ｋ）を算出したが、式（３）に示す対数補間演算によりフィルタ係数αｉ（ｋ）を算出しても勿論良い。
αｉ（ｋ）＝αｉ（ｋ−１）＋（ｃｉ−αｉ（ｋ−１））／Ｎ（ｋ≧１）、αｉ（０）＝ａｉ…（３）
線形補間による態様では対数補間による態様に比較してＤＣ成分がカットされるまでの時間が短くなると期待され、対数補間による態様では線形補間による態様に比較して出力波形（或いはフィルタの周波数特性）に乱れが生じ難いと期待される。補間演算として線形補間を採用するのか、それとも対数補間を採用するのかについては、ＤＣ成分がカットされるまでの時間の短縮を優先するのか、それとも出力波形等の安定を優先するのかに応じて定めるようにすれば良い。
【００１８】
各更新タイミングにおけるフィルタ係数αｉ（ｋ）を算出するための補間の態様は線形補間や対数補間に限定されるものではなく、エルミート補間やスプライン補間など所謂補間多項式を用いた補間演算であっても勿論良い。また、本実施形態では、各更新タイミングにおけるフィルタ係数αｉ（ｋ）を初期値と目標とするカットオフ周波数に対応するフィルタ係数とから補間により算出したが、初期値に対応するカットオフ周波数と目標とするカットオフ周波数との間の周波数に対応するフィルタ係数（以下、中間フィルタ係数）も利用するようにしても良い。具体的には、フィルタ係数の初期値（ａｉ）→補間→中間フィルタ係数（ｂｉ）→補間→目標のカットオフ周波数に対応するフィルタ係数（ｃｉ）といった具合にフィルタ係数を更新するのである。また、中間フィルタ係数は１種類には限定されず、フィルタ係数の初期値（ａｉ）→補間→第１の中間フィルタ係数→補間→第２の中間フィルタ係数→補間→目標のカットオフ周波数に対応するフィルタ係数（ｃｉ）といった具合にフィルタ係数を更新しても良い。
【００１９】
ここで留意しなければならない点は、式（２）または式（３）に示す補間演算には除算が含まれており、除算による切り捨て等に起因してαｉ（Ｎ）がｃｉに等しくなるとは限らない、という点である。αｉ（Ｎ）≠ｃｉとなった場合には、αｉ（Ｎ）をそのまま用いても良いが、αｉ（Ｎ）の代わりにｃｉを用いても良い。また、（Ａ）αｉ（ｋ）（ｋ＝１〜Ｎ）のうち、ｃｉに最も近い値を有するものをαｉ（Ｎ）に換えて用いる態様や、（Ｂ）ｃｉに最も近づいたαｉ（ｋ）を新たな初期値とし、ファイルタ係数更新の時間間隔Ｓの長さを適宜調整しつつ、目標とするフィルタ係数ｃｉと等しい値が得られるまでフィルタ係数の更新を継続する、といった態様も考えられる。
【００２０】
図３および図４は、本実施形態の効果を説明するための図である。
図３にて実線、破線および二点鎖線で描画した各グラフは、各々実現方法の異なる３種類のＤＣカットフィルタ（カットオフ周波数＝５Ｈｚとしたハイパスフィルタ）の挙動を表すグラフである。上記３種類のグラフの各々は、ＤＣオフセット＝１を加えた振幅＝１の正弦波（周波数＝５００Ｈｚ）を上記各ＤＣカットフィルタに入力した場合の出力波形を表すグラフである。より詳細に説明すると、図３において実線で描画されたグラフＧ１は本実施形態の信号処理装置１０により実現されたＤＣカットフィルタ（カットオフ周波数＝２００Ｈｚに対応するフィルタ係数を初期値としハイパスフィルタ処理を開始し、その開始から５ミリ秒が経過するまでに等間隔に１６回の更新により、カットオフ周波数＝５Ｈｚに対応するフィルタ係数に近付けることにより実現されたハイパスフィルタ）の挙動を表すグラフである。同図３にて破線で描画されたグラフＧ２はフィルタ係数を１回だけ更新（カットオフ周波数＝２００Ｈｚに対応するフィルタ係数を初期値としてフィルタ処理を開始し、その開始から５ミリ秒経過時点でカットオフ周波数＝５Ｈｚに対応するフィルタ係数に更新）した場合のＤＣカットフィルタの挙動を表すグラフである。そして、同図３にて二点鎖線で描画されたグラフＧ３はフィルタ係数をカットオフ周波数＝５Ｈｚに対応したものに固定したＤＣカットフィルタの挙動を表すグラフである。
【００２１】
図３を参照すれば明らかように、グラフＧ１およびグラフＧ２はグラフＧ３に比較して出力波形の収束が早まっていることが判る。また、図３のグラフＧ２においてはフィルタ係数の更新タイミング（フィルタ処理の開始から５ミリ秒経過した時点）において出力波形の振幅が増加に転じている（更新タイミングで出力波形に乱れが生じている）が、同グラフＧ１にはこのような乱れは生じていない。このことから、ＤＣカットフィルタとしてカットオフ周波数＝５Ｈｚのハイパスフィルタを実現する場合には、フィルタ係数の初期値としてカットオフ周波数２００Ｈｚに対応するものを用い、少なくともＮ＝１６、Ｓ＝５／１６ミリ秒とすれば、出力波形に大きな乱れが生じることを回避しつつ、ＤＣ成分がカットされるまでの時間を従来（すなわち、フィルタ係数をカットオフ周波数＝５Ｈｚに対応したものに固定した場合）よりも短くすることができると結論付けられる。
【００２２】
図４（Ａ）は従来のＤＣカットフィルタ（図３の場合と同様、カットオフ周波数を５Ｈｚに固定したハイパスフィルタ）の周波数特性を示すグラフであり、図４（Ｂ）および図４（Ｃ）は本実施形態の信号処理装置１０により実現されたＤＣカットフィルタの周波数特性を示す図である。より詳細には、図４（Ｂ）は補間演算として式（２）の線形補間を採用したＤＣカットフィルタの出力特性を示すグラフであり、図４（Ｃ）は補間演算として式（３）の対数補間を採用したＤＣカットフィルタの出力特性を示すグラフである。なお、上記各周波数特性は、各ＤＣカットフィルタにフィルタ処理を開始させてから４０９６サンプル分の出力サンプル（約８０ミリ秒分の出力波形に相等）にＦＦＴを施して得られたものである。図４（Ａ）、図４（Ｂ）および図４（Ｃ）を対比すれば明らかように、本実施形態のＤＣカットフィルタのほうがより良くＤＣ成分を除去でてきていることが判る。また、図４（Ｂ）と図４（Ｃ）とを対比すれば明らかように、対数補間を採用した場合のほうが線形補間を採用した場合よりもフィルタの周波数特性の振動が少なくなっていることが判る。
【００２３】
このように、本実施形態の信号処理装置１０によれば、ＤＣ近傍の低周波領域の成分を除去するまでの所要時間を従来よりも短くすることが可能になる。また、本実施形態の信号処理装置１０を用いてＤＣカットフィルタを実現し、上記補間態様として対数補間を採用するようにすれば、フィルタの周波数特性に振動等の乱れが生じることを回避しつつ、従来よりも良好にＤＣ成分の除去を行うことができる、といった効果も期待される。
【００２４】
以上、本発明の一実施形態について説明したが、かかる実施形態に以下に述べる変形を加えても勿論良い。
（１）上述した実施形態では、ＤＣカットフィルタ（ハイパスフィルタ）処理への本発明の適用例を説明したが、入力信号を構成する各周波数成分のうちカットオフ周波数よりも高い周波数を有する周波数成分を除去するローパスフィルタ処理に本発明を適用することも考えられる。ローパスフィルタ処理に本発明を適用するには、信号処理装置１０の信号処理制御部４００に以下に述べる処理を実行させるようにすれば良い。まず、ローパスフィルタ処理にて用いるフィルタ係数の初期値として目標とするカットオフ周波数よりも低い周波数に対応するフィルタ係数をデータパス部１００に与えて当該ローパスフィルタ処理を開始させ、そのフィルタ処理の実行過程でデータパス部１００に与えるフィルタ係数を前述した補間演算によって当該カットオフ周波数に対応するものに徐々に近づけてゆく制御を信号処理制御部４００に行わせるようにすれば良い。また、上述した実施形態では、ＩＩＲフィルタへの本発明の適用例を説明したが、ＦＩＲフィルタへの適用も考えられる。
【００２５】
（２）上述した実施形態では、本実施形態の特徴を顕著に示すフィルタ係数の更新処理を信号処理制御部４００のＣＰＵに実行させるプログラムが同信号処理制御部４００のＲＯＭに予め書き込まれていたが、例えばＣＤ−ＲＯＭ（Compact Disk-Read Only Memory）に上記プログラムを書き込んで配布するとしても良く、また、インターネットなどの電気通信回線経由のダウンロードにより上記プログラムを配布しても良い。加算器と乗算器とを各々少なくとも１個ずつ備えたＤＳＰを、上記のようにして配布されるプログラムにしたがって動作させることによって、そのＤＳＰを本発明に係る信号処理装置として機能させることが可能になるからである。
【符号の説明】
【００２６】
１０…信号処理装置、１００…データパス部、１１０…演算器、１１１…乗算器、１１２…加算器、１２０…ワークＲＡＭ、２００…係数記憶部、３００…インタフェース、４００…信号処理制御部。
【図１】
2013038700.tif 000003
【図２】
2013038700.tif 000004
【図３】
2013038700.tif 000005
【図４】
2013038700.tif 000006