説明

縁の一部を定義することにより画像内に縁を組み込む装置および方法

【課題】画像内に縁を組み込むための装置および方法。
【解決手段】画像領域内に縁領域を取り込むためのハードウェアで実行される方法が提供される。この方法では縁領域の一部分がメモリに格納される。その後画像領域内のピクセルの相対的位置を判断する。次にピクセルの相対的位置に応じてメモリから画像ピクセルまたは縁領域の部分の各ピクセルがフェッチされる。画像領域内に縁領域を組み込むための装置およびディスプレー・コントローラも説明される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は一般的にコンピュータ・グラフィックスに関するもので、より具体的には画像内に縁を組み込む方法および装置に関する。
【背景技術】
【0002】
コンピュータ・グラフィックスにおいては通常表示されている画像の周囲に縁を設ける。図1は画像の周囲に縁を施す従来の方法を図示するものである。現在画像106の周囲に縁102を設けるにはグラフィックス・コントローラが画像の寸法に近似するオーバーレイを使用する必要がある。オーバーレイ108は縁102と透明であるようにプログラムされた中央部分104を含む。従って縁102は画像106の一部分の領域を構成するだけであるにもかかわらず、保存されるオーバーレイのピクセル数は画像のピクセル数に等しい。加えてオーバーレイ108内の中央部分104の透明ピクセルを処理するために余分の回路が必要となり、さらに電力と帯域を消費することになる。
【0003】
その結果小型の携帯デバイスの多くは通常電力、メモリ、および演算能力が限定されているので縁のオーバーレイを処理する場合に問題が有る。これらのデバイスはメモリ、および演算能力が限定されているため、オーバーレイの処理はメモリの限度を超えこれらデバイスのCPUサイクルを支配することがあり、その結果アプリケーションの実行速度が著しく遅くなることになる。
【0004】
【特許文献1】米国特許第5,815,157号明細書
【発明の開示】
【発明が解決しようとする課題】
【0005】
前記にかんがみ、縁を施すために必要なメモリおよび要求されるCPU処理能力を削減する装置および方法を提供する必要がある。
【課題を解決するための手段】
【0006】
本発明はおおまかに言えば画像領域内に縁領域を組み込むためのハードウェアで実行される方法および装置を提供することにより上記の要求を満足する。本発明は方法、システム、またはデバイスを含む多数の手段で実行することができることは理解されるであろう。以下に本発明の創意に富んだいくつかの実施形態を説明する。
【0007】
本発明の第一の形態では画像領域内に縁領域を組み込むためのハードウェアで実行される方法が提供される。この方法では画像領域内における一つのピクセルの相対的位置がまず計算される。次にそのピクセルの相対的位置によってピクセルが縁領域に位置しているかの判断をする。ピクセルの相対的位置が縁領域内であれば縁メモリ・ブロックから縁ピクセルをフェッチする命令が計算される。命令は縁領域の一部の回転を定義する。ピクセルの相対的位置が画像領域内であれば主メモリ・ブロックから画像ピクセルがフェッチされる。
【0008】
本発明の第二の形態では画像領域内に縁領域を組み込むためのハードウェアで実行される方法が提供される。この方法では画像領域内における一つのピクセルの相対的位置がまず計算される。次にピクセルの相対的位置が縁領域の幅と比較され、このピクセルが縁領域に位置しているか判断する。ピクセルの相対的位置が縁領域内であり、縁領域の角部分に位置している場合角ピクセルが角メモリ・ブロックからフェッチされる。さもなければピクセルが縁領域の側面部分に位置している場合は側面ピクセルが側面メモリ・ブロックからフェッチされる。ピクセルの相対的位置が画像領域内であれば主メモリ・ブロックから画像ピクセルがフェッチされる。
【0009】
本発明の第三の形態では画像領域内に縁領域を組み込むためのハードウェアで実行される方法が提供される。この方法では縁領域の一部がメモリに格納される。次に画像内のピクセルの相対的位置が判断される。ピクセルの相対的位置に応じて画像ピクセルまたは縁領域の一部の各ピクセルが次にメモリからフェッチされる。
【0010】
本発明の第四の形態では画像領域内に縁領域を組み込むためのディスプレー・コントローラが提供される。ディスプレー・コントローラはメモリを含んでいる。メモリは画像ピクセルを格納するように構成された第1メモリ・ブロック、角ピクセルを格納するように構成された第2メモリ・ブロック、および側面ピクセルを格納するように構成された第3メモリ・ブロックを含む。ディスプレー・コントローラは画像ピクセル、角ピクセル、または側面ピクセルの一つをフェッチするように構成されたメモリ・コントローラも含んでいる。さらにメモリ・コントローラと通信する主画像フェッチ回路がディスプレー・コントローラに含まれる。主画像フェッチ回路にはピクセルが縁領域にあるか判断するためにピクセルの相対的位置を縁領域幅と比較するロジック、第2メモリ・ブロックから角ピクセルをフェッチするロジック、第3メモリ・ブロックから側面ピクセルをフェッチするロジック、および第1メモリ・ブロックから画像ピクセルをフェッチするロジックが含まれる。
【0011】
本発明の第五の形態では画像領域内に縁領域を組み込むための装置が提供される。装置にはディスプレー・コントローラが含まれる。ディスプレー・コントローラには画像領域内におけるピクセルの相対的位置を計算する回路構成、縁メモリ・ブロックから縁ピクセルをフェッチする回路構成、および画像ピクセルを主メモリ・ブロックからフェッチする回路構成を含む。装置はさらにディスプレー・コントローラと通信する中央演算装置(CPU)およびディスプレー・コントローラと通信し、それにより画像領域の表示を可能にするディスプレーも含まれる。
【0012】
発明の他の形態および利点は発明の原理を例示する添付図面と併せて後述の詳細な説明により明らかにされる。
【発明を実施するための最良の形態】
【0013】
本発明は添付図面と併せて次の詳細な説明により容易に理解される。類似した参考数字は類似した構成要素を表す。
【0014】
画像領域内に縁領域を組み込むためのハードウェアで実行される方法および装置に関する発明が説明される。本発明はこれらの具体的な詳細の一部またはすべてなしでも実施できるということは当業者に明らかであろう。他面、本発明を不必要に不明瞭にせぬよう周知のプロセス操作は詳細に説明されていない。
【0015】
ここで説明される実施形態は画像領域内に縁領域を組み込むための装置、ディスプレー・コントローラ、およびハードウェアで実行される方法を提供している。基本的にはオーバーレイ全体を格納する代わりに縁領域をなすオーバーレイ部分のみがメモリに格納される。一実施形態では下記により詳細に説明されるように、主画像フェッチ回路がまずアクセスされ画像領域内におけるピクセルの相対的位置を判断する。ピクセルの相対的位置に応じて画像ピクセルまたは縁領域の部分のピクセルがメモリからフェッチされ、その部分は縁領域の対称性を維持するために回転されることができる。
【0016】
図2は本発明の一実施形態による角部分および側面部分を有する縁領域を示す。繰り返しパターンを有する対称の縁において縁は縁領域200全体が構成される2つの基本的部分に分解することができる。図2に示すように縁領域200は角部分204と側面部分202を含む。第1の部分(即ち角部分204)は縁領域200の4つの角を定義する。第2の部分(即ち側面部分202)は縁領域200の残部を定義する。一実施形態では縁領域200内の角部分204および側面部分202の位置に応じ角部分および側面部分は対称性を維持するために回転することができる。要するに縁領域200は角部分204および側面部分202の複数の回転コピーから構成することができる。加えて角部分204および側面部分202の形状は図2に示すような「正方形」である必要はなく、例えば長方形、三角形、平行四辺形、等々どのような適当な形状とサイズでも良い。
【0017】
図3は本発明の一実施形態による、画像領域内に縁領域を組み込むためのハードウェアで実行される方法の高レベル概要を示すフローチャート図である。図3で示すように操作302に始まり、ピクセルの相対的位置が画像領域内で計算される。さらに詳細に下述されるとおり、ピクセルの相対的位置を次に操作304で縁領域幅と比較し、そのピクセルが縁領域内に位置するか判断する。
【0018】
操作306で示すように、一実施形態ではピクセルの相対的位置に応じて画像ピクセル、角ピクセル、または側面ピクセルがフェッチされる。この実施形態で縁領域は角部分および側面部分の2つの明白な部分から得られることが理解される必要がある。
【0019】
ピクセルの相対的位置が画像領域にある場合は操作308で主メモリから画像ピクセルがフェッチされる。逆にピクセルの相対的位置が縁領域にある場合は操作310で新たに照合が実施されピクセルが縁領域の角部分に位置するか判断する。ピクセルが角部分に位置する場合操作312で角ピクセルが角メモリ・ブロックからフェッチされる。ピクセルが角部分に位置しない場合このピクセルは側面部分に位置することになり、操作314で側面ピクセルが側面メモリ・ブロックからフェッチされる。一実施形態では縁の対称性を維持するため角部分と側面部分が回転される。即ち縁の正確な側面または角に応じ側面または角部分からのピクセルの回収順序が調整される。さらに詳細に下述されるように、角部分および側面部分を回転させる方法の一例は角メモリ・ブロックおよび側面メモリ・ブロックからピクセルをフェッチする順序を計算することである。計算された順序が角部分と側面部分の回転を定義する。言い換えればピクセルがメモリからフェッチされるメモリ・アドレスの順序を変化させることにより角部分と側面部分を回転することができる。
【0020】
図4は本発明の一実施形態による、画像領域内に縁領域を組み込むための装置の簡略化された概要図である。装置602には適当な種類の演算デバイスが含まれる。例えば装置602は携帯端末、携帯電話、ウェブ・タブレット、ポケット・パソコン、等々であって良い。図4に示すとおり装置602には中央演算装置(CPU)604、メモリ606、ディスプレー・コントローラ608、およびディスプレー610が含まれる。ディスプレー610としては液晶(LCD)ディスプレー、薄膜トランジスタ(TFT)ディスプレー、ブラウン管(CRT)モニター、テレビ、等々が考えられる。メモリ606の例にはスタティック・ランダムアクセスメモリ(SRAM)、ダイナミック・ランダムアクセスメモリ(DRAM)、等々が含まれる。
【0021】
ディスプレー・コントローラ608はCPU 604、メモリ606、およびディスプレー610と通信する。一実施形態でピクセルはディスプレー・コントローラ608内に含まれるメモリに格納されている。別の実施形態ではCPU 604と通信するメモリ606がピクセルを格納するように構成されることができる。CPU 604、メモリ606、およびディスプレー・コントローラ608は相互接続されているように図示されているが、当業者であればこれらのコンポーネントは各々共通バス経由で通信することもできることを理解するであろう。
【0022】
画像領域内に縁領域を組み込む上述の機能はディスプレー・コントローラ608に組み入れられている。一実施形態でディスプレー・コントローラ608は画像領域内におけるピクセルの相対的位置を計算する回路構成、角メモリ・ブロックから角ピクセルをフェッチする回路構成、側面メモリ・ブロックから側面ピクセルをフェッチする回路構成、および主メモリ・ブロックから画像ピクセルをフェッチする回路構成を含んでいる。その後ディスプレー・コントローラ608に結合されるディスプレー610が対応する画像ピクセルまたは縁ピクセルを表示する。
【0023】
ここで説明される機能は適当なハードウェア記述言語(HDL)によりファームウェアに統合することができるということは当業者には明らかであろう。例えばHDL(例、VERILOG)を用いてファームウェアとここに説明される必要な機能を提供するためのロジック・ゲートのレイアウトとを統合し縁領域組込み技術および関連機能のハードウェアによる実行を提供することができる。このように、ここで説明される実施形態はここで説明される機能を達成するのに適していればどのような形またはフォーマットでも良く、ある特定の形またはフォーマットに限定されるものではない。
【0024】
図5は図4に示される、本発明の一実施形態によるディスプレー・コントローラのより詳細な図式である。図5に示されるようにディスプレー・コントローラ608はメモリ402、メモリ・コントローラ408、主画像フェッチ回路410、およびディスプレー・インタフェース412を含む。メモリ402にはSRAM、DRAM等々適当なメモリが含まれる。一実施形態でメモリ402は主メモリ404、角メモリ405、および側面メモリ407の別個のブロックに分かれている。主メモリ・ブロック404は画像ピクセルを格納し、角メモリ・ブロック405は角ピクセルを、側面メモリ・ブロック407は側面ピクセルを格納する。あるいは別の実施形態ではピクセルがディスプレー・コントローラ608の外部にあるメモリ領域に格納されることができる。ディスプレー・インタフェース412は主画像フェッチ回路410と通信するが、ディスプレーに対するインタフェースを提供する。
【0025】
一実施形態で主画像フェッチ回路410はピクセルの相対的位置に応じて画像ピクセル、角ピクセル、または側面ピクセルをフェッチするロジックを含む。例えば主画像フェッチ回路410はピクセルの相対的位置が縁領域内にありピクセルが縁領域の角部分内にある場合角メモリ・ブロック405から角ピクセルをフェッチするロジックを含んでいる。しかしピクセルの相対的位置が画像領域内にある場合、主画像フェッチ回路410は主メモリ・ブロック404から画像ピクセルをフェッチするロジックを含む。
【0026】
図6は図5に示される、本発明の一実施形態による主画像フェッチ回路のより詳細なブロック図である。図6で示すとおり主画像フェッチ回路410は水平カウンタ502、垂直カウンタ504、比較回路構成506、回転回路構成512、およびレジスタ510を含む。上述のように主画像フェッチ回路410をアクセスし、あるピクセルが表示用に出力される際そのピクセルの画像領域内における相対的位置を計算する。ピクセルの相対的位置を計算するためにピクセルは一つ以上のカウンタで探知される。一実施形態で主画像フェッチ回路410は水平方向にピクセルの位置を探知する水平カウンタ502と垂直方向にピクセルの位置を探知する垂直カウンタ504とを含んでいる。ディスプレー上の画像は水平方向では左から右へ、垂直方向では上から下へリフレッシュされることが理解されよう。ピクセルの探知において水平カウンタ502および垂直カウンタ504は表示用に次のピクセルに移行する際一個分増分される。例えば最初のピクセルが水平の線に沿って左から右に出力される際当初ゼロの計数値であった水平カウンタ502の数値が一つ増える。このように水平方向に沿った最初のピクセルの相対的位置は1という計数値で識別される。同じ水平の線上における隣のピクセル列に移行する際水平カウンタ502は計数値1から計数値2に増分する。この場合同じ水平の線上における隣のピクセルの相対的位置は2という計数値で識別される。このようにして水平カウンタ502は水平方向に沿った各ピクセルを把握しておく。同様に垂直カウンタ504は画像領域内の次のピクセル行に移行する際上記と同じ方法で各ピクセルを把握しておく。垂直カウンタ504は水平カウンタ502が行の終りに相当する計数に到達することに基づいて増分する。このように垂直カウンタ504は連続する行への移行を捉える。つまり増分する水平カウンタ502と垂直カウンタ504は画像領域内のピクセルの相対的位置、またはXおよびY座標を計算する。さらにカウンタの増分値は1である必要はなく、適当な値(例えば2、3、4、等々)で増分することができる。別の実施形態では主画像フェッチ回路410がピクセルの探知に一つのカウンタを有することができる。この場合各ピクセルが表示される際カウンタは1だけ増分する。従って各ピクセルは固有の計数値で識別される。当業者間では知られているように固有の計数値を画像領域内におけるピクセルのXおよびY座標に変換するために別途の計算が適用される。
【0027】
主画像フェッチ回路410はピクセルが縁領域に位置するかを判断するためにさらに比較回路構成506とレジスタ510を含む。一実施形態で比較回路構成506はピクセルの相対的位置を縁領域幅508と比較するロジックを含む(例えばコンパレータ)。縁領域幅508は縁領域の厚みを指定する値で、一実施形態ではレジスタ510に格納される。あるいは別の実施形態では縁領域幅508を主画像フェッチ回路410の外に位置する中央レジスタに格納することができる。縁領域は均一でない場合があることを理解されよう。例えば縁領域は垂直方向と水平方向に沿った縁領域の厚みを各々指定する縁領域の別々の異なった垂直縁幅と水平縁幅を有することができる。この実施形態でレジスタ510は垂直縁幅および水平縁幅を指定する2つの値を格納する。
【0028】
図6に示すとおり主画像フェッチ回路410にはさらに回転回路構成512が含まれる。一実施形態では回転回路構成512に角メモリ・ブロックおよび側面メモリ・ブロックからピクセルをフェッチする順序を計算するロジックが含まれる。計算された順序が角部分および側面部分の回転を定義する。言い換えれば、順序は画像内のピクセル位置とメモリに格納される画像ピクセルのメモリ・アドレスとの計算された関連付けである。例えば図7A−7Dは本発明の一実施形態による、角部分702が回転された場合のメモリ・アドレスのフェッチ順序を示す簡略な図である。図7A−7Dは左上の角部分、右上の角部分、左下の角分、および右下の角部分を示している。例示のため角部分702内の各正方形はピクセルを表す。正方形内の各番号(例えば1、2、3、4、等々)はそのピクセルに関連付けされたメモリ・アドレスを表す。メモリ・アドレスは各ピクセルに割り当てられる番号でピクセルが各々メモリに格納されている場所を探知するために使用される。メモリ・アドレスは適当などのようなビット幅でも良い。例えば一実施形態でメモリ・アドレスは8ビット長である。別の実施形態ではメモリ・アドレスが16ビット長、等々である。
【0029】
図7A−7Dに示すとおり、25個の正方形(すなわち5x5からなるピクセルのアレー)が角部分702を構成する。各ピクセルはメモリ・アドレス番号に関連付けされている。例えば図7Aに示すとおりゼロ度の回転の場合角部分402の左上端の角に位置するピクセルはゼロという例示メモリ・アドレスを有し、同じ角部分の右上端の角に位置する別のピクセルは4というメモリ・アドレスを有する。
【0030】
この場合ピクセルがメモリからフェッチされる特定の順序が角部分702の回転を定義する。すなわち角部分702はピクセルの位置を異なったメモリ・アドレスに関連付けすることによって回転される。例えば図7Bは角部分702が右回りに90度回転し右上の角部分を定義するところを示す。図7Dは角部分が180度回転し右下の角部分を定義するところを示し、図7Cは角部分が270度回転し左下の角部分を定義するところを示す。例えばゼロ度の回転で図7Aに示す角部分702の左上端の角に位置するピクセルはゼロというメモリ・アドレスに関連付けられる。90度右回りに回転した後図7Bで示す角部分702の左上端の角に位置する同じピクセルは20という別のメモリ・アドレスに関連付けられる。そこでゼロ度の回転で図7Aに示す角部分702の水平上端の行を構成するピクセルは左から右への順序でメモリ・アドレス0、1、2、3、および4からフェッチされる。角部分702を右回りに90度回転して右上の角部分を定義するには図7Bに示す角部分702の水平上端の行を構成するピクセルは左から右への順序でメモリ・アドレス20、15、10、5、および0からフェッチされる。メモリ内のデータが変わるのではなく、メモリからデータをフェッチする順序が変わるということが理解されよう。参考のため図7A−7Dに示す回転は角部分702の中央に位置する基準点を中心としているが、基準点は角部分の内外どこに位置しても良いことが理解されよう。
【0031】
図8A−8Dは本発明の一実施形態による、側面部分が回転された場合のメモリ・アドレスのフェッチ順序を示す簡略な図である。側面部分802は縁領域で角部分でない部分を定義する。図8A−8Dは上端側面部分、右側面部分、下端側面部分、および左側面部分を示す。この例では5個の正方形(即ち1x5からなるピクセルのアレー)が側面部分802を構成する。図8Cは側面部分802が90度回転し右側面部分を定義するところを示す。図8Dは側面部分が180度回転し下端側面部分を定義するところを示し、図8Bは側面部分が270度回転し左側面部分を定義するところを示す。ここでも参考のため、回転は側面部分802の中央に位置する基準点を中心としている。
【0032】
同様にメモリからピクセルがフェッチされる特定の順序が側面部分802の回転を定義する。例えばゼロ度の回転では図8Aに示す側面部分802の上端に位置するピクセルはゼロというメモリ・アドレスに関連付けされている。180度右回りに回転すると図8Dに示す側面部分802の上端に位置する同じピクセルは4という異なったメモリ・アドレスに関連付けされている。
【0033】
図9は本発明の一実施形態による、図7A−7Dに示す角部分および図8A−8Dに示す側面部分を含む縁領域を示す。図9に示すとおり縁領域200は図7A−7Dおよび図8A−8Dに各々示される角部分および側面部分を含む20x20ピクセルの画像である。言い換えれば縁領域は角部分と側面部分の複数コピーの合成である。縁領域の対称性を維持するために角部分および側面部分はしかるべく回転される。
【0034】
上述のように一実施形態では主画像取出し回路にピクセルをメモリからフェッチするメモリ・アドレス順序を作成するロジックが含まれる。この例で主画像取出し回路は図9に示す20x20のの最初の行として以下のメモリ・アドレス順序を出す:
{0,1,2,3,4,0,0,0,0,0,0,0,0,0,0,20,15,10,5,0}
上記メモリ・アドレス順序は12の部分、つまり2個の角部分と10個の側面部分を含む。最初の5個のメモリ・アドレス{0,1,2,3,4}は図7Aに示す左上角部分の上端行に関連付けされている。{0,0,0,0,0,0,0,0,0,0}という次の10個のメモリ・アドレスは図8Aに示す側面部分の上端にある上端ピクセルの10個のコピーに関連付けされている。最後の5個のメモリ・アドレス{20,15,10,5,0}は図7Bに示す右上角部分の上端行に関連付けされている。同様に主画像フェッチ回路は20x20画像の各行のピクセルをフェッチする順序を出し、縁領域200を作成する。
【0035】
図10は本発明の一実施形態による、明確な角部分および側面部分を有する縁領域を示す。図10で示すとおり縁領域200は上述のような2つの区別可能な部分ではなく、4つの区別可能な角部分903、904、907、および909、ならびに4つの側面部分902、905、906、および908を含む。各部分は別個のメモリ・ブロックに格納され、適宜にフェッチされる。図2および図10は縁領域200が各々2つの部分および8つの部分から派生されていることを示す。しかし縁領域200はどのような適当な部分から派生あるいはそれらに分けることが理解されよう。例えば一実施形態では縁領域200が繰り返される1つの部分のみで構成されることができる。さらに各部分の回転は任意である。例えば図10では各部分に関連する画像が既に回転している可能性もあり同図の各部分を回転する必要がないかもしれない。しかし図9に示す部分は対称性を維持するために回転する必要がある。このように縁領域200はどのような適当な部分に分割することができ、どのような適当数の部分でも必要であれば回転することができる。
【0036】
本明細書で説明される実施形態は非直線的な縁部を有する縁領域にも対応することができる。非直線的な縁部は基本的に透明ピクセルを含むことで可能になる。非直線的な縁部の場合、縁領域は同領域の可視部分および透明部分を含む縁領域幅で定義される。透明部分は透明なピクセルを含む。透明ピクセルと可視ピクセルを混ぜることにより非直線な縁部を定義することができる。各ピクセルはピットの数で定義され(例えば8、16ビット、等々)、ビット数によりピクセルが透明であるか定義されることは当業者に周知のことである。例えば透明レジスタは特定の8ビット値を有する。あるピクセルの8ビット値が透明レジスタと合致すればこのピクセルは透明である。これは基本色と呼ばれることもある。
【0037】
図11は本発明の一実施形態による、非直線的な縁部を組み込むことができるディスプレー・コントローラの詳細な図式である。図5のディスプレー・コントローラと同様、ディスプレー・コントローラ801はメモリ402、メモリ・コントローラ408、主画像フェッチ回路410、およびディスプレー・インタフェース412を含む。しかし図11のディスプレー・コントローラ801はさらにオーバーレイ画像フェッチ回路808およびオーバーレイ機能モジュール810も含む。図11に示すとおりディスプレー・コントローラ801に含まれるメモリ402は画像ピクセルを格納する主メモリ・ブロック404および縁領域ピクセルを格納する追加ブロックを有する。各追加ブロックは縁領域の一部分を構成するピクセルを格納するが、メモリ402は縁領域を構成する部分の数に対応してどのような適当な数のブロックにも分割することができることが理解されよう。
【0038】
主画像フェッチ回路410は上述のとおりピクセルの相対的位置に応じて画像ピクセル、角ピクセル、または側面ピクセルをフェッチするためのロジックも含んでいる。しかし本実施形態においてはピクセルが縁領域に位置する場合主画像フェッチ回路410およびオーバーレイ画像フェッチ回路808が同時に各々画像ピクセルと縁ピクセル(例えば角ピクセル、側面ピクセル、等々)をフェッチする。その後縁ピクセルを分析し、縁ピクセルが透明であるか判断する。ここで縁ピクセルの値が上述の透明性を決定する。縁ピクセルが透明でない場合、その縁ピクセルは縁領域内の表示用に選ばれる。縁ピクセルが透明の場合、縁領域内の表示用として代わりに画像ピクセルが選ばれる。
【0039】
例えば画像領域内のピクセルの相対的位置がまず計算され、次にピクセルが縁領域に位置しているか判断するために相対的位置を縁領域幅と比較する。相対的位置が画像領域に存在する場合、主画像フェッチ回路410は表示用に主メモリ・ブロック404から画像ピクセルをフェッチする。しかしピクセルの相対的位置が縁領域内に存在する場合、主画像フェッチ回路410は主メモリ・ブロック404から画像ピクセルをフェッチする。同時にオーバーレイ画像フェッチ回路808がしかるべきブロックから縁メモリをフェッチする。その後オーバーレイ機能モジュール810が縁ピクセルを分析し、縁ピクセルが透明か判断する。縁ピクセルが透明でない場合オーバーレイ機能モジュール810は縁領域内の表示用に縁ピクセルを選択する。縁ピクセルが透明の場合オーバーレイ機能モジュール810は縁領域内の表示用として代わりに画像ピクセルを選択する。
【0040】
あるいは本発明の一実施形態による図5のディスプレー・コントローラは非直線的縁部を組み込むように構成することができる。図5に戻り、ピクセルの相対的位置をまず計算し、この相対的位置を縁領域幅と比較してピクセルが縁領域内に位置するか判断する。ピクセルの相対的位置が画像領域に存在する場合は主画像フェッチ回路410が表示用に主メモリ・ブロック404から画像ピクセルをフェッチする。しかしピクセルの相対的位置が縁領域内に存在する場合、主画像フェッチ回路410は角メモリ・ブロック405または側面メモリ407から各々縁ピクセルをまずフェッチする。次に主画像フェッチ回路410は縁ピクセル、すなわち縁ピクセルと結びついた値、を分析して縁ピクセルが透明か判断する。縁ピクセルが透明でない場合、主画像フェッチ回路410は表示用に縁ピクセルをディスプレー・インタフェース412に送る。しかし縁ピクセルが透明の場合、主画像フェッチ回路410は次に表示用に主メモリ・ブロック404から画像ピクセルをフェッチする。
【0041】
要約すると、上述の発明は画像領域内に縁領域を組み込むために装置、ディスプレー・コントローラ、およびハードウェアで実行する方法を提供する。オーバーレイ全体を格納する従来の方法と比較すると縁領域をなすオーバーレイの部分を格納しそれに従ってピクセルをフェッチすることはメモリの所要量を相当削減する。例えば従来の方法では図9に示す20x20の画像はメモリに格納するために400ピクセルを必要とする。本発明では単に30ピクセルをメモリに格納すれば良く、メモリ所要量が92.5%の節約になる。100x100の画像の場合節約量は99.7%になる。このように画像が大きければ大きいほどメモリ所要量の節約が大きくなる。また透明ピクセルを処理する余分の回路も削除することができる。このようにメモリ所要量を削減し余分の回路を削除すると必要な処理電力および帯域も少なくて済む。その結果電力、メモリ、および計算能力の限られた小型携帯デバイスでも上述の発明を組み込むことにより充分に縁を処理し組み込むことができる。
【0042】
前記実施形態を考慮すると本発明はコンピュータ・システムに格納されたデータに係わる各種のコンピュータ実行操作を用いることができることが理解されよう。これらの操作は物理量を物理的に操作する必要があるものである。必ずしもではないが、通常これらの量は格納、移転、組み合わせ、比較、およびその他の方法で操作される電気または磁気信号の形を取る。さらに実行される操作はしばしば実現、識別、判断、または比較などの用語で引き合いにされるものである。
【0043】
ここで説明され、発明の一部をなす操作はいずれも有益なコンピュータ操作である。発明はさらにこれらの操作を実行するためのデバイスまたは装置に関するものである。装置は必要な目的のために特別に構成されることもでき、または汎用コンピュータでコンピュータ内に格納されたコンピュータ・プログラムによって選択的に駆動または構成されたものであっても良い。特に各種汎用コンピュータを本発明の教示に従って書かれたコンピュータ・プログラムといっしょに使用することができ、または必要な操作を実行するより専門的な装置を構成する方がより便利かもしれない。
【0044】
上記の発明はハンドヘルド・デバイス、マイクロプロセッサ・システム、マイクロプロセッサに基づいたまたはプログラマブルな消費者エレクトロニクス、ミニコンピュータ、メーンフレーム・コンピュータ、その他のコンピュータ・システム・コンフィギュレーションを用いて実施することができる。前記発明は明白な理解のためにかなり詳しく説明されたが、添付請求項の範囲内で一部の変更や改良を実施することができることは明らかであろう。従って本実施形態は例示的とみなされ、限定するものではない。本発明はここに記述される詳細に限定されるものではなく、添付請求項の範囲および同等物の中で変更することができる。請求項において符号および/あるいは工程は請求項で明示的に記述されない限り操作の特定の順序を意味するものではない。
【図面の簡単な説明】
【0045】
【図1】画像の周囲に縁を施す従来の方法。
【図2】本発明の一実施形態による角部分と側面部分を有する縁領域。
【図3】本発明の一実施形態による、画像領域内に縁領域を組み込むためのハードウェアで実行される方法の高レベル概要を示すフローチャート図。
【図4】本発明の一実施形態による、画像領域内に縁領域を組み込むための装置の簡略化された概要図。
【図5】図4に示される、本発明の一実施形態によるディスプレー・コントローラのより詳細な図式。
【図6】図5に示される、本発明の一実施形態による主画像フェッチ回路のより詳細なブロック図。
【図7】本発明の一実施形態による、角部分が回転された場合のメモリ・アドレスのフェッチ順序を示す簡略な図。
【図8】本発明の一実施形態による、側面部分が回転された場合のメモリ・アドレスのフェッチ順序を示す簡略な図。
【図9】本発明の一実施形態による、図7A−7Dに示す角部分および図8A−8Dに示す側面部分を含む縁領域。
【図10】本発明の一実施形態による、明確な角部分および側面部分を有する縁領域。
【図11】本発明の一実施形態による、非直線的な縁部を組み込むことができるディスプレー・コントローラの詳細な図式。
【符号の説明】
【0046】
302 画像領域内のピクセルの相対的位置を計算
304 ピクセルの相対的位置を縁領域幅と比較
306 ピクセルの相対的位置は縁領域の中か?
310 ピクセルは角の位置にあるか?
308 主メモリから画像ピクセルをフェッチする
312 計算された命令に従って角ピクセルをフェッチする
314 計算された命令に従って側面ピクセルをフェッチする
604 CPU
606 メモリ
608 ディスプレー・コントローラ
610 ディスプレー
402 メモリ
404 主メモリ・ブロック
405 角メモリ・ブロック
407 側面メモリ・ブロック
408 メモリ・コントローラ
410 主画像フェッチ回路
412 ディスプレー・インタフェース
410 主画像フェッチ回路
502 水平カウンタ
504 垂直カウンタ
506 比較回路構成
510 レジスタ
508 縁領域幅
512 回転回路構成
402 メモリ
404 主メモリ
408 メモリ・コントローラ
410 主画像フェッチ回路
808 オーバーレイ画像フェッチ回路
810 オーバーレイ機能
412 ディスプレー・インタフェース

【特許請求の範囲】
【請求項1】
画像領域内への縁領域の組み込みをハードウェアで実行する方法であって、
画像領域内のピクセルの相対的位置を計算する操作と、
前記ピクセルの相対的位置に基づき該ピクセルが縁領域内に位置するかを判断する操作と、
前記ピクセルの相対的位置が縁領域内に存在する場合、
縁メモリ・ブロックから縁ピクセルをフェッチするために、縁領域の一部分の回転を定義する命令を計算する操作と、計算された命令に応じて縁メモリから縁ピクセルをフェッチする操作と、
前記ピクセルの相対的位置が画像領域内に存在する場合、主メモリ・ブロックから画像ピクセルをフェッチする操作とを含む方法。
【請求項2】
前記縁ピクセルを縁メモリ領域からフェッチする操作が、
前記ピクセルが縁領域の角部分に存在する場合は計算された命令に従い第1のメモリ・ブロックから角ピクセルをフェッチする操作と、
前記ピクセルが縁領域の側面部分に存在する場合は計算された命令に従い第2のメモリ・ブロックから側面ピクセルをフェッチする操作とを含む請求項1に記載の方法。
【請求項3】
縁領域の角部分が左上の角部分、右上の角部分、左下の角部分、または右下の角部分の1つで定義される請求項2に記載の方法。
【請求項4】
縁領域の側面部分が左側面部分、右側面部分、上端側面部分、または下端側面部分の1つで定義される請求項2に記載の方法。
【請求項5】
前記ピクセルが縁領域に位置するかを判断する操作が、ピクセルの相対的位置を縁領域幅と比較することを含む請求項1に記載の方法。
【請求項6】
回転がゼロ度の回転、90度の回転、180度の回転、または270度の回転で定義される請求項1に記載の方法。
【請求項7】
さらに次のピクセルのために各操作を繰り返すことを含む請求項1に記載の方法。
【請求項8】
前記縁ピクセルを縁メモリからフェッチする操作が縁ピクセルが透明の場合主メモリ・ブロックから画像ピクセルをフェッチすることを含む請求項1に記載の方法。
【請求項9】
前記縁ピクセルを縁メモリ・ブロックからフェッチする操作が、
主メモリから画像ピクセルをフェッチする操作と、
縁ピクセルが透明でない場合表示用に縁ピクセルを選択する操作と、
縁ピクセルが透明の場合表示用に画像ピクセルを選択する操作と、
を含む請求項1に記載の方法。
【請求項10】
画像領域内のピクセルの相対的位置を計算する操作が、
前記ピクセルを水平方向および垂直方向に沿って探知する操作を含む請求項5に記載の方法。
【請求項11】
ピクセルが縁領域に位置するかを判断する操作が、
水平位置を水平縁幅と比較する操作と、
垂直位置を垂直縁幅と比較する操作とを含む請求項10に記載の方法。
【請求項12】
画像領域内への縁領域の組み込みをハードウェアで実行する方法であって、
画像領域内のピクセルの相対的位置を計算する操作と、
前記ピクセルの相対的位置を縁領域幅と比較して該ピクセルが縁領域内に位置するか判断する操作と、
前記ピクセルの相対的位置が縁領域内に存在する場合、
該ピクセルが縁領域の角部分に位置する場合角ピクセルを角メモリ・ブロックからフェッチする操作と、
該ピクセルが縁領域の側面部分に位置する場合側面ピクセルを側面メモリ・ブロックからフェッチする操作と、
前記ピクセルの相対的位置が画像領域内に存在する場合、主メモリ・ブロックから画像ピクセルをフェッチする操作とを含む方法。
【請求項13】
角ピクセルを角メモリ・ブロックからフェッチする操作が、
角メモリ・ブロックから角ピクセルをフェッチするために、角部分の回転を定義する命令を計算する操作と、
計算された命令に応じて角ピクセルを角メモリ・ブロックからフェッチする操作とを含む請求項12に記載の方法。
【請求項14】
側面ピクセルを側面メモリ・ブロックからフェッチする操作が、
側面メモリ・ブロックから側面ピクセルをフェッチし側面部分の回転を定義する命令を計算する操作と、
計算された命令に応じて側面ピクセルを側面メモリ・ブロックからフェッチする操作とを含む請求項12に記載の方法。
【請求項15】
縁領域の角部分が左上の角部分、右上の角部分、左下の角部分、または右下の角部分の1つで定義される請求項12に記載の方法。
【請求項16】
さらに:
ピクセルが縁領域の左上の角部分に位置する場合左上の角ピクセルを左上の角メモリ・ブロックからフェッチする操作と、
ピクセルが縁領域の右上の角部分に位置する場合右上の角ピクセルを右上の角メモリ・ブロックからフェッチする操作と、
ピクセルが縁領域の左下の角部分に位置する場合左下の角ピクセルを左下の角メモリ・ブロックからフェッチする操作と、
ピクセルが縁領域の右下の角部分に位置する場合右下の角ピクセルを右下の角メモリ・ブロックからフェッチする操作とを含む請求項15に記載の方法。
【請求項17】
縁領域の側面部分が左側面部分、右側面部分、上端側面部分、または下端側面部分の1つで定義される請求項12に記載の方法。
【請求項18】
さらに:
ピクセルが縁領域の左側面部分に位置する場合左側面角ピクセルを左側面メモリ・ブロックからフェッチする操作と、
ピクセルが縁領域の右側面部分に位置する場合右側面ピクセルを右側面メモリ・ブロックからフェッチする操作と、
ピクセルが縁領域の上端側面部分に位置する場合上端側面ピクセルを上端側面メモリ・ブロックからフェッチする操作と、
ピクセルが縁領域の下端側面部分に位置する場合下端側面ピクセルを下端側面メモリ・ブロックからフェッチする操作とを含む請求項17に記載の方法。
【請求項19】
画像領域内への縁領域の組み込みをハードウェアで実行する方法であって、
縁領域の一部分をメモリに格納する操作と、
画像領域内のピクセルの相対的位置を判断する操作と、
前記ピクセルの相対的位置に応じてメモリから画像ピクセルまたは縁領域の一部分の各ピクセルをフェッチする操作とを含む方法。
【請求項20】
さらに:
縁領域の一部分の各ピクセルをフェッチするために、縁領域の一部分の回転を定義する命令を計算する操作と、
計算された命令に応じて縁領域の一部分の各ピクセルをフェッチする操作とを含む請求項19に記載の方法。
【請求項21】
画像領域内に縁領域を組み込むためのディスプレー・コントローラであって、
画像ピクセルを格納するように構成された第1メモリ・ブロックと、角ピクセルを格納するように構成された第2メモリ・ブロックと、側面ピクセルを格納するように構成された第3メモリ・ブロックとを含むメモリと、
画像ピクセル、角ピクセル、または側面ピクセルの1つをフェッチするように構成されたメモリ・コントローラと、
該メモリ・コントローラと通信する主画像フェッチ回路で、
ピクセルの相対的位置を縁領域幅と比較し該ピクセルが縁領域に存在するかを判断する計算するためのロジックと、
第2メモリ・ブロックから角ピクセルをフェッチするロジックと、
第3メモリ・ブロックから側面ピクセルをフェッチするロジックと、
第1メモリ・ブロックから画像ピクセルをフェッチするロジックとを含む、前記主画像フェッチ回路と、
を含むディスプレー・コントローラ。
【請求項22】
主画像フェッチ回路が:
角ピクセルを第2メモリ・ブロックからフェッチするために、縁領域の角部分の回転を定義する第1命令を計算するロジックと、
側面ピクセルを第3メモリ・ブロックからフェッチするために、縁領域の側面部分の回転を定義する第2命令を計算するロジックを含む請求項21に記載されるディスプレー・コントローラ。
【請求項23】
角ピクセルを第2メモリ・ブロックからフェッチするロジックが、
第1メモリ・ブロックから画像ピクセルをフェッチするロジックと、
角ピクセルが透明でない場合表示用に角ピクセルを選択することと、
角ピクセルが透明の場合表示用に画像ピクセルを選択することを含む請求項21に記載されるディスプレー・コントローラ。
【請求項24】
画像領域内に縁領域を組み込むための装置であって、
画像領域内のピクセルの相対的位置を計算するための回路構成と、縁メモリ・ブロックから縁ピクセルをフェッチする回路構成と、縁ピクセルを回転させる回路構成と、主画像メモリ・ブロックから画像ピクセルをフェッチする回路構成とを含むディスプレー・コントローラと、
ディスプレー・コントローラと通信する中央演算装置(CPU)と、
ディスプレー・コントローラと通信し、画像領域の表示を可能にするディスプレーとを含む装置。
【請求項25】
さらにCPUと通信するメモリを含む請求項24に記載される装置。
【請求項26】
ディスプレーが液晶ディスプレー(LCD)、薄膜トランジスタ(TFT)ディスプレー、ブラウン管(CRT)モニター、およびテレビを含むグループから選択される請求項24に記載される装置。
【請求項27】
縁メモリから縁ピクセルをフェッチする回路構成が、
前記ピクセルが縁領域の角部分に存在する場合は角ピクセルを角メモリ・ブロックからフェッチする回路構成と、
前記ピクセルが縁領域の側面部分に存在する場合は側面ピクセルを側面メモリ・ブロックからフェッチする回路構成を含む請求項24に記載される装置。
【請求項28】
縁ピクセルを回転させる回路構成が、
縁領域の部分に相対的に定義される基準点を中心に角ピクセルを回転させる回路構成と、
前記基準点を中心に側面ピクセルを回転させる回路構成を含む請求項27に記載される装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2006−3898(P2006−3898A)
【公開日】平成18年1月5日(2006.1.5)
【国際特許分類】
【出願番号】特願2005−174676(P2005−174676)
【出願日】平成17年6月15日(2005.6.15)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】