(57)【要約】【課題】  合成される複数枚の画像間のサイズが異なる場合であってもユーザが所望する合成画像を好適に生成することができる画像処理装置及び画像処理方法を提供する。【解決手段】  合成コア４０１では、タイル分割された複数の画像を重ね合わせて合成画像を生成する。まず、タイルスレーブＩ／Ｆ４０３、４０４より入力された複数の画像はそれぞれＳＲＡＭ４０６、４０７に記憶される。ページ比較器４１１は、これらの複数の画像のサイズ情報をそれぞれ取得し、当該サイズ情報に基づいて、複数の画像が重ね合わせられる部分についてはＳＲＡＭ４０６、４０７に記憶されたそれぞれの画像をタイル単位で読み出して合成し、その他の部分についてはいずれかのタイル分割された画像等を設定して合成画像を生成する。【選択図】  図４
2005354525.tif 000002
【特許請求の範囲】
【請求項１】
複数の画像を重ね合わせて合成画像を生成する画像処理装置であって、
複数の画像をそれぞれ所定単位に分割して記憶する記憶手段と、
前記複数の画像のサイズ情報をそれぞれ取得する取得手段と、
前記サイズ情報に基づいて、前記複数の画像が重ね合わせられる部分については前記記憶手段に記憶されたそれぞれの画像を前記単位毎に読み出して合成し、前記複数の画像が重ね合わせられない部分については前記所定単位の任意の画像を設定して、前記複数の画像を重ね合わせた合成画像を生成する合成手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記サイズ情報に基づいて前記合成画像のサイズ情報を決定する決定手段をさらに備え、
前記合成手段は、前記複数の画像が重ね合わせられない部分について、前記合成画像のサイズ情報に基づいて、該複数の画像のいずれかの画像が存在する部分については前記記憶手段に記憶された該画像を前記単位毎に読み出して設定し、前記複数の画像のいずれも存在しない部分については前記所定単位の任意の画像を設定する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
複数の画像を重ね合わせて合成画像を生成する画像処理装置であって、
複数の画像をそれぞれ所定単位に分割して記憶する記憶手段と、
前記複数の画像のサイズ情報をそれぞれ取得する取得手段と、
前記サイズ情報に基づいて、前記複数の画像のうち一方の画像のサイズを他方の画像のサイズに変更する変更手段と、
サイズを同一にした前記複数の画像を重ね合わせた合成画像を生成する合成手段と
を備えることを特徴とする画像処理装置。
【請求項４】
前記変更手段が、前記複数の画像の少なくともいずれか１つの画像の縦方向のサイズ、横方向のサイズ又は解像度を拡大又は縮小することによって該画像のサイズを変更することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記変更手段によって画像のサイズが変更される画像の種類を識別する識別手段をさらに備え、
前記変更手段は、前記識別手段による前記画像の識別結果に基づいてサイズの変更処理を決定することを特徴とする請求項３又は４に記載の画像処理装置。
【請求項６】
前記複数の画像のサイズに関する情報を格納する格納手段をさらに備え、
前記取得手段は、前記格納手段に格納された情報に基づいて、前記複数の画像の縦方向及び横方向のサイズをそれぞれ取得する
ことを特徴とする請求項１から５までのいずれか１項に記載の画像処理装置。
【請求項７】
前記複数の画像のそれぞれのデータのヘッダー情報として付加されている画像のサイズに関する情報を抽出する抽出手段をさらに備え、
前記取得手段は、前記抽出手段によって抽出された情報に基づいて、前記複数の画像の縦方向及び横方向のサイズをそれぞれ取得する
ことを特徴とする請求項１から５までのいずれか１項に記載の画像処理装置。
【請求項８】
前記複数の画像のサイズが一致しない場合にユーザに報知する報知手段をさらに備えることを特徴とする請求項１から７までのいずれか１項に記載の画像処理装置。
【請求項９】
前記合成手段によって生成される合成画像のサイズを設定する設定手段をさらに備え、
前記合成手段は、前記設定手段によって設定されたサイズで前記合成画像を生成することを特徴とする請求項１から８までのいずれか１項に記載の画像処理装置。
【請求項１０】
前記報知手段によるユーザへの報知を許可又は禁止する報知切替手段をさらに備えることを特徴とする請求項８に記載の画像処理装置。
【請求項１１】
前記変更手段による画像のサイズの変更を許可又は禁止する変更切替手段をさらに備えることを特徴とする請求項３に記載の画像処理装置。
特許請求の範囲
【請求項１２】
複数の画像を重ね合わせて合成画像を生成する画像処理方法であって、
複数の画像をそれぞれ所定単位に分割して記憶装置に記憶する記憶工程と、
前記複数の画像のサイズ情報をそれぞれ取得する取得工程と、
前記サイズ情報に基づいて、前記複数の画像が重ね合わせられる部分については前記記憶装置に記憶されたそれぞれの画像を前記単位毎に読み出して合成し、前記複数の画像が重ね合わせられない部分については前記所定単位の任意の画像を設定して、前記複数の画像を重ね合わせた合成画像を生成する合成工程と
を有することを特徴とする画像処理方法。
【請求項１３】
前記サイズ情報に基づいて前記合成画像のサイズ情報を決定する決定工程をさらに有し、
前記合成工程は、前記複数の画像が重ね合わせられない部分について、前記合成画像のサイズ情報に基づいて、該複数の画像のいずれかの画像が存在する部分については前記記憶装置に記憶された該画像を前記単位毎に読み出して設定し、前記複数の画像のいずれも存在しない部分については前記所定単位の任意の画像を設定する
ことを特徴とする請求項１２に記載の画像処理方法。
【請求項１４】
複数の画像を重ね合わせて合成画像を生成する画像処理方法であって、
複数の画像をそれぞれ所定単位に分割して記憶装置に記憶する記憶工程と、
前記複数の画像のサイズ情報をそれぞれ取得する取得工程と、
前記サイズ情報に基づいて、前記複数の画像のうち一方の画像のサイズを他方の画像のサイズに変更する変更工程と、
サイズを同一にした前記複数の画像を重ね合わせた合成画像を生成する合成工程と
を有することを特徴とする画像処理方法。
【請求項１５】
複数の画像を重ね合わせて合成画像を生成するコンピュータに、
複数の画像をそれぞれ所定単位に分割して記憶装置に記憶する記憶手順と、
前記複数の画像のサイズ情報をそれぞれ取得する取得手順と、
前記サイズ情報に基づいて、前記複数の画像が重ね合わせられる部分については前記記憶装置に記憶されたそれぞれの画像を前記単位毎に読み出して合成し、前記複数の画像が重ね合わせられない部分については前記所定単位の任意の画像を設定して、前記複数の画像を重ね合わせた合成画像を生成する合成手順と
を実行させるためのプログラム。
【請求項１６】
複数の画像を重ね合わせて合成画像を生成するコンピュータに、
複数の画像をそれぞれ所定単位に分割して記憶装置に記憶する記憶手順と、
前記複数の画像のサイズ情報をそれぞれ取得する取得手順と、
前記サイズ情報に基づいて、前記複数の画像のうち一方の画像のサイズを他方の画像のサイズに変更する変更手順と、
サイズを同一にした前記複数の画像を重ね合わせた合成画像を生成する合成手順と
を実行させるためのプログラム。
【請求項１７】
請求項１５又は１６に記載のプログラムを格納したことを特徴とするコンピュータ読み取り可能な記録媒体。  
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サイズの異なる複数枚の画像を合成して合成画像を作成する画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
従来から、複数枚の画像を合成して合成画像を生成する方法が知られている（例えば、特許文献１参照。）。特許文献１に記載の方法によれば、入力画像を２つのタイル画像に分割して、分割されたそれぞれのタイル画像をメモリに格納する。そして、メモリに格納されたタイル画像をそれらのアドレスを管理する管理テーブルを参照しながら読み出して合成画像を生成する。そして、特許文献１に記載の方法では、メモリに格納されたタイル画像の読み出す際に読み出し順序を制御することによって、より少ないメモリ容量で合成画像を生成することを実現している。
【０００３】
また、従来の画像合成処理では、合成される複数の画像のサイズが同一であることを前提にこれらのデータを重ね合わせて合成画像が生成されていた（例えば、特許文献２参照。）。図１は、一般的な画像合成処理の概要を説明するための図である。すなわち、従来は、情報伝達用の印刷データ（文書データ）１１と機能表示用の印刷データ（例えば、社外秘を表す「秘」のスタンプの印刷データ）１２のサイズとが同一であることを前提として合成画像である印刷データ１３が適切に生成された。
【特許文献１】特開２００４−０８０１７５号公報
【特許文献２】特開２００２−３３３９５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述したような従来の画像合成処理では、サイズが同一の複数枚の画像を合成することを前提としている。そのため、異なるサイズの画像が入力された場合であっても特にエラーを検出することなく画像合成を行ってしまう可能性があり、結果としてユーザが期待している合成画像を適切に生成することができない場合が生じるという問題があった。
【０００５】
図２は、従来の画像合成処理方法を用いて、サイズが異なる２枚の画像の合成処理を行う場合の一例を説明するための図である。前述したように、従来の画像合成処理では、合成される複数枚の画像のサイズは特に意識されずに合成処理が行われていたため、本来は同一サイズではないにもかかわらず、いずれか一方の画像の大きさの合成画像として合成処理が行われてしまう可能性があった。例えば、図２に示すように、横サイズの大きい方の画像のサイズに合わせた合成処理が行われてしまう場合があった。このような場合、同一タイル（或いは同一ピクセル）が正しく合成されない場合があるため、合成された結果、ユーザが期待されていない合成画像を出力してしまう可能性があった。
【０００６】
本発明は、このような事情を考慮してなされたものであり、合成される複数枚の画像間のサイズが異なる場合であってもユーザが所望する合成画像を好適に生成することができる画像処理装置及び画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明は、複数の画像を重ね合わせて合成画像を生成する画像処理装置であって、
複数の画像をそれぞれ所定単位に分割して記憶する記憶手段と、
前記複数の画像のサイズ情報をそれぞれ取得する取得手段と、
前記サイズ情報に基づいて、前記複数の画像が重ね合わせられる部分については前記記憶手段に記憶されたそれぞれの画像を前記単位毎に読み出して合成し、前記複数の画像が重ね合わせられない部分については前記所定単位の任意の画像を設定して、前記複数の画像を重ね合わせた合成画像を生成する合成手段と
を備えることを特徴とする。
【０００８】
また、本発明に係る上記画像処理装置は、
前記サイズ情報に基づいて前記合成画像のサイズ情報を決定する決定手段をさらに備え、
前記合成手段は、前記複数の画像が重ね合わせられない部分について、前記合成画像のサイズ情報に基づいて、該複数の画像のいずれかの画像が存在する部分については前記記憶手段に記憶された該画像を前記単位毎に読み出して設定し、前記複数の画像のいずれも存在しない部分については前記所定単位の任意の画像を設定する
ことを特徴とする。
【０００９】
さらに、本発明は、複数の画像を重ね合わせて合成画像を生成する画像処理装置であって、
複数の画像をそれぞれ所定単位に分割して記憶する記憶手段と、
前記複数の画像のサイズ情報をそれぞれ取得する取得手段と、
前記サイズ情報に基づいて、前記複数の画像のうち一方の画像のサイズを他方の画像のサイズに変更する変更手段と、
サイズを同一にした前記複数の画像を重ね合わせた合成画像を生成する合成手段と
を備えることを特徴とする。
【００１０】
さらにまた、本発明は、複数の画像を重ね合わせて合成画像を生成する画像処理方法であって、
複数の画像をそれぞれ所定単位に分割して記憶装置に記憶する記憶工程と、
前記複数の画像のサイズ情報をそれぞれ取得する取得工程と、
前記サイズ情報に基づいて、前記複数の画像が重ね合わせられる部分については前記記憶装置に記憶されたそれぞれの画像を前記単位毎に読み出して合成し、前記複数の画像が重ね合わせられない部分については前記所定単位の任意の画像を設定して、前記複数の画像を重ね合わせた合成画像を生成する合成工程と
を有することを特徴とする。
【００１１】
さらにまた、本発明に係る上記画像処理方法は、前記サイズ情報に基づいて前記合成画像のサイズ情報を決定する決定工程をさらに有し、
前記合成工程は、前記複数の画像が重ね合わせられない部分について、前記合成画像のサイズ情報に基づいて、該複数の画像のいずれかの画像が存在する部分については前記記憶装置に記憶された該画像を前記単位毎に読み出して設定し、前記複数の画像のいずれも存在しない部分については前記所定単位の任意の画像を設定する
ことを特徴とする。
【００１２】
さらにまた、本発明は、複数の画像を重ね合わせて合成画像を生成する画像処理方法であって、
複数の画像をそれぞれ所定単位に分割して記憶装置に記憶する記憶工程と、
前記複数の画像のサイズ情報をそれぞれ取得する取得工程と、
前記サイズ情報に基づいて、前記複数の画像のうち一方の画像のサイズを他方の画像のサイズに変更する変更工程と、
サイズを同一にした前記複数の画像を重ね合わせた合成画像を生成する合成工程と
を有することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、合成される複数枚の画像間のサイズが異なる場合であってもユーザが所望する合成画像を好適に生成することができ、従来のようにユーザが期待していない合成画像を生成することはない。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して、本発明の一実施形態に係る複数の画像を重ね合わせることにより画像の合成処理を行う画像処理装置の構成及びその動作について詳細に説明する。
【００１５】
図３は、本発明の一実施形態に係る画像処理装置の合成ユニットの基本的な構成を示すブロック図である。尚、図３に示す合成ユニット（Ｂｌｅｎｄ  Ｕｎｉｔ）３０１には、不図示の入力ユニット、画像処理ユニット及びその他のユニット等が接続されて、画像処理装置が構成される。
【００１６】
図３に示す合成ユニット３０１において、３０２は入力された画像を合成処理する合成コア（Ｂｌｅｎｄ  Ｃｏｒｅ）、３０３は合成コア３０２に適宜合成用の画像を送り込むタイルスレーブ・バッファコントローラ（Ｔｉｌｅ  Ｓｌａｖｅ  Ｂｕｆｆｅｒ  Ｃｏｎｔｒｏｌｌｅｒ）である。また、２０４は被合成画像データ側（Ｃｈ０）のタイルスレーブＩ／Ｆ（Ｔｉｌｅ  Ｓｌａｖｅ  Ｉ／Ｆ）、２０５は合成画像データ側（Ｃｈ１）のタイルスレーブＩ／Ｆ（Ｔｉｌｅ  Ｓｌａｖｅ  Ｉ／Ｆ）、２０６はＣｈ０側のＳＲＡＭ、２０７はＣｈ１側のＳＲＡＭである。さらに、２０８はタイルマスター・バッファコントローラ（Ｔｉｌｅ  Ｍａｓｔｅｒ  Ｂｕｆｆｅｒ  Ｃｏｎｔｒｏｌｌｅｒ）、３０９はタイルマスターＩ／Ｆ（Ｔｉｌｅ  Ｍａｓｔｅｒ  Ｉ／Ｆ）である。
【００１７】
図３に示す合成ユニット３０１においては、２つのタイルスレーブＩ／Ｆ３０４、３０５のそれぞれから、被合成画像データ（Ｃｈ０側）と合成画像データ（Ｃｈ１側）が入力される。入力された画像データは、合成コア３０２において所定の合成処理方法に従って画像の合成処理される。そして、合成された画像データは、タイルマスターＩ／Ｆ３０９から次のユニットに対して出力される。
【００１８】
＜第１の実施形態＞
以下、図３に示す合成ユニットを用いた第１の実施形態に係る画像合成処理の詳細について説明する。図４は、図３に示す合成ユニット３０１におけるタイルスレーブ・バッファコントローラ３０３の第１の実施形態に係る細部構成を示すブロック図である。
【００１９】
尚、図４において、合成ユニット４０１、タイルスレーブ・バッファコントローラ４０２、タイルスレーブＩ／Ｆ４０３、４０４、合成コア４０５及びＳＲＡＭ４０６、４０７は、それぞれ図３の合成ユニット３０１、タイルスレーブ・バッファコントローラ３０３、タイルスレーブＩ／Ｆ３０４、３０５、合成コア３０２及びＳＲＡＭ３０６、３０７に相当する。
【００２０】
また図４において、４０８はＣｈ０側のタイルスレーブ・コントローラ（Ｔｉｌｅ  Ｓｌａｖｅ  Ｃｏｎｔｒｏｌｌｅｒ）、４０９はＣｈ１側のタイルスレーブ・コントローラである。また、４１０はバッファコントローラ（Ｂｕｆｆｅｒ  Ｃｏｎｔｒｏｌｌｅｒ）、４１１はページ比較器（Ｐａｇｅ  Ｃｏｍｐａｒａｔｏｒ）、４１２はタイルカウンター（Ｔｉｌｅ  Ｃｏｕｎｔｅｒ）である。さらに、４１３はユニットステータスコントローラ（Ｕｎｉｔ  Ｓｔａｔｕｓ  Ｃｏｎｔｒｏｌｌｅｒ：ＵＳＣ）、４１４はＵＢｕｓである。
【００２１】
図５は、本発明の第１の実施形態に係る画像合成処理手順を説明するためのフローチャートである。図４において、被合成画像データはＣｈ０側のタイルスレーブＩ／Ｆ４０３に入力され、合成画像データはＣｈ１側のタイルスレーブＩ／Ｆ４０４に入力される（ステップＳ１１）。入力された画像データは、それぞれのＳＲＡＭ４０６、４０７にタイル単位で格納される（ステップＳ１２）。ここで、合成コア４０５における合成処理の際には、被合成画像データと合成画像データは同サイズでなければならない。そこで、タイルスレーブ・バッファコントローラ４０２内のページ比較器４１１によって、入力された被合成画像データと合成画像データとが同サイズであるか否かが判定される（ステップＳ１３）。
【００２２】
ここで、この処理における判定材料となる２つの画像データのサイズは事前にレジスタ（Ｒｅｇｉｓｔｅｒ）へ格納されている。そこで本実施形態では、ＵＢｕｓ４１４を介してレジスタに格納された画像のサイズ値を読み取ることにより、ページ比較器４１１でのサイズの比較処理を実現するものとする。
【００２３】
ＳＲＡＭ４０６、４０７にタイル単位で格納された被合成画像データ及び画像合成データは、タイルスレーブ・バッファコントローラ４０２による制御に従って、所定のデータが読み出され（ステップＳ１４）、合成コア４０５に転送される（ステップＳ１５）。ここで、レジスタより読み取られた値は、タイルカウンター４１２において転送中（処理中）のタイル数をカウントする際にも使用される。図６は、本発明の一実施形態に係る画像処理装置による画像合成処理の概要を説明するための図である。尚、本実施形態では、一例として複数の画像のそれぞれの縦方向及び横方向の最大のサイズを合成画像のサイズとして決定するが、ユーザが任意に設定するようにしてもよい。また、後述する他の実施形態でも同様である。
【００２４】
合成処理では、設定されたサイズで合成画像が生成される。例えば、図６に示すように、被合成画像データ（Ｃｈ０）の横サイズが合成画像データ（Ｃｈ１）の横サイズよりも大きい場合は、タイルカウンター４１２のカウント数を参照して、合成画像データ（Ｃｈ１）の横サイズ分が終了するまでは、タイルスレーブ・コントローラ４０８、４０９による両画像データの読み出し、及び合成コア４０５への転送が行われる。そして、タイルカウンター４１２のカウント数を参照して、合成画像データ（Ｃｈ１）の横サイズ分が終了した時点で、合成画像データ（Ｃｈ１）のタイルスレーブ・コントローラ４０９による読み出し、及び転送が一時中断される。そして、被合成画像データ（Ｃｈ０）の横サイズ分が終了するまでタイルスレーブ・コントローラ４０８による被合成画像データ（Ｃｈ０）のみの読み出し、及び転送が行われることとなる。
【００２５】
合成コア４０５では、被合成画像データ（Ｃｈ０）と合成画像データ（Ｃｈ１）の両データを受け取った場合には通常の合成処理が行われる（ステップＳ１６）。その後、合成画像データは、タイルマスターＩ／Ｆ３０９から次のユニットに対して出力される（ステップＳ１７）。尚、合成コア２０２は、片側のデータ（本実施形態では、被合成画像データ（Ｃｈ０））のみを受け取った場合には、入力された画像データ（本実施形態では、被合成画像データ（Ｃｈ０））を合成処理することなく出力する。
【００２６】
一方、縦サイズについても同様にして、サイズが異なる場合には、その差分は大きいサイズの画像データをその部分だけ出力する。例えば、図６に示す例では、合成画像データの差分部分が合成処理されることなく出力される。
【００２７】
尚、被合成画像データも合成画像データも存在しない部分については、任意の値（例えば、０の値やその近傍の画素値等でもよい。）を出力するものとする。
【００２８】
上述したように、本実施形態では、合成ユニット４０１への入力画像データが一方の画像データのみの場合は、その画像データに対する合成処理をスルーさせて次のユニットに出力するようにした。しかし、これ以外にも、横（縦）軸の最後の部分に合成処理された画像データを出力する方法や、任意の色を設定可能としてその設定値を出力する方法等を用いてもよい。
【００２９】
尚、被画像合成データと画像合成データのサイズが違う場合には画像合成前或いは画像合成後等の所定のタイミングにおいてメッセージ等でその旨をユーザに報知するようにしてもよい。これにより、合成後の画像におけるデザインの修正が容易になるととともに、当該合成処理がサイズの同じ画像を合成するものではないことをユーザに通知することができる。
【００３０】
また、本実施形態では、上述したように、ページ比較器４１１を用いて被合成画像データと合成画像データとのサイズを比較し、タイルカウンター４１２によって被合成画像データ（Ｃｈ０）と合成画像データ（Ｃｈ１）の転送タイル数をカウントした。これによって、２つの画像データのサイズが異なっている場合であっても合成処理が中断されたり、期待しない合成画像が出力されるようなことはなく、適切な画像合成処理が可能になった。
【００３１】
このように、本実施形態では、合成されるそれぞれの画像データのサイズを意識した合成処理を行っているので、サイズが異なる場合であっても、２つの画像データのサイズ内であれば出力画像はユーザが期待したものとなる。すなわち、従来の合成処理では、ユーザが期待されていない合成画像が出力される可能性があったが、本実施形態に係る合成処理ではその可能性がなくなり、期待された通りの合成結果を好適に得ることができる。
【００３２】
＜第２の実施形態＞
以下、図３に示す合成ユニットを用いた第２の実施形態に係る画像合成処理の詳細について説明する。第２の実施形態では、第１の実施形態と異なり、２つの画像データのサイズを比較する際に必要な値をレジスタで保持しておくのではなく、パケットのヘッダー情報の一部として付加されている場合について説明する。
【００３３】
図７は、図３に示す合成ユニット３０１におけるタイルスレーブ・バッファコントローラ３０３の第２の実施形態に係る細部構成を示すブロック図である。尚、図７において、合成ユニット７０１、タイルスレーブ・バッファコントローラ７０２、タイルスレーブＩ／Ｆ７０３、７０４、合成コア７０５及びＳＲＡＭ７０６、７０７は、それぞれ図３の合成ユニット３０１、タイルスレーブ・バッファコントローラ３０３、タイルスレーブＩ／Ｆ３０４、３０５、合成コア３０２及びＳＲＡＭ３０６、３０７に相当する。
【００３４】
また、図７において、７０８はＣｈ０側のタイルスレーブ・コントローラ、７０９はＣｈ１側のタイルスレーブ・コントローラである。また、７１０はバッファコントローラ、７１１はページ比較器、７１２はタイルカウンター、４１３はユニットステータスコントローラ（ＵＳＣ）である。
【００３５】
図７において、被合成画像データはＣｈ０側のタイルスレーブＩ／Ｆ７０３に入力され、合成画像データはＣｈ１側のタイルスレーブＩ／Ｆ７０４に入力される。入力された画像データは、それぞれのＳＲＡＭ７０６、７０７にタイル単位で格納される。ここで、合成コア７０５における合成処理の際には、被合成画像データと合成画像データは同サイズでなければならない。そこで、タイルスレーブ・バッファコントローラ７０２内のページ比較器７１１によって、入力された被合成画像データと合成画像データとが同サイズであるか否かが判定される。
【００３６】
本実施形態では、第１の実施形態と異なり、ページ比較器７１１の処理における判定材料として、入力される画像データのパケットのヘッダーに格納されているサイズについての情報が用いられ、このサイズ情報が比較される。尚、このサイズ情報は、タイルカウンター７１２において転送中（処理中）のタイル数をカウントする際にも使用される。
【００３７】
例えば、図６に示すように、被合成画像データ（Ｃｈ０）の横サイズが合成画像データ（Ｃｈ１）の横サイズよりも大きい場合は、タイルカウンター７１２のカウント数を参照して、合成画像データ（Ｃｈ１）の横サイズ分が終了するまでは、タイルスレーブ・コントローラ７０８、７０９による両画像データの読み出し、及び合成コア７０５への転送が行われる。そして、タイルカウンター７１２のカウント数を参照して、合成画像データ（Ｃｈ１）の横サイズ分が終了した時点で、合成画像データ（Ｃｈ１）のタイルスレーブ・コントローラ７０９による読み出し、及び転送が一時中断される。そして、被合成画像データ（Ｃｈ０）の横サイズ分が終了するまでタイルスレーブ・コントローラ７０８による被合成画像データ（Ｃｈ０）のみの読み出し、及び転送が行われることとなる。
【００３８】
合成コア７０５は、被合成画像データ（Ｃｈ０）と合成画像データ（Ｃｈ１）の両データを受け取る場合は通常の合成処理を行う。また、合成コア７０５は、一方のデータ（本実施形態では、被合成画像データ（Ｃｈ０））のみを受け取った場合は、入力された画像データ（本実施形態では、被合成画像データ（Ｃｈ０））を処理することなく出力する。
【００３９】
尚、縦サイズについても同様に、サイズが異なる場合は、その差分は大きいサイズの画像データが出力される。すなわち、本実施形態では、合成画像データの方が出力される。また、被合成画像データも合成画像データも存在しない部分については、任意の値を出力するものとする。
【００４０】
上述したように、本実施形態では、合成ユニット７０１への入力画像データが一方の画像データのみの場合は合成処理をすることなく出力することとした。しかし、これ以外にも、横（縦）軸の最後に合成処理された画像データを出力する方法や、任意の色を設定可能としてその設定値を出力する方法を用いてもよい。
【００４１】
尚、被画像合成データと画像合成データのサイズが違う場合には画像合成前或いは画像合成後等の所定のタイミングにおいてメッセージ等でその旨をユーザに報知するようにしてもよい。これにより、合成後の画像のデザインの修正が容易になるととともに、当該合成処理がサイズの同じ画像を合成するものではないことをユーザに通知することができる。
【００４２】
また、本実施形態では、上述したように、ページ比較器７１１を用いて被合成画像データと合成画像データとのサイズを比較し、タイルカウンター７１２によって被合成画像データ（Ｃｈ０）と合成画像データ（Ｃｈ１）の転送タイル数をカウントした。これによって、２つの画像データのサイズが異なっている場合であっても合成処理が中断されたり、期待しない合成画像が出力されるようなことはなく、適切な画像合成処理が可能になった。
【００４３】
このように、本実施形態では、合成されるそれぞれの画像データのサイズを意識した合成処理を行っているので、サイズが異なる場合であっても、２つの画像データのサイズ内であれば出力画像はユーザが期待したものとなる。すなわち、従来の合成処理では、ユーザが期待されていない合成画像が出力される可能性があったが、本実施形態に係る合成処理ではその可能性がなくなり、期待された通りの合成結果を好適に得ることができる。
【００４４】
＜第３の実施形態＞
第３の実施形態では、入力画像のサイズ比較や入力画像の種類識別を行い、入力画像のサイズ変更方法を決める判定回路を追加することにより、２つの異なるサイズの画像に対して最適に画像合成を行う処理について説明する。すなわち、画像処理装置中に２つの入力画像のサイズ比較回路、入力画像の種類識別回路、或いは出力画像のサイズ設定回路を備え、これら回路の結果を基に入力画像のサイズを合わせるための判定を行い、その判定結果に従って入力画像のサイズ拡大・縮小又は解像度拡大・縮小を行うことで異なるサイズの画像に対しても最適に画像合成が行えるようにする。
【００４５】
図８は、図３に示す合成ユニット３０１におけるタイルスレーブ・バッファコントローラ３０３の第３の実施形態に係る細部構成を示すブロック図である。尚、図８において、合成ユニット８０１、タイルスレーブ・バッファコントローラ８０２、タイルスレーブＩ／Ｆ８０３、８０４、合成コア８０５及びＳＲＡＭ８０６、８０７は、それぞれ図３の合成ユニット３０１、タイルスレーブ・バッファコントローラ３０３、タイルスレーブＩ／Ｆ３０４、３０５、合成コア３０２及びＳＲＡＭ３０６、３０７に相当する。また図８において、８０８はＣｈ０側のタイルスレーブ・コントローラ、８０９はＣｈ１側のタイルスレーブ・コントローラである。また、８１０はバッファコントローラ、８１１はページ比較器、８１２はＵＢｕｓ、８１３はユニットステータスコントローラ（ＵＳＣ）である。
【００４６】
図８に示す合成ユニット８０１において、被合成画像データはＣｈ０側のタイルスレーブＩ／Ｆ８０３に入力され、合成画像データはＣｈ１側のタイルスレーブＩ／Ｆ８０４に入力される。入力された画像データは、それぞれのＳＲＡＭ８０６、８０７にタイル単位で格納される。合成コア８０５では、被合成画像データと合成画像データは同サイズでなければならない。そこで、タイルスレーブ・バッファコントローラ８０２内のページ比較器８１１において、まず入力された被合成画像データと合成画像データとが同サイズであるか否かが判定される。
【００４７】
ここで、この処理における判定材料となる２つの画像データのサイズは事前にレジスタへ格納されている。そこで本実施形態では、ＵＢｕｓ８１２を介してレジスタに格納された値を読み取ることにより、ページ比較器８１１でのサイズ比較を実現する。
【００４８】
ここで、２つの画像データが同サイズの場合は合成コア８０５において従来の合成処理方法と同様に合成処理を行うことができる。従って、タイルスレーブ・バッファコントローラ８０２は、特別な制御をすることなく合成コア８０５への画像データ転送のための制御をする。
【００４９】
一方、２つの画像データが異なる場合はそのままでは合成コア８０５において適切な合成処理が行うことができない。そこで、本実施形態では、タイルスレーブ・バッファコントローラ８０２が、２つの画像データのサイズを揃えるために画像データのサイズの拡大・縮小処理を行うユニット、又は画像データの解像度の拡大・縮小処理を行うユニットに対して、いずれかの画像データを転送する。尚、本実施形態では被合成画像データが基準となるので、基本的には合成画像データを転送するが、これだけに限らず被合成画像データを転送してもよいし、両データを転送して別のサイズに変換してもよい。尚、当該処理は、ページ比較器８１１がサイズの変更の対象となる画像データを出力したユニットへ転送先変更の指示を行うことにより実現する。
【００５０】
そして、画像データのサイズの変更処理と共に、変更される画像データのサイズが格納されているレジスタの値を変更後のサイズに書き換え、再び合成ユニット８０１へ画像データが入力される。
【００５１】
タイルスレーブ・バッファコントローラ８０２の処理としては、被画像合成データをＣｈ０側のＳＲＡＭ８０６へ、画像合成データをＣｈ１側のＳＲＡＭ８０７へピクセル単位で一旦格納しながら、合成されるべき２つの画像データ（ピクセル）が合成コア８０５へ転送可能となったときに、各ＳＲＡＭ８０６、８０７からその画像データ（ピクセル）を取り出す。
【００５２】
上述したように、本実施形態によれば、ページ比較器８１１により被合成画像データと合成画像データのサイズを比較することで、合成される２つの画像データのサイズが異なる場合であっても処理を中断することなく、適切な画像合成処理が可能である。
【００５３】
尚、被画像合成データと画像合成データのサイズが違う場合には画像合成前或いは画像合成後等の所定のタイミングにおいてメッセージ等でその旨をユーザに報知するようにしてもよい。これにより、合成後の画像のデザインの修正が容易になるととともに、当該合成処理がサイズの同じ画像を合成するものではないことをユーザに通知することができる。
【００５４】
＜第４の実施形態＞
以下、図３に示す合成ユニットを用いた第４の実施形態に係る画像合成処理の詳細について説明する。第４の実施形態では、第３の実施形態と異なり、２つの画像データのサイズを比較する際に必要な値をレジスタで保持しておくのではなく、パケットのヘッダー情報の一部として付加されている場合について説明する。
【００５５】
図９は、図３に示す合成ユニット３０１におけるタイルスレーブ・バッファコントローラ３０３の第４の実施形態に係る細部構成を示すブロック図である。尚、図９において、合成ユニット９０１、タイルスレーブ・バッファコントローラ９０２、タイルスレーブＩ／Ｆ９０３、９０４、合成コア９０５及びＳＲＡＭ９０６、９０７は、それぞれ図３の合成ユニット３０１、タイルスレーブ・バッファコントローラ３０３、タイルスレーブＩ／Ｆ３０４、３０５、合成コア３０２及びＳＲＡＭ３０６、３０７に相当する。
【００５６】
また、図９において、９０８はＣｈ０側のタイルスレーブ・コントローラ、９０９はＣｈ１側のタイルスレーブ・コントローラである。また、９１０はバッファコントローラ、９１１はページ比較器、９１２はユニットステータスコントローラ（ＵＳＣ）である。
【００５７】
図９において、被合成画像データはＣｈ０側のタイルスレーブＩ／Ｆ９０３に入力され、合成画像データはＣｈ１側のタイルスレーブＩ／Ｆ９０４に入力される。入力された画像データは、それぞれのＳＲＡＭ９０６、９０７にタイル単位で格納される。ここで、合成コア９０５における合成処理の際には、被合成画像データと合成画像データは同サイズでなければならない。そこで、タイルスレーブ・バッファコントローラ９０２内のページ比較器９１１によって、入力された被合成画像データと合成画像データとが同サイズであるか否かが判定される。
【００５８】
本実施形態では、第３の実施形態と異なり、ページ比較器９１１の処理における判定材料として、入力される画像データのパケットのヘッダーに格納されているサイズについての情報が用いられ、このサイズ情報が比較される。
【００５９】
ここで、２つの画像データが同サイズの場合は合成コア９０５において従来の合成処理方法と同様に合成処理を行うことができる。従って、タイルスレーブ・バッファコントローラ９０２は、特別な制御をすることなく合成コア９０５への画像データ転送のための制御をする。
【００６０】
一方、２つの画像データが異なる場合はそのままでは合成コア９０５において適切な合成処理が行うことができない。そこで、本実施形態では、タイルスレーブ・バッファコントローラ９０２が、２つの画像データのサイズを揃えるために画像データのサイズの拡大・縮小処理を行うユニット、又は画像データの解像度の拡大・縮小処理を行うユニットに対して、いずれかの画像データを転送する。尚、本実施形態では被合成画像データが基準とするので、基本的には合成画像データを転送するが、これだけに限らず被合成画像データを転送してもよいし、両データを転送して別のサイズに変換してもよい。尚、当該処理は、ページ比較器８１１がサイズの変更の対象となる画像データを出力したユニットへ転送先変更の指示を行うことにより実現する。
【００６１】
そして、画像データのサイズの変更処理と共に、変更される画像データのサイズが格納されているレジスタの値を変更後のサイズに書き換え、再び合成ユニット９０１へ画像データが入力される。
【００６２】
タイルスレーブ・バッファコントローラ９０２の処理としては、被画像合成データをＣｈ０側のＳＲＡＭ９０６へ、画像合成データをＣｈ１側のＳＲＡＭ９０７へピクセル単位で一旦格納しながら、合成されるべき２つの画像データ（ピクセル）が合成コア９０５へ転送可能となったときに、各ＳＲＡＭ９０６、９０７からその画像データ（ピクセル）を取り出す。
【００６３】
上述したように、本実施形態によれば、ページ比較器９１１により被合成画像データと合成画像データのサイズを比較することで、合成される２つの画像データのサイズが異なる場合であっても処理を中断することなく、適切な画像合成処理が可能である。
【００６４】
尚、被画像合成データと画像合成データのサイズが違う場合には画像合成前或いは画像合成後等の所定のタイミングにおいてメッセージ等でその旨をユーザに報知するようにしてもよい。これにより、合成後の画像のデザインの修正が容易になるととともに、当該合成処理がサイズの同じ画像を合成するものではないことをユーザに通知することができる。
【００６５】
＜第５の実施形態＞
第５の実施形態では、第３の実施形態におけるレジスタに画像データのサイズだけを保持するのではなく、画像データの種類（例えば、文字や絵の区別）も保持できる構成とする。そして、ページ比較器により画像データの種類を識別し、その種類によりサイズ変更方法の選択を行い、ここで選択されたサイズ変更方法に従ってサイズ変更を行うためにそれぞれのユニットへ画像データを転送する。
【００６６】
例えば、合成される画像が文字画像の場合は解像度を大きくすると画質が落ちてしまい適切な処理とはいえない。従って、画像を拡大する際の処理としてはサイズの拡大のみとする。一方、合成される画像が絵や自然画像の場合は解像度を大きくしても文字の場合と比較して画質の粗さが目立たない。従って、解像度を拡大する方法も可能とする。但し、変更前と変更後の画像サイズに大きな差がある場合は解像度の拡大は不適切とするようにしてもよい。
【００６７】
また、画像データの縮小に関しては、例えば、縮小の比率が大きい場合はサイズの縮小のみとし、縮小の比率が小さい場合は解像度を縮小する方法も可能である。
【００６８】
上述したように、ページ比較器によって画像データの種類を識別し、その識別結果によりサイズ変更方法を選択することで、サイズ変更を適切に行うことが可能となる。
【００６９】
＜第６の実施形態＞
本実施形態では、第１の実施形態に係るタイルスレーブ・バッファコントローラ４０２内、又は第３の実施形態に係るタイルスレーブ・バッファコントローラ８０２内に１ページ分の画像を転送し終えたことを判定する判定回路を設ける。これにより、データ転送が終了したことが確認することができる。さらに確認した際にはメッセージ等でその旨をユーザに報知するようにしてもよい。
【００７０】
或いは、図２に示すタイルマスター・バッファコントローラ３０８に１ページ分の画像が合成し終えたことを判定する判定回路を設けるようにして同様である。
【００７１】
＜その他の実施形態＞
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００７２】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【００７３】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００７４】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【００７５】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【００７６】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００７７】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００７８】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００７９】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【００８０】
【図１】一般的な画像合成処理の概要を説明するための図である。
【図２】従来の画像合成処理方法を用いて、サイズが異なる２枚の画像の合成処理を行う場合の一例を説明するための図である。
【図３】本発明の一実施形態に係る画像処理装置の合成ユニットの基本的な構成を示すブロック図である。
【図４】図３に示す合成ユニット３０１におけるタイルスレーブ・バッファコントローラ３０３の第１の実施形態に係る細部構成を示すブロック図である。
【図５】本発明の第１の実施形態に係る画像合成処理手順を説明するためのフローチャートである。
【図６】本発明の一実施形態に係る画像処理装置による画像合成処理の概要を説明するための図である。
【図７】図３に示す合成ユニット３０１におけるタイルスレーブ・バッファコントローラ３０３の第２の実施形態に係る細部構成を示すブロック図である。
【図８】図３に示す合成ユニット３０１におけるタイルスレーブ・バッファコントローラ３０３の第３の実施形態に係る細部構成を示すブロック図である。
【図９】図３に示す合成ユニット３０１におけるタイルスレーブ・バッファコントローラ３０３の第４の実施形態に係る細部構成を示すブロック図である。
【符号の説明】
【００８１】
３０１、４０１、７０１、８０１、９０１  合成ユニット
３０２、４０５、７０５、８０５、９０５  合成コア
３０３、４０２、７０２、８０２、９０２  タイルスレーブ・バッファコントローラ
３０４、３０５、４０３、４０４、７０３、７０４、８０３、８０４、９０３、９０４  タイルスレーブＩ／Ｆ
３０６、３０７、４０６、４０７、７０６、７０７、８０６、８０７、９０６、９０７  ＳＲＡＭ
３０８  タイルマスター・バッファコントローラ
３０９  タイルマスターＩ／Ｆ
４０８、４０９、７０８、７０９、８０８、８０９、９０８、９０９  タイルスレーブ・コントローラ
４１０、７１０、８１０、９１０  バッファコントローラ
４１１、７１１、８１１、９１１  ページ比較器
４１２、７１２  タイルカウンター
４１３、７１３、８１３、９１２  ＵＳＣ
４１４、８１２  ＵＢｕｓ
【図１】
2005354525.tif 000003
【図２】
2005354525.tif 000004
【図３】
2005354525.tif 000005
【図４】
2005354525.tif 000006
【図５】
2005354525.tif 000007
【図６】
2005354525.tif 000008
【図７】
2005354525.tif 000009
【図８】
2005354525.tif 000010
【図９】
2005354525.tif 000011