(57)【要約】【課題】画像を小領域に分割して幾何変形処理を行う場合に、装置のコスト上昇の抑制と幾何変形処理の効率化を両立させることができる画像処理装置を提供する。【解決手段】入力画像を記憶する第１のメモリと、第１のメモリから読み出した矩形領域の画像を記憶する第２のメモリと、第２のメモリから画像を読み出して幾何変形後の画像を生成する画像処理手段とを備える。幾何変形後の画像の第１の位置においては、幾何変形後の画像を分割して得られる複数の第１の矩形領域のうち、第１の矩形領域に対応する幾何変形前の画像の領域の座標に基づいて、これを包含する第３の矩形領域を読み出し、幾何変形後の画像の第２の位置においては、第１の矩形領域をさらに分割して得られる複数の第２の矩形領域に対応する幾何変形前の画像の領域の座標に基づいて、これを包含する第４の矩形領域を読み出す。【選択図】  図１
2019032590.tif 000002
【特許請求の範囲】
【請求項１】
入力画像に対して幾何変形を施す画像処理装置であって、
前記入力画像を幾何変形前の画像として記憶する第１のメモリと、
前記幾何変形後の画像に含まれる領域に対応する前記幾何変形前の画像の領域の座標を算出する演算手段と、
前記演算手段によって算出された幾何変形前の画像の領域を包含する矩形領域を、前記第１のメモリから読み出す読み出し手段と、
前記読み出し手段が読み出した矩形領域を記憶する第２のメモリと、
前記第２のメモリから前記幾何変形前の画像を読み出して前記幾何変形後の画像を生成する画像処理手段と、を有し、
前記読み出し手段は、前記幾何変形後の画像の第１の位置においては、前記幾何変形後の画像を分割して得られる複数の第１の矩形領域のうち、前記第１の位置に対応する第１の矩形領域に対応する前記幾何変形前の画像の領域の座標に基づいて、当該第１の矩形領域に対応する前記幾何変形前の画像の領域を包含する第３の矩形領域を読み出し、前記幾何変形後の画像の第２の位置においては、前記第１の矩形領域を分割して得られる複数の第２の矩形領域のうち、前記第２の位置に対応する第２の矩形領域に対応する前記幾何変形前の画像の領域の座標に基づいて、当該第２の矩形領域に対応する前記幾何変形前の画像の領域を包含する第４の矩形領域を読み出すことを特徴とする画像処理装置。
【請求項２】
前記読み出し手段は、前記幾何変形後の画像のうち、前記第１の矩形領域に対応する前記幾何変形前の画像の領域を包含する領域のサイズが第２のメモリの容量を超える位置において、前記第４の矩形領域を読み出すことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第２の矩形領域は、前記第１の矩形領域を上下に２分割した矩形領域であることを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記第２の矩形領域は、前記第１の矩形領域を上下左右に４分割した矩形領域であることを特徴とする請求項１または２に記載の画像処理装置。
【請求項５】
前記第２のメモリの容量は、前記第１の矩形領域のサイズが収まる容量であることを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記入力画像は、前記幾何変形後の画像における前記第１の矩形領域に対応する前記幾何変形前の画像における前記第３の矩形領域のサイズが画像内の座標により異なる画像であり、前記第２のメモリの容量は、前記幾何変形前の画像内で最も小さいサイズの前記第３の矩形領域が収まる容量であることを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項７】
前記入力画像は、撮影レンズの歪曲収差を含む画像であり、前記幾何変形前の画像の周辺部における前記第３の矩形領域のサイズが、前記幾何変形前の画像の中央部における前記第３の矩形領域のサイズよりも大きく、前記第２のメモリの容量は、前記幾何変形前の画像の中央部における前記第３の矩形領域のサイズが収まる容量であることを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項８】
前記第４の矩形領域を前記第２のメモリに記憶した場合に、幾何変形された後の画像の順序を変換する変換手段をさらに備えることを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
入力画像に対して幾何変形を施す画像処理方法であって、
前記入力画像を幾何変形前の画像として第１のメモリに記憶する第１の記憶工程と、
前記幾何変形後の画像に含まれる領域に対応する前記幾何変形前の画像の領域の座標を算出する演算工程と、
前記演算工程において算出された幾何変形前の領域を包含する矩形領域を、前記第１のメモリから読み出す読み出し工程と、
前記読み出し工程において読み出された矩形領域を第２のメモリに記憶する第２の記憶工程と、
前記第１の領域の座標または前記第２の領域の座標に基づいて、前記第２のメモリから前記幾何変形前の画像を読み出して前記幾何変形後の画像を生成する画像処理工程と、を有し、
前記読み出し工程では、前記幾何変形後の画像の第１の位置においては、前記幾何変形後の画像を分割して得られる複数の第１の矩形領域のうち、前記第１の位置に対応する第１の矩形領域に対応する前記幾何変形前の画像の領域の座標に基づいて、当該第１の矩形領域に対応する前記幾何変形前の画像の領域を包含する第３の矩形領域を読み出し、前記幾何変形後の画像の第２の位置においては、前記第１の矩形領域を分割して得られる複数の第２の矩形領域のうち、前記第２の位置に対応する第２の矩形領域に対応する前記幾何変形前の画像の領域の座標に基づいて、当該第２の矩形領域に対応する前記幾何変形前の画像の領域を包含する第４の矩形領域を読み出すことを特徴とする画像処理方法。
【請求項１０】
請求項９に記載の画像処理方法の各工程をコンピュータに実行させるためのプログラム。
【請求項１１】
請求項９に記載の画像処理方法の各工程をコンピュータに実行させるためのプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を小領域に分割し、分割した領域ごとに幾何変形処理を行う場合の、ワークメモリの容量を削減する技術に関するものである。
【背景技術】
【０００２】
近年、デジタルスチルカメラやデジタルビデオカメラ等においては、レンズの歪曲収差補正、電子像ブレ補正、撮像素子に起因するローリングシャッター歪補正等の機能を搭載したものが増えてきている。このような機能を実現するためには、画像に対して様々な幾何変形処理を施す必要がある。
【０００３】
幾何変形処理を高速に実現する方法の一つとして、ＤＲＡＭ内の画像データから矩形の小領域をＳＲＡＭ等にコピーして幾何変形処理を行う技術が、特許文献１に開示されている。ＤＲＡＭは、ランダムアクセスよりもシーケンシャルアクセスが高速なメモリであり、ＳＲＡＭは、ランダムアクセスを高速に行えるメモリである。そのため、コピーした矩形領域についてＳＲＡＭ内で高速にランダムアクセスを行って幾何変形を行うことで、幾何変形処理を高速に行うことができる。
【０００４】
一方で、ＳＲＡＭ等のワークメモリはコストが高く、処理したい入力画像全域を格納できる容量のワークメモリをデジタルカメラ等に搭載することはコスト的に困難である。そのため、特許文献１に開示されているように、出力画像を小領域に分割して、その小領域を格納できる容量のワークメモリを搭載することが現実的である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−１００７１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、デジタルカメラ等に搭載されるワークメモリは固定の容量であるが、幾何変形後の出力画像の小領域のサイズが一定であっても、幾何変形前の入力画像からワークメモリへコピーする小領域のサイズは、幾何変形の内容や座標位置によって異なる。
【０００７】
例えば、糸巻き型の歪曲収差を幾何変形により補正する場合は、入力画像の四隅に相当する領域は縮小を伴うために、出力画像の小領域よりも広い領域をワークメモリに取り込む必要がある。あおり補正を行う場合においても、入力画像の一部分において縮小を伴うことがあり、該当部分は出力画像の小領域よりも広い領域をワークメモリに取り込む必要がある。
【０００８】
このように、出力画像の多数の小領域に対してワークメモリの使用量がそれぞれ異なる場合、１つの対処方法としては、ワークメモリの使用量が最大となるワースト条件の小領域に合わせてワークメモリの容量を多く搭載することが考えられる。しかし、この場合は、画像処理の効率は良いが、ワースト条件とならない多くの小領域に対して、高価なワークメモリの容量が過剰となり、無駄が多く、装置のコストの上昇を招く。
【０００９】
また、別の方法としては、ワースト条件の小領域でも予め搭載予定のワークメモリの容量内に収まるように、全体的に出力画像の小領域を小さく設定することが考えられる。しかし、ＤＲＡＭ等の入力画像を保持するメモリはシーケンシャルアクセスを得意とするため、なるべく連続的な読み出しを行うのが効率的である。そのため、小領域を小さくすると、小さなアクセスが頻発して効率が悪くなる問題がある。さらに、幾何変形ではバイキュービック補間等の画素補間も伴うため、参照座標位置だけでなく補間に必要な近傍画素もワークメモリへ取り込む必要がある。そのため、出力画像の小領域のサイズを小さくして小領域の数が多くなると、それらの小領域の境界部分におけるオーバーラップ領域の画素数が増大して読出し量が増える。また、ＤＲＡＭ等の入力画像メモリに対するアクセス帯域を圧迫するという問題もある。そのため、小領域を小さく設定することは、装置のコストを抑制する点ではよいが、画像処理の効率が低下する傾向がある。
【００１０】
このように、従来では、装置のコスト上昇の抑制と幾何変形処理の効率化を両立させることは、困難な問題であった。
【００１１】
本発明は上述した課題に鑑みてなされたものであり、その目的は、画像を小領域に分割して幾何変形処理を行う場合に、装置のコスト上昇の抑制と幾何変形処理の効率化を両立させることができる画像処理装置を提供することである。
【課題を解決するための手段】
【００１２】
本発明に係わる画像処理装置は、入力画像に対して幾何変形を施す画像処理装置であって、前記入力画像を幾何変形前の画像として記憶する第１のメモリと、前記幾何変形後の画像に含まれる領域に対応する前記幾何変形前の画像の領域の座標を算出する演算手段と、前記演算手段によって算出された幾何変形前の画像の領域を包含する矩形領域を、前記第１のメモリから読み出す読み出し手段と、前記読み出し手段が読み出した矩形領域を記憶する第２のメモリと、前記第２のメモリから前記幾何変形前の画像を読み出して前記幾何変形後の画像を生成する画像処理手段と、を有し、前記読み出し手段は、前記幾何変形後の画像の第１の位置においては、前記幾何変形後の画像を分割して得られる複数の第１の矩形領域のうち、前記第１の位置に対応する第１の矩形領域に対応する前記幾何変形前の画像の領域の座標に基づいて、当該第１の矩形領域に対応する前記幾何変形前の画像の領域を包含する第３の矩形領域を読み出し、前記幾何変形後の画像の第２の位置においては、前記第１の矩形領域を分割して得られる複数の第２の矩形領域のうち、前記第２の位置に対応する第２の矩形領域に対応する前記幾何変形前の画像の領域の座標に基づいて、当該第２の矩形領域に対応する前記幾何変形前の画像の領域を包含する第４の矩形領域を読み出すことを特徴とする。
【発明の効果】
【００１３】
本発明によれば、画像を小領域に分割して幾何変形処理を行う場合に、装置のコスト上昇の抑制と幾何変形処理の効率化を両立させることが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態に係わる画像処理装置の構成を示すブロック図。
【図２】変形後の画像の分割された矩形領域を示す図。
【図３】変形後の画像の矩形領域内の座標生成を示す図。
【図４】変形後の画像の矩形領域と変形前の画像の領域の対応関係を示す図。
【図５】矩形領域に対応する変形前の画像上の座標を示す図。
【図６】第２の実施形態に係わる画像処理装置の構成を示すブロック図。
【図７】変形後の画像の矩形領域内の座標生成を示す図。
【図８】矩形領域に対応する変形前の画像上の座標を示す図。
【図９】矩形サイズ変換回路による出力の並べ替えのイメージ図。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態について、添付図面を参照して詳細に説明する。なお、本実施形態では、本発明をデジタルカメラに搭載される画像処理装置に適用した場合ついて説明する。しかし、本発明は、その他にデジタルビデオカメラ、カメラ付携帯電話、車載カメラ等の撮像装置あるいは、プロジェクタなどの幾何変形を要する画像処理装置に適用することも可能である。
【００１６】
（第１の実施形態）
図１は、本発明の第１の実施形態に係わる画像処理装置の構成を示すブロック図である。
【００１７】
図１において、画像処理装置１００は、入力された入力画像データに対して幾何変形処理を施す装置であり、第１のメモリ１０１と、座標生成回路１０２と、演算回路１０３と、読み出し制御回路１０４と、第２のメモリ１０５と、画像処理回路１０６とを備える。
【００１８】
第１のメモリ１０１は、入力された入力画像データを変形前（幾何変形前）の画像として記憶する。座標生成回路１０２は、幾何変形処理が施された変形後（幾何変形後）の画像の矩形領域の座標を生成する。座標生成回路１０２は、また後述する輪郭座標生成部３０１と出力座標生成部３０２とを有する。演算回路１０３は、座標生成回路１０２によって生成された変形後の画像の矩形領域の座標に対応する変形前の画像の座標を算出する。読み出し制御回路１０４は、演算回路１０３によって算出された変形前の画像における矩形領域の一部の座標に基づいて、第１のメモリ１０１から変形前の画像を矩形領域ごとに読み出す。第２のメモリ１０５は、読み出し制御回路１０４によって読み出された変形前の画像を矩形領域ごとに一時的に記憶する。画像処理回路１０６は、演算回路１０３によって演算された変形前の画像における矩形領域内の座標に基づいて、第２のメモリ１０５から変形前の画像を読み出して、幾何変形処理を施し、変形後の画像を生成する。
【００１９】
第１のメモリ１０１は、具体的にはランダムアクセスよりもシーケンシャルアクセスが高速なＤＲＡＭ等の比較的安価なメモリを使用する。このメモリは、少なくとも幾何変形処理の対象となる入力画像データ全体を記憶できる容量を有する。入力画像データ全体とは、一度に処理する幾何変形の画角範囲を包含するサイズである。
【００２０】
また、第２のメモリ１０５は、ランダムアクセスを高速に行えるＳＲＡＭ等のメモリを使用する。ＳＲＡＭは、画像処理の高速化を達成する上では有利であるが、ＤＲＡＭに比べて高価であるため、本実施形態では、第２のメモリ１０５は、変形後の画像の矩形領域の１領域分が収まる程度の容量を有するものとする。これは、後述するように、画像の幾何変形として撮影レンズの歪曲収差を補正する処理を行う場合に、変形後の画像内の矩形領域の１領域に対応する変形前の画像における領域のサイズが最小である領域（画像中央部に対応する）が収まる容量と言うこともできる。なお、この場合、画像周辺部では、変形後の画像内の矩形領域の１領域に対応する変形前の画像における領域のサイズは、画像中央部よりも大きくなる。
【００２１】
座標生成回路１０２は、図２に示すように変形後の画像を複数の小領域である矩形領域２０１に分割する。座標生成回路１０２は、矩形領域２０１の輪郭を走査する輪郭座標生成部３０１と、矩形領域２０１の領域全体を走査する出力座標生成部３０２とを有する。
【００２２】
輪郭座標生成部３０１は、図３（ａ）に示すように、変形後の画像上の矩形領域２０１を上下に２分割した分割矩形領域の上端・左端・右端・下端の座標を順次生成する（図３（ａ）の斜線で示される画素３０３が存在する座標に相当する）。また、出力座標生成部３０２は、変形後の画像上の矩形領域２０１内の全画素を網羅するように、座標を順次生成する（図３（ｂ）の斜線で示される画素３０４が存在する座標に相当する）。
【００２３】
演算回路１０３は、座標生成回路１０２により生成された変形後の画像上の座標を変形前の画像上の座標に変換する座標変換演算を行う。例えば、画像を回転させる幾何変形処理であれば、座標値に対して回転行列を乗ずる演算を実施する。また、歪曲収差補正であれば像高を求めて像高に基づいた補正量を加算することによって座標演算を行う。座標変換の具体的な演算内容については、本発明の主旨に関係しないため、詳細は省略する。なお、以下では、説明を分かりやすくするため、画像の幾何変形として撮影レンズの歪曲収差を補正する処理を行う例について説明する。
【００２４】
図４は、変形後の画像と変形前の画像の対応関係を示した図である。出力の順序を規則的にするために、変形後の画像を既に説明したように小さな矩形領域２０１に分割する。図４（ａ）の矩形領域２０１は、小さな矩形領域の１つである。矩形領域２０１を生成するために必要な変形前の画像の領域が図４（ｂ）に示す領域４０１である。さらにこれを包含する矩形領域４０４を第２のメモリ１０５に読み込んで幾何変形処理を行うことで出力画像となる矩形領域２０１を生成する。以後、同様に変形後の画像を分割した矩形領域に対応する変形前の画像の領域を順次処理していくことにより、変形後の画像全体を得る。
【００２５】
座標生成回路１０２により生成された変形後の画像上の座標を、演算回路１０３によって変形前の画像上の座標に変換したイメージを図５に示す。図３（ａ）の輪郭座標生成部３０１により生成された変形後の画像上の画素３０３の座標は、演算回路１０３によって図５（ａ）に座標５０３で示す形状に変形される。なお、実際の変形による形状変化は、座標変換の演算内容によって変化するため、この変形はあくまで一例である。この輪郭座標の変形前の画像上の座標位置５０３を包含する矩形領域４０４を求める。輪郭座標の変形前の画像上の座標位置５０３を、（Ｐｘ[ｎ]，Ｐｙ[ｎ]）とすれば、包含する矩形領域４０４の左上の座標（Ｘ１，Ｙ１）及び、右下の座標（Ｘ２，Ｙ２）は、例えば下記のように求められる。なお、座標は画像の左上を原点とする。
【００２６】
Ｘ１＝ｍｉｎ（Ｐｘ[ｎ]），Ｙ１＝ｍｉｎ（Ｐｙ[ｎ]）
Ｘ２＝ｍａｘ（Ｐｘ[ｎ]），Ｙ２＝ｍａｘ（Ｐｙ[ｎ]）
輪郭座標の変形後の画像上の座標の上半分・下半分に対応する輪郭座標の変形前の画像上の座標位置についても、同様に包含する矩形領域５０５，５０６を求める（図５（ｃ）、図５（ｄ））。
【００２７】
この包含する矩形領域４０４を幾何変形して出力するために必要な第２のメモリ１０５の使用容量Ｓを、例えば下記のように求める。
【００２８】
Ｓ＝（Ｘ２−Ｘ１＋１）・（Ｙ２−Ｙ１＋１）
ここで、実際に画像処理装置１００に搭載されている第２のメモリ１０５の容量をＳthとする。Ｓ≦Ｓthとなる場合には、包含する矩形領域４０４は第２のメモリ１０５の容量内に収まることになる。そのため、包含する矩形領域４０４を第１のメモリ１０１から読み出して、第２のメモリ１０５に格納する。そして、出力座標生成部３０２と演算回路１０３によって求められる変形前の画像の座標に基づいて画像処理回路１０６によって幾何変形処理を実施する。Ｓ＞Ｓthとなる場合には、包含する矩形領域４０４が第２のメモリ１０５の容量内に収まらない。そのため、包含する矩形領域５０５と包含する矩形領域５０６の２回に分けて同様の幾何変形処理を実施する。
【００２９】
画像処理回路１０６は、出力座標生成部３０２によって生成された変換後の画像上の座標に対応する、演算回路１０３によって算出された変換前の画像上の座標の画素値を、第２のメモリ１０５から読み出して出力する。必要に応じて、バイリニア補間やバイキュービック補間等を実施しても構わない。ただし、そのようなフィルタリングを行う場合は、そのフィルタリングに必要な近傍画素も第２のメモリ１０５に取り込むように、包含する矩形領域４０４，５０５，５０６を近傍画素分だけ広げておく必要がある。
【００３０】
以上のように、本実施形態では、変形後の画像上の矩形領域に対応する変形前の画像上の領域のサイズに応じて、その領域がワークメモリに収まるように、変形後の画像上の矩形領域をさらに分割する。これにより、ごく少数しか発生しないワーストケースに合わせて変形後の画像上の全ての矩形領域のサイズを小さくする必要が無くなる。
【００３１】
本実施形態では、一例として、変形後の画像の矩形領域に対応する変形前の画像の領域が第２のメモリの記憶可能サイズを超えるか否かで更なる分割の有無を判断した。しかし、変形前の画像の領域のサイズを基準として更なる分割の有無を選択する構成であれば、別の方法で判断しても構わない。
【００３２】
（第２の実施形態）
図６は、本発明の第２の実施形態に係わる画像処理装置の構成を示すブロック図である。
【００３３】
図６において、画像処理装置１００は、入力された入力画像データに対して幾何変形処理を施す装置であり、第１のメモリ１０１と、座標生成回路６０２と、演算回路１０３と、読み出し制御回路１０４と、第２のメモリ１０５と、画像処理回路１０６と、矩形サイズ変換回路６０７とを備える。
【００３４】
第１のメモリ１０１は、入力された入力画像データを変形前の画像として記憶する。座標生成回路６０２は、幾何変形処理が施された変形後の画像の矩形領域の座標を生成する。座標生成回路６０２は、また後述する輪郭座標生成部７０１と出力座標生成部７０２とを有する。演算回路１０３は、座標生成回路１０２によって生成された変形後の画像の矩形領域の座標に対応する変形前の画像の座標を算出する。読み出し制御回路１０４は、演算回路１０３によって算出された変形前の画像における矩形領域の一部の座標に基づいて、第１のメモリ１０１から変形前の画像を矩形領域ごとに読み出す。第２のメモリ１０５は、読み出し制御回路１０４によって読み出された変形前の画像を矩形領域ごとに一時的に記憶する。画像処理回路１０６は、演算回路１０３によって演算された変形前の画像における矩形領域内の座標に基づいて、第２のメモリ１０５から変形前の画像を読み出して、幾何変形処理を施し、変形後の画像を生成する。矩形サイズ変換回路６０７は、画像処理回路１０６から出力される様々なサイズの矩形画像を所定のサイズに変換する。
【００３５】
図６において、座標生成回路６０２、矩形サイズ変換回路６０７以外は第１の実施形態と共通であるため、共通部分については説明を省略し、異なる部分についてのみ説明する。
【００３６】
座標生成回路６０２は、図２に示すように変形後の画像を複数の小領域である矩形領域２０１に分割する。座標生成回路６０２は、矩形領域２０１の輪郭を走査する輪郭座標生成部７０１と、矩形領域２０１の領域全体を走査する出力座標生成部７０２とを有する。
【００３７】
輪郭座標生成部７０１は、図７（ａ）に示すように、変形後の画像上の矩形領域２０１を左上・右上・左下・右下（上下左右）に４分割した分割矩形領域の上端・左端・右端・下端の座標を順次生成する（図７（ａ）の斜線で示される画素７０３が存在する座標に相当する）。また、出力座標生成部７０２は、変形後の画像上の矩形領域２０１内の全画素を網羅するように、座標を順次生成する（図７（ｂ）の斜線で示される画素７０４が存在する座標に相当する）。
【００３８】
演算回路１０３は、座標生成回路６０２により生成された変形後の画像上の座標を変形前の画像上の座標に変換する座標変換演算を行う。
【００３９】
座標生成回路６０２により生成された変形後の画像上の座標を、演算回路１０３によって変形前の画像上の座標に変換したイメージを図８に示す。図７（ａ）の輪郭座標生成部７０１により生成された変形後の画像上の画素７０３の座標は、演算回路１０３によって図８（ａ）に座標８０３で示す形状に変形される。なお、実際の変形による形状変化は、座標変換の演算内容によって変化するため、この変形はあくまで一例である。この輪郭座標の変形前の画像上の座標位置８０３を包含する矩形領域２０１を求める。輪郭座標の変形前の画像上の座標位置８０３を、（Ｐｘ[ｎ]，Ｐｙ[ｎ]）とすれば、包含する矩形領域２０１の左上の座標（Ｘ１，Ｙ１）及び、右下の座標（Ｘ２，Ｙ２）は、例えば下記のように求められる。なお、座標は画像の左上を原点とする。
【００４０】
Ｘ１＝ｍｉｎ（Ｐｘ[ｎ]），Ｙ１＝ｍｉｎ（Ｐｙ[ｎ]）
Ｘ２＝ｍａｘ（Ｐｘ[ｎ]），Ｙ２＝ｍａｘ（Ｐｙ[ｎ]）
輪郭座標の変形後の画像上の座標の左上・右上・左下・右下に対応する輪郭座標の変形前の画像上の座標位置についても、同様に包含する矩形領域８０５，８０６，８０７，８０８を求める（図８（ｃ）、図８（ｄ）、図８（ｅ）、図８（ｆ））。
【００４１】
この包含する矩形領域２０１を幾何変形して出力するために必要な第２のメモリ１０５の使用容量Ｓ１を、第１の実施形態と同様に求める。また、左上＋右上・左下＋右下の組み合わせで２領域を結合した矩形領域を幾何変形して出力するために必要な第２のメモリ１０５の使用容量Ｓ２を求める。さらに、包含する矩形領域８０５，８０６，８０７，８０８を幾何変形して出力するために必要な第２のメモリ１０５の使用容量Ｓ３も求める。これらの中から、第２のメモリ１０５の容量を超えず、かつ使用容量が最も大きくなる組み合わせを選択する。その選択した組み合わせによる矩形領域を第１のメモリ１０１から読み出して、第２のメモリ１０５に格納する。そして、出力座標生成部７０２と演算回路１０３によって求められる変形前の画像の座標に基づいて画像処理回路１０６によって幾何変形処理を実施する。また、選択した矩形領域の組み合わせ情報を後段である矩形サイズ変換回路６０７へ出力する。
【００４２】
画像処理回路１０６は、出力座標生成部７０２によって生成された変換後の画像上の座標に対応する、演算回路１０３によって算出された変換前の画像上の座標の画素値を、第２のメモリ１０５から読み出して出力する。
【００４３】
矩形サイズ変換回路６０７は、上記の矩形の組み合わせ情報に基づいて、図９のような並べ替えを行い矩形の組み合わせによらず一定の順序で出力画像が出力されるように変換する。図９（ａ）は、左上＋左下の領域の組み合わせが選択された場合の例を示している。図９（ｂ）に示すように、画像処理回路１０６の出力は、この組み合わせ単位で上から順に出力される。そのため、矩形の組み合わせ情報に基づいて、画像処理回路１０６の出力をＳＲＡＭ等に保持し、右半分が入力された時点で図９（ｃ）に示す順となるように出力する。左上＋右上の領域の組み合わせの場合や、左上・右上・左下・右下を全て別々の領域として扱う場合、さらに左上＋右上＋左下＋右下の領域の組み合わせの場合も同様に、図９（ｃ）に示す出力順となるように並べ替えて出力する。
【００４４】
以上のように、本実施形態によれば、第１の実施形態と同様、ごく少数しか発生しないワーストケースに合わせて変形後の画像上の全ての矩形領域のサイズを小さくする必要が無くなる。
【００４５】
なお、変形前の画像の領域を分割するか否かを事前に判断しておいて、変形前の画像の領域の位置に応じて、分割が必要か否かを示す情報を予め記憶しておくようにしてもよい。ただし、レンズの位置や手ブレ情報など、様々な要因に応じて分割が必要な領域の位置は変化する。これらの様々な要因に応じて変化する、画像の領域の位置と分割の要否の関係を示す情報を、全て記憶しておくことは現実的ではない。そこで、代表的な複数の条件下のそれぞれの対応する、画像の領域の位置と分割の要否の関係を示す情報を予め記憶しておいて、画像変形を行う際にいずれかの情報を選択するようにしてもよい。なお、情報を選択する際には、第２のメモリ１０５の容量を確実に超えることがないように、画像の領域の位置と分割の要否の関係を示す情報を選択するように構成する。
【００４６】
（他の実施形態）
また本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現できる。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現できる。
【符号の説明】
【００４７】
１００：画像処理装置、１０１：第１のメモリ、１０２：座標生成回路、１０３：演算回路、１０４：読み出し制御回路、１０５：第２のメモリ、１０６：画像処理回路、２０１：矩形領域
【図１】
2019032590.tif 000003
【図２】
2019032590.tif 000004
【図３】
2019032590.tif 000005
【図４】
2019032590.tif 000006
【図５】
2019032590.tif 000007
【図６】
2019032590.tif 000008
【図７】
2019032590.tif 000009
【図８】
2019032590.tif 000010
【図９】
2019032590.tif 000011