JPH0756556A - 画像表示装置と方法 - Google Patents
画像表示装置と方法Info
- Publication number
- JPH0756556A JPH0756556A JP3112654A JP11265491A JPH0756556A JP H0756556 A JPH0756556 A JP H0756556A JP 3112654 A JP3112654 A JP 3112654A JP 11265491 A JP11265491 A JP 11265491A JP H0756556 A JPH0756556 A JP H0756556A
- Authority
- JP
- Japan
- Prior art keywords
- frame buffer
- pixel
- monitor
- image
- pixels
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 17
- 239000000872 buffer Substances 0.000 claims abstract description 72
- 238000012886 linear function Methods 0.000 claims abstract description 15
- 238000004422 calculation algorithm Methods 0.000 claims description 24
- 238000005070 sampling Methods 0.000 claims description 11
- 239000002131 composite material Substances 0.000 claims description 8
- 230000006870 function Effects 0.000 description 12
- 238000004091 panning Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 3
- 238000007620 mathematical function Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/391—Resolution modifying circuits, e.g. variable screen formats
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/395—Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
(57)【要約】
【目的】 本発明はある選択された合成直線関数によっ
て定義されたモニタ画素とそれに対応するフレームバッ
ファ画素の相互関係を有する画像表示装置とその方法を
提供することを目的とする。 【構成】 画像表示装置は表示装置、画像の画素の純色
量を定義するデータを記憶するための画像フレームバッ
ファそしてフレームバッファからモニタ(2)上に表示
された各々の画素に対してフレームバッファから適合す
る画素データを選択するための制御システムから構成さ
れる。モニタ画素とフレームバッファ画素間の相互関係
は先に選択された合成直線関数によって定義され、そこ
では制御システムはステップ的手法によって先に選択さ
れた合成直線関数を適用してモニタ画素に対応するフレ
ームバッファ画素を決定する。
て定義されたモニタ画素とそれに対応するフレームバッ
ファ画素の相互関係を有する画像表示装置とその方法を
提供することを目的とする。 【構成】 画像表示装置は表示装置、画像の画素の純色
量を定義するデータを記憶するための画像フレームバッ
ファそしてフレームバッファからモニタ(2)上に表示
された各々の画素に対してフレームバッファから適合す
る画素データを選択するための制御システムから構成さ
れる。モニタ画素とフレームバッファ画素間の相互関係
は先に選択された合成直線関数によって定義され、そこ
では制御システムはステップ的手法によって先に選択さ
れた合成直線関数を適用してモニタ画素に対応するフレ
ームバッファ画素を決定する。
Description
【0001】
【産業上の利用分野】本発明は画像表示装置とそのよう
な装置を制御する方法に関するものであり、それは表示
モニタ、画像の画素の純色量を定義するデータを記憶す
る画像フレームバッファ、そしてフレームバッファから
モニタ上に表示された各々の画素に対してフレームバッ
ファから適当な画素データを選択するための制御手段か
ら構成される。そのような装置は以下に述べられる現在
のその種の物に関連する。
な装置を制御する方法に関するものであり、それは表示
モニタ、画像の画素の純色量を定義するデータを記憶す
る画像フレームバッファ、そしてフレームバッファから
モニタ上に表示された各々の画素に対してフレームバッ
ファから適当な画素データを選択するための制御手段か
ら構成される。そのような装置は以下に述べられる現在
のその種の物に関連する。
【0002】
【従来の技術】前記のような装置は広く変化にとんだ分
野で使われ、画像がオペレータにより変更や修正できる
画像表示システムを含む。修正や変更操作のために、そ
のような装置は画像がモニタ上に様々な方法で示される
ことを可能とする多くの機能を含んでおり典型的にはフ
レームブッファ内にデジタル、カラーデータの形式で保
存されている。例えば、画像は拡大され、スクロールさ
れ、ズームされそしてパンされる。
野で使われ、画像がオペレータにより変更や修正できる
画像表示システムを含む。修正や変更操作のために、そ
のような装置は画像がモニタ上に様々な方法で示される
ことを可能とする多くの機能を含んでおり典型的にはフ
レームブッファ内にデジタル、カラーデータの形式で保
存されている。例えば、画像は拡大され、スクロールさ
れ、ズームされそしてパンされる。
【0003】第一の変換、拡大は低下した解像度の画像
を表示すための二つの方法を提供する。第一の方法は縮
小−サイズ画像を拡大(スケーリング)することによっ
て全−サイズビデオ表示を生成する。これは幾つかの低
解像度画像をフレームバッファ内に同時に存在させてお
く。第二の方法は低下した解像度画像を生成するために
フレームバッファ内の全−サイズ画像をサブサンプリン
グ(subsamples)する。サブサンプリングは
回転のような複雑な計算がフレームバッファ内の画像に
関して行われている時に用いられる。もし計算があまり
にも長く信号フレームリフレッシュ周期内に計算できな
いならば、表示応答は非常に遅くオペレータにより満足
のいく対話を維持することができないことになる。この
場合サブサンプリングは計算負荷を減ずることによって
対話スピードを改善することができる。もし画像が2:
1(XとYの両方で)でサブサンプリングされるなら
ば、4分の1画素だけが許容される表示を提供すべく計
算を必要とする。ひとたび、計算が残りの画素に対して
行われるならば、画像は全解像度で表示される。処理は
US−A−4829370に述べられている。 第二の
変換はスクローリングと呼ばれ、全数の画素によって左
や右そして上や下に画像を並進させる。これは表示スク
リーン上に画像を位置づける。又、画像が拡大された
時、画像は全解像度で表示されているかのように位置を
スクロールする。
を表示すための二つの方法を提供する。第一の方法は縮
小−サイズ画像を拡大(スケーリング)することによっ
て全−サイズビデオ表示を生成する。これは幾つかの低
解像度画像をフレームバッファ内に同時に存在させてお
く。第二の方法は低下した解像度画像を生成するために
フレームバッファ内の全−サイズ画像をサブサンプリン
グ(subsamples)する。サブサンプリングは
回転のような複雑な計算がフレームバッファ内の画像に
関して行われている時に用いられる。もし計算があまり
にも長く信号フレームリフレッシュ周期内に計算できな
いならば、表示応答は非常に遅くオペレータにより満足
のいく対話を維持することができないことになる。この
場合サブサンプリングは計算負荷を減ずることによって
対話スピードを改善することができる。もし画像が2:
1(XとYの両方で)でサブサンプリングされるなら
ば、4分の1画素だけが許容される表示を提供すべく計
算を必要とする。ひとたび、計算が残りの画素に対して
行われるならば、画像は全解像度で表示される。処理は
US−A−4829370に述べられている。 第二の
変換はスクローリングと呼ばれ、全数の画素によって左
や右そして上や下に画像を並進させる。これは表示スク
リーン上に画像を位置づける。又、画像が拡大された
時、画像は全解像度で表示されているかのように位置を
スクロールする。
【0004】第三の変換、ズームミングはあるものに等
しいかより大きくなければならない要素によって画像を
スケールする。この要素は整数である必要はない。ズー
ミングは実施される方法というよりはむしろ主に使われ
る方法において拡大とは異なる。拡大はフレームバッフ
ァのデータが表示ハードウェアによって判断される方法
を制御するのに使われるのに対してズーミングはオペレ
ータが高倍率で絵の部分を確かめるのに使われる。
しいかより大きくなければならない要素によって画像を
スケールする。この要素は整数である必要はない。ズー
ミングは実施される方法というよりはむしろ主に使われ
る方法において拡大とは異なる。拡大はフレームバッフ
ァのデータが表示ハードウェアによって判断される方法
を制御するのに使われるのに対してズーミングはオペレ
ータが高倍率で絵の部分を確かめるのに使われる。
【0005】最後の変換、パニングは表示された画素
(入力画素の断片数でもよい)の全数によって左右や上
下に画像を並進させる。パニングはそれが実施される方
法よりむしろ主に使われる方法においてスクローリング
とは異なる。スクロール値はフレームバッファ内の画像
のアライメントを制御するのに対しパニングはディスプ
レイ上の絵のアライメントを制御する。もし画像がズー
ムされたならば、パニングの単位はスクローリングの単
位とは異なる。
(入力画素の断片数でもよい)の全数によって左右や上
下に画像を並進させる。パニングはそれが実施される方
法よりむしろ主に使われる方法においてスクローリング
とは異なる。スクロール値はフレームバッファ内の画像
のアライメントを制御するのに対しパニングはディスプ
レイ上の絵のアライメントを制御する。もし画像がズー
ムされたならば、パニングの単位はスクローリングの単
位とは異なる。
【0006】
【発明が解決しようとする課題】前記四つの変換の一つ
又はそれ以上を達成するために、制御手段はフレームバ
ッファ内のどの画素又は画素群が使われなければならな
いかを各々のモニタ画素に対して決定しなければならな
い。過去においては、この機能性を達成するために複雑
な論理の実行が要求されていた。独立した論理が各々の
機能ズーム、スクロール、拡大に必要とされ、その結果
その実施は高価で非実際的なものになった。そこで本発
明は先に選択されたモニタ画素とフレームバッファ画素
を対応づける合成直線関数を用い、そしてそれに適合す
る簡易ハードウェアを使ってそれらの機能を一体として
実施しようとするものである。
又はそれ以上を達成するために、制御手段はフレームバ
ッファ内のどの画素又は画素群が使われなければならな
いかを各々のモニタ画素に対して決定しなければならな
い。過去においては、この機能性を達成するために複雑
な論理の実行が要求されていた。独立した論理が各々の
機能ズーム、スクロール、拡大に必要とされ、その結果
その実施は高価で非実際的なものになった。そこで本発
明は先に選択されたモニタ画素とフレームバッファ画素
を対応づける合成直線関数を用い、そしてそれに適合す
る簡易ハードウェアを使ってそれらの機能を一体として
実施しようとするものである。
【0007】
【課題を解決するための手段及び作用】本発明の一つの
面によれば、述べられた種類の画像表示装置において
は、モニタ画素とフレームバッファ画素の相互関係は先
に選択された合成直線関数によって定義され、そこでは
制御手段は段階的方法で先に選択された合成直線関数を
適用することでモニタ画素に対応するフレームバッファ
画素を決定する。
面によれば、述べられた種類の画像表示装置において
は、モニタ画素とフレームバッファ画素の相互関係は先
に選択された合成直線関数によって定義され、そこでは
制御手段は段階的方法で先に選択された合成直線関数を
適用することでモニタ画素に対応するフレームバッファ
画素を決定する。
【0008】本発明の第二の面によれば、述べられた種
類の画像表示装置を操作する方法はモニタ画素とフレー
ムバッファ画素間の相互関係を定義する合成直線関数を
選択すること、そして制御手段に段階的に先に選択され
た合成直線関数を適用することでモニタ画素に対応する
フレームバッファ画素を決定させることから構成され
る。
類の画像表示装置を操作する方法はモニタ画素とフレー
ムバッファ画素間の相互関係を定義する合成直線関数を
選択すること、そして制御手段に段階的に先に選択され
た合成直線関数を適用することでモニタ画素に対応する
フレームバッファ画素を決定させることから構成され
る。
【0009】我々は表示する前にフレームバッファ内に
記憶された画像を並進するのに普通使われる合成関数が
直線形式に全て減じらることが可能なことを最初に認知
した。このことを認識することで、ある知られた線描画
アルゴリズムを用いてモニタ画素とフレームバッファ画
素間の一致を与える方法を実施することができ、それは
直線に対する階段的近似がモニタディスプレイ上に生成
されるよう以前提案されたものである。このことは順次
我々にかなり処理時間を減じ従って対話的に改良された
従来のソフトウェアよりむしろ適合するハードウェア形
式で制御手段を実施するようにさせる。
記憶された画像を並進するのに普通使われる合成関数が
直線形式に全て減じらることが可能なことを最初に認知
した。このことを認識することで、ある知られた線描画
アルゴリズムを用いてモニタ画素とフレームバッファ画
素間の一致を与える方法を実施することができ、それは
直線に対する階段的近似がモニタディスプレイ上に生成
されるよう以前提案されたものである。このことは順次
我々にかなり処理時間を減じ従って対話的に改良された
従来のソフトウェアよりむしろ適合するハードウェア形
式で制御手段を実施するようにさせる。
【0010】方法は従って一個の単純化された論理の実
施を提供し、それは与えられる機能の各々又はそれらの
どんな結合も許容する。この論理の実施はしかしながら
モニタ画素とフレームバッファ画素間の相互関係を定義
すべくロードされる一連のルックアップテーブルを必要
とする。ルックアップテーブルの内容の計算は対話応答
を維持するために単一フレームリフレッシュ期間以内に
達成されなければならない。
施を提供し、それは与えられる機能の各々又はそれらの
どんな結合も許容する。この論理の実施はしかしながら
モニタ画素とフレームバッファ画素間の相互関係を定義
すべくロードされる一連のルックアップテーブルを必要
とする。ルックアップテーブルの内容の計算は対話応答
を維持するために単一フレームリフレッシュ期間以内に
達成されなければならない。
【0011】好ましい例において、制御手段はブレセン
ハン(Bresenham)のアルゴリズムにより選択
された合成直線関数を実施するよう適合される。これは
以下においてより詳細に述べられるがしかし基本的には
1セットの画素(典型的にはモニタ画素)のアドレスの
インクリメントとそして対応する画素セット(典型的に
はフレームバッファ画素)のアドレスにおける変更が実
施されるべきかどうか、そしてもしそうならば、いかな
るその変更がなされるべきかを決定することを含む。
ハン(Bresenham)のアルゴリズムにより選択
された合成直線関数を実施するよう適合される。これは
以下においてより詳細に述べられるがしかし基本的には
1セットの画素(典型的にはモニタ画素)のアドレスの
インクリメントとそして対応する画素セット(典型的に
はフレームバッファ画素)のアドレスにおける変更が実
施されるべきかどうか、そしてもしそうならば、いかな
るその変更がなされるべきかを決定することを含む。
【0012】先に選択された合成直線関数は一つ又は画
像拡大、画像スクロール、画像パンそして画像ズームの
結合を定義してもよい。典型的には、もしブレセンハム
アルゴリズムが実施されそして全ての四つの変換の結合
が必要とさるならば、各々のフレームバッファ画素(X
FB)のアドレスと対応するモニタやビデオ表示画素
(XVD)のアドレスは以下のように定義され、すなわ
ち、 XFB=SS*Trunc(B*XVD/(A*SS*M)+(B*P+A*S )/(A*SS*M))+SA (1) そこでPはパンに対するモニタ画素アドレスオフセット A,Bはズーム比A:B(A>=B)を定義する整数 Sはスクロールに対するフレームバッファ画素アドレス
オフセット SSは拡大サブ_サンプリング比(すなわちSS:1) SAはサブ_サンプリング開始のフレームバッファのオ
フセット(レンジ0<=SA<=SS−1) Mは倍率(すなわちM:1) Aは同様な相互関係で定義できそしてフレームバッファ
ラインアドレス(YFB)とモニタラインアドレス(Y
VD)の間で実施される。
像拡大、画像スクロール、画像パンそして画像ズームの
結合を定義してもよい。典型的には、もしブレセンハム
アルゴリズムが実施されそして全ての四つの変換の結合
が必要とさるならば、各々のフレームバッファ画素(X
FB)のアドレスと対応するモニタやビデオ表示画素
(XVD)のアドレスは以下のように定義され、すなわ
ち、 XFB=SS*Trunc(B*XVD/(A*SS*M)+(B*P+A*S )/(A*SS*M))+SA (1) そこでPはパンに対するモニタ画素アドレスオフセット A,Bはズーム比A:B(A>=B)を定義する整数 Sはスクロールに対するフレームバッファ画素アドレス
オフセット SSは拡大サブ_サンプリング比(すなわちSS:1) SAはサブ_サンプリング開始のフレームバッファのオ
フセット(レンジ0<=SA<=SS−1) Mは倍率(すなわちM:1) Aは同様な相互関係で定義できそしてフレームバッファ
ラインアドレス(YFB)とモニタラインアドレス(Y
VD)の間で実施される。
【0013】
【実施例】さて本発明による方法と装置の例は添付図面
と関連して述べられる。そこで、図1はブレセンハムの
アルゴリズムの原理を図的に描いており、図2は画像表
示装置のブロック図であり、図3はブロック図形式で選
択ハードウェア部分を描いており、そして図4はブロッ
ク図形式で選択ハードウェアの残りの部分を描いてい
る。
と関連して述べられる。そこで、図1はブレセンハムの
アルゴリズムの原理を図的に描いており、図2は画像表
示装置のブロック図であり、図3はブロック図形式で選
択ハードウェア部分を描いており、そして図4はブロッ
ク図形式で選択ハードウェアの残りの部分を描いてい
る。
【0014】ブレセンハムのアルゴリズムの背後にある
原理を理解するために、図1を参照すべきである。これ
は直線1の部分とそれに関連する4つの近接したモニタ
表示画素P1−P4を描いている。画素P1−P4のど
れも正確にライン1の位置に同時に存在しないことがわ
かるし、そしてラインに最も近いこれらの画素を選択す
る必要がある。
原理を理解するために、図1を参照すべきである。これ
は直線1の部分とそれに関連する4つの近接したモニタ
表示画素P1−P4を描いている。画素P1−P4のど
れも正確にライン1の位置に同時に存在しないことがわ
かるし、そしてラインに最も近いこれらの画素を選択す
る必要がある。
【0015】x=i−1すなわちポイント(i−1,y
i−1)を仮定すれば、P3は最もラインの真の位置を
表す。そして、x=iで、選ばれた画素位置は真のライ
ンに最も近いそれであるべきである。図1から、x=i
で画素位置を選択するための規則は もし(yi−1+1−yi)<(yi−yi−1)ならばP2(i,yi−1 +1)を選択、さもなければP4(i,yi−1)を選択 (2) そこではyiはx=iでの真の高さである。この規則は
以下のように簡単化でき、すなわち
i−1)を仮定すれば、P3は最もラインの真の位置を
表す。そして、x=iで、選ばれた画素位置は真のライ
ンに最も近いそれであるべきである。図1から、x=i
で画素位置を選択するための規則は もし(yi−1+1−yi)<(yi−yi−1)ならばP2(i,yi−1 +1)を選択、さもなければP4(i,yi−1)を選択 (2) そこではyiはx=iでの真の高さである。この規則は
以下のように簡単化でき、すなわち
【0016】もし2yi−1+1−2yi<0ならば
(i,yi−1+1)を選択 それは、もし ci−1<0 (3) そこではci−1=2yi−1+1−2(dy/dx)
iというこである。dX>0であるから、この規則は もしei−1<0ならば(i,yi−1+1)を選択 (4) そこではei−1=2dxyi+dx−2dyiと等価
であり、それから ei=2dxyi+dx−2dy(i+1) その結果引き算して ei=ei−1+2dx(yi−yi−1)2dy (5) しかしながら、式(4)より もしei−1<0ならばyi−yi−1=1 さもなければyi−yi−1=0
(i,yi−1+1)を選択 それは、もし ci−1<0 (3) そこではci−1=2yi−1+1−2(dy/dx)
iというこである。dX>0であるから、この規則は もしei−1<0ならば(i,yi−1+1)を選択 (4) そこではei−1=2dxyi+dx−2dyiと等価
であり、それから ei=2dxyi+dx−2dy(i+1) その結果引き算して ei=ei−1+2dx(yi−yi−1)2dy (5) しかしながら、式(4)より もしei−1<0ならばyi−yi−1=1 さもなければyi−yi−1=0
【0017】従って、式(5)は以下のようにあらわさ
れる。(i,yi)がx=1で最良の画素位置と仮定す
れば、x=i+1ではすなわち もしei<0ならば(i+1,yi+1)を選択 そこでは、もしei−1<0ならばei=ei−1+2
(dx−dy) ei−1−2dyさもなければ他の(i+1,yi)
(i=1,2・・・,dx)を選択。
れる。(i,yi)がx=1で最良の画素位置と仮定す
れば、x=i+1ではすなわち もしei<0ならば(i+1,yi+1)を選択 そこでは、もしei−1<0ならばei=ei−1+2
(dx−dy) ei−1−2dyさもなければ他の(i+1,yi)
(i=1,2・・・,dx)を選択。
【0018】ブレセンハムアルゴリズムはコンピュータ
グラフィックの分野ではよく知られており、そこではそ
れはビットマップのラスターディスプレイ上にラインを
描くのに広く使われてきた。“対話型コンピュータグラ
フィックの基礎”J.D.フォーリー(Foley)と
A.ヴァンダン(Van Dam)(アディソン−ウェ
ズリー(addison−Wesley)1983)を
参照せよ。
グラフィックの分野ではよく知られており、そこではそ
れはビットマップのラスターディスプレイ上にラインを
描くのに広く使われてきた。“対話型コンピュータグラ
フィックの基礎”J.D.フォーリー(Foley)と
A.ヴァンダン(Van Dam)(アディソン−ウェ
ズリー(addison−Wesley)1983)を
参照せよ。
【0019】画像処理装置のこのアルゴリズムの新たな
適用は以下に述べられる。図2はブロック図形式で画像
表示装置の例を描いており、それはビデオモニタ2と、
それに結合し、インクカラー成分、すなわちシアン
(C)、マゼンダ(M)、イエロー(Y)そしてブラッ
ク(K)のプリントを定義する画素データを受信し、そ
してこれらをモニタディスプレイのそれぞれの燐光を発
するレッド(R)、グリーン(G)、そしてブルー
(B)のカラー成分に変換する従来のカラーコンバータ
3から構成される。CMYK成分は一般に四つの画素ア
レーから成るフレームバッファを有するフレームバッフ
ァ4内に保持され、各々のアレーは1280x1024
画素のディメンジョンをもつ。各々のアレーはカラー成
分の一つに対応しそして各々のカラー成分は8ビットデ
ータで定義される。そのデータは内部接続バス8を介し
そしてプロセッサ100の制御のもとでイメージスキャ
ナや記憶装置(示されていない)から従来方法によって
フレームバッファ4にロードされる。フレームバッファ
4に記憶された画像の望みの部分を選択するために、オ
ペレーター操作の入力装置5が提供され(マウスやディ
ジタイズテーブルやそのような物)、それは同等な値を
内部接続バス8を介して適当にプログラムされたコンピ
ュータプロセッサ100に入力する。プロセッサ100
は順次に制御値をZAPS(ズーム、拡大、パン、スク
ロール)制御装置6(以下でより詳細に述べられる)へ
転送する。ZAPS制御装置6はZAPS選択装置9へ
接続され、それはフレームバッファ4からの画素データ
を受信しそして選択されたビデオデータをカラーコンバ
ータ3へ供給する。
適用は以下に述べられる。図2はブロック図形式で画像
表示装置の例を描いており、それはビデオモニタ2と、
それに結合し、インクカラー成分、すなわちシアン
(C)、マゼンダ(M)、イエロー(Y)そしてブラッ
ク(K)のプリントを定義する画素データを受信し、そ
してこれらをモニタディスプレイのそれぞれの燐光を発
するレッド(R)、グリーン(G)、そしてブルー
(B)のカラー成分に変換する従来のカラーコンバータ
3から構成される。CMYK成分は一般に四つの画素ア
レーから成るフレームバッファを有するフレームバッフ
ァ4内に保持され、各々のアレーは1280x1024
画素のディメンジョンをもつ。各々のアレーはカラー成
分の一つに対応しそして各々のカラー成分は8ビットデ
ータで定義される。そのデータは内部接続バス8を介し
そしてプロセッサ100の制御のもとでイメージスキャ
ナや記憶装置(示されていない)から従来方法によって
フレームバッファ4にロードされる。フレームバッファ
4に記憶された画像の望みの部分を選択するために、オ
ペレーター操作の入力装置5が提供され(マウスやディ
ジタイズテーブルやそのような物)、それは同等な値を
内部接続バス8を介して適当にプログラムされたコンピ
ュータプロセッサ100に入力する。プロセッサ100
は順次に制御値をZAPS(ズーム、拡大、パン、スク
ロール)制御装置6(以下でより詳細に述べられる)へ
転送する。ZAPS制御装置6はZAPS選択装置9へ
接続され、それはフレームバッファ4からの画素データ
を受信しそして選択されたビデオデータをカラーコンバ
ータ3へ供給する。
【0020】以上述べられたように、オペレータは表示
されるフレームバッファ4に記憶された画素の異なる形
式を用意できる。例えば、彼は画像をスクロール
(S)、パン(P)、拡大(A)、そしてズーム(Z)
させることができる。ZAPS制御装置6は入力装置か
ら受信するコマンドから(例えば、スクロールせよ、拡
大せよ)モニタディスプレイを制御するのに使われるデ
ータを含むフレームバッファ画素のアドレスを決定す
る。これは前期ブレセンハムのアルゴリズムを利用する
ハードウェアにおいて都合良く達成される。
されるフレームバッファ4に記憶された画素の異なる形
式を用意できる。例えば、彼は画像をスクロール
(S)、パン(P)、拡大(A)、そしてズーム(Z)
させることができる。ZAPS制御装置6は入力装置か
ら受信するコマンドから(例えば、スクロールせよ、拡
大せよ)モニタディスプレイを制御するのに使われるデ
ータを含むフレームバッファ画素のアドレスを決定す
る。これは前期ブレセンハムのアルゴリズムを利用する
ハードウェアにおいて都合良く達成される。
【0021】簡単に言えば、アルゴリズムは一部におい
てXとY軸の両方に独立して適用されるのであるが、あ
たかもX軸にそって適用されるだけかのようにアルゴリ
ズムが述べられるであろう。ZAPSアルゴリズムの実
施において、我々は画像変換を逆転する。表示されてい
るものとしてフレームバッファ画像を変換するよりむし
ろ、我々は逆変換を考慮する。例えば、モニタスクリー
ン上に与えられた位置に対して、我々はフレームバッフ
ァ内の対応する位置を計算したいと願う。この観点か
ら、四つの変換は逆の順序で与えられる。フレームバッ
ファアドレスを導くために第一に、スクリーン座標はパ
ンされ、そしてズーム、スクロールそして最後に拡大さ
れる。我々はこの順序でZAPSアルゴリズムを提示す
る。
てXとY軸の両方に独立して適用されるのであるが、あ
たかもX軸にそって適用されるだけかのようにアルゴリ
ズムが述べられるであろう。ZAPSアルゴリズムの実
施において、我々は画像変換を逆転する。表示されてい
るものとしてフレームバッファ画像を変換するよりむし
ろ、我々は逆変換を考慮する。例えば、モニタスクリー
ン上に与えられた位置に対して、我々はフレームバッフ
ァ内の対応する位置を計算したいと願う。この観点か
ら、四つの変換は逆の順序で与えられる。フレームバッ
ファアドレスを導くために第一に、スクリーン座標はパ
ンされ、そしてズーム、スクロールそして最後に拡大さ
れる。我々はこの順序でZAPSアルゴリズムを提示す
る。
【0022】画像のパニングは全数の表示画素によって
表示スクリーン上の画像を左右に移動させる能力を提供
する。もしさらに画像がズームされ又は拡大されるなら
ば、各々の表示画素はフレームバッファ内の画素の断片
部分でもよい。ズーミング、スクローリングそして拡大
が無い場合、簡易機能がビデオディスプレイに関するア
ドレス、XPVD、をフレームバッファにおけるアドレ
ス、XPBFに関連づける。すなわち XPBF=FP(XPVD,P)=XPVD+P 表示画素Pによってパン ズーミングにおいて画像は二つの整数A:Bの比によっ
てそれを拡大する。再び、簡易機能で他の変換が無い場
合のズームについて述べる。すなわち XZFB=FZ(XZVD,A,B)=Trunc(B
*XZVD/A) 比A:Bによってズーム スクローリングはズームされない画素に与えられるパニ
ングである。これはフレームバッファ画素の全数により
画像を左右に移動する効果がある。すなわち XSBF=FS(XSVD,S)=XSVD+S フレームバッファ画素Sによってスクロール 画像の拡大は二つの全く別の目的を与える。第一に、幾
つものより小さな画像がフレームバッファ内に保持され
てもよくそして表示される時に画像複製によって拡大さ
れてもよい。この拡大は整数量による。すなわち、フレ
ームバッファの画素は水平と垂直に何倍かに複製され
る。我々は倍率要素を表すのに整数Mを使う。
表示スクリーン上の画像を左右に移動させる能力を提供
する。もしさらに画像がズームされ又は拡大されるなら
ば、各々の表示画素はフレームバッファ内の画素の断片
部分でもよい。ズーミング、スクローリングそして拡大
が無い場合、簡易機能がビデオディスプレイに関するア
ドレス、XPVD、をフレームバッファにおけるアドレ
ス、XPBFに関連づける。すなわち XPBF=FP(XPVD,P)=XPVD+P 表示画素Pによってパン ズーミングにおいて画像は二つの整数A:Bの比によっ
てそれを拡大する。再び、簡易機能で他の変換が無い場
合のズームについて述べる。すなわち XZFB=FZ(XZVD,A,B)=Trunc(B
*XZVD/A) 比A:Bによってズーム スクローリングはズームされない画素に与えられるパニ
ングである。これはフレームバッファ画素の全数により
画像を左右に移動する効果がある。すなわち XSBF=FS(XSVD,S)=XSVD+S フレームバッファ画素Sによってスクロール 画像の拡大は二つの全く別の目的を与える。第一に、幾
つものより小さな画像がフレームバッファ内に保持され
てもよくそして表示される時に画像複製によって拡大さ
れてもよい。この拡大は整数量による。すなわち、フレ
ームバッファの画素は水平と垂直に何倍かに複製され
る。我々は倍率要素を表すのに整数Mを使う。
【0023】拡大の第二の機能は低下した解像度で画像
を表示することである。すなわち、画素は規則的な間隔
でフレームバッファから選択されそして同じ要素によっ
て複製されてもよく、よって画像サイズは変わらない。
このサブ−サンプリングレイトはさらにSSで示される
ように整数量でなければならない。我々は又フレームバ
ッファへのサブ_サンプリングのアライメントSAを特
定しなければならない。SAは0からSS−1の範囲に
制限される。
を表示することである。すなわち、画素は規則的な間隔
でフレームバッファから選択されそして同じ要素によっ
て複製されてもよく、よって画像サイズは変わらない。
このサブ−サンプリングレイトはさらにSSで示される
ように整数量でなければならない。我々は又フレームバ
ッファへのサブ_サンプリングのアライメントSAを特
定しなければならない。SAは0からSS−1の範囲に
制限される。
【0024】サブ−サンプリングと倍率は拡大され、低
下した解像度の画像を提供するために結合されてもよ
い。以下の機能はフレームバッファにおける位置X
AFBをビデオディスプレイ上の位置XAVDに関連さ
せる。すなわち XAFB=FA(XAVD,SS,SA,M)=SS*
(XAVDdiv(SS*M)+SA) SS:1によってサブ−サンプル SAでサブ−サンプリング開始 M:1で拡大
下した解像度の画像を提供するために結合されてもよ
い。以下の機能はフレームバッファにおける位置X
AFBをビデオディスプレイ上の位置XAVDに関連さ
せる。すなわち XAFB=FA(XAVD,SS,SA,M)=SS*
(XAVDdiv(SS*M)+SA) SS:1によってサブ−サンプル SAでサブ−サンプリング開始 M:1で拡大
【0025】最終的に、我々はこれらの関数をZAPS
関数に構成する必要がある。ZAPS関数はすなわち XFB=FZAPS(XVD,SS,SA,M,S,A,B,P) =FA(FS(FZ(XVD,P),A,B),S),SS,SA,M) =SS*(FS(FZ(FP(XVD,P),A,B),S)div(S S*M))+SA =SS*(FZ(FP(XVD,P),A,B)+S)div(SS*M ))+SA =SS*((trunc(B*FP(XVD,P)/A)+S)div( SS*M))+SA =SS*((trunc(B*(XVD+P)/A)+S)div(SS *M)+SA 数学的関数truncはその議論の整数部分を返し、す
なわちその端数部分を切り縮める。 例えば、trunc(5.3)=5 数学的関数divは整数として割り算の商を返し、余り
を捨てる。 例えば、9div4=2 数学的関数modは整数による割り算の余りを返す。 例えば、9mod4=1 もしvとwが整数ならば、(trunc(u)div
v)+w=trunc(u/v)+w)は常に正しい。
関数に構成する必要がある。ZAPS関数はすなわち XFB=FZAPS(XVD,SS,SA,M,S,A,B,P) =FA(FS(FZ(XVD,P),A,B),S),SS,SA,M) =SS*(FS(FZ(FP(XVD,P),A,B),S)div(S S*M))+SA =SS*(FZ(FP(XVD,P),A,B)+S)div(SS*M ))+SA =SS*((trunc(B*FP(XVD,P)/A)+S)div( SS*M))+SA =SS*((trunc(B*(XVD+P)/A)+S)div(SS *M)+SA 数学的関数truncはその議論の整数部分を返し、す
なわちその端数部分を切り縮める。 例えば、trunc(5.3)=5 数学的関数divは整数として割り算の商を返し、余り
を捨てる。 例えば、9div4=2 数学的関数modは整数による割り算の余りを返す。 例えば、9mod4=1 もしvとwが整数ならば、(trunc(u)div
v)+w=trunc(u/v)+w)は常に正しい。
【0026】従ってFZAPS は書き換えることがで
きる。すなわち XFB=FZAPS(XVD,SS,SA,M,S,A,B,P) =SS*trunc((B*(XVD+P)/A+S)/(SS*M)) +SA =SS*trunc(B*XVD/(A*SS*M)+(B*P+A*S )/(A*SS*M))+SA trunc内部の部分は直線形式 a*x/b+c/b を有しているので、これはブレセンハムのアルゴリズム
で実施できることがわかる。以下の事項はブレセンハム
のアルゴリズムを使ったZAPSの実施を示している。
もし我々がパニングとスクローリングのパラメータを整
数(端数よりは)に制限するならば、切り縮めた計算を
することができそれによってあるビットによってハード
ウェアデータパスの幅を減じることができる。アルゴリ
ズムは以下のように述べることができる。すなわち
きる。すなわち XFB=FZAPS(XVD,SS,SA,M,S,A,B,P) =SS*trunc((B*(XVD+P)/A+S)/(SS*M)) +SA =SS*trunc(B*XVD/(A*SS*M)+(B*P+A*S )/(A*SS*M))+SA trunc内部の部分は直線形式 a*x/b+c/b を有しているので、これはブレセンハムのアルゴリズム
で実施できることがわかる。以下の事項はブレセンハム
のアルゴリズムを使ったZAPSの実施を示している。
もし我々がパニングとスクローリングのパラメータを整
数(端数よりは)に制限するならば、切り縮めた計算を
することができそれによってあるビットによってハード
ウェアデータパスの幅を減じることができる。アルゴリ
ズムは以下のように述べることができる。すなわち
【0027】従って、始めに比較的複雑な計算を要求す
るように思われたZAPSアルゴリズムはブレセンハム
のアルゴリズムを使って効果的に実施することができる
ことは明らかである。フレームバッファがそれぞれのワ
ードで単一の画素をもって構成される時、ZAPSアル
ゴリズムは単に各々の表示される画素に対してフェレー
ムバッファのアドレスを生成するだけである。現在のビ
デオディスプレイに十分なメモリバンド幅を提供するた
めには、しかしながら、たいていのフレームバッファは
各々のメモリ関係上多くの隣接した画素を引き出すよう
構成されている。そのようなフレームバッファ、特にビ
デオRAM装置で実行されるこれらは、普通ビデオポー
トを介してシーケンシャルに読み込まれるそのデータが
必要である。
るように思われたZAPSアルゴリズムはブレセンハム
のアルゴリズムを使って効果的に実施することができる
ことは明らかである。フレームバッファがそれぞれのワ
ードで単一の画素をもって構成される時、ZAPSアル
ゴリズムは単に各々の表示される画素に対してフェレー
ムバッファのアドレスを生成するだけである。現在のビ
デオディスプレイに十分なメモリバンド幅を提供するた
めには、しかしながら、たいていのフレームバッファは
各々のメモリ関係上多くの隣接した画素を引き出すよう
構成されている。そのようなフレームバッファ、特にビ
デオRAM装置で実行されるこれらは、普通ビデオポー
トを介してシーケンシャルに読み込まれるそのデータが
必要である。
【0028】我々は各々のメモリ関係がフレームバッフ
ァのK個の隣接した画素を引き出し、K−画素ワードに
おける第一の画素のアドレスがゼロ mod Kであ
り、そしてフレームバッファはシーケンシャルに読みだ
されると仮定する。フレームバッファについて定義され
る操作は1)フレームバッファアドレスの初期化そして
2)フレームバッファからのK−画素ワードの読出であ
る。K−画素ワードに対するZAPSアルゴリズムを一
般化するために、我々はズームレシオがあるものより大
きいか等しいことを要求する。あるものより小さいレシ
オは許されない。なぜならそれらは表示速度より高速の
フレームバッファのフェッチを必要とし、それは一般的
に不可能だからである。
ァのK個の隣接した画素を引き出し、K−画素ワードに
おける第一の画素のアドレスがゼロ mod Kであ
り、そしてフレームバッファはシーケンシャルに読みだ
されると仮定する。フレームバッファについて定義され
る操作は1)フレームバッファアドレスの初期化そして
2)フレームバッファからのK−画素ワードの読出であ
る。K−画素ワードに対するZAPSアルゴリズムを一
般化するために、我々はズームレシオがあるものより大
きいか等しいことを要求する。あるものより小さいレシ
オは許されない。なぜならそれらは表示速度より高速の
フレームバッファのフェッチを必要とし、それは一般的
に不可能だからである。
【0029】ZAPSセレクトハードウェア9はフレー
ムバッファ4とビデオ出力パイプラインの間に配置され
る。それはフレームバッファからK個の隣接した画素を
含むワードを受信する。それはK−画素ワードをビデオ
パイプラインに渡す。ZAPS制御ハードウェア6の制
御下のZAPSセレクトハードウェア9は画素を選択そ
して編成し、その結果、適当に拡大、スクロール、ズー
ムそしてパンされた画像がディスプレイモニタに現れ
る。二つの先のワードはこの選択処理の候補としてZA
PSセレクトハードウェア9によりセーブされる。拡大
が無い場合は唯一セーブだけが必要とされる。図3はよ
り詳細にZAPSセレクトハードウェアを描いている。
フレームバッファ4からのデータは一対のレジスタ1
0,11に並列に与えられ、その出力はもとのデータと
共に一組のK個のマルチプレクサ12に与えられる。各
々のマルチプレクサは正しいデータをビデオパイプライ
ンへつまりカラーコンバータ3へ出力するためにZAP
S制御装置6(以下に述べられる)によって独立に選択
される。
ムバッファ4とビデオ出力パイプラインの間に配置され
る。それはフレームバッファからK個の隣接した画素を
含むワードを受信する。それはK−画素ワードをビデオ
パイプラインに渡す。ZAPS制御ハードウェア6の制
御下のZAPSセレクトハードウェア9は画素を選択そ
して編成し、その結果、適当に拡大、スクロール、ズー
ムそしてパンされた画像がディスプレイモニタに現れ
る。二つの先のワードはこの選択処理の候補としてZA
PSセレクトハードウェア9によりセーブされる。拡大
が無い場合は唯一セーブだけが必要とされる。図3はよ
り詳細にZAPSセレクトハードウェアを描いている。
フレームバッファ4からのデータは一対のレジスタ1
0,11に並列に与えられ、その出力はもとのデータと
共に一組のK個のマルチプレクサ12に与えられる。各
々のマルチプレクサは正しいデータをビデオパイプライ
ンへつまりカラーコンバータ3へ出力するためにZAP
S制御装置6(以下に述べられる)によって独立に選択
される。
【0030】正しいデータをビデオパイプラインに出現
させるために、ZAPSハードウェアは二つのレベルで
動作する。第一に、それはいつフレームバッファから次
のワードを読み込むべきか決定する。第二に、それは出
力ワードを構築するために現在と先の幾つかのワードか
らK画素選択する。例えば、もしズームと拡大がされて
いない画像がスクロールされたならば、K個の隣接した
画素が二つの隣接したワードから選ばれる。もし画像が
2:1サブ−サンプリングで拡大されるならば、全ての
他の画素は二度選ばれる。
させるために、ZAPSハードウェアは二つのレベルで
動作する。第一に、それはいつフレームバッファから次
のワードを読み込むべきか決定する。第二に、それは出
力ワードを構築するために現在と先の幾つかのワードか
らK画素選択する。例えば、もしズームと拡大がされて
いない画像がスクロールされたならば、K個の隣接した
画素が二つの隣接したワードから選ばれる。もし画像が
2:1サブ−サンプリングで拡大されるならば、全ての
他の画素は二度選ばれる。
【0031】画素の選択はブレセンハムのアルゴリズム
のKステップを実行することによって達成される。単一
変数としてXFBを計算するよりむしろ、我々は図3に
示されるようにマルチプレクサに対してその値をワード
アドレスWFB、と選択アドレスSFBに分割する。す
なわち、 XFB=K*WFB+SFB
のKステップを実行することによって達成される。単一
変数としてXFBを計算するよりむしろ、我々は図3に
示されるようにマルチプレクサに対してその値をワード
アドレスWFB、と選択アドレスSFBに分割する。す
なわち、 XFB=K*WFB+SFB
【0032】我々はWFBの値が全てのKブレセンハム
ステップでのみ変化することを許容する。全てのKステ
ップで我々はSFBの値を試験する。もしそれがKを越
えるならば、Kを引きそしてWFBインクリメントし
て、すなわち次のワードをフレームバッファから読みだ
す。拡大しない場合、ズームは1以下ではあり得ないの
でSFBは決してKブレセンハムステップにおいてK以
上には増加されない。従ってハードウェアはフレームバ
ッファからの現在と先のワード以上は全く必要としな
い。もし拡大が許されるならば、SFBはKブレセンハ
ムステップにおいて2*(K−1)まで増加され得る。
これはK−1でサブ−サンプリングした時に生じる。こ
の場合、SFBはしばしば現在のワードと二つの先のワ
ードを要求して2*W FB(しかし決して3*WFB
ではない)に達するかそれを越える。ZAPS制御ハー
ドウェア6は図4に示されている。回路は、もし論理入
力16が真(Y)ならばマルチプレクサ13からの値
を、又はもし論理信号16が誤り(N)ならばマルチプ
レクサ17からの出力をその出力に伝えるマルチプレク
サ15へ値0(−ve)又は−K(+ve)を渡すため
にライン14上のサイン(sign)入力に応答するマ
ルチプレクサ13から構成される。マルチプレクサ17
は信号XSと信号XSp1を受信し、最初の信号はもし
選択信号18’が負ならばマルチプレクサ15に送ら
れ、そしてもし選択信号18’が正ならば二番目が出力
に与えられる。マルチプレクサ15からの出力は加算器
18に与えられる。
ステップでのみ変化することを許容する。全てのKステ
ップで我々はSFBの値を試験する。もしそれがKを越
えるならば、Kを引きそしてWFBインクリメントし
て、すなわち次のワードをフレームバッファから読みだ
す。拡大しない場合、ズームは1以下ではあり得ないの
でSFBは決してKブレセンハムステップにおいてK以
上には増加されない。従ってハードウェアはフレームバ
ッファからの現在と先のワード以上は全く必要としな
い。もし拡大が許されるならば、SFBはKブレセンハ
ムステップにおいて2*(K−1)まで増加され得る。
これはK−1でサブ−サンプリングした時に生じる。こ
の場合、SFBはしばしば現在のワードと二つの先のワ
ードを要求して2*W FB(しかし決して3*WFB
ではない)に達するかそれを越える。ZAPS制御ハー
ドウェア6は図4に示されている。回路は、もし論理入
力16が真(Y)ならばマルチプレクサ13からの値
を、又はもし論理信号16が誤り(N)ならばマルチプ
レクサ17からの出力をその出力に伝えるマルチプレク
サ15へ値0(−ve)又は−K(+ve)を渡すため
にライン14上のサイン(sign)入力に応答するマ
ルチプレクサ13から構成される。マルチプレクサ17
は信号XSと信号XSp1を受信し、最初の信号はもし
選択信号18’が負ならばマルチプレクサ15に送ら
れ、そしてもし選択信号18’が正ならば二番目が出力
に与えられる。マルチプレクサ15からの出力は加算器
18に与えられる。
【0033】別のマルチプレクサ19は加算器18から
の出力とさらにイニシャルSFB信号(前記で定義され
たものとして)を受信し、そしてイニシャルSFB信号
(もし信号20が真(Y)ならば)又は他の加算器18
からの信号のどちらかをSFBレジスタ21へ渡すため
の選択信号20に応答する。レジスタ21からの出力は
加算器18へ与えられそして又最初のレジスタ22へ与
えられる。その間レジスタ21からの出力のサインを表
す信号はライン14と又AND回路23の一つの入力に
与えられる。AND回路23の他の人力はステップ
“0”信号を受信する。
の出力とさらにイニシャルSFB信号(前記で定義され
たものとして)を受信し、そしてイニシャルSFB信号
(もし信号20が真(Y)ならば)又は他の加算器18
からの信号のどちらかをSFBレジスタ21へ渡すため
の選択信号20に応答する。レジスタ21からの出力は
加算器18へ与えられそして又最初のレジスタ22へ与
えられる。その間レジスタ21からの出力のサインを表
す信号はライン14と又AND回路23の一つの入力に
与えられる。AND回路23の他の人力はステップ
“0”信号を受信する。
【0034】マルチプレクサ24はFSとFSmlを表
す信号を受信し、もしライン26上の入力信号が負の値
を示すならば最初の信号を加算器25へ渡し、そしても
しライン26上の入力信号が正の値を示すならば加算器
25へ二番目の信号を渡す。マルチプレクサ27は一方
の入力に加算器25からの出力を受信しそして他の一方
にはイニシャルFY信号を入力する。前者はもしライン
29上の信号が論理偽(N)ならばレジスタ28へ引き
渡され、そしてもしライン29上の信号が論理真(Y)
ならば後者がレジスタ28へ渡される。レジスタ28か
らの出力は加算器25へ与えられ、その間出力のサイン
はライン18に与えられる。図4に示すように、クロッ
クはレジスタ21、レジスタ28、そしてレジスタ22
の制御動作のために提供される。ANDゲート23から
の出力はフレームバッファからフェッチされる新たなワ
ードを発生させ、その間レジスタ22からの出力は図3
のマルチプレクサ12へ入力として与えられる。
す信号を受信し、もしライン26上の入力信号が負の値
を示すならば最初の信号を加算器25へ渡し、そしても
しライン26上の入力信号が正の値を示すならば加算器
25へ二番目の信号を渡す。マルチプレクサ27は一方
の入力に加算器25からの出力を受信しそして他の一方
にはイニシャルFY信号を入力する。前者はもしライン
29上の信号が論理偽(N)ならばレジスタ28へ引き
渡され、そしてもしライン29上の信号が論理真(Y)
ならば後者がレジスタ28へ渡される。レジスタ28か
らの出力は加算器25へ与えられ、その間出力のサイン
はライン18に与えられる。図4に示すように、クロッ
クはレジスタ21、レジスタ28、そしてレジスタ22
の制御動作のために提供される。ANDゲート23から
の出力はフレームバッファからフェッチされる新たなワ
ードを発生させ、その間レジスタ22からの出力は図3
のマルチプレクサ12へ入力として与えられる。
【0035】図4に示される回路によって実施されるア
ルゴリズムは以下のように定義され、そしてSFBの値
はそのサインビットだけがフレームバッファから新たな
ワードをフェッチすべきかどうかを決定すべく試験を必
要とすることからKを引くことによるオフセットである
ことがわかる。
ルゴリズムは以下のように定義され、そしてSFBの値
はそのサインビットだけがフレームバッファから新たな
ワードをフェッチすべきかどうかを決定すべく試験を必
要とすることからKを引くことによるオフセットである
ことがわかる。
【0036】図4はマルチ−画像ワード対応に組み込ま
れた完全なZAPS制御ハードウェアを示している。こ
の回路はK+1ステップのグループを実行する。ステッ
プ0はフレームバッファからワードをフェッチすべきか
どうか決定するためにSFBを試験する。もしSFBが
非負ならば、ワードがフェッチされ、そしてSFBはK
だけ減じられる。ステップ0の間、FYの値は変化しな
い。ステップ1からKはマルチプレクサ選択のK値を計
算するためにSFBとFYを進める。
れた完全なZAPS制御ハードウェアを示している。こ
の回路はK+1ステップのグループを実行する。ステッ
プ0はフレームバッファからワードをフェッチすべきか
どうか決定するためにSFBを試験する。もしSFBが
非負ならば、ワードがフェッチされ、そしてSFBはK
だけ減じられる。ステップ0の間、FYの値は変化しな
い。ステップ1からKはマルチプレクサ選択のK値を計
算するためにSFBとFYを進める。
【0037】
【発明の効果】以上、本発明の制御手段はブレセンハン
のアルゴリズムにより選択された合成関数を実施するよ
うに適合され、それは画像の拡大、スクロール、パンそ
してズームの結合を定義してもよく、対話的に改良され
た従来のソフトウェアによるよりはむしろそれに適合す
るハードウェア形式で高速に制御手段を実施させること
が可能で、さらにそれは与えられる機能のどんな結合も
許容する。
のアルゴリズムにより選択された合成関数を実施するよ
うに適合され、それは画像の拡大、スクロール、パンそ
してズームの結合を定義してもよく、対話的に改良され
た従来のソフトウェアによるよりはむしろそれに適合す
るハードウェア形式で高速に制御手段を実施させること
が可能で、さらにそれは与えられる機能のどんな結合も
許容する。
【図1】ブレセンハンのアルゴリズムの原理を図的に描
いており、
いており、
【図2】画像表示装置のブロック図であり、
【図3】ブロック図形式で選択ハードウェア部分を描い
ており、そして
ており、そして
【図4】ブロック図形式で選択ハードウェアの残りの部
分を描いている。
分を描いている。
1…直線 2…ビデオモニタ 3…カラーコンバータ 4…フレームバッファ 5…入力装置 6…ZAPS制御装置 8…内部接続バス 9…ZAPS選択装置 18,25…加算器 100…プロセッサ P1,P2,P3,P4…モニタ表示画素
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジョン フィリップ ストレイト アメリカ合衆国,ペンシルバニア 15206 −1718,ピッツバーグ,ノース シェリダ ン アベニュ 1017 (72)発明者 クライブ レオナルド メイン イギリス国,ノース ウェンブレイ,イー スト レーン 184 (72)発明者 リンドセイ ウィリアム マクドナルド イギリス国,エルユー7 05ジー,ベッド フォードシャー,レイトン バザード,チ ェディントン,ステイション ロード 41 (72)発明者 ブライアン エス.ローゼン アメリカ合衆国,ペンシルバニア 16046, マーズ,コンラド ドライブ,ボックス 470 ルーラルデリバリー 7 (72)発明者 リチャード エドワード フーバー アメリカ合衆国,ペンシルバニア 16037, ハーモニー,スウェイン ヒル ロード 139 (72)発明者 デビッド エム.ケルン アメリカ合衆国,ペンシルバニア 15144 リングデイル,オークウッド アベニュ 440
Claims (4)
- 【請求項1】 表示モニタ(2)と、画像の画素の純色
量を定義するデータを記憶するための画像フレームバッ
ファ(4)と、そしてフレームバッファ(4)からモニ
タ(2)上に表示された各々の画素に対してフレームバ
ッファからの適合する画素データを選択するための手段
(6,9)から成る画像表示装置において、 モニタ画素とフレームバッファ画素間の相互関係は先に
選択された合成直線関数によって定義され、そこでは制
御手段(6,9)はステップ的手法で先に選択された合
成直線関数を適用することによってモニタ画素に対応す
るフレームバッファ画素を決定することを特徴とする画
像表示装置。 - 【請求項2】 制御手段(6,9)はブレセンハムのア
ルゴリズムとの関係で選ばれた合成直線関数を実施する
よう適合されている請求項1記載の装置。 - 【請求項3】 各々のフレームバッファ画素のアドレス
(XFB)と対応するモニタやビデオ表示画素のアドレ
ス(XVD)間の相互関係は、すなわち XFB=SS*Trunc(B*XVD/(A*SS*M)+(B*P+A* S)/(A*SS*M))+SA (1) そこでPはパンのためのモニタ画素アドレスオフセット A,Bはズーム比A:B(A>=B)を定義する整数 Sはスクロールのためのフレームバッファ画素アドレス
オフセット SSは拡大サブ−サンプリング比(すなわちSS:1) SAはサブ− ンプリング開始のフレームバッファにお
けるオフセット(範囲0<=SA<=SS−1) Mは倍率(すなわちM:1) として定義される請求項2記載の装置。 - 【請求項4】 モニタ画素とフレームバッファ画素間の
相互関係を定義する合成直線関数を選択すること、そし
て制御手段(6,9)はステップ的手法で先に選択され
た合成直線関数を適用することによってモニタ画素に対
応するフレームバッファ画素を決定させることから構成
される方法であって、請求項1から3のどれか一つに記
載の画像表示装置を動作させる方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB9003922.3 | 1990-02-21 | ||
| GB909003922A GB9003922D0 (en) | 1990-02-21 | 1990-02-21 | Image display apparatus and method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0756556A true JPH0756556A (ja) | 1995-03-03 |
Family
ID=10671386
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3112654A Pending JPH0756556A (ja) | 1990-02-21 | 1991-02-21 | 画像表示装置と方法 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US5373311A (ja) |
| EP (1) | EP0444812B1 (ja) |
| JP (1) | JPH0756556A (ja) |
| DE (1) | DE69104867T2 (ja) |
| GB (1) | GB9003922D0 (ja) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5774110A (en) * | 1994-01-04 | 1998-06-30 | Edelson; Steven D. | Filter RAMDAC with hardware 11/2-D zoom function |
| US6621940B2 (en) * | 1999-06-10 | 2003-09-16 | Xerox Corporation | Image rotation in opponent color space |
| US8116587B2 (en) * | 2010-02-16 | 2012-02-14 | Ricoh Co., Ltd. | Method and apparatus for high-speed and low-complexity piecewise geometric transformation of signals |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6061796A (ja) * | 1983-09-16 | 1985-04-09 | シャープ株式会社 | 表示装置 |
| EP0149788B1 (en) * | 1983-12-14 | 1992-04-15 | Ascii Corporation | Display control system |
| US4734690A (en) * | 1984-07-20 | 1988-03-29 | Tektronix, Inc. | Method and apparatus for spherical panning |
| JPS623372A (ja) * | 1985-06-27 | 1987-01-09 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | 画像変換装置 |
| US5202670A (en) * | 1986-08-20 | 1993-04-13 | Canon Kabushiki Kaisha | Image processing apparatus |
| US5167018A (en) * | 1986-09-24 | 1992-11-24 | Daikin Industries, Ltd. | Polygon-filling apparatus |
| CA1258912A (en) * | 1986-11-20 | 1989-08-29 | Stephen J. King | Interactive real-time video processor with zoom, pan and scroll capability |
| US4870406A (en) * | 1987-02-12 | 1989-09-26 | International Business Machines Corporation | High resolution graphics display adapter |
| US4855935A (en) * | 1987-05-08 | 1989-08-08 | Sun Microsystems, Inc. | Method and apparatus for rendering vectors using bresenham parameters |
| US4878182A (en) * | 1987-10-30 | 1989-10-31 | International Business Machines Corporation | Multiple pixel generator |
| GB2219178A (en) * | 1988-02-11 | 1989-11-29 | Benchmark Technologies | State machine controlled video processor |
| US4988984A (en) * | 1988-10-31 | 1991-01-29 | International Business Machines Corporation | Image interpolator for an image display system |
| US5125043A (en) * | 1989-06-23 | 1992-06-23 | Microterm, Inc. | Image processing with real time zoom logic |
-
1990
- 1990-02-21 GB GB909003922A patent/GB9003922D0/en active Pending
-
1991
- 1991-02-19 EP EP91301308A patent/EP0444812B1/en not_active Expired - Lifetime
- 1991-02-19 DE DE69104867T patent/DE69104867T2/de not_active Expired - Fee Related
- 1991-02-21 JP JP3112654A patent/JPH0756556A/ja active Pending
-
1992
- 1992-12-31 US US07/999,725 patent/US5373311A/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| GB9003922D0 (en) | 1990-04-18 |
| EP0444812A1 (en) | 1991-09-04 |
| DE69104867T2 (de) | 1995-03-09 |
| DE69104867D1 (de) | 1994-12-08 |
| EP0444812B1 (en) | 1994-11-02 |
| US5373311A (en) | 1994-12-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CA2102935C (en) | Two dimensional scaler | |
| US5642498A (en) | System for simultaneous display of multiple video windows on a display device | |
| US5889529A (en) | System and method for generating and displaying complex graphic images at a constant frame rate | |
| US6339434B1 (en) | Image scaling circuit for fixed pixed resolution display | |
| US4532605A (en) | True zoom of a displayed image | |
| US5758129A (en) | Data display apparatus | |
| JP2612939B2 (ja) | イメージ表示システム用補間装置およびイメージ表示システム | |
| US5923316A (en) | Optimized color space conversion | |
| US6903733B1 (en) | Ultra-high bandwidth multi-port memory system for image scaling applications | |
| US5329614A (en) | Method and apparatus for enlarging gray scale images | |
| JP2837339B2 (ja) | 画像生成方法 | |
| US7551806B2 (en) | Two stage interpolation apparatus and method for up-scaling an image on display device | |
| JP2007536812A (ja) | ビデオデータを迅速にスケーリングおよびフィルタリングするためのシステムおよび方法 | |
| US7492376B2 (en) | Graphics resampling system and method for use thereof | |
| US5848199A (en) | Apparatus and method for performing fast and precise spatial transformations of images | |
| JPH0756556A (ja) | 画像表示装置と方法 | |
| JPH06203167A (ja) | 高速2次元/3次元画像変換装置および方法 | |
| US6414682B1 (en) | System and method for transitioning between two filters, allowing for the use of higher order interpolation | |
| US4945497A (en) | Method and apparatus for translating rectilinear information into scan line information for display by a computer system | |
| US20030128223A1 (en) | Method and apparatus for remapping subpixels for a color display | |
| JPH09204171A (ja) | グラフィックデータ発生方法およびグラフィックコントローラ | |
| US6788348B1 (en) | Method and system for processing digital images | |
| KR920003277B1 (ko) | 비디오 ram의 패닝 제어 방법 | |
| JPH0329059A (ja) | 画像処理方法および装置 | |
| JPH0571113B2 (ja) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20000912 |