(57)【要約】【課題】変形処理後の画質を維持しながら、変形処理に必要なキャッシュメモリ量を削減する。【解決手段】画像変形装置１０は、画像を入力する入力部１１と、入力された画像を格納するフレームメモリ１２と、入力された画像を変形処理する際の変形処理パラメータＰ１を格納するパラメータメモリ１３と、フレームメモリ１２からのデータ読み込み効率を向上させるため、フレームメモリ１２に格納された画像に含まれる画素ブロックを一時的に格納するキャッシュメモリ１４と、変形処理パラメータＰ１を使用してキャッシュメモリ１４に格納された画像に変形処理を施す際に補間処理を実施して出力画素を合成する変形処理部１６と、変形処理が施された画像を出力する出力部１７とを備え、変形処理部１６は、出力座標系上のある点に対応した入力座標系上の点の座標に応じて補間処理における補間方法を選択的に切り替える。【選択図】図１２
2015069272.tif 000002
【特許請求の範囲】
【請求項１】
画像を入力する入力部と、
入力された画像を格納するフレームメモリと、
入力された画像を変形処理する際の変形処理パラメータを格納するパラメータメモリと、
前記フレームメモリからのデータ読み込み効率を向上させるため、前記フレームメモリに格納された画像に含まれる画素ブロックを一時的に格納するキャッシュメモリと、
前記変形処理パラメータを使用して前記キャッシュメモリに格納された画像に変形処理を施す際に補間処理を実施して出力画素を合成する変形処理部と、
前記変形処理が施された画像を出力する出力部とを備え、
前記変形処理部は、出力座標系上のある点に対応した入力座標系上の点の座標に応じて前記補間処理における補間方法を選択的に切り替えることを特徴とする画像変形装置。
【請求項２】
前記変形処理部は、前記出力画素を合成する際に前記画素ブロックの境界をまたがって画素が参照されない補間方法を選択することを特徴とする請求項１記載の画像変形装置。
【請求項３】
前記変形処理部は、前記画素ブロックのうち最外周の画素よりも外側の枠領域に前記入力座標系上の点の座標がある場合は最近傍補間を選択し、前記画素ブロックのうち前記枠領域を除く矩形領域に前記入力座標系上の点の座標がある場合は双一次補間を選択することを特徴とする請求項２記載の画像変形装置。
【請求項４】
前記変形処理部は、前記枠領域の四隅に相当するコーナー領域に前記入力座標系上の点の座標がある場合は最近傍補間を選択し、前記枠領域のうち前記コーナー領域を除く四辺領域に前記入力座標系上の点の座標がある場合は隣接２点補間を選択することを特徴とする請求項３記載の画像変形装置。
【請求項５】
画像を入力する入力ステップと、
入力された画像をフレームメモリに格納する第１の格納ステップと、
入力された画像を変形処理する際の変形処理パラメータをパラメータメモリに格納する第２の格納ステップと、
前記フレームメモリからのデータ読み込み効率を向上させるため、前記フレームメモリに格納された画像に含まれる画素ブロックを一時的にキャッシュメモリに格納する第３の格納ステップと、
前記変形処理パラメータを使用して前記キャッシュメモリに格納された画像に変形処理を施す際に補間処理を実施して出力画素を合成する変形ステップと、
前記変形処理が施された画像を出力する出力ステップとを備え、
前記変形ステップでは、出力座標系上のある点に対応した入力座標系上の点の座標に応じて前記補間処理における補間方法を選択的に切り替えることを特徴とする画像変形方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像変形装置および画像変形方法に関する。
【背景技術】
【０００２】
従来、入力された画像を変形させて出力する画像処理装置が知られている。例えば、図８に示すように、魚眼レンズや超広角レンズを用いた撮像装置より入力される画像は歪んでいるため、この歪みを電子的に補正する画像変形装置１０が提案されている（特許文献１参照）。また、プロジェクタやＨＵＤ（Head Up Display）のような投影装置を用いた場合は、投影装置の設置角度や投射対象となるスクリーン形状が原因で、入力画像をそのまま投影すると投影画像が歪むことがある。そこで、図９に示すように、入力画像をあらかじめ画像変形装置１０で変形させておき、変形後の画像を投影装置に送ることで投影画像の歪みを解消する技術が提案されている（特許文献２参照）。
【０００３】
画像変形装置１０において画像を変形するには次の手順を踏む。まず、外部より入力されてきた画像1フレーム分を走査線順に画像メモリ（以下、フレームメモリ１２）へ格納する。次に、これを出力する際に、走査線順ではなく変形を考慮した画像データ読み込み制御、より具体的には“入力画像の画素データ再配置”という操作を行うことで変形を実現する。以下、具体例を挙げて説明する。
【０００４】
入力画像上の座標系（以下「入力座標系」）と、出力画像上の座標系（以下「出力座標系」）とを考え、入力画像と出力画像それぞれの画素を入力座標系と出力座標系それぞれの格子点に対応させる。そして、出力座標系上の各格子点について入力座標系上で対応する位置を求め、その位置における画素値から出力画素を計算する。出力座標系上の格子点が入力座標系上の格子点と１対１で対応している場合は、入力画素がそのまま出力画素として出力される。しかし、変形形状によっては対応する位置の座標が整数値にならない、つまり出力座標系上の格子点が入力座標系上の格子点上にない場合がある。この場合は、指定された位置に最も近い入力座標系上の格子点で代表させる方法（最近傍補間（ニアレストネイバー））や、周囲の画素値に対して補間演算（隣接２点補間，双一次補間（バイリニア補間），双三次補間（バイキュービック補間））を適用し出力画素値を得る。
【０００５】
図１０に画素データ再配置の例を示す。図１０は、入力座標系と出力座標系の対応をデータ配列（変形処理パラメータＰ１）によって表すタイプの変形方法である。ここで、出力座標系上の点O[0,0]に着目し、この出力点に対応する入力座標系上の点を求める場合を考える。この場合、入力座標系と出力座標系の対応を記したデータ配列（変形処理パラメータＰ１）を参照することで、出力座標系上の点O[0,0]に対応するのは入力座標系上の点I[0,0]であることがわかるため、この画素値を出力する。次に、出力座標系上の点O[2,1]に着目した場合、これに対応する入力座標系上の点はI[2,1.5]であるが、この位置は入力座標系上の格子点ではなく１対１で対応する画素は存在しない。この場合にとりうる手段としては、I[2,1]とI[2,2]の画素値に対して補間演算を適用しI[2,1.5]の画素値を合成する方法や（双一次補間（バイリニア補間））、 I[2,1]に代表させる方法（最近傍補間（ニアレストネイバー））などがある。
【０００６】
図１０で述べた変形処理を実現するための構成を図１１に示す。図１１は、画像変形装置１０の基本的な構成であり、入力部１１と、出力部１７と、変形処理部１６と、フレームメモリ１２と、パラメータメモリ１３とを備える。入力部１１は、外部から入力されてきた画像をフレームメモリ１２へ格納する。出力部１７は、変形処理が完了した画像を外部へ出力する。変形処理部１６は、画像の変形処理を行う。具体的には、図１０にて説明した“入力画像の画素データ再配置”という操作を行う。フレームメモリ１２は、入力部１１からの画像を格納する。パラメータメモリ１３は、変形処理における入力座標系と出力座標系の対応をデータ配列（変形処理パラメータＰ１）として格納する。
【０００７】
なお、歪みの形状が台形のように数式で表現できる場合は、変形処理パラメータＰ１を逐次計算して生成することができる。この場合は、パラメータメモリ１３の代わりに変形座標の発生器を置くことになる。
【０００８】
ところで、例に挙げた画像変形装置１０においては、画面サイズに応じたフレームメモリ１２が必要となる。レンズの歪み補正に限らず、台形や平行四辺形といった変形形状に対応するためには、フレームメモリ１２の特定の箇所を高速に読み込む必要がある。特定の箇所を高速に読み込むアクセス、一般に“ランダムアクセス”と呼ばれるアクセスにはSRAM（Static Random Access Memory）が適している。しかし、フレームメモリ１２を実現するに足る大容量のSRAMは非常に高価であり、これを画像変形装置１０のフレームメモリ１２に使うことはとても現実的とはいえない。逆に安価なDRAM（Dynamic Random Access Memory）を使用すると、変形形状によっては画素データの読み込みが変形処理に追いつかず、リアルタイム処理を実現できないといった問題がある。
【０００９】
これを改善するため、図１２に示すように、DRAMで構成されるフレームメモリ１２と変形処理部１６との間に、SRAMで構成されるキャッシュメモリ１４を設け、フレームメモリ１２からのデータ読み込み効率を改善する方法がとられる（特許文献３、非特許文献１参照）。キャッシュメモリ１４は、読み込みデータの局所性を利用し、読み込み対象となったデータだけではなく、次サイクルや次々サイクルで読み込まれる可能性が高い周辺データをもあらかじめ読み込んでおく。こうすることで、フレームメモリ１２へのランダムアクセスが頻発するような状況を防ぐ。
【００１０】
図１３は、キャッシュメモリ１４を用いた画像変形装置１０の基本的な動作を示したフローチャートである。変形処理部１６は、パラメータメモリ１３から変形処理パラメータＰ１を読み込み、処理対象となる画素データをキャッシュメモリ１４に対して要求する（Ｓ３１→Ｓ３２）。ここで、処理対象となる画素データがキャッシュメモリ１４中にある場合はキャッシュメモリ１４から画素データを読み込む（Ｓ３３→Ｓ３５）。そうではない場合は、フレームメモリ１２から対象データおよび次サイクルや次々サイクルで読み込まれる可能性が高い周辺データを一緒にキャッシュメモリ１４へ読み込んでおく（Ｓ３３→Ｓ３４）。
【００１１】
以下、図１４をもとに詳しく説明する。図１４は、画像変形装置１０のフレームメモリ１２およびキャッシュメモリ１４の概念図である。フレームメモリ１２には２次元ブロック状で画素データが格納されており、キャッシュメモリ１４へのデータ読み込みもこのブロック単位（以降、画素ブロック）で行われるとする。また、１つの画素ブロックは８×８画素で構成されるものとし、補間方法としては最近傍補間（ニアレストネイバー）を適用して出力画素を合成するものとする。図１４におけるフレームメモリ１２の座標上に示される×印は、出力画素を合成するために必要とされている入力座標系上の座標である。また、これに隣接している黒色の点は、最近傍補間（ニアレストネイバー）にて選択される画素である。
【００１２】
今仮に、出力画素を合成するために必要な最近傍画素がフレームメモリ１２中のデータ[0], データ[1], データ[2]…であり、これに対する読み込み要求が変形処理部１６より順に発行された場合を考える。変形処理部１６は、最初のデータ[0]を読み込むため、キャッシュメモリ１４に読み込み要求を出す。しかし、データ[0]はキャッシュメモリ１４中に存在しないので、キャッシュメモリ１４からフレームメモリ１２へ読み込み要求を出し、データ[0]を含む画素ブロックA0をキャッシュメモリ１４へ読み込む。その後、変形処理部１６は、キャッシュメモリ１４よりデータ[0]を読み込み、変形処理を行う。次に、データ[1]の読み込み要求があった場合、このデータ[1]はキャッシュメモリ１４中に存在するため、フレームメモリ１２へのアクセスは発生しない。以降、データ[7]まではキャッシュメモリ１４へのアクセスのみでデータ読み込みが完了する。データ[8]を読み込む際には、フレームメモリ１２から再度画素ブロックB0を読み込む必要がある。まとめると、図１５に示すタイムチャートの通り、（１）キャッシュメモリ１４中にデータあり、（２）キャッシュメモリ１４中にデータなし、（３）当該データを含む画素ブロックをフレームメモリ１２から読み込む、というサイクルを繰り返す。 
次に、補間演算適用時におけるキャッシュメモリ１４へのアクセスについて詳しく説明する。図１４および図１５で述べた例は、前記のとおり、最近傍補間（ニアレストネイバー）を適用した場合のアクセスパターンであり、画像変形装置１０において出力座標系上の格子点が入力座標系上の格子点上にないときは、指定された位置に最も近い入力座標系上の格子点で代表させる。この方法は、省メモリ・省ハードウェアで実現することができるが、変形処理後の画像の画質が大きく劣化するという問題がある。そのため、ほとんどの変形処理においては、周囲の画素値に対して複数点を参照する補間演算（双一次補間（バイリニア補間），双三次補間（バイキュービック補間））を用いて出力画素値を得る手法がとられる。例として、双一次補間（バイリニア補間）を適用した場合の動きを説明する。 
キャッシュメモリ１４へのデータ読み込みの基本的なフローについては、図１３と同様である。しかし、双一次補間（バイリニア補間）を適用する場合、出力座標系上の点に対応する入力座標系上の点に最も隣接する４画素を必要とする。例えば、ある出力座標系上の１点に対応する入力座標系上の１点がI[7.1, 7.3]である場合、最近傍補間（ニアレストネイバー）ではI[7, 7]の画素で代表させるのに対して、双一次補間（バイリニア補間）ではI[7, 7], I[7, 8], I[8, 7], I[8, 8] の４画素から合成する。
【００１３】
図１６、図１７に、双一次補間（バイリニア補間）を適用した場合のアクセスパターンおよびタイムチャートの例を示す。図１６におけるフレームメモリ１２の座標上に示される×印は、出力画素を合成するために必要とされている入力座標系上の座標である。また、これに最も隣接している黒色の４点は、双一次補間（バイリニア補間）にて選択される画素である。この例では、出力画素O[7]を生成する際、すでにキャッシュメモリ１４上にある画素ブロックA0に加え、A1,B0,B1を追加で読み込む必要がある。そして、４画素のデータがすべてそろった時点で出力画素O[7]を合成する。双三次補間（バイキュービック補間）など高度な補間方法を適用する場合、参照する点がさらに多くなるため、キャッシュメモリ１４への読み込み回数がさらに増える場合もある。 
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特開平４−６１５７０号公報
【特許文献２】特開平８−９８１１９号公報
【特許文献３】特開平１１−１６７５２０号公報
【非特許文献】
【００１５】
【非特許文献１】David A. Patterson, John L. Hennessy, “Computer Architecture, Third Edition : A Quantitative Approach”, Morgan Kaufmann
【発明の概要】
【発明が解決しようとする課題】
【００１６】
このように、補間方法として最近傍補間（ニアレストネイバー）を適用した場合、変形後画像の画質が大きく劣化してしまう。また、補間方法として双一次補間（バイリニア補間）を適用した場合、変形後の画質は向上するが、図１７のタイミングチャートに示す通り、キャッシュメモリ１４へのアクセスが頻発し、またキャッシュメモリ１４の量も同時に参照される画素数にあわせて増やす必要がある。すなわち、双一次補間（バイリニア補間）では、参照する４画素がそれぞれ別の画素ブロック上に格納されている場合があるため、最低でも４画素ブロックを同時に格納するだけのキャッシュメモリ１４が必要になる。
【００１７】
本発明は前記課題を解決するためになされたものであり、その目的は、変形処理後の画質を維持しながら、変形処理に必要なキャッシュメモリ量を削減することのできる画像変形装置および画像変形方法を提供することである。
【課題を解決するための手段】
【００１８】
前記課題を解決するために、本発明の実施形態に係る画像変形装置は、画像を入力する入力部と、入力された画像を格納するフレームメモリと、入力された画像を変形処理する際の変形処理パラメータを格納するパラメータメモリと、前記フレームメモリからのデータ読み込み効率を向上させるため、前記フレームメモリに格納された画像に含まれる画素ブロックを一時的に格納するキャッシュメモリと、前記変形処理パラメータを使用して前記キャッシュメモリに格納された画像に変形処理を施す際に補間処理を実施して出力画素を合成する変形処理部と、前記変形処理が施された画像を出力する出力部とを備え、前記変形処理部は、出力座標系上のある点に対応した入力座標系上の点の座標に応じて前記補間処理における補間方法を選択的に切り替えることを特徴とする。
【００１９】
また、前記変形処理部は、前記出力画素を合成する際に前記画素ブロックの境界をまたがって画素が参照されない補間方法を選択してもよい。
【００２０】
また、前記変形処理部は、前記画素ブロックのうち最外周の画素よりも外側の枠領域に前記入力座標系上の点の座標がある場合は最近傍補間を選択し、前記画素ブロックのうち前記枠領域を除く矩形領域に前記入力座標系上の点の座標がある場合は双一次補間を選択してもよい。
【００２１】
また、前記変形処理部は、前記枠領域の四隅に相当するコーナー領域に前記入力座標系上の点の座標がある場合は最近傍補間を選択し、前記枠領域のうち前記コーナー領域を除く四辺領域に前記入力座標系上の点の座標がある場合は隣接２点補間を選択してもよい。
【００２２】
前記課題を解決するために、本発明の実施形態に係る画像変形方法は、画像を入力する入力ステップと、入力された画像をフレームメモリに格納する第１の格納ステップと、入力された画像を変形処理する際の変形処理パラメータをパラメータメモリに格納する第２の格納ステップと、前記フレームメモリからのデータ読み込み効率を向上させるため、前記フレームメモリに格納された画像に含まれる画素ブロックを一時的にキャッシュメモリに格納する第３の格納ステップと、前記変形処理パラメータを使用して前記キャッシュメモリに格納された画像に変形処理を施す際に補間処理を実施して出力画素を合成する変形ステップと、前記変形処理が施された画像を出力する出力ステップとを備え、前記変形ステップでは、出力座標系上のある点に対応した入力座標系上の点の座標に応じて前記補間処理における補間方法を選択的に切り替えることを特徴とする。
【発明の効果】
【００２３】
本発明によれば、変形処理後の画質を維持しながら、変形処理に必要なキャッシュメモリ量を削減することのできる画像変形装置および画像変形方法を提供することが可能である。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施形態に係る画像変形装置の処理順序を示す図である。
【図２】本発明の実施例１に係る画像変形装置が補間方法を選択する際の判断基準を示す図である。
【図３】本発明の実施例１に係る画像変形装置のフレームメモリおよびキャッシュメモリの概念を示す図である。
【図４】本発明の実施例１に係る画像変形装置のフレームメモリおよびキャッシュメモリの動作時のタイムチャートである。
【図５】本発明の実施例２に係る画像変形装置が補間方法を選択する際の判断基準を示す図である。
【図６】本発明の実施例２に係る画像変形装置のフレームメモリおよびキャッシュメモリの概念を示す図である。
【図７】本発明の実施例２に係る画像変形装置のフレームメモリおよびキャッシュメモリの動作時のタイムチャートである。
【図８】従来の一般的な画像変形装置の説明図である。
【図９】従来の一般的な画像変形装置の説明図である。
【図１０】従来の一般的な画像変形装置の原理を示す図である。
【図１１】従来の一般的な画像変形装置の構成を示す図である。
【図１２】従来の別の画像変形装置（および本発明の実施形態に係る画像変形装置）の構成を示す図である。
【図１３】従来の別の画像変形装置の処理順序を示す図である。
【図１４】従来の画像変形装置のフレームメモリおよびキャッシュメモリの概念を示す図であって、補間方法として最近傍補間を適用した場合を示す図である。
【図１５】従来の画像変形装置のフレームメモリおよびキャッシュメモリの動作時のタイムチャートであって、補間方法として最近傍補間を適用した場合を示す図である。
【図１６】従来の画像変形装置のフレームメモリおよびキャッシュメモリの概念を示す図であって、補間方法として双一次補間を適用した場合を示す図である。
【図１７】従来の画像変形装置のフレームメモリおよびキャッシュメモリの動作時のタイムチャートであって、補間方法として双一次補間を適用した場合を示す図である。
【発明を実施するための形態】
【００２５】
以下、本発明の実施形態について図面を参照して詳細に説明する。ただし、この実施形態で記載されている構成は本発明の特徴をわかりやすく説明するための例であり、発明の範囲を限定するものではない。
【００２６】
（画像変形装置の構成）
本発明の実施形態に係る画像変形装置１０は、レンズ歪みの補正、プロジェクタの台形補正、ヘッドアップディスプレイなど、入力されてくる静止画および動画の形状を変形する装置に適用することができる。このような画像変形装置１０において変形処理の効率を上げるためには、フレームメモリ１２上に格納された画像の一部を必要に応じて読み込むためのキャッシュメモリ１４が不可欠である。本発明の実施形態では、変形処理後の画質を維持しながら、変形処理に必要なキャッシュメモリ量を削減するため、以下の構成を採用している。
【００２７】
すなわち、図１２に示すように、本発明の実施形態に係る画像変形装置１０は、入力部１１と、フレームメモリ１２と、パラメータメモリ１３と、キャッシュメモリ１４と、変形処理部１６と、出力部１７とを備える。入力部１１は、画像を入力する。フレームメモリ１２は、入力された画像を格納する。パラメータメモリ１３は、入力された画像を変形処理する際の変形処理パラメータＰ１を格納する。キャッシュメモリ１４は、フレームメモリ１２からのデータ読み込み効率を向上させるため、フレームメモリ１２に格納された画像に含まれる画素ブロックを一時的に格納する。変形処理部１６は、変形処理パラメータＰ１を使用してキャッシュメモリ１４に格納された画像に変形処理を施す際に補間処理を実施して出力画素を合成する。出力部１７は、変形処理が施された画像を出力する。
【００２８】
ここで、変形処理部１６は、出力座標系上のある点に対応した入力座標系上の点の座標に応じて補間処理における補間方法を選択的に切り替える。具体的には、変形処理部１６は、出力画素を合成する際に画素ブロックの境界をまたがって画素が参照されない補間方法を選択するようになっている。
【００２９】
（画像変形装置の動作）
図１は、本発明の実施形態に係る画像変形装置１０の処理順序を示す図である。変形処理部１６は、パラメータメモリ１３から変形処理パラメータＰ１を読み込み、後述する手法で補正方法を選択した後（Ｓ１→Ｓ２）、処理対象となる画素データをキャッシュメモリ１４に対して要求する（Ｓ３）。ここで、処理対象となる画素データがキャッシュメモリ１４中にある場合はキャッシュメモリ１４から画素データを読み込む（Ｓ４→Ｓ６）。そうではない場合は、フレームメモリ１２から対象データおよび次サイクルや次々サイクルで読み込まれる可能性が高い周辺データを一緒にキャッシュメモリ１４へ読み込んでおく（Ｓ４→Ｓ５）。その後、ステップＳ２で選択した補間方法で補間演算を適用し、変形処理が施された画像を外部に出力する（Ｓ６→Ｓ７→Ｓ８）。
【００３０】
（実施例１）
図２は、本発明の実施例１に係る画像変形装置１０が補間方法を選択する際の判断基準を示す図である。図２に示されるN, Mは整数であり、それぞれキャッシュブロックの横、縦のサイズを表す。キャッシュブロックとは、キャッシュメモリ１４に格納される画素ブロックである。変形処理部１６は、出力座標系上のある点に対応した入力座標系の座標に応じて補間方法を切り替える。以下では、要求されている入力座標を (x, y) と表し、この(x,y) に相当するキャッシュブロック中のローカル座標を(x’,y’)と表す。x’,y’は実数であり、それぞれ -0.5≦x’＜M+0.5, -0.5≦y’＜N+0.5 を満たす。
【００３１】
すなわち、変形処理部１６は、枠領域Ｅ１に入力座標系上の点の座標(x’,y’)がある場合は最近傍補間を選択し、矩形領域Ｅ２に入力座標系上の点の座標(x’,y’)がある場合は双一次補間を選択する。枠領域Ｅ１は、キャッシュブロックのうち最外周の画素よりも外側の領域であり、具体的には、以下の条件を満たす領域である。矩形領域Ｅ２は、キャッシュブロックのうち枠領域Ｅ１を除く領域である。
【００３２】
＜枠領域Ｅ１＞  最近傍補間（ニアレストネイバー）
(-0.5≦x’＜0.0)   もしくは
(M≦x’＜M+0.5)  もしくは
(-0.5≦y’＜0.0)   もしくは
(N≦y’＜N+0.5) 
＜矩形領域Ｅ２＞  双一次補間（バイリニア補間）
枠領域Ｅ１を除く領域
図３は、本発明の実施例１に係る画像変形装置１０のフレームメモリ１２およびキャッシュメモリ１４の概念を示す図である。図中に示される×印や黒色の点の意味は、図１４や図１６と同様である。
【００３３】
まず、データ[0]〜データ[6] の座標は矩形領域Ｅ２にあるため、補間方法として双一次補間が選択される。一方、データ[7] の座標は枠領域Ｅ１にあるため、補間方法として最近傍補間が選択される。このようにすれば、出力画素を合成する際に画素ブロックA0の境界をまたがって画素が参照されることがない。
【００３４】
また、データ[8]〜データ[9]の座標は枠領域Ｅ１にあるため、補間方法として最近傍補間が選択される。一方、データ[10]〜データ[13]は矩形領域Ｅ２にあるため、補間方法として双一次補間が選択される。このようにすれば、出力画素を合成する際に画素ブロックB1の境界をまたがって画素が参照されることがない。
【００３５】
以降のデータ[14]…についても同様である。すなわち、枠領域Ｅ１に入力座標系上の点の座標(x’,y’)がある場合は最近傍補間が選択され、矩形領域Ｅ２に入力座標系上の点の座標(x’,y’)がある場合は双一次補間が選択される。
【００３６】
図４は、本発明の実施例１に係る画像変形装置１０のフレームメモリ１２およびキャッシュメモリ１４の動作時のタイムチャートである。この図に示すように、出力画素O[0] 〜O[7]を合成する際は、画素ブロックA0内の画素だけを参照すればよい。すなわち、従来技術（図１７）のように、出力画素O[7]を生成する際、すでにキャッシュメモリ１４上にある画素ブロックA0に加え、A1,B0,B1を追加で読み込む必要がない。そのため、従来技術と比べてキャッシュメモリ数が削減され、また、キャッシュロード時間が削減される。
【００３７】
以上のように、本発明の実施例１では、画素ブロックのうち最外周の画素よりも外側の枠領域Ｅ１に入力座標系上の点の座標(x’,y’)がある場合は最近傍補間を選択し、画素ブロックのうち枠領域Ｅ１を除く矩形領域Ｅ２に入力座標系上の点の座標(x’,y’)がある場合は双一次補間を選択する。このようにすれば、出力画素を合成する際に画素ブロックの境界をまたがって画素が参照されることがないため、変形処理後の画質を維持しながら、変形処理に必要なキャッシュメモリ量を削減することができる。
【００３８】
（実施例２）
以下、本発明の実施例２を実施例１と異なる点を中心に説明する。
【００３９】
図５は、本発明の実施例２に係る画像変形装置１０が補間方法を選択する際の判断基準を示す図である。ここでは、変形処理部１６は、コーナー領域Ｅ３に入力座標系上の点の座標(x’,y’)がある場合は最近傍補間を選択し、四辺領域Ｅ４に入力座標系上の点の座標(x’,y’)がある場合は隣接２点補間を選択する。矩形領域Ｅ２に入力座標系上の点の座標(x’,y’)がある場合に双一次補間を選択する点は、実施例１と同様である。コーナー領域Ｅ３は、枠領域Ｅ１の四隅に相当する領域であり、具体的には、以下の条件を満たす領域である。四辺領域Ｅ４は、枠領域Ｅ１のうちコーナー領域Ｅ３を除く領域であり、具体的には、以下の条件を満たす領域である。矩形領域Ｅ２は、コーナー領域Ｅ３および四辺領域Ｅ４（すなわち、枠領域Ｅ１）を除く領域である。
【００４０】
＜コーナー領域Ｅ３＞  最近傍補間（ニアレストネイバー）
(-0.5≦x’＜0.0) & (-0.5≦y’＜0.0)  もしくは
(M≦x’＜M+0.5) & (-0.5≦y’＜0.0)  もしくは
(-0.5≦x’＜0.0) & (N≦y’＜N+0.5)  もしくは
(M≦x’＜M+0.5) & (N≦y’＜N+0.5)
＜四辺領域Ｅ４＞  隣接２点補間
コーナー領域Ｅ３を除く範囲であり、かつ
(-0.5≦x’＜0.0)  もしくは
(M≦x’＜M+0.5)  もしくは
(-0.5≦y’＜0.0)  もしくは
(N≦y’＜N+0.5)
＜矩形領域Ｅ２＞  双一次補間（バイリニア補間）
コーナー領域Ｅ３および四辺領域Ｅ４を除く領域
図６は、本発明の実施例２に係る画像変形装置１０のフレームメモリ１２およびキャッシュメモリ１４の概念を示す図である。図中に示される×印や黒色の点の意味は、図３、図１４、図１６と同様である。
【００４１】
まず、データ[0]〜データ[6] の座標は矩形領域Ｅ２にあるため、補間方法として双一次補間が選択される。また、データ[7] の座標はコーナー領域Ｅ３にあるため、補間方法として最近傍補間が選択される。更に、データ[8]〜データ[9]の座標は四辺領域Ｅ４にあるため、補間方法として隣接２点補間が選択される。このようにすれば、実施例１と同様、出力画素を合成する際に画素ブロックの境界をまたがって画素が参照されることがない。また、四辺領域Ｅ４については隣接２点補間が選択され、同一画素ブロック内の複数の画素が参照されることになる。
【００４２】
以降のデータ[10]…についても同様である。すなわち、コーナー領域Ｅ３に入力座標系上の点の座標(x’,y’)がある場合は最近傍補間が選択され、四辺領域Ｅ４に入力座標系上の点の座標(x’,y’)がある場合は隣接２点補間が選択され。矩形領域Ｅ２に入力座標系上の点の座標(x’,y’)がある場合は双一次補間が選択される。
【００４３】
図７は、本発明の実施例２に係る画像変形装置１０のフレームメモリ１２およびキャッシュメモリ１４の動作時のタイムチャートである。実施例１と同様、出力画素O[0] 〜O[7]を合成する際は、画素ブロックA0内の画素だけを参照すればよい。すなわち、従来技術（図１７）のように、出力画素O[7]を生成する際、すでにキャッシュメモリ１４上にある画素ブロックA0に加え、A1,B0,B1を追加で読み込む必要がない。そのため、従来技術と比べてキャッシュメモリ数が削減され、また、キャッシュロード時間が削減される。
【００４４】
以上のように、本発明の実施例２では、枠領域Ｅ１の四隅に相当するコーナー領域Ｅ３に入力座標系上の点の座標(x’,y’)がある場合は最近傍補間を選択し、枠領域Ｅ１のうちコーナー領域Ｅ３を除く四辺領域Ｅ４に入力座標系上の点の座標(x’,y’)がある場合は隣接２点補間を選択する。このようにすれば、実施例１と同様、出力画素を合成する際に画素ブロックの境界をまたがって画素が参照されることがないため、変形処理後の画質を維持しながら、変形処理に必要なキャッシュメモリ量を削減することができる。また、四辺領域Ｅ４については隣接２点補間が選択され、同一画素ブロック内の複数の画素が参照されることになるため、実施例１に比べて画質が向上する。
【００４５】
なお、図面上、フレームメモリ１２とパラメータメモリ１３は別のメモリとして構成されているが、あくまで概念上のものであり、本発明はこれに限ったものではない。すなわち、同一メモリのある区画をフレームメモリ１２、別の区画をパラメータメモリ１３として利用することも可能であるし、ひとつのフレームメモリ１２やパラメータメモリ１３が複数の物理メモリを使用して構成されてもよい。
【００４６】
また、実施例１，２では、最近傍補間、隣接２点補間、双一次補間を選択的に切り替える手法について説明したが、補間方法の候補はこれに限らない。例えば、双三次補間（バイキュービック補間）などを補間方法の候補としてもよい。
【００４７】
以上説明したように、本発明によれば、変形処理後の画質を維持しながら、変形処理に必要なキャッシュメモリ量を削減することができる。 
[その他の実施形態]
本発明を実施例１、２によって記載したが、この開示の一部をなす論述および図面は例示的なものであり、この発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例および運用技術が明らかとなろう。
【符号の説明】
【００４８】
１０…画像変形装置
１１…入力部
１２…フレームメモリ
１３…パラメータメモリ
１４…キャッシュメモリ
１６…変形処理部
１７…出力部
Ｐ１…変形処理パラメータ
Ｅ１…枠領域
Ｅ２…矩形領域
Ｅ３…コーナー領域
Ｅ４…四辺領域
【図１】
2015069272.tif 000003
【図２】
2015069272.tif 000004
【図３】
2015069272.tif 000005
【図４】
2015069272.tif 000006
【図５】
2015069272.tif 000007
【図６】
2015069272.tif 000008
【図７】
2015069272.tif 000009
【図８】
2015069272.tif 000010
【図９】
2015069272.tif 000011
【図１０】
2015069272.tif 000012
【図１１】
2015069272.tif 000013
【図１２】
2015069272.tif 000014
【図１３】
2015069272.tif 000015
【図１４】
2015069272.tif 000016
【図１５】
2015069272.tif 000017
【図１６】
2015069272.tif 000018
【図１７】
2015069272.tif 000019