(57)【要約】【課題】２パス方式トランスフォームを用いて所望の画像回転角で回転された画像を容易に得られるようにする。【解決手段】無画像領域データ生成部２７３は、垂直方向変形処理部２６で画像回転角に応じた垂直方向の画像変形処理を行うことによって生じた無画像領域に対応する無画像領域データを生成する。データ書込調停部２７４は、ライン毎に、制御部５０からの領域判別情報によって画像変形処理後の画像領域であることが示されたとき、無画像領域データに換えて、垂直方向変形処理部２６から画像データを選択して、画像データの終了後は無画像領域データを選択する。メモリ制御部２７５は、データ書込調停部２７４で選択されたデータをメモリ２８に順次記憶させて、記憶されたデータの読み出し方向を変えてスキャンコンバートを行い、垂直方向の画像変形処理を行う水平方向変形処理部２９に出力する。【選択図】        図４
2010181936.tif 000002
【特許請求の範囲】
【請求項１】
画像回転角に応じて、水平方向または垂直方向の何れか一方の画像変形処理を行う第１画像変形処理部と、
前記画像変形処理によって生じた無画像領域に対応する画像データである無画像領域データを生成する無画像領域データ生成部と、
ライン毎に、前記画像変形処理後の画像領域であるか前記無画像領域であるかを識別可能とする領域判別情報を生成する制御部と、
ライン毎に、前記領域判別情報によって前記画像変形処理後の画像領域であることが示されたとき、前記無画像領域データ生成部から出力された無画像領域データに換えて、前記第１画像変形処理部から出力された画像データを選択して出力するデータ書込調停部と、
前記データ書込調停部から出力されたデータをメモリに記憶させる書込処理と、前記メモリに記憶されているデータの読出処理を行うメモリ制御部と、
前記メモリ制御部で書込処理と読出処理を行うための書込アドレスと読出アドレスの生成を行うアドレス生成部と、
前記回転角に応じて、前記メモリから読み出されたデータを用いて前記第１画像変形処理部とは異なる方向の画像変形処理を行う第２画像変形処理部を有する画像処理装置。
【請求項２】
前記第１画像変形処理部から出力された画像データを順次記憶するバッファを設け、
前記データ書込調停部は、前記バッファに蓄積された画像データが所定量となったとき、または前記画像変形処理が行われた画像データの１ラインが終了したとき、前記バッファに蓄積されている画像データを読み出して出力する請求項１記載の画像処理装置。
【請求項３】
前記制御部は、ライン毎に前記第１画像変形処理部で行われた画像変形処理によって生じたライン開始からの画像のオフセットを判別して、該判別したオフセットを前記領域判別情報として用い、
前記アドレス生成部は、前記オフセットを用いて、前記第１画像変形処理部から出力された画像データの書き込み位置を示す書込アドレスと、無画像領域データの書き込み位置を示す書込アドレスの生成を行う請求項２記載の画像処理装置。
【請求項４】
前記アドレス生成部は、前記画像回転角が画像変形処理を行うときに画像反転を生じる角度であるとき、アドレス順序をライン毎に反転させるアドレス反転処理を行う請求項１記載の画像処理装置。
【請求項５】
前記アドレス生成部は、前記画像回転角が前記第１画像変形処理部で画像変形処理を行うときに画像反転が生じる角度であるとき、前記書込アドレスのアドレス反転処理を行う請求項４記載の画像処理装置。
【請求項６】
前記アドレス生成部は、前記画像回転角が前記第２画像変形処理部で画像変形処理を行うときに画像反転が生じる角度であるとき、前記読出アドレスのアドレス反転処理を行う請求項５記載の画像処理装置。
【請求項７】
前記第２画像変形処理部は、前記第１画像変形処理部とは異なる方向の画像変形処理によって生じた無画像領域において、無画像領域データを用いることで、前記無画像領域のマスク処理を行う請求項１記載の画像処理装置。
【請求項８】
第１画像変形処理部で、画像回転角に応じて、水平方向または垂直方向の何れか一方の画像変形処理を行うステップと、
無画像領域データ生成部で、前記画像変形処理によって生じた無画像領域に対応する画像データである無画像領域データを生成するステップと、
制御部で、ライン毎に前記画像変形処理によって生じたライン開始からの画像のオフセットを判別して、該判別結果から前記画像変形処理後の画像領域であるか前記無画像領域であるかを識別可能とする領域判別情報を生成するステップと、
データ書込調停部で、ライン毎に、前記領域判別情報によって前記画像変形処理後の画像領域であることが示されたとき、前記無画像領域データ生成部から出力された無画像領域データに換えて、前記第１画像変形処理部から出力された画像データを選択して出力するステップと、
メモリ制御部で、前記データ書込調停部から出力されたデータをメモリに記憶させる書込処理と、前記メモリに記憶されているデータの読出処理を行うステップと、
アドレス生成部で、前記メモリ制御部で書込処理と読出処理を行うための書込アドレスと読出アドレスを生成するステップと、
第２画像変形処理部で、前記画像回転角に応じて、前記メモリから読み出されたデータを用いて前記第１画像変形処理部とは異なる方向の画像変形処理を行うステップとを具備する画像処理方法。
【請求項９】
コンピュータを、
画像回転角に応じて、水平方向または垂直方向の何れか一方の画像変形処理を行う機能手段と、
前記画像変形処理によって生じた無画像領域に対応する画像データである無画像領域データを生成する機能手段と、
ライン毎に前記画像変形処理によって生じたライン開始からの画像のオフセットを判別して、該判別結果から前記画像変形処理後の画像領域であるか前記無画像領域であるかを識別可能とする領域判別情報を生成する機能手段と、
ライン毎に、前記領域判別情報によって前記画像変形処理後の画像領域であることが示されたとき、前記無画像領域データに換えて、前記画像変形処理が行われた画像データを選択する機能手段と、
前記データ書込調停部から出力されたデータをメモリに記憶させる書込処理と、前記メモリに記憶されているデータの読出処理を行う機能手段と、
前記書込処理と前記読出処理を行うための書込アドレスと読出アドレスを生成する機能手段と、
前記画像回転角に応じて、前記メモリから読み出されたデータを用いて前記画像変形処理とは異なる方向の画像変形処理を行う機能手段として機能させるためのコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像処理装置と画像処理方法およびコンピュータ・プログラムに関する。詳しくは、表示画像の回転を簡単な構成で容易に行えるようにする。
【背景技術】
【０００２】
従来、コンピュータグラフィックスや映像編集システム等では、画像に特殊効果を与える手法として、原画像に対して画像の回転等の変形が行われている。例えば特許文献１では、プリフィルタ方式やミップマップ方式のテクスチャマッピング手法を用いて画像処理が行われている。
【０００３】
また、画像の回転処理を容易に行うことができるように、例えば、非特許文献１では、水平方向と垂直方向の何れか１方向について１次元の変換処理を行い、次に他の方向について１次元の変換処理を行う２パス方式トランスフォームが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−８３３１６号公報
【非特許文献】
【０００５】
【非特許文献１】Ｅｄ  Ｃａｔｍｕｌｌ  ａｎｄ  Ａｌｖｙ  Ｒａｙ  Ｓｍｉｔｈ  「３−Ｄ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎｓ  ｏｆ  Ｉｍａｇｅｓ  ｉｎ  Ｓｃａｎｌｉｎｅ  Ｏｒｄｅｒ」（ＡＣＭ  ＳＩＧＧＲＡＰＨ  Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ  Ｖｏｌｕｍｅ  １４  ，    Ｉｓｓｕｅ  ３    （Ｊｕｌｙ  １９８０）  Ｐａｇｅｓ：  ２７９  −  ２８５）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、２パス方式トランスフォームを用いて画像処理を行う場合、例えば水平垂直スキャンコンバートが行われた画像に対して垂直方向の１次元の変換処理を行い、この変換処理が行われた画像に対して垂直水平スキャンコンバートを行う。さらに、垂直水平スキャンコンバート後の画像に対して水平方向の１次元の変換処理を行うものとすれば、ライン方向に１次元の変換処理を順次行うことで、所望の画像回転角で回転された画像をリアルタイムで得ることができる。しかし、画像回転角に応じて画像の変形処理を行うと、画像のない無画像領域が生じる場合があり、１次元の変換処理が行われた画像データのみをメモリに記憶させると、既に画像回転が行われた画像データが書き換えられずに残ってしまう場合ある。このため、メモリから画像データを読み出して１次元の変換処理を行うと、所望の画像回転角で回転された画像に不要な画像が含まれてしまうおそれがある。
【０００７】
そこで、この発明では、２パス方式トランスフォームを用いて画像の回転を行ったとき、所望の画像回転角で回転された画像を容易に得ることができる画像処理装置と画像処理方法およびコンピュータ・プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
この発明の第１の側面は、画像回転角に応じて、水平方向または垂直方向の何れか一方の画像変形処理を行う第１画像変形処理部と、画像変形処理によって生じた無画像領域に対応する画像データである無画像領域データを生成する無画像領域データ生成部と、
ライン毎に、画像変形処理後の画像領域であるか無画像領域であるかを識別可能とする領域判別情報を生成する制御部と、ライン毎に、領域判別情報によって画像変形処理後の画像領域であることが示されたとき、無画像領域データ生成部から出力された無画像領域データに換えて、第１画像変形処理部から出力された画像データを選択して出力するデータ書込調停部と、データ書込調停部から出力されたデータをメモリに記憶させる書込処理と、メモリに記憶されているデータの読出処理を行うメモリ制御部と、メモリ制御部で書込処理と読出処理を行うための書込アドレスと読出アドレスの生成を行うアドレス生成部と、回転角に応じて、メモリから読み出されたデータを用いて第１画像変形処理部とは異なる方向の画像変形処理を行う第２画像変形処理部を有する画像処理装置にある。
【０００９】
この発明では、画像回転角に応じて、水平方向または垂直方向の何れか一方の画像変形処理が第１画像変形処理部で行われる。また、第１画像変形処理部で画像変形処理が行われた画像データのスキャンコンバートが行われて、スキャンコンバート後の画像データを用いて、第１画像変形処理部とは異なる方向の画像変形処理が第２画像変形処理部で行うことで、２パス方式トランスフォームを用いた画像処理が行われる。スキャンコンバートを行う際に、制御部では、ライン毎に画像変形処理によって生じたライン開始からの画像のオフセットが判別される。データ書込調停部では、ライン毎に、画像のオフセットに基づき無画像領域の画像を示すデータと第１画像変形処理部で画像変形処理が行われた画像データの選択が行われる。この選択されたデータをメモリに書き込み、メモリに書き込まれたデータの読み出し方向を切り換えることでスキャンコンバート後の画像データが生成される。また、画像回転角が画像変形処理を行うときに画像反転を生じる角度であるとき、アドレス順序をライン毎に反転させるアドレス反転処理が行われる。さらに、第１画像変形処理部から出力された画像データを順次記憶するバッファに蓄積された画像データが所定量となったとき、画像変形処理後の画像データが終了したとき、バッファに蓄積されている画像データがメモリに書き込まれる。
【００１０】
この発明の第２の側面は、第１画像変形処理部で、画像回転角に応じて、水平方向または垂直方向の何れか一方の画像変形処理を行うステップと、無画像領域データ生成部で、画像変形処理によって生じた無画像領域に対応する画像データである無画像領域データを生成するステップと、制御部で、ライン毎に画像変形処理によって生じたライン開始からの画像のオフセットを判別して、該判別結果から画像変形処理後の画像領域であるか無画像領域であるかを識別可能とする領域判別情報を生成するステップと、データ書込調停部で、ライン毎に、領域判別情報によって画像変形処理後の画像領域であることが示されたとき、無画像領域データ生成部から出力された無画像領域データに換えて、第１画像変形処理部から出力された画像データを選択して出力するステップと、メモリ制御部で、データ書込調停部から出力されたデータをメモリに記憶させる書込処理と、メモリに記憶されているデータの読出処理を行うステップと、アドレス生成部で、メモリ制御部で書込処理と読出処理を行うための書込アドレスと読出アドレスを生成するステップと、第２画像変形処理部で、画像回転角に応じて、メモリから読み出されたデータを用いて第１画像変形処理部とは異なる方向の画像変形処理を行うステップとを具備する画像処理方法にある。
【００１１】
この発明の第３の側面は、コンピュータを、画像回転角に応じて、水平方向または垂直方向の何れか一方の画像変形処理を行う機能手段と、画像変形処理によって生じた無画像領域に対応する画像データである無画像領域データを生成する機能手段と、ライン毎に画像変形処理によって生じたライン開始からの画像のオフセットを判別して、該判別結果から画像変形処理後の画像領域であるか無画像領域であるかを識別可能とする領域判別情報を生成する機能手段と、ライン毎に、領域判別情報によって画像変形処理後の画像領域であることが示されたとき、無画像領域データに換えて、画像変形処理が行われた画像データを選択する機能手段と、データ書込調停部から出力されたデータをメモリに記憶させる書込処理と、メモリに記憶されているデータの読出処理を行う機能手段と、書込処理と読出処理を行うための書込アドレスと読出アドレスを生成する機能手段と、画像回転角に応じて、メモリから読み出されたデータを用いて画像変形処理とは異なる方向の画像変形処理を行う機能手段として機能させるためのコンピュータ・プログラムにある。
【００１２】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、光ディスクや磁気ディスク、半導体メモリなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【発明の効果】
【００１３】
この発明によれば、画像回転角に応じて、水平方向または垂直方向の何れか一方の画像変形処理が行われた画像データと、画像変形処理によって生じた無画像領域に対応する画像データである無画像領域データが、画像変形処理によって生じたライン開始からの画像のオフセットの判別結果に基づいて選択されて、選択されたデータがメモリに書き込まれる。また、メモリから読み出されたデータを用いて異なる方向の画像変形処理が行われる。このため、メモリから読み出されたデータに不要な画像が含まれてしまうことがなく、２パス方式トランスフォームを用いて画像の回転を行ったとき、所望の画像回転角で回転された画像を容易に得ることができる。
【図面の簡単な説明】
【００１４】
【図１】第１の実施の形態の構成を示す図である。
【図２】第１スキャンコンバータの動作を説明するための図である。
【図３】垂直方向変形処理部の動作を説明するための図である。
【図４】第２スキャンコンバータの構成を示す図である。
【図５】第１の実施の形態の動作を示すフローチャート（１／２）である。
【図６】第１の実施の形態の動作を示すフローチャート（２／２）である。
【図７】画像の回転動作が行われたときの経過を示す図である。
【図８】画像の反転を説明するための図である。
【図９】画像のオフセットを説明するための図である。
【図１０】データ書込調停部の動作を示すフローチャートである。
【図１１】第２の実施の形態の構成を示す図である。
【発明を実施するための形態】
【００１５】
以下、発明を実施するための形態について説明する。
なお、説明は以下の順序で行う。
１．第１の実施の形態の構成
２．第１の実施の形態の動作
３．第２の実施の形態の構成
【００１６】
＜１．第１の実施の形態の構成＞
図１は、第１の実施の形態の構成を示している。画像処理装置１０には、画像データ処理部２０と制御部５０が設けられている。画像データ処理部２０は、画像回転角に応じた水平方向の変形処理および画像回転角に応じた垂直方向の変形処理を順に行うことで、画像回転角で回転された画像の画像データを生成する。
【００１７】
画像データ処理部２０には、水平プロセス部２１、第１スキャンコンバータ２２、フレームメモリ２３、インタレース／プログレッシブ変換部（Ｉ／Ｐ変換部）２４、垂直プロセス部２５が設けられている。画像データ処理部２０は、画像回転角に応じた変形処理を行うため、垂直方向変形処理部２６、第２スキャンコンバータ２７、フレームメモリ２８、水平方向変形処理部２９が設けられている。制御部５０は、画像データ処理部２０を制御して、２パス方式トランスフォームを用いて画像回転を行う。なお、以下の説明では、水平方向をＸ軸方向、垂直方向をＹ軸方向、表示領域の中心をＺ軸の位置とする。
【００１８】
入力画像の画像データは、画像データ処理部２０の水平プロセス部２１に供給される。水平プロセス部２１は、画像全体や画像の一部分について水平方向のぼかしや、モザイク処理を行い、処理後の画像データを第１スキャンコンバータ２２に出力する。
【００１９】
第１スキャンコンバータ２２は、フレームメモリ２３と接続されている。第１スキャンコンバータ２２はフレームメモリ２３を利用して水平垂直スキャンコンバートを行い、水平方向と垂直方向が入れ替えられた画像データに変換する。
【００２０】
図２は、第１スキャンコンバータ２２の動作を説明するための図である。なお、図２では、画像データの読み出し方向を一定とした場合を例示しており、第１スキャンコンバータ２２にはバッファが設けられている。
【００２１】
第１スキャンコンバータ２２は、画像データをフレームメモリ２３に書き込む。次に、第１スキャンコンバータ２２は、フレームメモリ２３に書き込まれている画像データを、図２の（Ａ）に示すように所定画像数であるブロック単位で、最初のラインの先頭から読み出して、図２の（Ｂ）に示すように、バッファに対して垂直方向に書き込む。また、第１スキャンコンバータ２２は、１ブロックの画像データをフレームメモリ２３から読み出してバッファに書き込む処理が完了したとき、次のラインの先頭から１ブロックの画像データを読み出す。さらに、第１スキャンコンバータ２２は、読み出した画像データをバッファに対して垂直方向に書き込む。その後、最後のラインの先頭から１ブロックの画像データがバッファに書き込まれると、フレームメモリ２３において垂直方向に並んだ画素が、バッファにおいて水平方向に並んだ状態となる。したがって、図２の（Ｃ）に示すように、バッファに保持されている画像データを水平方向に読み出すことで、水平方向と垂直方向が入れ替えられた画像データを、１ブロックの画素数と等しいライン数だけ生成できる。
【００２２】
次に、第１スキャンコンバータ２２は、各ラインについて画像データの読み出し開始位置を先頭から所定画像数だけ移動させた位置として、上述のようにブロック単位でライン毎に読み出してバッファに書き込む。また、第１スキャンコンバータ２２は、バッファに保持されている画像データを水平方向に読み出して、水平方向と垂直方向が入れ替えられた画像データを、１ブロックの画素数と等しいライン数だけ生成する。以下同様の処理を繰り返すと、第１スキャンコンバータ２２から出力される画像データは、図２の（Ｄ）に示すように水平方向と垂直方向が入れ替えられた画像データとなる。
【００２３】
第１スキャンコンバータ２２は、以上のような処理を行い、水平垂直スキャンコンバート後の画像データに変換してＩ／Ｐ変換部２４に出力する。なお、図２では、画像データの読み出し方向を一定方向（水平方向）とした場合を例示したが、フレームメモリ２３に書き込まれている画像データの読み出しを垂直方向に行って、図２の（Ｄ）に示す画像データを生成するものとしてもよい。
【００２４】
Ｉ／Ｐ変換部２４は、インタレース方式の画像データをプログレッシブ方式の画像データに変換するインタレースプログレッシブ変換（Ｉ／Ｐ変換）処理を行う。Ｉ／Ｐ変換部２４は、Ｉ／Ｐ変換処理後であるプログレッシブ方式の画像データを、垂直プロセス部２５に出力する。
【００２５】
垂直プロセス部２５は、画像全体や画像の一部分について垂直方向のぼかしや、モザイク処理を行い、処理後の画像データを垂直方向変形処理部２６に出力する。
【００２６】
垂直方向変形処理部２６は、垂直方向の変形処理を行う。垂直方向変形処理部２６は、制御部５０からの制御信号に基づき、画像回転角に応じて垂直方向の１次元の変形処理を行い、垂直方向の変形処理後の画像データを第２スキャンコンバータ２７に出力する。
【００２７】
図３は、垂直方向変形処理部２６の動作を説明するための図である。垂直方向変形処理部２６に入力される画像データは、水平垂直スキャンコンバートが行われた画像データである。したがって、図３の（Ａ）に示す１ラインの画像データは、画像回転角で回転する画像における垂直方向の１列分の画像データに相当する。
【００２８】
垂直方向変形処理部２６は、例えばマルチレートフィルタを用いて構成されており、画像回転角に応じて補間処理を行い、垂直方向の１次元の変形処理がなされた画像データを生成する。例えば、回転によって画像が離れる場合、画像は回転に伴い縮小された画像となる。したがって、垂直方向変形処理部２６は、図３の（Ａ）に示す画像データを用いて補間処理を行い、図３の（Ｂ）に示すように、画素数を少なくすることで縮小された画像の画像データを生成する。また、回転によって画像が近付く場合、画像は回転に伴い拡大された画像となる。したがって、垂直方向変形処理部２６は、図３の（Ｃ）に示す画像データを用いて補間処理を行い、図３の（Ｄ）に示すように、画素数を増やすことで拡大された画像の画像データを生成する。
【００２９】
第２スキャンコンバータ２７はフレームメモリ２８と接続されている。第２スキャンコンバータ２７はフレームメモリ２８を利用して垂直水平スキャンコンバートを行い、垂直方向と水平方向が入れ替えられた画像データに変換する。さらに、第２スキャンコンバータ２７は、垂直方向変形処理部２６で垂直方向の変形処理によって画像が縮小される場合、前回の変形処理で生成された画像がフレームメモリに残ったままとならないように、画像のない無画像領域に無画像領域データを書き込む。例えば、第２スキャンコンバータ２７は、無画像領域データとして黒画像の画像データを書き込む。さらに、画像回転角によっては、画像の上下や左右が反転する場合が生じる。したがって、第２スキャンコンバータ２７は、画像データの書き込みや読み出しを行うときのアドレス順序を例えばライン毎に反転させるアドレス反転処理を行うことで、反転された画像の画像データが得られるようにする。
【００３０】
フレームメモリ２８は、例えばＳＤＲＡＭ(Synchronous Dynamic Random Access Memory)を用いて構成する。また、フレームメモリ２８は、例えば１フレームの画像の書き込みと既に書き込まれた１フレームの画像の読み出しを同時に行うことができるように、２フレーム分の画像が記憶可能とされている。
【００３１】
図４は、第２スキャンコンバータ２７の構成を示している。第２スキャンコンバータ２７は、画像領域内データ処理部２７１、ＦＩＦＯ２７２、無画像領域データ生成部２７３、データ書込調停部２７４、メモリ制御部２７５を備えている。
【００３２】
垂直方向変形処理部２６から出力された画像データは、画像領域内データ処理部２７１に供給される。画像領域内データ処理部２７１は、垂直方向変形処理部２６から供給された画像データをバッファであるＦＩＦＯ２７２に順次書き込む。
【００３３】
ＦＩＦＯ２７２は、蓄積している画像データのデータ量やデータの終了を示す情報を生成してデータ書込調停部２７４に通知する。また、ＦＩＦＯ２７２は、データ書込調停部２７４からの要求に基づき、書き込まれている画像データをデータ書込調停部２７４に出力する。
【００３４】
無画像領域データ生成部２７３は、データ書込調停部２７４からの要求に応じて、所定の画像データすなわち無画像領域に書き込む例えば黒画像の画像データをデータ書込調停部２７４に出力する。
【００３５】
データ書込調停部２７４は、制御部５０から供給された領域判別情報に基づき、ライン毎にデータの選択を行う。データ書込調停部２７４は、領域判別情報によって画像変形処理後の画像領域であることが示されたとき、無画像領域データ生成部２７３から出力された無画像領域データに換えて、ＦＩＦＯ２７２から出力された画像データを選択する。また、データ書込調停部２７４は、垂直方向変形処理部２６で画像変形処理がなされた画像データの終了後は無画像領域データ生成部２７３から出力された無画像領域データを選択する。
【００３６】
また、データ書込調停部２７４は、ＦＩＦＯ２７２から供給されたＦＩＦＯ２７２で蓄積されているデータ量やデータの終了を示す情報に基づき、書込条件を満たしているか否か判別する。ここで、ＦＩＦＯ２７２に所定量のデータが蓄積された状態となったとき、書き込み条件を満たすとしてＦＩＦＯ２７２に対して画像データの要求を行う。なお、所定量とは、一回の書き込み処理でフレームメモリ２８に書き込むデータ量であり、予め設定されている。さらに、データ書込調停部２７４は、所定量のデータが蓄積された状態となっていなくとも垂直方向変形処理部２６で画像変形処理がなされた画像データのＦＩＦＯ２７２への書き込みが終了したとき、書き込み条件を満たすとして画像データの要求を行う。
【００３７】
また、データ書込調停部２７４は、領域判別情報によって示されたオフセットを用いて、垂直方向変形処理部２６から出力された画像データの書き込み位置を示す書込アドレスの生成と、無画像領域データの書き込み位置を示す書込アドレスの生成を行う。この生成された書込アドレスは、選択されたデータと共にメモリ制御部２７５に出力される。なお、データ書込調停部２７４は、画像回転角が垂直方向変形処理部２６で画像変形処理を行うときに画像反転が生じる角度であるとき、反転された画像が記憶されるようにアドレス順序をライン毎に反転させるアドレス反転処理を行う。なお、第１の実施の形態では、書込アドレスの生成をデータ書込調停部２７４で行う場合を示しているが、制御部５０等で書込アドレスの生成を行うものとしてもよい。
【００３８】
メモリ制御部２７５は、データ書込調停部２７４から供給されたデータを順次フレームメモリ２８に記憶される。なお、データ書込調停部２７４から供給されたデータは、データ書込調停部２７４から供給されたアドレスが示す位置に書き込む。また、メモリ制御部２７５は、フレームメモリ２８に記憶されているデータの読み出しを行い、フレームメモリ２８から読み出したデータを水平方向変形処理部２９に出力する。また、メモリ制御部２７５あるいは制御部５０は、フレームメモリ２８からデータを読み出す場合、画像回転角に応じてデータ読出を行うときのアドレス順序を反転させるアドレス反転処理を行う。なお、第２スキャンコンバータ２７では、垂直方向を水平方向に変換する処理を行うことから、垂直水平スキャンコンバート後の画像における１ラインに対応する単位でアドレス順序を反転させる。
【００３９】
図１に示す水平方向変形処理部２９は、垂直方向変形処理部２６と同様に構成されており、水平方向の変形処理を行う。水平方向変形処理部２９は、制御部５０からの制御信号に基づき、画像回転角に応じて水平方向の１次元の変形処理を行い、水平方向の変形処理後の画像データを画像処理装置１０から出力する。また、水平方向変形処理部２９は、水平方向の変形処理を行ったことにより、無画像領域が生じたとき、この領域に無画像領域データを書き込む処理を行う。
【００４０】
制御部５０は、指示された画像回転角に応じて制御信号を生成して垂直方向変形処理部２６と水平方向変形処理部２９に供給して、垂直方向や水平方向の１次元の変形処理を行わせる。また、制御部５０は、画像回転角に基づいて、ライン毎に、画像変形処理後の画像領域であるか無画像領域であるかを識別可能とする領域判別情報を生成してデータ書込調停部２７４に出力する。例えば、制御部５０は、ライン毎に画像変形処理によって生じたライン開始からの画像のオフセットを画像回転角に基づいて判別して、このオフセットを領域判別情報としてデータ書込調停部２７４に出力する。このように、領域判別情報をデータ書込調停部２７４に出力することで、画像変形処理によって生じた無画像領域を所定の画像例えば黒画像とすることができる。
【００４１】
［第１の実施の形態の動作］
図５，図６は、第１の実施の形態の動作を示すフローチャートである。ステップＳＴ１で水平プロセス部２１は、水平方向のデータ処理を行う。水平プロセス部２１は、データ処理として例えばデフォーカス処理を行ってステップＳＴ２に進む。
【００４２】
ステップＳＴ２で第１スキャンコンバータ２２は、水平垂直スキャンコンバートを行ってステップＳＴ３に進む。図７は、画像の回転動作が行われたときの経過を図示している。例えば水平プロセス部２１に入力された画像が図７の（Ａ）に示す画像であるとき、第１スキャンコンバータ２２から出力される画像は、水平垂直スキャンコンバートが行われて図７の（Ｂ）に示す画像となる。なお、図７の（Ａ）では、回転の中心となるＸ軸とＹ軸を示している。
【００４３】
ステップＳＴ３でＩ／Ｐ変換部２４は、インタレース方式の画像データをプログレッシブ方式の画像データに変換するＩ／Ｐ変換処理を行う。Ｉ／Ｐ変換部２４は、入力された画像データがインタレース方式であるとき、Ｉ／Ｐ変換処理を行い、プログレッシブ方式の画像データに変換してステップＳＴ４に進む。
【００４４】
ステップＳＴ４で垂直プロセス部２５は、垂直方向のデータ処理を行う。垂直プロセス部２５は、データ処理として例えばデフォーカス処理を行ってステップＳＴ５に進む。
【００４５】
ステップＳＴ５で垂直方向変形処理部２６は、垂直方向の１次元の変形処理を行う。垂直方向変形処理部２６は、マルチレートフィルタを用いて画像を垂直方向に画像回転角に応じて変形させる。垂直方向変形処理部２６は、図４で示したように補間処理を行い、画像回転角に応じて１次元の変形処理を行う。したがって、図７の（Ｂ）に示す画像は、例えばＸ軸を中心として画像を回転させたとき、垂直方向の変形処理後の画像は図７の（Ｃ）に示すものとなる。また、Ｙ軸を中心として画像を回転させたとき、垂直方向の変形処理後の画像は、図７の（Ｄ）に示すものとなる。
【００４６】
ステップＳＴ６で第２スキャンコンバータ２７のデータ書込調停部２７４は、垂直方向に画像反転を生じるか否かを判別する。データ書込調停部２７４は、画像回転角が垂直方向に画像反転を生じる角度あると判別したときステップＳＴ７に進む。また、データ書込調停部２７４は、画像回転角が垂直方向に画像反転を生じる角度でないと判別したときステップＳＴ８に進む。
【００４７】
例えば、Ｘ軸を回転軸として図８の（Ａ）に示す画像を回転させると図８の（Ｂ）となる。さらに、画像回転角θxを大きくして例えばπ＜θx＜２πとすると、図８の（Ａ）に示す画像が反転された図８の（Ｃ）に示すように、垂直方向に画像反転を生じた画像となる。したがって、図８の（Ａ）に示す画像を回転させる場合、画像回転角θxが「（２ｎ−１）π＜θx＜２ｎπ」または「−（２ｎ−１）π＞θx＞−２ｎπ」（ｎは正の整数）の条件を満たすとき、垂直方向に画像反転を生じると判別してステップＳＴ７に進む。また、画像回転角θxが「（２ｎ−１）π＜θx＜２ｎπ」と「−（２ｎ−１）π＞θx＞−２ｎπ」の条件を満たさないとき、画像反転を生じないと判別してステップＳＴ８に進む。
【００４８】
ステップＳＴ７でデータ書込調停部２７４は、書込アドレスのアドレス反転設定を行う。データ書込調停部２７４は、垂直方向に反転された画像がフレームメモリ２８に記憶されるように、アドレス順序をライン単位で反転させて書込アドレスを生成する設定を行ってステップＳＴ８に進む。
【００４９】
ステップＳＴ８で制御部５０は、水平方向に画像反転を生じるか否かを判別する。データ書込調停部２７４は、画像回転角が水平方向に画像反転を生じる角度あると判別したときステップＳＴ９に進む。また、データ書込調停部２７４は、画像回転角が水平方向に画像反転を生じる角度でないと判別したときステップＳＴ１０に進む。
【００５０】
例えば、Ｙ軸を回転軸として図８の（Ａ）に示す画像を回転させる場合、画像回転角θyが「（２ｎ−１）π＜θy＜２ｎπ」または「−（２ｎ−１）π＞θy＞−２ｎπ」の条件を満たすとき、水平方向に画像反転が生じると判別してステップＳＴ９に進む。また、画像回転角θyが「（２ｎ−１）π＜θy＜２ｎπ」と「−（２ｎ−１）π＞θy＞−２ｎπ」の条件を満たさないとき、画像反転が生じないと判別してステップＳＴ１０に進む。
【００５１】
ステップＳＴ９で制御部５０は、読出アドレスのアドレス反転設定を行う。制御部５０は、フレームメモリ２８から読み出した画像が水平方向に反転された画像となるようにアドレス順序を反転させて読出アドレスを生成する設定を行ってステップＳＴ１２に進む。
【００５２】
ステップＳＴ１０で制御部５０は、垂直方向のアドレス演算を行う。制御部５０は、画像回転角に基づいて、ライン毎に垂直方向の変形処理が行われた画像データのアドレスを算出してステップＳＴ１１に進む。また、ステップＳＴ１１で制御部５０は、領域判別情報を生成してデータ書込調停部２７４に供給する。
【００５３】
垂直方向の変形処理を行ったときに、図９の（Ａ）に示す１ライン分の画像データを用いて図９の（Ｂ）に示すように補間処理を行うと、変形処理後の画像における１ラインの画像データ数は、図９の（Ｃ）に示すように１ラインの画像データ数よりも小さくなる。また、表示領域と変形処理後の画像の軸を一致させると、図９の（Ｄ）の黒丸で示す画素が、画像のない無画像領域の画素となり、変形処理後の画像はライン開始から「ｋ」画素だけオフセットした位置となる。したがって、制御部５０は、ライン毎にステップＳＴ１０で算出したアドレスによって、画像変形処理によって生じたライン開始からの画像のオフセットを判別する。さらに制御部５０は、判別結果から画像変形処理後の画像領域であるか無画像領域であるかを識別可能とする領域判別情報を生成してデータ書込調停部２７４に供給してステップＳＴ１２に進む。例えば、判別したオフセットを領域判別情報としてデータ書込調停部２７４に供給する。なお、回転する画像のライン数と水平方向の画素数が一定で、Ｘ軸とＹ軸が画像に対して所定の位置で固定されている場合、画像回転角が等しいと画像の変形も等しくなる。したがって、ライン毎に垂直方向の変形処理が行われた画像データのアドレス、および後述するステップＳＴ１４で算出するアドレスを、画像回転角に応じて予め算出しておくものとしてもよい。
【００５４】
ステップＳＴ１２で第２スキャンコンバータ２７は、垂直水平スキャンコンバートを行う。第２スキャンコンバータ２７は、ライン毎に、ステップＳＴ１１で生成された領域判別情報に基づいて、無画像領域データまたは垂直方向の変形処理が行われた画像データの選択を行い、選択したデータをフレームメモリ２８に書き込む処理を行う。また、ステップＳＴ７で書込アドレスのアドレス反転設定がなされているときは、アドレス順序をライン毎に反転させて、垂直方向に反転された画像をフレームメモリ２８に書き込む。さらに、第２スキャンコンバータ２７は、水平垂直スキャンコンバートされている垂直方向の変形処理された画像が正しい向きの画像となるように、フレームメモリ２８から画像データの読み出しを行う。また、ステップＳＴ９で読出アドレスのアドレス反転設定がなされているときは、アドレス順序を反転させて、水平方向に反転された画像をフレームメモリ２８から読み出す。このように、フレームメモリ２８からのデータの読み出しを行い、垂直水平スキャンコンバートが行われた画像データを水平方向変形処理部２９に出力して図６のステップＳＴ１３に進む。
【００５５】
ここで、第２スキャンコンバータ２７で垂直水平スキャンコンバートを行うときのデータ書込調停部の動作を図１０に示すフローチャートを用いて説明する。
【００５６】
ステップＳＴ２１でデータ書込調停部２７４は、「ＦＩＦＯ  ＳＴＡＴＥ」をリセットしてステップＳＴ２２に進む。なお、「ＦＩＦＯ  ＳＴＡＴＥ」は、ＦＩＦＯ２７２で蓄積されているデータ量やデータの終了を示す情報である。
【００５７】
ステップＳＴ２２でデータ書込調停部２７４は、「ＦＩＦＯ  ＳＴＡＴＥ」を監視する。すなわち、データ書込調停部２７４は、ＦＩＦＯ２７２からデータ量等を示す情報を取得してステップＳＴ２３に進む。
【００５８】
ステップＳＴ２３でデータ書込調停部２７４は、「ＦＩＦＯ  ＳＴＡＴＥ」が書込条件を満たしているか否か判別する。データ書込調停部２７４は、予め設定した所定量だけＦＩＦＯ２７２にデータが蓄積されたこと、およびＦＩＦＯ２７２に蓄積されているデータ量が所定量に達していなくとも１ラインの画像データが終了したことを書込条件とする。データ書込調停部２７４は、「ＦＩＦＯ  ＳＴＡＴＥ」が書込条件を満たしていないと判別したときステップＳＴ２４に進み、「ＦＩＦＯ  ＳＴＡＴＥ」が書込条件を満たしていると判別したときステップＳＴ２６に進む。
【００５９】
ステップＳＴ２４でデータ書込調停部２７４は、無画像領域データの要求を行う。データ書込調停部２７４は、無画像領域データ生成部２７３に対して無画像領域データの要求を行ってステップＳＴ２５に進む。
【００６０】
ステップＳＴ２５でデータ書込調停部２７４は、無画像領域データの受け取りを行う。データ書込調停部２７４は、無画像領域データ生成部２７３から出力された無画像領域データを受け取ってステップＳＴ３１に進む。
【００６１】
ステップＳＴ２６でデータ書込調停部２７４は、画像データの要求を行う。データ書込調停部２７４は、ＦＩＦＯ２７２に対して蓄積している画像データの要求を行ってステップＳＴ２７に進む。
【００６２】
ステップＳＴ２７でデータ書込調停部２７４は、画像データの受け取りを行う。データ書込調停部２７４は、ＦＩＦＯ２７２から出力された垂直方向の変形処理がなされた画像データを受け取ってステップＳＴ３１に進む。
【００６３】
ステップＳＴ２８でデータ書込調停部２７４は、「ＦＩＦＯ  ＳＴＡＴＥ」が書込条件を満たしているか否か判別する。データ書込調停部２７４は、「ＦＩＦＯ  ＳＴＡＴＥ」が書込条件を満たしていないと判別したときステップＳＴ２９に進み、「ＦＩＦＯ  ＳＴＡＴＥ」が書込条件を満たしていると判別したときステップＳＴ３０に進む。
【００６４】
ステップＳＴ２９でデータ書込調停部２７４は、無画像領域データの書込アドレスを決定する。データ書込調停部２７４は、変形処理を行ったことにより生じた無画像領域に無画像領域データを書き込むため、ステップＳＴ１１で判別された領域判別情報に基づき、無画像領域データの書込アドレスを決定してステップＳＴ３１に進む。
【００６５】
ステップＳＴ３０でデータ書込調停部２７４は、画像データの書込アドレスを決定する。データ書込調停部２７４は、ステップＳＴ１１で判別された領域判別情報に基づき、変形処理後の画像データの書込アドレスを決定してステップＳＴ３１に進む。
【００６６】
ステップＳＴ３１でデータ書込調停部２７４は、データ書込を行う。データ書込調停部２７４は、ステップＳＴ２５で受け取った無画像領域データとステップＳＴ２９で生成した書込アドレスをメモリ制御部２７５に供給する。また、データ書込調停部２７４は、ステップＳＴ２６で受け取った画像データとステップＳＴ３０で生成した書込アドレスをメモリ制御部２７５に供給する。このように、データと書き込むアドレスをメモリ制御部２７５に供給することで、メモリ制御部２７５によってフレームメモリ２８の書込アドレスで示した位置に無画像領域データや画像データを記憶させる。
【００６７】
ステップＳＴ３２でデータ書込調停部２７４は、書き込んだデータ数のカウントを行う。データ書込調停部２７４は、メモリ制御部２７５に供給した無画像領域データや画像データのデータ数をカウントしてステップＳＴ３３に進む。
【００６８】
ステップＳＴ３３でデータ書込調停部２７４は、カウント数が1ラインの画素数未満であるか否か判別する。データ書込調停部２７４は、カウント数が1ラインの画素数未満であり、１ライン分のデータをフレームメモリ２８に書き込んでいないと判別したときステップＳＴ２２に戻り、引き続きデータの書き込みを行う。また、データ書込調停部２７４は、カウント数が1ラインの画素数と等しくなったとき、１ライン分の処理を終了する。
【００６９】
データ書込調停部２７４は、図１０に示す処理を１フレームのライン数だけ繰り返すことで１フレーム分のデータをフレームメモリ２８に書き込むことができる。
【００７０】
第２スキャンコンバータ２７は、１フレーム分のデータをフレームメモリ２８に書き込み、フレームメモリ２８から垂直方向の変形処理された画像が正しい向きとなるようにデータの読み出しを行うことで、垂直水平スキャンコンバートを行う。
【００７１】
例えばＸ軸を中心として画像を回転させたとき、垂直方向の変形処理後の画像は図７の（Ｃ）に示すものとなる。したがって、第２スキャンコンバータ２７は、無画像領域データと図７の（Ｃ）に示す画像の画像データを用いて、図７の（Ｅ）に示す１フレーム分の画像データを構成してフレームメモリ２８に書き込む。さらに、フレームメモリ２８から画像の向きが正しくなるように画像データの読み出しを行うことで、図７の（Ｆ）に示す画像の画像データを水平方向変形処理部２９に出力できる。また、例えばＹ軸を中心として画像を回転させたとき、垂直方向の変形処理後の画像は図７の（Ｄ）に示すものとなる。したがって、第２スキャンコンバータ２７は、無画像領域データと図７の（Ｄ）に示す画像の画像データを用いて、図７の（Ｇ）に示す１フレーム分の画像データを構成してフレームメモリ２８に書き込む。さらに、フレームメモリ２８から画像の向きが正しくなるように画像データの読み出しを行うことで、図７の（Ｈ）に示す画像の画像データを水平方向変形処理部２９に出力できる。なお、図７の（Ｅ）（Ｆ）（Ｇ）（Ｈ）において、斜線で示す領域は無画像領域である。
【００７２】
また、制御部５０からの領域判別情報によってライン毎に画像変形処理後の画像領域であるか無画像領域であるかを識別可能として、データ書込調停部２７４は、「ＦＩＦＯ  ＳＴＡＴＥ」が書込条件を満たしたときに画像データの書き込みを行う。したがって、「ＦＩＦＯ  ＳＴＡＴＥ」が書込条件を満たしていない期間を有効に活用してフレームメモリ２８に対してデータの書き込みを行うことができる。例えば垂直方向の変形処理中であっても、垂直方向の変形処理によって生じる無画像領域に対して無画像領域データの書き込みを行うことができるので、リアルタイム処理が可能となる。
【００７３】
図６のステップＳＴ１３で水平方向変形処理部２９は、ステップＳＴ１２で垂直水平スキャンコンバートが行われた画像データを用いて、水平方向の１次元の変形処理を行う。水平方向変形処理部２９は、マルチレートフィルタを用いて画像を画像回転角に応じて水平方向に変形させてステップＳＴ１５に進む。
【００７４】
図５のステップＳＴ１４で制御部５０は、水平方向のアドレス演算を行う。制御部５０は、画像回転角に基づいて、ライン毎に水平方向の変形処理が行われた画像データのアドレスを算出する。垂直水平スキャンコンバート後の画像に対して水平方向の１次元の変形処理を行うと、垂直方向の１次元の変形処理を行ったときと同様に、無画像領域が生じる場合がある。したがって、無画像領域の画素データを無画像領域データとすることができるように、ライン毎に水平方向の変形処理が行われた画像データのアドレスを算出する。
【００７５】
ステップＳＴ１５で水平方向変形処理部２９は、マスク処理を行う。水平方向変形処理部２９は、ステップＳＴ１４で算出したアドレスを用いて、無画像領域の画素データを無画像領域データとするマスク処理を行う。具体的には、ライン毎に、出力画素のアドレスがステップＳＴ１４で算出した画像データのアドレスとなるまで無画像領域データを出力する。また、出力画素のアドレスがステップＳＴ１４で算出した画像データのアドレスとなったとき、水平方向の変形処理が行われた画像データの出力を開始する。その後、１ライン分の画素の出力が完了する前に水平方向の変形処理が行われた画像データが終了したときは、無画像領域データを出力して画像回転処理を終了する。
【００７６】
例えば、Ｘ軸を中心として画像を回転させたことにより第２スキャンコンバータ２７から図７の（Ｆ）に示す画像の画像データが供給されたとき、水平方向の変形処理とマスク処理が行われた画像は、図７の（Ｉ）に示すようになる。また、Ｙ軸を中心として画像を回転させたことにより垂直方向の変形処理後の画像が図７の（Ｆ）に示すとき、水平方向の変形処理後の画像は図７の（Ｊ）に示すようになる。なお、図７の（Ｉ）（Ｊ）において、クロスハッチングで示す領域は、水平方向の変形処理によって生じた無画像領域であることを示している。
【００７７】
このように、第２スキャンコンバータ２７は、垂直方向の画像変形処理が行われた画像データと、画像変形処理によって生じた無画像領域に対応する無画像領域データを、変形処理によって生じたライン開始からの画像のオフセットの判別結果に基づいて選択する。また、選択されたデータをフレームメモリ２８に書き込み、書き込まれたデータの読み出し方向を変更して垂直水平スキャンコンバートを行う。さらに、垂直水平スキャンコンバート後のデータを用いて水平方向の画像変形処理が、画像回転角に応じて水平方向変形処理部２９で行われる。このため、フレームメモリ２８から読み出されたデータに不要な画像が含まれてしまうことがない。したがって、２パス方式トランスフォームを用いて画像の回転を行ったとき、所望の画像回転角で回転された画像を容易に得ることができる。
【００７８】
また、垂直方向の変形処理によって画像の上下反転や水平方向の変形処理によって画像の左右反転が生じる場合、フレームメモリ２８に対する書込アドレスや読出アドレスのアドレス反転処理が行われる。したがって、上下反転や左右反転が生じない画像回転角の範囲のみに対応するように各部を構成しても、アドレス反転処理を行うことで、画像の反転が生じる画像回転角で回転された画像を生成することが可能となり、画像処理装置を簡易な構成にできる。
【００７９】
さらに、水平方向変形処理部２９は、無画像領域データを用いてマスク処理を行うことで、水平方向の変形処理を行うことによって生じた無画像領域と垂直方向の変形処理を行うことによって生じた無画像領域を等しい画像、例えば黒画像として表示できる。
【００８０】
また、フレームメモリ２８としてＳＤＲＡＭを用いることができるので、例えばＳＲＡＭを用いて２次元の多点補間を行う１パス方式のトランスフォームに比べて、構成が簡単で画像処理装置を安価に構成できるようになる。
【００８１】
なお、第１の実施の形態では、垂直方向の変形処理を行ったのち水平方向の変形処理を行う場合を示したが、水平方向の変形処理を行ってから垂直方向の変形処理を行うようにしてもよい。
【００８２】
＜２．第２の実施の形態の構成＞
ところで、画像処理装置は、上述した一連の処理をプログラムにより実行するコンピュータ装置、例えばパーソナルコンピュータやサーバー等であってもよい。
【００８３】
図１１は、第２の実施の形態の構成として、上述した一連の処理をプログラムにより実行するコンピュータ装置の構成を例示した図である。コンピュータ装置６０のＣＰＵ６１は、ＲＯＭ６２、または記録部６８に記録されているコンピュータ・プログラムにしたがって各種の処理を実行する。
【００８４】
ＲＡＭ６３には、ＣＰＵ６１が実行するコンピュータ・プログラムやデータなどが適宜記憶される。これらのＣＰＵ６１、ＲＯＭ６２、およびＲＡＭ６３は、バス６４により相互に接続されている。
【００８５】
ＣＰＵ６１にはまた、バス６４を介して入出力インターフェース６５が接続されている。入出力インターフェース６５には、タッチパネルやキーボード、マウス、マイクロフォンなどの入力部６６、ディスプレイなどよりなる出力部６７が接続されている。ＣＰＵ６１は、入力部６６から入力される指令に対応して各種の処理を実行する。そして、ＣＰＵ６１は、処理の結果を出力部６７に出力する。
【００８６】
入出力インターフェース６５に接続されている記録部６８は、例えばハードディスクからなり、ＣＰＵ６１が実行するコンピュータ・プログラムや各種のデータを記録する。通信部６９は、インターネットやローカルエリアネットワークなどのネットワークやディジタル放送といった有線または無線の通信媒体を介して外部の装置と通信する。また、コンピュータ装置６０は、通信部６９を介してコンピュータ・プログラムを取得し、ＲＯＭ６２や記録部６８に記録してもよい。
【００８７】
ドライブ７０は、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどのリムーバブルメディア７２が装着されたとき、それらを駆動して、記録されているコンピュータ・プログラムやデータなどを取得する。取得されたコンピュータ・プログラムやデータは、必要に応じてＲＯＭ６２やＲＡＭ６３または記録部６８に転送される。
【００８８】
ＣＰＵ６１は、上述した一連の処理を行うコンピュータ・プログラムを読み出して実行することで、例えば入力部６６におけるユーザー操作の操作位置に応じて、ユーザーの指示に応じて回転された劣化の少ない画像を出力部６７で表示させることができる。
【００８９】
さらに、本発明は、上述した発明の実施の形態に限定して解釈されるべきではない。この発明の実施の形態は、例示という形態で本発明を開示しており、本発明の要旨を逸脱しない範囲で当業者が実施の形態の修正や代用をなし得ることは自明である。すなわち、本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【産業上の利用可能性】
【００９０】
この発明の画像処理装置と画像処理方法およびコンピュータ・プログラムでは、画像回転角に応じて、水平方向または垂直方向の何れか一方の画像変形処理が行われた画像データと、画像変形処理によって生じた無画像領域に対応する画像データである無画像領域データが、画像変形処理によって生じたライン開始からの画像のオフセットの判別結果に基づいて選択されて、選択されたデータがメモリに書き込まれる。また、メモリから読み出されたデータを用いて異なる方向の画像変形処理が行われる。
【００９１】
このため、メモリから読み出されたデータに不要な画像が含まれてしまうことがなく、２パス方式トランスフォームを用いて画像の回転を行ったとき、所望の画像回転角で回転された画像を容易に得ることができるので、コンピュータグラフィックスや映像編集システム等に好適である。
【符号の説明】
【００９２】
１０・・・画像処理装置、２０・・・画像データ処理部、２１・・・水平プロセス部、２２・・・第１スキャンコンバータ、２３・・・フレームメモリ、２４・・・インタレース／プログレッシブ変換部（Ｉ／Ｐ変換部）、２５・・・垂直プロセス部、２６・・・垂直方向変形処理部、２７・・・第２スキャンコンバータ、２９・・・水平方向変形処理部、５０・・・制御部、６０・・・コンピュータ装置、６１・・・ＣＰＵ、６２・・・ＲＯＭ、６３・・・ＲＡＭ、６４・・・バス、６５・・・入出力インターフェース、６６・・・入力部、６７・・・出力部、６８・・・記録部、６９・・・通信部、７０・・・ドライブ、７２・・・リムーバブルメディア、２７１・・・画像領域内データ処理部、２７２・・・ＦＩＦＯ、２７３・・・無画像領域データ生成部、２７４・・・データ書込調停部、２７５・・・メモリ制御部
【図１】
2010181936.tif 000003
【図２】
2010181936.tif 000004
【図３】
2010181936.tif 000005
【図４】
2010181936.tif 000006
【図５】
2010181936.tif 000007
【図６】
2010181936.tif 000008
【図７】
2010181936.tif 000009
【図８】
2010181936.tif 000010
【図９】
2010181936.tif 000011
【図１０】
2010181936.tif 000012
【図１１】
2010181936.tif 000013