JP2010130460A - フィルタ係数計算方法及びフィルタ係数計算装置 - Google Patents

フィルタ係数計算方法及びフィルタ係数計算装置 Download PDF

Info

Publication number
JP2010130460A
JP2010130460A JP2008304162A JP2008304162A JP2010130460A JP 2010130460 A JP2010130460 A JP 2010130460A JP 2008304162 A JP2008304162 A JP 2008304162A JP 2008304162 A JP2008304162 A JP 2008304162A JP 2010130460 A JP2010130460 A JP 2010130460A
Authority
JP
Japan
Prior art keywords
coefficient
filter
error
origin
filter function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2008304162A
Other languages
English (en)
Inventor
Ryoji Yanase
亮二 簗瀬
Takeshi Takanashi
剛 高梨
Koichiro Suzuki
孝一郎 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2008304162A priority Critical patent/JP2010130460A/ja
Priority to US12/591,642 priority patent/US20100138466A1/en
Publication of JP2010130460A publication Critical patent/JP2010130460A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/73Deblurring; Sharpening
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

【課題】従来のフィルタ係数計算方法は、フィルタ係数の補正方法の自由度が低い問題があった。
【解決手段】本発明のフィルタ係数計算方法は(2n+1)行(2n+1)列(nは整数)のフィルタ関数を算出するフィルタ係数計算方法であって、外部から入力される設定値σに応じて第1のフィルタ関数を計算し、第1のフィルタ関数に含まれる値の総和と総和の理想値との誤差を算出し、誤差が奇数であれば、誤差に含まれる奇数誤差を第1のフィルタ関数の中心に位置する第1の原点係数kaに第1の補正値として与え、誤差のうち奇数誤差を除く偶数誤差を第1の原点係数kaと第1の原点係数を中心点とする点対称の位置に配置される係数対(kb〜ke)とのいずれか一方に第2の補正値として与える。
【選択図】図4

Description

本発明はフィルタ係数計算方法及びフィルタ係数計算装置に関し、特に奇数行・奇数列の行列式により表されるフィルタ関数の係数の補正を行うフィルタ係数計算方法及びフィルタ係数計算装置に関する。
近年、テレビ等の表示機器の大型化及び高精細化が進んでいる。しかし、表示装置に表示するソース画像は表示機器よりも解像度が低いことがある。このような場合、ソース画像を拡大して表示することが行われるが、この拡大処理後の画像にはボケが生じる問題がある。そこで、このような画像の拡大処理を行う場合、ガウシアンフィルタやラプラシアンフィルタを用いて拡大後の画像にフィルタ処理を施すことで画像の先鋭化を行い、画像のボケを防止することが行われている。
また、ガウシアンフィルタやラプラシアンフィルタは、フィルタ関数の算出処理中に値の正規化処理を含む。この正規化では除算を用いるため、係数に丸め誤差が生じ、正規化後のフィルタ関数は理想値との誤差を有することがある。そのため、フィルタ係数の正規化を行った場合に生じる正規化誤差を補正する必要がある。
そこで、正規化により発生したフィルタ係数の正規化誤差の解消方法が特許文献1に開示されている。特許文献1に記載のフィルタ回路100を図6に示す。図6に示すようにフィルタ回路100は、重み係数算出部101、重み正規化手段102、最大重み係数算出手段103、正規化誤差補正手段104、着目画素値生成部105を有する。
重み係数算出部101は、周辺画素及び着目画素の情報から周辺がその重み係数を求める。重み正規化手段102は、重み係数算出部101で算出された各周辺が素の重み係数を正規化する。最大重み係数算出手段103は、重み係数算出部101で算出された周辺画素の重み係数のうち最大のものを選択する。正規化誤差補正手段104は、重み正規化手段で発生した正規化誤差を補正する。着目画素値生成部105は、正規化誤差補正手段104で誤差が修正された正規化重み係数と、周辺画素の画素値と、似基づき着目画素位置の補間データを算出する。
このフィルタ回路100では、最大重み係数算出手段103により選択された最大重み係数を修正して正規化誤差を修正する。つまり、フィルタ回路100では、係数の値を変更したとしてもその変更を最大重み係数とすることで誤差補正の影響を小さくすることができる。
特開2004−253944号公報
しかしながら、ガウシアンフィルタ及びラプラシアンフィルタでは、最大重み係数は、フィルタを構成する行列式の中心部に近い重み係数ほど値が大きくなることになる。そのため、フィルタ回路100では、正規化誤差の補正に起因して変更される重み係数はどのようなフィルタにおいてもほぼ同じ位置にある重み係数となる。従って、フィルタ回路100では、正規化誤差の補正方法に自由度がなくフィルタ特性に応じた柔軟な補正を行うことができない問題がある。
本発明にかかるフィルタ係数計算方法の一態様は、(2n+1)行(2n+1)列(nは整数)のフィルタ関数を算出するフィルタ係数計算方法であって、外部から入力される設定値に応じて第1のフィルタ関数を計算し、前記第1のフィルタ関数に含まれる値の総和と前記総和の理想値との誤差を算出し、前記誤差が奇数であれば、前記誤差に含まれる奇数誤差を前記第1のフィルタ関数の中心に位置する第1の原点係数に第1の補正値として与え、前記誤差のうち前記奇数誤差を除く偶数誤差を前記第1の原点係数と前記第1の原点係数を中心点とする点対称の位置に配置される係数対とのいずれか一方に第2の補正値として与える。
本発明にかかるフィルタ係数計算装置の一態様は、外部から入力される設定値に応じて(2n+1)行(2n+1)列(nは整数)の第1のフィルタ関数を計算する重み係数算出部と、前記第1のフィルタ関数に含まれる値の総和と前記総和の理想値との誤差を算出する誤差算出部と、前記誤差が奇数であれば、前記誤差に含まれる奇数誤差を前記第1のフィルタ関数の中心に位置する第1の原点係数に第1の補正値として与え前記第1の原点係数を補正する奇数誤差補正部と、前記誤差のうち前記奇数誤差を除く偶数誤差を前記第1の原点係数と前記第1の原点係数を中心点とする点対称の位置に配置される係数対とのいずれか一方に第2の補正値として与え前記第1のフィルタ関数の誤差を補正する偶数誤差補正部と、を有する。
本発明にかかるフィルタ係数計算方法及びフィルタ係数計算装置によれば、フィルタ関数と理想値との誤差が奇数であれば、その誤差に含まれる奇数誤差を原点係数に第1の補正値として与える。そして、奇数誤差を除く偶数誤差は、原点係数と周辺係数のいずれに振り分けることもできる。また、誤差が偶数であれば、その誤差を原点係数と周辺係数のいずれにも振り分けることができる。従って、本発明にかかるフィルタ係数計算方法及びフィルタ係数計算装置によれば、フィルタ関数に含まれるフィルタ係数の補正方法の自由度を向上させることができる。
本発明にかかるフィルタ係数計算方法及びフィルタ係数計算装置は、フィルタ関数の補正方法に関して自由度の高い誤差補正方法を提供する。
実施の形態1
以下、図面を参照して本発明の実施の形態について説明する。まず、本実施の形態にかかるフィルタ係数計算装置10により生成されるフィルタ関数について説明する。本実施の形態にかかるフィルタ係数計算装置10では、ガウシアンフィルタ又はラプラシアンフィルタのいずれかに対応するフィルタ関数を生成する。そこで、以下の説明では、ガウシアンフィルタとラプラシアンフィルタのフィルタ関数の算出方法についてそれぞれ説明する。
また、本実施の形態にかかるフィルタ係数計算装置10では、1つの設定値σに基づき同一の原点係数と異なる周辺係数を有する複数のフィルタ関数を生成する。なお、ここで設定値σは後述のσ(標準偏差)である。一般に、画像処理におけるフィルタ処理はガウス分布の正規分布に従う。設定値σは、この正規分布特性から、測定精度や、カメラ・レンズの特性に応じて、最適な値が決定されるものである。本実施例の説明では、このσは、適切な手段を用いて求められており、フィルタ係数計算装置10に与えられるものとする。また、本実施の形態において扱うフィルタ関数は、(2n+1)行(2n+1)列(nは整数)の行列式で表される。つまり、本実施の形態において扱うフィルタ関数は奇数行奇数列の行列式であって、(2n+1)×(2n+1)個の係数からなる。本明細書では、この係数をフィルタ係数(あるいは単に係数)と称する。また、この行列式に含まれるフィルタ係数のうち中心に位置する係数を以降では原点係数と称し、その他の係数を周辺係数と称す。これらのフィルタ関数は、例えば入力画像データの輝度や色の変化方向に対応するものである。
そこで、フィルタ関数の一例を図1、図2に示す。図1に示すフィルタ関数は、図面下側から図面上側に向かって輝度が変化する入力画像データに対応する第1のフィルタ関数を示す。図2に示すフィルタ関数は、図面左下から図面右上に向かって輝度が変化する入力画像データに対応する第2のフィルタ関数を示す。なお、フィルタ関数は、画像データの輝度の変化の方向ごとに、あるいは色の変化の方向ごとに用意されるのが一般である。本実施例では、入力画像データの輝度についての変化方向に対応するフィルタ関数を例としてあげている。また、図1、2に示すように、第1のフィルタ関数と第2のフィルタ関数の原点係数は、ともにkaである。一方、第1のフィルタ関数の周辺係数(図中のkb〜ke)と第2のフィルタ関数の周辺係数(図中のkf〜ki)は、互いに異なる値である。また、図1、2に示すように、第1のフィルタ関数及び第2のフィルタ関数は、原点係数を中心点として点対称に位置する周辺係数が同じ値となる。複数のフィルタの原点係数が同一値になること及び点対称に位置する周辺係数が同じ値になる理由は後述する。
次に、ガウシアンフィルタの計算方法について説明する。ガウシアンフィルタは、平均化フィルタの1つであって、フィルタの原点に近いほど大きい重みをつけた加重平均化フィルタである。このときガウシアンフィルタでは、重み係数をガウス分布に基づき設定する。また、ガウシアンフィルタは係数の合計値が1となる。つまり、x行y列のフィルタ関数に含まれる係数をk(x、y)で表した場合(1)式が成り立つ。
Figure 2010130460
また、ガウシアンフィルタの係数は、それぞれ(2)式で表される。なお、(2)式は、2次元のガウス分布である場合であって、σは分布を表す。なお、ここでσは標準偏差である。
Figure 2010130460
そして、ガウシアンフィルタでは(2)式により求まった各係数の合計を算出し、その合計値でそれぞれの係数を除算することで係数の正規化を行う。また、原点係数はx=0、y=0であることから、同一の設定値σに基づき複数のフィルタを生成した場合、その値は同一になることが(2)式からわかる。また、点対称の位置にある係数は、(x+y)により求まる値が同一となるため、点対称の位置にある係数は同一値となることが(2)式からわかる。
続いて、ラプラシアンフィルタの計算方法について説明する。ラプラシアンフィルタも、加重平均化フィルタである。このときラプラシアンフィルタでは、重み係数を2次元ガウス分布に基づき設定する。また、ラプラシアンフィルタは係数の合計値が0となる。つまり、x行y列のフィルタ関数に含まれる係数をk(x、y)で表した場合(3)式が成り立つ。
Figure 2010130460
また、ラプラシアンフィルタの係数は、それぞれ2次元ガウス分布に基づいたラプラシアンの計算式で表される。このラプラシアンの計算式を(4)式に示す。なお、(4)式のσは分布を表す。なお、ここでσは標準偏差である。
Figure 2010130460
そして、ラプラシアンフィルタでは(4)式により求まった各係数の平均値を算出し、それぞれの係数から算出された平均値を引くことで係数の正規化を行う。また、原点係数はx=0、y=0であることから、同一の設定値σに基づき複数のフィルタを生成した場合、その値は同一になることが(4)式からわかる。また、点対称の位置にある係数は、(x+y)により求まる値が同一となるため、点対称の位置にある係数は同一値となることが(4)式からわかる。
本実施の形態にかかるフィルタ係数計算装置10では、上記フィルタ関数の算出と、上記フィルタ関数の算出において発生した正規化誤差の補正と、を行う。以下、本実施の形態におけるフィルタ係数計算装置10の詳細と、フィルタ係数計算装置10における正規化誤差の補正方法について説明する。
図4に本実施の形態にかかるフィルタ係数計算装置10のブロック図を示す。図3では、フィルタ係数計算装置10に加えてフィルタ係数格納レジスタ20が示されている。本実施の形態では、フィルタ係数計算装置10が生成したフィルタ関数に含まれるフィルタ係数をフィルタ係数計算装置10とは別に設けられるフィルタ係数格納レジスタ20に保存する。図3では、2つのフィルタ関数が格納されるフィルタ係数格納レジスタ20を例として示している。このフィルタ係数格納レジスタ20は、フィルタ係数計算装置10とは異なる半導体基板上に形成されているものでも良く、同一の半導体基板上に形成されるものであっても良い。図3に示すように、フィルタ係数計算装置10は、重み係数算出部11、正規化誤差判定部12、奇数誤差補正部13、偶数誤差補正部14を有する。
重み係数算出部11は、外部からフィルタ係数算出要求信号が入力されると、設定値σに応じた第1のフィルタ関数を生成する。この第1のフィルタ関数は、奇数行奇数列の行列式であって奇数個のフィルタ係数を含む。また、第1のフィルタ関数は、前述したガウシアンフィルタ又はラプラシアンフィルタである。設定値σは、(2)式又は(4)式において用いられるσであって、外部から入力される。本実施の形態では、輝度の変化方向に対応した複数のフィルタ関数を生成する場合において同一の設定値σを用いる。
正規化誤差判定部12は、重み係数算出部11において生成された第1のフィルタ関数の正規化誤差を算出し、正規化誤差が奇数であるか偶数であるかを判定する。この正規化誤差は、第1のフィルタ関数がガウシアンフィルタである場合は(1)式で示される条件と第1のフィルタ関数のフィルタ係数の総和との誤差である。一方、第1のフィルタ関数がラプラシアンフィルタである場合、正規化誤差は(3)式で示される条件と第1のフィルタ関数のフィルタ係数の総和との誤差である。また、正規化誤差判定部12は、輝度の変化方向に対応した複数のフィルタ関数の正規化誤差を計算する場合、2つ目以降に生成されるフィルタ関数(以降、2つ目以降のフィルタ関数を第2のフィルタ関数と称す)の原点係数を1つ目のフィルタ関数(第1のフィルタ関数)の原点係数と置き換えて第3のフィルタ関数を生成する。そして、正規化誤差判定部12は、第3のフィルタ関数の正規化誤差について奇数であるか偶数であるかを判定する。
本実施の形態では、フィルタ係数を2進数の値として扱う。このような場合、正規化誤差判定部12は、正規化誤差がとして算出された値の下位1ビットを参照することで、正規化誤差が奇数であるか偶数であるかを判定することができる。例えば、正規化誤差の下位1ビットが1であれば正規化誤差は奇数と判断され、下位1ビットが0であれば正規化誤差は偶数と判断される。
なお、本実施の形態におけるフィルタ関数では、原点係数を中心に点対称に位置する2つの周辺係数が同一値であるため、周辺係数において発生する正規化誤差は必ず偶数になる。また、フィルタ関数の正規化誤差が奇数である場合その奇数成分は原点係数に起因し、複数のフィルタ関数の原点係数が同じである。そのため、本実施の形態では、1つ目のフィルタ関数(第1のフィルタ関数)の正規化誤差が奇数である場合、2つ目以降のフィルタ関数(第2のフィルタ関数)の正規化誤差も奇数となる。また、1つ目のフィルタ関数(第1のフィルタ関数)の正規化誤差が偶数である場合、2つ目以降のフィルタ関数(第2のフィルタ関数)の正規化誤差も偶数となる。なお、正規化誤差判定部12により第2のフィルタ関数の原点係数が置き換えられると第2のフィルタ係数の正規化誤差は、偶数となる。これは、正規化誤差が奇数である場合、後述する奇数誤差補正部13で、原点係数が偶数に補正されるためである。
奇数誤差補正部13は、正規化誤差判定部12において正規化誤差が奇数と判断された場合に、正規化誤差に含まれる奇数誤差を補正する。このとき、奇数誤差補正部13は、奇数誤差を第1の補正値として原点係数に与える。奇数誤差の大きさは、正規化誤差と同一値でも良く、また、正規化誤差よりも小さな奇数の値であっても良い。本実施の形態では、フィルタ係数が2進数で表される。そのため、原点係数を偶数の値とするためには、原点係数の下位1ビットの値が0となるような第1の補正値を与えればよい。つまり、本実施の形態では、第1の補正値は、原点係数の下位1ビットの値が0となるような値であれば良く、その大きさについては特に制限はない。なお、正規化誤差が偶数であった場合、奇数誤差補正部13は、特に何らの補正を行うことなく第1のフィルタ関数を後段に接続される偶数誤差補正部14に出力する。本実施の形態では、2つ目以降の第2のフィルタ係数は、原点係数の置き換えにより正規化誤差が偶数となるため、2回目以降のフィルタ関数生成処理では奇数誤差補正部13は実質的な動作は行わない。
偶数誤差補正部14は、奇数誤差補正部13から出力された第1のフィルタ係数に対して偶数誤差の補正を行う。この偶数誤差は、第2の補正値であって、正規化誤差が奇数である場合は正規化誤差から奇数誤差を除く値であり、正規化誤差が偶数である場合はこの正規化誤差と同一値である。偶数誤差補正部14は、第2の補正値を原点関数を中心とする点対称の関係にある2つの周辺係数と、原点係数と、のいずれか一方に与える。より具体的には、2つの周辺係数に第2の補正値を与える場合、偶数誤差補正部14は、第2の補正値を等分し、等分された第2の補正値をそれぞれ2つの周辺係数に与える。
そして偶数誤差補正部14において補正された第1のフィルタ関数に含まれるフィルタ係数をフィルタ係数格納レジスタ20に格納する。このとき、本実施の形態では、第1のフィルタ関数(1つ目のフィルタ関数)の原点係数ka(0,0)を予め定められたアドレスに格納する。また、第1のフィルタ関数の周辺係数の値は、原点係数を中心とした点対称の関係にあるものが同一値にあるため、この2つの周辺係数の値を1つのレジスタに格納する。図3に示す例では、1つのレジスタに係数kb(0,1)と係数kb(0,1)と点対称の関係にある係数kb(0,−1)との2つの周辺係数に対応する値が格納される。また、第2のフィルタ関数のフィルタ係数は、周辺係数のみをフィルタ係数格納レジスタ20に格納し、第2のフィルタ関数の原点係数(ka(0,0))は、第1のフィルタ関数の原点係数(ka(0,0))と同一であるため、改めてフィルタ係数格納レジスタ20に格納しない。図3に示す例では、第1のフィルタ関数は、係数kaと係数kb〜keにより構成され、第2のフィルタ関数は、係数kaと係数kf〜kiにより構成される。なお、フィルタ係数格納レジスタ20に格納される第1のフィルタ関数の原点係数は、正規化誤差判定部12により参照される。
続いて、本実施の形態におけるフィルタ係数計算装置10のフィルタ係数の計算及び係数補正のフローについて説明する。図4にフィルタ係数計算装置10のフィルタ係数の計算及び係数補正のフローチャートを示す。
図4に示すように、フィルタ係数計算装置10は、フィルタ係数算出要求信号が入力されるとフィルタ関数の生成を開始する。フィルタ関数を生成するにあたり、まず、変数iを値mで初期化する(ステップS1)。値mは、生成するフィルタ関数の枚数を示す値であり1以上の整数である。値mは、フィルタ係数算出要求信号等の信号により与えられるものでも良く、予め設定されたものでも良い。
続いて、重み係数算出部11が第1のフィルタ関数に含まれるフィルタ係数を算出する(ステップS2)。そして、正規化誤差判定部12において変数iが値mと同じであるか否かを判断する(ステップS3)。このとき、変数iが値mと同一値であれば、重み係数算出部11が出力したフィルタ関数は1つ目のフィルタ関数(第1のフィルタ関数)であると判断される。そのため、ステップS4を行わずにステップS5に進む。
ステップS5では、正規化誤差判定部12が第1のフィルタ関数の正規化誤差を算出する。そして、正規化誤差判定部12は、算出された正規化誤差が奇数であるか偶数であるかを判断する(ステップS6)。このステップS6の判断において、正規化誤差が奇数であった場合(ステップS6のYesの枝)、奇数誤差補正部13が原点係数に対して奇数の値を有する第1の補正値を与える(ステップS7)。そして、処理をステップS5に戻す。そして、再度正規化誤差判断部12において、正規化誤差を算出する。その後、補正後のフィルタ関数の正規化誤差が奇数か否かを判断する。このとき、ステップS6における補正により正規化誤差は偶数となっているため、その後はステップS8(ステップS6のNoの枝)に進む。なお、1回目のステップS6の処理において正規化誤差が偶数と判断された場合は、ステップS7を実行することなくステップS8に進む。
本実施の形態におけるステップS8では、各係数の重みに応じて第2の補正値を周辺係数のそれぞれに振り分ける。なお、ステップS8の補正処理においては、第2の補正値を原点係数にのみ与えても良く、また点対称関係にある1組の周辺係数のみに与えても良い。
そして、ステップS8において補正されたフィルタ関数のフィルタ係数をフィルタ係数格納レジスタに保存する(ステップS9)。続いて、重み係数算出部において変数iが0であるか否を判定する(ステップS10)。ステップS10において変数iが0でなければ(ステップS10のNoの枝)、変数iの値を1つ減じる(ステップS11)。そして、再度ステップS2の処理戻り2つめのフィルタ関数(第2のフィルタ関数)を生成する。
2つ目以降のフィルタ関数を生成する場合、ステップS3の判断においてNoの枝に進みステップS3を実行する。ステップS3では、第2のフィルタ関数の原点係数を第1のフィルタ関数の原点係数に置き換える。この置き換え処理により、第2のフィルタ関数の原点係数は第1の原点係数と同じ値となり、かつ、第2のフィルタ関数の正規化誤差は偶数となる。そのため、2つ目以降のフィルタ関数の生成処理では、ステップS6においてNoの枝に進む処理のみとなる。そして、フィルタ係数計算装置10は、変数iが0となるまでステップS2〜S11の処理を繰り返し、ステップS10において変数iが0となったと判断されると処理を終了する。
上記説明より、本実施の形態にかかるフィルタ係数計算方法及びフィルタ係数計算装置10は、正規化誤差が奇数であれば、正規化誤差に含まれる奇数誤差を原点係数で補正し、残りの偶数誤差については原点係数と周辺係数とのいずれでも補正することができる。つまり、本実施の形態にかかるフィルタ係数計算方法及びフィルタ係数計算装置10は、正規化誤差の補正方法をフィルタ関数作成者の意志により自由に選択することができる。上述の実施例(図3)では、2つのフィルタ関数を用いる場合を示したが、本発明は、図4に示すフローチャートのようにフィルタ関数が3つ以上の場合であっても、あるいは1つの場合であっても適用が可能である。
また、本実施の形態にかかるフィルタ係数計算方法及びフィルタ係数計算装置10によれば、偶数誤差を複数の周辺係数に割り振ることもできる。例えば、周辺係数の重みに応じて正規化誤差を周辺係数に割り振ることで、周辺係数間の比を崩さずに正規化誤差を補正できる。このような補正を行うことでフィルタ関数の精度を向上させることができる。
また、本実施の形態にかかるフィルタ係数計算方法及びフィルタ係数計算装置10は、フィルタ関数に含まれるフィルタ係数の桁数を減じるときに特に有効である。フィルタ係数の桁数を減じた場合、フィルタ係数に丸め誤差が発生し、この丸め誤差により、(1)式や(3)式の条件とフィルタ係数との間に誤差が生じる。しかし、本実施の形態にかかるフィルタ係数計算方法及びフィルタ係数計算装置10は、この丸め誤差を正規化誤差として算出し、奇数誤差補正部13と偶数誤差補正部14とにより補正することができる。
また、本実施の形態にかかるフィルタ係数計算方法及びフィルタ係数計算装置10は、複数のフィルタ関数を用いる場合に、フィルタ係数を格納するフィルタ係数格納レジスタの容量を抑制することができる。本実施の形態にかかるフィルタ係数計算方法及びフィルタ係数計算装置10では、複数のフィルタ係数間で原点係数が共通である。つまり、フィルタ係数格納レジスタは、原点係数を格納する為のレジスタを1つ有していればよい。従って、本実施の形態にかかるフィルタ係数計算方法及びフィルタ係数計算装置10は、生成するフィルタ関数の関数が増加しても、原点係数を格納するためのレジスタの個数は増加しない。
実施の形態2
実施の形態1では、フィルタ係数計算装置10及びフィルタ係数計算方法について説明したが、実施の形態2では、フィルタ係数計算装置10により計算されたフィルタ関数を利用する画像処理装置について説明する。図5に実施の形態2にかかる画像処理装置を示す。この画像処理装置は、フィルタ係数計算装置10、フィルタ係数格納レジスタ20、画像処理回路30を有する。なお、フィルタ係数計算装置10及びフィルタ係数格納レジスタ20は実施の形態1において説明したものと同一である以下の説明では説明を省略する。また、フィルタ係数計算装置10、フィルタ係数格納レジスタ20及び画像処理回路30は、同一の半導体基板上に形成されるものでも良く、個別の半導体基板上に形成されたものであっても良い。また、図5に示す実施の形態2にかかる画像処理装置では、2つのフィルタ関数を用いる場合を示している。なお、本発明は、このような画像処理装置のスペックに応じて2つ以上のフィルタ関数を用いる場合にも適用が可能である。
画像処理回路30は、フィルタ処理部31、32を有する。フィルタ処理部31、32は、フィルタ係数格納レジスタ20から読み出したフィルタ係数により構成されるフィルタ関数を用いて入力画像データにフィルタ処理を施す。そして、フィルタ処理部31、32は、処理後のデータを出力画像データとして出力する。
フィルタ処理部31、32は、異なるフィルタ係数を読み出す。本実施の形態では、フィルタ処理部31はフィルタ係数ka〜keを読み出し、フィルタ処理部32はフィルタ係数ka及びフィルタ係数kf〜kiを読み出す。つまり、フィルタ処理部31、32は、入力画像データの輝度変化方向に対応して設けられるものである。なお、フィルタ処理部31、32は、異なるフィルタ関数に基づき画像処理を施せれば良く、1つの処理部として設けることも可能である。
このような、画像処理装置に対して、フィルタ係数計算装置10により生成されたフィルタ関数を与えると、フィルタ処理の精度を向上させながら画像処理回路30の回路規模を小さくすることができる。
一般的に、画像処理回路30の回路規模は、どのような演算精度で演算を行うかに大きな影響を受ける。例えば、フィルタ係数を精度よく表現する為にフィルタ係数のビット数(桁数)を大きくすると回路規模が増大する問題が生じる。また、回路規模を抑制するためにフィルタ係数を表現するビット数を小さくするとフィルタ係数に丸め誤差が生じ、フィルタ関数の誤差が大きくなり、演算精度が低下する問題が生じる。しかし、フィルタ係数計算装置10を用いるとこれらの問題を解決することができる。
フィルタ係数計算装置10は、フィルタ係数のビット数を抑制した場合に生じる丸め誤差を含めて補正したフィルタ関数を生成することができる。そのため、フィルタ係数計算装置10により生成されるフィルタ関数を画像処理回路30に入力することで、画像処理回路30の演算ビット数を抑制し、回路規模の増大を抑制することができる。また、フィルタ係数計算装置10により生成されるフィルタ関数は、丸め誤差を含めた誤差を補正できるため、このフィルタ関数を用いることで画像処理回路30の画像処理の精度を向上させることができる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、フィルタ関数は、ガウシアンフィルタ及びラプラシアンフィルタとは異なるフィルタであっても良い。
実施の形態1にかかる第1のフィルタ関数の概略図である。 実施の形態1にかかる第2のフィルタ関数の概略図である。 実施の形態1にかかるフィルタ係数計算装置のブロック図である。 実施の形態1にかかるフィルタ係数計算装置の処理フローを示すフローチャートである。 実施の形態2にかかる画像処理装置のブロック図である。 特許文献1に記載のフィルタ回路のブロック図である。
符号の説明
10 フィルタ係数計算装置
11 重み係数算出部
12 正規化誤差判定部
13 奇数誤差補正部
14 偶数誤差補正部
20 フィルタ係数格納レジスタ
30 画像処理回路
31、32 フィルタ処理部
ka〜ki フィルタ係数

Claims (20)

  1. (2n+1)行(2n+1)列(nは整数)のフィルタ関数を算出するフィルタ係数計算方法であって、
    外部から入力される設定値に応じて第1のフィルタ関数を計算し、
    前記第1のフィルタ関数に含まれる値の総和と前記総和の理想値との誤差を算出し、
    前記誤差が奇数であれば、前記誤差に含まれる奇数誤差を前記第1のフィルタ関数の中心に位置する第1の原点係数に第1の補正値として与え、
    前記誤差のうち前記奇数誤差を除く偶数誤差を前記第1の原点係数と前記第1の原点係数を中心点とする点対称の位置に配置される係数対とのいずれか一方に第2の補正値として与える
    フィルタ係数計算方法。
  2. 前記係数対を構成する2つの第1の周辺係数には、前記第2の補正値を等分した値がそれぞれ与えられる請求項1に記載のフィルタ係数計算方法。
  3. 前記第2の補正値は、前記第1の周辺係数の重みに応じて複数の前記係数対に振り分けられる請求項2に記載のフィルタ係数計算方法。
  4. 前記設定値に基づき前記第1のフィルタ関数とは異なる第2のフィルタ関数を計算し、
    前記第2のフィルタ関数の中心に位置する第2の原点係数を前記第1の原点係数に置き換えた第3のフィルタ関数を生成し、
    前記第3のフィルタ関数に含まれる値の総和と前記総和の理想値との誤差を算出し、
    前記誤差を前記第1の原点係数を中心点とする点対称の位置に配置される係数対に第3の補正値として与える請求項1乃至3のいずれか1項に記載のフィルタ係数計算方法。
  5. 前記係数対を構成する2つの第2の周辺係数には、前記第3の補正値を等分した値がそれぞれ与えられる請求項4に記載のフィルタ係数計算方法。
  6. 前記第3の補正値は、前記第2の周辺係数の重みに応じて複数の前記係数対に振り分けられる請求項5に記載のフィルタ係数計算方法。
  7. 前記第1のフィルタ関数及び前記誤差がそれぞれ2進数の値で示される場合、前記誤差の最下位ビットが1であるときは、前記第1の原点係数の最下位ビットを操作することで前記第1の補正値を与える請求項1乃至6のいずれか1項に記載のフィルタ係数計算方法。
  8. 前記フィルタ関数は、ガウシアンフィルタである請求項1乃至7のいずれか1項に記載のフィルタ係数計算方法。
  9. 前記フィルタ関数は、ラプラシアンフィルタである請求項1乃至7のいずれか1項に記載のフィルタ係数計算方法。
  10. 外部から入力される設定値に応じて(2n+1)行(2n+1)列(nは整数)の第1のフィルタ関数を計算する重み係数算出部と、
    前記第1のフィルタ関数に含まれる値の総和と前記総和の理想値との誤差を算出する誤差算出部と、
    前記誤差が奇数であれば、前記誤差に含まれる奇数誤差を前記第1のフィルタ関数の中心に位置する第1の原点係数に第1の補正値として与え前記第1の原点係数を補正する奇数誤差補正部と、
    前記誤差のうち前記奇数誤差を除く偶数誤差を前記第1の原点係数と前記第1の原点係数を中心点とする点対称の位置に配置される係数対とのいずれか一方に第2の補正値として与え前記第1のフィルタ関数の誤差を補正する偶数誤差補正部と、
    を有するフィルタ係数計算装置。
  11. 前記偶数誤差補正部は、前記係数対を構成する2つの第1の周辺係数に前記第2の補正値を等分した値をそれぞれ与える請求項10に記載のフィルタ係数計算装置。
  12. 前記偶数誤差補正部は、前記第2の補正値を前記第1の周辺係数の重みに応じて複数の前記係数対に振り分ける請求項11に記載のフィルタ係数計算装置。
  13. 前記重み係数算出部は、前記設定値に基づき前記第1のフィルタ関数とは異なる第2のフィルタ関数を計算し、
    前記誤差算出部は、前記第2のフィルタ関数の中心に位置する第2の原点係数を前記第1の原点係数に置き換えた第3のフィルタ関数に含まれる値の総和と前記総和の理想値との誤差を算出し、
    前記偶数誤差補正部は、前記誤差を前記第1の原点係数を中心点とする点対称の位置に配置される係数対に第3の補正値として与える請求項10乃至12のいずれか1項に記載のフィルタ係数計算装置。
  14. 前記偶数誤差補正部は、前記係数対を構成する2つの第2の周辺係数に前記第3の補正値を等分した値をそれぞれ与える請求項13に記載のフィルタ係数計算装置。
  15. 前記偶数誤差補正部は、前記第3の補正値を前記第2の周辺係数の重みに応じて複数の前記係数対に振り分けられる請求項14に記載のフィルタ係数計算装置。
  16. 前記奇数誤差補正部は、前記第1のフィルタ関数及び前記誤差がそれぞれ2進数の値で示される場合、前記誤差の最下位ビットが1であるときは、前記第1の原点係数の最下位ビットを操作することで前記第1の補正値を与える請求項10乃至15のいずれか1項に記載のフィルタ係数計算装置。
  17. 前記偶数誤差補正部は、係数を補正した後の前記第1のフィルタ関数をフィルタ係数格納レジスタに格納する請求項10乃至16のいずれか1項に記載のフィルタ係数計算装置。
  18. 前記誤差算出部は、前記フィルタ係数格納レジスタに格納された前記第1のフィルタ関数の前記第1の原点係数を読み出して、前記第2のフィルタ係数の前記第2の原点係数を前記第1の原点係数と置き換え、
    前記偶数誤差補正部は、係数を補正した後の前記第2のフィルタ関数のうち前記第1の原点係数を除く周辺係数を前記フィルタ係数格納レジスタに格納する請求項10乃至17のいずれか1項に記載のフィルタ係数計算装置。
  19. 前記フィルタ関数は、ガウシアンフィルタである請求項10乃至18のいずれか1項に記載のフィルタ係数計算装置。
  20. 前記フィルタ関数は、ラプラシアンフィルタである請求項10乃至18のいずれか1項に記載のフィルタ係数計算装置。
JP2008304162A 2008-11-28 2008-11-28 フィルタ係数計算方法及びフィルタ係数計算装置 Withdrawn JP2010130460A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008304162A JP2010130460A (ja) 2008-11-28 2008-11-28 フィルタ係数計算方法及びフィルタ係数計算装置
US12/591,642 US20100138466A1 (en) 2008-11-28 2009-11-25 Filter coefficient calculation method and filter coefficient calculation unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008304162A JP2010130460A (ja) 2008-11-28 2008-11-28 フィルタ係数計算方法及びフィルタ係数計算装置

Publications (1)

Publication Number Publication Date
JP2010130460A true JP2010130460A (ja) 2010-06-10

Family

ID=42223756

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008304162A Withdrawn JP2010130460A (ja) 2008-11-28 2008-11-28 フィルタ係数計算方法及びフィルタ係数計算装置

Country Status (2)

Country Link
US (1) US20100138466A1 (ja)
JP (1) JP2010130460A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107148751A (zh) * 2014-08-20 2017-09-08 美国莱特州立大学 分数标度数字信号处理

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108108399B (zh) * 2017-12-05 2020-07-28 华南理工大学 一种混合高斯建模改进的协同过滤推荐方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2482809B1 (fr) * 1980-05-14 1986-11-14 Labo Electronique Physique Systeme adaptatif de reception de donnees numeriques a compensation des distorsions d'amplitude et de phase introduites par le canal de transmission des donnees

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107148751A (zh) * 2014-08-20 2017-09-08 美国莱特州立大学 分数标度数字信号处理

Also Published As

Publication number Publication date
US20100138466A1 (en) 2010-06-03

Similar Documents

Publication Publication Date Title
JP4922091B2 (ja) 映像信号処理装置、映像信号処理方法及び表示装置
JP4342493B2 (ja) 手ぶれ補正装置
US10089910B2 (en) Image display device, correction data generation method, and image correction device and method, as well as image correction system
JP2020531931A (ja) 画像処理方法および装置、記憶媒体、コンピュータ装置
US8948502B2 (en) Image processing method, and image processor
US10510163B2 (en) Image processing apparatus and image processing method
US9542617B2 (en) Image processing device and image processing method for correcting a pixel using a corrected pixel statistical value
CN109034384B (zh) 一种数据处理方法和装置
US20150254815A1 (en) Image downsampling apparatus and method
JP2016019108A (ja) 画像処理装置、撮像装置、画像処理方法、及びプログラム
JP2010130460A (ja) フィルタ係数計算方法及びフィルタ係数計算装置
JP2004140702A (ja) 映像信号処理装置、ガンマ補正方法及び表示装置
JP2009081812A (ja) 信号処理装置および信号処理方法
JP2008067233A (ja) 電子透かし埋め込み方法、プログラムおよびコンピュータ読み取り可能な記録媒体
CN108805846B (zh) 二值图像处理优化的方法及其系统
JP2009049752A (ja) 映像信号処理装置、映像信号処理方法、及び表示装置
JP6795411B2 (ja) 画像補正装置および画像補正方法とプログラム
JP2017098775A (ja) 撮像装置
JP5010391B2 (ja) 画像信号処理装置
JP5575048B2 (ja) 画像処理装置および画像形成装置
JP2017228821A (ja) 画像処理装置および画像処理方法
JP2011166586A (ja) 色補正装置、映像表示装置及び色補正方法
JP5141871B2 (ja) 画像処理方法及び画像表示装置
US20130330018A1 (en) Image processing apparatus and image processing method
JP5462198B2 (ja) 変換装置および変換方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111013

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20130705