(57)【要約】【課題】出力画像を複数のブロックに区切り、各ブロックの頂点に対応する入力画像上の座標値を記憶したルックアップテーブルを利用して、入力画像に対して画像変形された出力画像を取得する画像処理方法において、出力画像に不連続点が存在する場合にも、容易に所望の出力画像を取得できるようにする。【解決手段】ルックアップテーブルに、少なくとも一部のブロックの少なくとも一部の頂点については、入力画像上の複数の座標値を記憶しておき、それから所望の座標値を選択して補間演算に利用するようにする。具体的には、ルックアップテーブルの各アドレスは、入力画像上の座標値、別途座標値への参照アドレス、該参照アドレスへの有効・無効を示すフラグを含み、該フラグが無効を示す場合には、当該アドレスの座標値を選択し、有効を示す場合には、参照アドレスで示されるアドレスの座標値を選択するようにする。【選択図】図２
2011147072.tif 000002
【特許請求の範囲】
【請求項１】
出力画像を複数のブロックに区切り、各ブロックの頂点ごとに、該頂点に対応する入力画像上の座標値を記憶した頂点データメモリを予め用意し、該頂点データメモリを参照して、任意の出力画素に対応する入力画像上の座標値を補間演算することで、入力画像に対して所望の画像変形された出力画像を取得する画像処理方法であって、
前記頂点データメモリは、少なくとも一部のブロックの少なくとも一部の頂点について、入力画像上の複数の座標値を記憶し、該複数の座標値から一つの座標値を選択して補間演算に利用することを特徴とする画像処理方法。
【請求項２】
前記複数の座標値は、前記頂点データメモリ内のそれぞれ別のアドレスに記憶されていることを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記頂点データメモリの各アドレスは、入力画像上の一つの座標値、別の座標値への参照アドレス、該参照アドレスの無効・有効を示すフラグを含むデータを記憶していることを特徴とする請求項２に記載の画像処理方法。
【請求項４】
前記頂点データメモリの当該頂点に対応するアドレスのデータを読出し、そのフラグが参照アドレスの無効を示している場合には、当該アドレスの座標値を選択し、有効を示している場合には、その参照アドレスで示されるアドレスのデータを読出して、その座標値を選択することを特徴とする請求項３に記載の画像処理方法。
【請求項５】
前記参照アドレスで示されるアドレスのデータを読み出して、そのフラグが参照アドレスの有効を示している場合には、さらに、該読み出したデータの参照アドレスで示されるアドレスのデータを読出し、以降、そのフラグが参照アドレスの無効を示しているまで繰り返すことを特徴とする請求項４に記載の画像処理方法。
【請求項６】
前記フラグは、ブロックの左上頂点、右上頂点、左下頂点、右下頂点に対応した４つのフラグからなることを特徴とする請求項３乃至５のいずれか１項に記載の画像処理方法。
【請求項７】
取得する出力画像によっては、読み出したデータのフラグを無視し、当該データの座標値を選択することを特徴とする請求項４乃至６のいずれか１項に記載の画像処理方法。
【請求項８】
少なくとも１ブロックの４頂点に対応する入力画像上の４つの座標値を一時的に記憶するための補間演算用頂点データメモリを予め用意し、
前記頂点データメモリを参照して、順次、処理対象ブロックの４頂点に対応する入力画像上の４つの座標値を選択して前記補間演算用頂点データメモリに記憶し、該補間演算用頂点データメモリに記憶された４つの座標値を用いて、順次、当該ブロック内の各出力画像に対応する入力画像上の座標値を補間演算することを特徴とする請求項１乃至７のいずれか１項に記載の画像処理方法。
【請求項９】
前記頂点データメモリを参照して、処理対象ブロックの４頂点に対応する入力画像上の４つの座標値を選択して前記補間演算用頂点データメモリに記憶する処理と、該補間演算用頂点データメモリに記憶された４つの座標値を用いて、当該ブロック内の各出力画像に対応する入力画像上の座標値を補間演算する処理は、並列的に実行されることを特徴とする請求項８に記載の画像処理方法。
【請求項１０】
請求項１乃至９のいずれか１項に記載の画像処理方法を実施する画像処理装置。
【請求項１１】
光学系と、該光学系を通して撮像された光学像を電気信号に変換する撮像素子と、該撮像素子で変換された電気信号の入力画像を処理する請求項１０に記載の画像処理装置とを有することを特徴とする画像撮像装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮影された画像について、利用状況に応じて多種多様の画像変形処理を行うのに好適な画像処理方法及び装置、並びにそれを適用した画像撮像装置に関する。
【背景技術】
【０００２】
従来から、車載カメラなどのカメラシステムにおいて、撮影された画像について、歪補正や回転補正や見下ろし補正やその他、必要な画像変形処理を行う場合、処理の高速化のために、あらかじめ入出力画素の座標値の対応を記憶したルックアップテーブルを用いることが行われている。しかしながら、最近の撮像素子は、画素数が非常に多くなっており、それに対応してルックアップテーブルの必要記憶容量も増加の傾向にある。しかも、ルックアップテーブルは、各画像変形処理毎に用意する必要があるが、最近は多種多様の画像変形処理が要求されており、ルックアップテーブルの規模増大、コスト高は免れなかった。
【０００３】
一方、例えば特許文献１には、出力画像を複数のブロックに区切り、各ブロックの頂点画素ごとに、該頂点画素に対応する入力画像上の座標値を記憶したルックアップテーブルを用い、出力画像の注目する画素に対応する入力画像の座標値がルックアップテーブルに存在しない場合には線形補間処理により該座標値を算出することで、ルックアップテーブルの必要記憶容量を軽減し、種々の画像変形処理を、簡単な構成で安価に、高速に行えるようにした画像処理方法が記載されている。
【０００４】
例えば、撮像画像（入力画像）のある部分を拡大（デジタルズーム）して表示する場合、図１３に示すように、出力画像をＸ方向に画素数ａ毎、Ｙ方向に画素数ｂ毎の複数のブロック（図１３では、６×４ブロック）に区切り、各ブロックの頂点画素（図１３では、７×５画素）ごとに、該頂点画素に対する撮像画像上の座標値を記憶するルックアップテーブルを用意する。図１３中、１〜３５は各ブロックの頂点画素に割り当てた番号（頂点画素番号）を示している。ルックアップテーブルは、各頂点画素番号ごとに、その頂点画素に対応する撮像画像上の座標値を記憶している。
【０００５】
出力画像の注目する画素が頂点画素と一致する場合、ルックアップテーブルの当該頂点番号のアドレスから対応する撮像画像上の座標値（座標変換の座標値）を取得する。一方、出力画像の注目する画素が頂点画素と一致しない場合には、ルックアップテーブルから当該画素が含まれるブロックの４つの頂点画素（参照画素）に対応する撮像画像上の４つの座標値を取得し、該４つの座標値を基に線形補間処理により、出力画像の注目する画素に対応する撮像画像上の座標値を算出する。そして、出力画像の注目する画素の画素値として、撮像画像の上記座標値に対応する画素の画素値を出力する。ここで、撮像画像の上記座標値に対応する画素が存在しない場合には、撮像画像の該座標値の周囲の４つの画素（参照画素）の画素値を基に線形補間処理（第２の線形補間処理）により、該画素の画素値を算出する。
【０００６】
特許文献１に記載の画像処理方法によれば、図１４に示すようなデジタルズームに代表される、複雑な画像変形処理を小規模なルックアップテーブルを用いて実現できる。しかしながら、撮像画像の両側などを切り出して表示するPicture  by  Picture（Ｐ  by  Ｐ）を出力画像としたい場合には、画像の中央部に出力画像が不連続になる部分が存在するため、特許文献１に記載の画像処理方法では簡単には実現できない。また、画素面の中に子画面を表示する。Picture  in  Picture（Ｐ  in  Ｐ）を実現する場合にも、子画面と元画面の境界が不連続となり、同様に特許文献１に記載の画像処理方法では簡単には実現できない。
【０００７】
図１４はPicture  by  Pictureを模式的に表現したものである。（ａ）は撮像素子により得られる撮像画像を示している。（ｂ）は該撮像画像を使ってPicture  by  Pictureを実現した出力画像で、撮像画像の左側のＡ領域の画像と右側のＢ領域の画像とを切り出し拡大（デジタルズーム）して表示することを示している。出力画像のブロック分割数は図１３と同じとする。図１３と図１４を比較した場合、図１４では不連続点において参照する頂点データの数が増加するので、図１３よりも図１４の方がルックアップテーブルに記憶しておくべき頂点数が多い。すなわち、図１３の出力画像を得るためのルックアップテーブルに保持すべき頂点数は、７×５＝３５であるに対し、図１４の出力画像を得るためのルックアップテーブルに保持すべき頂点数は４×５＋４×５＝４０となる。このようなルックアップテーブルを用いて、線形補間により出力画素に対応する撮像画像の座標値を算出する場合、不連続点において煩雑な処理が必要であり、簡単には実現できない。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、出力画像を複数のブロックに区切り、各ブロックの頂点画素ごとに、入力画像上の座標値を記憶したルックアップテーブルを予め用意し、線形補完などにより任意の出力画素に対応する入力画像の座標値を算出することで、入力画像に対して所望の画像変形された出力画像を得るようにした画像処理方法及び装置において、出力画像に不連続点が存在する場合にも、容易に所望の出力画像を取得できるようにすることを主要な目的とする。
【０００９】
また、本発明は、このような画像処理装置を内蔵して、ＰbyＰやＰinＰの出力画像を簡単に出力できる画像撮像装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
請求項１の発明は、出力画像を複数のブロックに区切り、各ブロックの頂点ごとに、該頂点に対応する入力画像上の座標値を記憶した頂点データメモリを予め用意し、該頂点データメモリを参照して、任意の出力画素に対応する入力画像上の座標値を補間演算することで、入力画像に対して所望の画像変形された出力画像を取得する画像処理方法であって、前記頂点データメモリは、少なくとも一部のブロックの少なくとも一部の頂点について、入力画像上の複数の座標値を記憶し、該複数の座標値から一つの座標値を選択して補間演算に利用することを特徴とする。
【００１１】
請求項２の発明は、請求項１に記載の画像処理方法において、前記複数の座標値は、前記頂点データメモリ内のそれぞれ別のアドレスに記憶されていることを特徴とする。
【００１２】
請求項３の発明は、請求項２に記載の画像処理方法において、前記頂点データメモリの各アドレスは、入力画像上の一つの座標値、別の座標値への参照アドレス、該参照アドレスの無効・有効を示すフラグを含むデータを記憶していることを特徴とする。
【００１３】
請求項４の発明は、請求項３に記載の画像処理方法において、前記頂点データメモリの当該頂点に対応するアドレスのデータを読出し、そのフラグが参照アドレスの無効を示している場合には、当該アドレスの座標値を選択し、有効を示している場合には、その参照アドレスで示されるアドレスのデータを読出して、その座標値を選択することを特徴とする。
【００１４】
請求項５の発明は、請求項４に記載の画像処理方法において、前記参照アドレスで示されるアドレスのデータを読み出して、そのフラグが参照アドレスの有効を示している場合には、さらに、該読み出したデータの参照アドレスで示されるアドレスのデータを読出し、以降、そのフラグが参照アドレスの無効を示しているまで繰り返すことを特徴とする。
【００１５】
請求項６の発明は、請求項３乃至５のいずれか１項に記載の画像処理方法において、前記フラグは、ブロックの左上頂点、右上頂点、左下頂点、右下頂点に対応した４つのフラグからなることを特徴とする。
【００１６】
請求項７の発明は、請求項４乃至６のいずれか１項に記載の画像処理方法において、取得する出力画像によっては、読み出したデータのフラグを無視し、当該データの座標値を選択することを特徴とする。
【００１７】
請求項８の発明は、請求項１乃至７のいずれか１項に記載の画像処理方法において、少なくとも１ブロックの４頂点に対応する入力画像上の４つの座標値を一時的に記憶するための補間演算用頂点データメモリを予め用意し、前記頂点データメモリを参照して、順次、処理対象ブロックの４頂点に対応する入力画像上の４つの座標値を選択して前記補間演算用頂点データメモリに記憶し、該補間演算用頂点データメモリに記憶された４つの座標値を用いて、順次当該ブロック内の各出力画像に対応する入力画像上の座標値を補間演算することを特徴とする。
【００１８】
請求項９の発明は、請求項８に記載の画像処理方法において、前記頂点データメモリを参照して、処理対象ブロックの４頂点に対応する入力画像上の４つの座標値を選択して前記補間演算用頂点データメモリに記憶する処理と、該補間演算用頂点データメモリに記憶された４つの座標値を用いて、当該ブロック内の各出力画像に対応する入力画像上の座標値を補間演算する処理は、並列的に実行されることを特徴とする。
【００１９】
請求項１０の発明は、請求項１乃至９のいずれか１項に記載の画像処理方法を実施する画像処理装置を特徴とする。
【００２０】
請求項１１の発明は、光学系と、該光学系を通して撮像された光学像を電気信号に変換する撮像素子と、該撮像素子で変換された電気信号の入力画像を処理する請求項１０に記載の画像処理装置とを有する画像撮像装置を特徴とする。
【発明の効果】
【００２１】
本発明によれば、ルックアップテーブルとしての頂点データメモリに、少なくとも一部のブロックの少なくとも一部の頂点については、入力画像上の複数の座標値を記憶して、該複数の座標値から一つの座標値を選択し、補完演算に利用するようにすることで、ＰbyＰやＰinＰ等、出力画像に不連続点が存在する場合にも、容易に所望の出力画像を得ることができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の画像処理装置を適用した画像撮像装置の一実施形態の機能ブロック図である。
【図２】図１の画像変形部の詳細構成図である。
【図３】垂直同期信号、水平同期信号、ブロックスタート信号などのタイミング図である。
【図４】出力画像のブロック分割の一例を示す図である。
【図５】入力画像とＰｂｙＰ出力画像の一例を示す図である。
【図６】図５の出力画像を得るようにした図２の頂点データメモリ内のテーブル例を示す図である。
【図７】ブロックの４頂点データ生成とブロックの各座標の補間演算の処理タイミングを示す図である。
【図８】ブロックの４頂点データ生成とブロックの各座標の補間演算の別の処理タイミングを示す図である。
【図９】図２の頂点データアドレス決定部の処理フロー例を示す図である。
【図１０】図２の頂点データ読出し部の処理フロー例を示す図である。
【図１１】入力画像とＰinＰの出力画像の例を示す図である。
【図１２】図１１の出力画像得るようにした図２の頂点データメモリ内のテーブル例を示す図である。
【図１３】入力画像と拡大表示の出力画像との対応関係を示す図である。
【図１４】従来のＰｂｙＰの出力画像を表示する場合の不具合を説明する図である。
【発明を実施するための形態】
【００２３】
以下、本発明の一実施の形態について図面を参照して詳しく説明する。
【００２４】
図１は、本発明の画像処理方法を実施する画像処理装置を適用した画像撮像装置の一実施形態の機能ブロック図
示す。画像撮像装置は、他に操作部、画像表示部、各部の動作を制御する制御部などを備えているが、図１では省略してある。
【００２５】
図１において、同期信号生成部１０は、装置各部を動作させる基となる水平同期信号及び垂直同期信号の同期信号、クロック信号を生成する。これら同期信号、クロック信号は撮像素子２０及び画像変形部７０に送出される。
【００２６】
撮像素子２０は、光学系（不図）を通して撮像された光学像を電気信号（画像信号）に変換するもので、例えばＣＣＤやＣＭＯＳセンサ等で構成される。該撮像素子２０にはベイヤー配列の色フィルタが設けられており、ベイヤー配列のＲＧＢ画像信号が、同期信号生成部１０から与えられる水平／垂直同期信号、クロック信号に基づいて順次出力される。
【００２７】
Ａ／Ｄ変換部３０は、撮像素子２０から出力されたアナログ信号としてのベイヤー配列のＲＧＢ画像信号をデジタル信号としての画像データに変換してベイヤー補間部４０に送出する。１画素の画像データ（画素データ）は、例えばＲＧＢそれぞれ８ビットで構成される。一般にＡ／Ｄ変換部３０の前段には、撮像素子２０から出力された画像信号を所定の値に増幅するＡＧＣ回路が設けられるが、ここでは省略する。
【００２８】
ベイヤー補間部４０は、デジタル信号に変換されたベイヤー配列のＲＧＢ画像データを入力して、ＲＧＢ各色独立に、全座標位置の画像データを線形補間によって生成し、画像バッファ部５０に送出する。
【００２９】
画像バッファ部５０は、ベイヤー補間部４０から送られてきた画像データを一時的に保持する。該画像バッファ部５０は、ＤＲＡＭなどのフレームバッファメモリからなり、１画面（フレーム）あるいはそれ以上の画像データ（オリジナルの撮像画像）が格納される。
【００３０】
画像読出し部６０は、水平／垂直同期信号、クロック信号に同期して画像バッファ部（フレームバッファメモリ）５０をラスタースキャンし、該画像バッファ部５０から画像データ（画素データ）を順次読み出す。詳しくは、該画像読出し部６０は、後述の画像変形部８０から、水平／垂直同期信号、クロック信号と同期して、座標変換元のＸ座標値およびＹ座標値を順次受け取り、該Ｘ座標値およびＹ座標値に基づいて画像バッファ部５０のアドレス（座標変換元アドレス）を順次算出し、水平／垂直同期信号、クロック信号のカウント値で示されるアドレス（座標変換先アドレス）として、画像バッファ５０内の上記算出されたアドレスの画像データ（画素データ）を読み出す。この結果、画像読出し部６０からは、画像バッファ５０に格納されたオリジナルの撮像画像について、所定の画像変形の施された画像が出力される。
【００３１】
Ｄ／Ａ変換部７０は、画像読出し部６０から出力されるデジタル信号としての画像データを、使用する表示装置の表示形式に適したアナログ信号の映像信号に変換する。例えば、ＮＴＳＣ方式の映像信号に変換する。Ｄ／Ａ変換部７０は外部の表示装置（不図）とケーブルなどで接続されており、Ｄ／Ａ変換部７０からの映像信号が表示装置に表示される。
【００３２】
画像変形部８０は、同期信号生成部１０から送出される水平／垂直同期信号、クロック信号を入力し、画像読出し部６０が画像バッファ５０から画像変形された画像データを読み出す際のアドレス（座標変換元アドレス）の基となる座標変換元のＸ座標値及びＹ座標値を算出して、水平／垂直同期信号およびクロック信号と同期させて順次出力する。本発明は、該画像変形部８０に係る。なお、該画像変形部８０については後で詳しく説明する。
【００３３】
ここで、画像バッファ部５０が少なくとも２画面分の画像データを格納することができる場合、該画像バッファ部５０の書込み読出し動作をダブルバッファ方式とすることが可能である。ダブルバッファ方式とは、一方のメモリ領域に現フレームの画像データを書込み、これと並行してもう一方のメモリ領域から前フレームの画像データを読み出し、これをフレーム単位で交互に繰り返す方式である。ダブルバッファ方式を採用することにより、処理の高速化が可能となる。
【００３４】
以下では、本発明の主要構成である画像変形部８０について詳しく説明する。
【００３５】
図２は画像変形部８０の詳細構成例を示すブロック図である。ここで、画像変形部８０は頂点データアドレス決定部８０１、頂点データ読出し部８０２、補間演算用頂点データメモリとしての双線形補間用頂点データ記憶部８０３、双線形補間演算部８０４及びルックアップテーブルとしての頂点データメモリ８０５からなる。
【００３６】
画像変形部８０は、ＶＳＹＮＣ＿ＩＮ，ＨＳＹＮＣ＿ＩＮ，クロックを入力し、ＶＳＹＮＣ＿ＯＵＴ，ＨＳＹＮＣ＿ＯＵＴ，クロック，Ｘ＿ＯＵＴ，Ｙ＿ＯＵＴを出力する。ここで、ＶＳＹＮＣ＿ＩＮは、本撮像装置で用いる垂直方向のタイミングを計るための信号（垂直同期信号）、ＨＳＹＮＣ＿ＩＮは、同水平方向のタイミングを計るための信号（水平同期信号）であり、クロックと一緒に図１の同期信号生成部１０から与えられる。ＶＳＹＮＣ＿ＯＵＴ及びＨＳＹＮＣ＿ＯＵＴは、ＶＳＹＮＣ＿ＩＮ及びＨＳＹＮＣ＿ＩＮを所定量遅延した信号である。Ｘ＿ＯＵＴ及びＹ＿ＯＵＴは、図１の画像読出し部６０が画像バッファ部５０から画像変形された画像データを読み出す際のアドレスを算出するためのＸ座標値及びＹ座標値で、Ｘ＿ＯＵＴが座標変換元Ｘ座標、Ｙ＿ＯＵＴが座標変換元Ｙ座標を表わす。Ｘ＿ＯＵＴおよびＹ＿ＯＵＴはＶＳＹＮＣ＿ＯＵＴ及びＨＳＹＮＣ＿ＯＵＴに同期して出力される。
【００３７】
図３（ａ）にＶＳＹＮＣ＿ＩＮ、ＹＳＹＮＣ＿ＩＮのタイミングチャートを示す。図３はインターレース方式の例であるが、プログレッシブ方式でも同様である。ＹＳＹＮＣ＿ＩＮの信号のエッジアップ／エッジダウンと、ＨＳＹＮＣ＿ＩＮの立上がり及びクロック数をカウントすることにより、出力画像上の座標を一意に特定することができる。そのため、ＶＳＹＮＣ＿ＩＮ，ＹＳＹＮＣ＿ＩＮと、ＶＳＹＮＣ＿ＯＵＴ、ＹＳＹＮＣ＿ＯＵＴ及びＸ＿ＯＵＴ，Ｙ＿ＯＵＴとの遅延量を予め計算しておくことにより、Ｘ＿ＯＵＴ及びＹ＿ＯＵＴから、出力画像上の座標に対応する画像バッファ上の入力画像（撮像画像）上の座標（変換元座標）を特定することができる。
【００３８】
ここでは、画像バッファ部５０に蓄えられる入力画像のサイズを６４０×４８０とし、出力画像は、水平走査方向（Ｘ方向）にａ＝１６０、垂直走査方向（Ｙ方向）にｂ＝１２０サイズの複数ブロックに分割するとする。図４に出力画像のブロックと頂点番号の関係を示す。図４全体が６４０×４８０の出力画像を示し、ここでは１６個のブロックに分割される。各ブロックの頂点には、頂点番号１〜２５が割り振られている。
【００３９】
図２において、頂点データメモリ８０５には、出力画像の各ブロックの各頂点に対応する入力画像のＸ座標値，Ｙ座標値が、Ｐicture  by  ＰictureやＰicture  in  Ｐictureなどの場合の不連続点についても別アドレスに全て記憶されている。
【００４０】
ここでは、一実施例として、図５（ａ）の入力画像について、図５（ｂ）のような４画面からなるＰicture  by  Ｐictureの出力画像を得るとした場合の、頂点データメモリ８０５に格納されているデータの例を図６に示す。図６において、アドレス１〜２５は、図４の頂点番号１〜２５に対応する。アドレス２６〜３６は、重複する頂点について不連続点のデータを格納するのに割り当てられたアドレスを示す。Ｘ座標、Ｙ座標は当該頂点に対応する入力画像のＸ座標値、Ｙ座標値で、Ｘｉ，Ｙｊは図５（ａ）の入力画像の対応する頂点に記した番号ｉに対応している。ここでは、画像サイズは６４０×４８０としているので、１≦Ｘ座標値≦６４０、１≦Ｙ座標値≦４８０である。なお、頂点データメモリの容量に余裕がある場合は、Ｘ座標値、Ｙ座標値は整数でなくてもよい。左上フラグ、右上フラグ、左下フラグ、右下フラグ、次アドレスについては後述する。本発明の一つの特徴は頂点データメモリ８０５のデータ構成にある。
【００４１】
頂点データアドレス決定部８０１は、同期信号生成部１０から送られるＶＳＹＮＣ＿ＩＮとＨＳＹＮＣ＿ＩＮ、クロック、頂点データ読み取り部８０２から送られる切替アドレスを入力として、出力画像の現在着目しているブロックの４頂点の各データを呼び出すための頂点データメモリ８０５のアドレスを決定し、該アドレスを頂点位置情報と共に頂点データ読み出し部８０２に送る。例えば、現在着目しているブロックがブロック１の場合、頂点番号１，２，６，７に対応してアドレス１，２，６，７を決定する。頂点位置情報はブロックの左上、右上、左下、右下の順に１，２，３，４とする。
【００４２】
頂点データ読出し部８０２は、頂点データアドレス決定部８０１から送られたアドレスに基づいて、頂点データ記憶部８０５の当該アドレスのデータを読み出す。そして、読み出したデータのうち、Ｘ座標値とＹ座標値（頂点データ）を頂点位置情報と共に双線形補間用頂点データ記憶部８０３に送る。また、読み出したデータのうち、左上フラグ、右上フラグ、左下フラグ、右下フラグについて、頂点位置情報の番号に対応するフラグが０か１か調べ、当該フラグが０の場合には切替アドレスを０とし、１の場合には、切替アドレスを次アドレス（参照アドレス）のアドレス値として、頂点データアドレス決定部８０１に送る。
【００４３】
頂点データアドレス決定部８０１では、切替アドレスが０の場合には、当該頂点について前回と同じアドレスを、また、切替アドレスが次アドレスのアドレス値の場合には該アドレス値を、頂点データ読み出し部８０２に送る。頂点データ読み出し部８０２では、頂点アドレス決定部８０１から送られたアドレスに基づいて、再び頂点データ記憶部８０５の当該アドレスのデータを読み出して、そのＸ座標値とＹ座標値を双線形補間用頂点データ記憶部８０３に送り、また、当該頂点に対応するフラグが０か1か調べる。
【００４４】
頂点データアドレス決定部８０１と頂点データ読出し部８０２の間での上記処理は、現在着目しているブロックの４頂点について、それぞれ４回繰り返される。この結果、図５（ｂ）の例で、例えば、現在着目しているブロックがブロック３の場合、その頂点番号３，８については、図６より最初は頂点データメモリ８０５のアドレス３，８のデータが読み出されて、そのＸ座標値とＹ座標値が双線形補間用頂点データ記憶部８０３に送られるが、次には、頂点データメモリ８０３のアドレス２６，２７のデータが読み出されて、そのＸ座標値とＹ座標値が双線形補間用頂点データ記憶部８０３に送られ、最終的に該Ｘ座標値とＹ座標値が頂点番号３，８の頂点データとして確定する。これにより、不連続点が解消される。
【００４５】
なお、現在着目しているブロックの４頂点について、それぞれ４回、頂点データアドレス決定部８０１と頂点データ読出し部８０２の間で処理を繰り返す理由は、図５（ｂ）の例において、現在着目しているブロックがブロック１１で、頂点番号１３のケースを考慮したためである。すなわち、このケースでは、図６より、４回目で初めて頂点番号１３の頂点データが確定する。図６のテーブルの具体的処理例については後で詳述する。
【００４６】
双線形補間用頂点データ記憶部８０３は、出力画像の現在着目しているブロックの４頂点の入力画像のＸ座標値とＹ座標値を一時的に記憶する。具体的には、双線形補間用頂点データ記憶部８０３は、一つのブロックの４頂点に対応した４つのレジスタからなり、頂点データ読出し部８０２から送られてくるＸ座標値とＹ座標値を、同じく頂点データ読出し部８０２から送られてくる頂点位置情報に従って、当該頂点に対応するレジスタに上書きする。該双線形補間用頂点データ記憶部８０３の４つのレジスタの内容は、着目するブロックが次のブロックに移行すると、それに対応して入れ替わる。
【００４７】
双線形補間演算部８０４は、ＶＳＹＮＣ＿ＩＮ、ＨＳＹＮＣ＿ＩＮ、クロックを入力として、双線形補間用頂点データ記憶部８０３の４つの頂点データを用いて双線形補間演算により、出力画像の現在着目しているブロック内の現走査ラインの各座標に対する入力画像上のＸ座標値とＹ座標値を順次求めて、ＶＳＹＮＣ＿ＯＵＴ、ＹＳＮＣ＿ＯＵＴに同期してＸ＿ＯＵＴ，Ｙ＿ＯＵＴとして出力する。なお、ＶＳＹＮＣ＿ＩＮ、ＨＳＹＮＣ＿ＩＮ、クロックは、一定時間遅らせて双線形補間演算部８０４に入力するようにする。
【００４８】
図３（ａ）に示したように、ＶＳＹＮＣ＿ＩＮのエッジアップ／エッジダウンと、ＨＳＹＮＣ＿ＩＮの立上がり及びクロック数をカウントすることにより、出力画像上の座標が一意に特定される。すなわち、出力画像の現在着目しているブロック内の現走査ラインの各座標が得られる。一方、双線形補間用頂点データ記憶部８０３は、出力画像の現在着目しているブロックの４頂点の入力画像上のＸ座標値とＹ座標値（頂点データ）を記憶している。双線形補間演算部８０４では、出力画像の現在着目しているブロック内の現走査ラインの各座標について、双線形補間用頂点データ記憶部８０３内の４つの頂点データを用いて双線形補間演算により、入力画像上の対応するＸ座標値とＹ座標値を順次求めていく。双線形補間演算のやり方は、特許文献１などに記載のやり方と基本的に同じであるので、詳しい説明は省略する。
【００４９】
図７に、頂点データアドレス決定部８０１と頂点データ読出し部８０２での４頂点データ生成処理と、双線形補間演算部８０４での双線形補間処理の時間関係を示す。図７において、αは１ブロックのラスタースキャン期間、αは４頂点データ生成処理期間、ｂは双線形補間処理期間を表わしている。なお、図７では、現走査ラインはブロック１〜４上にあるとしている。
【００５０】
まず、頂点データアドリス決定部８０１と頂点データ読出し部８０２は、各ブロック１，２，３，４の初めにおいて、ａ１，ａ２，ａ３，ａ４の期間で、当該ブロックの４頂点データを生成し、双線形補間用頂点データ記憶部８０３の４つのレジスタに設定する。次に、双線形補間演算部８０４は、ｂ１，ｂ２，ｂ３，ｂ４の期間で、双線形補間用頂点データ記憶部８０３に設定された４頂点データを用いて、当該ブロック内の現走査ラインの各座標（１６０座標点）について、入力画像上の対応するＸ座標値とＹ座標値を補間演算していく。ブロック１〜４上の各走査ライン毎、これらの処理が繰り返されることになる。ブロック５〜８，９〜１２，１３〜１６についても同様である。
【００５１】
ここで、頂点データアドレス決定部８０１と頂点データ読出し部８０２をＦＰＧＡなどで構成して、４頂点データ生成処理を高速に実施することで、ｂの期間に対して、ａの期間を実質的に無視する（ゼロに近づける）ことが可能である。
【００５２】
なお、頂点データ読出し部８０２内に、双線形補間用頂点データ記憶部８０３のレジスタと同様のワークレジスタを設けて、頂点データメモリ８０５から読み出されたＸ／Ｙ座標値を該ワークレジスタに一時的に設定し、必要に応じて上書きし、最終的に確定したＸ／Ｙ座標値を双線形補間用頂点データ記憶部８０３に設定するようにしてもよい。これにより、４頂点データ生成処理と双線形補間処理とを並列に実施することが可能になり、頂点データアドレス決定部８０１と頂点データ読出し部８０２の負担（高速処理）を軽減することができる。
【００５３】
図８に、この場合の頂点データアドレス決定部８０１と頂点データ読出し部８０２での４頂点データ生成処理と、双線形補間演算部８０４での双線形補間処理の時間関係を示す。図８（ａ）は頂点データアドレス決定部８０１と頂点データ読出し部８０２の処理期間、図８（ｂ）は双線形補間演算部８０４の処理期間を示す。ここでも、現走査ラインはブロック１〜４上にあるとし、αは１ブロックのラスタースキャン期間を表わしている。頂点データアドレス決定部８０１と頂点データ読出し部８０２では、α１，α２，・・・，α４の期間で、順次、ブロック１，ブロック２，…，ブロック４の４頂点の頂点データを生成し、最終的に双線形補間用頂点データ記憶部８０３の４つのレジスタに設定する。一方、双線形補間演算部８０４の処理は、頂点データアドレス決定部８０１と頂点データ読出し部８０２の処理からα期間遅れて開始し、同様に、α１，α２，α３，α４の期間で、並列的に順次、その時の双線形補間用頂点データ記憶部８０３の４頂点データを用いて、ブロック１，ブロック２，…，ブロック４内の現走査ラインの各座標（１６０座標点）について、入力画像上の対応するＸ座標値とＹ座標値を補間演算していく。各走査ライン毎、これらの処理が繰り返されることになる。
【００５４】
次に、図４、図５及び図６を参照して、頂点データアドレス決定部８０１と頂点データ読出し部８０２の動作を更に詳しく説明する。
【００５５】
頂点データアドレス決定部８０１では、ＶＳＹＮＣ＿ＩＮ、ＨＳＹＮＣ＿ＩＮから、ＢＬＯＣＫ＿ＳＴＡＲＴ信号を生成する（図３（ｂ）参照）。ＢＬＯＣＫ＿ＳＴＡＲＴ信号では、双線形補間用頂点データ記憶部８０３に設定される頂点データを書き換えるタイミングを決定する。このＢＬＯＣＫ＿ＳＴＡＲＴ信号は、ＨＳＹＮＣ＿ＩＮの立ち上がりと同時に立ち上がり、１クロックハイレベル、１５９クロックローレベル（Ｘ方向  ａ＝１６０から１引いたもの）を繰り返す信号である。
【００５６】
図９に、頂点データアドレス決定部８０１の処理フローチャートを示す。  
【００５７】
頂点データアドレス決定部８０１では、まず、ＢＬＯＣＫ＿ＳＴＡＲＴ信号の立ち上がりを検出して、ブロック番号を算出する（ステップ１００１）。ブロック番号の算出は、ＨＳＹＮＣ＿ＩＮの立ち上がりをカウントすることで得られるＹ座標と、Ｙ座標ごとに初期化されるＢＬＯＣＫ＿ＳＴＡＲＴ信号の立ち上がりのカウント値を利用することで可能である。図４より、例えば、ＨＳＹＮＣ＿ＩＮの立ち上がりからＹ座標＝１ならば、得られるブロック番号は１となる。また、ＨＣＹＮＣ＿ＩＮから得られるＹ座標＝２００のとき、ＢＬＯＣＫ＿ＳＴＡＲＴ信号のカウント値が１ならば、ブロック番号は５となる。
【００５８】
次に、ブロック番号に対応する４頂点の頂点番号（Ｖ１，Ｖ２，Ｖ３，Ｖ４）を取得する（ステップ１００２）。図４より、ブロック番号が得られれば、対応する４頂点の頂点番号は一義的に求まる。例えば、ブロック番号が１のときは、ブロックの左上、右上、左下、右下の頂点の順に、頂点番号はＶ１＝１，Ｖ２＝２，Ｖ３＝６，Ｖ４＝７となる。
【００５９】
次に、ｍ＝１，ｎ＝１と初期設定する（ステップ１００３）。ここで、ｍは１つの頂点番号に対する頂点データ読出し部８０２へのアドレス、頂点位置情報の送信回数を表わし、ｎは頂点番号の添え字（すなわち、頂点位置情報）を表わす。
【００６０】
次に、アドレスＡ＝Ｖｎとし（ステップ１００４）、頂点データ読出し部８０２からの切替アドレスを待ち（ステップ１００５）、該切替アドレスが０であるか判定する（ステップ１００６）。そして、切替アドレスが０の場合には、アドレスＡとしてＶｎ、頂点位置情報としてｎを頂点データ読出し部８０２に送信する（ステップ１００８）。一方、切替アドレスが０でない場合は、頂点データ読出し部８０２から送られたアドレス値をアドレスＡとして（ステップ１００７）、該アドレスＡ、頂点位置情報ｎを頂点データ読出し部８０２に送信する（ステップ１００８）。なお、ｎ＝１の場合（最初の送信の場合）には、ステップ１００５，１００６をスキップし、すなわち、頂点データ読出し部８０２からの切替アドレスを待たずに、Ａ＝Ｖｎ，ｎを頂点データ読出し部８０２に送信するものとする。
【００６１】
次に、ｍ＋１→ｍとして（ステップ１００９）、ｍ＞４であるか判定する（ステップ１０１０）。そして、ｍ≦４の場合には、ステップ１００５に戻り、ステップ１００５〜ステップ１００８の処理を繰り返す。
【００６２】
一方、ｍ＞４の場合には、すわなち、１つの頂点に対して、アドレスＡ、頂点位置情報ｎの送信が４回繰り返された場合、ｍ＝１，ｎ＋１←ｎとする（ステップ１０１１）。そして、ｎ＞４であるか判定し（ステップ１０１２）、ｎ≦４ならば、ステップ１００４に戻る。すなわち、次の頂点について、上記と同様の処理を繰り返す。また、ｎ＞４のは場合、処理を終了とする。すなわち、データアドレス決定部８０１での１つのブロックの４頂点に対する処理が終了となる。
【００６３】
図１０に、頂点データ読出し部８０２の処理フローチャートを示す。なお、これは図７の場合に対応する。
【００６４】
頂点データ読出し部８０２では、頂点データアドレス決定部８０１からアドレスＡ、頂点位置情報ｎを受信すると（ステップ２００１）、頂点データ記憶部８０５から当該アドレスＡのデータ（ＸＹ座標値、４つのフラグ、次アドレス）を読み出す（ステップ２００２）。そして、読み出したデータの中のＸ座標値とＹ座標値、及び、受信した頂点位置情報ｎを双線形補間用頂点データ記憶部８０３に送信する（ステップ２００３）。
【００６５】
次に、読み出したデータ中の左上フラグ、右上フラグ、左下フラグ、右下フラグについて、頂点位置情報ｎに対応するフラグが０か１か調べる（ステップ２００４）。例えば、ｎ＝１の場合、左上フラグを調べる。そして、当該フラグが０の場合には切替アドレスを０とし（ステップ２００５）、１の場合には、読み出したデータ中の次アドレスのアドレス値を切替アドレスとする（ステップ２００６）。そして、該切替アドレスを頂点アドレス決定部８０１に送信する（ステップ２００７）。
【００６６】
以下、頂点データ読出し部８０２では、頂点データアドレス決定部８０１からアドレスＡ、頂点位置情報ｎを受信する都度（ステップ２００１）、ステップ２００２〜ステップ２００７の処理を繰り返す。その結果、双線形補間用頂点データ記憶部８０３には、最終的に、出力画像の現在着目しているブロックの４頂点の入力画像のＸ座標値とＹ座標値（頂点データ）が記憶されることになる。
【００６７】
なお、同じ頂点位置情報ｎについて、頂点データアドレス決定部８０１から４回目のアドレス値を受信した場合には、ステップ２００４〜２００７の処理を行わず、頂点データアドレス決定部８０１からの次の受信を待つことになる。
【００６８】
図１０は図７の場合を想定したものであるが、図８の場合には、ステップ２００３の双曲線補間頂点データ記憶部は頂点データ読出し部８０２に内蔵のワークレジスタとし、かわりにステップ２００７以降に、該ワークレジスタに最終的に確定された４頂点のＸ座標値，Ｙ座標値を双曲線補間用頂点データ記憶部８０３に転送するステップが追加されることとなる。
【００６９】
以下に、図４、図５及び図６を参照して、二、三の具体的処理例について説明する。ここでも、頂点データ読出し部８０２は図１０の処理を実施するものとするが、上述のように、処理途中の４頂点データをワークレジスタに一時記憶し、最終的に、確定した４頂点データを双線形補間用頂点データ記憶部８０３に転送するようにすることも、容易に類推できる。
【００７０】
＜処理例１＞
ここでは、図５（ｂ）の出力画像において現在着目しているブロックがブロック１の場合について説明する。図４より、ブロック１の頂点番号は、Ｖ１＝１，Ｖ２＝２，Ｖ３＝６，Ｖ４＝７である。
（１）  頂点番号１の処理
頂点データアドレス決定部８０１は、アドレスＡ＝Ｖ１＝１、頂点位置情報ｎ＝１を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５（図６）からアドレス１のデータを読出し、そのＸ１及びＹ１を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝１に対応する左上フラグを調べ、該左上フラグ＝０のため、切替アドレス＝０を頂点データアドレス決定部８０１に送る。
【００７１】
これを受けて頂点データアドレス決定部８０１は、再度、アドレスＡ＝Ｖ１＝１、頂点位置情報ｎ＝１を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、再度、頂点データメモリ８０５のアドレス１のデータを読み出す。
【００７２】
以後の処理は省略するが、結局、頂点データアドレス決定部８０１と頂点データ読出し部８０２では、同じ処理を４回繰り返し、ブロック１の頂点番号１に対応する頂点データは，Ｘ，Ｙ１に確定する。
【００７３】
（２）  頂点番号２の処理
頂点データアドレス決定部８０１は、アドレスＡ＝Ｖ２＝２、頂点位置情報ｎ＝２を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５からアドレス２のデータを読出し、そのＸ２及びＹ２を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝２に対応する右上フラグを調べ、該右上フラグ＝０のため、切替アドレス＝０を頂点データアドレス決定部８０１に送る。
【００７４】
これを受けて頂点データアドレス決定部８０１は、再度、アドレスＡ＝Ｖ２＝２、頂点位置情報ｎ＝２を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、再度、頂点データメモリ８０５のアドレス２のデータを読み出す。
【００７５】
ここでも、以後の処理は省略するが、結局、頂点データアドレス決定部８０１と頂点データ読出し部８０２では、同じ処理を４回繰り返し、ブロック１の頂点番号２に対応する頂点データはＸ２，Ｙ２に確定する。
【００７６】
（３）  頂点番号６の処理
頂点データアドレス決定部８０１は、アドレスＡ＝Ｖ３＝６、頂点位置情報ｎ＝３を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５からアドレス６のデータを読出す。この場合も、頂点位置情報ｎ＝３に対応する左下フラグが０のため、結局、頂点データアドレス決定部８０１と頂点データ読出し部８０２では、同じ処理を４回繰り返し、ブロック１の頂点番号６に対応する頂点データはＸ４，Ｙ４に確定する。
【００７７】
（４）  頂点番号７の処理
頂点データアドレス決定部８０１は、アドレスＡ＝Ｖ３＝７、頂点位置情報ｎ＝４を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５からアドレス７のデータを読出す。この場合も、頂点位置情報ｎ＝４に対応する右下フラグが０のため、結局、頂点データアドレス決定部８０１と頂点データ読出し部８０２では、同じ処理を４回繰り返し、ブロック１の頂点番号７に対応する頂点データはＸ５，Ｙ５に確定する。
【００７８】
＜処理例２＞
こごては、図５（ｂ）の出力画像において現在着目しているブロックがブロック３の場合について説明する。図４より、ブロック３の頂点番号は、Ｖ１＝３，Ｖ２＝４，Ｖ３＝８，Ｖ４＝９である。
（１）  頂点番号３の処理
頂点データアドレス決定部８０１は、アドレスＡ＝Ｖ１＝３、頂点位置情報ｎ＝１を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５からアドレス３のデータを読出し、そのＸ３及びＹ３を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝１に対応する左上フラグを調べる。ここで、左上フラグ＝１であるため、頂点データ読出し部８０２は、次アドレスのアドレス値＝２６を切替アドレスとして頂点データアドレス決定部８０１に送る。
【００７９】
これを受けて、頂点データアドレス決定部８０１は、２回目は、アドレスＡ＝２６、頂点位置情報ｎ＝１を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５のアドレス２６のデータを読出し、そのＸ１０及びＹ１０を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝１に対応する左上フラグを調べ、ここでは左上フラグ＝０のため、切替アドレス＝０を頂点データアドレス決定部８０１に送る。
【００８０】
これを受けて、頂点データアドレス決定部８０１は、３回目は、前回と同じアドレスＡ＝２６、頂点位置情報ｎ＝１を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、再度、頂点データメモリ８０５のアドレス２６のデータを読出し、２回目と同じ処理を実行する。
【００８１】
頂点データアドレス決定部８０１は、最後の４回目も、前回と同じアドレスＡ＝２６、頂点位置情報ｎ＝１を頂点データ読出し８０２に送る。頂点データ読出し部８０２は、再度、頂点データメモリ８０５のアドレス２６のデータを読出し、３回目と同じ処理を実行する。
【００８２】
結局、頂点データアドレス決定部８０１と頂点データ読出し部８０２で４回処理を繰り返す過程で、ブロック３の頂点番号３に対応する頂点データは、最初のＸ３，Ｙ３からＸ１０，Ｙ１０に変わり、最終的にＸ１０，Ｙ１０に確定する。これにより、図５の不連続点が解消される。
【００８３】
（２）  頂点番号４の処理
頂点データアドレス決定部８０１は、アドレスＡ＝Ｖ２＝４、頂点位置情報ｎ＝２を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５からアドレス４のデータを読出す。以後の処理は省略するが、頂点位置情報ｎ＝２に対応する右上フラグは０のため、結局、頂点データアドレス決定部８０１と頂点データ読出し部８０２では、４回同じ処理を繰り返し、ブロック３の頂点番号４に対応する頂点データはＸ１１，Ｙ１１に確定する。
【００８４】
（３）  頂点番号８の処理
頂点データアドレス決定部８０１は、アドレスＡ＝Ｖ３＝８、頂点位置情報ｎ＝３を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は頂点データメモリ８０５からアドレス８のデータを読出し、そのＸ６及びＹ６を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝３に対応する左下フラグを調べる。ここで、左下フラグ＝１であるため、頂点データ読出し部８０２は、次アドレスのアドレス値＝２７を切替アドレスとして頂点データアドレス決定部８０１に送る。
【００８５】
これを受けて、頂点データアドレス決定部８０１は、２回目は、アドレスＡ＝２７、頂点位置情報ｎ＝３を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５のアドレス２７のデータを読出し、そのＸ１３及びＹ１３を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝３に対応する左下フラグを調べ、ここでは左下フラグ＝０のため、切替アドレス＝０を頂点データアドレス決定部８０１に送る。
【００８６】
これを受けて、頂点データアドレス決定部８０１は、３回目は、前回と同じアドレスＡ＝２７、頂点位置情報ｎ＝３を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、再度、頂点データメモリ８０５のアドレス２７のデータを読出し、２回目と同じ処理を実行する。
【００８７】
頂点データアドレス決定部８０１は、最後の４回目も、前回と同じアドレスＡ＝２７、頂点位置情報ｎ＝３を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、再度、頂点データメモリ８０５のアドレス２７のデータを読出し、３回目と同じ処理を実行する。
【００８８】
結局、頂点データアドレス決定部８０１と頂点データ読出し部８０２で４回処理を繰り返す過程で、ブロック３の頂点番号８に対応する頂点データは、最初のＸ６，Ｙ６からＸ１３，Ｙ１３に変わり、最終的にＸ１３，Ｙ１３に確定する。この場合も、図５の不連続点が解消される。
【００８９】
（４）  頂点番号９の処理
頂点データアドレス決定部８０１は、アドレスＡ＝Ｖ４＝９、頂点位置情報ｎ＝４を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５からアドレス９のデータを読出す。以後の処理は省略するが、頂点位置情報ｎ＝４に対応する右下フラグは０のため、結局、頂点データアドレス決定部８０１と頂点データ読出し部８０２では、４回同じ処理を繰り返し、ブロック３の頂点番号９に対応する頂点データはＸ１４，Ｙ１４に確定する。
【００９０】
＜処理例３＞
ここでは、図５（ｂ）の出力画像において現在着目しているブロックがブロック１１の場合について説明する。図４より、ブロック１１の頂点番号は、Ｖ１＝１３，Ｖ２＝１４，Ｖ３＝１８，Ｖ４＝１９である。
（１）  頂点番号１３の処理
頂点データアドレス決定部８０１は、アドレスＡ＝Ｖ１＝１３、頂点位置情報ｎ＝１を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５からアドレス１３のデータを読出し、そのＸ９及びＹ９を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝１に対応する左上フラグを調べる。ここで、左上フラグ＝１であるため、頂点データ読出し部８０２は、次アドレスのアドレス値＝２８を切替アドレスとして頂点データアドレス決定部８０１に送る。
【００９１】
これを受けて、頂点データアドレス決定部８０１は、２回目は、アドレスＡ＝２８、頂点位置情報ｎ＝１を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５のアドレス２８のデータを読出し、そのＸ１６及びＹ１６を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝１に対応する左上フラグを調べ、ここでも、左上フラグ＝１のため、次アドレスのアドレス値＝３１を切替アドレスとして頂点データアドレス決定部８０１に送る。
【００９２】
これを受けて、頂点データアドレス決定部８０１は、３回目は、アドレスＡ＝３１、頂点位置情報ｎ＝１を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５のアドレス３１のデータを読出し、そのＸ２１及びＹ２１を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝１に対応する左上フラグを調べ、ここでも左上フラグ＝１であるため、次アドレスのアドレス値＝３２を切替アドレスとして頂点データアドレス決定部８０１に送る。
【００９３】
これを受けて、頂点データアドレス決定部８０１は、４回目は、アドレスＡ＝３２、頂点位置情報ｎ＝１を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５のアドレス３２のデータを読出し、そのＸ２８及びＹ２８を双線形補間用頂点データ記憶部８０３に送る。ここで、ｎ＝１の処理は終了となる。
【００９４】
結局、頂点データアドレス決定部８０１と頂点データ読出し部８０２で４回処理を繰り返す過程で、ブロック１１の頂点番号１３に対応する頂点データは、Ｘ９及びＹ９→Ｘ１６及びＹ１６→Ｘ２１及びＹ２１→Ｘ２８とＹ２８と遷移し、最終的にＸ２８及びＹ２８に確定する。これにより、図５の不連続点が解消される。
【００９５】
（２）  頂点番号１４の処理
頂点データアドレス決定部８０１は、アドレスＡ＝Ｖ２＝１４、頂点位置情報ｎ＝２を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５からアドレス１４のデータを読出し、そのＸ１７及びＹ１７を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝２に対応する右上フラグを調べ、ここでは右上フラグ＝１であるため、次アドレスのアドレス値＝３３を切替アドレスとして頂点データアドレス決定部８０１に送る。
【００９６】
これを受けて、頂点データアドレス決定部８０１は、２回目は、アドレスＡ＝３３、頂点位置情報ｎ＝２を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５のアドレス３３のデータを読出し、そのＸ２９及びＹ２９を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝２に対応する右上フラグを調べ、ここでは右上フラグ＝０のため、切替アドレス＝０を頂点データアドレス決定部８０１に送る。
【００９７】
これを受けて、頂点データアドレス決定部８０１は、３回目は、前回と同じアドレスＡ＝３３、頂点位置情報ｎ＝２を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、再度、頂点データメモリ８０５のアドレス３３のデータを読出し、２回目と同じ処理を実行する。
【００９８】
頂点データアドレス決定部８０１は、４回目も、前回と同じアドレスＡ＝３３、頂点位置情報ｎ＝２を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５のアドレス３３のデータを読出し、３回目と同じ処理を実行する。
【００９９】
結局、頂点データアドレス決定部８０１と頂点データ読出し部８０２で４回繰り返す過程で、ブロック１１の頂点番号１４に対応する頂点データは、最初のＸ１７，Ｙ１７からＸ２９，Ｙ２９に変わり、最終的にＸ２９，Ｙ２９に確定する。これにより、図５の不連続点が解消される。
【０１００】
（３）  頂点番号１８の処理
頂点データアドレス決定部８０１は、アドレスＡ＝Ｖ３＝１８、頂点位置情報ｎ＝３を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５からアドレス１８のデータを読出し、そのＸ２４及びＹ２４を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝３に対応する左下フラグを調べ、ここでは左下フラグ＝１であるため、次アドレスのアドレス値＝３５を切替アドレスとして頂点データアドレス決定部８０１に送る。
【０１０１】
これを受けて、頂点データアドレス決定部８０１は、２回目は、アドレスＡ＝３５、頂点位置情報ｎ＝３を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５のアドレス３５のデータを読出し、そのＸ３１及びＹ３１を双線形補間用頂点データ記憶部８０３に送る。また、頂点データ読出し部８０２は、頂点位置情報ｎ＝３に対応する左下フラグを調べ、ここでは左下フラグ＝０のため、切替アドレス＝０を頂点データアドレス決定部８０１に送る。
【０１０２】
これを受けて、頂点データアドレス決定部８０１は、３回目は、前回と同じアドレスＡ＝３５、頂点位置情報ｎ＝３を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５のアドレス３５のデータを読出し、２回目と同じ処理を実行する。
【０１０３】
頂点データアドレス決定部８０１は、４回目も、前回と同じアドレスＡ＝３５、頂点位置情報ｎ＝３を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５のアドレス３５のデータを読出し、３回目と同じ処理を実行する。
【０１０４】
結局、頂点データアドレス決定部８０１と頂点データ読出し部８０２で４回処理を繰り返す過程で、ブロック１１の頂点番号１８に対応する頂点データは、最初のＸ２４，Ｙ２４からＸ３１，Ｙ３１に変わり、最終的にＸ３１，Ｙ３１に確定する。これにより、図５の不連続点が解消される。
【０１０５】
（４）  頂点番号１９の処理
頂点データアドレス決定部８０１は、アドレスＡ＝Ｖ４＝１９、頂点位置情報ｎ＝４を頂点データ読出し部８０２に送る。頂点データ読出し部８０２は、頂点データメモリ８０５からアドレス１９のデータを読出す。以後の処理は省略するが、頂点位置情報ｎ＝４に対応する右下フラグは０のため、結局、頂点データアドレス決定部８０１と頂点データ読出し部８０２では４回同じ処理を繰り返し、ブロック１１の頂点番号１９に対応する頂点データはＸ３２，Ｙ３２に確定する。
【０１０６】
以上、図５（ａ）の入力画像に対する図５（ｂ）の出力画像（ＰｂｙＰ画像）において、一例としてブロック１、ブロック３及びブロック１３の頂点データ確定処理について説明したが、他のブロックの頂点データの確定処理も容易に類推可能である。
【０１０７】
なお、頂点データメモリ８０５は、図６のようなデータ構成に限らないことは云うまでもない。
【０１０８】
ここでは、別の実施例として、図１１（ａ）の入力画像について、図１１（ｂ）のようなＰicture  in  Ｐictureの出力画像を得るとした場合の、頂点データメモリ８０５に格納されるデータの例を図１２に示す。図１２において、アドレス１〜２５は、図６と同様に図４の頂点番号に対応する。また、アドレス２６〜２９は、重複する頂点について不連続点のデータを格納するのに割り当てられたアドレスを示す。Ｘｉ，Ｙｊは、図１１（ａ）の入力画像の対応する頂点に記した番号ｉに対応している。ここでも、画像サイズは６４０×４８０としているので、１≦Ｘ座標値≦６４０、１≦Ｙ座標値≦４８０である。左上フラグ、右上フラグ、左下フラグ、右下フラグ、次アドレスは、図６の場合と同じ意味を表わす。
【０１０９】
頂点データアドレス決定部８０１及び頂点データ読出し部８０２の処理は、上記と同様であるが、図１１（ｂ）の例では、１つの頂点について、最大２回、処理を繰り返すだけでよい。
【０１１０】
ここで、図１２において、左上フラグ、右上フラグ、左下フラグ、右下フラグを全て無視すれば（すなわち、０と見立てる）、図１１（ｃ）の出力画像を得ることができる。すなわち、図１２の一つのテーブルで２役をこなすことができ、テーブルの節約になる。
【０１１１】
通常、頂点データメモリ８０５には、種々の画像変形に対応した種々のテーブル（ルックアップテーブル）が格納されており、外部からの指示により必要なテーブルが選択されることになる。
【０１１２】
なお、図２において、頂点データアドレス決定部８０１は、着目しているブロックの各頂点について、最初に決定されたアドレスを頂点位置情報と共に１度だけ頂点データ読出し部８０２に送信し、以後は、頂点データ読出し部８０２が、フラグと次アドレスを基に必要な回数だけ頂点データメモリ８０５からのデータ読出しを繰り返して、当該ブロックの各頂点の頂点データを決定することでもよい。これにより、頂点データアドレス決定部８０１と頂点データ読出し部８０２との間で必要な情報の送受信は１回ですむ。
【符号の説明】
【０１１３】
１０  同期信号生成部
２０  撮像素子
３０  Ａ／Ｄ変換部
４０  ベイヤー補間部
５０  画像バッファ部
６０  画像読出し部
７０  Ｄ／Ａ変換部
８０  画像変形部
８０１  頂点データアドレス決定部
８０２  頂点データ読出し部
８０３  双線形補間用頂点データ記憶部
８０４  双線形補間演算部
８０５  頂点データ記憶部
【先行技術文献】
【特許文献】
【０１１４】
【特許文献１】特開２００９−０１０７３０号公報
【図１】
2011147072.tif 000003
【図２】
2011147072.tif 000004
【図３】
2011147072.tif 000005
【図４】
2011147072.tif 000006
【図５】
2011147072.tif 000007
【図６】
2011147072.tif 000008
【図７】
2011147072.tif 000009
【図８】
2011147072.tif 000010
【図９】
2011147072.tif 000011
【図１０】
2011147072.tif 000012
【図１１】
2011147072.tif 000013
【図１２】
2011147072.tif 000014
【図１３】
2011147072.tif 000015
【図１４】
2011147072.tif 000016