(57)【要約】【課題】より少ない計算量で種々の画像変形処理に応じたモアレ低減処理を実行できるようにする。【解決手段】変形前の画像を複数の領域に分割したときに各領域を包含する格子点の変形前の座標である座標情報を算出する座標情報算出部と、算出された座標情報から各々の格子点の倍率情報を算出する倍率情報算出部と、算出された倍率情報を保持する倍率情報保持部と、保持されている倍率情報を用いて、変形後の画像における各画素の倍率情報を生成する倍率情報生成部と、生成された各画素の倍率情報からフィルタ係数を算出するフィルタ係数算出部と、算出されたフィルタ係数に基づき、変形前の画像にフィルタ処理を行うフィルタ処理部と、フィルタ処理された画像に画像変形処理を行う変形処理部とを有し、種々の画像変形処理に応じたモアレ低減処理をより少ない計算量で行えるようにする。【選択図】図１
2017120530.tif 000002
【特許請求の範囲】
【請求項１】
画像変形処理による変形前の画像及び画像変形処理による変形後の画像の一方を複数の領域に分割したときに各領域を包含する格子点の当該画像における座標情報を算出する座標情報算出手段と、
前記座標情報算出手段により算出された座標情報から、各々の格子点の前記変形前の画像及び前記変形後の画像の他方の画像における倍率情報を算出する倍率情報算出手段と、
前記倍率情報算出手段により算出された倍率情報を保持する保持手段と、
前記保持手段に保持されている倍率情報を用いて、前記変形前の画像及び前記変形後の画像の前記他方の画像における各画素の倍率情報を生成する生成手段と、
前記生成手段により生成された各画素の倍率情報からフィルタ係数を算出する係数算出手段と、
前記係数算出手段により算出されたフィルタ係数に基づき、前記変形前の画像にフィルタ処理を行うフィルタ処理手段と、
前記フィルタ処理手段によりフィルタ処理された画像に画像変形処理を行う変形処理手段とを有することを特徴とする画像処理装置。
【請求項２】
前記フィルタ処理手段は、前記フィルタ係数に基づき、前記変形前の画像にローパスフィルタ処理を行うことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記フィルタ処理手段は、前記フィルタ係数に基づき、前記変形前の画像に任意のフィルタ処理を行うことを特徴とする請求項１記載の画像処理装置。
【請求項４】
前記保持手段は、前記変形前の画像及び前記変形後の画像の一方の画像を格子状に分割したときの、各領域を包含する格子点に対応する前記変形前の画像及び前記変形後の画像の他方の画像における倍率情報を保持することを特徴とする請求項１〜３の何れか１項に記載の画像処理装置。
【請求項５】
前記倍率情報算出手段は、各々の格子点のｘ方向及びｙ方向にそれぞれ隣接する格子点の座標情報を用いて倍率情報を算出することを特徴とする請求項１〜４の何れか１項に記載の画像処理装置。
【請求項６】
画像変形処理による変形前の画像及び画像変形処理による変形後の画像の一方を複数の領域に分割したときに各領域を包含する格子点の当該画像における座標情報を算出する座標情報算出工程と、
前記座標情報算出工程にて算出された座標情報から、各々の格子点の前記変形前の画像及び前記変形後の画像の他方の画像における倍率情報を算出し保持手段に保持させる倍率情報算出工程と、
前記保持手段に保持されている倍率情報を用いて、前記変形前の画像及び前記変形後の画像の前記他方の画像における各画素の倍率情報を生成する生成工程と、
前記生成工程にて生成された各画素の倍率情報からフィルタ係数を算出する係数算出工程と、
前記係数算出工程にて算出されたフィルタ係数に基づき、前記変形前の画像にフィルタ処理を行うフィルタ処理工程と、
前記フィルタ処理工程にてフィルタ処理された画像に画像変形処理を行う変形処理工程とを有することを特徴とする画像処理方法。
【請求項７】
コンピュータを請求項１〜５の何れか１項に記載の画像処理装置の各手段として動作させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
画像処理装置において、画像変形処理が必要とされる場合がある。例えばプロジェクタ製品では、投影される画像において台形状の歪みが生じるのを抑制するために、スクリーン上に投影される画像が格子状になるよう画像変形するキーストーン（台形）補正処理と呼ばれる画像変形処理が行われている。キーストーン（台形）補正処理等の画像変形処理を行うためには、入力画像をフレームメモリに記憶した後に、出力画像の各座標に対応する入力画像の座標の近傍画素から出力画像の各座標の画素値を補間して生成する。この補間方法としては、例えばバイキュービック補間方式等の方法がある。
【０００３】
画像に画像変形処理を行うとモアレ（干渉縞）と呼ばれる画質劣化が生じる場合がある。このモアレは、出力画像の画素ピッチと、出力画像の各画素に対応する入力画像上の座標のピッチとの差によって生じる干渉縞である。モアレによる画質劣化は原画像の高周波成分が原因であり、平滑化処理を行って高周波成分を除去しモアレを低減する方法が提案されている（特許文献１）。特許文献１に記載の方法では、元画像を予め定められた規則に基づいて変形した場合の変形後画像について、各画素における元画像に対する変形後画像の倍率情報を導出し、倍率情報に基づいて強度を変えて平滑化処理を行いモアレの低減を図っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−２６８７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
種々の画像変形処理において、前述の方法によりモアレを低減させるためには、それぞれの画像変形処理に応じた倍率情報の導出処理が必要になる。必要とされる画像変形処理毎に倍率情報の導出処理を実装する方法が考えられるが、この方法では予め決められた画像変形処理にしか適切なモアレ低減処理を適用できない。また、モアレ低減処理を実現する際には、画像変形処理に加えて倍率情報を計算する必要がある。現実的なハードウエアの規模で種々の画像変形処理に対応するために、倍率情報の計算をプログラマブルに実装できるようソフトウエアで実現する場合があるが、その計算量は大きい。本発明は、より少ない計算量で種々の画像変形処理に応じたモアレ低減処理を実行できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る画像処理装置は、画像変形処理による変形前の画像及び画像変形処理による変形後の画像の一方を複数の領域に分割したときに各領域を包含する格子点の当該画像における座標情報を算出する座標情報算出手段と、前記座標情報算出手段により算出された格子座標情報から、各々の格子点の前記変形前の画像及び前記変形後の画像の他方の画像における倍率情報を算出する倍率情報算出手段と、前記倍率情報算出手段により算出された倍率情報を保持する保持手段と、前記保持手段に保持されている倍率情報を用いて、前記変形前の画像及び前記変形後の画像の前記他方の画像における各画素の倍率情報を生成する生成手段と、前記生成手段により生成された各画素の倍率情報からフィルタ係数を算出する係数算出手段と、前記係数算出手段により算出されたフィルタ係数に基づき、前記変形前の画像にフィルタ処理を行うフィルタ処理手段と、前記フィルタ処理手段によりフィルタ処理された画像に画像変形処理を行う変形処理手段とを有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、種々の画像変形処理に応じたモアレ低減処理をより少ない計算量で実行することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態における画像処理装置の構成例を示す図である。
【図２】本実施形態における着目画素走査部の処理を説明するための図である。
【図３】本実施形態における倍率情報参照部の処理を説明するための図である。
【図４】本実施形態における倍率情報記憶部の処理を説明するための図である。
【図５】本実施形態における倍率情報生成部の処理を説明するための図である。
【図６】本実施形態におけるフィルタ係数算出部の処理を説明するための図である。
【図７】本実施形態におけるフィルタ処理の効果を説明するための図である。
【図８】本実施形態における倍率情報の算出処理を説明するための図である。
【図９】本実施形態における画像処理装置を実現可能なコンピュータ機能を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態を図面に基づいて説明する。
【００１０】
前述したようにモアレ低減処理を実現する際には、画像変形処理に加えて倍率情報を計算する必要がある。現実的なハードウエアの規模で種々の変形に対応するために、倍率情報の計算をプログラマブルに実装できるようソフトウエアで実現する場合がある。また、画像を複数の領域に分割し、分割された複数の領域毎に倍率情報を算出し、領域毎の倍率情報から全画素毎の倍率情報を算出してモアレ低減処理を行う方法が提案されている。
【００１１】
しかしながら、画像を分割する領域の数が増えるとソフトウエアによる倍率情報の計算処理量は増大するので、ユーザが操作を行ってから反映されるまでの時間が長くなり、ユーザレスポンスを満たせなくなる場合がある。そこで、本実施形態では、倍率情報の計算量を低減して、種々の画像変形処理に応じたモアレ低減処理を、より少ない計算量で実行できるようにし、結果的により短いユーザレスポンスを実現できるようにする。
【００１２】
図１は、本発明の一実施形態における画像処理装置の構成例を示すブロック図である。本実施形態における画像処理装置１０１は、入力画像１００を入力とし、入力画像１００に対して画像変形処理を施して得られた変形画像１０２を出力する。画像変形処理は、例えば拡大縮小等のスケーリング処理、回転等のアフィン変形処理、プロジェクタ投影におけるキーストーン（台形）補正処理、レンズ歪み補正処理、樽型歪曲補正処理、糸巻き型歪曲補正処理、円柱・角柱投影時の歪み補正処理などである。
【００１３】
画像処理装置１０１の画像変形処理は、変形画像１０２の座標系の各画素の座標を走査し、入力画像１００において対応する座標の近傍画素を取得して、得られた近傍画素の画素値を用いた補間演算を行い、変形画像１０２の各画素を生成する。以下では説明の便宜上、画像変形処理前の入力画像１００の座標系を「変形前の座標系」と呼び、画像変形処理後の変形画像１０２の座標系を「変形後の座標系」と呼ぶ。
【００１４】
画像処理装置１０１は、座標情報算出部１１２、格子座標情報保持部１１３、倍率情報算出部１１４、着目画素走査部１０３、倍率情報参照部１０４、倍率情報記憶部１０５、倍率情報保持部１０６、及び倍率情報生成部１０７を有する。また、画像処理装置１０１は、フィルタ処理部１０８、変形処理部１０９、フィルタ係数算出部１１０、及びフィルタ係数テーブル１１１を有する。
【００１５】
座標情報算出部１１２は、格子点毎の変形前の座標である格子座標情報を算出する。座標情報算出部１１２により算出された格子座標情報は、格子座標情報保持部１１３に保持される。倍率情報算出部１１４は、格子座標情報保持部１１３に保持されている格子座標情報を入力とし、各格子点毎の変形後の倍率である倍率情報を算出する。倍率情報算出部１１４により算出された倍率情報は、倍率情報保持部１０６に保持される。
【００１６】
この倍率情報の算出処理を、図８を参照して説明する。図８（Ａ）には格子点のみを使う方式について示しており、変形後の座標系１１００において複数の格子状の領域に分割した際の各頂点１１０１、１１０２、１１０３、１１０４を格子点と呼ぶ。図８（Ａ）には、縦横１６画素間隔の正方形状に分割した例を示している。ただし、格子の形状はこれに限定されるものではなく、任意のサイズ、縦横比であっても良い。
【００１７】
ここで、１つの格子点１１０１の座標（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ）に着目すると、＋ｘ方向に隣接する格子点１１０２の座標は（ｘ＿ｄｓｔ＋１６，ｙ＿ｄｓｔ）と表される。また、＋ｙ方向に隣接する格子点１１０３の座標は（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ＋１６）と表される。
【００１８】
次に、格子点１１０１の座標（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ）での水平及び垂直の倍率情報を計算することを考える。この値は、変形後の座標系１１００における格子点の間隔（この例では１６画素）と、格子点１１０１の座標（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ）の接する格子を変形前の座標系に変換したときの間隔との比で近似される。具体的には、キーストーン変形等の任意の画像変形処理において変形後の座標系１１００から変形前の座標系へ座標値を変換する関数をｆｘ、ｆｙとし、変形前の座標系の座標を（ｘ＿ｓｒｃ，ｙ＿ｓｒｃ）とすると、これらの関係は以下の式のとおり表される。なお、計算処理の詳細についてはキーストーン変形については公知の技術であるため説明は省略する。
ｘ＿ｓｒｃ＝ｆｘ（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ）
ｙ＿ｓｒｃ＝ｆｙ（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ）
【００１９】
この式を使うと、格子点１１０１の座標（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ）及び隣接する格子点１１０２、１１０３の座標をそれぞれ変形前の座標系に変換したときの水平方向及び垂直方向の距離は以下の式でそれぞれ表される。
ｆｘ（ｘ＿ｄｓｔ＋１６，ｙ＿ｄｓｔ）−ｆｘ（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ）
ｆｙ（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ＋１６）−ｆｙ（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ）
【００２０】
前記式のそれぞれが変形後の座標系１１００の格子点の間隔である１６画素に対応するので、変形前の座標系を基準とすると、変形後の座標系１１００における倍率は以下の式で表される。
１６／（ｆｘ（ｘ＿ｄｓｔ＋１６，ｙ＿ｄｓｔ）−ｆｘ（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ））
１６／（ｆｙ（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ＋１６）−ｆｙ（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ））
【００２１】
この例では着目画素である格子点１１０１の座標（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ）に対し、＋ｘ、＋ｙ方向にそれぞれ隣接する格子点１１０２、１１０３の座標を用いて倍率を算出したが、−ｘ、−ｙ方向に隣接する格子点の座標を用いて算出しても良い。本方式の特徴は、着目画素である格子点１１０１の座標（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ）の近傍の格子点１１０２、１１０３の座標を用いて倍率を算出することである。
【００２２】
比較例として図８（Ｂ）に示すように格子点の隣接画素を使う方式について説明する。図８（Ｂ）においても、変形後の座標系１１１０において複数の格子状の領域に分割した際の各頂点１１１１、１１１４、１１１５、１１１６を格子点と呼ぶ。格子点の隣接画素を使う方式では、格子点１１１１の座標（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ）に対し隣接する画素である隣接画素１１１２の座標（ｘ＿ｄｓｔ＋１，ｙ＿ｄｓｔ）、隣接画素１１１３の座標（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ＋１）を用いて倍率を算出する。処理の概要は格子点のみを使う方式と同様であるため省略する。
【００２３】
図８（Ｂ）に例示した格子点の隣接画素を使う方式と、図８（Ａ）に例示した格子点のみを使う方式とを比較すると、格子点の隣接画素を使う方式では計算の過程で隣接する画素である隣接画素１１１２の座標、及び隣接画素１１１３の座標を算出する。しかし、これらの隣接画素の情報は格子点１１１１の座標（ｘ＿ｄｓｔ，ｙ＿ｄｓｔ）の倍率を算出するためにしか使用されない。これに対して、格子点のみを使う方式では格子点の座標のみから倍率を算出することができる。このため、格子点の隣接画素を使う方式に対して、格子点のみを使う方式では隣接画素の座標を計算するための処理を削減できる。具体的には、図８に示すように倍率を２点から求める場合、格子点の隣接画素を使う方式に対して格子点のみを使う方式は、計算処理量を２分の１にすることが可能である。そこで、本実施形態では、格子点のみを使う方式を適用して倍率情報を算出する。
【００２４】
図１に戻り、着目画素走査部１０３は、変形後の座標系において、生成対象とする着目画素の座標を生成する。着目画素走査部１０３の処理を、図２（Ａ）及び図２（Ｂ）を参照して説明する。図２（Ａ）は、変形後の座標系２００における格子点２０１と着目画素２０２との関係の例を示す図である。変形後の座標系２００の各座標に対応する変形前の座標系における格子点２０１の倍率情報が、倍率情報保持部１０６に保持されている。格子点２０１の倍率情報は、それぞれの格子点２０１に対応する変形画像１０２上の点の倍率を示す情報である。仮に変形画像１０２が入力画像１００に対して全面５０％の縮小であった場合には、各格子点２０１の倍率情報として５０％という値が保持される。
【００２５】
ここで、例えば本実施形態における処理をハードウエアによって実装する場合には、着目画素２０２を包含する４つの格子点２０１の情報を同時に参照して演算を高速化する必要性が生じることも考えられる。格子点２０１の倍率情報を同時にアクセス可能な複数の記憶領域（又はメモリ）に分割して保持することで、演算の際に必要となる格子点２０１の倍率情報を並列に参照することが可能となる。
【００２６】
このとき、着目画素２０２がどの点を参照する場合にも、着目画素２０２を包含できるように格子点２０１の倍率情報を分割する必要がある。また、着目画素２０２を包含する格子点２０１の倍率情報は同時に参照ができるように、隣接する格子点２０１の倍率情報は分割されている必要がある。このような条件を満たす分割の例として、図２（Ａ）に示すようにＡ群、Ｂ群、Ｃ群、及びＤ群の格子点２０１に分割する例がある。
【００２７】
図２（Ａ）に一例を示すように分割することで、変形後の座標系２００において何れの着目画素２０２が選択された際にも、着目画素２０２を包含する４つの格子点２０１の倍率情報を並列に参照することができる。着目画素２０２は４つの格子点２０１で包含される領域の中を走査する。
【００２８】
また、格子点の分割方法としては任意の分割方法があるが、各格子点が長方形状に配置されると着目画素２０２の倍率情報の演算を簡易化することができる。具体的には、図５（Ａ）を参照して説明する後述の方法によって算出が可能となる。また、各格子点を正方形状に配置すると、図５（Ａ）に示す例において必要となる補間演算が縦方向及び横方向（Ｘ軸方向及びＹ軸方向）に対して同じ計算で実現可能となる。
【００２９】
着目画素走査部１０３は、図２（Ｂ）のステップＳ２０１〜Ｓ２０３に示すように、格子点に包含されるよう着目画素の座標を生成し出力する処理（Ｓ２０２）を変形後の座標系において全ピクセルに繰り返し行う。
【００３０】
倍率情報参照部１０４は、着目画素走査部１０３から出力された着目画素の座標を入力とし、着目画素を包含する格子点の倍率情報を倍率情報保持部１０６から読み出すための読み出しアドレスを生成して出力する。倍率情報参照部１０４の処理を、図３（Ａ）及び図３（Ｂ）を参照して説明する。
【００３１】
図３（Ａ）には、変形後の座標系３００における格子点３０１と着目画素３０２との関係を示しており、図３（Ａ）においては格子点３０１を識別するために、括弧内にｘ方向及びｙ方向の識別子をそれぞれ付与している。ここではＡ〜Ｄ［ｘ］［ｙ］の形式で示しており、例えばＡ［１］［０］はＡ群の格子点３０１においてＸ軸方向１番目、Ｙ軸方向０番目の格子点であることを示す。
【００３２】
図３（Ａ）に示す例において、着目画素３０２の位置が選択された場合には、その着目画素を包含する格子点３０１を選択する。すなわち、左上にＤ［０］［０］の格子点３０１を、右上にＣ［１］［０］の格子点３０１を、左下にＢ［０］［１］の格子点３０１を、右下にＡ［１］［１］の格子点３０１をそれぞれ選択する。
【００３３】
倍率情報参照部１０４は、例えば選択された格子点３０１のそれぞれの識別子を、着目画素３０２を包含する格子点３０１の倍率情報の読み出しアドレスとして出力する。このようにして倍率情報参照部１０４は、図３（Ｂ）のステップＳ３０１〜Ｓ３０３に示すように、入力される着目画素の座標のそれぞれに対して、着目画素を包含する格子点の倍率情報の読み出しアドレスを生成し出力する処理（Ｓ３０２）を繰り返し行う。
【００３４】
倍率情報記憶部１０５は、入力された倍率情報参照部１０４からの着目座標を包含する格子点の倍率情報の読み出しアドレスを参照し、それら格子点の倍率情報を倍率情報保持部１０６から取得する。また、倍率情報記憶部１０５は、取得した格子点の倍率情報を倍率情報生成部１０７へ出力する。例えば、図３（Ａ）を例に説明すると、着目画素３０２を包含する、左上のＤ［０］［０］、右上のＣ［１］［０］、左下のＢ［０］［１］、右下のＡ［１］［１］の各格子点３０１の倍率情報を出力する。倍率情報記憶部１０５は、図４のステップＳ４０１〜Ｓ４０３に示すように、各着目画素について、入力された着目画素を包含する格子点の倍率情報の読み出しアドレスに基づいて、格子点の倍率情報を取得し出力する処理（Ｓ４０２）を繰り返し行う。
【００３５】
次に、倍率情報生成部１０７は、入力された倍率情報記憶部１０５からの着目画素を包含する格子点の倍率情報、及び着目画素走査部１０３からの着目画素の座標をもとに、着目画素の座標に対応する倍率情報を補間演算によって生成する。図５（Ａ）に一例を示すように、倍率情報生成部１０７は、着目画素５０４について、それを包含するＡ〜Ｄの格子点５０１の倍率情報を用いて補間演算を行って倍率情報を算出する。
【００３６】
図５（Ａ）に示した例では、まずＹ軸方向について倍率情報を補間算出する。Ａの格子点５０１及びＣの格子点５０１の倍率情報から補間点Ｉ５０２の倍率情報を補間算出し、Ｂの格子点５０１及びＤの格子点５０１の倍率情報から補間点ＩＩ５０３の倍率情報を補間算出する。次に、補間算出した補間点Ｉ５０２及び補間点ＩＩ５０３の倍率情報から着目画素５０４の倍率情報をＸ軸方向に補間算出して出力する。なお、Ａ〜Ｄの格子点５０１の倍率情報を用いてＹ軸方向で補間算出した後にＸ軸方向で補間算出する例を示したが、Ｘ軸方向で補間算出した後にＹ軸方向で補間算出するようにしてもよい。
【００３７】
このように倍率情報生成部１０７は、図５（Ｂ）のステップＳ５０１〜Ｓ５０３に示すように、各着目画素について、入力された着目画素を包含する格子点の倍率情報を用いて、着目画素の倍率情報を生成し出力する処理（Ｓ５０２）を繰り返し行う。これにより、変形画像１０２におけるすべての画素の倍率情報が生成され出力される。
【００３８】
フィルタ係数算出部１１０は、倍率情報生成部１０７から出力された変形画像１０２における各画素の倍率情報を入力として、フィルタ係数を算出する。フィルタ係数算出部１１０は、各倍率情報に対応したフィルタ係数を保持するフィルタ係数テーブル１１１を参照することによりフィルタ係数を算出する。そして、フィルタ係数算出部１１０は、算出したフィルタ係数をフィルタ処理部１０８へ出力する。
【００３９】
フィルタ処理部１０８は、入力画像１００とフィルタ係数算出部１１０からのフィルタ係数を入力として、入力画像１００に対するフィルタ処理を行い、フィルタ処理されたフィルタ処理画像を出力する。本実施形態では、フィルタ処理部１０８は、高周波成分を除去するローパスフィルタ処理（以下、「ＬＰＦ処理」と記す）を入力画像１０２に施す。
【００４０】
変形処理部１０９は、フィルタ処理部１０８からのフィルタ処理画像を入力として、フィルタ処理画像に対する画像変形処理を行い、画像変形処理された変形画像１０２を出力する。変形処理部１０９は、例えば拡大縮小等のスケーリング処理、回転等のアフィン変形処理、プロジェクタ投影におけるキーストーン（台形）補正処理、レンズ歪み補正処理、樽型歪曲補正処理、糸巻き型歪曲補正処理、円柱・角柱投影時の歪み補正処理などを行う。
【００４１】
本実施形態での入力画像１００に対するフィルタ処理について説明する。フィルタ係数テーブル１１１は、各倍率情報に対応したフィルタ係数を保持しており、倍率情報に対応するフィルタ係数を出力する。
【００４２】
以下、倍率情報として水平方向の倍率である水平倍率を例に説明する。水平倍率１００％は変形画像において、該座標の水平方向の倍率が等倍であることを意味する。また、水平倍率１００％に対して、水平倍率０％側は水平方向の倍率が小さく、水平倍率２００％側は水平方向の倍率が大きいことを意味する。なお、水平倍率の上限及び下限は画像処理装置において想定する画像変形処理の変形種別に応じて決めて良い。例えば、変形画像において水平倍率２００％を超える変形を行う際には、その上限に基づきフィルタ係数テーブル１１１に保持するフィルタ係数を変えても良い。
【００４３】
図６に一例を示すようにフィルタ係数テーブル１１１では、各水平倍率に各々フィルタ係数が対応付けられており、本実施形態ではＬＰＦ処理のフィルタ係数が保持されている。ＬＰＦ処理の係数は、着目画素を中心とする任意の領域の参照画素に対する重みづけの係数である。図６に示した例では、着目画素を中心画素とし、中心画素近傍の±２画素の範囲の計５画素分の重みづけ係数を保持している。
【００４４】
この５画素分の重みづけ係数の和は一般に１．０相当となり、中心画素に対して対称となるような係数とする。中心画素に対するフィルタ係数が１．０に近い場合には、中心画素の値が支配的になるためＬＰＦ処理の効果は低くなり、入力画像に近い画像がＬＰＦ処理後の画像として出力される。一方、中心画素に対するフィルタ係数が低い場合には、周辺画素の値が支配的になるためＬＰＦ処理の効果は高くなり、入力画像には平滑化処理が強く適用されて出力される。
【００４５】
本実施形態におけるフィルタ係数テーブル１１１では、大きな水平倍率に対してＬＰＦ処理の効果が低いフィルタ係数を対応付け、小さな水平倍率に対してＬＰＦ処理の効果が高いフィルタ係数を対応付けている。なお、ここでは水平倍率について記載したが、垂直倍率についても同様である。
【００４６】
このように倍率情報に対してフィルタ係数を対応付けることで、以下のような効果が得られる。図７において、変形前の座標系７００におけるフィルタ処理結果画像７０１に対し、画像変形処理を施した結果が変形後の座標系７１０における変形画像７１１になるとする。この例において、フィルタ処理結果画像７０１と変形画像７１１とを比較すると、フィルタ処理結果画像７０１の右上部分は左下部分に対して倍率が小さくなっている。
【００４７】
したがって、本実施形態ではフィルタ処理結果画像７０１の右上部分７０２には、左下部分７０３に対して、より強いＬＰＦ処理が適用される。ここで、ＬＰＦ処理は、画像変形処理によって生じるモアレを低減する効果がある一方で、他方では画像の明瞭感を低下させる。したがって、単にＬＰＦ処理を強く適用させるだけではモアレの低減と明瞭感の維持を両立することができない。
【００４８】
これに対して、本実施形態ではフィルタ処理結果画像７１１に示す通り、画像変形処理での倍率に応じてＬＰＦ処理の強度を変えることで、様々な種別の画像変形処理に対してモアレを低減しつつ明瞭感を維持することが可能になる。図７に示す例では、変形画像７１１において、右上部分７１２においてはモアレを中程度に低減しつつ明瞭感を中程度に維持し、一方で左下部分７１３においてもモアレを中程度に低減しつつ明瞭感を良く維持することが可能となる。本実施形態では、倍率情報を算出する際の計算量を低減し、様々な種別の画像変形処理において、より少ない計算量でモアレの軽減と明瞭感の維持の両立が可能になる。
【００４９】
なお、本実施形態では変形前の画像を複数の領域に分割し、各領域に対応する変形後の倍率情報に基づき処理を行う例を示したが、変形後の画像を複数の領域に分割し、各領域に対応する変形前の倍率情報に基づき処理を行うようにしても良い。ただし、この場合には、同様の効果を得るためにはフィルタ係数テーブル１１１に保持する倍率情報とフィルタ係数の強度の関係は、図６に示した例とは逆にする必要がある。すなわち、変形前の倍率が小さいものに対してＬＰＦ処理の強度を弱くし、変形前の倍率が大きいものに対してＬＰＦ処理の強度を強くなるよう、フィルタ係数テーブル１１１におけるフィルタ係数を対応付けるようにすればよい。このようにすることで、変形後の画像を走査して画像変形処理を行う場合の構成に対しても、種々の画像変形処理に応じたモアレ低減処理を実行することができる。
【００５０】
なお、本実施形態ではフィルタ処理部１０８としてＬＰＦ処理を例に示したが、シャープネス処理等の他のフィルタ処理であっても良い。この場合には、フィルタ処理部１０８としてＬＰＦ処理に限らず、画像の周波数成分を調整する他の任意のフィルタ処理によっても、種々の画像変形処理に応じたモアレ低減処理を実行することが可能となる。また、各格子点に対応する変形後の倍率を算出する計算処理を、各格子点の隣接画素を用いて算出する場合に比べて２分の１にすることが可能である。
【００５１】
（本発明の他の実施形態）
本発明は、前述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００５２】
例えば、前述の実施形態に示した画像処理装置は、図９に示すようなコンピュータ機能９００を有し、そのＣＰＵ９０１により前述の実施形態での動作が実施される。コンピュータ機能９００は、図９に示すように、ＣＰＵ９０１と、ＲＯＭ９０２と、ＲＡＭ９０３とを有する。また、操作部（ＣＯＮＳ）９０９のコントローラ（ＣＯＮＳＣ）９０５と、表示部としてのディスプレイ（ＤＩＳＰ）９１０のディスプレイコントローラ（ＤＩＳＰＣ）９０６とを有する。さらに、ハードディスク（ＨＤ）９１１、及びフレキシブルディスク等の記憶デバイス（ＳＴＤ）９１２のコントローラ（ＤＣＯＮＴ）９０７と、ネットワークインタフェースカード（ＮＩＣ）９０８とを有する。それら機能部９０１、９０２、９０３、９０５、９０６、９０７、９０８は、システムバス９０４を介して互いに通信可能に接続された構成としている。
【００５３】
ＣＰＵ９０１は、ＲＯＭ９０２又はＨＤ９１１に記憶されたソフトウエア、又はＳＴＤ９１２より供給されるソフトウエアを実行することで、システムバス９０４に接続された各構成部を総括的に制御する。すなわち、ＣＰＵ９０１は、前述したような動作を行うための処理プログラムを、ＲＯＭ９０２、ＨＤ９１１、又はＳＴＤ９１２から読み出して実行することで、前述の実施形態での動作を実現するための制御を行う。ＲＡＭ９０３は、ＣＰＵ９０１の主メモリ又はワークエリア等として機能する。ＣＯＮＳＣ９０５は、ＣＯＮＳ９０９からの指示入力を制御する。ＤＩＳＰＣ９０６は、ＤＩＳＰ９１０の表示を制御する。ＤＣＯＮＴ９０７は、ブートプログラム、種々のアプリケーション、ユーザファイル、ネットワーク管理プログラム、及び前述したような動作を行うための処理プログラム等を記憶するＨＤ９１１及びＳＴＤ９１２とのアクセスを制御する。ＮＩＣ９０８はネットワーク９１３上の他の装置と双方向にデータをやりとりする。
【００５４】
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００５５】
１００：入力画像  １０１：画像処理装置  １０２：変形画像  １０３：着目画素走査部  １０４：倍率情報参照部  １０５：倍率情報記憶部  １０６：倍率情報保持部  １０７：倍率情報生成部  １０８：フィルタ処理部  １０９：変形処理部  １１０：フィルタ係数算出部  １１１：フィルタ係数テーブル  １１２：座標情報算出部  １１３：格子座標情報保持部  １１４：倍率情報算出部
【図１】
2017120530.tif 000003
【図２】
2017120530.tif 000004
【図３】
2017120530.tif 000005
【図４】
2017120530.tif 000006
【図５】
2017120530.tif 000007
【図６】
2017120530.tif 000008
【図７】
2017120530.tif 000009
【図８】
2017120530.tif 000010
【図９】
2017120530.tif 000011