(57)【要約】【課題】原画像をアフィン変換した場合に、高画質な画像を生成すること【解決手段】逆アフィン変換部１１０は、転写先の出力画像を構成する複数の画素の各々について、画素各々に対応した座標である第１の座標を逆アフィン変換する。順アフィン変換部１２０は、逆アフィン変換をして得られた第２の座標に対応する原画像の画素を特定し、第２の座標をアフィン変換して第３の座標を算出する。座標検算部１３０は、第１の座標と第３の座標の値が等しいか否かを判定する。変換画像生成部１４０は、第１の座標と第３の座標の値が一致したと判定された場合、第１の座標及び第３の座標の値と等しい座標に、第２の座標に対応した原画像の画素データを転写する。変換画像生成部１４０は、第１の座標と第３の座標の値が一致しないと判定された場合、周辺の画素情報にもとづいて算出した補正値を転写する。【選択図】図１
2011150575.tif 000002
【特許請求の範囲】
【請求項１】
転写先の出力画像を構成する複数の出力画素に対応した複数の第１の座標を逆アフィン変換する逆アフィン変換部と、
前記逆アフィン変換により得られた複数の第２の座標の各々について対応する原画像の原画素を特定し、特定された前記原画素の座標をアフィン変換して第３の座標を算出する順アフィン変換部と、
前記複数の出力画素の各々について、前記特定された前記原画素の座標を前記アフィン変換して得られる前記第３の座標と前記第１の座標とが対応するかを判定する座標検算部と、
前記複数の出力画素のうち、前記座標検算部により前記第１の座標と前記第３の座標が対応すると判定された画素には前記特定された前記原画素の画素値を転写するとともに、前記第１の座標と前記第３の座標が対応付けられなかった空白の画素には周辺画素に基づいて算出した補正値を転写することにより前記出力画像を生成する変換画像生成部と、を備える画像制御装置。
【請求項２】
前記空白の画素の座標を記憶するための空白座標保持部を備える請求項１に記載の画像制御装置。
【請求項３】
前記変換画像生成部は、前記空白の画素に対して、周辺の画素の画素値の平均値を前記補正値として転写することを特徴とする請求項１または請求項２に記載の画像制御装置。
【請求項４】
前記変換画像生成部は、前記空白の画素を中心とした（２Ｎ＋１）×（２Ｎ＋１）（Ｎは１以上の整数）の範囲にある画素を用いて前記補正値を算出することを特徴とする請求項１乃至請求項３のいずれか１項に記載の画像制御装置。
【請求項５】
前記変換画像生成部は、アフィン変換の拡大率に応じて、前記空白の画素を中心とした（２Ｎ＋１）×（２Ｎ＋１）（Ｎは１以上の整数）の範囲を変更することを特徴とする請求項４に記載の画像制御装置。
【請求項６】
前記第１の座標と前記第３の座標とが対応した数を記憶する合成枚数カウンタと、前記第１の座標と前記第３の座標とが対応した場合に、前記第２の座標に対応した原画像の画素データの画素値の合計を記憶する合成画素記憶部と、を備え、
前記逆アフィン変換部及び前記順アフィン変換部は、複数の原画像の画素の各々に関する前記第１乃至第３の座標を算出し、
前記変換画像生成部は、少なくとも１つの原画像についての前記第１の座標と前記第３の座標とが対応した場合、前記合成画素記憶部の保持する画素値を前記合成枚数カウンタの保持する値で割った画素値を前記第１の座標及び前記第３の座標の値が等しい座標に対して転写し、
前記出力画像を構成する画素のうち、前記画素値が転写されなかった空白の画素には、周辺画素に基づいて算出した補正値を転写することを特徴とする請求項１乃至請求項５のいずれか１項に記載の画像制御装置。
【請求項７】
転写先の出力画像を構成する複数の出力画素に対応した複数の第１の座標を逆アフィン変換し、
前記逆アフィン変換により得られた複数の第２の座標の各々について対応する原画像の原画素を特定し、特定された前記原画素の座標をアフィン変換して第３の座標を算出し、
前記複数の出力画素の各々について、前記特定された前記原画素の座標を前記アフィン変換して得られる前記第３の座標と前記第１の座標とが対応するかを判定し、
前記複数の出力画素のうち、前記座標検算部により前記第１の座標と前記第３の座標が対応すると判定された画素には前記特定された前記原画素の画素値を転写するとともに、前記第１の座標と前記第３の座標が対応付けられなかった空白の画素には周辺画素に基づいて算出した補正値を転写することにより前記出力画像を生成する画像制御方法。
【請求項８】
前記空白の画素に対して、周辺の画素の画素値の平均値を前記補正値として転写することを特徴とする請求項７に記載の画像制御方法。
【請求項９】
前記空白の画素を中心とした（２Ｎ＋１）×（２Ｎ＋１）（Ｎは１以上の整数）の範囲にある画素を用いて前記補正値を算出することを特徴とする請求項７または請求項８に記載の画像制御方法。
【請求項１０】
アフィン変換の拡大率に応じて、前記空白の画素を中心とした（２Ｎ＋１）×（２Ｎ＋１）（Ｎは１以上の整数）の範囲を変更することを特徴とする請求項９に記載の画像制御方法。
【請求項１１】
複数の原画像を構成する複数の画素の各々に関する前記第１乃至第３の座標を算出し、
前記第１の座標と前記第３の座標とが対応した数である合成画素数を記憶し、
前記第１の座標と前記第３の座標とが対応した場合に、前記第２の座標に対応した原画像の画素データの合成画素値の合計を記憶し、
少なくとも１つの原画像についての前記第１の座標と前記第３の座標とが一致した場合、前記合成画素値を前記合成画素数で割った画素値を前記第１の座標及び前記第３の座標の値が等しい座標に対して転写し、
前記出力画像を構成する画素のうち、前記画素値が転写されなかった空白の画素には、周辺画素に基づいて算出した補正値を転写することを特徴とする請求項７乃至請求項１０のいずれか１項に記載の画像制御方法。
【請求項１２】
任意の画像をアフィン変換する処理をコンピュータに実行させるためのプログラムであって、
転写先の出力画像を構成する複数の出力画素に対応した複数の第１の座標を逆アフィン変換し、
前記逆アフィン変換により得られた複数の第２の座標の各々について対応する原画像の原画素を特定し、特定された前記原画素の座標をアフィン変換して第３の座標を算出し、
前記複数の出力画素の各々について、前記特定された前記原画素の座標を前記アフィン変換して得られる前記第３の座標と前記第１の座標とが対応するかを判定し、
前記複数の出力画素のうち、前記座標検算部により前記第１の座標と前記第３の座標が対応すると判定された画素には前記特定された前記原画素の画素値を転写するとともに、前記第１の座標と前記第３の座標が対応付けられなかった空白の画素には周辺画素に基づいて算出した補正値を転写することにより前記出力画像を生成するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像制御装置、画像制御方法、及びプログラムに関し、より詳細には、原画像にアフィン変換を行う画像制御装置、画像制御方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、デジタルスチルカメラや携帯電話において画像の拡大、縮小、回転、及び反転等の加工処理を行うことが一般的になってきている。これらの携帯機器では処理能力が制限されていることから、浮動小数演算が可能なアクセラレータをサポートしていることは少ない。そのため、これらの携帯機器ではすべての処理を演算処理能力の小さいＣＰＵ（Central Processing Unit）により行う。この場合、簡単かつ高速な処理が可能なアルゴリズムが用いられる。このようなアルゴリズムを用いた画像処理では、一般的にアフィン変換が用いられる。アフィン変換とは、拡大、縮小、回転、反転を実現する線形変換と並行移動を合成したものである。近年では画素の増加に伴い、高速、かつ、きれいな画像の加工処理技術が求められるようになっている。
【０００３】
アフィン変換を用いた画像制御装置の一例として、特許文献１に記載の画像制御装置が挙げられる。特許文献１に記載の画像制御装置は、アフィン変換処理時のまるめ（整数化）誤差によって、変換画像に空白のまま画素の投影が行われない不都合を解消できるものである。当該画像制御装置の構成及び処理について説明する。
【０００４】
当該画像制御装置は、入力装置４００と、記憶装置４１０と、表示装置４２０と、中央処理装置４３０と、を備える。当該画像制御装置は、図７に示すようなマイクロコンピュータにより構成される。
【０００５】
アフィン変換を行った画像の変換前の点の座標（x,y）、変換後の点の座標(x',y')とし、３行３列の行列を使うと以下の一般式で表すことができる。なお、画像は有限の画素から構成されるため、x,y,x',y'は０以上の整数値となる。
【０００６】
【数１】
2011150575.tif 000003
【０００７】
ここで、上記式(数１)を以下のように
【０００８】
【数２】
2011150575.tif 000004
【０００９】
と定義すると、以下の式(数３)のようになる。
【００１０】
【数３】
2011150575.tif 000005
【００１１】
原画像に対してアフィン変換を行って変換先の画像に投影する場合、原画像の画素の位置座標は整数ではなく実数になる。しかし、実際に視覚により認識できるようにするためには、座標を整数にしなければならない。そのため、単純に原画像の画素を変換後の画像に投影する方法では、空白の画素が生じてしまう。
【００１２】
ここで、特許文献１に記載の画像制御装置では、原画像をアフィン変換する際に、変換後の画像が投影される範囲の画素を逆アフィン変換して原画像に投影する。そして、投影した座標の座標値を丸め処理する。この丸め処理を行った座標値に対応する原画像の画素値を求め、算出された画素値を変換画像の対応する座標の画素値とする。
【００１３】
アフィン変換後の画像が投影される範囲の画素を原画像に投影する逆アフィン変換処理は、以下の式(数４)により行われる。
【００１４】
【数４】
2011150575.tif 000006
【００１５】
上記(数４)により求められた各画素に対応する座標と、原画像とを比較し、各画素に対応する座標の近傍にある原画像の画素を変換画像の画素とする。ここで、逆アフィン変換後の実数の座標を（xinv,yinv）とした場合、最近傍点は([xinv+0.5],[yinv+0.5])となる。
【００１６】
続いて、図８のフローチャートを用いて特許文献１に記載の画像制御装置による変換画像の算出処理を説明する。まず、原画像データ（座標値との濃淡値を有する）を読み込む（Ｓ２０１）。読み込んだ原画像データをアフィン変換し、変換画像を算出する（Ｓ２０２）。続いて、変換画像の輪郭内に画素が入っている変換画素の座標値を逆アフィン変換する（Ｓ２０３）。逆アフィン変換した座標値の小数点以下を切り上げ（又は切り下げ）整数化を行う（Ｓ２０４）。そして、整数化した座標値に対応する原画像データの座標の画素値を、対応する変換画像の座標の画素値とする（Ｓ２０５）。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】特開２００８−１０７９８１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１８】
しかしながら、特許文献１に記載の画像制御装置によっては、高画質の変換画像が得られないという問題がある。当該問題の詳細を図８及び図９を用いて以下に述べる。
【００１９】
図９は、特許文献１に記載の画像制御装置が原画像データを拡大して右に９０度回転した場合の画像処理を示す概念図である。図９には、原画像データ３０２にアフィン変換を行って算出された画像データ３０１、原画像データ３０２、変換画像データ３０３、画像データ３０１を逆アフィン変換した場合の原画像データ３０２との座標対応３１０、及び原画像データ３０２と画像データ３０１との画素対応３２０とが示されている。なお、座標Ａ１、Ａ２、Ａ３は座標Ｃ１、Ｃ２、Ｃ３とそれぞれ同じ座標となる。
【００２０】
まず、画像制御装置は原画像データを読み込み（Ｓ２０１）、原画像データ３０２をアフィン変換した画像データ３０１を生成する（Ｓ２０２）。続いて、画像制御装置は画像データ３０１に対して逆アフィン変換を行う（Ｓ２０３）。すなわち、画像データ３０１の各座標Ａｎ（ｎ＝１、２、３）に対して逆アフィン変換を行う。ここで、画像制御装置は、逆アフィン変換により算出された画像データの各画素の座標値に対して丸め処理を行い、原画像データ３０１の各座標Ｂｎに投影する。当該丸め処理は、小数点以下を切り上げまたは切り下げすることにより実現される。
【００２１】
図９では、当該丸め処理により座標Ａ１は、原画像データ３０２のＢ１に対応する。同様に座標Ａ２は、原画像データ３０２のＢ１に対応する。座標Ａ３は、原画像データ３０２のＢ３に対応する。原画像データの各座標Ｂｎへの投影に際して丸め処理が行われることにより、各座標Ａｎが原画像データの所望の座標Ｂｎに対応づけられない可能性がある。図９の例では、Ａ１及びＡ２がＢ１に対応付けられており、Ａ２はＢ２と対応付けがなされない。
【００２２】
続いて、変換画像データの座標（Ｃ１、Ｃ２、Ｃ３）に対して、これらの座標と同一の座標（Ａ１、Ａ２、Ａ３）に対応づけられた原画像データの各座標（Ｂ１、Ｂ１、Ｂ３）の画素値を入力する。すなわち、座標Ｃ１には、Ｂ１の画素値が入力される。同様に、座標Ｃ２には、Ｂ１の画素値が入力される。座標Ｃ３には、Ｂ３の画素値が入力される。上述の処理により、画像データ３０３は空白画素を含まない画像データとなる。
【００２３】
しかし、各画素の座標値に対する丸め処理（Ｓ２０４）により、画像データ３０３に投影される座標にずれが生じ、所望の画素値が投影されない画素が生じる。そのため、同じ画素値を持つ画素が並んで配置され、画素のなだらかな変化が表現できない恐れがある。図９の例では、変換画像の座標Ｃ１及びＣ２に原画像のＢ１の画素値が入力されることにより同じ画素が並ぶ。これにより、変換画像データにおいて画素のなだらかな変化が表現できず、高画質な画像が得られない。
【００２４】
また、特許文献１に開示されているように、逆アフィン変換後の座標を平均値でまとめることも考えられる。たとえば、逆アフィン変換後の座標のＸ座標が３．５、Ｙ座標３．５である場合、Ｘ（Ｙ）座標＝３及びＸ（Ｙ）座標＝４の座標の画素値の平均を算出し、当該画素の画素値を決定する。しかし当該方法によると、全ての画素に対して平均化の補完処理を行うことになってしまい、画像が高画質にならない。
【課題を解決するための手段】
【００２５】
本発明にかかる画像制御装置の一態様は、転写先の出力画像を構成する複数の出力画素に対応した複数の第１の座標を逆アフィン変換する逆アフィン変換部と、前記逆アフィン変換により得られた複数の第２の座標の各々について対応する原画像の原画素を特定し、特定された前記原画素の座標をアフィン変換して第３の座標を算出する順アフィン変換部と、前記複数の出力画素の各々について、前記特定された前記原画素の座標を前記アフィン変換して得られる前記第３の座標と前記第１の座標とが対応するかを判定する座標検算部と、前記複数の出力画素のうち、前記座標検算部により前記第１の座標と前記第３の座標が対応すると判定された画素には前記特定された前記原画素の画素値を転写するとともに、前記第１の座標と前記第３の座標が対応付けられなかった空白の画素には周辺画素に基づいて算出した補正値を転写することにより前記出力画像を生成する変換画像生成部と、を備えるものである。
【００２６】
本発明においては、原画像の画素との対応づけが成功した出力画像の座標に対して画素の転写を行う。また、空白画素に対しては、周辺画素情報に基づいて算出した補正値を転写している。これにより、正確な座標の対応付けができた座標に対してのみ原画像画素の転写を行うとともに、空白画素に対して周辺画素と調和した補正値を転写することができ、高画質な画像を生成することができる。
【発明の効果】
【００２７】
本発明によれば、原画像をアフィン変換した場合に、高画質な画像を生成することができる画像制御装置、画像制御方法、及び画像制御プログラムを提供することができる。
【図面の簡単な説明】
【００２８】
【図１】実施の形態１にかかる画像制御装置の構成を示すブロック図である。
【図２】実施の形態１にかかる画像制御装置の処理を示すフローチャートである。
【図３】実施の形態１にかかる画像処理の概念を示す図である。
【図４】実施の形態２にかかる画像制御装置の構成を示すブロック図である。
【図５】実施の形態２にかかる画像制御装置の処理を示すフローチャートである。
【図６】実施の形態２にかかる画像処理の概念を示す図である。
【図７】従来の画像処理装置にかかる画像制御装置の構成を示すブロック図である。
【図８】従来の画像処理装置の処理を示すフローチャートである。
【図９】従来の画像処理装置にかかる画像処理の概念を示す図である。
【発明を実施するための形態】
【００２９】
実施の形態１
以下、図面を参照して本発明の実施の形態について説明する。図１は、本実施の形態にかかる画像制御装置（画像処理部）を含むマイクロコンピュータシステムの構成を示すブロック図である。マイクロコンピュータシステム１は、画像制御装置１００と、マイクロコンピュータ２００と、を備える。
【００３０】
画像制御装置１００は、逆アフィン変換部１１０と、順アフィン変換部１２０と、座標検算部１３０と、変換画像生成部１４０と、空白座標保持部１５０と、を備える。
【００３１】
逆アフィン変換部１１０は、アフィン変換時に生成される画像データの各座標データ（第１の座標）を逆アフィン変換した座標（第２の座標）を算出する処理部である。逆アフィン変換部１１０は、入力された画像データの各座標に対して逆方向のアフィン変換を行う。逆アフィン変換部１１０は、入力された各座標のデータを座標検算部１３０に入力する。
【００３２】
順アフィン変換部１２０は、逆アフィン変換をして得られた座標（第２の座標）に対応する原画像データの画素を特定し、第２の座標をアフィン変換した座標（第３の座標）を算出する処理部である。順アフィン変換部１２０は、逆アフィン変換部１１０が逆アフィン変換をして算出した各座標に対して順方向のアフィン変換を行う。順アフィン変換部１２０は、各座標にアフィン変換を行って算出した座標データを座標検算部１３０に出力する。
【００３３】
座標検算部１３０は、逆アフィン変換部１１０から入力される座標（第１の座標）及び順アフィン変換部１２０から入力された座標（第３の座標）が対応するか否かを判定する処理部である。
【００３４】
変換画像生成部１４０は、第１の座標と第３の座標の値が対応すると判定された場合に、第１の座標と等しい座標に、第２の座標に対応した原画像データの画素データを転写する処理部である。また変換画像生成部１４０は、第１の座標と第３の座標の値が対応しないと判定された場合に、第１の座標と等しい座標に周辺画素に基づいた補正値を入力する処理部である。変換画像生成部１４０の処理の詳細は後述する。
【００３５】
空白座標保持部１５０は、空白の画素の座標を記憶するための処理部である。
【００３６】
マイクロコンピュータ２００は中央演算装置２１０と、表示装置２２０と、入力装置２３０と、記憶装置２４０と、を備える。中央演算装置２１０は、制御プログラムに基づいて、このシステム内の各種処理を実行する処理装置である。表示装置２２０は、画像等の表示を行うための装置であり、例えば液晶ディスプレイ等が該当する。入力装置２３０は、ユーザが任意の入力を行うための装置であり、例えば、キーボード、マウス等の入力手段により構成される。記憶装置２４０は、プログラム、データ等を保持するための装置であり、例えばＳＲＡＭ(Static Random Access Memory)、ＤＲＡＭ(Dynamic Random Access Memory)が一例として挙げられる。
【００３７】
なお、上述の説明では画像制御装置１００をマイクロコンピュータ２００と接続する専用のハードウェアとして説明したが、これに限られない。たとえば、画像制御装置１００内の各処理部の処理をマイクロコンピュータ２００内で動作するプログラムとして実現してもよい。各処理部の処理をプログラムとして実現する場合、中央演算装置２１０が実行するコンピュータプログラムは、記録媒体に記録して提供することも可能であり、また、インターネットその他の通信媒体を介して伝送することにより提供することも可能である。また、記憶媒体には、例えば、フレキシブルディスク、ハードディスク、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ、ＲＯＭカートリッジ、バッテリバックアップ付きＲＡＭメモリカートリッジ、フラッシュメモリカートリッジ、不揮発性ＲＡＭカートリッジ等が含まれる。また、通信媒体には、電話回線等の有線通信媒体、マイクロ波回線等の無線通信媒体等が含まれる。
【００３８】
また、画像制御装置１００は、マイクロコンピュータ２００のみならず、中央演算装置を有する任意の装置と接続する構成であってもよい。
【００３９】
続いて、画像制御装置１００による画像処理を図２のフローチャートを用いて説明する。はじめに中央演算装置２１０は、入力装置２３０から入力された原画像データを読み込む（Ｓ１０１）。
【００４０】
中央演算装置２１０は、原画像データに対して行う変換についての変換係数を算出する。変換係数の算出には、拡大率及び回転方向等を考慮して算出する。逆アフィン変換部１１０は、算出された変換係数を用いて、アフィン変換時の出力画像のデータ（アフィン変換座標データ）を算出する。アフィン変換座標データとは、原画像データをアフィン変換した場合の変換画像の座標情報等を含むデータである。アフィン変換座標データには、画素情報は含まれない。逆アフィン変換部１１０は、アフィン変換座標データに対して逆アフィン変換を行う（Ｓ１０２）。より詳細には、逆アフィン変換部１１０は、アフィン変換座標データの各座標の各々に対して変換係数を用いて逆アフィン変換を行い、原画像データの座標と対応づける。
【００４１】
続いて、順アフィン変換部１２０は原画像データの各座標に対して上述の変換係数を用いてアフィン変換を行う（Ｓ１０３）。座標検算部１３０は、逆アフィン変換部１１０に入力された座標と、当該座標を逆アフィン変換し、逆アフィン変換して求めた座標をアフィン変換して算出した座標と、が対応するか否かを判定する（Ｓ１０４）。
【００４２】
座標が対応する場合（Ｓ１０４：Ｙｅｓ）、変換画像生成部１４０は出力画像の当該座標に対して、原画像データの対応する座標にある画素の画素値を入力する（Ｓ１０５）。一方座標が対応しない場合（Ｓ１０４：Ｎｏ）、当該座標には画素値を入力せず、空白であること示すフラグを空白座標保持部１５０に入力する（Ｓ１０６）。
【００４３】
次に、必要なライン数の処理が終わっているかを判定する（Ｓ１０７）。ここで必要なライ数の処理とは、５×５の画素範囲の処理、１枚分の画像の処理等を示す。必要なライン数の処理が終わっていなければ（Ｓ１０７：Ｎｏ）、上述の処理（Ｓ１０１〜Ｓ１０６）を繰り返し行う。
【００４４】
必要なライン数の処理が終わった場合（Ｓ１０７：Ｙｅｓ）、変換画像生成部１４０は、空白座標保持部１５０においてフラグがセットされている座標についての処理を行う（Ｓ１０８）。変換画像生成部１４０は、当該空白フラグが設定されている座標に、当該座標の周辺の画素値を平均した画素値を補正値として入力する。
【００４５】
補正値の算出の詳細について以下に述べる。ある特定の画素が空白画素である場合、当該空白画素の周辺にある各画素の画素値を算出する。たとえば、空白画素の上下左右に配置された８画素のうち有効画素の画素値の合計値を算出し、有効画素数で割ることにより平均値を求める。この平均値を当該空白画素に転写する画素値とする。ここで、空白画素の平均値を求めるために用いる画素は、当該空白画素を中心とする（２Ｎ＋１）×（２Ｎ＋１）（Ｎは１以上の整数）の範囲に配置されたものを用いる。たとえば、空白画素を中心とする３×３、５×５、７×７等の範囲に配置された画素を用いて補正値を求める。
【００４６】
ここで、変換画像生成部１４０は、アフィン変換の拡大率に応じて上述の空白画素の補正値を求めるために用いる画素の範囲を変更してもよい。一般に拡大率が大きいアフィン変換を行った場合、生成される画像データに含まれる空白画素が増加する。変換画像生成部１４０は、アフィン変換の拡大率が大きい場合、空白画素の補正値を求めるために用いる画素の範囲を広く設定する。これにより、アフィン変換の拡大率が大きいために空白画素が多い場合であっても、周辺画素と調和した画素値を補正値として用いることができる。一方、アフィン変換の拡大率が小さい場合、変換画像生成部１４０は空白画素の補正値を求めるために用いる画素の範囲を狭く設定する。空白画素の補正値を求めるために用いる画素の範囲を狭く設定することにより、補正値を算出する処理の処理負荷が軽減される。
【００４７】
なお、変換画像生成部１４０は、空白フラグの設定されている座標に対して、平均した画素値に限らず、当該座標の周辺の画素に基づいて画素値を入力するものであればよい。
【００４８】
続いて、本実施の形態にかかる画像制御装置の動作概念を説明する。図３は、本実施の形態にかかる画像制御装置が原画像データを拡大して右に９０度回転した場合の画像処理を示す概念図である。図３には、原画像データ３０２、アフィン変換座標データ３０４、原画像データ３０２をアフィン変換し、空白補正をする前の画像データ３０５、画像データ３０５に対して空白補正をした画像データ３０６、逆アフィン変換による座標対応３１０、順アフィン変換３３０、及び空白補正処理３４０が示されている。図３においてＡｎ（第１の座標）、Ｅｎ（第３の座標）、及びＦｎ（ｎ＝１,２,３）は全て同じ座標を持つ。
【００４９】
中央演算装置２１０は、原画像データに対して行う変換についての変換係数を算出する。逆アフィン変換部１１０は、この変換係数を用いてアフィン変換座標データ３０４の各座標に対して逆アフィン変換を行う（Ｓ１０２）。図３では、座標Ａ１、Ａ２、Ａ３に対して原画像データ３０２の座標Ｂ１、Ｂ１、Ｂ３（第２の座標）が対応づけられる。
【００５０】
順アフィン変換部１２０は、原画像データ３０２の各座標に対して変換係数を用いて順アフィン変換を行う（Ｓ１０３）。図３では、順アフィン変換部１２０は座標Ａ１、Ａ２、Ａ３に対応する座標Ｂ１、及びＢ３に対して順アフィン変換を行い、順アフィン変換後の座標を求める。Ｂ１の座標を順アフィン変換した場合の座標はＥ１となる。同様に、Ｂ３の座標を順アフィン変換した場合の座標はＥ３となる。
【００５１】
座標検算部１３０は、アフィン変換座標データ３０４の各座標Ａｎと、各座標Ａｎについて逆アフィン変換を行い、続いてアフィン変換を行って算出した座標Ｅｎと、が対応するか否かを判定する（Ｓ１０４）。対応した座標については、変換画像生成部１４０が原画像３０２の対応する画素の画素値を入力する（Ｓ１０５）。図３では、Ａ１を逆アフィン変換及びアフィン変換した結果の座標はＥ１となり、両者の座標は対応する。そのため、Ｅ１には原画像３０２のＢ１の画素値が入力される。同様にＡ３を逆アフィン変換及びアフィン変換した結果の座標はＥ３となり、両者の座標は対応する。そのため、Ｅ３には原画像データ３０２のＢ３の画素値が入力される。
【００５２】
一方、ＡｎとＥｎとが対応しなかった場合、変換画像生成部１４０は当該座標Ｅｎに画素値を代入せず、当該座標が空白であることを示すフラグを空白座標保持部１５０に設定する（Ｓ１０６）。図３では、Ａ２を逆アフィン変換及びアフィン変換した結果の座標はＥ１となり、両者の座標は対応しない。そのため、変換画像生成部１４０はＥ２に画素値を入力せず、Ｅ２が空白であることを示すフラグを空白座標保持部１５０に設定する。
【００５３】
上述の処理を必要なライン分だけ行うことにより、空白補正をする前の画像データ３０５が生成される。次に、画像データ３０５を基に空白画素を有する座標を補正処理した画像データ３０６を生成する（Ｓ１０８）。
【００５４】
空白画素を有する座標に対する補正処理の一例は、以下のように行う。図３において、原画像３０２の各座標の画素値がＢ１＝１０、Ｂ２＝２０、Ｂ３＝３０であるとする。この場合、空白画素であるＦ２（Ｅ２）に対して隣接するＦ１及びＦ３の画素値の平均値が入力される。Ｆ１及びＦ３の画素値の平均値は、（１０＋３０）／２＝２０となるため、Ｆ２には画素値２０が代入される。なお、図３では説明の便宜上、原画像データが３つの画素のみ持つ画像について説明したため、Ｆ１及びＦ３の画素値の平均値を求め、当該平均値を補正値として使用した。しかし、実際には上述のように空白画素を囲むように配置された画素に基づいて補正値を求める。
【００５５】
続いて、本実施の形態にかかる画像制御装置の効果について説明する。本実施の形態にかかる画像制御装置は、転写先の出力画像の各座標（第１の座標）を逆アフィン変換し、原画像データの座標（第２の座標）に対応づける。さらに、第２の座標を順アフィン変換して第３の座標を算出し、第１の座標と第３の座標が対応するか否かを判定する。対応する場合には、出力画像の当該座標に第２の座標の画素データを転写する。これにより、アフィン変換により正しい座標と対応が取れた原画像の座標のみを出力画像に転写できる。一方対応しない場合には、出力画像の当該座標に、周辺画像から算出される補正値を転写する。これにより、補正値が入力される画素も周辺画素の平均を取ることなどにより、周囲との画素のなだらかな変化が表現できる。上記一連の処理により、生成される画像が高画質になるという効果を生じる。
【００５６】
実施の形態２
本発明の実施の形態２は、画像制御装置が複数の画像を合成処理できることを特徴とする。図４を参照して、本実施の形態にかかる画像制御装置の基本構成、及び動作について、実施の形態１と異なる部分を説明する。なお、図４において、同一名及び同一符号を付した処理部は実施の形態１と基本的に同じ処理を行う。
【００５７】
本実施の形態にかかる画像制御装置１００は、実施の形態１の画像制御装置１００の構成に加えて合成枚数カウンタ１６０と、合成画素記憶部１７０を備える。合成枚数カウンタ１６０は、画像制御装置１００が合成した画素の数を代入するための変数Ｚを備える。合成枚数カウンタ１６０の変数Ｚは、空白座標保持部１５０及び変換画像生成部１４０から参照および変更可能である。合成画素記憶部１７０は、各座標の画素値の合計を記憶するための変数Ｗを備える。
【００５８】
次に、図５のフローチャートを参照して複数の画像データをアフィン変換し、合成した画像データを生成する処理を説明する。最初に、合成する画像データの数を設定する（Ｓ１１０）。また、処理枚数を記憶する変数ｉ、合成枚数カウンタＺ、及び合成画素Ｗを初期化する（Ｓ１１０）。各変数の初期値はｉ＝１、Ｚ＝０、Ｗ＝０となる。
【００５９】
中央演算装置２１０は、ｉ枚目（ｉは自然数）の原画像データを読み込む（Ｓ１１１）。原画像データを読み込んだ後に、実施の形態１と同様に逆アフィン変換（Ｓ１０２）、順アフィン変換（Ｓ１０３）、及び座標比較（Ｓ１０４）を行う。
【００６０】
逆アフィン変換部１１０に入力された座標と、当該座標を逆アフィン変換し、逆アフィン変換して求めた座標をアフィン変換して算出した座標と、が対応する場合（Ｓ１０４：Ｙｅｓ）、合成画素記憶部１７０の変数Ｗに原画像データの対応する座標の画素値を加算する（Ｓ１１５）。また、合成枚数カウンタ１６０の変数Ｚをインクリメントする（Ｓ１１６）。一方、座標が対応しない場合にはＳ１１５及びＳ１１６の処理を行わない。
【００６１】
上述の処理（Ｓ１１１〜Ｓ１１６）を、Ｓ１１０で設定した合成枚数と同じ数だけ繰り返す。上述の処理（Ｓ１１１〜Ｓ１１６）を、Ｓ１１０で設定した合成枚数と同数繰り返した後に（Ｓ１１７：Ｙｅｓ）、合成枚数カウンタ１６０の変数Ｚが０であるか否かを判定する（Ｓ１１９）。Ｚ＝０である場合（Ｓ１１９：Ｙｅｓ）、処理を行っている座標を空白に設定し、当該座標が空白であることを示すフラグを空白座標保持部１５０に設定する（Ｓ１２０）。一方Ｚ＝０ではない場合（Ｓ１１９：Ｎｏ）、合成画素記憶部１７０の変数Ｗの値をＺの値で割った値を当該座標の画素値とする（Ｓ１２１）。
【００６２】
上述の処理を必要なライン数だけ繰り返し行う（Ｓ１０７）。その後、空白フラグが設定されている座標を周辺座標の画素に基づいて補正する（Ｓ１０８）。
【００６３】
続いて、本実施の形態にかかる画像制御装置の動作概念を説明する。図６は、本実施の形態にかかる画像制御装置が３枚の原画像を拡大して合成した場合の画像処理を示す概念図である。図６には、原画像データ３０７、原画像データ３０８、原画像データ３０９、アフィン変換座標データ３０４、原画像データ３０７、原画像データ３０８、及び原画像データ３０９をアフィン変換して合成し、空白補正をする前の画像データ３１５、画像データ３１５に対して空白補正をした画像データ３１６、逆アフィン変換による座標対応３１１、逆アフィン変換による座標対応３１２、逆アフィン変換による座標対応３１３、順アフィン変換３３１、順アフィン変換３３２、順アフィン変換３３３、及び空白補正処理３４０が示されている。図６においてＡｎ、Ｇｎ、及びＨｎ（ｎ＝１,２,３）は全て同じ座標を持つ。
【００６４】
最初に、合成する画像データの数を３（ｎ＝３）に設定する（Ｓ１１０）。また、処理枚数を記憶する変数ｉ、合成枚数カウンタＺ、及び合成画素Ｗを初期化する（Ｓ１１０）。中央演算装置２１０は１枚目の原画像データ３０７を読み込み、逆アフィン変換部１１０がアフィン変換座標データ３０４の所定座標を原画像データ３０７の座標に対応づける。すなわち、座標Ａ１を逆アフィン変換し、原画像データ３０７の座標Ｂ１に対応づける。続いて、当該座標Ｂ１を順アフィン変換し、順アフィン変換結果の座標としてＧ１を得る。座標検算部１３０は、座標Ｂ１と座標Ｇ１が対応すると判断し（Ｓ１０４：Ｙｅｓ）、Ｇ１の合成画素Ｗとして、Ｂ１の画素値を加算する。そして、Ｇ１の合成枚数カウンタＺに１を加算する。
【００６５】
同様の処理（Ｓ１１１〜Ｓ１１６）を、原画像データ３０８及び原画像データ３０９に対しても実行する。原画像データ３０７〜３０９の座標Ｂ１に対して上記の処理（Ｓ１１１〜Ｓ１１６）が終了した場合、座標Ｇ１の合成枚数カウンタＺには３が入力されており、座標Ｇ１の合成画素Ｗには原画像データ３０７〜３０９の座標Ｂ１の画素値の合計値が入力されている。よって、Ｗに入力されている値を３で割った値を座標Ｇ１の画素値とする（Ｓ１１９：Ｎｏ、Ｓ１２１）。
【００６６】
上記のように、各座標（Ｇ２、Ｇ３、…、Ｇｎ）についても合成画素値を算出する。座標Ａ２については、図６に示すようにアフィン変換後の座標が全ての原画像データ３０７〜３０９について対応しない。よって、座標Ｇ２の合成枚数カウンタＺは０のままとなる。Ｚ＝０であるため（Ｓ１１９：Ｙｅｓ）、座標Ｇ２は空白画素とし、座標Ｇ２が空白である旨を示すフラグを空白座標保持部１５０に設定する。
【００６７】
座標Ａ３については、図６に示すようにアフィン変換後の座標が原画像データ３０７及び原画像データ３０９について対応する。よって、座標Ｇ３の合成枚数カウンタＺは２となる。座標Ｇ３の合成画素Ｗには原画像データ３０７及び３０９の座標Ｂ３の画素値の合計値が入力されている。よって、Ｗに入力されている値を２で割った値を座標Ｇ３の画素値とする（Ｓ１１９：Ｎｏ、Ｓ１２１）。
【００６８】
必要なライン数の処理が終了した後に、空白画素が設定されている座標の補正処理を行う（Ｓ１０８）。図６の例では、座標Ｇ２に空白画素が入力されている。そのため、座標Ｇ２の周辺画素の画素値の平均値を座標Ｈ２（Ｇ２）の画素値とすること等により補正処理を行う。たとえば、Ｇ１の画素値が１０、Ｇ３の画素値が３０である場合、座標Ｈ２（Ｇ２）の画素値を２０にするなどして補正を行う。全ての空白画素に対して補正処理を行うことにより画像データ３１６を生成する。
【００６９】
上記一連の処理により、複数の原画像データを合成したアフィン変換画像を生成する場合であっても、空白画素に対して周辺画素の情報に基づいた補正値を転写することが可能となる。これにより、高画質なアフィン変換画像を生成することが可能となる。
【００７０】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。たとえば、上述の説明においては、原画像の拡大に関するアフィン変換について説明したが、原画像の縮小、回転にも本発明を適応できることは勿論である。
【符号の説明】
【００７１】
１００  画像制御装置
１１０  逆アフィン変換部
１２０  順アフィン変換部
１３０  座標検算部
１４０  空白座標保持部
１５０  変換画像生成部
１６０  合成枚数カウンタ
２００  マイクロコンピュータ
２１０  中央演算装置
２２０  表示装置
２３０  入力装置
２４０  記憶装置
【図１】
2011150575.tif 000007
【図２】
2011150575.tif 000008
【図３】
2011150575.tif 000009
【図４】
2011150575.tif 000010
【図５】
2011150575.tif 000011
【図６】
2011150575.tif 000012
【図７】
2011150575.tif 000013
【図８】
2011150575.tif 000014
【図９】
2011150575.tif 000015