(57)【要約】      （修正有）【課題】画像データのリサイズ処理の低速化を防止することが可能な画像処理方法を提供する。【解決手段】演算ブロックが入力画像データＩＧの左上の入力ブロックＩＢ１１ａへ配置される。入力ラインＩＬ１１ａおよびＩＬ２１ａを演算ブロックから取得し、出力ラインＯＬ１１ａを算出する。次の出力ラインＯＬ２１ａを得るために入力バッファに保持されている入力ラインを何本更新する必要があるか（更新ライン数ＬＮ）の判定が行われる。更新ライン数ＬＮ＝０のときは、更新不要であり、入力ラインＩＬ１１ａおよびＩＬ２１ａから出力ラインＯＬ２１ａを生成する。更新ライン数ＬＮ＝１のときは、１ライン分を更新してＩＬ３１ａを取得して、出力ラインＯＬ２１ａを生成する。また更新ライン数ＬＮ＝２のときは、演算ブロックを入力ブロックＩＢ１２ａの位置へ移動させ、入力ラインを演算ブロックから取得して処理を続ける。【選択図】図４
2010130384.tif 000002
【特許請求の範囲】
【請求項１】
水平方向のラインデータを垂直方向に複数有し、１フレーム分の画像データから、演算領域に含まれる前記ラインデータを複数取得してリサイズ演算を行い出力ラインデータを生成し、前記演算領域を前記画像データ上で走査させることで前記画像データをリサイズ処理する画像処理方法であって、
前記演算領域を前記画像データ上の処理開始位置に位置させる第１ステップと、
演算対象の前記出力ラインデータの演算に必要な前記ラインデータを前記演算領域から取得し、前記出力ラインデータを算出する第２ステップと、
前記演算対象の前記出力ラインデータの垂直方向に隣接する前記出力ラインデータを算出するための前記水平方向のラインデータを前記演算領域から取得する場合に、前記演算対象の前記出力ラインデータを算出するための前記水平方向のラインデータと前記隣接する前記出力ラインデータを算出するための前記水平方向のラインデータとが重複するか否かを判断する第３ステップと、
を備え、
前記第３ステップにおいて重複する場合には、前記隣接する前記出力ラインデータの算出に必要な前記ラインデータを取得して前記第２ステップへ戻って処理を続行し、
前記第３ステップにおいて重複しない場合には、前記処理開始位置の前記水平方向に隣接する位置に新たな処理開始位置を設定した上で、前記第１ステップへ戻って処理を続行する
ことを特徴とする画像処理方法。
【請求項２】
前記画像データは、水平方向に延びる水平方向辺と垂直方向に延びる垂直方向辺によって囲われる１フレーム分のデータであり、
新たな前記処理開始位置に配置された前記演算領域の全領域が前記画像データの前記垂直方向辺を超えて前記画像データの範囲外に位置するか否かを判断する第４ステップを備え、
前記第４ステップにおいて前記演算領域の全領域が前記画像データの範囲外に位置しない場合には、前記処理開始位置の水平方向に隣接する位置に新たな前記処理開始位置を設定した上で、前記第１ステップへ戻って処理を続行し、
前記第４ステップにおいて前記演算領域の全領域が前記画像データの範囲外に位置する場合には、前記演算領域が未移動の領域内における前記垂直方向辺に接する位置に新たな前記処理開始位置を設定した上で、前記第１ステップへ戻って処理を続行する
ことを特徴とする請求項１に記載の画像処理方法。
【請求項３】
新たな前記処理開始位置に配置された前記演算領域の全領域が前記画像データの前記水平方向辺を超えて前記画像データの範囲外に位置するか否かを判断する第５ステップを備え、
前記第５ステップにおいて前記演算領域の全領域が前記画像データの範囲外に位置し、かつ、前記第４ステップにおいて前記演算領域の全領域が前記画像データの範囲外に位置する場合には、前記画像データのリサイズ処理を終了する
ことを特徴とする請求項２に記載の画像処理方法。
【請求項４】
前記リサイズ処理では、前記リサイズ処理後の前記画像データの座標に対応する前記リサイズ処理前の前記画像データの座標である演算ポイントが、前記演算領域内で垂直方向サンプリングピッチずつ移動し、
前記演算ポイントの前記垂直方向の所定範囲内に存在する前記ラインデータを用いて前記リサイズ処理が行われ、
前記垂直方向サンプリングピッチは、垂直方向のリサイズ率の逆数であり、１ピッチは前記ラインデータのライン間のピッチである
ことを特徴とする請求項１に記載の画像処理方法。
【請求項５】
前記垂直方向サンプリングピッチが、１．０ピッチ以上から２．０ピッチより小さい値の範囲内である場合に、前記第１ステップないし前記第３ステップを行う
ことを特徴とする請求項４に記載の画像処理方法。
【請求項６】
水平方向のラインデータを垂直方向に複数有し、１フレーム分の画像データから、演算領域に含まれる前記ラインデータを複数取得してリサイズ演算を行い出力ラインデータを生成し、前記演算領域を前記画像データ上で走査させることで前記画像データをリサイズ処理する画像処理装置であって、
前記演算領域を前記画像データ上の処理開始位置に位置させる第１ステップを実行する第１手段と、
演算対象の前記出力ラインデータの演算に必要な前記ラインデータを前記演算領域から取得し、前記出力ラインデータを算出する第２ステップを実行する第２手段と、
前記演算対象の前記出力ラインデータの垂直方向に隣接する前記出力ラインデータを算出するための前記水平方向のラインデータを前記演算領域から取得する場合に、前記演算対象の前記出力ラインデータを算出するための前記水平方向のラインデータと前記隣接する前記出力ラインデータを算出するための前記水平方向のラインデータとが重複するか否かを判断する第３ステップを実行する第３手段と、
を備え、
前記第１ないし第３手段は、前記第３ステップにおいて重複する場合には、前記隣接する前記出力ラインデータの算出に必要な前記ラインデータを取得して前記第２ステップへ戻って処理を続行し、
前記第３ステップにおいて重複しない場合には、前記処理開始位置の前記水平方向に隣接する位置に新たな処理開始位置を設定した上で、前記第１ステップへ戻って処理を続行する
ことを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データの画像処理に関するものであり、特に、リサイズ処理に関するものである。
【背景技術】
【０００２】
従来、入力フレームバッファから入力ラインバッファに入力分割ラインデータサイズ単位でデータを転送させ、補間処理手段による補間処理後の画素データを出力ラインバッファの先頭から順次格納し、出力ラインバッファの最後まで格納したら出力ラインバッファのデータを出力フレームバッファの対応する座標に転送させる、という技術が知られている。
【０００３】
【特許文献１】特開２００７−２４１８５９号公報
【特許文献２】特開２００１−１９７３４８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
出力画像を１ライン単位で水平順に出力しようとするため、次の出力ラインを処理するときにも、入力画像の同一ラインが必要となることがある。すると、重複リード（ムダ読み）が発生するため、メモリへ転送要求が多くなり、他のマクロ回路の転送効率を低下させるため問題である。また、転送時間の長時間化によってリサイズ処理が低速化するため、問題である。
【０００５】
本発明は前記背景技術の課題の少なくとも１つを解消するためになされたものであり、画像データのリサイズ処理の低速化を防止することが可能な画像処理方法を提供することを提案する。
【課題を解決するための手段】
【０００６】
前記目的を達成するために、この画像処理方法は、水平方向のラインデータを垂直方向に複数有し、１フレーム分の画像データから、演算領域に含まれるラインデータを複数取得してリサイズ演算を行い出力ラインデータを生成し、演算領域を画像データ上で走査させることで画像データをリサイズ処理する画像処理方法であって、演算領域を画像データ上の処理開始位置に位置させる第１ステップと、演算対象の出力ラインデータの演算に必要なラインデータを演算領域から取得し、出力ラインデータを算出する第２ステップと、演算対象の出力ラインデータの垂直方向に隣接する出力ラインデータを算出するための水平方向のラインデータを演算領域から取得する場合に、演算対象の出力ラインデータを算出するための水平方向のラインデータと隣接する出力ラインデータを算出するための水平方向のラインデータとが重複するか否かを判断する第３ステップと、を備え、第３ステップにおいて重複する場合には、隣接する出力ラインデータの算出に必要なラインデータを取得して第２ステップへ戻って処理を続行し、第３ステップにおいて重複しない場合には、処理開始位置の水平方向に隣接する位置に新たな処理開始位置を設定した上で、第１ステップへ戻って処理を続行することを特徴とする。
【０００７】
また、画像処理装置は、水平方向のラインデータを垂直方向に複数有し、１フレーム分の画像データから、演算領域に含まれるラインデータを複数取得してリサイズ演算を行い出力ラインデータを生成し、演算領域を画像データ上で走査させることで画像データをリサイズ処理する画像処理装置であって、演算領域を画像データ上の処理開始位置に位置させる第１ステップを実行する第１手段と、演算対象の出力ラインデータの演算に必要なラインデータを演算領域から取得し、出力ラインデータを算出する第２ステップを実行する第２手段と、演算対象の出力ラインデータの垂直方向に隣接する出力ラインデータを算出するための水平方向のラインデータを演算領域から取得する場合に、演算対象の出力ラインデータを算出するための水平方向のラインデータと隣接する出力ラインデータを算出するための水平方向のラインデータとが重複するか否かを判断する第３ステップを実行する第３手段と、を備え、第１ないし第３手段は、第３ステップにおいて重複する場合には、隣接する出力ラインデータの算出に必要なラインデータを取得して第２ステップへ戻って処理を続行し、第３ステップにおいて重複しない場合には、処理開始位置の水平方向に隣接する位置に新たな処理開始位置を設定した上で、第１ステップへ戻って処理を続行することを特徴とする。
【０００８】
演算領域は、１フレーム分の画像データの領域以下の領域である。演算領域の大きさは、バッファのサイズや、リサイズ処理の方法などで決まる。リサイズ処理は、拡大や縮小が挙げられる。リサイズ処理は、例えばバイリニアやバイキュービックなどの方法が挙げられる。演算領域ごとに分割してリサイズ処理を行い、演算領域を画像データ上で走査させることで画像データの全域に渡ってリサイズ処理が行われる。
【０００９】
第３ステップにおいて、演算対象の出力ラインデータを算出するための水平方向のラインデータと隣接する出力ラインデータを算出するための水平方向のラインデータとが重複すると判断される間は、第２ステップから第３ステップまでが繰り返されることで、演算領域の垂直方向幅が処理開始位置を始点として垂直方向へ延びていく。そして、リサイズ処理が垂直方向へ順次行われていく。また、第３ステップにおいて、演算対象の出力ラインデータを算出するための水平方向のラインデータと隣接する出力ラインデータを算出するための水平方向のラインデータとが重複しないと判断されると、演算領域は新たな処理開始位置へジャンプする。ここで、処理開始位置から、第３ステップにおいて重複しないと判断される位置まで垂直方向へ延びた垂直方向幅は、固定値ではなく、垂直方向サンプリングピッチによって変化する値である。
【００１０】
作用を説明する。第３ステップにより、演算対象の出力ラインデータを算出するための水平方向のラインデータと隣接する出力ラインデータを算出するための水平方向のラインデータとが重複するか否かの境界を検出することができる。この境界部分を区切りとして、演算領域の１ブロック単位を形成すれば、この１ブロック単位の中では読み出したラインデータを完全に使い切ることができる。すなわち、ブロック単位ごとに演算処理を行うとすれば、あるブロック単位を演算処理する際に、他のブロック単位内のラインデータは不要とすることができる。これにより、第３ステップにより、ラインデータの重複リード（ムダ読み）が発生しないための演算領域の垂直方向幅を決定することができる。また、第３ステップを毎回行うことから、垂直方向幅を動的に決定することができる。これにより、ラインデータの重複リード（ムダ読み）が発生しないため、ラインデータの転送効率を高めることができ、リサイズ処理の高速化を図ることが可能となる。
【発明の効果】
【００１１】
本開示の画像処理方法によれば、画像データのリサイズ処理の低速化を防止することが可能な画像処理方法を提供することが可能になる。
【発明を実施するための最良の形態】
【００１２】
以下、本開示の画像処理方法について具体化した実施形態を図１乃至図１１に基づき図面を参照しつつ詳細に説明する。まず、リサイズ処理（拡大・縮小処理）について説明する。なお、リサイズ処理には、バイリニア法やバイキュービック法などの各種方法があるが、本実施形態では例として、バイリニア法によるリサイズ方法を説明する。
【００１３】
図１を用いて、入力画像データＩＧについて説明する。入力画像データＩＧは、水平方向Ｘの入力ラインＩＬ１ないしＩＬｎを垂直方向Ｙにｎ本複数有してなる１フレーム分の画像データである。入力画像データＩＧは、水平方向に延びる上辺ＵＥおよび下辺ＤＥと、垂直方向に延びる右辺ＲＥおよび左辺ＬＥによって囲われる。
【００１４】
バイリニアでは、１画素の出力画素を生成するために、入力画像における、演算ポイント近傍の４画素が必要となる。ここで、演算ポイントは、出力画像の座標に対応する入力画像の座標である。入力画像データＩＧ内の各入力ラインのサンプリング方法を、図２を用いて詳説する。
【００１５】
演算ポイント（ＣＰ１、ＣＰ２など）が、入力画像データＩＧ内でＶピッチＶＰずつ垂直下方向へ移動する。そして、演算ポイント近傍の所定範囲内（ＢＡ１、ＢＡ２など）に存在するラインデータを用いてリサイズ処理が行われる。ここでＶピッチとは、垂直方向Ｙの入力画像サンプリングピッチ（飛び幅）のことである。そしてＶピッチは、垂直リサイズ率の逆数に相当する。例えば、リサイズ処理によって入力画像データＩＧが垂直１／２倍に縮小される場合にはＶピッチ＝２となり、垂直２倍に拡大される場合には、Ｖピッチ＝１／２となる。
【００１６】
演算ポイント近傍の所定範囲を定める方法を説明する。例として、下式（１）を用いる場合を説明する。
更新ライン数ＬＮ＝［小数切り捨て（ＶＣ（ｎ＋１））］−［小数切り捨て（ＶＣ（ｎ））］  …式（１）
ここでＶＣは演算ポイントの垂直座標であり、ｎは自然数である。更新ライン数ＬＮ＝２のときは２ライン更新が必要であり、更新ライン数ＬＮ＝１のときは１ライン更新が必要である。一方、更新ライン数ＬＮ＝０のときはラインの更新は不要である。例として、Ｖピッチ＝１．５の場合を説明する。出力ラインの１ライン目の演算時は、開始時であり２ラインが必要となるため、バイリニア演算領域ＢＡ１が設定される。よって、バイリニア演算領域ＢＡ１に含まれる入力ラインＩＬ１１およびＩＬ２１のデータを用いて出力ラインの１ライン目が演算される。
【００１７】
出力ラインの２ライン目の演算時は、演算ポイントＣＰ１の垂直座標ＶＣ（１）が０．０であり、演算ポイントＣＰ２の垂直座標ＶＣ（２）が１．５であるため、式（１）より、更新ライン数ＬＮ＝１である。よって、バイリニア演算領域ＢＡ２が設定され、新たに１本分の入力ライン（入力ラインＩＬ３１）がサンプリングされる。よって、バイリニア演算領域ＢＡ２に含まれる入力ラインＩＬ２１およびＩＬ３１のデータを用いて出力ラインの２ライン目が演算される。以下、同様にして演算が繰り返される。
【００１８】
次に、本実施形態における、入力ラインのサンプリング方法について説明する。本実施形態では、Ｖピッチの値に応じて、サンプリング方法が変更される。
【００１９】
Ｖピッチ≧２．０のときのサンプリング方法を、図３を用いて説明する。Ｖピッチ≧２．０のときは、垂直１／２倍以上の縮小となる。Ｖピッチ≧２．０のときは、図２において演算ポイントの垂直座標が互いに２．０以上離れるため、バイリニア演算領域が垂直方向に重複しない。よって、図３に示すように、水平進み（処理パターン１）となる。
【００２０】
図３を用いて、水平進み（処理パターン１）の処理方法を説明する。水平進みでは、入力ブロック高さＩＹ＝２ラインに固定される。また各入力ブロックの入力ブロック幅ＩＸは、ハード構成によって決まる値であり、後述する入力バッファの水平サイズで決定される。入力ブロック幅ＩＸの値は、例えば３２画素などの値とされる。水平進みでは、入力ブロックＩＢ１１、ＩＢ１２、…ＩＢ１ｎと、水平右方向へ処理が行われる入力ブロックが移動する。そして処理が行われる入力ブロックが入力画像データの右辺ＲＥまで到達すると、垂直方向Ｙへ一段下がって、また左端の入力ブロックＩＢ２１を始点として水平右方向へ処理が行われる。そして右下端の入力ブロックＩＢ３ｎまで来ると、走査が終了する。これにより、縮小処理が行われた出力画像ＯＧが生成される。
【００２１】
また、１．０≦Ｖピッチ＜２．０のときのサンプリング方法を、図２を用いて説明する。１．０≦Ｖピッチ＜２．０のときは、垂直１／２倍より小さい縮小となる。図２において、出力ラインの２ライン目（演算ポイントＣＰ２に対応）の演算時は、バイリニア演算領域ＢＡ２に含まれる入力ラインＩＬ２１およびＩＬ３１のデータを用いて演算が行われる。また、出力ラインの３ライン目（演算ポイントＣＰ３に対応）の演算時は、演算ポイントＣＰ３の垂直座標ＶＣ（３）＝３．０であるため、バイリニア演算領域ＢＡ３に含まれる入力ラインＩＬ４１およびＩＬ５１のデータを用いて演算が行われる。すると、バイリニア演算領域ＢＡ１とＢＡ２との間では入力ラインＩＬ２１が重複していたが、バイリニア演算領域ＢＡ２とＢＡ３との間では重複する入力ラインが存在せず、入力ラインが全て更新されることになる。そして、重複するバイリニア演算領域ＢＡ１およびＢＡ２の垂直方向幅を合算した垂直方向幅ＶＷが決定する。ここで垂直方向幅ＶＷは、入力ラインラインの重複リード（ムダ読み）が発生しないために必要な、入力ブロックの入力ブロック高さである。
【００２２】
なお、垂直方向幅ＶＷは一定値にはならない。これは、垂直座標ＶＣの小数分のずれが毎回変わるためである。例えばＶピッチ１．８のときは、垂直方向幅ＶＷの値は、１ラインであるときと２ラインであるときとが周期的に現れる。
【００２３】
このように、垂直方向幅ＶＷが決定される場合（１．０≦Ｖピッチ＜２．０の場合）には、第１ブロック進み（処理パターン２）となる。
【００２４】
図４を用いて、第１ブロック進み（処理パターン２）の処理方法を説明する。処理パターン２では、入力ブロックＩＢ１１ａの入力ブロック高さＩＹ＝垂直方向幅ＶＷとされる。そして入力ブロックＩＢ１１ａに含まれる入力ラインＩＬ１１ａからＩＬ３１ａに対して、リサイズ処理が行われる。そして、入力ブロックＩＢ１１ａ、ＩＢ１２ａ、…ＩＢ１ｎａと、水平右方向へ処理が行われるブロックが移動する。なお、ブロックの移動の方法は水平進み（処理パターン１）と同様であるため、ここでは詳細な説明は省略する。
【００２５】
また、Ｖピッチ＜１．０のときのサンプリング方法を、図５を用いて説明する。Ｖピッチ＜１．０のときは、拡大となる。Ｖピッチ＜１．０のときは、図２においてバイリニア演算領域が必ず垂直方向に重複する。すなわち、Ｖピッチが小さいため、２ライン分の全ライン更新がない。よって図５に示すように、第２ブロック進み（処理パターン３）となる。
【００２６】
図５を用いて、第２ブロック進み（処理パターン３）の処理方法を説明する。処理パターン３では、入力ブロック高さＩＹは可変とされる。そして入力ブロック高さＩＹが垂直幅ＢＶ以下の値となるように制御される。垂直幅ＢＶは任意に定められる値である。例えば垂直幅ＢＶの値は、後述する水平重複用入力バッファ３４において、垂直方向に保持できる入力ラインの垂直幅を超えないように設定すればよい。
【００２７】
入力ブロックＩＢ１１ｂに含まれる入力ラインＩＬ１１ｂからＩＬ５１ｂに対して、リサイズ処理が行われる。そして、入力ブロックＩＢ１１ｂ、ＩＢ１２ｂ、…ＩＢ１ｎｂと、水平右方向へ処理が行われるブロックが移動する。入力画像データの右端部に存在する入力ブロックＩＢ１ｎｂの処理が終了すると、垂直方向Ｙへ一段下がって、また左端の入力ブロックＩＢ２１ｂを始点として水平右方向へ処理が行われる。このとき、一段下の入力ブロックＩＢ２１ｂでは、一段上の入力ブロックＩＢ１１ｂの下端ライン（図５のハッチング内の入力ラインＩＬ５１ｂ）を重複してリードすることになる。なお、ブロックの移動の方法は第１ブロック進み（処理パターン２）と同様であるため、ここでは詳細な説明は省略する。
【００２８】
次に、上述した処理を行う回路動作を説明する。図６に、本実施形態に係る画像処理装置１を示す。画像処理装置１は、画像処理回路２、ＳＤＲＡＭ１２、ＬＣＤ５、センサ６を備える。センサ６は、レンズを通して受光した像を、２次元配列のディジタル信号に変換して出力するイメージセンサである。センサ６の例としては、ＣＣＤセンサやＣＭＯＳセンサなどが挙げられる。ＳＤＲＡＭ１２は大容量一時記憶外部メモリである。ＬＣＤ５は液晶表示パネルである。
【００２９】
画像処理回路２には、ハードで構成された各種マクロが搭載されている。画像処理回路２は、ＣＰＵ１０により動作が制御される。表示回路１５は、ＬＣＤ５用の信号ＣＳなど、外部表示デバイスへ対応した信号変換・信号出力を行う。マクロ回路１６には、センサ６からベイヤ配列データＢＹＤが入力される。そして変換回路１７は、ベイヤ配列データＢＹＤを、ＹＣｂＣｒ形式データＹＣＤに変換する動作を行う。リサイズ回路１１は、入力される画像データのリサイズ処理（拡大・縮小）を行う。ＪＰＥＧ回路１８は、画像データのＪＰＥＧフォーマットへの符号化・復号化を行う。ノイズ除去回路１９は、画像データのノイズ除去処理を行う。調停部１４は、各マクロとＳＤＲＡＭ１２との間の画像データの読み書きの調停を行う。
【００３０】
ＳＤＲＡＭ１２には、画像データが保持されている。ここで１フレーム分の画像が二次元記憶領域に格納される場合には、例えば、画像を構成する画素データが水平方向Ｘに連続した状態で格納される。そしてメモリの二次元記憶領域の複数行に渡り画像の書込みが行われる。
【００３１】
図７に、リサイズ回路１１の回路図を示す。転送制御部３０は、リードアドレス演算部３１およびライトアドレス演算部３２を備える。転送制御部３０からＳＤＲＡＭコントローラ１３へは、リード要求ＲＣ、ライト要求ＷＣ、ライトデータＷＤが出力される。またリードアドレス演算部３１からはリードアドレスＲＡが出力され、ライトアドレス演算部３２からはライトアドレスＷＡが出力される。ＳＤＲＡＭコントローラ１３から転送制御部３０へはリードデータＲＤが入力される。
【００３２】
制御部３７は、処理座標判定部３８を備える。制御部３７からは制御信号ＳＳが出力され、処理座標判定部３８からは判定信号ＪＳが出力される。入力バッファ３３には入力ラインデータＩＬＤおよび判定信号ＪＳが入力される。また入力バッファ３３から出力される入力画素データＩＰＤは、リサイズ演算処理部３５および水平重複用入力バッファ３４に入力される。水平重複用入力バッファ３４から出力される水平重複入力画素データＩＨＤは、リサイズ演算処理部３５に入力される。入力バッファ３３の縦サイズ（入力ラインデータＩＬＤの保持本数）は，必要ライン（バイリニアでは２ライン）に対して，少し多めのライン分の容量のものとし，リングバッファとして使用する。入力バッファ３３の横サイズは，ＳＤＲＡＭ１２のバースト転送の単位の倍数とされ、例えば３２画素などの値とされる。そして、入力バッファ３３の横サイズの値が，入力ブロック幅ＩＸの値となる。
【００３３】
出力バッファ３６には、リサイズ演算処理部３５から出力される出力画素データＯＰＤおよび判定信号ＪＳが入力され、出力ラインデータＯＬＤが出力される。出力ラインデータＯＬＤは、転送制御部３０へ入力される。ここで入力ラインデータＩＬＤおよび出力ラインデータＯＬＤはライン単位のデータであり、入力画素データＩＰＤは４画素単位のデータであり、出力画素データＯＰＤは１画素単位のデータである。出力バッファ３６の縦サイズ（出力ラインデータＯＬＤの保持本数）は，必要ライン（１ライン）に対して，少し多めのライン分の容量のものとし，リングバッファとして使用する。また、出力バッファ３６の横サイズは，ＳＤＲＡＭ１２のバースト転送の単位の倍数とされる。
【００３４】
処理パターン１（水平進み）が行われる場合の、リサイズ回路１１の動作を説明する。図８のフローチャートおよび図３の説明図を用いて説明する。処理が開始されると、Ｓ１において、演算ブロックが入力画像データＩＧの左上の入力ブロックＩＢ１１のスタート位置へ配置される。
【００３５】
Ｓ３において、転送制御部３０からリード要求ＲＣが出力され、ＳＤＲＡＭコントローラ１３へ入力される。また、リードアドレス演算部３１でリードアドレスＲＡが生成され、ＳＤＲＡＭコントローラ１３へ入力される。生成されたリードアドレスＲＡに応じて、リードデータＲＤが、ＳＤＲＡＭ１２から転送制御部３０へ入力される。転送制御部３０から入力バッファ３３へは、入力ラインデータＩＬＤ（入力ブロックＩＢ１１に含まれる入力ラインＩＬ１１およびＩＬ２１）が転送される。
【００３６】
Ｓ５において、リサイズ演算処理部３５では、入力バッファ３３から、入力画素データＩＰＤを４画素ずつ取得し、出力画素データＯＰＤを１画素ずつ生成して、出力バッファ３６へ保持する。これにより、入力ラインＩＬ１１およびＩＬ２１の２ライン分のデータから、出力ラインＯＬ１１が生成され、出力バッファ３６に保持される。
【００３７】
Ｓ７において、出力バッファ３６に保持されている出力ラインＯＬ１１が、出力ラインデータＯＬＤとして転送制御部３０へ転送される。転送制御部３０からはライト要求ＷＣが出力され、ＳＤＲＡＭコントローラ１３へ入力される。また、ライトアドレス演算部３２でライトアドレスＷＡが生成され、ＳＤＲＡＭコントローラ１３へ入力される。生成されたライトアドレスＷＡに応じて、出力ラインＯＬ１１が、ライトデータＷＤとして、転送制御部３０からＳＤＲＡＭ１２へ転送される。
【００３８】
Ｓ９において、入力画像データＩＧの右端まで演算ブロックが到達したか否かが判定される。当該説明例では、演算ブロックは入力ブロックＩＢ１１に位置しており、右端まで到達していないため（Ｓ９：ＮＯ）、Ｓ１１へ進む。
【００３９】
Ｓ１１に進むと、演算ブロックが水平右方向へ進み、入力ブロックＩＢ１２の位置へ移動し、処理が続行される。以後、処理が繰り返され、演算ブロックが入力ブロックＩＢ１ｎの位置まで進む。
【００４０】
入力ブロックＩＢ１ｎでの処理を説明する。入力ブロックＩＢ１ｎは入力画像データＩＧの右端に位置するブロックであるため（Ｓ９：ＹＥＳ）、Ｓ１３へ進む。Ｓ１３では、演算ブロックが入力画像データＩＧの下端まで移動したか否かが判定される。演算ブロックが下端の位置にない場合（Ｓ１３：ＮＯ）（例えば入力ブロックＩＢ２ｎの位置）には、Ｓ１５ヘ進む。Ｓ１５では、演算ブロックが、１段下の左端（例えばブロックＩＢ３１の位置）へ移動する。一方、入力ブロックが下端の位置にある場合（Ｓ１３：ＹＥＳ）（例えば入力ブロックＩＢ３ｎの位置）には、フローを終了する。
【００４１】
処理パターン２（ブロック進み）を説明する。図９のフローチャートおよび図４の説明図を用いて説明する。処理が開始されると、Ｓ２１において、演算ブロックが入力画像データＩＧの左上の入力ブロックＩＢ１１ａのスタート位置へ配置される。
【００４２】
Ｓ２３において、転送制御部３０から出力されるリード要求ＲＣおよびリードアドレス演算部３１から出力されるリードアドレスＲＡがＳＤＲＡＭコントローラ１３へ入力されることに応じて、入力ブロックＩＢ１１ａに含まれる入力ラインＩＬ１１ａおよびＩＬ２１ａが、ＳＤＲＡＭ１２から入力バッファ３３へ転送され保持される。
【００４３】
リード要求ＲＣの生成方法について詳説する。処理座標判定部３８において、入力バッファ３３に保持されている入力ラインを更新する必要があるとの判断（入力バッファ３３に空きができ、演算に不要な入力ラインのデータに上書き可能との判断）が行われると，転送制御部３０は、次の演算に必要となる入力ラインのアドレスに対するリード要求ＲＣを行う。このとき例えば、ＳＤＲＡＭ１２のアドレスが大きな単位（例えば１６バイト単位）でしか設定できない場合には，１６バイト単位で入力ラインのデータを入力バッファ３３へ転送する。そして、１６バイト単位よりも小さい単位で入力ラインのデータが必要な場合は，必要なデータを含むように１６バイト単位でデータを転送しておき、不要なデータを消去する。
【００４４】
Ｓ２５において、リサイズ演算処理部３５では、入力バッファ３３から出力された入力ラインＩＬ１１ａおよびＩＬ２１ａの２ライン分のデータから、出力ラインＯＬ１１ａを生成する。生成された出力ラインＯＬ１１ａは、出力バッファ３６へ保持される。
【００４５】
Ｓ２７において、転送制御部３０から出力されるライト要求ＷＣおよびライトアドレス演算部３２から出力されるライトアドレスＷＡがＳＤＲＡＭコントローラ１３へ入力されることに応じて、出力ラインＯＬ１１ａが、出力バッファ３６からＳＤＲＡＭ１２へ転送される。
【００４６】
ライト要求ＷＣの生成方法について詳説する。１ライン分の出力ラインデータＯＬＤ（演算結果）が出力バッファ３６に格納された時点で，格納すべき位置のＳＤＲＡＭ１２のアドレスに対するライト要求ＷＣを行う。このとき例えば、ＳＤＲＡＭ１２のアドレスが大きな単位（例えば１６バイト単位）でしか設定できない場合には，１６バイト単位で出力ラインデータをＳＤＲＡＭ１２へ転送する。そして、１６バイト単位よりも小さい単位で出力ラインデータを転送する必要がある場合は，出力バッファ３６の一部を空き状態として有効データのみ格納しておき，有効データ以外は転送マスクを使ってＳＤＲＡＭ１２へ書き込まない構成とすればよい。
【００４７】
Ｓ３１では、処理座標判定部３８において、次の出力ラインＯＬ２１ａを得るために入力バッファ３３に保持されている入力ラインを何本更新する必要があるか（更新ライン数ＬＮ）の判定が行われる。具体的には、処理座標判定部３８では、前述した式（１）を用いて、「入力バッファ３３の内容を更新すべきなのは、２ライン分、または１ライン分、または更新不要、の何れか？」を判定する。更新ライン数ＬＮ＝０のときは、更新不要であり、Ｓ２５へ戻る。そして、再度、入力バッファに保持されている２ライン分のデータから、出力ラインＯＬ２１ａを生成する。
【００４８】
また更新ライン数ＬＮ＝１のときは、２ライン分のうちの１ラインを更新する必要があるため、Ｓ３７へ進む。Ｓ３７では、下の１ライン（入力ラインＩＬ３１ａ）がＳＤＲＡＭ１２から入力バッファ３３へ転送される。そしてＳ２５へ戻り、入力ラインＩＬ２１ａおよびＩＬ３１ａの２ライン分のデータから、出力ラインＯＬ２１ａを生成する。
【００４９】
また更新ライン数ＬＮ＝２のときは、２ライン分のうちの２ラインを更新する必要があるため、Ｓ３２へ進む。Ｓ３２では、演算ブロックが入力画像データＩＧの下端まで移動したか否かが判定される。演算ブロックが下端の位置にない場合（Ｓ３２：ＮＯ）（例えば入力ブロックＩＢ１１ａの位置）には、Ｓ３８ヘ進む。Ｓ３８において、演算ブロックが入力画像データＩＧの右端まで到達したか否かが判定される。演算ブロックが右端の位置にない場合（Ｓ３８：ＮＯ）（例えば入力ブロックＩＢ１１ａの位置）には、Ｓ３５ヘ進む。Ｓ３５では、演算ブロックが水平右方向へ進み、入力ブロックＩＢ１２ａの位置へ移動し、Ｓ２３へ戻って処理が続行される。また、演算ブロックが右端の位置にある場合（Ｓ３８：ＹＥＳ）（例えば入力ブロックＩＢ１ｎａの位置）には、Ｓ３９ヘ進む。Ｓ３９では、演算ブロックが、１段下の左端（例えばブロックＩＢ２１ａの位置）へ移動し、Ｓ２３へ戻って処理が続行される。
【００５０】
また、演算ブロックが下端の位置にある場合（Ｓ３２：ＹＥＳ）には、Ｓ３３へ進む。Ｓ３３では、入力画像データＩＧの右端まで処理したか否かが判定される。演算ブロックが右端の位置にない場合（Ｓ３３：ＮＯ）（例えば入力ブロックＩＢ３１ａの位置）には、Ｓ３５ヘ進み、演算ブロックが水平右方向へ移動する（例えばブロックＩＢ３２ａ）。一方、入力ブロックが右端の位置にある場合（Ｓ３３：ＹＥＳ）（例えば入力ブロックＩＢ３ｎａの位置）には、フローが終了する。
【００５１】
また、水平重複用入力バッファ３４の動作を説明する。バイリニア法では、１画素の出力画素を生成するために、入力画像における、演算ポイント近傍の４画素が必要となる。よって、入力ブロックの左端（例えば、入力ブロックＩＢ１２ａの左端）を演算する際に、左隣りの入力ブロック（例えば、入力ブロックＩＢ１１ａ）の右端の画素が必要となる場合がある。この場合、水平重複用入力バッファ３４を備えない場合には、左隣りの入力ブロックの右端に存在する画素を再度読み出す必要があるため、重複リードが発生する。しかし、水平重複用入力バッファ３４を備えることにより、各入力ブロックの右端に位置する画素を水平重複用入力バッファ３４に保持しておくことができる。これにより、左隣りの画素を水平重複入力画素データＩＨＤ（図７）としてリサイズ演算処理部３５へ供給することができるため、重複リードを防止することができる。
【００５２】
処理パターン３（ブロック進み）を説明する。図１０のフローチャートおよび図５の説明図を用いて説明する。処理を開始すると、Ｓ４１において、演算ブロックが入力画像データＩＧの左上の入力ブロックＩＢ１１ｂのスタート位置へ配置される。
【００５３】
Ｓ４３において、入力ブロックＩＢ１１ｂに含まれる入力ラインＩＬ１１ｂおよびＩＬ２１ｂが、ＳＤＲＡＭ１２から入力バッファ３３へ転送され保持される。Ｓ４５において、リサイズ演算処理部３５では、出力ラインＯＬ１１ｂが生成され、出力バッファ３６へ保持される。Ｓ４７において出力ラインＯＬ１１ｂが、出力バッファ３６からＳＤＲＡＭ１２へ転送される。
【００５４】
Ｓ４９では、処理座標判定部３８において、更新ライン数ＬＮの判定が行われる。更新ライン数ＬＮ＝０のときは、更新不要であり、Ｓ４５へ戻る。一方、更新ライン数ＬＮ＝１のときは、保持されている入力ラインを更新する必要があるため、Ｓ５１へ進む。
【００５５】
Ｓ５１では、入力ブロック高さＩＹが垂直幅ＢＶを超えるか否かが判断される。垂直幅ＢＶを超えない場合（Ｓ５１：ＮＯ）には、Ｓ５４へ進む。Ｓ５４では、下の１ライン（入力ラインＩＬ３１ｂ）がＳＤＲＡＭ１２から入力バッファ３３へ転送される。そしてＳ４５へ戻り、処理が続行される。一方、垂直幅ＢＶを超える場合（Ｓ５１：ＹＥＳ）には、Ｓ５２へ進む。Ｓ５２では、演算ブロックが入力画像データＩＧの下端まで移動したか否かが判定される。演算ブロックが下端の位置にない場合（Ｓ５２：ＮＯ）（例えば入力ブロックＩＢ１１ｂの位置）には、Ｓ５８ヘ進む。Ｓ５８において、演算ブロックが入力画像データＩＧの右端まで到達したか否かが判定される。演算ブロックが右端の位置にない場合（Ｓ５８：ＮＯ）には、Ｓ５５ヘ進む。Ｓ５５では、演算ブロックが水平右方向へ進み、Ｓ４３へ戻って処理が続行される。また、演算ブロックが右端の位置にある場合（Ｓ５８：ＹＥＳ）には、Ｓ５９ヘ進む。Ｓ５９では、演算ブロックが、１段下の左端へ移動し、Ｓ４３へ戻って処理が続行される。
【００５６】
また、演算ブロックが下端の位置にある場合（Ｓ５２：ＹＥＳ）には、Ｓ５３へ進む。Ｓ５３では、入力画像データＩＧの右端まで処理したか否かが判定される。入力ブロックが右端の位置にない場合（Ｓ５３：ＮＯ）には、Ｓ５５ヘ進み、演算ブロックが水平右方向へ移動する。一方、入力ブロックが右端の位置にある場合（Ｓ５３：ＹＥＳ）には、フローが終了する。
【００５７】
リードアドレス演算部３１の動作を、図３および図４を用いて詳説する。水平進み（処理パターン１）におけるリードアドレス演算部３１の動作を説明する。バイリニア（２ラインで演算）において、処理パターン１のときは、ブロックの垂直方向幅は２ライン固定である。図３を用いて、処理パターン１でのリードアドレスＲＡの生成を説明する。入力画像水平サイズＩＨは、入力画像の水平サイズを設定するパラメータ値である。左端アドレスＩＬは、処理している位置の，左端の入力ブロックの左上アドレスを保持したアドレスである。ブロック左上アドレスＩＢは、処理している位置の，入力ブロックの左上アドレスを保持したアドレスである。処理開始アドレスＩＳは、処理を開始したい左上端アドレスを設定するパラメータ値である。
【００５８】
ＳＤＲＡＭ１２のリードアドレスＲＡの生成に関する処理を説明する。処理開始時の動作を説明する。処理開始時の演算ブロックは、入力画像データＩＧの左上端（入力ブロックＩＢ１１）に位置し、入力ラインＩＬ１１およびＩＬ２１を含む。処理開始アドレスＩＳ、左端アドレスＩＬ、およびブロック左上アドレスＩＢは、全て入力ラインＩＬ１１の左端のアドレスとなる。また、入力ラインＩＬ２１の左端アドレスは、ブロック左上アドレスＩＢに入力画像水平サイズＩＨを加えたアドレスとなる。
【００５９】
次に演算ブロックが水平方向へ移動し、入力ブロックＩＢ１２に位置する場合を説明する。入力ブロックＩＢ１２には、入力ラインＩＬ１２およびＩＬ２２が含まれる。水平方向への移動は、ブロック左上アドレスＩＢに入力ブロック幅ＩＸを加えることで行われる。これにより、ブロック左上アドレスＩＢは、入力ラインＩＬ１２の左端のアドレスとなる。また、入力ラインＩＬ２２の左端アドレスは、ブロック左上アドレスＩＢに入力画像水平サイズＩＨを加えたアドレスとなる。
【００６０】
また、演算ブロックが入力ブロックＩＢ１ｎからＩＢ２１へ移動する場合を説明する。このときの入力ラインＩＬ３１の左端のアドレス（ブロック左上アドレスＩＢ）は、下式（２）で求まる。
（左端アドレスＩＬ）＋（入力画像水平サイズＩＨ）×（更新ライン数ＬＮ）  …式（２）
ここで左端アドレスＩＬは入力ラインＩＬ１ｎの左端のアドレスである。図３では例として、更新ライン数ＬＮ＝２の場合を説明する。また、入力ラインＩＬ４１の左端のアドレスは、ブロック左上アドレスＩＢに入力画像水平サイズＩＨを加えたアドレスとなる。
【００６１】
以下、同様に繰り返されることで、リード時の水平進み（処理パターン１）が行われる。
【００６２】
第１ブロック進み（処理パターン２）および第２ブロック進み（処理パターン３）におけるリードアドレス演算部３１の動作を説明する。図４を用いて、処理パターン２，３でのリードアドレスＲＡの生成を説明する。
【００６３】
リードアドレスＲＡの生成に関する処理を説明する。処理開始時の動作を説明する。処理開始時の演算ブロック（入力ブロックＩＢ１１ａ）では、画像データの左上端（処理開始位置）に位置し、入力ラインＩＬ１１ａおよびＩＬ２１ａを含む。
【００６４】
次に、入力ブロックＩＢ１１ａ内で入力ラインＩＬ１１ａを更新する処理を説明する。更新後の入力ライン（例えば、入力ラインＩＬ３１ａ）の左端アドレスは、更新前の入力ライン（例えば、入力ラインＩＬ２１ａ）の左端アドレスに入力画像水平サイズＩＨを加えることで得られる。以後、処理座標判定部３８において更新ライン数ＬＮ＝２と判定されるか、または、入力ブロック高さＩＹが垂直幅ＢＶを超えるまで、同一の入力ブロック内での入力ラインの更新が行われる。なお、その他のブロックの移動の方法は第１ブロック進み（処理パターン２）と同様であるため、ここでは詳細な説明は省略する。
【００６５】
ライトアドレス演算部３２の動作を説明する。第１ブロック進み（処理パターン２）および第２ブロック進み（処理パターン３）におけるライトアドレス演算部３２の動作を説明する。図１１を用いて、ライトアドレスＷＡの生成を説明する。出力ブロック（例えば、出力ブロックＯＢ１１ａ）は、入力ブロック１つ分（例えば、入力ブロックＩＢ１１ａ）をリサイズしたブロックである。出力画像領域水平サイズＯＨは、出力画像領域の水平サイズを設定する，パラメータ値である。出力バッファ横サイズＯＸは、出力バッファの水平サイズで，ハード構成によって決まる値である。出力ブロック横サイズＯＲＸは、入力ブロック横サイズをリサイズしたサイズである。処理開始アドレスＯＳは、格納したい領域の左上端アドレスを設定する，パラメータ値である。端部転送サイズＨＸは、入力ブロックをリサイズしたサイズの右端分の転送サイズである。
【００６６】
ＳＤＲＡＭ１２のライトアドレスＷＡの生成に関する処理を説明する。処理開始時の動作を説明する。処理開始時の演算ブロック（出力ブロックＯＢ１１ａ）では、処理開始アドレスＩＳ、左端アドレスＩＬ、およびブロック左上アドレスＩＢは、全て出力ラインＯＬ１１の左端のアドレスとなる。また、端部出力ラインＨＯＬ１１の左端アドレスは、左端アドレスＩＬに出力バッファ横サイズＯＸを加えたアドレスとなる。出力ブロックＯＢ１１ａでは、ＳＤＲＡＭ１２のアドレスは、出力ラインＯＬ１１、端部出力ラインＨＯＬ１１、出力ラインＯＬ２１、端部出力ラインＨＯＬ２１、…、端部出力ラインＨＯＬ５１、の順に算出される。
【００６７】
ここで例として、入力バッファ横サイズ分の画素を使用した処理が１ライン分終了した場合を説明する。このとき、出力ブロックＯＢ１１ａの右隣りに位置する出力ブロックＯＢ１２ａのブロック左上アドレスＩＢは、「端部出力ラインＨＯＬ１１の左端アドレス」に、「端部転送サイズＨＸ」を加えた値となる。
【００６８】
また、出力ブロックＯＢ１１ａ内で出力ラインを書き込む処理を説明する。更新後の出力ライン（例えば、出力ラインＯＬ２１）のアドレスは、更新前の出力ライン（例えば、出力ラインＯＬ１１）の左端アドレスＩＬに出力画像領域水平サイズＯＨを加えることで得られる。なお、その他のブロックの移動の方法は、リードアドレス演算部３１の動作（図３）と同様であるため、ここでは詳細な説明は省略する。
【００６９】
本実施形態に係る画像処理の効果を説明する。処理座標判定部３８により、次の出力ラインを得るために入力バッファ３３に保持されている入力ラインを更新する際に、重複する入力ラインが存在するか否かの境界を検出することができる。これにより、処理座標判定部３８により、入力ラインの重複リード（ムダ読み）が発生しないための入力ブロックの垂直方向幅ＶＷを自動的に決定することができる。また、入力ラインの更新ごとに処理座標判定部３８は検出動作を行うことから、垂直方向幅ＶＷを動的に決定することができる。
【００７０】
そして、垂直方向幅ＶＷを区切りとして、入力ブロックの１ブロック単位を形成すれば、この入力ブロック単位の中では読み出した入力ラインのデータを完全に使い切ることができる。すなわち、入力ブロックごとに演算処理を行うとすれば、ある入力ブロックを演算処理する際に、他の入力ブロック内のラインデータは不要とすることができる。これにより、入力ラインの重複リード（ムダ読み）が発生しないため、ラインデータの転送効率を高めることができ、ＳＤＲＡＭ１２へのデータの転送要求が少なくできる。よって、他のマクロ回路のデータ転送効率が低下することを防止することや、リサイズ処理が低速化することを防止することができる。
【００７１】
尚、本発明は前記実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良、変形が可能であることは言うまでもない。リサイズ処理はバイリニア法に限られず、バイキュービック法でもよいことは言うまでもない。バイキュービック法では、リサイズ処理で必要な入力ラインの数は４ラインとなる。よって、入力バッファ３３の縦サイズは４ライン以上の入力ラインを保持できるサイズにする必要がある。そして処理座標判定部３８において、更新ライン数ＬＮ＝４の判定が行われるときに、垂直方向幅ＶＷの値が決定される。なお、その他の画像処理方法の詳細は、バイリニア法と同様であるため、ここでは詳細な説明は省略する。
【００７２】
なお、入力画像データＩＧは画像データの一例、入力ラインＩＬ１１等  ラインデータの一例、出力ラインＯＬ１１等出力ラインデータの一例、入力ブロックＩＢ１１等は演算領域の一例、右辺ＲＥは垂直方向辺の一例、下辺ＤＥは水平方向辺の一例、ＶピッチＶＰは垂直方向サンプリングピッチの一例である。
【００７３】
以上の実施形態に関し、更に以下の附記を開示する。
（付記１）
水平方向のラインデータを垂直方向に複数有し、１フレーム分の画像データから、演算領域に含まれる前記ラインデータを複数取得してリサイズ演算を行い出力ラインデータを生成し、前記演算領域を前記画像データ上で走査させることで前記画像データをリサイズ処理する画像処理方法であって、
前記演算領域を前記画像データ上の処理開始位置に位置させる第１ステップと、
演算対象の前記出力ラインデータの演算に必要な前記ラインデータを前記演算領域から取得し、前記出力ラインデータを算出する第２ステップと、
前記演算対象の前記出力ラインデータの垂直方向に隣接する前記出力ラインデータを算出するための前記水平方向のラインデータを前記演算領域から取得する場合に、前記演算対象の前記出力ラインデータを算出するための前記水平方向のラインデータと前記隣接する前記出力ラインデータを算出するための前記水平方向のラインデータとが重複するか否かを判断する第３ステップと、
を備え、
前記第３ステップにおいて重複する場合には、前記隣接する前記出力ラインデータの算出に必要な前記ラインデータを取得して前記第２ステップへ戻って処理を続行し、
前記第３ステップにおいて重複しない場合には、前記処理開始位置の前記水平方向に隣接する位置に新たな処理開始位置を設定した上で、前記第１ステップへ戻って処理を続行する
ことを特徴とする画像処理方法。
（付記２）
前記画像データは、水平方向に延びる水平方向辺と垂直方向に延びる垂直方向辺によって囲われる１フレーム分のデータであり、
新たな前記処理開始位置に配置された前記演算領域の全領域が前記画像データの前記垂直方向辺を超えて前記画像データの範囲外に位置するか否かを判断する第４ステップを備え、
前記第４ステップにおいて前記演算領域の全領域が前記画像データの範囲外に位置しない場合には、前記処理開始位置の水平方向に隣接する位置に新たな前記処理開始位置を設定した上で、前記第１ステップへ戻って処理を続行し、
前記第４ステップにおいて前記演算領域の全領域が前記画像データの範囲外に位置する場合には、前記演算領域が未移動の領域内における前記垂直方向辺に接する位置に新たな前記処理開始位置を設定した上で、前記第１ステップへ戻って処理を続行する
ことを特徴とする付記１に記載の画像処理方法。
（付記３）
新たな前記処理開始位置に配置された前記演算領域の全領域が前記画像データの前記水平方向辺を超えて前記画像データの範囲外に位置するか否かを判断する第５ステップを備え、
前記第５ステップにおいて前記演算領域の全領域が前記画像データの範囲外に位置し、かつ、前記第４ステップにおいて前記演算領域の全領域が前記画像データの範囲外に位置する場合には、前記画像データのリサイズ処理を終了する
ことを特徴とする付記２に記載の画像処理方法。
（付記４）
前記リサイズ処理では、前記リサイズ処理後の前記画像データの座標に対応する前記リサイズ処理前の前記画像データの座標である演算ポイントが、前記演算領域内で垂直方向サンプリングピッチずつ移動し、
前記演算ポイントの前記垂直方向の所定範囲内に存在する前記ラインデータを用いて前記リサイズ処理が行われ、
前記垂直方向サンプリングピッチは、垂直方向のリサイズ率の逆数であり、１ピッチは前記ラインデータのライン間のピッチである
ことを特徴とする付記１に記載の画像処理方法。
（付記５）
前記垂直方向サンプリングピッチが、１．０ピッチ以上から２．０ピッチより小さい値の範囲内である場合に、前記第１ステップないし前記第３ステップを行う
ことを特徴とする付記４に記載の画像処理方法。
（付記６）
前記垂直方向サンプリングピッチが１．０ピッチより小さい場合には、
前記第２ステップおよび前記第３ステップの繰り返し回数によって定められる前記演算領域の垂直方向幅が予め定められる所定幅となることで、前記処理開始位置の前記水平方向に隣接する位置に新たな前記処理開始位置を設定した上で、前記第１ステップへ戻って処理を続行する
ことを特徴とする付記４に記載の画像処理方法。
（付記７）
前記垂直方向サンプリングピッチが２．０ピッチ以上である場合には、
前記演算領域の垂直方向幅は、前記リサイズ処理の１回の処理に必要な前記ラインデータの数によって所定値に定められる
ことを特徴とする付記４に記載の画像処理方法。
（付記８）
水平方向のラインデータを垂直方向に複数有し、１フレーム分の画像データから、演算領域に含まれる前記ラインデータを複数取得してリサイズ演算を行い出力ラインデータを生成し、前記演算領域を前記画像データ上で走査させることで前記画像データをリサイズ処理する画像処理装置であって、
前記演算領域を前記画像データ上の処理開始位置に位置させる第１ステップを実行する第１手段と、
演算対象の前記出力ラインデータの演算に必要な前記ラインデータを前記演算領域から取得し、前記出力ラインデータを算出する第２ステップを実行する第２手段と、
前記演算対象の前記出力ラインデータの垂直方向に隣接する前記出力ラインデータを算出するための前記水平方向のラインデータを前記演算領域から取得する場合に、前記演算対象の前記出力ラインデータを算出するための前記水平方向のラインデータと前記隣接する前記出力ラインデータを算出するための前記水平方向のラインデータとが重複するか否かを判断する第３ステップを実行する第３手段と、
を備え、
前記第１ないし第３手段は、前記第３ステップにおいて重複する場合には、前記隣接する前記出力ラインデータの算出に必要な前記ラインデータを取得して前記第２ステップへ戻って処理を続行し、
前記第３ステップにおいて重複しない場合には、前記処理開始位置の前記水平方向に隣接する位置に新たな処理開始位置を設定した上で、前記第１ステップへ戻って処理を続行する
ことを特徴とする画像処理装置。
【図面の簡単な説明】
【００７４】
【図１】入力画像データの説明図
【図２】入力ラインのサンプリング方法の説明図
【図３】水平進み（処理パターン１）の説明図
【図４】第１ブロック進み（処理パターン２）の説明図
【図５】第２ブロック進み（処理パターン３）の説明図
【図６】本発明の一実施例における画像処理装置の回路図
【図７】本発明の一実施例におけるリサイズ回路の回路図
【図８】水平進み（処理パターン１）のフローチャート
【図９】第１ブロック進み（処理パターン２）のフローチャート
【図１０】第２ブロック進み（処理パターン３）のフローチャート
【図１１】ライトアドレス演算部の動作説明図
【符号の説明】
【００７５】
１１  リサイズ回路
３５  リサイズ演算処理部
３８  処理座標判定部
ＩＧ  入力画像データ
ＯＧ  出力画像
ＩＬ１１等  入力ライン
ＯＬ１１等  出力ライン
ＩＢ１１等  入力ブロック
ＯＢ１１等  出力ブロック
ＲＥ  右辺
ＤＥ  下辺
ＶＷ  垂直方向幅
ＶＰ  Ｖピッチ
【図１】
2010130384.tif 000003
【図２】
2010130384.tif 000004
【図３】
2010130384.tif 000005
【図４】
2010130384.tif 000006
【図５】
2010130384.tif 000007
【図６】
2010130384.tif 000008
【図７】
2010130384.tif 000009
【図８】
2010130384.tif 000010
【図９】
2010130384.tif 000011
【図１０】
2010130384.tif 000012
【図１１】
2010130384.tif 000013