JP3612035B2 - Image processing device - Google Patents

Image processing device Download PDF

Info

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
Application number
JP2001133332A
Other languages
Japanese (ja)
Other versions
JP2002229554A (en
Inventor
高幸 柴田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Axell Corp
Original Assignee
Axell Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Axell Corp filed Critical Axell Corp
Priority to JP2001133332A priority Critical patent/JP3612035B2/en
Publication of JP2002229554A publication Critical patent/JP2002229554A/en
Application granted granted Critical
Publication of JP3612035B2 publication Critical patent/JP3612035B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Digital Computer Display Output (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、画像メモリに蓄積された複数の画像データを合成して画面に表示させる画像処理装置に係わるものである。
【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に対するアクセス速度とが同様であると、すでにマークメモリに書き込まれているマークデータの書き込まれたドットのアドレスを確認する時間と、表示バッファ2e2fに画素データを書き込む時間とが重なるため、マークメモリへのアクセスタイムを表示バッファ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がこの表示アドレスから変換したソースアドレスに基づき、このソースアドレスに対応するドットの画素データを画像メモリ 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 透過色検出回路
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image processing apparatus that synthesizes a plurality of image data stored in an image memory and displays them on a screen.
[0002]
[Prior art]
In recent years, the price of microcomputers and memories has been reduced, and image processing can be performed in home appliances, games, and the like, and various images are displayed on a display screen.
In the image processing described above, there is a method of forming a moving image by displaying one screen created by combining a plurality of image data in time series.
The conventional image processing apparatus used here writes all the source image data indicated by one attribute in the display area of the display buffer based on attribute data which is display information of the source image data.
At this time, the image processing apparatus repeatedly performs all the source images used for image synthesis in order from the source image data having the lowest display priority, and constitutes the entire image to be displayed.
[0003]
Hereinafter, the above-described image composition processing will be briefly described with reference to FIG.
The drawing circuit 6d reads a plurality of necessary source image data from the image memory 6c storing the source image data, and reads attribute data of these source image data from the attribute memory 6a.
At this time, the drawing circuit 6d reads data from the source image data att1 to att4 from the attribute memory 6a, and synthesizes the images.
Here, it is assumed that the priority of each source image data, that is, the display priority is higher in the order of the source image data att1 to att4.
For this reason, the drawing circuit 6d reads the source image data att1 to att4 in order from the attribute memory 6a and performs the source image data composition processing on the display buffer 6b, so that the source image data att4 is displayed at the top.
[0004]
At this time, the drawing circuit 6d converts the address value drawn in the image memory 6c of the source image data att1 into an address value indicating the position where the source image data att1 is drawn on the display screen, and the source image data att1 Is temporarily stored in the display buffer 6b.
Next, the drawing circuit 6d reads the source image data att2 from the image memory 6c, and performs the same processing as that of the source image data att1 described above.
At this time, the image data of the source image data att2 is overwritten on the image data of the source image data att1 in the hatched portion (1) in the display buffer 6b, and the image of the source image data att1 in the lower hatched portion (1) is displayed. Data will be lost.
[0005]
Then, the drawing circuit 6d performs source image data composition processing from the source image data att3 to att4, and configures the entire buffer image in the display buffer 6b. Similarly to the above-described relationship between the source image data att1 and the source image data att2, the image data of the shaded portions (2) to (3) of the source image data att1 in the display buffer 6b are overwritten, and the shaded portion below. The image data of the source image data att1 of (2) to (3) is lost.
At this time, the image data of the source image data att1 which is overwritten by the source image data having a high display priority shown in the hatched portions (1) to (3) and is not displayed is also read from the image memory 6c and stored in the display buffer 6b. Since writing is performed, there is a drawback in that useless access to the image memory 6c and the display buffer 6b is performed.
As a countermeasure against the above-described drawback, the drawing circuit 6d previously divides source image data that overlaps source image data having a higher display priority into a shape that removes the overlapping portion based on the attribute data of each source image data. Then, a method of deleting in advance the portion of the image data that is overwritten and lost in the display buffer 6b is conceivable. That is, the drawing circuit 6d omits the process of reading out the lost image data from the image memory 6c and the process of writing to the display buffer 6b, prevents useless access and improves the overall processing speed.
[0006]
[Problems to be solved by the invention]
However, the above-described method of deleting the portion to be overwritten in advance is not limited to the transparent color portion of the low-priority source image data, even when the high-priority source image data has a transparent color portion. There is a problem that overlapping image data is deleted.
That is, the data below the transparent color is data that must be displayed even if the priority is low, and if it is deleted, the image data necessary for the synthesis is lost.
The present invention has been made under such a background. Image data that is overwritten by source image data having a high display priority and is not displayed is detected in advance, and unnecessary display access to the image memory or the display buffer is not performed. Provided is an image processing apparatus for displaying low-priority image data located under a transparent color portion even if the priority is high.
[0007]
[Means for Solving the Problems]
An image processing apparatus according to the present invention includes an image memory for storing a plurality of source image data, a source address in the image memory for each source image data, and an image display device corresponding to the source image data stored in the image memory. When the attribute memory that stores the attribute data including the display address on the screen and multiple source image data overlap, the source image data is divided into divided image data except for the overlapping portion of the lower source image data. An attribute conversion circuit that calculates a divided display address of image data and stores it in a temporary memory; a source address calculation circuit that calculates a source address in the image memory of the divided image data from the display address and outputs the source address; Based on the source address, the previous An image memory controller for reading source image data from the image memory, a transmission color detection circuit for detecting whether each pixel data of the read source image data is a transmission color based on the attribute data, a priority level An attribute controller that stores the pixel data of the source image data detected as not being transparent color in the descending order in the display buffer in correspondence with the display address, and display transmission that outputs the pixel data stored in the display buffer to the display device And the transparent color detection circuit writes the mark data to the mark memory in the attribute controller when the pixel data is not transparent when the attribute controller stores the pixel data in the display buffer. The controllerWhen mark data is written in the mark memory,thisMark dataRead pixel data at the address corresponding to the address whereFrom the image memoryDon't do it,When mark data is not written in the mark memory,The pixel data of the lower divided image data is written into the area of the buffer memory corresponding to the unwritten address.
An image processing apparatus according to the present invention includes an image memory that stores a plurality of source image data, an image memory controller that reads source image data from the image memory, and a display buffer that temporarily accumulates source image data read by the image memory controller. Corresponding to the source image data stored in the image memory, an attribute memory for storing attribute data including a source address in the image memory and a display address on the screen of the image display device for each source image data, and the attribute Attribute controller that reads attribute data from memory and an attribute conversion circuit that divides the source image data into divided image data except for the overlapping portion of the lower source image data when a plurality of source image data overlap Calculating a source address of the divided divided image data in the image memory of the divided image data, and outputting the source address to the attribute controller; and based on the attribute data, an upper portion of the overlapping portion A transparent color detection circuit for detecting whether or not the source image data is a transparent color, and when the attribute controller does not have a transparent color in the source image data at the upper part of the overlapping portion, the divided image data at the lower part thereof When the source image data at the upper part of the overlapping portion includes a transparent color dot, the dot in the source image data at the lower part of the transparent color dot is displayed.
[0008]
BookThe image processing apparatus according to the invention is characterized in that the attribute conversion circuit performs the division processing of the source image data every time dot image data for one line is written in the display buffer.
The image processing apparatus of the present invention is characterized in that the address calculation circuit converts a display address of the divided image data into a source address based on the attribute data.
In the image processing apparatus according to the aspect of the invention, when the source image data at the upper part of the overlapping portion is a transparent color, the attribute controller transfers the pixel data in the divided image data at the lower part of the pixel data having the transparent color to the display buffer. Process,Source image data with higher display priority sequentiallyLow priority source image dataIs performed.
In the image processing apparatus of the present invention, the attribute controller transfers each of the divided image data in a range indicated by the divided display address to the display buffer.
In the image processing apparatus of the present invention, the attribute conversion circuit selects source image data to be re-divided in descending order of display priority of the divided image data in the temporary memory by the attribute conversion circuit, and the selected source image data And an overlap portion with the source image data having a display priority higher than that of the source image data, the overlap portion as a new divided image data of the selected source image data, and the new divided image data The display address is generated and written to the temporary memory.
In the image processing apparatus of the present invention, the temporary memory has a plurality of tables for storing the display addresses, and the attribute conversion circuit supports new divided image data to be re-divided sequentially for each table. The display address of the divided image data is stored in the corresponding table.
[0009]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
<First Embodiment>
FIG. 1 is a block diagram showing the configuration of the image processing apparatus according to the first embodiment of the present invention. In this figure, an image memory 2a is composed of a RAM (Random Access Memory), and a plurality of source image data are stored in an uncompressed state. That is, the image memory 2a stores source image data, that is, pixel data corresponding to each dot of an image such as a character or landscape displayed on the display screen of the display 2d (hereinafter referred to as source image data pixel). ).
Here, the source image data has a configuration in which pixel data for each dot for drawing an image in one window (rectangular region) is described as in the source image data att1 to att4, for example.
It is assumed that the priority of each source image data, that is, the display priority is higher in the order of the source image data att1 to att4.
The source image data is an image area that is displayed on the display screen in the image memory 2a by a source address that is relatively equal to the address displayed on the display screen of the display 2d, that is, both horizontally and vertically. Are stored in the same rectangular address range (address widths match).
[0010]
Each time the vertical synchronization signal is input from the image processing apparatus, the attribute memory 2i forms data that forms a composite image that is displayed in one frame (one screen), that is, each source image data that is used for image composition. A source address indicating a data area in each image memory 2a, a display address indicating an area on the screen of the display 2d (image display device), attribute data including display priority, and the like are stored. Here, the display priority indicates the order of display in overlapping portions when a plurality of source image data are combined. For this reason, the higher the value, the higher the value displayed, and the lower pixel image data of the source image data is overwritten and deleted.
Here, each of the source addresses is composed of a start address xs and an end address xe indicating the horizontal area of the source image data, and a start address ys indicating the start of the vertical area of the source image data. Based on the address, each pixel data in the area of the source image data is set to be accessible.
For example, for the source address of the source image address att1, the start address x1 to the end address x5 are set as the range of the horizontal region, and the start address y1 is set as the range of the vertical region.
[0011]
The display address includes a start address hs and an end address he indicating the vertical region of the source image data, and a start address vs and an end address ve indicating the horizontal direction of the source image data. Access is set for each data.
For example, as the display address of the source image address att1, the start address h1 to the end address h6 are set as the range of the horizontal address area, and the start address v3 to the end address are set as the range of the vertical address area. v7 is set.
The vertical counter 2h is incremented each time a scanning signal is input from the display 2d, and as a counting result, the position (address, for example, vertical address v0) of the scanning line on which the scanning signal is output on the display screen of the display 2d. ˜ve etc.) is output. Each time the vertical pointer v is incremented, scanning lines to which pixel data displayed on the display screen is output are sequentially selected. The attribute controller 2k reads the attribute data, and the address indicated by the vertical pointer v is from the start address vs to the end address ve indicating the vertical area in the display address of each source image data stored in the attribute memory 2i. It is determined whether it is within the range, the presence or absence of pixel data to be transferred to the display buffer 2e or the display buffer 2f is detected, and a detection signal vvld is output to the attribute conversion circuit 2m for each source image data.
The horizontal counter 2n increments a horizontal pointer h indicating a horizontal address on the display screen of the display device, and sequentially outputs it to the attribute conversion circuit 2m. Here, the horizontal pointer h indicates the address of each dot of the scanning line at the position indicated by the vertical pointer v, and designates the address of each dot by being incremented.
[0012]
The attribute conversion circuit 2m displays the display priority of each source image data on the scanning line indicated by the pointer v based on the detection signal vvld for each source data, the horizontal start address hs and end address he, and the horizontal pointer h. From the comparison result, the source image data having the highest display priority, that is, displayed at the top, is selected, and the source image data number and end address are written into the TMP memory 2o.
At this time, when a plurality of source image data overlap, the attribute conversion circuit 2m, for example, when the source images att2 and att3 are displayed over the source image data att1 between the vertical pointers v3 and v4-1. The source image data att1 is divided into two divided image data att1: 1 and att1: 2, except for the overlapping portions (1) and (2) of att1 of the lower source image data.
That is, the attribute conversion circuit 2m removes the source image data in the lower portion of the source image data except for the overlapping portion of the source image data in the lower portion (low display priority) with the upper (higher display priority) source image data. Is divided into divided image data.
[0013]
At this time, the attribute conversion circuit 2m obtains a new start address h1 and end address h2-1 for the divided image data att1: 1 after dividing the source image data att1 having the areas of the start address h1 and the end address h6, and performs division. A new start address h4 and end address h5-1, that is, a new display address (divided display address) is obtained in the image data att1: 2, and these addresses are stored in the TMP memory 2o together with a number indicating the source image data.
The source address calculation circuit 21 calculates the source address in the image memory of the divided image data from the number of the source image data to be displayed stored in the TMP memory 2o and the range of the display address, and this source address is calculated. Output to the attribute controller 2k.
For example, the source address calculation circuit 21 receives the start address h1 (because there is no source image data up to the address h-1) and the end address h2-1 as the display address of the divided image data att1: 1 in the vertical address v3. It is calculated (calculated) and output as a start address x1 and an end address (x1 + h2-1-h1).
The attribute controller 2k increments the horizontal pointer h from the start address ys of the divided image data based on the source address obtained by the source address calculation circuit 21 to obtain pixel data at addresses indicated by the vertical pointer v and the horizontal pointer h. The image data is sequentially read from the image memory 2a via the image memory controller 2b, and the pixel data is written to the display buffer 2e or the display buffer 2f via the display buffer controller 2j.
[0014]
Here, the source address calculation circuit 21 converts the display address of the source image data into the source address based on the relationship between the source address and the display address in the attribute data.
For example, when the source pointer v indicates the vertical address v3 in the source image data att1, the source address calculation circuit 21 converts the address v3 into the vertical address y1 in the source address, and the horizontal pointer h If the address h1 in the horizontal direction is indicated, the address h1 is converted into an address x1 in the horizontal direction.
The image memory controller 2b increments the vertical pointer and the horizontal pointer h on the basis of the vertical address and horizontal address input from the attribute controller 2k, and sequentially source image data used for composition from the image memory 2a. The pixel data of the dot unit is read out, and the read out pixel data is sequentially written in the position corresponding to the display address of the display buffer 2e or the display buffer 2f via the display buffer controller 1d.
[0015]
The display buffer 2e corresponds to even-numbered scanning lines in one frame of the display screen, that is, pixel data of all dots that can be taken by the horizontal pointer h in the scanning line indicated by the vertical pointer v on the display screen of the display 2d. Is temporarily accumulated. Further, the display buffer 2f corresponds to odd-numbered scanning lines in one frame of the display screen, that is, all the dots that can be taken by the horizontal pointer h in the scanning line indicated by the vertical pointer v on the display screen of the display 2d. Pixel data is temporarily stored. For example, when one display buffer 2e outputs pixel data to an even address scanning line, pixel data to be output next to an odd address of the image device is written in the other display buffer 2f. Here, the display buffer 2e and the display buffer 2f each have an address corresponding to the address of the position of each dot arranged in the horizontal direction (address indicating the position of each dot on the scanning line) on the display screen of the display 2d. The number of bits of data storage at each address corresponds to the number of bits of pixel data.
[0016]
Each time the attribute controller 2k reads pixel data from the image memory 2a, the transmission color detection circuit 2r reads the pixel data read out based on the data indicating whether or not the corresponding pixel data is a transmission color in the attribute memory 2i. Whether or not the color is transparent is detected, and the detection result is stored as mark data in a mark memory in the attribute controller 2k. At this time, when the pixel data of the detected dot is not a transparent color, that is, when it is displayed on the display screen, the transmission color detection circuit 2r writes the mark data in the mark memory in association with the address indicating the position of this dot. (Attach the mark data).
At this time, the attribute controller 2k writes the pixel data read from the image memory 2a to a corresponding address in the display buffer 2e or the display buffer 2f.
Here, the mark memory has a capacity of “the number of dots in the range that can be taken by the horizontal pointer h in the scanning line at the address indicated by the vertical pointer v (the horizontal direction of the display screen of the display 2d) × 1 bit”. The address of each bit corresponds to the address of the display buffer.
On the other hand, when the pixel data is a transparent color, that is, when not displayed on the display screen, the transparent color detection circuit 2r does not write the mark data to the mark memory for the dot of the pixel data and also reads the attribute controller 2k. The pixel data is not written into the display buffer (if not specified, either the display buffer 2e or the display buffer 2f).
[0017]
That is, when the attribute controller 2k detects that the pixel data read by the transparent color detection circuit 2r is a transparent color, the attribute controller 2k does not transfer the read pixel data to the display buffer (that is, delete it without using it).
More specifically, the attribute controller 2k confirms the position where the mark data is not written in the mark memory, and this pixel data is transmitted each time the image data is read from the address of the image memory 2a corresponding to the address of this position. The transmission color detection circuit 2r determines whether it is a color or not.
The attribute controller 2k writes the read pixel image data in the display buffer when it is detected as a result of the determination in the transparent color detection circuit 2r that the read image data is not a transparent color.
At this time, the transparent color detection circuit 2r newly writes the mark data to the address of the mark memory corresponding to the address of the display buffer in which the pixel data is written, and updates the data content of the mark memory.
That is, the attribute controller 2k determines whether to write the pixel data to the display buffer based on the determination result of the transparent color detection circuit 2r whether the pixel data is a transparent color for each dot. Processing for all pixel data in the image data and writing to the display buffer in descending order of display priority exists until the mark data is written to all addresses of the mark memory or on the scanning line indicated by the vertical pointer v. Repeat for all source image data.
At this time, the attribute controller 2k does not perform the process itself of reading the pixel data at the address corresponding to the address of the mark memory in which the mark data is written from the image memory 2a.
[0018]
The attribute controller 2k displays the source image data displayed on the scanning line indicated by the vertical pointer v on the screen of the display 2d from the display buffer 2e or the display buffer 2f every time a scanning signal of the display 2d is input. Output to 2d.
At this time, if the pixel data to be displayed on the odd-numbered address scanning line is written in the display buffer 2f, the attribute controller 2k displays the dot on the even-numbered address scanning line immediately before the odd-numbered address. The pixel data stored in the buffer 2e is output. The address of the previous scanning line used here is output to the display output controller 2c as a result of subtracting “1” from the address indicated by the vertical pointer v output from the vertical counter 2h.
The display controller 2c writes the pixel data output from the display buffer 2e to the dot of the scanning line corresponding to the address output by the 1-line delay 2g on the display screen of the display 2d. Thereby, the display 2d displays the synthesized image.
[0019]
Next, FIG. 3 is a block diagram showing a detailed configuration of the attribute conversion circuit 2m. In this figure, the horizontal display determination circuits 4e, 4f, 4g and 4h receive the detection signal vvld corresponding to each source image data from the attribute controller 2k (FIG. 1), and the horizontal pointer h is set to each source. It is determined whether or not the image data falls within the range of the horizontal start address and end address, and if it falls within the range, the detection result signal is output at the “H” level.
Here, the detection signals vvld, the start address hs, and the end address he of the source image data att4, att3, att2, and att1 are input from the attribute controller 2k to the horizontal display determination circuits 4e, 4f, 4g, and 4h, respectively. .
The priority encoder 4l outputs an input code (number of source image data) having the highest display priority from among the "H" level input at the terminals T1 to T4 (1 to 4 of the priority encoder 4l). (The priority is in the order of T4> T3> T2> T1> T0). Thereby, the attribute conversion circuit 2m can determine the source image data having the highest display priority at the dot position indicated by the horizontal pointer h. The priority encoder 4l outputs “0” when no source image data is found in the dot indicated by the pointer h.
The detection result signals of the source image data att1, att2, att3, and att4 are input to the terminals T1 to T4, respectively. An “H” level is input to the terminal T0.
[0020]
Each time the horizontal counter 2n increments the horizontal pointer h by the clock and changes the horizontal address of the dot, the flip-flop 4i holds the value of the horizontal pointer h for each clock. At this time, the flip-flop 4jPriority encoder 4 lThe number code indicating the source image data to be output is held by the clock. For this reason, the flip-flops 4j and 4i hold the number of the source image data and the value of the horizontal pointer h before the value is changed by the input of the clock.
The exclusive OR 4k uses the number of the source image data output from the priority encoder 4l and the number of the source image data held in the flip-flop 4j (for example, the number “1” of the source image data att1 as the attribute number). “0” indicates a portion having no source image data to be displayed), and an “H” level wr signal is output. Thereby, the attribute conversion circuit 2m detects that the source image data displayed on the display screen has changed.
[0021]
At this time, when the wr signal becomes “H” level, the attribute conversion circuit 2m transfers the data of each of the flip-flops 4i and 4j to the TMP memory 2o in the format of the data table shown in FIG. The number of the source image data displayed on the display screen and its display range are obtained (provided) by writing each memory address (data table in FIG. 4) in the TMP memory 2o for each scanning line constituting the data. .
That is, the attribute conversion circuit 2m displays the highest display in the overlapping portion based on the display priority of each source image data in the portion where the plurality of source image data are displayed overlapping each scanning line indicated by the vertical pointer v. By detecting the source image data having priority, the lower portion of the source image data to be displayed is divided. Then, the attribute conversion circuit 2m obtains a start address hs and an end address he indicating the range (division display address) of each divided image data area after division, and writes it to the TMP memory 2o.
[0022]
Next, an operation example of the first embodiment will be described with reference to FIGS. FIG. 5 is a conceptual diagram of images sequentially stored in the display buffers 2e and 2f of FIG. 1, that is, an image obtained by combining a plurality of source image data displayed on the display screen of the display 2d. FIG.Each image memory 2 a7 to 9 showing the source image data stored in FIG. 7 are conceptual diagrams showing a flow of forming pixel data transferred to the display buffers 2e and 2f. Here, source image data att-A, att-B and att-C shown in FIG. 6 are stored in the image memory 2a in FIG. 1, and attribute data for synthesizing the image in FIG. 5 is stored in the attribute memory 2i. Is stored
The display priority is assumed to be highest for the source image data att-A and lowest for the source image data tt-C. At this time, in the priority encoder 4l of FIG. 3, the outputs of the horizontal display determination circuits corresponding to the source image data att-A, att-B and att-C are input to the terminals T4, T3 and T2, respectively. An “H” level voltage is input to the terminal T0.
[0023]
When a vertical synchronizing signal is input from the display 2d, attribute data of the image shown in FIG. 5 to be displayed next on the display screen is transferred and stored in the attribute memory 2i.
The vertical counter 2h increments and outputs a count value to the attribute controller 2k each time a scanning signal is input. As a result, the attribute controller 2kverticalIt is determined whether or not the value of the vertical pointer v on the display screen obtained from the count value from the counter 2h is within the range from the start address to the end address indicating the vertical area of each source image data.
Here, when the vertical pointer v becomes the start address v0 of the source image address, that is, when the value of the vertical pointer v becomes the address v0, the attribute controller 2k has entered the data area range of the source image data att-B. Is detected.
[0024]
Thereby, the attribute controller 2k outputs the detection signal vvld to the attribute conversion circuit 2m.
Then, the attribute conversion circuit 2m starts the division process by the input process of the detection signal vvld, but detects that the source image data att-B does not overlap with the other source image data based on the attribute data, The image address att-B is not divided.
Next, the attribute controller 2k instructs the source address calculation circuit 21 to perform processing for converting the address area of the display image data from the display address to the source address.
Then, the source address calculation circuit 2lSource image data att-BBased on the relationship between the display address and the source address, the address v0 is converted into the address y2, and the horizontal address h1 indicated by the horizontal pointer h is converted into the address x0.
[0025]
The transparent color detection circuit 2r determines whether or not the pixel data from the start address x0 to the end address x2 in the vertical pointer y2 sequentially read from the image memory 2a by the attribute controller 2k based on the source address is a transparent color. Perform detection.
Here, since the pixel data from the start address x0 to the end address x2 are all transparent color, the transparent color detection circuit 2r does not write mark data to the mark memory in the attribute controller 2k.
Therefore, the attribute controller 2k detects that there is no pixel data to be displayed on the dot of the scanning line corresponding to the pointer v0, and the pixel data from the start address x0 to the end address x2 read from the image memory 2a is displayed in the display buffer 2e. (Because v0 indicated by the pointer v is an even address scanning line).
[0026]
Next, it is assumed that the vertical counter 2h is sequentially incremented by the input of the scanning signal, and the vertical pointer v of the count value becomes the scanning line of the odd address at the position of the address v23.
At this time, in the attribute data stored in the attribute memory 2i, the source image data att-A, att-B, and att-C all overlap.
For this reason, the attribute conversion circuit 2m divides the overlapping portions of the source image data.
As shown in FIG. 7, the attribute conversion circuit 2m does not divide the source image data att-A in consideration of the display priority, and divides the source image data att-B by the source image data att-A. Similarly, the source image data att-C is divided into two by the source image data att-B into the divided image data att-C1 and the divided image data att-C2. .
Here, in FIGS. 7 to 9, an area indicated by a white rectangle indicates a dot (pixel data is not a transparent color) portion on which an image is displayed (drawn), and an area indicated by a solid line A dot portion (pixel data is a transparent color) that is not displayed as an image is shown.
[0027]
Then, as shown in FIG. 7, the attribute conversion circuit 2m is configured to start the divided addresses of the divided image data att-B1, the divided image data att-B2, the divided image data att-C1, and the divided image data att-C2. The end address he is obtained, and the result is stored in the TMP memory 2o.
For example, the attribute conversion circuit 2m uses the start address hs and the end address he indicating the range of the divided image data att-B1 as the start address h1 and the end address h2-1, and sets the horizontal range of the divided image data att-B2. The indicated start address and end address are stored in the TMP memory 2o as the start address h3 and end address h4.
The attribute conversion circuit 2m sets the start address hs and the end address he indicating the range of the divided image data att-C1 as the start address h0 and the end address h1-1, and the start address indicating the range of the divided image data att-C2. hs and end address he are stored in the TMP memory 2o as start address h4 and end address h5-1.
[0028]
Then, the source address calculation circuit 21 is based on the source address and display address of the attribute data from the start address h1 and the end address h2-1 that are stored in the TMP memory 2o and indicate the range of each divided image data after division. The start address xs and end address xe indicating the horizontal range of the divided image data att-B1 in the image memory 2a are calculated as a start address x0 and an end address (x0 + h2-1-h1), respectively.
Further, the source address calculation circuit 21 determines the horizontal range in the image memory 2a of the divided image data att-B2 based on the attribute data from the start address h3 and the end address h4 indicating the range of each divided image data after the division. The start address and end address shown are calculated as a start address (x0 + h3-h1) and an end address (x0 + h4-h1), respectively.
Similarly, the source address calculation circuit 21 receives a start address hs and an end address he indicating the range of the divided image data att-B1 and the divided image data att-B2 in the image memory 2a, respectively, as a start address x0 and an end address (x0 + h1). −1−h0), start address (x0 + h4−h0), end address (x0 + h5-1−h0).
[0029]
Further, the source address calculation circuit 21 receives the source image data att-A and each of the divided divisions based on the attribute data from the source image data att-A and the address v23 indicated by the vertical pointer of each divided divided image data. The vertical address of the image data in the image memory 2a is obtained.
For example, the source address calculation circuit 21 calculates a vertical address corresponding to the vertical address v23 of the source image data att-A as an address (y0 + v23-v2), and similarly, the divided image data att-B1, the divided image data The address corresponding to the address v23 of the image data att-B2 is calculated as an address (y2 + V23-v0), and the vertical address corresponding to the address v23 of the divided image data att-C1 and the divided image data att-C2 is the address (y4 + V23). -V1) is calculated.
[0030]
At this time, the attribute controller 2k determines that the divided image data att-C1, att-B1, att-B2, and att-C2 that do not overlap with image data having a higher display priority, and the source image data att-A. The pixel data of the dot selected by each address v23 and the pointer h is read from the image memory 2a every time the value of the pointer h is incremented.
At this time, the transmission color detection circuit 2r determines whether the pixel data of each dot in the read divided image data is a transmission color.
Then, the transmission color detection circuit 2r includes pixel data of the dots from the address h01 to the address h1-1 of the divided image data att-C1 in the pixel data read by the attribute controller 2k, and the source data The pixel data of the dots from the address h23 to the address h24-1 of the image data att-A is detected, and the mark data is written in the mark memory in correspondence with the address of each dot.
Thereby, the attribute controller 2k, with respect to the display buffer 2f, the pixel data of the dots from the horizontal address h01 to the address h1-1 of the divided image data att-C1 at the position of the vertical pointer v23 and the source image data att. Write pixel data of dots from address h23 to address h24-1 in the horizontal direction of -A.
[0031]
Next, as shown in FIG. 8, the attribute controller 2kMark dataIs detected, and the vertical pointer of the source pixel data att-B having the next highest display priority after the source pixel data att-A is detected at the address at which no mark data is written. Preprocessing for transferring the pixel data of the dot at the position of v23 to the display buffer 2f is started.
Since the attribute controller 2k performs the process of transferring to the display buffer 2f, no mark data is described in the mark memory, and the address h2 to the address h23-1 below the source image data att-A and the address h24 The pixel data of the source pixel data att-B corresponding to the dots from to h3-1 is read from the image memory 2a every time the value of the pointer h is incremented in the above address range.
Then, the transmission color detection circuit 2r determines whether or not the read pixel data of the dot is a transmission color, and the pixel data of the dots from the address h22 to the address h23-1 is the dot of the image data that is not the transmission color. The mark data is written in the mark memory in correspondence with the address of each dot.
As a result, the attribute controller 2k changes the mark data addresses in the mark memory, that is, the pixels of the dots from the address h22 to the address 23-1 of the source image data att-B at the position of the address v23 indicated by the vertical pointer v. Data is written into the corresponding position in the display buffer 2f.
[0032]
Next, as shown in FIG. 9, the attribute controller 2k detects that there is an address of the horizontal pointer h in which mark data is not written in the mark memory, and the source pixel data at the address in which mark data is not written. Preprocessing for transferring the pixel data of the dot at the position of the vertical pointer v23 of the source pixel data att-C having the highest display priority next to att-B to the display buffer 2f is started.
Since the attribute controller 2k performs a process of transferring to the display buffer 2f, mark data is not described in the mark memory, and the address h1 to the address h22 below the source image data att-A and att-B. The pixel data of the source pixel data att-C corresponding to the dots from the address h25 to the address h4 is read from the image memory 2a every time the value of the pointer h is incremented in the above address range.
[0033]
At this time, the transmission color detection circuit 2r determines whether the pixel data of each dot in the read divided image data is a transmission color.
Then, the transmission color circuit 2r determines whether or not the pixel data of the dot is a transmission color, and the dots of the image data that are not the transmission color are from address h1 to address h11-1 and from address h21 to address h22-1. Then, the pixel data of the dots from the address h24 to the address h25-1 is detected, and the mark data is written in the mark memory so as to correspond to the address of each dot.
As a result, the attribute controller 2k changes the address of the mark data in the changed mark memory, that is, the address h1 to the address h11-1 of the source image data att-C at the position of the address v23 indicated by the vertical pointer v, and the address h21. To the address h22-1 and the pixel data of the dots from the address h24 to the address h25-1 are written in the corresponding positions in the display buffer 2f.
Then, the attribute controller 2k performs the above-described writing process based on the presence or absence of mark data in the mark memory in the portion where the source image data overlaps, from the source image data having the highest display priority to the source image data having the lowest display priority. In order of all the source image data.
[0034]
As described above, when the attribute controller 2k generates an image by synthesizing a plurality of source image data, if an overlapping portion of the plurality of source image data occurs, the upper source image data (high display priority) is generated. If the pixel data is transparent color and the pixel data of the source image data dot (low display priority) below the transparent color dot is not transparent color, the pixel data of this dot is stored in the display buffer 2e or The process of transferring to the display buffer 2f is performed on all source images having overlapping portions from the source image data having the highest display priority to the source image data having the lowest display priority.
In the configuration of the first embodiment described above, if the access speed for the mark ram in the attribute controller 2k is the same as the access speed for the display buffers 2e and 2f, the mark data already written in the mark memory is written. Time to confirm the address of the displayed dot and the display buffer 2e,Since the time for writing pixel data to 2f overlaps, the access time to the mark memory is increased with respect to the access time to the display buffers 2e and 2f, and the area where the mark data is continuously written in the mark memory is skipped. Need to be detected.
[0035]
The above operation is repeated for the range of the vertical counter value that the vertical counter value of the display address can take, that is, the number of scanning lines on the display screen, and drawing of all the scanning lines is completed. Is configured.
In the first embodiment described above, the number of source image data has been described as 4 and 3 for the sake of explanation. However, by preparing the same circuit as the number of source data, the source image used for composition is prepared. It is possible to increase the number of data in a timely manner.
Further, the division processing and drawing (writing to the display memory) of the source image data are completed simultaneously within the time of one scanning line, but the delay for one scanning line and the same capacity as the TMP memory 2o. By providing this TMP memory, the source image data division processing may be performed two scanning lines before display on the display 2d, and the drawing may be performed at the timing before one scanning line.
As described above, in the source image data to be combined with the image displayed on the display screen of FIG. 2, the access to the image memory 2 a of the source image data having a low display priority with respect to the overlapping area indicated by the diagonal lines is the upper source. Access to the display buffer is skipped when the mark data in the mark memory is detected at the address where the pixel data is written, and is performed thereafter, except that the image data has transparent color pixel data. Therefore, useless access due to overwriting does not occur, and the time required for composition of source image data can be reduced.
[0036]
Further, in the first embodiment described above, for explanation,Image memory 2 aIn the description, the size of the source image data and the size of the image displayed on the display screen are the same.
However, in the image processing apparatus according to the first embodiment, the size in the horizontal direction and the vertical direction is enlarged or reduced, and the size of the source image data in the image memory 2a,Display buffer 2 e , 2 fEven if the size of the source image data (image displayed on the display screen) to be transferred is different, it is necessary from the display area of the source image data on the display screen and the address of the image memory 2a based on the ratio of each size. It is possible to calculate the address of the source image data in the image memory 2a. For this reason, the image processing apparatus of the present invention can be applied to an image processing apparatus having a horizontal direction and a vertical direction or any one of enlargement and reduction functions.
[0037]
In addition, when the image processing apparatus according to the first embodiment generates an image by combining a plurality of source image data, the image processing apparatus divides the source image data into divided image data based on the overlapping portions of the source image data. Since each display priority is written in the display buffers 2e and 2f, only the pixel data of the dots to be displayed (drawn) is written in the display buffer, and the number of accesses to the image memory 2a and the display buffer. And the speed at which an image to be displayed is generated by synthesis can be increased.
As a result, the image processing apparatus according to the first embodiment sequentially overwrites the source image data with the lower display priority in the display buffer 1c in the three source image data data att-A, att-B, and att-C. In addition to obtaining the same image as that of the image processing method, the data of the lower dot that disappears when overwritten is not read from the image memory 2a, and the wasteful access time (number of accesses) is reduced. There is an effect of speeding up the synthesis process.
Furthermore, in the image processing apparatus according to the first embodiment, when the pixel data of a dot in the source image data having a high display priority is a transparent color, the source image data having the next highest display priority positioned below this dot. In order to write the dot image data in the display buffers 2e and 2f, the display priority of the transparent color can be changed without any particular attention in the superimposition of the source image data att-A, att-B, and att-C. It is possible to display without deleting the pixel data of the source image data below the high source image data, and there is an effect that a composite image of the character with the background can be easily combined.
[0038]
<Second Embodiment>
Next, an image processing apparatus according to the second embodiment of the present invention will be described.
The configuration of the image processing apparatus according to the second embodiment is the same as that of the image processing apparatus according to the first embodiment shown in FIG.
In the following description, it is assumed that the source image data att-A, att-B, and att-C shown in FIG. 6 are stored in the image memory 2a of FIG.
The difference between the first and second embodiments is that the attribute conversion circuit 2m is changed to the attribute conversion circuit 3m, and the TMP memory 2o is changed to the TMP memory 3o.
The attribute conversion circuit 3m reads the source image data when the attribute controller 2k reads pixel data from the image memory 2a in units of scanning lines and transfers the pixel data to the display buffer (2e or 2f) or after the writing to the display buffer is completed. Re-divide the divided image data.
The TMP memory 3o has a storage area for a plurality of tables (a plurality of tables such as the tables 31 and 32 shown below), and sequentially writes display addresses of divided image data after re-division during processing. And reset at the input timing of the vertical synchronization signal.
The storage format of the display address of each table in the TMP memory 3o shown below is the same as that of the TMP memory 2o shown in FIG.
In the following description, the display priorities of the source image data att-A to att-C stored in the image memory 2a are the same as in the conventional example and the first embodiment, the source image data att-C to att-C. It is assumed that the values are higher in the order of A (source image data att-A is the highest and source image data att-C is the lowest).
[0039]
In addition, the same reference numerals are given to components having the same functions in the first embodiment and the second embodiment, and description thereof is omitted. In the second embodiment, the configuration of the attribute conversion circuit 3m and the TMP memory 3o. Only the functions added to the attribute circuit 2m and the TMP memory 2o of the first embodiment will be described including the operation of the attribute controller 2j, and the first of the attribute conversion circuit 3m and the TMP memory 3o Description of functions similar to those of the attribute circuit 2m and the TMP memory 2o of the embodiment will be omitted by referring to the descriptions of the attribute circuit 2m and the TMP memory 2o of the first embodiment.
Each time the vertical counter 2h is incremented, that is, when the vertical pointer v indicates the address of a new scanning line, the attribute conversion circuit 3m sends the attribute conversion circuit 2m to the TMP memory 3o at the first stage of image processing. Similar to the processing of the first embodiment in which the display address is stored, the source image data is divided into divided image data based on the display priority of the source image data, and the display address is stored in the table 31 of the TMP memory 3o. These are stored in the same manner as the writing to the TMP memory 2o described in the first embodiment with reference to FIG.
Here, the attribute conversion circuit 3m calculates the display address (start address hs and end address he) of the divided image data after dividing each source image data in the display on the display 2d shown in FIG. This is performed for each address range of the scanning line indicated by the vertical pointer v, which has a different combination of overlapping data.
Then, the attribute controller 2k, for each increment operation of the horizontal counter 2n, based on the display address of each divided image data which is the substantial display image data displayed on the display 2d shown in the table 31 in the TEM memory 3o. Pixel data to be read from the image memory 2a is written into the display buffer 2e (or display buffer 2f).
When the pixel data is written to the display buffer or after the writing to the display buffer is completed, the attribute conversion circuit 3m displays the display address of each divided image data stored in the table 31 of the TEM memory 3o. In other words, the divided image data generated by dividing each source image data is re-divided according to the display priority.
[0040]
Here, when the attribute controller 2k reads pixel data from the image memory 2a corresponding to the display address of each divided image data stored in the table 31 of the TMP memory 3o, the attribute conversion circuit 3m In the table 31 (that is, for each address of the scanning line of the display 2d shown in FIG. 5), the divided image of the source image data att-A having higher display priority than the source image data att-B to be redivided. An overlapping portion between the address area of the data (actually, the undivided source image data att-A) and the source image data att-B having the next highest display priority is detected.
At this time, the attribute conversion circuit 3m, based on the display address of each source image data in the attribute memory 2i, between the start address hs and the end address he of the source image data att-B (display address range) in the table 31. Thus, it is determined whether or not there is an area of the source image data att-A that overlaps the source image data att-B in the range indicated by the start address hs and end address he of each source image data on the scanning line of the display screen. This is done by detecting the overlapping part.
That is, the attribute conversion circuit 3m compares the start address hs of the source image data att-B with the start address hs of the source image data att-A in the range of the display address of the source image data att-B. If the data att-B is a start address hs smaller than the source image data att-A, the start address of the overlapping portion is set to the numerical value of the start address hs of the source image data att-A, while the source image data att-B. If the start address hs is greater than the source image data att-A, the start address of the overlapping portion is set to the numerical value of the start address hs of the source image data att-B.
Further, the attribute conversion circuit 3m compares the end address he of the source image data with the end address he of the source image data att4 within the range of the display address of the source image data att-B, and the source image data att-B. If the end address hs is greater than the source image data att-A, the end address of the overlapping portion is the numerical value of the end address he of the source image data att-A, while the source image data att-B is the source image. If the end address he is smaller than the data att-A, the end address of the overlapping portion is set to the numerical value of the end address he of the source image data att-B.
As a result, the attribute conversion circuit 3m detects an area indicated by the start address and the end address as an overlapping portion.
Then, the attribute conversion circuit 3m sets the overlapping portion as new divided image data of the source image data att-B.
As a result, the attribute conversion circuit 3m uses the overlapped area as new divided image data of the source image data att-B, and only the display address range in which the new partial image data is generated is stored in the TMP memory 3o. Stored in the table 32.
Therefore, at this time, only the display address (start address hs and end address he) of the new divided image data of the source image data att-B is stored in the table 32 in the TMP memory.
[0041]
That is, when the attribute controller 2k transfers each divided image data to the display buffer 2E (or the display buffer 2f), the attribute conversion circuit 3m reconfigures the display address in the table 31 of the TMP memory 3o (performs re-division). ) By setting an overlapping portion of the source image data att-B and the source image data att-A having a higher display priority than the source image data att-B as the divided image data of the new source image data att-B The source image data att-B is subdivided, that is, the display address is reconfigured for the partial image data of the source image data att-B.
Further, the attribute conversion circuit 3m uses the area corresponding to the display address of the new divided image data of the source image data att-B as the pixel data area of the source image data att-B in the table 31 in the TMP memory 3o. To do.
That is, the attribute conversion circuit 3m has the source image data att-B in the source image data att-A detected at the display address of the partial image data of the table 31 in the TMP memory 3o and the display address of each source image data. Is an area of new divided image data of the source image data att-B in the table 31 in the TMP memory 3o.
Thereby, in the table 31 in the TMP memory 3o, the areas of all the display addresses of the source image data att-B are shown, and the area of the source image data att-A that does not overlap with the source image data att-B is new. Remain as divided image data, and there is no change in the range for the display addresses of the other divided image data.
Next, since the attribute controller 2k transfers the pixel data to the buffer 2e (or 2f), from the image memory 2a corresponding to the display address generated by the subdivision stored in the table 32 of the TMP memory 3o. When the pixel data is being read, the attribute conversion circuit 3m uses the divided image data of the source image data att-A and att-B having higher display priority than the source image data att-C to be subdivided next in the table 31. The display image address range and the source image data att-C to be re-divided are detected, and the source image data att-C is re-divided in the same manner as the re-division processing of the source image data att-B described above. Process.
[0042]
When transferring pixel data to the buffer 2e (or 2f), the horizontal counter 2n performs a counting operation within the range of display addresses in the table 32.
In other words, the attribute controller 2k performs a writing process to the buffer 2e (or 2f) only on the pixel data in the display address range of the newly generated divided image data, and the mark data is written in the mark memory. Since not all pixel data that has not been read is read out from the image memory 2a, the reading time can be shortened.
Therefore, the attribute controller 2k reads out pixel data from the image memory 2a corresponding to the display address as in the first embodiment, but based on each table of the TMP memory 3o that is sequentially changed by the re-division processing. In order to perform the readout, the display buffer 2e (or the display buffer 2f) is substantially re-entered in the transparent color area of the source image data above the divided image data newly generated by re-division. Control for writing pixel data of the divided image data of the divided source image data is performed.
[0043]
That is, when the attribute conversion circuit 3m sequentially performs the re-division processing, the second highest display priority is given to the source image data to be re-division in the table 31 that is first generated in the TMP memory 3o. The source image data is selected in order from the source image data of each degree, and is re-divided.
Then, the attribute conversion circuit 3m performs the selected re-division based on the table 31 in which the display buffer of each divided image data generated corresponding to the display priority is first created in the TMP memory 3o. The display address of the source image data is compared with the display address of the source image data having higher display priority than the source image data to be subdivided, and the display address of the selected source image data to be subdivided The region of the overlapping portion with the source image data having higher display priority than the source image data to be detected is detected.
In the second embodiment, the attribute controller 2k and the attribute conversion circuit 3m perform processing on the source image data existing on the scanning line indicated by the corresponding vertical pointer V of the display 2d, that is, processing on the source image data not existing on this scanning line. The above-mentioned re-division processing of the source image data is performed for each scanning line displayed on the display 2d, that is, in the table 31 of the TMP memory 3o based on the display address of each source image data in the attribute memory 2i. Until the processing of the source image data having the lowest display priority is completed, the processing is sequentially performed for each source image data having a higher display priority.
[0044]
Next, an operation example of the second embodiment will be described with reference to FIGS. Here, source image data att-A, att-B and att-C shown in FIG. 6 are stored in the image memory 2a of FIG. 1, and attribute data for synthesizing the image of FIG. 5 is stored in the attribute memory 2i. Is stored.
As in the image processing apparatus of the first embodiment, the attribute memory 2i receives a vertical synchronization signal supplied to the display 2d, and each time the vertical pointer v output from the vertical counter 2h is incremented, the display 2d. Data that forms a composite image displayed in one frame of the image, that is, a source address in the image memory of each source image data used for image composition, and a display indicating a display position on the screen of the display 2d (image display device) Stores attribute data including address and display priority.
The display priority is assumed to be highest for the source image data att-A and lowest for the source image data att-C. At this time, in the priority encoder 4l in FIG. 3, the outputs of the horizontal display determination circuits corresponding to the source image data att-A, att-B, and att-C are input to the terminals T4, T3, and T2, respectively. An “H” level voltage is input to the terminal T0.
[0045]
When a vertical synchronizing signal is input from the display 2d, attribute data of the image shown in FIG. 5 to be displayed next on the display screen is transferred and stored in the attribute memory 2i.
The vertical counter 2h increments and outputs a count value to the attribute controller 2k each time a scanning signal is input.
Thereby, the attribute controller 2k allows the value of the vertical pointer v on the display screen obtained from the count value from the straight counter 2h to fall within the range from the start address to the end address indicating the vertical area of each source image data. It is determined whether or not there is.
Here, when the vertical pointer v becomes the start address v0 of the source image address, that is, when the value of the vertical pointer v becomes the address v0, the attribute controller 2k has entered the data area range of the source image data att-B. Is detected.
[0046]
Thereby, the attribute controller 2k outputs the detection signal vvld to the attribute conversion circuit 2m.
Then, the attribute conversion circuit 3m starts the division process by the input process of the detection signal vvld, but detects that the source image data att-B does not overlap with other source image data based on the attribute data, The image address att-B is not divided.
Next, the attribute controller 2k sends the address area of the display image data to the source address calculation circuit 21 from the display address indicating the display position on the display 2d shown in the table 31 of the TMP memory 3o in the image memory 2a. Instructs processing to convert to a source address indicating a storage location.
Then, the source address calculation circuit 21 converts the display address address v0 (FIG. 5) into the source address address y2 (FIG. 6) based on the relationship between the display address and the source address of the source image data Att-B in the attribute data. ) And the address h1 of the display address in the horizontal direction indicated by the horizontal pointer h is converted to the address x0 of the source address.
[0047]
The transparent color detection circuit 2r determines whether or not the pixel data from the start address x0 to the end address x2 in the vertical pointer y2 sequentially read from the image memory 2a by the attribute controller 2k based on the source address is a transparent color. Perform detection.
Here, since the pixel data from the start address x0 to the end address x2 are all transparent color, the transparent color detection circuit 2r does not write mark data to the mark memory in the attribute controller 2k.
Therefore, the attribute controller 2k detects that there is no pixel data to be displayed on the dot of the scanning line corresponding to the pointer v0, and the pixel data from the start address x0 to the end address x2 read from the image memory 2a is displayed in the display buffer 2e. (V0 indicated by the pointer v is an even address scanning line).
[0048]
Next, it is assumed that the vertical counter 2h is sequentially incremented by the input of the scanning signal, and the vertical pointer v of the count value becomes the scanning line of the odd address at the position of the address v23.
The attribute conversion circuit 3m detects from the data in the attribute memory 2i that all the images of the source image data att-A, att-B and att-C are overlapped at the position of the address v23.
For this reason, the attribute conversion circuit 3m divides the overlapping portions of the source image data.
As shown in FIG. 7, the attribute conversion circuit 3m does not divide the source image data att-A in consideration of the display priority, and divides the source image data att-B by the source image data att-A. Similarly, the source image data att-C is divided into two by the source image data att-B into the divided image data att-C1 and the divided image data att-C2. .
Here, in FIGS. 7 to 9, an area indicated by a white rectangle indicates a dot (pixel data is not a transparent color) portion on which an image is displayed (drawn), and an area indicated by a solid line A dot portion (pixel data is a transparent color) that is not displayed as an image is shown.
[0049]
Then, as shown in FIG. 7, the attribute conversion circuit 3m is divided into divided image data att-B1, divided image data att-B2, and divided image data att displayed on the scanning line of the odd address at the position of the address v23 of the display 2d. The start address hs and the end address he after division of each of -C1 and the divided image data att-C2 are obtained, and the results are stored in the table 31 in the TMP memory 3o.
For example, the attribute conversion circuit 3m sets the start address hs and the end address he indicating the range of the divided image data att-B1 as the start address h1 and the end address h2-1, and sets the horizontal range of the divided image data att-B2. The indicated start address and end address are stored in the table 31 as the start address h3 and end address h4.
The attribute conversion circuit 3m sets the start address hs and the end address he indicating the range of the divided image data att-C1 as the start address h0 and the end address h1-1, and the start address indicating the range of the divided image data att-C2. hs and end address he are stored in the table 31 as start address h4 and end address h5-1.
[0050]
The source address calculation circuit 21 then divides based on the attribute data from the start address h1 and end address h2-1 indicating the range of each divided image data after the division stored in the table 31 in the TMP memory 3o. A start address xs and an end address xe indicating the horizontal range of the image data att-B1 in the image memory 2a are calculated as a start address x0 and an end address (x0 + h2-1-h1), respectively.
Further, the source address calculation circuit 21 determines the horizontal range in the image memory 2a of the divided image data att-B2 based on the attribute data from the start address h3 and the end address h4 indicating the range of each divided image data after the division. The indicated start address and end address are calculated as a start address (x0 + h3-h1) and an end address (x0 + h4-h1), respectively.
Similarly, the source address calculation circuit 21 receives a start address hs and an end address he indicating the range of the divided image data att-B1 and the divided image data att-B2 in the image memory 2a, respectively, as a start address x0 and an end address (x0 + h1). −1−h0), start address (x0 + h4−h0), and end address (x0 + h5-1−h0).
[0051]
Further, the source address calculation circuit 21 receives the source image data att-A and each of the divided divisions based on the attribute data from the source image data att-A and the address v23 indicated by the vertical pointer of each divided divided image data. The vertical address of the image data in the image memory 2a is obtained.
For example, the source address calculation circuit 21 calculates a vertical address corresponding to the vertical address v23 of the source image data att-A as an address (y0 + v23-v2), and similarly, the divided image data att-B1, the divided image data The address corresponding to the address v23 of the image data att-B2 is calculated as an address (y2 + V23-v0), and the vertical address corresponding to the address v23 of the divided image data att-C1 and the divided image data att-C2 is the address (y4 + V23). -V1) is calculated.
[0052]
At this time, the attribute controller 2k determines that the divided image data att-C1, att-B1, att-B2, and att-C2 that do not overlap with image data having a higher display priority, and the source image data att-A. The pixel data of the dot selected by each address v23 and pointer h is read from the image memory 2a every time the horizontal counter 2n increments the value of the pointer h (horizontal pointer h).
At this time, the transmission color detection circuit 2r determines whether the pixel data of each dot in the read divided image data is a transmission color.
Then, the transmission color detection circuit 2r includes pixel data of the dots from the address h01 to the address h1-1 of the divided image data att-C1 in the pixel data read by the attribute controller 2k, and the source data The pixel data of the dots from the address h23 to the address h24-1 of the image data att-A is detected, and the mark data is written in the mark memory in correspondence with the display address of each dot.
Thereby, the attribute controller 2k, with respect to the display buffer 2f, the pixel data of the dots from the horizontal address h01 to the address h1-1 of the divided image data att-C1 at the position of the vertical pointer v23 and the source image data att. Write pixel data of dots from address h23 to address h24-1 in the horizontal direction of -A.
[0053]
At this time, the attribute conversion circuit 3m corresponds to the display address of the table 31, and when the attribute controller 2k reads out the pixel data from the image memory 2a, the source image having the second highest display priority in the table 31. Data, that is, source image data att-B is selected as source image data to be subdivided.
Then, the attribute conversion circuit 3m detects an area of the source image data att-A having a higher display priority than the source image data att-B, which overlaps with the selected source image data att-B. Then, re-division is performed by using new divided image data of the source image data att-B.
As a result, the attribute conversion circuit 3m displays the display address range (the range between the start address hs and the end address he) of the new divided image data of the source image data att-B after the re-division in the table in the TMP memory 3o. 32 is written (stored).
At this time, the attribute conversion circuit 3m displays the source image data att-B in the display range of the source image data att-B having the second highest display priority in the table 31, that is, in the range from the start address h1 to the end address h4-1. Detection of the area of the source image data att-A having a higher display priority is started.
Here, the attribute conversion circuit 3m detects that the display address range of the source image data att-A is included in the display address area of the source image data att-B described above.
That is, the attribute conversion circuit 3m determines that the start address h2 of the source image data att-A is larger than the start address h1 of the source image data att-B, and the end address h3-1 of the source image data att-A is the source image data att- It is detected that it is smaller than the end address h4-1 of B.
Thereby, the attribute conversion circuit 3m converts the area from the address h2 to the address h3-1 of the overlapping portion of the source image data att-A and the source image data att-B into a new divided image of the source image data att-B. The data is att-B3.
Then, the attribute conversion circuit 3m generates divided image data att-B3 having a display address range of a start address h2 to an end address h3-1 as new divided image data of the source image data att-B. Is written in the table 32 in the TMP memory 3o.
At this time, as shown in FIG. 8, the attribute conversion circuit 3m causes the source image data att-A to overlap the source image data att-B in the display address range of each divided image data in the table 31 in the TMP memory 3o. (The display address range of the divided image data att-B3) is replaced with the divided image data att-B3 (overwriting the area of the divided image data att-B3).
As a result, the table 31 shown in FIG. 8 substantially has the source image data att-B (the range of display addresses of the divided image data att-B1, att-B2, and att-B3 added). The display address range and the display address range of the divided image att-C1 and the divided image data acc-C2 are stored.
[0054]
Next, the attribute controller 2k detects that there is an address of the horizontal pointer h in which mark data is not written in the state of the mark memory shown in FIG. 8, and a display buffer corresponding to the address in which mark data is not written. The process of writing pixel data to the address 2f is started.
Then, the attribute controller 2k converts the pixel data in the display address range of the divided image data att-B3 written in the table 32 into the display address range of the table 32, that is, the display address range of the divided image data att-B3. For each display address corresponding to the pointer h output from the horizontal counter 2n (from start address h2 to end address h3-1), the data is read from the image memory 2a.
At this time, the horizontal counter 2n performs a counting operation within the display address range of the divided image data att-B3 in the table 32, that is, within the range of the start address h2 to the end address h3-1.
Each time the attribute controller 2k detects a display address in which mark data is not described in the mark memory, the attribute controller 2k corresponds to the source address based on the source address converted from the display address of the table 32 by the source address calculation circuit 21. The pixel data of the dot to be read is read from the image memory 2a, and the pixel data is written to an address corresponding to the display address of the display buffer 2f.
[0055]
At this time, every time the pixel data of the dot is read from the image memory 2a, the attribute controller 2k determines whether or not the read pixel data is a transparent color by the transparent color detection circuit 2r. Only pixel data determined not to be written is written to an address corresponding to the display address of the display buffer 2f.
The attribute controller 2k writes mark data to the mark memory at an address corresponding to the address of the display buffer 2f in which the pixel data is written.
As a result, the attribute controller 2k changes the mark data address of the changed mark memory, that is, the pixels of the dots from the address h22 to the address h23-1 of the source image data att-B at the position of the address v23 indicated by the vertical pointer v. Data is written to the corresponding position in the display buffer 2f.
[0056]
At this time, when the attribute controller 2k is reading out the pixel data from the image memory 2a, the attribute conversion circuit 3m performs source image data having the third highest display priority for re-division in the table 31, that is, the source An area of source image data att-A and att-B having higher display priority than the source image data att-C that overlaps the pixel data of the image data att-C (actually only the source image data att-B) The area is changed to a new divided image data area of the image data att-C, the source image data att-C is re-divided, and the display address range of the new divided image data att-C3 after the re-division is set as the start address h11. Write to the table 33 in the TMP memory 3o as the end address h4-1 No.
That is, the attribute conversion circuit 3m has the source image data att that is between the start address h0 and the end address h5-1 in the display address range of the source image data att-C having the third highest display priority in the table 31. The detection of the source image data att-A, att-B having a higher display priority than -C or an area of these divided image data is started.
Here, the attribute conversion circuit 3m determines that the source image data att-B is in the range of the display buffer (address h11 to address h4) of the source image data att-C, as in the case of the re-division of the source image data att-B. -1 range) (overlapping portions are detected), and the region of this overlapping portion is set as the display address range of the new divided image data att-C3 of the source image data att-C.
Then, as shown in FIG. 9, the attribute conversion circuit 3m causes the source image data att-B to overlap the source image data att-C in the display address range of each divided image data in the table 31 in the TMP memory 3o. (The display address range of the divided image data att-C3) is replaced with the divided image data att-C3 (overwriting the area of the divided image data att-C3).
As a result, the table 31 shown in FIG. 9 substantially includes the source image data att-C (with the display address ranges of the divided image data att-C1, att-C2, and att-C3 added). Only the display address range is stored.
[0057]
Next, the attribute controller 2k detects that there is an address of the horizontal pointer h in which mark data is not written in the state of the mark memory shown in FIG. 9, and a display buffer corresponding to the address in which mark data is not written. The process of writing pixel data to the address 2f is started.
Then, the attribute controller 2k reads the pixel data of the divided image data written in the table 33 for each display address corresponding to the pointer h output from the horizontal counter 2n.
At this time, the horizontal counter 2n performs a counting operation within the display address range of the divided image data att-C3 in the table 32, that is, in the range of the start address h11 to the end address h4-1.
Each time the attribute controller 2k detects a display address in which mark data is not described in the mark memory,Source address calculation circuit 2 lBased on the source address converted from this display address, the pixel data of the dot corresponding to this source address is stored in the image memory.2 aThe pixel data is read out and written into an address corresponding to the display address of the display buffer 2f.
[0058]
At this time, each time the pixel data of the dot is read from the image memory 2a, the attribute controller 2k determines whether or not the read pixel data is a transparent color by the transparent color detection circuit 2r. Only the pixel data determined not to be written is written in an address corresponding to the display address of the display buffer 2f.
The attribute controller 2k writes mark data to the mark memory at an address corresponding to the address of the display buffer 2f in which the pixel data is written.
As a result, the attribute controller 2k changes the mark data address of the changed mark memory, that is, the address h1 to address 11-1 and the address h21 to address of the partial image data att-C1 at the position of the address v23 indicated by the vertical pointer v. Pixel data of dots in each range of h22-1 and address h24 to address h25-1 are written in corresponding positions in the display buffer 2f.
[0059]
At this time, the attribute conversion circuit 3m detects that the source pixel data has the lowest display priority in the table 31, so that the attribute controller 2k reads the pixel data from the image memory 2a. Since there is no source image data to be re-divided, extraction of areas of the source image data att-A, att-B, and att-C is not performed.
Even if the source image data with the lowest display priority is not reached, the attribute controller 2k finishes writing the pixel data to the display buffer 2f if the data is written to all the addresses of the mark memory.
The vertical counter 2h is incremented when the next scanning signal is input from the display 2d, and the vertical pointer v indicating the position of the scanning line to which the scanning signal is output on the display screen of the display 2d is obtained as a counting result. Output as V23 + 1.
As a result, the attribute controller 2k writes the pixel data of the next scanning line to the display buffer 2e.
The image processing apparatus according to the present invention repeats the above-described processing to display an image in which the source image data stored in the image memory 2a is superimposed on the display 2d.
[0060]
As described above, when the attribute controller 2k according to the second embodiment generates an image by combining a plurality of source image data, it corresponds to the display address of each divided image data in the table 31 for each scanning line. When the pixel data is read out from the image memory 2a and this data is written into the display buffer, the attribute memory 2i has a plurality of source image data in order from the source image data having the second highest display priority. A source image that selects source image data to be subdivided from, detects an overlapping portion between the image data to be subdivided and source image data having a higher display priority than the source image data, and subdivides the overlapping portion Re-division processing is performed as new divided image data of the data, and each piece of data in the TMP memory 3o is sequentially added. If the pixel data of the source image data at the top (high display priority) is a transparent color in the overlapping part generated by combining multiple source image data, the pixel data of this dot is displayed. Since the process of transferring to the buffer 2e or the display buffer 2f is performed based on the mark data of the mark memory and the display address of each of the above tables, the source image data in the lower part of the image memory 2a is read without reading more pixel data than necessary. Since pixel data that is not a transparent color can be written to the display buffer 2e (or 2f), unnecessary access to the image memory 2a is prevented by preventing overwriting of pixel data in the display buffer as in the past. And the number of times of reading out pixel data from the image memory 2a is reduced. Bets can be, it is possible to reduce the time required for synthesis of the source image data.
[0061]
In the configuration of the second embodiment described above, if the access speed for the mark ram in the attribute controller 2k and the access speed for the display buffers 2e and 2f are the same as in the first embodiment, the mark is already marked. Since the time for checking the address of the dot where the mark data written in the memory is written overlaps the time for writing the pixel data to the display buffers 2e and 2f, the access time to the mark memory is set to the display buffers 2e and 2f. It is necessary to increase the speed with respect to the access time and to skip and detect an area in which mark data is continuously written in the mark memory.
[0062]
The above operation is repeated for the range of the vertical counter value that the vertical counter value of the display address can take, that is, the number of scanning lines on the display screen, and drawing of all the scanning lines is completed. Is configured.
In the second embodiment described above, the number of source image data has been described as 4 and 3 for the sake of explanation. However, by preparing the same circuit as the number of source data, the source image used for composition is prepared. It is possible to increase the number of data in a timely manner.
Further, the division processing and drawing (writing to the display memory) of the source image data are completed simultaneously within the time of one scanning line, but the delay for one scanning line and the same capacity as the TMP memory 2o. By providing this TMP memory, the source image data division processing may be performed two scanning lines before display on the display 2d, and the drawing may be performed at the timing before one scanning line.
As described above, in the source image data to be combined with the image displayed on the display screen of FIG. 2, the access to the image memory 2 a of the source image data having a low display priority with respect to the overlapping area indicated by the diagonal lines is the upper source. Access to the display buffer is skipped when the mark data in the mark memory is detected at the address where the pixel data is written, and is performed thereafter, except that the image data has transparent color pixel data. Therefore, useless access due to overwriting does not occur, and the time required for composition of source image data can be reduced.
[0063]
In the second embodiment described above, for the sake of explanation, the size of the source image data in the image memory 2a and the size of the image displayed on the display screen are assumed to be the same.
However, as in the first embodiment, the image processing apparatus of the second embodiment is expanded or reduced in the horizontal and vertical dimensions, and the size of the source image data in the image memory 2a and the display buffer Even when the sizes of the source image data (images displayed on the display screen) transferred to 2e and 2f are different, the display area of the source image data on the display screen, the address of the image memory 2a, Thus, it is possible to calculate the address of the necessary source image data in the image memory 2a. For this reason, the image processing apparatus of the present invention can be applied to an image processing apparatus having a horizontal direction and a vertical direction or any one of enlargement and reduction functions.
[0064]
In the image processing apparatus according to the second embodiment, when generating an image by combining a plurality of source image data, the attribute conversion circuit 2m divides the source image data based on the overlapping portion of the source image data. In addition, since the data is written into the display buffer 2e or 2f according to the display address of each divided image data that is subdivided and written in each table of the TMP memory 3o, only the range of the display address of the subdivided divided image data is displayed. Pixel data is read from the image memory 2a and written to the display buffer, the number of accesses to the image memory 2a and the display buffer can be reduced, and the speed at which an image to be displayed is generated by synthesis is increased. Is possible.
Accordingly, the image processing apparatus according to the second embodiment displays pixel data in the display buffer 1c in order from the source image data having the lowest display priority in the three source image data data att-A, att-B, and att-C. The same image as the conventional method of overwriting is obtained, and the data of the lower dot that disappears when overwritten is read.Image memory 2 aThere is an effect of reducing useless access time (number of accesses) and speeding up image composition processing.
Furthermore, in the image processing apparatus according to the second embodiment, when the pixel data of a dot in the source image data with a high display priority is a transparent color, the source with the next highest display priority is sequentially positioned below the dot. Dot image data of image dataDisplay buffer 2 e , 2 fTherefore, the source image data at the lower part of the source image data with high display priority of the transparent color is not noticed by the user in superimposing the source image data att-A, att-B and att-C. It is possible to display without deleting the pixel data, and there is an effect that a composite image of the character with the background can be easily combined.
[0065]
The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and even if there is a design change or the like without departing from the gist of the present invention. It is included in the present invention.
For example, in place of the display buffers 2e and 2f in the first and second embodiments, a frame memory capable of storing all pixel data of one frame of the composite image displayed on the display screen is provided, and overlapping source image data portions The third embodiment has a configuration in which pixel data is read from the image memory 2a while performing the above processing, and a composite image to be displayed is generated on the frame memory. At this time, the generated composite image is output to the display 2d every time a horizontal synchronization signal is input.
In the third embodiment, operations other than the writing of data to the frame memory are the same as those of the image processing apparatuses of the first and second embodiments described above.
According to the third embodiment, the same effects as those of the first and second embodiments can be obtained.
[0066]
【The invention's effect】
According to the image processing apparatus of the present invention, when the pixel data of a dot in the source image data having a high display priority is a transparent color, the dot of the source image data having the next highest display priority located below the dot is displayed. Since the process of writing the image data into the display buffer is performed, there is an effect that a character can be easily combined with the background in superimposing a plurality of source image data.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of an image processing apparatus according to first and second embodiments of the present invention.
FIG. 2 is a conceptual diagram showing image data displayed on a display device.
FIG. 3 is a conceptual diagram showing an image written in the image memory 2a of FIG.
4 is a diagram showing a storage format of the TMP memory 2o (or tables 31, 32, 33 in the TMP memory 3o) in FIG.
FIG. 5 is a conceptual diagram showing image data displayed on a display device. .
6 is a conceptual diagram showing an image written in the image memory 2a of FIG.
FIG. 7 is a conceptual diagram illustrating an operation example of the image processing apparatus according to the first and second embodiments.
FIG. 8 is a conceptual diagram illustrating an operation example of the image processing apparatus according to the first and second embodiments.
FIG. 9 is a conceptual diagram illustrating an operation example of the image processing apparatus according to the first and second embodiments.
FIG. 10 is a conceptual diagram illustrating a configuration of an image processing apparatus according to a conventional example.
[Explanation of symbols]
2a Image memory 2b Image memory controller
2c display sending controller 2d display
2e, 2f Display buffer 2g 1 line delay
2h Vertical counter 2i Attribute memory
2j Display buffer controller 2k Attribute controller
2l Source address calculation circuit 2m, 3m Attribute conversion circuit
2n horizontal counter 2o, 3o TMP memory
2r transmission color detection circuit

Claims (7)

複数のソース画像データを格納する画像メモリと、
前記画像メモリに格納されたソース画像データに対応して、該ソース画像データ毎の該画像メモリにおけるソースアドレスおよび画像表示装置の画面における表示アドレスを含むアトリビュートデータを格納するアトリビュートメモリと、
複数のソース画像データが重なるとき、下部のソース画像データの重なり部分を除き、該ソース画像データを分割画像データに分割し、各分割画像データの分割表示アドレスを算出して、テンポラリメモリに格納するアトリビュート変換回路と、
前記表示アドレスから前記分割画像データの画像メモリにおけるソースアドレスを算出し、該ソースアドレスを出力するソースアドレス算出回路と、
前記ソースアドレスに基づき、前記画像メモリからソース画像データを読み出す画像メモリコントローラと、
前記アトリビュートデータに基づき、読み出されたソース画像データの各画素データが透過色であるか否かを検出する透過色検出回路と、
優先度の高い順に、透過色でないと検出されたソース画像データの画素データを、表示アドレスに対応させて表示バッファに格納するアトリビュートコントローラと、
表示バッファに格納された画素データを前記表示装置に出力する表示送出コントローラとを具備し、
前記透過色検出回路は、アトリビュートコントローラが表示バッファに画素データを格納するとき、画素データが透過色でない場合、
アトリビュートコントローラ内のマークメモリにマークデータを書き込み、
また、前記アトリビュートコントローラは、前記マークメモリにマークデータが書き込まれている場合、このマークデータが書き込まれたアドレスに対応するアドレスの画素データの読み出しを前記画像メモリから行なわず、前記マークメモリにマークデータが書き込まれていない場合、この書き込まれていないアドレスに対応する前記バッファメモリの領域に、下部の分割画像データの画素データの書き込み処理行うことを特徴とする画像処理装置。
An image memory for storing a plurality of source image data;
In correspondence with the source image data stored in the image memory, an attribute memory for storing attribute data including a source address in the image memory and a display address on the screen of the image display device for each source image data;
When a plurality of source image data overlap, the source image data is divided into divided image data except for the overlapping portion of the lower source image data, and a divided display address of each divided image data is calculated and stored in the temporary memory. An attribute conversion circuit;
A source address calculation circuit for calculating a source address in the image memory of the divided image data from the display address, and outputting the source address;
An image memory controller for reading source image data from the image memory based on the source address;
Based on the attribute data, a transmission color detection circuit that detects whether each pixel data of the read source image data is a transmission color;
An attribute controller that stores pixel data of source image data detected as not being transparent color in a display buffer corresponding to a display address in descending order of priority;
A display sending controller for outputting pixel data stored in a display buffer to the display device;
The transparent color detection circuit, when the attribute controller stores the pixel data in the display buffer, if the pixel data is not a transparent color,
Write mark data to the mark memory in the attribute controller,
In addition, when mark data is written in the mark memory , the attribute controller does not read out pixel data at an address corresponding to the address where the mark data is written from the image memory, and marks the mark memory. An image processing apparatus, wherein when pixel data is not written, pixel data of the lower divided image data is written into the area of the buffer memory corresponding to the unwritten address.
前記アトリビュート変換回路が、前記ソース画像データの分割処理を、前記表示バッファに1ライン分のドットの画像データを書き込む毎に行うことを特徴とする請求項1に記載の画像処理装置。2. The image processing apparatus according to claim 1, wherein the attribute conversion circuit performs the division processing of the source image data every time the dot image data for one line is written in the display buffer. 前記アドレス算出回路が、前記アトリビュートデータに基づき、前記分割画像データの表示アドレスを、ソースアドレスに変換することを特徴とする請求項1または請求項2に記載の画像処理装置。The image processing apparatus according to claim 1, wherein the address calculation circuit converts a display address of the divided image data into a source address based on the attribute data. 前記アトリビュートコントローラが、前記重なり部分の上部のソース画像データが透過色である場合、その透過色である画素データの下部の分割画像データにおける画素データを表示バッファへ転送させる処理を、順次高い表示優先度のソース画像データから低い優先度のソース画像データに対して行うことを特徴とする請求項1から請求項3のいずれかに記載の画像処理装置。When the source image data in the upper part of the overlapping portion is a transparent color, the attribute controller sequentially transfers the pixel data in the divided image data in the lower part of the pixel data that is the transparent color to the display buffer. The image processing apparatus according to claim 1, wherein the processing is performed on source image data having a low priority from source image data having a predetermined level. 前記アトリビュートコントローラが分割表示アドレスで示された範囲の前記各分割画像データを前記表示バッファに転送することを特徴とする請求項1から請求項4のいずれかに記載の画像処理装置。5. The image processing apparatus according to claim 1, wherein the attribute controller transfers each of the divided image data in a range indicated by a divided display address to the display buffer. 前記アトリビュート変換回路が、アトリビュート変換回路が前記テンポラリメモリ内の分割画像データの表示優先度の高い順に、再分割するソース画像データを選択し、選択されたソース画像データと、このソース画像データより表示優先度の高いソース画像データとの重なり部分を検出し、この前記重なり部分を、前記選択されたソース画像データの新たな分割画像データとし、この新たな分割画像データの表示アドレスを生成して、前記テンポラリメモリに書き込むことを特徴とする請求項1から請求項5のいずれかに記載の画像処理装置。The attribute conversion circuit selects source image data to be subdivided in descending order of display priority of the divided image data in the temporary memory, and the attribute conversion circuit displays the selected source image data and the source image data. Detecting an overlapping portion with the source image data having a high priority, making the overlapping portion a new divided image data of the selected source image data, and generating a display address of the new divided image data; The image processing apparatus according to claim 1, wherein the image processing apparatus writes the data in the temporary memory. 前記テンポラリメモリが前記表示アドレスを格納する複数のテーブルを有し、前記アトリビュート変換回路が、この各テーブル毎に、順次、再分割される新たな分割画像データを対応させ、対応するテーブルに、分割画像データの表示アドレスを格納することを特徴とする請求項1から請求項6のいずれかに記載の画像処理装置。The temporary memory has a plurality of tables for storing the display addresses, and the attribute conversion circuit associates new divided image data to be subdivided sequentially for each table, and divides the data into corresponding tables. The image processing apparatus according to claim 1, wherein a display address of image data is stored.
JP2001133332A 2000-11-29 2001-04-27 Image processing device Expired - Fee Related JP3612035B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001133332A JP3612035B2 (en) 2000-11-29 2001-04-27 Image processing device

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2000362976 2000-11-29
JP2000-362976 2000-11-29
JP2001133332A JP3612035B2 (en) 2000-11-29 2001-04-27 Image processing device

Publications (2)

Publication Number Publication Date
JP2002229554A JP2002229554A (en) 2002-08-16
JP3612035B2 true JP3612035B2 (en) 2005-01-19

Family

ID=26604822

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001133332A Expired - Fee Related JP3612035B2 (en) 2000-11-29 2001-04-27 Image processing device

Country Status (1)

Country Link
JP (1) JP3612035B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006108967A (en) * 2004-10-04 2006-04-20 Dainippon Printing Co Ltd Method and device for creating plate-making data on which overprint processing is performed
JP5523035B2 (en) 2009-09-18 2014-06-18 パナソニック株式会社 Image processing apparatus and image processing method
JP2014186196A (en) * 2013-03-25 2014-10-02 Toshiba Corp Video picture processing device and video picture display system
KR102287400B1 (en) 2015-02-03 2021-08-06 삼성전자주식회사 Image composite device and display system comprising the same
JP6675253B2 (en) * 2015-06-05 2020-04-01 キヤノン株式会社 Image decoding apparatus and method, and image processing apparatus

Also Published As

Publication number Publication date
JP2002229554A (en) 2002-08-16

Similar Documents

Publication Publication Date Title
JP4263190B2 (en) Video composition circuit
JP4035408B2 (en) Resolution conversion apparatus and method, and information processing apparatus
JP3612035B2 (en) Image processing device
JP3022405B2 (en) Image memory controller
KR100316499B1 (en) Video signal processing circuit
JP3585168B2 (en) Image processing device
KR100366832B1 (en) Apparatus for processing two-dimensional images and method of doing the same
KR100386045B1 (en) Video signal processing circuit
JP3838900B2 (en) Multi-screen display device and display method thereof
JP4124015B2 (en) Image display device
JP3499780B2 (en) Video display
JP2820068B2 (en) Image data synthesis display device
JPS5983454A (en) Form pattern generator
JP2005128689A (en) Image drawing device
JPH0223872B2 (en)
JP2003140628A (en) Information processor
JP2006030683A (en) Signal processor
JPS6292071A (en) Control system for magnified display
JPH07143397A (en) Method and device for transferring image data
JP3099480B2 (en) High-speed graphic drawing method and apparatus
JPH0713539A (en) Display controller
JPS61267874A (en) Picture enlarging and reducing device
JP2004040505A (en) Image processor
JPH02162886A (en) Video scanning frequency converting device
JPH10274974A (en) Image display controller

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