JP3612035B2 - 画像処理装置 - Google Patents
画像処理装置 Download PDFInfo
- Publication number
- JP3612035B2 JP3612035B2 JP2001133332A JP2001133332A JP3612035B2 JP 3612035 B2 JP3612035 B2 JP 3612035B2 JP 2001133332 A JP2001133332 A JP 2001133332A JP 2001133332 A JP2001133332 A JP 2001133332A JP 3612035 B2 JP3612035 B2 JP 3612035B2
- Authority
- JP
- Japan
- Prior art keywords
- image data
- address
- display
- data
- source
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Controls And Circuits For Display Device (AREA)
- Processing Or Creating Images (AREA)
- Image Processing (AREA)
- Digital Computer Display Output (AREA)
Description
【発明の属する技術分野】
本発明は、画像メモリに蓄積された複数の画像データを合成して画面に表示させる画像処理装置に係わるものである。
【0002】
【従来の技術】
近年、マイクロコンピュータやメモリが低価格化されてきたことにより、家庭電化製品やゲーム等において画像処理が可能となり、表示画面に多様の画像が表示されるようになっている。
上述した画像処理において、複数の画像データを合成して作成した1画面を時系列に表示させて、動画像を形成する手法がある。
ここで用いられる従来の画像処理装置は、1つのアトリビュートが示すソース画像データを、このソース画像データの表示情報であるアトリビュートデータに基づき、表示バッファの表示領域に全て書き込む。
このとき、上記画像処理装置は、表示優先度の低いソース画像データから順に、画像の合成に用いられる全てのソース画像に対して繰り返し行ない、表示させる全体の画像を構成する。
【0003】
以下、図10を用いて上述の画像の合成処理について簡単に説明する。
描画回路6dは、ソース画像データを蓄積している画像メモリ6cから必要な複数のソース画像データを読み出し、これらのソース画像データのアトリビュートデータを、アトリビュートメモリ6aから読み出す。
このとき、描画回路6dは、アトリビュートメモリ6aから、ソース画像データatt1〜att4までのデータを読み出し、画像の合成を行うとする。
ここで、各ソース画像データのプライオリティ、すなわち、表示優先順位は、ソース画像データatt1〜att4の順に高くなっているとする。
このため、描画回路6dは、アトリビュートメモリ6aからソース画像データatt1〜att4の順に読み出して、表示バッファ6b上においてソース画像データの合成処理を行うので、ソース画像データatt4を最も上位に表示させる。
【0004】
このとき、描画回路6dは、ソース画像データatt1の画像メモリ6cにおいて描画されているアドレス値を、表示画面上においてソース画像データatt1を描画する位置を示すアドレス値に変換して、ソース画像データatt1を表示バッファ6bに一時的に格納する。
次に、描画回路6dは、ソース画像データatt2を画像メモリ6cから読みだし、上述したソース画像データatt1と同様の処理を行う。
このとき、表示バッファ6bにおける斜線部▲1▼において、ソース画像データatt1の画像データの上に、ソース画像データatt2の画像データが上書きされ、下部の斜線部▲1▼のソース画像データatt1の画像データは消失してしまう。
【0005】
そして、描画回路6dは、続けて、ソース画像データatt3〜att4までの、ソース画像データの合成処理を行ない、表示バッファ6bにおいてバッファ全体の画像を構成する。また、上述のソース画像データatt1とソース画像データatt2との関係と同様に、表示バッファ6bにおけるソース画像データatt1の斜線部▲2▼〜▲3▼の画像データは、上書きされ、下部の斜線部▲2▼〜▲3▼のソース画像データatt1の画像データは消失してしまう。
このとき、斜線部▲1▼〜▲3▼に示す、表示優先度の高いソース画像データにより上書きされ、表示されないソース画像データatt1の画像データも、画像メモリ6cから読み出され、表示バッファ6bに書き込みを行うため、画像メモリ6cや表示バッファ6bに対して無駄なアクセスを行う欠点があった。
上記欠点の対策としては、描画回路6dが、各ソース画像データのアトリビュートデータに基づいて、予め、より表示優先度の高いソース画像データと重なるソース画像データを、この重なる部分を除去する形状に分割し、表示バッファ6bにおいてデータが上書きされ、消失してしまう画像データの部分を予め削除してしまう手法が考えられる。すなわち、描画回路6dは、消失してしまう部分の画像データを画像メモリ6cから読み出す処理,及び表示バッファ6bに書き込む処理を省略し、無駄なアクセスを防止し、全体の処理速度を向上させる。
【0006】
【発明が解決しようとする課題】
しかしながら、上述した予め上書きされる部分を削除する手法は、優先度の高いソース画像データが透過色の部分を有している場合においても、優先度の低いソース画像データの上記透過色の部分と重なる画像データを削除してしまう問題がある。
すなわち、透過色の下部のデータは、優先度が低くても、表示されなければならないデータであり、削除してしまっては合成に必要な画像データが失われてしまうこととなる。
本発明はこのような背景の下になされたもので、表示優先度の高いソース画像データにより上書きされ表示されない画像データを予め検出し、画像メモリや表示バッファに対する無駄なアクセスを行なわず、かつ表示優先度が高くても透過色の部分の下部に位置する優先度の低い画像データを表示させる画像処理装置を提供する。
【0007】
【課題を解決するための手段】
本発明の画像処理装置は、複数のソース画像データを格納する画像メモリと前記画像メモリに格納されたソース画像データに対応して、該ソース画像データ毎の該画像メモリにおけるソースアドレスおよび画像表示装置の画面における表示アドレスを含むアトリビュートデータを格納するアトリビュートメモリと、複数のソース画像データが重なるとき、下部のソース画像データの重なり部分を除き、該ソース画像データを分割画像データに分割し、各分割画像データの分割表示アドレスを算出して、テンポラリメモリに格納するアトリビュート変換回路と、前記表示アドレスから前記分割画像データの画像メモリにおけるソースアドレスを算出し、該ソースアドレスを出力するソースアドレス算出回路と、前記ソースアドレスに基づき、前記画像メモリからソース画像データを読み出す画像メモリコントローラと、前記アトリビュートデータに基づき、読み出されたソース画像データの各画素データが透過色であるか否かを検出する透過色検出回路と、優先度の高い順に、透過色でないと検出されたソース画像データの画素データを、表示アドレスに対応させて表示バッファに格納するアトリビュートコントローラと、表示バッファに格納された画素データを前記表示装置に出力する表示送出コントローラとを具備し、前記透過色検出回路は、アトリビュートコントローラが表示バッファに画素データを格納するとき、画素データが透過色でない場合、アトリビュートコントローラ内のマークメモリにマークデータを書き込み、また、前記アトリビュートコントローラは、前記マークメモリにマークデータが書き込まれている場合、このマークデータが書き込まれたアドレスに対応するアドレスの画素データの読み出しを前記画像メモリから行なわず、前記マークメモリにマークデータが書き込まれていない場合、この書き込まれていないアドレスに対応する前記バッファメモリの領域に、下部の分割画像データの画素データの書き込み処理行うことを特徴とする。
本発明の画像処理装置は、複数のソース画像データを格納する画像メモリと、前記画像メモリからソース画像データを読み出す画像メモリコントローラと、前記画像メモリコントローラが読み出すソース画像データを一時蓄積する表示バッファと、前記画像メモリに格納されたソース画像データに対応して、該ソース画像データ毎の該画像メモリにおけるソースアドレス及び画像表示装置の画面における表示アドレスを含むアトリビュートデータを格納するアトリビュートメモリと、前記アトリビュートメモリからアトリビュートデータを読み出すアトリビュートコントローラと、複数のソース画像データが重なるとき、下部のソース画像データの重なり部分を除き、該ソース画像データを分割画像データに分割するアトリビュート変換回路と、前記分割画像データの画像メモリにおける分割された分割画像データのソースアドレスを算出し、該ソースアドレスを前記アトリビュートコントローラへ出力するソースアドレス算出回路と、前記アトリビュートデータに基づき、前記重なり部分における上部のソース画像データが透過色であるか否かを検出する透過色検出回路とを具備し、前記アトリビュートコントローラが、前記重なり部分の上部のソース画像データが透過色で無い場合、その下部の分割画像データを削除し、前記重なり部分の上部のソース画像データに透過色のドットが含まれる場合、その透過色であるドットの下部のソース画像データにおけるドットを表示させることを特徴とする。
【0008】
本発明の画像処理装置は、前記アトリビュート変換回路が、前記ソース画像データの分割処理を、前記表示バッファに1ライン分のドットの画像データを書き込む毎に行うことを特徴とする。
本発明の画像処理装置は、前記アドレス算出回路が、前記アトリビュートデータに基づき、前記分割画像データの表示アドレスを、ソースアドレスに変換することを特徴とする。
本発明の画像処理装置は、前記アトリビュートコントローラが、前記重なり部分の上部のソース画像データが透過色である場合、その透過色である画素データの下部の分割画像データにおける画素データを表示バッファへ転送させる処理を、順次高い表示優先度のソース画像データから低い優先度のソース画像データに対して行うことを特徴とする。
本発明の画像処理装置は、前記アトリビュートコントローラが分割表示アドレスで示された範囲の前記各分割画像データを前記表示バッファに転送することを特徴とする。
本発明の画像処理装置は、前記アトリビュート変換回路が、アトリビュート変換回路が前記テンポラリメモリ内の分割画像データの表示優先度の高い順に、再分割するソース画像データを選択し、選択されたソース画像データと、このソース画像データより表示優先度の高いソース画像データとの重なり部分を検出し、この前記重なり部分を、前記選択されたソース画像データの新たな分割画像データとし、この新たな分割画像データの表示アドレスを生成して、前記テンポラリメモリに書き込むことを特徴とする。
本発明の画像処理装置は、前記テンポラリメモリが前記表示アドレスを格納する複数のテーブルを有し、前記アトリビュート変換回路が、この各テーブル毎に、順次、再分割される新たな分割画像データを対応させ、対応するテーブルに、分割画像データの表示アドレスを格納することを特徴とする。
【0009】
【発明の実施の形態】
以下、図面を参照して本発明の実施形態について説明する。
<第1の実施形態>
図1は本発明の第1の実施形態による画像処理装置の構成を示すブロック図である。この図において、画像メモリ2aは、RAM(Random Access Memory)で構成されており、複数のソース画像データが非圧縮状態で格納されている。すなわち、画像メモリ2aには、ソース画像データ、すなわちディスプレイ2dの表示画面に表示するキャラクタや風景などの画像の各ドットに対応した画素データが格納されている(以下、ソース画像データの画素とする)。
ここで、ソース画像データは、例えば、ソース画像データatt1〜att4の様に、1つのウィンドウ(矩形の領域)内に画像を描画する各ドット毎の画素データが記述された構成となっている。
そして、各ソース画像データのプライオリティ、すなわち、表示優先順位は、ソース画像データatt1〜att4の順に高くなっているとする。
また、上記ソース画像データは、画像メモリ2aにおいて、ディスプレイ2dの表示画面に表示された場合のアドレスと相対的に等しいソースアドレスにより、すなわち、水平・垂直ともに実際に表示画面に表示される画像領域と同様の矩形状のアドレス範囲(アドレスの幅が一致している)に記憶されている。
【0010】
アトリビュートメモリ2iには、画像処理装置から垂直同期信号が入力される毎に、1フレーム(1画面)に画像表示される合成画像を形成するデータ、すなわち、画像の合成に使用する各ソース画像データ毎の画像メモリ2aにおけるデータ領域を示すソースアドレス,ディスプレイ2d(画像表示装置)の画面上における領域を示す表示アドレス,表示優先度等を含むアトリビュートデータ等が格納される。ここで、表示優先度とは、複数のソース画像データを合成したときに重なり合う部分において表示される順番を示している。このため、値が高いほど上部に表示され、その下部のソース画像データの画素データは上書きされて削除されてしまう。
ここで、上記ソースアドレスは、各々、ソース画像データの水平方向の領域を示すスタートアドレスxs及びエンドアドレスxeと、ソース画像データの垂直方向の領域の開始を示すスタートアドレスysから構成され、これらのアドレスに基づき、ソース画像データの領域内の画素データ毎にアクセスが可能に設定されている。
例えば、ソース画像アドレスatt1のソースアドレスは、水平方向の領域の範囲として、スタートアドレスx1からエンドアドレスx5が設定され、垂直方向の領域の範囲としてスタートアドレスy1が設定されている。
【0011】
また、上記表示アドレスは、ソース画像データの垂直方向の領域を示すスタートアドレスhs及びエンドアドレスheと、ソース画像データの水平方向を示すスタートアドレスvs及びエンドアドレスveとから構成され、領域内の画素データ毎にアクセスが可能に設定されている。
例えば、ソース画像アドレスatt1の表示アドレスは、水平方向のアドレスの領域の範囲として、スタートアドレスh1からエンドアドレスh6が設定され、また、垂直方向のアドレスの領域の範囲として、スタートアドレスv3からエンドアドレスv7が設定されている。
垂直カウンタ2hは、ディスプレイ2dから走査信号が入力される毎にインクリメントされ、計数結果として、ディスプレイ2dの表示画面上の走査信号の出力される走査線の位置(アドレス、例えば、垂直方向のアドレスv0〜ve等)を示す垂直ポインタvを出力する。この垂直ポインタvがインクリメントされる毎に、表示画面上に表示される画素データの出力される走査線が、順次選択される。アトリビュートコントローラ2kは、アトリビュートデータを読み出し、上記垂直ポインタvの示すアドレスが、アトリビュートメモリ2iに記憶された各々のソース画像データの表示アドレスにおける垂直方向の領域を示すスタートアドレスvsからエンドアドレスveまでの範囲にあるか否かの判定を行い、表示バッファ2eまたは表示バッファ2fに転送する画素データの有無を検出し、ソース画像データ毎に、検出信号vvldをアトリビュート変換回路2mへ出力している。
水平カウンタ2nは、表示装置の表示画面における水平方向のアドレスを示す水平ポインタhを、インクリメントして、順次アトリビュート変換回路2mへ出力している。ここで、水平ポインタhは、垂直ポインタvの示す位置の走査線の各ドットのアドレスを示しており、インクリメントされることにより、各ドットのアドレスを指定する。
【0012】
アトリビュート変換回路2mは、各ソースデータ毎の検出信号vvld,水平方向のスタートアドレスhs及びエンドアドレスheと、水平ポインタhとの値により、ポインタvの示す走査線における各ソース画像データの表示優先度を比較し、この比較結果からもっとも表示優先度の高い、すなわち上位に表示されるソース画像データを選択してソース画像データの番号及びエンドアドレスをTMPメモリ2oへ書き込む。
このとき、アトリビュート変換回路2mは、複数のソース画像データが重なるとき、例えば、垂直ポインタv3からv4−1の間で、ソース画像データatt1の上にソース画像att2及びatt3が重なって表示される場合、下部のソース画像データのatt1の重なり部分▲1▼及び▲2▼の部分を除いて、ソース画像データatt1を2つの分割画像データatt1:1及びatt1:2に分割する。
すなわち、アトリビュート変換回路2mは、下部の(表示優先度の低い)ソース画像データの、上位の(表示優先度の高い)ソース画像データとの重なり部分の領域を除いて、この下部のソース画像データを分割画像データに分割する。
【0013】
このとき、アトリビュート変換回路2mは、スタートアドレスh1及びエンドアドレスh6の領域を有するソース画像データatt1を分割後に、分割画像データatt1:1に新たなスタートアドレスh1及びエンドアドレスh2−1を求め、分割画像データatt1:2に新たなスタートアドレスh4及びエンドアドレスh5−1、すなわち新たな表示アドレス(分割表示アドレス)を求めて、これらのアドレスをTMPメモリ2oにソース画像データを示す番号と共に記憶する。
ソースアドレス算出回路2lは、TMPメモリ2oに格納されている表示されるソース画像データの番号と、その表示アドレスの範囲とから、分割画像データの画像メモリにおけるソースアドレスを算出し、このソースアドレスをアトリビュートコントローラ2kへ出力する。
例えば、ソースアドレス算出回路2lは、垂直アドレスv3において、分割画像データatt1:1の表示アドレスであるスタートアドレスh1(ソース画像データがアドレスh−1まで無いため)及びエンドアドレスh2−1を、ソースアドレスであるスタートアドレスx1及びエンドアドレス(x1+h2−1−h1)として算出(演算)して出力する。
アトリビュートコントローラ2kは、ソースアドレス算出回路2lの求めたソースアドレスに基づき、分割画像データのスタートアドレスysから水平ポインタhをインクリメントすることにより、垂直ポインタvと水平ポインタhの示すアドレスの画素データを、画像メモリ2aから画像メモリコントローラ2bを介して順次読み込み、表示バッファコントローラ2jを介して表示バッファ2eまたは表示バッファ2fにこの画素データを書き込む。
【0014】
ここで、ソースアドレス算出回路2lは、アトリビュートデータにおけるソースアドレスと表示アドレスとの関係に基づき、ソース画像データの表示アドレスをソースアドレスに変換する。
例えば、ソースアドレス算出回路2lは、ソース画像データatt1において、素直ポインタvが垂直方向のアドレスv3を示していると、このアドレスv3をソースアドレスにおける垂直方向のアドレスy1へ変換し、水平ポインタhが水平方向のアドレスh1を示していると、このアドレスh1を水平方向のアドレスx1に変換する。
画像メモリコントローラ2bは、アトリビュートコントローラ2kから入力される垂直方向のアドレス及び水平方向のアドレスに基づき、垂直ポインタ及び水平ポインタhがインクリメントして、順次、画像メモリ2aから合成に利用されるソース画像データのドット単位の画素データを読み出し、表示バッファコントローラ1dを介して、順次、表示バッファ2eまたは表示バッファ2fの表示アドレスに対応した位置に、読み出された画素データを書き込む。
【0015】
表示バッファ2eには、表示画面の1フレームにおける偶数番号の走査線に対応する、すなわちディスプレイ2dの表示画面上において、垂直ポインタvが示す走査線における水平ポインタhの取りうる全てのドットの画素データが一時的に蓄積される。また、表示バッファ2fには、表示画面の1フレームにおける奇数番号の走査線に対応する、すなわちディスプレイ2dの表示画面上において、垂直ポインタvが示す走査線における水平ポインタhの取りうる全てのドットの画素データが一時的に蓄積される。例えば、偶数アドレスの走査線に一方の表示バッファ2eが画素データを出力しているとき、他方の表示バッファ2fには次に画像装置の奇数アドレスに出力する画素データが書き込まれている。ここで、表示バッファ2e及び表示バッファ2fは、各々ディスプレイ2dの表示画面において、水平方向に配置された各ドットの位置のアドレス(走査線における各ドットの位置を示すアドレス)と対応したアドレスを有するメモリから構成されており、各アドレスにおけるデータ記憶のビット数は画素データのビット数に対応している。
【0016】
透過色検出回路2rは、アトリビュートコントローラ2kが画素データを画像メモリ2aから読み出す毎に、アトリビュートメモリ2iにおいて対応する画素データの透過色か否かを示すデータに基づき、読み出された画素データが、透過色であるか否かを検出し、検出結果をアトリビュートコントローラ2k内のマークメモリにマークデータとして記憶させる。このとき、透過色検出回路2rは、検出するドットの画素データが透過色で無い場合、すなわち表示画面に表示する場合、マークデータをこのドットの位置を示すアドレスに対応させて上記マークメモリに書き込む(マークデータを添付する)。
このとき、アトリビュートコントローラ2kは、画像メモリ2aから読み出した上記画素データを、表示バッファ2eまたは表示バッファ2fの対応するアドレスに書き込む。
ここで、マークメモリは、「垂直ポインタvの示すアドレスの走査線における水平ポインタhの取りうる範囲(ディスプレイ2dの表示画面の水平方向)のドット数×1ビット」の容量を有しており、各ビットのアドレスと表示バッファのアドレスとは対応している。
一方、透過色検出回路2rは、画素データが透過色である場合、すなわち、表示画面に表示しない場合、この画素データのドットに対してマークメモリにマークデータを書き込まず、かつアトリビュートコントローラ2kも読み出した画素データを表示バッファ(特に指定しない場合は、表示バッファ2eまたは表示バッファ2fのいずれか)に書き込まない。
【0017】
つまり、アトリビュートコントローラ2kは、透過色検出回路2rが読み出した画素データが透過色であることを検出した場合、読み出した画素データを、表示バッファに転送しない(すなわち、使用せずに削除する)。
詳細に説明すると、アトリビュートコントローラ2kは、マークメモリにおいてマークデータが書き込まれていない位置を確認し、この位置のアドレスに対応する画像メモリ2aのアドレスから画像データを読み出す毎に、この画素データが透過色であるか否かの判定を透過色検出回路2rにおいて行う。
アトリビュートコントローラ2kは、透過色検出回路2rにおける判定の結果、読み出した画像データが透過色で無いことが検出された場合、読み出した画素像データを、表示バッファに書き込む。
このとき、透過色検出回路2rは、画素データが書き込まれた表示バッファのアドレスに対応するマークメモリのアドレスに、新たにマークデータを書き込み、マークメモリのデータ内容を更新する。
すなわち、アトリビュートコントローラ2kは、画素データが透過色であるか否かの透過色検出回路2rの判定結果に基づき、表示バッファに画素データを書き込むか否かの判断を、各ドット毎に、各ソース画像データにおける画素データ全てに対して行い、表示優先度の高い順に表示バッファに書き込む処理を、マークメモリの全てのアドレスにマークデータが書き込まれるまで、または、垂直ポインタvの示す走査線に存在する全てのソース画像データに対して繰り返して行う。
このとき、アトリビュートコントローラ2kは、マークデータが書き込まれているマークメモリのアドレスに対応するアドレスの画素データを、画像メモリ2aから読み出す処理自体を行わない。
【0018】
そして、アトリビュートコントローラ2kは、ディスプレイ2dの走査信号が入力される毎に、ディスプレイ2dの画面上における垂直ポインタvの示す走査線に表示されるソース画像データとして、表示バッファ2eまたは表示バッファ2fからディスプレイ2dへ出力する。
このとき、アトリビュートコントローラ2kは、奇数アドレスの走査線に表示する画素データが表示バッファ2fに書き込まれていると、この奇数アドレスの1つ前の偶数アドレスの走査線の各ドットに対して、表示バッファ2eに記憶されている画素データが出力される。また、ここで用いられる1つ前の走査線のアドレスは、垂直カウンタ2hの出力する垂直ポインタvの示すアドレスから「1」を差し引いた結果として表示出力コントローラ2cへ出力される。
表示コントローラ2cは、表示バッファ2eから出力される画素データを、ディスプレイ2dの表示画面における、1ラインディレイ2gの出力するアドレスに対応する走査線のドットに書き込む。これにより、ディスプレイ2dは、合成された画像の表示を行う。
【0019】
次に、図3にアトリビュート変換回路2mの詳細な構成を示すブロック図を示す。この図において、水平表示判断回路4e,4f,4g及び4hは、アトリビュートコントローラ2k(図1)から各々のソース画像データに対応した検出信号vvldが入力されており、かつ、水平ポインタhが各ソース画像データの水平方向のスタートアドレス及びエンドアドレスの範囲内にあるか否かの判定を行い、範囲に含まれていれば検出結果信号を「H」レベルで出力する。
ここで、水平表示判断回路4e,4f,4g及び4hには、アトリビュートコントローラ2kから各々ソース画像データatt4,att3,att2,att1の検出信号vvldとスタートアドレスhsとエンドアドレスheとが入力されている。
プライオリティエンコーダ4lは、端子T1〜T4(プライオリティエンコーダ4lの1〜4)において「H」レベルが入力されている中から、最も表示優先度の大きい入力のコード(ソース画像データの番号)を出力する(プライオリティとしては、T4>T3>T2>T1>T0の順になっている)。これにより、アトリビュート変換回路2mは、水平ポインタhの示すドットの位置において、最も表示優先度の高いソース画像データの判別が行える。なお、プライオリティエンコーダ4lは、どのソース画像データもポインタhの指すドットに無い場合、「0」を出力する。
端子T1〜T4には、各々ソース画像データatt1,att2,att3,att4の上記検出結果信号が入力される。端子T0には「H」レベルが入力されている。
【0020】
また、水平カウンタ2nがクロックにより水平ポインタhをインクリメントし、ドットの水平方向のアドレスを変更する毎に、フリップフロップ4iは、この水平ポインタhの値を上記クロック毎に保持する。また、このとき、フリップフロップ4jは、プライオリティエンコーダ4 lの出力するソース画像データを示す番号のコードを、上記クロックにより保持する。このため、フリップフロップ4j及び4iには、クロックが入力されて値が変化する前のソース画像データの番号,水平ポインタhの値が各々保持されている。
イクスクルーシブオア4kは、プライオリティエンコーダ4lの出力するソース画像データの番号と、フリップフロップ4jに保持されたソース画像データの番号(例えば、ソース画像データatt1の数字の「1」をアトリビュート番号とする。「0」は表示されるソース画像データの無い部分を示す。)とが異なる場合に「H」レベルのwr信号を出力する。これにより、アトリビュート変換回路2mは、表示画面上に表示されるソース画像データが変化したことを検出する。
【0021】
このとき、アトリビュート変換回路2mは、wr信号が「H」レベルとなったとき、フリップフロップ4i及びフリップフロップ4jの各々のデータをTMPメモリ2oへ、図4に示すデータテーブルのフォーマットにおいて、分割画像データを構成する1走査線毎に、TMPメモリ2oにおける各メモリアドレス(図4のデータテーブル)に書き込むことにより、表示画面に表示されるソース画像データの番号及びその表示範囲を求める(提供する)。
すなわち、アトリビュート変換回路2mは、垂直ポインタvの示す走査線毎に、複数のソース画像データが重なって表示される部分において、各ソース画像データの表示優先度に基づいて、重なり部分で最も高い表示優先度を有するソース画像データを検出する事により、下部のソース画像データの表示する部分を分割することとなる。そして、アトリビュート変換回路2mは、分割後の各分割画像データの領域の範囲(分割表示アドレス)を示すスタートアドレスhs及びエンドアドレスheを求め、TMPメモリ2oへ書き込む。
【0022】
次に、図1〜図9を参照し、第1の実施形態の動作例を説明する。図5は、図1の表示バッファ2e及び2fに、順次格納される画像、すなわちディスプレイ2dの表示画面に表示される複数のソース画像データが合成された画像の概念図である。図6は、各々画像メモリ2 aに格納されるソース画像データを示している図7〜図9は、表示バッファ2e及び2fに転送される画素データを形成する流れを示す概念図である。ここで、図1の画像メモリ2aには、図6に示すソース画像データatt-A,att-B及びatt-Cが記憶されており、アトリビュートメモリ2iには図5の画像を合成するアトリビュートデータが格納されているとする
また、表示優先度は、ソース画像データatt-Aが最も高く、ソース画像データtt-Cが最も低いとする。このとき、図3のプライオリティエンコーダ4lにおいては、ソース画像データatt-A,att-B及びatt-Cに対応する水平表示判断回路の出力が各々端子T4,T3及びT2に入力され、端子T1及び端子T0には「H」レベルの電圧が入力されている。
【0023】
アトリビュートメモリ2iには、ディスプレイ2dから垂直同期信号が入力されると、表示画面に次に表示される図5に示す画像のアトリビュートデータが転送され、格納される。
そして、垂直カウンタ2hは、走査信号が入力される毎に、インクリメントして計数値をアトリビュートコントローラ2kへ出力する。これにより、アトリビュートコントローラ2kは、垂直カウンタ2hからの計数値から求められる表示画面上の垂直ポインタvの値が、各ソース画像データの垂直方向の領域を示すスタートアドレスからエンドアドレスまでの範囲内にあるか否かの判定を行う。
ここで、アトリビュートコントローラ2kは、垂直ポインタvがソース画像アドレスのスタートアドレスv0となると、すなわち、垂直ポインタvの値がアドレスv0となると、ソース画像データatt-Bのデータ領域の範囲となったことを検出する。
【0024】
これにより、アトリビュートコントローラ2kは、アトリビュート変換回路2mに対して、検出信号vvldを出力する。
そして、アトリビュート変換回路2mは、検出信号vvldの入力処理により、分割処理を開始するが、アトリビュートデータに基づき、ソース画像データatt-Bが他のソース画像データと重なり合っていないことを検出し、ソース画像アドレスatt-Bの分割を行わない。
次に、アトリビュートコントローラ2kは、ソースアドレス算出回路2lに対して、表示画像データのアドレス領域を、表示アドレスからソースアドレスへ変換する処理を指示する。
そして、ソースアドレス算出回路2lは、アトリビュートデータにおけるソース画像データ att-Bの表示アドレスとソースアドレスとの関係に基づき、アドレスv0をアドレスy2に変換し、かつ、水平ポインタhの示す水平方向のアドレスh1をアドレスx0に変換する。
【0025】
また、透過色検出回路2rは、アトリビュートコントローラ2kが上記ソースアドレスに基づき、画像メモリ2aから順次読み出される、垂直ポインタy2におけるスタートアドレスx0からエンドアドレスx2までの画素データを、透過色か否かの検出を行う。
ここで、透過色検出回路2rは、スタートアドレスx0からエンドアドレスx2までの画素データが全て透過色であるので、アトリビュートコントローラ2k内のマークメモリにマークデータを書き込まない。
したがって、アトリビュートコントローラ2kは、ポインタv0に対応する走査線のドットに表示する画素データが無いことを検出し、画像メモリ2aから読み出したスタートアドレスx0からエンドアドレスx2までの画素データを、表示バッファ2eに書き込まない(ポインタvの示すv0は偶数アドレスの走査線であるため)。
【0026】
次に、垂直カウンタ2hが走査信号の入力により順次インクリメントされ、計数値の垂直ポインタvがアドレスv23の位置の奇数アドレスの走査線となったとする。
このとき、アトリビュートメモリ2iに記憶されたアトリビュートデータにおいて、ソース画像データatt−A,att−B及びatt−Cの全てが重なり合っている。
このため、アトリビュート変換回路2mは、各ソース画像データの重なり合った部分の分割を行う。
アトリビュート変換回路2mは、図7において示すように、表示優先度を考慮して、ソース画像データatt−Aを分割せず、ソース画像データatt−Bをソース画像データatt−Aにより、分割画像データatt−B1及び分割画像データatt−B2へ2分割し、同様に、ソース画像データatt−Cをソース画像データatt−Bにより、分割画像データatt−C1及び分割画像データatt−C2へ2分割する。
ここで、図7〜図9において、白抜きの長方形で示されている領域が画像表示(描画)されるドット(画素データが透過色でない)の部分を示し、実線で示されている領域が画像表示されないドット(画素データが透過色である)の部分を示している。
【0027】
そして、図7に示す様に、アトリビュート変換回路2mは、分割画像データatt−B1,分割画像データatt−B2,分割画像データatt−C1及び分割画像データatt−C2各々の分割後のスタートアドレスhs及びエンドアドレスheを求め、この結果をTMPメモリ2oへ格納する。
例えば、アトリビュート変換回路2mは、分割画像データatt−B1の範囲を示すスタートアドレスhs及びエンドアドレスheを、スタートアドレスh1及びエンドアドレスh2−1とし、分割画像データatt−B2の水平方向の範囲を示すスタートアドレス及びエンドアドレスを、スタートアドレスh3及びエンドアドレスh4としてTMPメモリ2oへ格納する。
また、アトリビュート変換回路2mは、分割画像データatt−C1の範囲を示すスタートアドレスhs及びエンドアドレスheを、スタートアドレスh0及びエンドアドレスh1−1とし、分割画像データatt−C2の範囲を示すスタートアドレスhs及びエンドアドレスheを、スタートアドレスh4及びエンドアドレスh5−1としてTMPメモリ2oへ格納する。
【0028】
そして、ソースアドレス算出回路2lは、TMPメモリ2oに記憶されている、分割後の各分割画像データの範囲を示すスタートアドレスh1及びエンドアドレスh2−1から、アトリビュートデータのソースアドレス及び表示アドレスに基づき、分割画像データatt−B1の画像メモリ2aにおける水平方向の範囲を示すスタートアドレスxs及びエンドアドレスxeを、各々スタートアドレスx0,エンドアドレス(x0+h2−1−h1)と演算する。
また、ソースアドレス算出回路2lは、分割後の各分割画像データの範囲を示すスタートアドレスh3及びエンドアドレスh4から、アトリビュートデータに基づき、分割画像データatt−B2の画像メモリ2aにおける水平方向の範囲を示すスタートアドレス及びエンドアドレスを、各々スタートアドレス(x0+h3−h1),エンドアドレス(x0+h4−h1)と演算する。
同様に、ソースアドレス算出回路2lは、分割画像データatt−B1及び分割画像データatt−B2の画像メモリ2aでの範囲を示すスタートアドレスhs及びエンドアドレスheを、各々スタートアドレスx0,エンドアドレス(x0+h1−1−h0)及びスタートアドレス(x0+h4−h0),エンドアドレス(x0+h5−1−h0)と演算する。
【0029】
また、ソースアドレス算出回路2lは、ソース画像データatt−A及び分割後の各分割画像データの垂直ポインタの示すアドレスv23から、アトリビュートデータに基づき、ソース画像データatt−A及び分割後の上記各分割画像データの画像メモリ2aにおける垂直方向のアドレスを求める。
例えば、ソースアドレス算出回路2lは、ソース画像データatt−Aの垂直方向のアドレスv23に対応する垂直方向のアドレスをアドレス(y0+v23−v2)と演算し、同様に、分割画像データatt−B1,分割画像データatt−B2のアドレスv23に対応するアドレスをアドレス(y2+V23−v0)と演算し、分割画像データatt−C1及び分割画像データatt−C2のアドレスv23に対応する垂直方向のアドレスをアドレス(y4+V23−v1)と演算する。
【0030】
そして、アトリビュートコントローラ2kは、この時点で、より高い表示優先度を有する画像データと重ならない分割画像データatt−C1,att−B1,att−B2,att−C2と、ソース画像データatt−Aの各々のアドレスv23及びポインタhとで選択されるドットの画素データを、ポインタhの値をインクリメントする毎に画像メモリ2aから読み出す。
このとき、透過色検出回路2rは、読み出した分割画像データにおける各ドットの画素データが透過色か否かの判定を行う。
そして、透過色検出回路2rは、アトリビュートコントローラ2kの読み出した画素データにおいて、透過色でない画像データのドットが分割画像データatt−C1のアドレスh01〜アドレスh1−1までのドットの画素データと、ソース画像データatt−Aのアドレスh23〜アドレスh24−1までのドットの画素データとであることを検出し、マークメモリに各ドットのアドレスに対応させマークデータを書き込む。
これにより、アトリビュートコントローラ2kは、表示バッファ2fに対して、垂直ポインタv23の位置における分割画像データatt−C1の水平方向のアドレスh01〜アドレスh1−1までのドットの画素データと、ソース画像データatt−Aの水平方向のアドレスh23〜アドレスh24−1までのドットの画素データとを書き込む。
【0031】
次に、図8に示すように、アトリビュートコントローラ2kは、マークメモリにおいてマークデータが書き込まれていない水平ポインタhのアドレスがあることを検出し、マークデータの書き込まれていないアドレスにおいて、ソース画素データatt-Aの次に表示優先度の高いソース画素データatt-Bの垂直ポインタv23の位置のドットの画素データを表示バッファ2fに転送するための前処理を開始する。
アトリビュートコントローラ2kは、表示バッファ2fに転送する処理を行うため、マークメモリにマークデータが記載されておらず、ソース画像データatt-Aの下部にあるアドレスh2からアドレスh23−1までと、アドレスh24からアドレスh3−1までのドットに対応するソース画素データatt-Bの画素データを、ポインタhの値を上記のアドレスの範囲において各々インクリメントする毎に画像メモリ2aから読み出す。
そして、透過色検出回路2rは、読み出された上記ドットの画素データが透過色か否かの判定を行い、透過色でない画像データのドットがアドレスh22からアドレスh23−1までのドットの画素データとであることを検出し、マークメモリに各ドットのアドレスに対応させてマークデータを書き込む。
これにより、アトリビュートコントローラ2kは、変更されたマークメモリのマークデータのアドレス、すなわち、垂直ポインタvの示すアドレスv23の位置におけるソース画像データatt-Bのアドレスh22〜アドレス23−1までのドットの画素データを表示バッファ2fの対応する位置に書き込む。
【0032】
次に、図9に示すように、アトリビュートコントローラ2kは、マークメモリにおいてマークデータが書き込まれていない水平ポインタhのアドレスがあることを検出し、マークデータの書き込まれていないアドレスにおいて、ソース画素データatt−Bの次に表示優先度の高いソース画素データatt−Cの垂直ポインタv23の位置のドットの画素データを表示バッファ2fに転送するための前処理を開始する。
アトリビュートコントローラ2kは、表示バッファ2fに転送する処理を行うため、マークメモリにマークデータが記載されておらず、ソース画像データatt−A及びatt−Bの下部にあるアドレスh1からアドレスh22までと、アドレスh25からアドレスh4までまでのドットに対応するソース画素データatt−Cの画素データを、ポインタhの値を上記のアドレスの範囲において各々インクリメントする毎に画像メモリ2aから読み出す。
【0033】
このとき、透過色検出回路2rは、読み出した分割画像データにおける各ドットの画素データが透過色か否かの判定を行う。
そして、透過色回路2rは、上記ドットの画素データが透過色か否かの判定を行い、透過色でない画像データのドットがアドレスh1からアドレスh11−1までと、アドレスh21からアドレスh22−1までと、アドレスh24からアドレスh25−1までとのドットの画素データであることを検出し、マークメモリに各ドットのアドレスに対応させマークデータを書き込む。
これにより、アトリビュートコントローラ2kは、変更されたマークメモリのマークデータのアドレス、すなわち、垂直ポインタvの示すアドレスv23の位置におけるソース画像データatt−Cのアドレスh1からアドレスh11−1までと、アドレスh21からアドレスh22−1までと、アドレスh24からアドレスh25−1までとのドットの画素データを表示バッファ2fの対応する位置に書き込む。
そして、アトリビュートコントローラ2kは、ソース画像データが重なり合う部分において、マークメモリにおけるマークデータの有無に基づき、上述した書き込み処理を、表示優先度が最も高いソース画像データから最も表示優先度の低いソース画像データの順に、全てのソース画像データに対して行う。
【0034】
上述したように、アトリビュートコントローラ2kは、複数のソース画像データを合成して画像を生成するときに、複数のソース画像データの重なり部分が生じると、上部の(表示優先度の高い)ソース画像データにおいて画素データが透過色であり、かつ、この透過色のドットの下部の(表示優先度の低い)ソース画像データのドットの画素データが透過色でない場合、このドットの画素データを表示バッファ2eまたは表示バッファ2fに転送する処理を、最も高い表示優先度を有するソース画像データから最も低い表示優先度のソース画像データまで、重なりあった部分を有する全てのソース画像に対して行う。
なお、上述の第1の実施形態の構成において、アトリビュートコントローラ2kにおけるマークラムに対するアクセス速度と、表示バッファ2e及び2fに対するアクセス速度とが同様であると、すでにマークメモリに書き込まれているマークデータの書き込まれたドットのアドレスを確認する時間と、表示バッファ2e,2fに画素データを書き込む時間とが重なるため、マークメモリへのアクセスタイムを表示バッファ2e及び2fに対するアクセスタイムに対して高速化し、マークメモリにおいてマークデータが連続して書き込まれている領域をスキップして検出することが必要である。
【0035】
以上の動作を垂直カウンタの値が表示アドレスの垂直ポインタvの取りうる範囲、すなわち表示画面の走査線数分を繰り返し、すべての走査線の描画を完了することで1画面(1フレーム)の画像が構成される。
なお、上述した第1の実施形態では、説明のために、ソース画像データの数を4及び3として説明したが、同様の回路をソースデータの数だけ用意することで、合成に使用するソース画像データの数を適時増加させることが可能である。
また、1走査線の時間内にソース画像データの分割処理と描画(表示メモリへの書き込み)とを同時に完了する様にしているが、さらに1走査線分のディレイ、及びTMPメモリ2oと同容量のTMPメモリを設けることで、ソース画像データの分割処理をディ示プレイ2dへの表示の2走査線分前に行い、描画を1走査線分前のタイミングで行うようにしても良い。
上述したように、図2の表示画面に表示される画像を合成するソース画像データにおいて、斜線で示す重なり領域に関して、表示優先度が低いソース画像データの画像メモリ2aに対するアクセスは、上部にあるソース画像データが透過色の画素データを有する以外には行われず、表示バッファに対するアクセスは、画素データが書き込まれたアドレスに対して、マークメモリのマークデータが検出されることでスキップされ、以降行われないために重ね書きによる無駄なアクセスが生じず、ソース画像データの合成にかかる時間を削減することができる。
【0036】
また、上述した第1の実施形態では、説明のために、画像メモリ2 aにおけるソース画像データのサイズと、表示画面に画像表示される画像のサイズとを同一として説明を行っている。
しかしながら、第1の実施形態の画像処理装置は、水平方向及び垂直方向の寸法の拡大または縮小が行われ、画像メモリ2aにおけるソース画像データのサイズと、表示バッファ2 e ,2 fに転送されるソース画像データ(表示画面に表示される画像)のサイズが異なる場合にも、各サイズの比率に基づき、表示画面におけるソース画像データの表示領域と画像メモリ2aのアドレスとから、必要となるソース画像データの画像メモリ2aにおけるアドレスを算出することが可能である。このため、本願発明の画像処理装置は、水平方向及び垂直方向またはいずれかの拡大及び縮小機能を有した画像処理装置に対しても応用することが可能である。
【0037】
また、第1の実施形態による画像処理装置は、複数のソース画像データを合成して画像を生成するとき、各ソース画像データの重なりあった部分に基づき、ソース画像データを分割画像データに分割し、各表示優先度の高いものから表示バッファ2e及び2fに書き込んでいくため、画像表示(描画)されるドットの画素データのみを、表示バッファに書き込むこととなり、画像メモリ2a及び表示バッファに対するアクセス回数を削減することができ、画像表示される画像を合成により生成する速度を高速化することが可能である。
これにより、第1の実施形態による画像処理装置は、3つのソース画像データデータatt−A,att−B及びatt−Cにおいて、表示優先度の低いソース画像データを順に表示バッファ1cに重ね書きしていく手法と同様の画像が得られるとともに、重ね書きした場合に消えてしまう下部のドットのデータの読み出しを画像メモリ2aから読み出すことが無く、無駄なアクセス時間(アクセス回数)を削減し、画像の合成処理を高速化する効果がある。
さらに、第1の実施形態による画像処理装置は、表示優先度の高いソース画像データにおけるドットの画素データが透過色である場合、このドットの下部に位置する次に表示優先度の高いソース画像データのドットの画像データを表示バッファ2e及び2fに書き込むため、ソース画像データatt−A,att−B及びatt−Cの重ね合わせにおいて、使用者が特に意識することなく、透過色の表示優先度の高いソース画像データの下部にあるソース画像データの画素データを削除すること無く表示することが可能となり、背景に対するキャラクタの合成画像などが容易に合成できる効果がある。
【0038】
<第2の実施形態>
次に、本発明の第2の実施形態による画像処理装置の説明を行う。
第2の実施形態による画像処理装置の構成は、図1に示す第1の実施形態による画像処理装置の構成と同様である。
以下の説明において、図1の画像メモリ2aには、図6に示すソース画像データatt−A,att−B,att−Cが格納されているとする。
第1及び第2の実施形態の異なる点は、アトリビュート変換回路2mがアトリビュート変換回路3mに、TMPメモリ2oがTMPメモリ3oへ変更されている点である。
アトリビュート変換回路3mは、アトリビュートコントローラ2kが画像メモリ2aから、走査線単位で画素データを読み出し表示バッファ(2eまたは2f)へ転送するとき、または、表示バッファへの書き込みの終了後に、ソース画像データの分割画像データの再分割を行う。
TMPメモリ3oは、内部に複数のテーブル(以下に示すテーブル31及び32等の複数のテーブル)の記憶領域を有しており、処理中に再分割後の分割画像データの表示アドレスを順次書き込んで行き、垂直同期信号の入力タイミングでリセットされる。
また、以下に示すTMPメモリ3oにおける各テーブルの表示アドレスの記憶形式は、図4に示すTMPメモリ2oと同様である。
以下の説明において、画像メモリ2aに格納されているソース画像データatt−A〜att−Cの表示優先度は、従来例及び第1の実施形態と同様に、ソース画像データatt−C〜att−Aの順に高くなっている(ソース画像データatt−Aが最も高く,ソース画像データatt−Cが最も低い)とする。
【0039】
また、第1の実施形態と第2の実施形態とにおける同様な機能の構成要素には同一の符号を付け説明を省略し、第2の実施形態において、アトリビュート変換回路3m及びTMPメモリ3oの構成及び動作の説明を、第1の実施形態のアトリビュート回路2m,TMPメモリ2oに追加された機能のみを、アトリビュートコントローラ2jの動作を含めて説明し、アトリビュート変換回路3m及びTMPメモリ3oにおける第1の実施形態のアトリビュート回路2m,TMPメモリ2oと同様な機能についての説明を、第1の実施形態におけるアトリビュート回路2m,TMPメモリ2o各々の説明を参照することとして省略する。
アトリビュート変換回路3mは、垂直カウンタ2hがインクリメントされる毎に、すなわち、垂直ポインタvが新たな走査線のアドレスを示したとき、画像処理の最初の段階において、アトリビュート変換回路2mがTMPメモリ3oへ表示アドレスを記憶させた第1の実施形態の処理と同様に、ソース画像データの表示優先度に基づき、これらソース画像データを分割画像データに分割し、その表示アドレスをTMPメモリ3oのテーブル31に、図4を用いて第1の実施形態で説明したTMPメモリ2oへの書き込みと同様に記憶させる。
ここで、アトリビュート変換回路3mは、各ソース画像データの分割後の分割画像データの表示アドレス(スタートアドレスhs及びエンドアドレスhe)の算出を、図5に示すディスプレイ2dでの表示において、各ソース画像データの重なりの組み合わせの異なる、垂直ポインタvの示す走査線のアドレスの範囲毎に行う。
そして、アトリビュートコントローラ2kは、TEMメモリ3o内のテーブル31に示される、ディスプレイ2dに表示される実質的な表示画像データである各分割画像データの表示アドレスに基づき、水平カウンタ2nのインクリメント動作毎に、表示バッファ2e(または表示バッファ2f)へ、画像メモリ2aから読み出す画素データを書き込む。
この表示バッファへの画素データの書き込みを行っているとき、または表示バッファへの書き込みの終了後に、アトリビュート変換回路3mは、TEMメモリ3oのテーブル31に記憶されている、各分割画像データの表示アドレスの再構成、すなわち表示優先度に従い、各ソース画像データを分割して生成した分割画像データの再分割を行う。
【0040】
ここで、アトリビュートコントローラ2kが、TMPメモリ3oのテーブル31に格納されている各分割画像データの表示アドレスに対応して、画像メモリ2aから画素データの読み出しを行っているとき、アトリビュート変換回路3mは、テーブル31において(すなわち、図5に示すディスプレイ2dの走査線のアドレス毎に)、再分割するソース画像データatt−Bより高い、すなわち最も表示優先度の高いソース画像データatt−Aの分割画像データ(実際には、分割されていないソース画像データatt−A)のアドレス領域と、次に表示優先度の高いソース画像データatt−Bとの重なり部分の検出を行う。
このとき、アトリビュート変換回路3mは、アトリビュートメモリ2iにおける各ソース画像データの表示アドレスに基づき、テーブル31において、ソース画像データatt−Bのスタートアドレスhsとエンドアドレスheとの間(表示アドレスの範囲)で、このソース画像データatt−Bと重なるソース画像データatt−Aの領域があるか否かの判定を、表示画面の走査線における各ソース画像データのスタートアドレスhs及びエンドアドレスheの示す範囲における重なり部分の検出により行う。
すなわち、アトリビュート変換回路3mは、ソース画像データatt−Bの表示アドレスの範囲において、ソース画像データatt−Bのスタートアドレスhsとソース画像データatt−Aのスタートアドレスhsとの比較を行い、ソース画像データatt−Bの方がソース画像データatt−Aより小さいスタートアドレスhsであれば、重なり部分の開始アドレスをソース画像データatt−Aのスタートアドレスhsの数値とし、一方、ソース画像データatt−Bの方がソース画像データatt−Aより大きいスタートアドレスhsであれば、重なり部分の開始アドレスをソース画像データatt−Bのスタートアドレスhsの数値とする。
また、アトリビュート変換回路3mは、ソース画像データatt−Bの表示アドレスの範囲において、ソース画像データのエンドアドレスheとソース画像データatt4のエンドアドレスheとの比較を行い、ソース画像データatt−Bの方がソース画像データatt−Aより大きいエンドアドレスhsであれば、重なり部分の終端アドレスをソース画像データatt−Aのエンドアドレスheの数値とし、一方、ソース画像データatt−Bの方がソース画像データatt−Aより小さいエンドアドレスheであれば、重なり部分の終端アドレスをソース画像データatt−Bのエンドアドレスheの数値とする。
これにより、アトリビュート変換回路3mは、上記開始アドレスと上記終端アドレスとで示される領域を重なり部分として検出する。
そして、アトリビュート変換回路3mは、上記重なり部分を、ソース画像データatt−Bの新たな分割画像データとする。
これにより、アトリビュート変換回路3mは、上記重なり部分の領域を、ソース画像データatt−Bの新たな分割画像データとし、新たな部分画像データの生成された表示アドレスの範囲のみを、TMPメモリ3o内のテーブル32へ格納する。
したがって、このとき、TMPメモリ内のテーブル32には、ソース画像データatt−Bの新たな分割画像データの表示アドレス(スタートアドレスhs及びエンドアドレスhe)のみが記憶されている。
【0041】
すなわち、アトリビュートコントローラ2kが各分割画像データを表示バッファ2E(または表示バッファ2f)に転送するとき、アトリビュート変換回路3mは、TMPメモリ3oのテーブル31における表示アドレスの再構成を行う(再分割を行う)ソース画像データatt−Bと、このソース画像データatt−Bより表示優先度の高いソース画像データatt−Aとの重なり部分を、新たなソース画像データatt−Bの分割画像データとすることにより、ソース画像データatt−Bの再分割、すなわちソース画像データatt−Bの部分画像データに対して表示アドレスの再構成を行う。
また、アトリビュート変換回路3mは、TMPメモリ3o内のテーブル31において、ソース画像データatt−Bの新たな分割画像データの表示アドレスに対応する領域を、ソース画像データatt−Bの画素データの領域とする。
すなわち、アトリビュート変換回路3mは、TMPメモリ3o内のテーブル31の部分画像データの表示アドレス,及び各ソース画像データの表示アドレスにおいて検出された、ソース画像データatt−Aにおけるソース画像データatt−Bとの重なり部分を、TMPメモリ3o内のテーブル31におけるソース画像データatt−Bの新たな分割画像データの領域とする。
これにより、TMPメモリ3o内のテーブル31においては、ソース画像データatt−Bの全ての表示アドレスの領域が示され、ソース画像データatt−Bと重なっていないソース画像データatt−Aの領域が新たに分割画像データとして残り、他の分割画像データの表示アドレスに対する範囲の変更は無い。
次に、アトリビュートコントローラ2kが、バッファ2e(または2f)に画素データを転送するため、TMPメモリ3oのテーブル32に格納されている再分割により生成された表示アドレスに対応して、画像メモリ2aから画素データを読み出しているとき、アトリビュート変換回路3mは、テーブル31において、次に再分割を行うソース画像データatt−Cより表示優先度の高いソース画像データatt−A,att−Bの分割画像データの表示アドレスの範囲と、再分割を行うソース画像データatt−Cとの重なり部分を検出し、上述したソース画像データatt−Bの再分割処理と同様に各ソース画像データatt−Cの再分割処理を行う。
【0042】
このバッファ2e(または2f)に画素データを転送するとき、水平カウンタ2nは、テーブル32の表示アドレスの範囲内においてカウント動作を行う。
すなわち、アトリビュートコントローラ2kは、新たに生成された分割画像データの表示アドレスの範囲のみの画素データを、バッファ2e(または2f)へ対しての書き込み処理を行うこととなり、マークメモリにおけるマークデータの書かれていない全ての画素データを、画像メモリ2aから読み出すわけではないので、読み出し時間を短縮することができる。
したがって、アトリビュートコントローラ2kは、第1の実施形態と同様に表示アドレスに対応して画像メモリ2aから画素データの読み出し処理を行うが、再分割処理により順次変更されるTMPメモリ3oの各テーブルに基づいた読み出しを行うため、実質的に、表示バッファ2e(または表示バッファ2f)に対して、再分割して新たに生成される分割画像データの上部にあるソース画像データの透過色の領域に、再分割されたソース画像データの分割画像データの画素データを書き込む制御を行うこととなる。
【0043】
すなわち、アトリビュート変換回路3mは、順次、再分割の処理を行うとき、再分割の対象となるソース画像データを、TMPメモリ3o内に最初に生成したテーブル31の中で、2番目に高い表示優先度のソース画像データから順番に選択し、再分割するソース画像データとする。
そして、アトリビュート変換回路3mは、TMPメモリ3oにおける最初に作成された、表示優先度に対応して生成された各分割画像データの表示バッファが記載されたテーブル31に基づき、選択された再分割するソース画像データの表示アドレスと、この再分割するソース画像データより表示優先度の高いソース画像データの表示アドレスとを比較して、選択された再分割するソース画像データの表示アドレスと、この再分割するソース画像データより表示優先度の高いソース画像データとの重なり部分の領域を検出する。
第2の実施形態において、アトリビュートコントローラ2k及びアトリビュート変換回路3mは、ディスプレイ2dの対応する垂直ポインタVの指し示す走査線に存在するソース画像データにおいて、すなわち、この走査線に存在しないソース画像データに対する処理を行わずに、上述したソース画像データの再分割処理を、アトリビュートメモリ2iにおける各ソース画像データの表示アドレスに基づき、ディスプレイ2dに表示される走査線毎に、すなわちTMPメモリ3oのテーブル31に存在する最も低い表示優先度のソース画像データの処理が終了するまで、高い表示優先度のソース画像データ毎に順次行う。
【0044】
次に、図1〜図9を参照し、第2の実施形態の動作例を説明する。ここで、図1の画像メモリ2aには、図6に示すソース画像データatt−A,att−B及びatt−Cが記憶されており、アトリビュートメモリ2iには図5の画像を合成するアトリビュートデータが格納されているとする。
アトリビュートメモリ2iには、第1の実施形態の画像処理装置と同様に、ディスプレイ2dに供給される垂直同期信号が入力され、垂直カウンタ2hが出力する垂直ポインタvがインクリメントされる毎に、ディスプレイ2dの1フレームに画像表示される合成画像を形成するデータ、すなわち、画像の合成に使用する各ソース画像データの画像メモリにおけるソースアドレス,ディスプレイ2d(画像表示装置)の画面上における表示位置を示す表示アドレス,表示優先度などを含むアトリビュートデータなどが格納される。
また、表示優先度は、ソース画像データatt−Aが最も高く、ソース画像データatt−Cが最も低いとする。このとき、図3のプライオリティエンコーダ4lにおいては、ソース画像データatt−A,att−B及びatt−Cに対応する水平表示判断回路の出力が各々端子T4,T3及びT2に入力され、端子T1及び端子T0には「H」レベルの電圧が入力されている。
【0045】
アトリビュートメモリ2iには、ディスプレイ2dから垂直同期信号が入力されると、表示画面に次に表示される図5に示す画像のアトリビュートデータが転送され、格納される。
そして、垂直カウンタ2hは、走査信号が入力される毎に、インクリメントして計数値をアトリビュートコントローラ2kへ出力する。
これにより、アトリビュートコントローラ2kは、素直カウンタ2hからの計数値から求められる表示画面上の垂直ポインタvの値が、各ソース画像データの垂直方向の領域を示すスタートアドレスからエンドアドレスまでの範囲内にあるか否かの判定を行う。
ここで、アトリビュートコントローラ2kは、垂直ポインタvがソース画像アドレスのスタートアドレスv0となると、すなわち、垂直ポインタvの値がアドレスv0となると、ソース画像データatt−Bのデータ領域の範囲となったことを検出する。
【0046】
これにより、アトリビュートコントローラ2kは、アトリビュート変換回路2mに対して、検出信号vvldを出力する。
そして、アトリビュート変換回路3mは、検出信号vvldの入力処理により、分割処理を開始するが、アトリビュートデータに基づき、ソース画像データatt−Bが他のソース画像データと重なり合っていないことを検出し、ソース画像アドレスatt−Bの分割を行わない。
次に、アトリビュートコントローラ2kは、ソースアドレス算出回路2lに対して、表示画像データのアドレス領域を、TMPメモリ3oのテーブル31に示される、ディスプレイ2dにおける表示位置を示す表示アドレスから、画像メモリ2aにおける記憶位置を示すソースアドレスへ変換する処理を指示する。
そして、ソースアドレス算出回路2lは、アトリビュートデータにおけるソース画像データAtt−Bの、表示アドレスとソースアドレスとの関係に基づき、表示アドレスのアドレスv0(図5)を、ソースアドレスのアドレスy2(図6)に変換し、かつ、水平ポインタhの示す水平方向の表示アドレスのアドレスh1を、ソースアドレスのアドレスx0に変換する。
【0047】
また、透過色検出回路2rは、アトリビュートコントローラ2kが上記ソースアドレスに基づき、画像メモリ2aから順次読み出される、垂直ポインタy2におけるスタートアドレスx0からエンドアドレスx2までの画素データを、透過色か否かの検出を行う。
ここで、透過色検出回路2rは、スタートアドレスx0からエンドアドレスx2までの画素データが全て透過色であるので、アトリビュートコントローラ2k内のマークメモリにマークデータを書き込まない。
したがって、アトリビュートコントローラ2kは、ポインタv0に対応する走査線のドットに表示する画素データが無いことを検出し、画像メモリ2aから読み出したスタートアドレスx0からエンドアドレスx2までの画素データを、表示バッファ2eに書き込まない(ポインタvの示すv0は偶数アドレスの走査線であるため)。
【0048】
次に、垂直カウンタ2hが走査信号の入力により順次インクリメントされ、計数値の垂直ポインタvがアドレスv23の位置の奇数アドレスの走査線となったとする。
アトリビュート変換回路3mは、このアドレスv23の位置において、アトリビュートメモリ2iのデータから、ソース画像データatt−A,att−B及びatt−Cの画像が全て重なり合っていることを検出する。
このため、アトリビュート変換回路3mは、上記各ソース画像データの重なり合った部分の分割を行う。
アトリビュート変換回路3mは、図7において示すように、表示優先度を考慮して、ソース画像データatt−Aを分割せず、ソース画像データatt−Bをソース画像データatt−Aにより、分割画像データatt−B1及び分割画像データatt−B2へ2分割し、同様に、ソース画像データatt−Cをソース画像データatt−Bにより、分割画像データatt−C1及び分割画像データatt−C2へ2分割する。
ここで、図7〜図9において、白抜きの長方形で示されている領域が画像表示(描画)されるドット(画素データが透過色でない)の部分を示し、実線で示されている領域が画像表示されないドット(画素データが透過色である)の部分を示している。
【0049】
そして、図7に示す様に、アトリビュート変換回路3mは、ディスプレイ2dのアドレスv23の位置の奇数アドレスの走査線に表示される分割画像データatt−B1,分割画像データatt−B2,分割画像データatt−C1及び分割画像データatt−C2各々の分割後のスタートアドレスhs及びエンドアドレスheを求め、この結果をTMPメモリ3o内のテーブル31へ格納する。
例えば、アトリビュート変換回路3mは、分割画像データatt−B1の範囲を示すスタートアドレスhs及びエンドアドレスheを、スタートアドレスh1及びエンドアドレスh2−1とし、分割画像データatt−B2の水平方向の範囲を示すスタートアドレス及びエンドアドレスを、スタートアドレスh3及びエンドアドレスh4として上記テーブル31へ格納する。
また、アトリビュート変換回路3mは、分割画像データatt−C1の範囲を示すスタートアドレスhs及びエンドアドレスheを、スタートアドレスh0及びエンドアドレスh1−1とし、分割画像データatt−C2の範囲を示すスタートアドレスhs及びエンドアドレスheを、スタートアドレスh4及びエンドアドレスh5−1としてテーブル31へ格納する。
【0050】
そして、ソースアドレス算出回路2lは、TMPメモリ3o内のテーブル31に記憶されている、分割後の各分割画像データの範囲を示すスタートアドレスh1及びエンドアドレスh2−1から、アトリビュートデータに基づき、分割画像データatt−B1の画像メモリ2aにおける水平方向の範囲を示すスタートアドレスxs及びエンドアドレスxeを、各々スタートアドレスx0,エンドアドレス(x0+h2−1−h1)と演算する。
また、ソースアドレス算出回路2lは、分割後の各分割画像データの範囲を示すスタートアドレスh3及びエンドアドレスh4から、アトリビュートデータに基づき、分割画像データatt−B2の画像メモリ2aにおける水平方向の範囲を示すスタートアドレス及びエンドアドレスを、各々スタートアドレス(x0+h3−h1),エンドアドレス(x0+h4−h1)と演算する。
同様に、ソースアドレス算出回路2lは、分割画像データatt−B1及び分割画像データatt−B2の画像メモリ2aでの範囲を示すスタートアドレスhs及びエンドアドレスheを、各々スタートアドレスx0,エンドアドレス(x0+h1−1−h0)及びスタートアドレス(x0+h4−h0),エンドアドレス(x0+h5−1−h0)と演算する。
【0051】
また、ソースアドレス算出回路2lは、ソース画像データatt−A及び分割後の各分割画像データの垂直ポインタの示すアドレスv23から、アトリビュートデータに基づき、ソース画像データatt−A及び分割後の上記各分割画像データの画像メモリ2aにおける垂直方向のアドレスを求める。
例えば、ソースアドレス算出回路2lは、ソース画像データatt−Aの垂直方向のアドレスv23に対応する垂直方向のアドレスをアドレス(y0+v23−v2)と演算し、同様に、分割画像データatt−B1,分割画像データatt−B2のアドレスv23に対応するアドレスをアドレス(y2+V23−v0)と演算し、分割画像データatt−C1及び分割画像データatt−C2のアドレスv23に対応する垂直方向のアドレスをアドレス(y4+V23−v1)と演算する。
【0052】
そして、アトリビュートコントローラ2kは、この時点で、より高い表示優先度を有する画像データと重ならない分割画像データatt−C1,att−B1,att−B2,att−C2と、ソース画像データatt−Aの各々のアドレスv23及びポインタhとで選択されるドットの画素データを、水平カウンタ2nがポインタh(水平ポインタh)の値をインクリメントする毎に画像メモリ2aから読み出す。
このとき、透過色検出回路2rは、読み出した分割画像データにおける各ドットの画素データが透過色か否かの判定を行う。
そして、透過色検出回路2rは、アトリビュートコントローラ2kの読み出した画素データにおいて、透過色でない画像データのドットが分割画像データatt−C1のアドレスh01〜アドレスh1−1までのドットの画素データと、ソース画像データatt−Aのアドレスh23〜アドレスh24−1までのドットの画素データとであることを検出し、マークメモリに各ドットの表示アドレスに対応させマークデータを書き込む。
これにより、アトリビュートコントローラ2kは、表示バッファ2fに対して、垂直ポインタv23の位置における分割画像データatt−C1の水平方向のアドレスh01〜アドレスh1−1までのドットの画素データと、ソース画像データatt−Aの水平方向のアドレスh23〜アドレスh24−1までのドットの画素データとを書き込む。
【0053】
また、このとき、アトリビュート変換回路3mは、テーブル31の表示アドレスに対応して、アトリビュートコントローラ2kが画素データを画像メモリ2aから読み出すとき、テーブル31のなかで2番目に表示優先度の高いソース画像データ、すなわちソース画像データatt−Bを、再分割するソース画像データとして選択する。
そして、アトリビュート変換回路3mは、この選択されたソース画像データatt−Bと重なり合う、このソース画像データatt−Bより表示優先度の高いソース画像データatt−Aの領域を検出し、この重なり合う領域を、ソース画像データatt−Bの新たな分割画像データとすることで再分割を行う。
これにより、アトリビュート変換回路3mは、再分割後のソース画像データatt−Bの新たな分割画像データの表示アドレスの範囲(スタートアドレスhsとエンドアドレスheとの範囲)を、TMPメモリ3o内のテーブル32へ書き込む(格納する)。
このとき、アトリビュート変換回路3mは、テーブル31において2番目に表示優先度の高いソース画像データatt−Bの表示範囲、すなわちスタートアドレスh1〜エンドアドレスh4−1の範囲で、ソース画像データatt−Bより表示優先度の高いソース画像データatt−Aの領域の検出を開始する。
ここで、アトリビュート変換回路3mは、ソース画像データatt−Aの表示アドレスの範囲が上述したソース画像データatt−Bの表示アドレスの領域に含まれていることを検出する。
すなわち、アトリビュート変換回路3mは、ソース画像データatt−Aのスタートアドレスh2がソース画像データatt−Bのスタートアドレスh1より大きく、ソース画像データatt−Aのエンドアドレスh3−1がソース画像データatt−Bのエンドアドレスh4−1より小さいことを検出する。
これにより、アトリビュート変換回路3mは、ソース画像データatt−Aとソース画像データatt−Bとの重なり部分のアドレスh2からアドレスh3−1までの領域を、ソース画像データatt−Bの新たな分割画像データatt−B3とする。
そして、アトリビュート変換回路3mは、ソース画像データatt−Bの新たな分割画像データとして、表示アドレスの範囲がスタートアドレスh2〜エンドアドレスh3−1の分割画像データatt−B3を生成し、この表示アドレスの範囲をTMPメモリ3o内のテーブル32に書き込む。
このとき、アトリビュート変換回路3mは、図8に示すように、TMPメモリ3o内のテーブル31における各分割画像データの表示アドレスの範囲において、ソース画像データatt−Aがソース画像データatt−Bと重なっている部分(分割画像データatt−B3の表示アドレス範囲)を、分割画像データatt−B3と置換する(分割画像データatt−B3の領域を上書きする)。
これにより、実質的に、図8に示す上記テーブル31には、ソース画像データatt−B(分割画像データatt−B1,att−B2,att−B3の表示アドレスの範囲が加算されたもの)の表示アドレスの範囲と、分割画像att−C1及び分割画像データacc−C2の表示アドレスの範囲とが記憶されている。
【0054】
次に、アトリビュートコントローラ2kは、図8に示すマークメモリの状態において、マークデータが書き込まれていない水平ポインタhのアドレスがあることを検出し、マークデータの書き込まれていないアドレスに対応する表示バッファ2fのアドレスに、画素データを書き込む処理を開始する。
そして、アトリビュートコントローラ2kは、テーブル32に書き込まれている分割画像データatt−B3の表示アドレスの範囲の画素データを、テーブル32の表示アドレスの範囲、すなわち分割画像データatt−B3の表示アドレスの範囲(スタートアドレスh2〜エンドアドレスh3−1まで)において、水平カウンタ2nの出力するポインタhに対応する表示アドレス毎に、画像メモリ2aから読み出す。
このとき、水平カウンタ2nは、テーブル32の分割画像データatt−B3の表示アドレスの範囲内、すなわちスタートアドレスh2〜エンドアドレスh3−1の範囲においてカウント動作を行う。
そして、アトリビュートコントローラ2kは、マークメモリにマークデータが記載されていない表示アドレスを検出する毎に、ソースアドレス算出回路2lがこのテーブル32の表示アドレスから変換したソースアドレスに基づき、このソースアドレスに対応するドットの画素データを画像メモリ2aから読み出し、この画素データを表示バッファ2fの上記表示アドレスに対応するアドレスに書き込む処理を行う。
【0055】
このとき、アトリビュートコントローラ2kは、上記ドットの画素データが画像メモリ2aから読み出される毎に、透過色検出回路2rにより、この読み出された画素データが透過色か否かの判定を行い、透過色でないと判定された画素データのみを、表示バッファ2fの上記表示アドレスに対応するアドレスに書き込む。
また、アトリビュートコントローラ2kは、マークメモリに対して、画素データが書き込まれた表示バッファ2fのアドレスに対応するアドレスにマークデータを書き込む。
これにより、アトリビュートコントローラ2kは、変更されたマークメモリのマークデータのアドレス、すなわち、垂直ポインタvの示すアドレスv23の位置におけるソース画像データatt−Bのアドレスh22〜アドレスh23−1までのドットの画素データを表示バッファ2fの対応する位置に書き込む。
【0056】
また、このとき、アトリビュート変換回路3mは、アトリビュートコントローラ2kが画素データを画像メモリ2aから読み出しを行っているとき、テーブル31において再分割を行う3番目に表示優先度の高いソース画像データ、すなわちソース画像データatt−Cの画素データと重なり合う、ソース画像データatt−Cより表示優先度の高いソース画像データatt−A,att−Bの領域(実際にはソース画像データatt−Bのみ)を、ソース画像データatt−Cの新たな分割画像データの領域に変更し、ソース画像データatt−Cの再分割を行い、再分割後の新たな分割画像データatt−C3の表示アドレスの範囲をスタートアドレスh11〜エンドアドレスh4−1として、TMPメモリ3o内のテーブル33へ書き込む。
すなわち、アトリビュート変換回路3mは、テーブル31において、3番目に表示優先度の高いソース画像データatt−Cの表示アドレスの範囲のスタートアドレスh0〜エンドアドレスh5−1のあいだにある、ソース画像データatt−Cより表示優先度の高いソース画像データatt−A,att−Bまたはこれらの分割画像データの領域の検出を開始する。
ここで、アトリビュート変換回路3mは、上述したソース画像データatt−Bの再分割のときと同様に、ソース画像データatt−Bがソース画像データatt−Cの表示バッファの範囲(アドレスh11〜アドレスh4−1の範囲)にあることを検出し(重なり合う部分を検出し)、この重なり部分の領域を、ソース画像データatt−Cの新たな分割画像データatt−C3の表示アドレスの範囲とする。
そして、アトリビュート変換回路3mは、図9に示すように、TMPメモリ3o内のテーブル31における各分割画像データの表示アドレスの範囲において、ソース画像データatt−Bがソース画像データatt−Cと重なっている部分(分割画像データatt−C3の表示アドレス範囲)を、分割画像データatt−C3と置換する(分割画像データatt−C3の領域を上書きする)。
これにより、実質的に、図9に示す上記テーブル31には、ソース画像データatt−C(分割画像データatt−C1,att−C2,att−C3の表示アドレスの範囲が加算されたもの)の表示アドレスの範囲のみが記憶されている。
【0057】
次に、アトリビュートコントローラ2kは、図9に示すマークメモリの状態において、マークデータが書き込まれていない水平ポインタhのアドレスがあることを検出し、マークデータの書き込まれていないアドレスに対応する表示バッファ2fのアドレスに、画素データを書き込む処理を開始する。
そして、アトリビュートコントローラ2kは、テーブル33に書き込まれている分割画像データの画素データを、水平カウンタ2nの出力するポインタhに対応する表示アドレス毎に読み出す。
このとき、水平カウンタ2nは、テーブル32の分割画像データatt-C3の表示アドレスの範囲内、すなわちスタートアドレスh11〜エンドアドレスh4−1の範囲においてカウント動作を行う。
そして、アトリビュートコントローラ2kは、マークメモリにマークデータが記載されていない表示アドレスを検出する毎に、ソースアドレス算出回路2 lがこの表示アドレスから変換したソースアドレスに基づき、このソースアドレスに対応するドットの画素データを画像メモリ2 aから読み出し、この画素データを表示バッファ2fの上記表示アドレスに対応するアドレスに書き込む処理を行う。
【0058】
このとき、アトリビュートコントローラ2kは、上記ドットの画素データが画像メモリ2aから読み出される毎に、透過色検出回路2rにより、この読み出された画素データが透過色か否かの判定を行い、透過色でないと判定された画素データのみを、表示バッファ2fの上記表示アドレスに対応するアドレスに書き込む。
また、アトリビュートコントローラ2kは、マークメモリに対して、画素データが書き込まれた表示バッファ2fのアドレスに対応するアドレスにマークデータを書き込む。
これにより、アトリビュートコントローラ2kは、変更されたマークメモリのマークデータのアドレス、すなわち、垂直ポインタvの示すアドレスv23の位置における部分画像データatt−C1のアドレスh1〜アドレス11−1,アドレスh21〜アドレスh22−1,アドレスh24〜アドレスh25−1の各範囲のドットの画素データを表示バッファ2fの対応する位置に書き込む。
【0059】
また、このとき、アトリビュート変換回路3mは、テーブル31においてソース画素データが最も低い表示優先度であることを検出することにより、アトリビュートコントローラ2kが画素データを画像メモリ2aから読み出すとき、テーブル32のなかで再分割するソース画像データが無いため、ソース画像データatt−A,att−B,att−Cの領域の抽出を行わない。
また、最も表示優先度の低いソース画像データに達しない場合でも、マークメモリの全てのアドレスにデータが書き込まれれば、アトリビュートコントローラ2kは、表示バッファ2fに対する画素データの書き込みを終了する。
そして、垂直カウンタ2hは、ディスプレイ2dから次の走査信号が入力されると、インクリメントされ、計数結果として、ディスプレイ2dの表示画面上の走査信号の出力される走査線の位置を示す垂直ポインタvをV23+1として出力する。
これにより、アトリビュートコントローラ2kは、次の走査線の画素データの書き込みを表示バッファ2eに対して行う。
そして、本願発明の画像処理装置は、上述した処理を繰り返すことにより、ディスプレイ2dに、画像メモリ2aに記憶されているソース画像データを重ね合わせた画像の表示を行う。
【0060】
上述したように、第2の実施形態によるアトリビュートコントローラ2kは、複数のソース画像データを合成して画像を生成するときに、各走査線毎において、テーブル31の各分割画像データの表示アドレスに対応して、画像メモリ2aから画素データを読み出し、表示バッファにこのがぞデータの書き込みを行うとき、アトリビュートメモリ2iで2番目に表示優先度の高いソース画像データから順に、複数のソース画像データのなかから再分割するソース画像データを選択し、この再分割する画像データと、このソース画像データより高い表示優先度を有するソース画像データとの重なり部分を検出し、この重なり部分を再分割するソース画像データの新たな分割画像データとして、再分割処理を行い、順次TMPメモリ3o内の各テーブルに書き込んでいくことにより、複数のソース画像データの合成により生じる重なり部分において、上部の(表示優先度の高い)ソース画像データの画素データが透過色である場合、このドットの画素データを表示バッファ2eまたは表示バッファ2fに転送する処理を、マークメモリのマークデータ及び上記各テーブルの表示アドレスに基づき行うため、画像メモリ2aから必要以上の画素データを読むことなく、下部にあるソース画像データの透過色でない画素データを、表示バッファ2e(または2f)に対して書き込みことが可能なため、従来の様に表示バッファにおける画素データの重ね書きを防止することで、画像メモリ2aに対する不必要なアクセスを削減し、画像メモリ2aから画素データを読み出す回数を減少させることができ、ソース画像データの合成にかかる時間を削減することができる。
【0061】
なお、上述の第2の実施形態の構成においても、第1の実施形態と同様に、アトリビュートコントローラ2kにおけるマークラムに対するアクセス速度と、表示バッファ2e及び2fに対するアクセス速度とが同様であると、すでにマークメモリに書き込まれているマークデータの書き込まれたドットのアドレスを確認する時間と、表示バッファ2e及び2fに画素データを書き込む時間とが重なるため、マークメモリへのアクセスタイムを表示バッファ2e及び2fに対するアクセスタイムに対して高速化し、マークメモリにおいてマークデータが連続して書き込まれている領域をスキップして検出することが必要である。
【0062】
以上の動作を垂直カウンタの値が表示アドレスの垂直ポインタvの取りうる範囲、すなわち表示画面の走査線数分を繰り返し、すべての走査線の描画を完了することで1画面(1フレーム)の画像が構成される。
なお、上述した第2の実施形態では、説明のために、ソース画像データの数を4及び3として説明したが、同様の回路をソースデータの数だけ用意することで、合成に使用するソース画像データの数を適時増加させることが可能である。
また、1走査線の時間内にソース画像データの分割処理と描画(表示メモリへの書き込み)とを同時に完了する様にしているが、さらに1走査線分のディレイ、及びTMPメモリ2oと同容量のTMPメモリを設けることで、ソース画像データの分割処理をディ示プレイ2dへの表示の2走査線分前に行い、描画を1走査線分前のタイミングで行うようにしても良い。
上述したように、図2の表示画面に表示される画像を合成するソース画像データにおいて、斜線で示す重なり領域に関して、表示優先度が低いソース画像データの画像メモリ2aに対するアクセスは、上部にあるソース画像データが透過色の画素データを有する以外には行われず、表示バッファに対するアクセスは、画素データが書き込まれたアドレスに対して、マークメモリのマークデータが検出されることでスキップされ、以降行われないために重ね書きによる無駄なアクセスが生じず、ソース画像データの合成にかかる時間を削減することができる。
【0063】
また、上述した第2の実施形態では、説明のために、画像メモリ2aにおけるソース画像データのサイズと、表示画面に画像表示される画像のサイズとを同一として説明を行っている。
しかしながら、第1の実施形態と同様に、第2の実施形態の画像処理装置は、水平方向及び垂直方向の寸法の拡大または縮小が行われ、画像メモリ2aにおけるソース画像データのサイズと、表示バッファ2e及び2fに転送されるソース画像データ(表示画面に表示される画像)のサイズが異なる場合にも、各サイズの比率に基づき、表示画面におけるソース画像データの表示領域と画像メモリ2aのアドレスとから、必要となるソース画像データの画像メモリ2aにおけるアドレスを算出することが可能である。このため、本願発明の画像処理装置は、水平方向及び垂直方向またはいずれかの拡大及び縮小機能を有した画像処理装置に対しても応用することが可能である。
【0064】
また、第2の実施形態による画像処理装置は、複数のソース画像データを合成して画像を生成するとき、各ソース画像データの重なりあった部分に基づき、アトリビュート変換回路2mがソース画像データを分割及び再分割してTMPメモリ3oの各テーブルに書き込んだ各々の分割画像データの表示アドレスにより、表示バッファ2eまたは2fに書き込んでいくため、再分割された分割画像データの表示アドレスの範囲のみのドットの画素データを、画像メモリ2aから読み出して表示バッファに書き込むこととなり、画像メモリ2a及び表示バッファに対するアクセス回数を削減することができ、画像表示される画像を合成により生成する速度を高速化することが可能である。
これにより、第2の実施形態による画像処理装置は、3つのソース画像データデータatt-A,att-B及びatt-Cにおいて、表示優先度の低いソース画像データから順に、画素データを表示バッファ1cに重ね書きしていく従来の手法と同様の画像が得られるとともに、重ね書きした場合に消えてしまう下部のドットのデータの読み出しを画像メモリ2 aから読み出すことが無く、無駄なアクセス時間(アクセス回数)を削減し、画像の合成処理を高速化する効果がある。
さらに、第2の実施形態による画像処理装置は、表示優先度の高いソース画像データにおけるドットの画素データが透過色である場合、順次、このドットの下部に位置する次に表示優先度の高いソース画像データのドットの画像データを表示バッファ2 e ,2 fに書き込むため、ソース画像データatt-A,att-B及びatt-Cの重ね合わせにおいて、使用者が特に意識することなく、透過色の表示優先度の高いソース画像データの下部にあるソース画像データの画素データを削除すること無く表示することが可能となり、背景に対するキャラクタの合成画像などが容易に合成できる効果がある。
【0065】
以上、本発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。
例えば、第1及び第2の実施形態における表示バッファ2e及び2fに代え、表示画面に表示される1フレームの合成画像の全ての画素データを格納できるフレームメモリを設け、重なりあうソース画像データの部分の処理を行いつつ画像メモリ2aから画素データを読み込み、表示する合成画像をこのフレームメモリ上に生成する構成を第3の実施形態とする。このとき、生成された合成画像は、水平同期信号が入力される毎にディスプレイ2dへ出力される。
この第3の実施形態において、フレームメモリへのデータの書き込み以外の動作は、上述した第1及び第2の実施形態の画像処理装置と同様である。
この第3の実施形態によれば、第1及び第2の実施形態と同様の効果が得られる。
【0066】
【発明の効果】
本発明の画像処理装置によれば、表示優先度の高いソース画像データにおけるドットの画素データが透過色である場合、このドットの下部に位置する次に表示優先度の高いソース画像データのドットの画像データを表示バッファに書き込む処理を行うため、複数のソース画像データの重ね合わせにおいて、背景に対するキャラクタの合成などが容易に実現できる効果がある。
【図面の簡単な説明】
【図1】本発明の第1及び第2の実施形態による画像処理装置の構成を示すブロック図である。
【図2】表示装置に表示される画像データを示す概念図である。
【図3】図1の画像メモリ2aに書き込まれる画像を示す概念図である。
【図4】図1におけるTMPメモリ2o(またはTMPメモリ3oにおけるテーブル31,32,33)の記憶フォーマットを示す図である。
【図5】表示装置に表示される画像データを示す概念図である。。
【図6】図1の画像メモリ2aに書き込まれる画像を示す概念図である。
【図7】第1及び第2の実施形態の画像処理装置の動作例を説明する概念図である。
【図8】第1及び第2の実施形態の画像処理装置の動作例を説明する概念図である。
【図9】第1及び第2の実施形態の画像処理装置の動作例を説明する概念図である。
【図10】従来例による画像処理装置の構成を示す概念図である。
【符号の説明】
2a 画像メモリ 2b 画像メモリコントローラ
2c 表示送出コントローラ 2d ディスプレイ
2e,2f 表示バッファ 2g 1ラインディレイ
2h 垂直カウンタ 2i アトリビュートメモリ
2j 表示バッファコントローラ 2k アトリビュートコントローラ
2l ソースアドレス算出回路 2m,3m アトリビュート変換回路
2n 水平カウンタ 2o,3o TMPメモリ
2r 透過色検出回路
Claims (7)
- 複数のソース画像データを格納する画像メモリと、
前記画像メモリに格納されたソース画像データに対応して、該ソース画像データ毎の該画像メモリにおけるソースアドレスおよび画像表示装置の画面における表示アドレスを含むアトリビュートデータを格納するアトリビュートメモリと、
複数のソース画像データが重なるとき、下部のソース画像データの重なり部分を除き、該ソース画像データを分割画像データに分割し、各分割画像データの分割表示アドレスを算出して、テンポラリメモリに格納するアトリビュート変換回路と、
前記表示アドレスから前記分割画像データの画像メモリにおけるソースアドレスを算出し、該ソースアドレスを出力するソースアドレス算出回路と、
前記ソースアドレスに基づき、前記画像メモリからソース画像データを読み出す画像メモリコントローラと、
前記アトリビュートデータに基づき、読み出されたソース画像データの各画素データが透過色であるか否かを検出する透過色検出回路と、
優先度の高い順に、透過色でないと検出されたソース画像データの画素データを、表示アドレスに対応させて表示バッファに格納するアトリビュートコントローラと、
表示バッファに格納された画素データを前記表示装置に出力する表示送出コントローラとを具備し、
前記透過色検出回路は、アトリビュートコントローラが表示バッファに画素データを格納するとき、画素データが透過色でない場合、
アトリビュートコントローラ内のマークメモリにマークデータを書き込み、
また、前記アトリビュートコントローラは、前記マークメモリにマークデータが書き込まれている場合、このマークデータが書き込まれたアドレスに対応するアドレスの画素データの読み出しを前記画像メモリから行なわず、前記マークメモリにマークデータが書き込まれていない場合、この書き込まれていないアドレスに対応する前記バッファメモリの領域に、下部の分割画像データの画素データの書き込み処理行うことを特徴とする画像処理装置。 - 前記アトリビュート変換回路が、前記ソース画像データの分割処理を、前記表示バッファに1ライン分のドットの画像データを書き込む毎に行うことを特徴とする請求項1に記載の画像処理装置。
- 前記アドレス算出回路が、前記アトリビュートデータに基づき、前記分割画像データの表示アドレスを、ソースアドレスに変換することを特徴とする請求項1または請求項2に記載の画像処理装置。
- 前記アトリビュートコントローラが、前記重なり部分の上部のソース画像データが透過色である場合、その透過色である画素データの下部の分割画像データにおける画素データを表示バッファへ転送させる処理を、順次高い表示優先度のソース画像データから低い優先度のソース画像データに対して行うことを特徴とする請求項1から請求項3のいずれかに記載の画像処理装置。
- 前記アトリビュートコントローラが分割表示アドレスで示された範囲の前記各分割画像データを前記表示バッファに転送することを特徴とする請求項1から請求項4のいずれかに記載の画像処理装置。
- 前記アトリビュート変換回路が、アトリビュート変換回路が前記テンポラリメモリ内の分割画像データの表示優先度の高い順に、再分割するソース画像データを選択し、選択されたソース画像データと、このソース画像データより表示優先度の高いソース画像データとの重なり部分を検出し、この前記重なり部分を、前記選択されたソース画像データの新たな分割画像データとし、この新たな分割画像データの表示アドレスを生成して、前記テンポラリメモリに書き込むことを特徴とする請求項1から請求項5のいずれかに記載の画像処理装置。
- 前記テンポラリメモリが前記表示アドレスを格納する複数のテーブルを有し、前記アトリビュート変換回路が、この各テーブル毎に、順次、再分割される新たな分割画像データを対応させ、対応するテーブルに、分割画像データの表示アドレスを格納することを特徴とする請求項1から請求項6のいずれかに記載の画像処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001133332A JP3612035B2 (ja) | 2000-11-29 | 2001-04-27 | 画像処理装置 |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000362976 | 2000-11-29 | ||
| JP2000-362976 | 2000-11-29 | ||
| JP2001133332A JP3612035B2 (ja) | 2000-11-29 | 2001-04-27 | 画像処理装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2002229554A JP2002229554A (ja) | 2002-08-16 |
| JP3612035B2 true JP3612035B2 (ja) | 2005-01-19 |
Family
ID=26604822
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001133332A Expired - Fee Related JP3612035B2 (ja) | 2000-11-29 | 2001-04-27 | 画像処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3612035B2 (ja) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006108967A (ja) * | 2004-10-04 | 2006-04-20 | Dainippon Printing Co Ltd | オーバープリント処理を施した製版データ作成方法、装置 |
| JP5523035B2 (ja) | 2009-09-18 | 2014-06-18 | パナソニック株式会社 | 画像処理装置、及び画像処理方法 |
| JP2014186196A (ja) * | 2013-03-25 | 2014-10-02 | Toshiba Corp | 映像処理装置および映像表示システム |
| KR102287400B1 (ko) | 2015-02-03 | 2021-08-06 | 삼성전자주식회사 | 이미지 합성 장치와 이를 포함하는 디스플레이 시스템 |
| JP6675253B2 (ja) * | 2015-06-05 | 2020-04-01 | キヤノン株式会社 | 画像復号装置およびその方法、並びに、画像処理装置 |
-
2001
- 2001-04-27 JP JP2001133332A patent/JP3612035B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2002229554A (ja) | 2002-08-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4263190B2 (ja) | 映像合成回路 | |
| JP4035408B2 (ja) | 解像度変換装置及び方法及び情報処理装置 | |
| WO1998033167A1 (en) | Programmable display device | |
| JP3612035B2 (ja) | 画像処理装置 | |
| JP3022405B2 (ja) | 画像メモリ制御装置 | |
| KR19980080860A (ko) | 영상 신호 처리 회로 | |
| JP3585168B2 (ja) | 画像処理装置 | |
| KR100366832B1 (ko) | 2차원 화상을 처리하는 장치 및 그 화상의 처리 방법 | |
| JP3838900B2 (ja) | 多画面表示装置とその表示方法 | |
| JP4124015B2 (ja) | 画像表示装置 | |
| KR19980080859A (ko) | 영상 신호 처리 회로 | |
| JPS6031355A (ja) | フアクシミリ装置 | |
| JPH11168665A (ja) | 画像サイズ変換方法とそのための装置 | |
| JP2002182639A (ja) | 画像処理装置 | |
| JP3307736B2 (ja) | 画像データ転送装置 | |
| JP3499780B2 (ja) | ビデオ表示装置 | |
| JP2820068B2 (ja) | 画像データ合成表示装置 | |
| JPS5983454A (ja) | フオ−ムパタ−ン発生装置 | |
| JP2005128689A (ja) | 画像描画装置 | |
| JP2000341585A (ja) | 画像メモリ機能付き映像装置 | |
| JP2003140628A (ja) | 情報処理装置 | |
| JP3099480B2 (ja) | 高速図形描画方法及びその装置 | |
| JPH0317698A (ja) | Crt表示用回路装置 | |
| JPS61267874A (ja) | 画像拡大縮小装置 | |
| JPH02162886A (ja) | ビデオ走査周波数変換装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040217 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040402 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20040427 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20040609 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040713 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040910 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20041019 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041021 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 3612035 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071029 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101029 Year of fee payment: 6 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101029 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111029 Year of fee payment: 7 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121029 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121029 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121029 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121029 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121029 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131029 Year of fee payment: 9 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |