JP2544429B2 - イメ―ジ処理装置 - Google Patents

イメ―ジ処理装置

Info

Publication number
JP2544429B2
JP2544429B2 JP63044667A JP4466788A JP2544429B2 JP 2544429 B2 JP2544429 B2 JP 2544429B2 JP 63044667 A JP63044667 A JP 63044667A JP 4466788 A JP4466788 A JP 4466788A JP 2544429 B2 JP2544429 B2 JP 2544429B2
Authority
JP
Japan
Prior art keywords
image
sub
primary storage
images
subimage
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 - Lifetime
Application number
JP63044667A
Other languages
English (en)
Other versions
JPS63249280A (ja
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS63249280A publication Critical patent/JPS63249280A/ja
Application granted granted Critical
Publication of JP2544429B2 publication Critical patent/JP2544429B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)

Description

【発明の詳細な説明】 目 次 A.産業上の利用分野 B.従来技術 C.発明が解決しようとする問題点 D.問題点を解決するための手段 E.実施例 E−1.イメージ処理システムの概要 E−2.処理時間の考察 E−3.表示状態の変形 E−4.仮想イメージ操作 E−5.実例1 E−6.実例2 F.発明の効果 A.産業上の利用分野 本発明は、イメージ・データを処理中のプロセッサ、
またはそのアドレス指定機器がイメージ・データを取り
扱うのに不充分なプロセッサあるいはその両方であるプ
ロセッサのメモリ容量を必要なイメージ記憶容量が上回
る、大型ディジタル・イメージの効率的処理に関する。
本発明はディジタル・イメージの回転、反射、反転、拡
大、縮小および複写に有用である。また、パターン塗り
つぶしおよび図形の注釈付けにも有用である。
B.従来技術 イメージの有効な処理を実行できる既知のイメージ処
理システムには、従来から大容量メモリが必要であっ
た。こうしたイメージ処理にパーソナル・コンピュータ
を使用することは、非常に特殊なアプリケーション以外
には実用的でないと一般に認められてきた。イメージ処
理にパーソナル・コンピュータを使用する試みが、IBM
プログラム番号6466996号として1985年5月7日に発表
された、IBMパーソナル・コンピュータ・イメージ処理
システム(PCIPS)によって行なわれた。そのプログラ
ムの作成者は、それがイメージで実行したいすべてのこ
とができるわけではないことにすぐに気づいた。この制
限的使用が必要だったのは、このプログラムを使用する
には、処理中の全イメージをコンピュータの主記憶装置
にロードする必要があるからであった。したがって、あ
る領域で他の領域をマスクする以外には、2つのイメー
ジ間で相互に操作することは不可能であった。また、イ
メージ全体に操作を加えずにイメージの一部だけを処理
して、イメージの変更を保持することも不可能だった。
イメージは、処理のためしばしばサブイメージに細分
された。普通、これらのサブイメージは単一の単位幅の
水平または垂直ストリップだったが、より大きな第2の
寸法をもつサブイメージを開発する試みがいくつか行な
われてきた。こうした試みのいくつかは、コンピュータ
に関するIEEE紀要、Vol.C−13、No.10、1982年10月、97
7−1000ページに所載のアントンソン(Antonsson)等の
論文「PICAP−イメージ処理のシステム手法(PICAP−A
System Approach to Image Processing)」、IBM
テクニカル・ディスクロージャ・ブレティン、Vo.29、N
o.1、1986年6月、449−452ページに所載のハシハラ等
の論文「仮想イメージ管理に基づくイメージ回転方法
(Image Rotation Method under Virtual Image
Managemant)」、ACMコンピューティング・プラクティ
ス・コミュニケーションズ、Vol.27、No.5、1984年5
月、444−454ページに所載のワダの論文「画像処理用仮
想メモリ・システム(A Virtual Memory System f
or Picture Processing)」、およびインターナショ
ナル・ビジネス・マシーンズ社にすべて譲渡された米国
特許第3938102号、3995235号、2996559号および4090174
号に記載されている。
C.発明が解決しようとする問題点 これらの論文と特許には、それぞれイメージが長方形
アレイで処理できるイメージ処理構成が記載されている
が、必要でないイメージ部分について処理操作を実行し
ないで、かなりのイメージ処理時間を節減するという本
発明の利点は、どれも提供していない。どの従来技術に
も、イメージの一部分だけを処理するシステムは記載さ
れていない。従来技術ではたとえばイメージ回転などの
イメージ処理操作を開始するとき、イメージ全体を回転
する。これに対して、本発明によれば、回転された状態
で実際に見られるイメージ部分を含むそのイメージのサ
ブイメージだけを回転する。回転された状態で見る必要
にないイメージ部分だけしか含まないどのサブイメージ
も、記憶域でアドレス指定されない。
本発明の主目的は、高速イメージ処理システムを提供
することにある。
本発明の他の目的は、必要なデータ記憶容量が最小の
システムを提供することにある。
本発明のさらに他の目的は、最小のレベルおよびコス
トでデータ転送操作が維持されるイメージ処理システム
を提供することにある。
本発明のさらに他の目的は、イメージ変形を高速で実
行できる2次元イメージ処理システムを提供することに
ある。
D.問題点を解決するための手段 本発明の目的は、表示装置、イメージの一部分を記憶
する1次記憶域およびイメージ全体を記憶する2次記憶
域またはバック・アップ記憶域をもつマイクロプロセッ
サ制御システムで達成される。動作においては、所期の
イメージはサブイメージ部分として切れ切れに1次記憶
域にロードすることによって記憶される。各サブイメー
ジ部分はイメージの所定の長方形部分を表わす。各サブ
イメージ部分の状況は状況テーブルに維持されている。
サブイメージ部分は2次記憶域に転送されて、連続して
受信された部分が1次記憶域に記憶できるように、イメ
ージの表示が必要な場合、メモリ管理アルゴリズムにし
たがってサブイメージ部分にアクセスする。このアルゴ
リズムは、アクセスするイメージの識別、見ようとする
イメージのサブイメージ部分の識別、それにイメージお
よびそのイメージ内の各サブイメージの状況を提供する
が、以前にイメージ処理操作を受けている場合、イメー
ジの全体状況は、サブイメージ部分の状況とは異なるこ
とがあることに留意されたい。このアルゴリズムを識別
情報および状況情報と共に使って、イメージの必要な部
分にアクセスする。実際のサブイメージ部分がアクセス
され、そのアクセス可能度に応じて表示装置に供給され
る。たとえば、1次記憶域にあるサブイメージが、2次
記憶域から取り出さなければならないサブイメージ部分
より前に表示装置に供給される。以下の説明から明らか
になるように、他の多くの要素がサブイメージ部分のア
クセスの順序に影響を及ぼす。
E.実施例 E−1.イメージ処理システムの概要 本発明はイメージ処理システムの一部である。第1図
に示すように、このシステムは主メモリ1、ディスク
3、ディスプレイ5、プリンタ7およびスキャナ9を備
えたプロセッサから構成される。イメージはスキャナ9
で捕捉され、ディスク3にファイルされ、ディスプレイ
5およびプリンタ7で提示され、主メモリ1で処理され
る。
主メモリ1は通常、表示メモリ11、プリンタ・バッフ
ァ13、スキャナバッファ、ディスク3用の入出力バッフ
ァ17、19およびイメージ・ブロックに区分される。主メ
モリ1のイメージ・ブロックに割り当てられた部分は1
次記憶域19と呼ばれる。
ディスク3はイメージ・ファイルの長期記憶に使用さ
れる。またイメージ処理用の一時作業記憶域としても使
用される。イメージ処理の間、1次記憶域19のイメージ
・ブロックは主メモリ1とディスク3の間を移動する。
ディスク3のイメージ・ブロックに使用される部分は2
次記憶域21と呼ばれる。
イメージはスキャナ9またはディスク3から主メモリ
1に読み込める。イメージは主メモリ1からプリンタ7
またはディスク3に書き込める。イメージは、バッファ
19から表示メモリ11へなど主メモリ1内部でも移動でき
る。あるイメージのサイズは利用可能な主メモリ1の量
に比較して通常非常に大きいので、イメージ処理機能を
実行するのに効率のよいメモリ管理体系が必要である。
走査、印刷およびディスク3へのファイルなどの機能
にはイメージの順次アクセスしか必要ではない。たとえ
ば、イメージは左から右、上から下に走査される。すな
わち、イメージは連続する水平走査線に分割される。各
走査線は左から右に記録される。走査線が完了すると、
その下の次の走査線が始まる。順次アクセスのきわだっ
た特徴は、イメージの各情報ビットが一度、一定の順序
で正確に処理されることである。
一方、表示や編集などの機能が効率よく実行されるに
はランダム・アクセスが必要である。たとえば、ディス
プレイ5は所定の倍率でイメージの一部しか表わすこと
ができない。イメージ全体を見るには、イメージを画面
移動しなければならない。このためには、可視部分の左
右移動および上下移動が必要である。また、編集操作の
結果、イメージの内部の一部分が修正できる。
イメージが順次アクセスしかできない場合、以前にア
クセスされた走査線へのアクセスが必要になると、イメ
ージを巻き戻さなければならない。すなわち、そのイメ
ージにその開始点から再びアクセスし、表示または編集
操作に必要な走査線まで処理しなければならない。必要
な走査線がイメージの上端付近にあった場合、あまりオ
ーバーヘッドは要らない。しかし、必要な走査線が文書
の下端にあった場合、その文書のほとんどすべてを処理
しなければならない。平均すると、各表示または編集操
作で文書の半分を処理しなければならない。
表示および編集操作に必要な処理量を減らすために
は、ランダム・アクセス方法を使用しなければならな
い。ランダム・アクセスのきわだった特徴は、イメージ
の一部分に独立してアクセスできることである。本発明
は、限られた主メモリ1をもつシステムで表示および編
集機能が効率的に実行できるランダム・アクセス方法を
提供する。
本発明が特に有用な表示機能は、イメージの拡大縮
小、変形、カラー反転および方向変更である。
拡大と縮小が必要な理由は主として2つある。第1
に、スキャナ9、プリンタ7およびディスプレイ5の解
像度が異なることがある。したがって、実際のサイズで
イメージを表示したり印刷するには、イメージを拡大ま
たは縮小しなければならない。第2に、編集やページ構
成など様々なアプリケーションでイメージの実際のサイ
ズを拡大または縮小するのに使用できる。たとえば、細
部の編集はイメージの拡大図で行なう方が容易である。
また、ページ上の所定のスペースにはめ込むために縮小
しなければならないこともある。
スキャナ9、プリンタ7およびディスプレイ5の縦横
比が異なることがあるので、変形が必要である。正確な
比率でイメージを表示するために縦横比を訂正しなけれ
ばならない。たとえば縦横比を訂正しない場合、円が楕
円に見えることになる。
カラー反転は異なる光度解釈を訂正するのに必要であ
る。たとえば、スキャナ9は1を黒、0を白と解釈する
が、ディスプレイ5は反対の解釈をする。さらに、イメ
ージの色を反転すると若干の編集操作が実行しやすくな
る。ディスプレイ5のハードウェア特性と人間の心理が
あいまってそうなる。
方向変更はディスプレイ5とは異なる方向をもつイメ
ージを見るのに必要である。たとえば、横長のイメージ
は、紙がスキャナ9に適合するように方向を回転させて
走査しなければならない。それを正常な方向で見るに
は、その方向を回転しなければならない。また、イメー
ジが不注意のために上下逆に走査されることがある。そ
の表示の方向を変えれば、それらのイメージを正常な方
向で見ることができる。
本発明が特に有用である編集操作には、拡大縮小、方
向変化、カラー反転、パターン塗りつぶし、複写、移
動、組合せ、図形注釈とテキスト注釈がある。
拡大縮小は、イメージの形とサイズを変えることがで
きる。方向変化はイメージを90度の倍数だけ回転させ、
垂直軸または水平軸に対してひっくり返すことができ
る。カラー反転は、黒と白を交換できる。パターン塗り
つぶしは、領域一面に反復パターンをつけることができ
る。
複写、移動および組合せは、1つのイメージの一部を
取り出し、元のイメージまたは2番目のイメージと組み
合わせることができる。複写では、イメージの一部が複
写され、移動ではそのイメージのソースが消去される。
組合せでは、2つのイメージが特定の混合規則によって
組み合わされる。サポートされる混合規制は、交換と、
結合、分離、排他の論理演算である。これらによって重
ね合わせなどの特殊効果が可能である。
図形注釈は、指定した幅と色を備えたペンによってイ
メージ上に線、曲線、多角形および閉鎖形状を描くこと
ができる。テキスト注釈は、イメージ上にテキストを配
置することができる。
上記の表示および編集操作を効率的に実行するために
発明されたランダム・アクセス方式は、仮想イメージの
概念に基づいている。この概念は、IBMシステム/370デ
ータ処理システムなどのメインフレーム・コンピュータ
・システムに使用されている仮想メモリの概念の拡張で
ある。
仮想イメージとは、あるイメージを表わすのに使用さ
れるデータ構造のことである。これは方形のサブイメー
ジの2次元アレイから構成される。サブイメージの集合
をうまく組み合わせると、完全なイメージが形成され
る。イメージは通常利用可能な主メモリ1の容量より大
きいので、仮想イメージは1次記憶域19および2次記憶
域21の両方に記憶される。サブイメージは1次記憶域19
または2次記憶域21にあるイメージ・ブロックを占有す
る。
イメージ・ブロックは、記憶域の基本単位であり、仮
想メモリ・システムで使用されるメモリ・ページの概念
に類似している。イメージ・ブロックは要求に基づき1
次記憶域19と2次記憶域21の間で交換される。交換プロ
セスは、可能な最も効率のよい方法でサポートされる表
示および編集操作を実行するように設計された、1組の
ヒューリスティクによって管理される。ヒューリスティ
クとは、LRUアルゴリズムの拡張である。
このシステムで使用する主要技法は、各大型イメージ
をサブイメージの2次元アレイに分割することである。
ある操作を大型イメージに適用するには、1組の部分操
作を対応するサブイメージのアレイに適用する。サブイ
メージのサイズは、全体としてはそうでなくても、それ
らが個々に1次記憶域19にはまるように選択される。シ
ステムは、実行中の操作の必要に応じてサブイメージを
1次記憶域19に出し入れする。
本発明の利点が最も有用であるシステムは、最小限、
1次記憶域と2次記憶域、ディスプレイ装置および中央
プロセッサを含むシステムである。システムは、メモリ
へのアクセスを制御する仮想イメージ・マネージャを備
えている。インターナショナル・ビジネス・マシーンズ
社から出版された刊行物「システム/370の仮想記憶域入
門(Introduction to Virtual Storage in System
/370)」SR20−4260−1には、このような仮想記憶域シ
ステムをどう構成するかが記載されている。そこに記載
されている概念を使って、仮想イメージ・マネージャの
制御下でイメージ情報を取り扱うようにメモリを構成す
ることができる。システムは1次記憶域マネージャおよ
び2次記憶域マネージャも備えている。
仮想イメージ・マネージャは、イメージ処理アプリケ
ーション・プログラムに大型ディジタル・イメージを定
義し処理させることができる。仮想イメージ・マネージ
ャは、大型ディジタル・イメージを1組の構成小型イメ
ージまたはサブイメージとして表わすことができる。小
型イメージまたはサブイメージは、全体として大型イメ
ージの全定義域に等しい、相互に分離した定義域をも
つ。この構成は、イメージ処理操作を大型イメージの各
サブイメージに任意の順序で独立して適用することがで
きる。他のサブイメージとは無関係に各サブイメージを
処理できるため、イメージ処理が迅速で効率が高くな
る。
1次記憶域マネージャは仮想イメージ・マネージャお
よび2次記憶域マネージャと通信する。1次記憶域マネ
ージャは1組のサブイメージを記憶するメモリの領域を
維持する。記憶領域は、サポートされる任意の操作を実
行するために同時にアクセスしなければならない、最小
数のサブイメージを記憶できるほどの大きさでなければ
ならない。たとえば、ある大型イメージを他のものに複
写するには、2つのサブイメージに同時にアクセスする
必要がある。
1次記憶域マネージャは、また、サブイメージを1次
記憶域19から2次記憶域21に保管し、2次記憶域21から
1次記憶域19にサブイメージを取り出す。1次記憶域マ
ネージャは、最近いつサブイメージがアクセスされた
か、およびサブイメージが最後に2次記憶域21に保管さ
れてから修正されたかどうかを示す、各サブイメージの
状態情報も保持する。
動作に当っては、仮想イメージ・マネージャが大型イ
メージに対する操作の実行要求を受け取ると、仮想イメ
ージ・マネージャはアクセスしなければならない大型イ
メージのサブイメージのリストを作成する。そのリスト
が1次記憶域マネージャに供給され、1次記憶域マネー
ジャは、LRUアルゴリズムの修正形(詳しくは後で説明
する)にしたがって各サブイメージのアクセス順序を決
定する。各サブイメージがアクセスされるとき、そのサ
ブイメージに対する必要な修正が行なわれ、そのサブイ
メージ識別がサブイメージのリストから取り除かれる。
2次記憶域マネージャは、1次記憶域19からのサブイ
メージを保管し、必要に応じてそれを1次記憶域19に戻
す機能をもつ。2次記憶域マネージャは十分に圧縮され
た形でサブイメージを保持するメモリの領域を維持する
ことが好ましい。以後これをディスク・キャッシュと呼
ぶ。
E−2.処理時間の考察 本システムがサポートする操作は、その対応する部分
操作が適用される順序とは無関係であるという特性をも
っている。1つの操作がn個の部分操作に分解される場
合、それらの操作が適用できる可能な順序はn! =n
(n−1)(n−2)・・・3・2・1通りある。各順
序ごとに、一定の範囲の処理時間がある。
この時間の範囲はシステムの状態とメモリ管理アルゴ
リズムに依存している。部分操作の順序がサブイメージ
を処理してメモリ中に移動させる順序を規定する。しか
し、メモリに空いたスペースがない場合、まず別のサブ
イメージを外へ出さなければならない。これはメモリ管
理アルゴリズムによって決定される。
1次記憶域19内にm個のサブイメージの入るスペース
がある場合、サブイメージが処理される度に、一般にm
個のサブイメージのうちの1つを選択して外へ出す。操
作を完了するにはこれをn回行なわなければならないの
で、操作の順序は全部でnm通りある。したがって、操作
が実行される方法は全部でN=nm・n!通りである。
可能な各順序には、一定の処理時間が関連づけられて
いる。したがって、操作とシステムの現状態が与えられ
ている場合、実行時間が最小になる動作の順序が存在す
る。しかし、Nは一般に非常に大きい数なので、時間が
最小になる順序を見つけるのは実用的ではない。その代
わりに、1組のヒューリスティックを使用する。ヒュー
リスティックは、LRUアルゴリズムの拡張である。これ
は最小時間の解決は保証しないが、未修正LRUアルゴリ
ズムに対する重要な改良である。特に、不必要な交換操
作の発生すなわちスラッシングが大幅に削減される。
E−3.表示状態の変形 本システムが使用するもう一つの主要技法は、結果が
実際に必要になるまで若干の操作の適用を遅らせること
である。具体的にいうと、この方法は2レベルのイメー
ジの16個の表示装置の変形に使用される。これらの変形
は、それぞれ任意選択で黒−白のカラー反転を伴う矩形
の8つの対称要素によって誘導される幾何変形から構成
される。これらは数学上のグループである。すなわち、
適切な変形を適用することで任意の表示状態に他の表示
状態から到達できるという意味である。
各サブイメージは、独立した表示状態を持つことがで
きる。大型イメージの表示状態が変わると、そのサブイ
メージは、別の操作でそれが必要になるまで影響を受け
ない。サブイメージがメモリに移動すると、メモリ・マ
ネージャはその表示状態を大型イメージのそれと比較す
る。それらの表示状態が異なっている場合、そのときに
適切な変形が適用され、その表示状態が更新される。
表示状態の変形は、通常イメージを表示するときに使
用される。たとえば、文書が上下逆に走査されることが
ある。上述の手法によって、こうした文書を180度回転
した場合、ディスプレイを再生するには実際に見えるサ
ブイメージだけを変形すればよい。また、サブイメージ
の全体的な再構成は行なわれない。すなわち、各サブイ
メージが局所的に他のものとは独立して変形できる。
この方法は、大型イメージが水平ストリップに区分さ
れる他のシステムで普通使用されているものとは異な
り、大型イメージの表示状態の概念はない。たとえば、
矩形をk個の水平ストリップに分割し、90度回転させる
ものとする。その場合、回転した矩形の各水平ストリッ
プは、回転してない矩形のすべてのストリップに依存す
る。すなわち、各ストリップにk回アクセスしなければ
ならないので、データ移動の量はk2に比例する。一方、
矩形をk個のサブイメージに分割し、それぞれ独立に回
転させる場合、データ移動の量はkに比例する。
理解しやすいように、2レベルのイメージを対象とし
て説明を行なうが、以下の説明の多くは、灰色イメージ
やカラー・イメージにも同様に適用できる。
整数の場合を次式で示す。
Z={・・・・・,−2,−1,0,1,2,・・・・} なぜならばa,b∈Zが間隔[a,b]=[x∈Z|a≦x≦
b}を定義する。AとBが集合である場合、それらの直
積集合は次式で表わされる。
A×B={(a,b)|a∈A,b∈B} Z2=Z×Z={(x,y)|x,y∈Z}で整数平面を示すこ
とにする。方形は2つの間隔の積に等しいZ2の部分集合
である。Rectすべての方形の集合を示すことにする。
Rect={[a,b]×[c,b]|a,b,c,d,∈Z} Bil={0,1}と置く。イメージはその定義域が方形でそ
の共通定期域がBitである関数である。Imgですべてのイ
メージの集合を示すことにする。
Img={f∈Map(R,Bit)|R∈Rect} ただし、Map(A,B)はAからBまでのすべての関数の
集合を示し、関数f∈Map(A,B)は定義域Aおよび共通
定義域Bをもつ。
イメージ変形はイメージをイメージにマップする関数
である。変形をTransで表し、ImgTransですべてのイメ
ージ変形の集合を示すことにする。
ImgTrans=Map(Img,Img) ここでは主として、局所変形および表示状態の変形と
呼ばれる2つのタイプのイメージ変形を取り上げること
にする。局所変形はイメージ編集操作でしばしば出てく
る。たとえば、図形注釈および複写または所定のソース
・イメージとの組合せが局所変形である。一方、シード
充填や空間フィルタ動作などの操作は局所的ではない。
表示状態変形は、イメージの方向またはカラーを変更す
るときに出てくる。
局所変形は定義域を保存するイメージ変形であり、1
点で変形されたイメージの値が、その点での変形されて
ないイメージと変形の値だけに依存するという特性を持
っている。Lが局所変形である場合、すべてのp∈Z2
ついて、p∈domain(f)であるすべてのf∈Imgにつ
いて、(Lf)(p)=Lp(f(p)が成立するようなLp
∈Map(Bit,Bit)が存在する。
LocalTransMap(Z2,Map(Bit,Bit)) Map(Bit,Bit)の4つの要素を以下のように記すること
にする。
Map(Bit,Bit)={nop,not,zero,one) nop(0)=0,nop(1)=1 not(0)=0,not(1)=0, zero(0)=0,zero(1)=0, one(0)=0,one(1)=1 局所変形Lのサポートsptは、それがnopとは異なるす
べての点の集合である。
spt(L)={{p∈Z2|Lp}≠nop} 整数平面の線形変形は、拡大縮小と変形から構成さ
れ、以下のようにイメージ変形を定義する。Qで有理数
の集合を示すことにする。q∈Qの場合、qを越えない
最大の整数を[q]で示す。
[q]=max n. q≧n∈Z a,b,c,d,∈Q、a,c,>0の場合、T(x,y)=([ax
+b][cy+d])によってT∈Map(Z2,Z2)を定義す
る。
X、Z2の部分集合の場合、T-1(X)={p∈Z2|T
(p)∈X}と定義する。Tは拡大縮小と変換を組合わ
せる線形変形である。
LinearTransですべてのこうした線形変形の集合を示
すことにする。
T∈LinearTransの場合、f∈Imgはscale(T)
(f)(p)=f(T(p)),p∈T1(domain(f))
によってscale(T)(f)∈Imgを定義する。
方形によるクリップ操作(clip)は、次のようにイメ
ージ変形を定義する。r∈Rectの場合、f∈Imgは次式
によってclip(r)(f)∈Imgを定義する。
clip(r)(f)(P)=f(p),p∈r∩domain
(f) 混合機能(mix)を用いて1つのイメージを他のイメ
ージと組み合わせることができる。これは次のように局
所イメージ変形を定義する:m∈Map(Bit×Bit,Bit),f,
g∈Imgの場合、次式によってmix(m,f)(g)∈Imgを
定義する。
mix(m,f)(g)(p)=m(f(p),g(p)(p∈
domain(g)∪ domain(f)の場合)またはg(p),(p∈domain
(g)−domian(f)の場合) 一般的な複写機能は拡大縮小、クリップ動作および混
合の組合せから構成される。
T∈LinearTrans,r∈Rect,m∈MixFunctionおよびf∈Im
gの場合、複写変形は次のように定義される。
copy(m,r,T,f)=mix(m,clip(r)(scale(T)
(f)) copy(m,r,T,f)は局所変形を定義する。form c
(f,g)=copy(m,r,T,f)(g)の形をとる、すべての
操作c∈Map(Img×Img,Img)の集合をCopyFunctで示す
ことになる。
16個の表示状態変形がある。それらは直角回転、垂直
反射と水平反射およびカラー反射の任意の組合せからな
る。基本的な表示状態の変形は、反転、回転およびフリ
ップであり、次のように定義される。gで定義域[a,
b]×[c,d]をもつイメージを示すことにする。Map(Z
2,Z2)に属する幾何変形の回転(rotate)およびフリッ
プ(flip)は以下のように定義される。
rotate(x,y)=(−y,x) flip(x,y)=(x,−y) その場合、表示状態の変形は次の通りである。(反転
はinvertで表す。) Invert(g)(p)=not (g(p)),p∈[a,b]×[c,d] Rotate(g)(p)=g (rotate-1(p)),p∈[−d,−c]×[a,b] Flip(g)(p)=g(flip-1(p)),p∈[a,b]×
[−d,−c] 表示状態の変形の反転も局所変形でもある。
Invertp=not,すべてのp∈Z2についてすべてのf∈I
mgについて、識別変形I(f)=fをIで示す。基本表
示状態の変形は次の関係式を満足させる。
Invert2=Rotate4=Flip2=I, Rotate・Invert=Invert・Rotate, Flip・Invert=Invert・Flip, Flip・Rotate=Rotate3・Flip. 上記の関係式を用いて、基本表示状態変形(ViewTran
s)の任意の組合せを以下に示す16の式の1つに還元す
ることができる。
ViewTrans={Invert2・Rotateb・Flipc|0≦a<2,0≦
b<4,0≦c<2} 表示状態変形vも次の形で表わされる。
v(f)=m・f・g-1,m=nota,g=rotateb・flipc
すべてのf∈Imgについて。
V=(m,g)と書くことによってこれを示すことにす
る。
仮想イメージを抽象データ形式として説明することに
する。データ・モデルおよびそれに関して定義された一
組の操作について説明する。その設計は、データ・モデ
ルの表示とその表示による操作の実施から成る。
仮想イメージとは、制限された形のイメージである。
データ・モデルは概念上は同じだが、仮想イメージに対
してはイメージ操作の部分集合しか実行できない。操作
の集合を制限すれば、操作が効率的に実施できるデータ
表現を設計することが可能になる。
仮想イメージ・データ型式はイメージ・データ型式で
モデル化される。
*:VirtualImg→Img f→f 仮想イメージが割り当てられると、その初期値は空イ
メージに、すなわちこの定義域が空集合であるイメージ
に設定される。
仮想イメージ操作に対する主な制限は、表示状態と局
所変形しか仮想イメージを更新するのに使用できないこ
とである。局所性の制限が課されているため、変形や関
数を計算するとき、仮想イメージのデータ要素が独立し
て任意の順序で処理できる。
任意の仮想イメージ(virtualImg)は所定の定義域を
もちゼロを充填されたイメージに等しく設定できる。r
∈Rectの場合、すべてのp∈rについてzeror∈Imgをze
ror(p)=0で定義する。
v∈VirtualImgの場合、 Clear(r,v):v→v′ v′=zeror と定義する。
任意の表示状態変形が仮想イメージに適用できる。t
∈ViewTrans,V∈VietualImgの場合、 ViewTransform(t,v):v→v′ v′=t(v) と定義する。
任意の局所変形(LocalTrans)が仮想イメージに適用
できる。
t∈LocalTrans,v∈VirtualImgの場合、 LocalTransform(t,v):v→v′ v′=t(v)と定義する。
仮想イメージの一部を他の仮想イメージに複写でき
る。c∈CopyFunction,v∈VirtualImgおよびw∈Imgの
場合の複写(ExternalCopy)を ExternalCopy(c,v,w):w→w′ w′=c(v,w) と定義する。
仮想イメージの一部を他の仮想イメージに複写でき
る。c∈CopyFunct,v,w∈VirtualImgの場合、 InternalCopy(c,v,w):w→w′ w′c(v,w) と定義する。
E−4.仮想イメージ操作 上記の仮想イメージ操作を実施するには、各イメージ
をサブイメージのアレイとして表わす。さらに、利用可
能なメモリを最も効率的に使用するには、仮想イメージ
の集合を個別ではなく一体として考慮する必要がある。
サブイメージに対する操作が実行できる1次記憶域19の
容量が限られており、サブイメージを記憶し取り出すこ
とのできる2次記憶域21の容量が限定されていないもの
と仮定する。1つの仮想イメージに対する操作の最中
に、1次記憶域19および2次記憶域21の内容が変化し、
したがってすべての仮想イメージを表わす変数の状態に
影響を及ぼす。
AとBを集合とし、Table(A,B)を、定義域X、部分
集合Aおよび共通定義域Bをもつすべての関数の集合と
する。
Table(A,B)={Map(X,B)|XはAの部分集合} 仮想イメージは仮想イメージ・テーブルαTable(Z,V
irtualImg)の項目として表わされる。テーブルαを、 VirtualImgデータ型式に対する操作によってのみアク
セスされる状態変数として取り扱うことにする。
仮想イメージf=(d,v,e,t,s)∈VirtualImgは次に
示す構成要素から成る。
1.定義域方形d ∈ Rect 2.表示状態v ∈ viewTrans 3.基本方形e ∈ Rect 4.1次記憶域テーブルt ∈ Table(Z,PrimaryBlock) 5.2次記憶域テーブルs ∈ Table(Z,SecondaryBloc
k) 定義域方形は仮想イメージの定義域を定義する。表示
状態は仮想イメージに適用されたすべての表示状態変形
の累積効果を表わす。これらの変形は、アクセスされる
までそのサブイメージに適用されない。基本方形は仮想
イメージがどのようにサブイメージに区分されるかを定
義する。1次記憶テーブルおよび2次記憶域テーブルは
それぞれ1次記憶域19および2次記憶域21内にあるサブ
イメージを含んでいる。このデータ構造を第2A図、第2B
図に示す。
第2A図に示すように、イメージは、幅200画素、高さ1
50画素の画素サイズで表わされている。この例では、イ
メージは6つのサブイメージに細分され、各サブイメー
ジを(ij)=(00)ないし(12)と定義する。
第2B図に示す図では、サブイメージ(02)と(12)が
1次記憶域19に記憶され、サブイメージ(00)、(1
0)、(01)および(11)が2次記憶域21に記憶されて
いる。処理システムの通常の動作では、サブイメージ
(02)と(12)のコピーも2次記憶域21にあるが、処理
中にイメージに対して何らかの変更が行なわれた場合、
2次記憶域21に記憶されたサブイメージが1次記憶域19
に記憶された対応するサブイメージと異なることがあ
る。
各イメージおよびサブイメージにテーブルが関連づけ
られている。第2B図に示すように、図のイメージおよび
サブイメージのテーブルは、Iの表示状態を示し、すべ
てのイメージ情報が現在同じ表示状態に記憶されている
ことを意味している。サブイメージ(02)のテーブルは
アクセス値がa=2であり変更がu=1であることを示
している。これは、サブイメージ(02)がサブイメージ
(12)より最近にアクセスされず、したがって、他のす
べての標識が同じである場合サブイメージ(12)より前
に2次記憶域21に復元されることを意味する。両方のサ
ブイメージの変更値がu=1なのでコピーがすでに2次
記憶域21にある場合、サブイメージが変更されたので、
サブイメージを2次記憶域21に復元する必要がある。
e=[x1,x2]×[y1,y2]と置く。その幅はw=x2−x1
+1であり、その高さはh=y2−y1+1である。eを変
位ベクトル(w,h)の倍数で変換すれば、整数平面をタ
イル張りすることができる。(i,j)∈ Zの場合、 eij=[x1+iw,x2+iw]×[y1+jh,y2+jh] と定義する。これらの方形は互いに分離し、整数平面全
体を覆う。p ∈ Zの場合、 block(e,p)=(i,j)、p∈eij と定義する。
1次記憶域ブロックb=(f,v,a,u)∈PrimaryBlock
は次に示す構成要素から成る。
1.イメージf ∈ Img 2.表示状態v ∈ ViewTrans 3.アクセス・カウントa ∈ Z 4.更新フラグu ∈ Bit イメージは、仮想イメージのサブイメージである。表
示状態は、イメージに適用されたすべての表示状態変形
の累積効果である。
各1次記憶域ブロックのアクセス・カウントを使っ
て、どのぐらい最近にその記憶域ブロックがアクセスさ
れたかを決定する。アクセス・カウントはゼロまたは正
である。それがゼロの場合、ブロックはアクセスされる
と言われ、2次記憶域21に交換のため送り出されない。
それが正の場合、ブロックは解放されていると言われ、
交換のために送り出されることがある。アクセス・カウ
ントが大きくなるほど、ブロックは最近にアクセスされ
ていない。ブロックがアクセスされると、そのアクセス
・カウントはゼロにリセットされ、解放されたすべての
ブロックのアクセス・カウントが1け増分される。
更新フラグは、ブロックが修正されたかどうかを示
す。これは交換を制御するのにも使用される。
実際には、1次記憶域ブロックは主メモリ中に配置さ
れている。
2次記憶域ブロックb=(f,v)∈SecondaryBlockは
次に示す構成要素から成る。
1.イメージf ∈ Img 2.表示状態v ∈ ViewTrans イメージは仮想イメージのサブイメージである。表示
状態はそのイメージに適用されたすべての表示状態変形
の累積効果である。
2次記憶域ブロックを直接ディスク上に割り当てるこ
とも可能であるが、より複雑な設計が好ましい。処理イ
メージ情報は大量のデータを含んでいるので、2部分か
らなる2次記憶域21体系が好ましい。1次記憶域ブロッ
クを2次記憶域21に記憶するには、まず圧縮してディス
ク・キャシュに移す。ディスク・キャシュが一杯になる
と、最近最も使用されてないブロックがディスクに書き
込まれる。2次記憶域ブロックを取り出すには、必要な
らまずディスク・キャシュに移してから、1次記憶域19
に分解する。これは、圧縮比の高い走査テキストなどの
イメージではうまくいく。走査された写真イメージで使
用しても、圧縮比がずっと低いのであまり利益はない。
この場合、圧縮を利用すれば、システムの性能が低下す
る。
k∈定義域(α)を仮想イメージの索引とし、α
(k)=f=(d,v,e,t,s)と置く。表示状態をv=
(m,g)とする。fの定義域はdであり、基本方形g(e
ij)で定義されるサブイメージに区分される。これらの
サブイメージは1次テーブルおよび2次テーブルに含ま
れているが、それぞれ独立した表示状態を有する。これ
らのイメージの定義域は基本方形によって定義されるも
のと一致しなければならない。1次記憶域テーブルで
は、t(i,j)=(fij,vij,aij,uij)であるすべての
(i,j)をdomain(t)について、 domain(vij -1)(fij))=g-1(d)∩eij 同様に、2次記憶域テーブルでは、s((i,j)=(f
ij,vij))=g-1(d)∩eijであるすべての(i,j)とd
omain(s)について、 domain(vij -1(fij))=g-1(d)∩eij これらの拘束条件は、すべての表示状態変形が行なわ
れなかったとき、サブイメージの定義域が基本方形と整
列するという意味である。
1次記憶域19および2次記憶域21に記憶されたサブイ
メージはサイズが制限されていると仮定する。最大領域
(MaxArea)はMaxArea∈Zでサブイメージの最大領域を
示すことにする。基本方形の面積がこの値を超えてはな
らない。実際の実施例では、131072=8×16384の値が
使用できる。これはサブイメージが16キロバイトの記憶
域を占めることを意味する。
利用可能な1次記憶域19の容量は限られている。最大
のブロック(MaxBlocks)は、MaxBlocks∈Zで利用可能
な1次記憶域ブロックを示すことにする。実際には、こ
の値は走行時間に決定され、プログラムに割り当てられ
るメモリの容量に依存している。内部複写操作を実行す
るには、この値は少なくとも2でなければならない。1
次記憶域ブロックはすべての仮想イメージの間で共用さ
れる。すべての仮想イメージに割り当てられるすべての
1次記憶域ブロックの総数が、MaxBlocksを超えてはな
らない。
イメージ操作は、1次記憶域19のサブイメージにしか
適用できない。1次記憶域19は限られているので、必要
に応じて1次記憶域19と2次記憶域21の間でサブイメー
ジを交換する。したがって、システムの性能は利用可能
な1次記憶域19の容量による。交換を最小にするため、
1組のヒューリスティクを使用する。これらはLRUアル
ゴリズムから誘導される。
v(m,g)である仮想イメージf=(d,v,e,t,s)
が、以下に示すような誘導されたイメージfを定義す
る。
1.domain(f)d 2.block(e,g-1(p))=(i,j)であるすべてのp∈
dについて、 (a)(i,j)∈ domain(t)でt(i,j)=(f1,v1,
a1,u1)である場合、 f(p)=v(v1 -1(f1))(p)である。
(b)(i,j)∈ domain (s)でs(i,j)=(f2,v
2)である場合、 f(p)=v(v1 -1(f2))(p)である。
(c)それ以外の場合、f(p)=m(0) この定義は、ある点でのイメージの値を計算するため
に、まずそれがどのサブイメージ内にあるかを決定せよ
と述べている。そのサブイメージが1次記憶域19にある
場合、それが定義する値を使用する。そのサブイメージ
が2次記憶域21にある場合、その値を使用する。サブイ
メージが1次記憶域19にも2次記憶域21にもない場合、
値0を使用する。また、サブイメージを仮想イメージと
一致させるために、値を表示状態変形で調整しなければ
ならない。実際にその値にアクセスするには、1次記憶
域19と2次記憶域21の間でサブイメージを交換しなけれ
ばならないことがある。
ここで仮想イメージの変数の異なる多くの状態が同じ
イメージにマップ(写像)されることに留意されたい。
まず、各サブイメージは、派生イメージを変更せずに、
1次記憶域19と2次記憶域21の間で交換されることがあ
る。次に、各サブイメージは、派生イメージに影響を与
えずに、任意の表示状態を与えられることがある。
上記のマッピングを用いて、新しく宣言された仮想イ
メージを空イメージに設定し、(0,I,0,0,0)に初期設
定することができる。
仮想イメージ操作のプログラム式インターフェース
は、仮想イメージを識別するために仮想イメージ・テー
ブルαの指標を使用する。αは仮想イメージ・データ型
式の状態データの一部である。これは、仮想イメージの
操作によってしかアクセスできない大域変数として扱わ
れる。これは明らかに引数として操作に送られないが、
すべての操作の影響を受ける。操作の後のαの値をα′
で示すことにする。これらの操作のデータ・フローを、
第3図に示す。
第3図に示すように、処理中のイメージの一部分が1
次記憶域19で利用可能でなければならない。取出しおよ
び前記操作により、サブイメージを処理のために1次記
憶域19と2次記憶域21の間で転送できる。
r ∈ Rect、k ∈ domain(α)の場合、Clear
(r,k):α→α′ α′(k)=zeror α(k)=(d,v,e,t,s)と置く。操作Clear(r,k)
は次のように実行される。
1.t中にすべての1次記憶域ブロックを削除する。
2.s中のすべての2次記憶域ブロックを削除する。
3.仮想イメージ・テーブル項目を(r,I,Element(r),
0,0)に設定する。
α′(k)=(r,I,Element(r),0,0)。
明らかに、派生イメージの定義域はrである。また、
表示状態はIであり1次記憶域19または2次記憶域21に
サブイメージはないので、派生イメージの値は0からそ
の定義域までである。
1次記憶域テーブルおよび2次記憶域テーブルを空に
設定する操作で、それらに含まれるブロックが占める記
憶域が解放される。
上記の説明では、要素関数を導入した。この関数は所
定の定義域について適切な基本方形を計算するものであ
る。この関数が与えられているものと仮定する。この関
数の選択が異なると、システム性能の特徴が異なるもの
になる。その選択は、イメージ操作の予想される統計分
布に基づいて行なうべきである。実際には、幅が高さよ
り大きい表示画面で回転されないイメージを表示するの
に適した関数を使用する。基本方形は、その幅がその高
さの2ないし3倍になるように選択する。実際の幅は、
定義域を覆うときに無駄になる空間を最小にするように
選択する。
w ∈ ViewTrans,k ∈ domain(α)の場合、Vie
wTransform(w,f)は次の通りである。
ViewTransform(w,k):α→α′ α′(k)w(α(k)) w(m,g)かつα(k)=(d,v,e,t,s)と置く。操
作ViewTransform(w,k)は次のように実行される。
1.仮想イメージ・テーブル項目を次のように設定する。
α′(k)=(g(d),w,v,e,t,s) 変形された仮想イメージの定義域と表示状態だけが修
正される。1次記憶域19または2次記憶域21に直接の影
響はない。実際の表示状態の変形は、アクセスされると
き1次記憶域19のサブイメージだけに適用される。この
場合、適切な表示状態変形がサブイメージに適用され、
その表示状態を仮想イメージのそれと一致させる。
L ∈ LocalTransとk ∈ domain(α)の場合、 LocalTransform(L,K):α→α′ α′(k)=L(α(k)) α(K)=f=(d,v,e,t,s)かつv=(m,g)と置
く。操作LocalTransform(L,K)は次のように実行され
る。
1.Lによって影響を受けるfのすべてのサブイメージの
集合Sを計算する。
S={(i,j)|domain(f)∩ support(L)∩g(eij)≠0} 2.集合Sが空でない場合、 (a)最小のコストで取り出すことができるサブイメー
ジ(i,j)∈.Sを見つける。
(b)それを1次記憶域19に入れる。次のように置く。
t(i,j)=(fij,vij,aij,uij) 取出し操作の結果、サブイメージの表示機能が仮想イ
メージの表示状態と一致する。
vij=v (c)書込みのためにそれにアクセスする。
I.その更新フラグを1に設定する。
uij→1 II.そのアクセス・カウントを0に設定する。
aij→0 III.解放されたすべての1次記憶域ブロックのアクセス
・カウントを増分する。
すべてのk′∈ domain(α)、α(k′)=
(d′,v′,e′,t′,s′)について、すべての(i′,
j′)∈ domain(t′),t′(i′,j′)=(f″,
V″,a″,u″)について、 a″>ならば、a″→a″+1である。
(d)Lをそれに適用する。
fij→L(fij) Kは局所的なので、それを仮想イメージの各サブイメ
ージに独立に適用できる。
(e)それを解放する。
I.そのアクセス・カウントを1に設定する。
aij→1 (f)集合Sからそれを削除する。
S→S−{(i,j)} S中で取出しコストが最小のサブイメージを見つける
には、下記の判定基準を使用する。
1.更新フラグが設定された1次記憶域19中のサブイメー
ジはアクセスな最もコストがかからない。この規則によ
り、他のイメージにアクセスする2次的効果として1次
記憶域ブロックを2次記憶域21と交換しなければならな
い場合に処理が節約される。更新されたブロックが最初
にアクセスされると、更新されたことのないブロック
は、2次記憶域21でそれらのコピーを再生する必要がな
いので、より安価に交換できる。
2.更新フラグがクリアされた1次記憶域19中のサブイメ
ージがその次にコストがかからないのでそれらを選択す
る。
3.1次記憶域19にはなく、2次記憶域21にあるサブイメ
ージはその次にコストがかからないのでそれらを選択す
る。
4.1次記憶域19と2次記憶域21のどちらにもないサブイ
メージは取り出すのに最もコストがかかると考えられ
る。
サブイメージを1次記憶域19に引き出すには、以下の
操作が行なわれる。
1.サブイメージが1次記憶域19にない場合: (a)割り振られた1次記憶域ブロックの数がMaxBlock
sに等しい場合: 1.最も記憶コストのかからない1次記憶域ブロックを見
つける。
II.2次記憶域21にそれを記憶する。
(b)サブイメージに1次記憶域ブロックを割り振る。
t(i,j)=(f1,v1,a1,u1)と置く。
(c)アクセス・カウントを1に設定する。
a1→1 (d)更新フラグを0に設定する。
u1→0 (e)サブイメージが2次記憶領域21にある場合: I.2次記憶域21から1次記憶域19にサブイメージと表示
状態を複写する。
s(i,j)=(f2,v2)と置く。
f1→f2 v1→v2 II.そうでない場合、仮想イメージと同じ表示状態の空
白サブイメージを作成する。r=g-1 (d)∩eijと置く。
f1→v(zeror) v1→v 2.サブイメージの表示状態が仮想イメージとは異なる場
合、v1≠v: (a)サブイメージを仮想イメージと一致するように変
形する。
f1→v(v1 -1(f1))=(v・v1 -1)(f1) (b)表示状態を更新する。
v1→v 1次記憶域ブロック、t(i,j)=(f1,v1,a1,u1)を
2次記憶域21に記憶するには、以下のことを行なう。
1.更新フラグが設定された、u1=1の場合、または2次
記憶域21のサブイメージs(i,j)=(f2,v2)が異なる
表示状態v1≠v2をもつ場合、 (a)それがまだ存在していない場合、2次記憶域ブロ
ックを割り振り、表示状態とサブイメージを2次記憶域
21に複写する。
f2→f1 v2→v1 2.1次記憶域19からブロックを削除する。
記憶するのに最もコストのかからない1次記憶域ブロ
ックを見つけるために、次に示す基準にしたがってブロ
ックを分類する。
1.第1の基準は、そのブロックが集合中Sのサブイメー
ジを含むかどうかである。S中にないサブイメージはS
中のサブイメージより低コストで交換できる。S中のサ
ブイメージを交換するほうが高価なのは、操作を終了す
るには再びそれを交換しなければならないからである。
2.第2の基準は、そのブロックが更新されたかどうかで
ある。更新されたブロックを交換するのが高価なのは、
2次記憶域21を更新しなければならないからである。そ
のブロックが更新されたことがない場合、2次記憶域21
を更新する必要はない。しかし、この規則に従うと、更
新済みのブロックが1次記憶域19に累積してくる。これ
を避けるため、MaxCount ∈ Zの値を選択する。アク
セス・カウントがこの値を超える場合、そのブロックが
更新されていないブロックに優先して記憶される。たと
えば、ユーザはある領域を編集してからその隣接部を見
ることができる。最初、編集されたブロックは1次記憶
域19に保持される。その後それらのアクセス・カウント
が最大のカウント(MaxCount)を超えると、2次記憶域
21に記憶され、より多くの1次記憶域ブロックが隣接サ
ブイメージを見るために利用可能になる。MaxBlocksが
小さい場合、MaxCountをゼロに設定してこの基準を無効
にする。
3.第3の基準はアクセス・カウントである。アクセス・
カウントの低いブロックを交換する方が高価なのは、そ
の後再びそれにアクセスする可能性が高いからである。
これはLRUアルゴリズムに基づく。これは実際最も重要
でない要因である。たとえば、ユーザがイメージの小さ
な領域を編集しているものとする。その編集操作の影響
を受けるサブイメージは、その影響を受けないサブイメ
ージに優先して1次記憶領域19に保持される。複数の編
集操作がサブイメージの小さな局所的な集合に影響する
可能性が高いので、このヒューリステックは性能を向上
させる。アクセス・カウントが0であるブロックは、使
用中なので交換するのに適しないことに留意されたい。
C ∈ CopyFunct,K ∈ domain(α),f ∈ Img
の場合、 ExternalCopy(c,k,f):α→α′f→f′ f′=c(α(k)f) 外部複写操作は局所変形操作と同様である。主な相違
点は、集合Rが宛先イメージを更新するためにアクセス
しなければならいすべてのサブイメージの集合として計
算されることである。また、サブイメージは読取りのた
めにアクセスされるので、それらの更新フラグは設定さ
れない。
α(k)=(d,v,e,t,s),v=(m,g)かつc(h,t)=c
opy(n,r,T,h,f)と置く。操作ExternalCopy(c,k,f)
は下記のように実行される。
1.操作によって更新されるfの領域Wを計算する。
W=domain(f)∩r∩T-1(d) 2.fの更新に必要なα(k)のすべてのサブイメージの
集合Rを計算する。
R={(i,j)|W∩T-1(g(eij)≠0)} 3.Rが空集合の場合: (a)取出しコストの最も少ないサブイメージ(i,j)
∈ Rを見つける。
(b)それを1次記憶域19に取り出す。
t(i,j)=(fij,vij,aij,uij)と置く。
取出し操作の結果、サブイメージの表示状態が仮想イ
メージの表示状態と一致する。
vij=v (c)読取りのためそれにアクセスする。
1.そのアクセス・カウントを0に設定する。
aij→0 II.解放されたすべての1次記憶域ブロックのアクセス
・カウントを増分する。
すべてのk′ ∈ domain(α)、α(k′)=
(d′,v′,e′,t′,s′)について、すべての(i′,
j′)∈ domain(t′),t′(i′,j′)=(f″,
v″,a″,u″)について、 a″>0ならばa″→a″+1である。
(d)サブイメージから複写する。
f→c(fijf) 各点での更新された宛先イメージの値はソース・イメ
ージの一つの点にしか依存しないので、複写操作は、ソ
ース仮想イメージのサブイメージに独立にアクセスし、
それらの値を宛先イメージに複写することによって計算
できる。
(e)それを解放する。
I.そのアクセス・カウントを1に設定する。
aij→1 (f)Rからそれを削除する。
R→R−{(i,j)} c ∈ CopyFunct、k,l ∈ domain(α)で、k=1
の場合、 InternalCopy(c,k,l):α→α′ α′(l)=c(α(k)、α(l) 内部複写操作は、局所変形と外部複写操作の組合せで
ある。というのは、所定のソース・イメージを宛先イメ
ージに複写する操作は宛先イメージの局所変形であるか
らである。
この操作を実行する最も効率的な方法は、宛先仮想イ
メージの影響を受ける各サブイメージに一度だけアクセ
スすることである。そうでなく、ソース仮想イメージの
サブイメージが一度だけアクセスされる場合、各サブイ
メージは一般にいくつかの宛先サブイメージを部分的に
更新することになる。そうすると、追加ソース・サブイ
メージにアクセスするために部分的に更新されたサブイ
メージを記憶しなければならない場合に、必要以上に2
次記憶域21が更新されることになる。
この操作の細部の大部分は上記と同じであり、ここで
は繰り返さない。唯一の相違点は、最も低い記憶コスト
でサブイメージを計算する基準がSとRの両方を含むこ
とである。S中のサブイメージはR中のサブイメージよ
り記憶するのにコストがかからない。というのは、R中
のすべてのサブイメージがアクセスされるまで、S中の
サブイメージはアクセスされないからである。
1.更新される宛先仮想イメージのすべてのサブイメージ
の集合Sを計算する。
2.Sが空集合の場合、 (a)取出しコストの最も少ないSのサブイメージを計
算する。
(b)選択された宛先サブイメージの更新に必要なソー
ス仮想イメージのすべてのサブイメージの集合Rを計算
する。
(c)選択された宛先サブイメージを取り出す。
(d)書込みのためにそれをアクセスする。
(e)Rが空集合である場合、 I.取出しコストの最も少ないRのサブイメージを計算す
る。
II.それを取り出す。
III.読取りのためにそれにアクセスする。
IV.アクセスされたソース・サブイメージをアクセスさ
れた宛先サブイメージに複写して、アクセスされた宛先
サブイメージを部分的に更新する。
V.ソース・サブイメージを解放する。
VI.Rからそれを削除する。
(f)アクセスされた宛先サブイメージを解放する。
(g)Sからそれを削除する。
本発明の原理をより容易に理解するために、次にいく
つかの例を説明する。
E−5.実施例1 第4A図に示すように、本のイメージが25の方形サブイ
メージ(00)ないし(44)に細分化されたイメージ・フ
ィールド上に概略的に示されている。この図は、イメー
ジ全体をディスプレイ画面に投影した場合、イメージが
どのように表示されるかを示すものである。
イメージの各部分はサブイメージ(00)、(01)、
(02)、・・・(43)、(44)によって識別される。
そのイメージを最初に走査すると、それは1次記憶域
19にロードされ、1次記憶域19が一杯になるとサブイメ
ージ・セグメントの2次記憶域21に転送される。
図の例では、1次記憶域19は2つのサブイメージを保
持できるものとして示されている。残りのサブイメージ
は2次記憶域21に記憶される。2次記憶域21はすべての
イメージ情報を保持できる大きさでなければならない。
これはイメージ情報を圧縮することにより少ないメモリ
・コストで実現できる。記憶域のイメージ・データを圧
縮する申し分ない方法が、市販のCCITTグループ3標準
ファクシミリ機に設けられている。適切なデータ圧縮技
術ならどれでも使用できる。こうした技術は当業者には
周知であり本発明の一部ではないので、本明細書ではこ
れ以上説明しないことにする。しかし、CCITTグループ
3標準機に記載されている圧縮方法を使用する場合、イ
メージ情報の圧縮は、表示情報があるサブイメージ領域
上でどれだけ変化するかに応じて、サブイメージごとに
広く変化する。たとえば、領域(12)、(33)、(44)
などでは、サブイメージが全サブイメージ領域全体で変
化しないので圧縮された記憶域の空間がほとんど必要で
ないが、サブイメージ(11)、(13)、(32)などで
は、各サブイメージ内部に変化があるために、圧縮状態
でずっと多くの記憶域空間が必要である。
この例では、サブイメージ(00)と(01)は1次記憶
域19にあり、残りは2次記憶域21に記憶されている。
たとえば、イメージの一部、すなわち、サブイメージ
(10)、(11)、(20)および(21)内の領域の一部を
見る場合、それらのサブイメージにアクセスする最も効
率的な、または最もコストのかからない方法に従うもの
とする。
まず、アクセス・リストが作成される。この例では、
アクセス・リストは{10,11,20,21}に等しい。
次いで、1次記憶域19を検査して、必要ないずれかの
サブイメージが利用できるかどうか判定する。サブイメ
ージ(10)が1次記憶域19に記憶されている。サブイメ
ージ(10)がディスプレイ画面に複写され、アクセス・
リストから削除される。
アクセス・リストの他のサブイメージはどれも1次記
憶域19中で利用できないので、2次記憶域21から検索し
なければならない。しかし、1次記憶域19が一杯のとき
は、1次記憶域19から2次記憶域21にサブイメージを転
送して空間を利用可能にしなければならない。この単純
な例では、サブイメージ(00)は、アクセスされたこと
がなくアクセス・リストにないので2次記憶域21に転送
されることになる。もちろん、サブイメージ(00)が以
前に記憶され、2次記憶域21から検索され、それ以来変
更されていない場合、サブイメージ(00)は2次記憶域
21にまだあるので記憶操作を実行する必要はない。この
場合、新しいサブイメージを1次記憶域19のサブイメー
ジ(00)上に書き込むことができる。
サブイメージ(11)、(20)および(21)をそれぞれ
2次記憶域21から検索しなければならず、どれが有用か
またはアクセスしやすいかについて他の指示がないの
で、それらはただ順にアクセスされるだけである。しか
し、1つがアクセスされるたびに、1次記憶域19中のサ
ブイメージの1つを2次記憶域21に戻さなければならな
い。この例では、サブイメージ11がサブイメージ(00)
の代わりに1次記憶域19に入る。次に、サブイメージ
(10)が2次記憶域21に戻され、その代わりにサブイメ
ージ(20)が1次記憶域19に入る。サブイメージ(11)
と(20)が表示ジェネレータ(図示せず)に供給され
る。サブイメージ(11)は2次記憶域21に戻され、その
代わりにサブイメージ(21)が1次記憶域19に入る。サ
ブイメージ21も表示ジェネレータに供給される。このよ
うにして、4つのサブイメージ(10)、(11)、(20)
および(21)がアクセスされ表示される。
表示されたサブイメージはディスプレイ5で変更する
ことができる。
もちろん、イメージの制御を維持するには、各イメー
ジおよびサブイメージの状況テーブルを設けることが必
要である。イメージ状況テーブルはビット・インジケー
タによってイメージの方向とカラー状態を識別する。各
サブイメージ・テーブルはその個々の方向とカラーの記
録を維持する。サブイメージが表示のため表示ジェネレ
ータに送られるとき、主イメージの方向およびカラー状
態とサブイメージの方向およびカラー状態が比較され
る。比較が一致しない場合、サブイメージの方向または
カラーあるいはその両方の状態を主イメージのそれらと
一致するように変更する。このように、各イメージの方
向またはカラーあるいはその両方の状態が変更されるの
は、その状態が主イメージに一致しないときでそれが表
示に必要な場合だけである。この制御構成では、主イメ
ージの個々のサブイメージは1次記憶域19及び2次記憶
域21では複数の異なる状態にあるが、必要なとき正しい
状態で表示される。
主イメージおよびサブイメージの状況テーブルの例を
第2図に示す。
たとえば、サブイメージ集合(10、11、20、21、30、
31)内に示されたイメージの一部分を回転したい場合、
他のサブイメージを回転させる必要はない。
この例では、サブイメージ(20)と(21)は、前のア
クセス操作の後、1次記憶域19に保持されていた。これ
らのサブイメージはどちらも回転関数のアクセス・リス
トにあるので、まずアクセスされ回転される。サブイメ
ージ・テーブルが更新される。両方にアクセスした後、
他のサブイメージを見つける。残りのすべてのサブイメ
ージは最初同じ状態にあるので、それらはそれぞれ任意
の順序でアクセスされる。話を簡単にするために、それ
らが(10)、(11)、(30)および(31)の順序でアク
セスされるものと仮定する。アクセスおよび回転操作が
終了すると、1次記憶域19はサブイメージ(30)と(3
1)を保持し、サブイメージ・テーブルはサブイメージ
(10)、(11)、(20)、(21)、(30)および(31)
が回転状態で記憶されていることを示す。残りのサブイ
メージは元の状態で記憶され、主イメージ・レジスタは
そのイメージが回転された状態にあることを示す。
イメージの反射、反転、拡大縮小および複写など他の
機能も同様にして処理される。
E−6.実例2 本仮想イメージ・システムの改良された動作を例示
し、それと汎用仮想メモリ・システムを比較するため
に、もう一つ単純な例について詳しく説明することにす
る。この例はイメージをメモリに読み込み、次いで、ま
ず円をその中心の周りに描き、次に長方形をその中心の
周りに描いて図形による注釈を行なうことから成る。
この単純なイメージの例を、第5A図と第5B図に示す。
第5A図と第5B図に示すように、イメージを4つのサブイ
メージ領域に細分化する。この説明では、イメージ領域
に2つの修正を加えるものとする。イメージ・フィール
ドに第1の円aを描き、次いで長方形bを描く。
この説明では、1次記憶域19は3つのサブイメージを
記憶でき、イメージは2×2のサブイメージ・ブロック
のアレイに分割されるものと仮定する。また、第5A図お
よび第5B図に2、3、4で記したサブイメージは、1次
記憶域19に元来保持され、より早期のイメージ読取り動
作中にサブイメージ1が2次記憶域21に記憶されたと仮
定する。
1次記憶域19は3つしかサブイメージ・ブロックを保
持できないので、その状態は3つのサブイメージ・ブロ
ックのリストによって表わせる。そのリスト中でのブロ
ック・ナンバーの順序は、最も最近使用されていないも
のを最初に、最も最近使用されたものを最後にする。こ
の例で、サブイメージが左から右、上から下に読み取ら
れる場合、元のイメージ読取り動作の結果、1次記憶域
19が状態(2、3、4)になる。サブイメージ1は2次
記憶域21にある。
ここで図形を用いて円aと長方形bでイメージを注釈
することを考えてみる。そうするには、4つのサブイメ
ージ・ブロックすべてを修正しなければならない。ま
ず、LRUアルゴリズムを用いて汎用仮想メモリ・システ
ムでそれがどう実現されるか説明し、次いで、本発明に
よる修正されたアルゴリズムによってシステムがどう改
良されるか説明することにする。
汎用仮想メモリ・システムでは、1次記憶域19と2次
記憶域21の違いは、実行中の操作にとって透明である。
操作中に、必要に応じて1次記憶域19と2次記憶域21の
間でデータを交換する。LRUアルゴリズムを使って、要
求されたページ、すなわちこの例ではサブイメージ・ブ
ロック用のスペースをあけるためにどのメモリ・ページ
またはどのサブイメージ・ブロックを交換して2次記憶
域21に出すかを決定する。
円aを角度0から始まる反時計回りで描くと仮定する
と、サブイメージ・ブロックは2、1、3、4の順序で
アクセスされる。
通常のLRU動作を実行した場合、円aと長方形bをイ
メージ領域に追加するのに以下に示すステップが必要で
ある。
ステップ1 a)1次記憶域19にあるサブイメージ2のaの部分を記
憶する。
b)2のアクセス状況を最も最近にアクセスされた状況
に更新する。1次記憶域19は現在(3、4、2)のアク
セス順序にある。
ステップ2 a)サブイメージ1が次に更新できるように、交換によ
り1次記憶域19からサブイメージ3を出し、その代わり
にサブイメージ1を入れる。
b)サブイメージ1のaの部分を記憶する。
c)1のアクセス状況を最も最近アクセスされた状況
に、2を次に最も最近アクセスされた状況に、4を最も
最近アクセスされていない状況に更新する(4、2、
1)。
ステップ3 a)サブイメージ3が次に更新できるように、交換によ
りサブイメージ4を出し、サブイメージ3を入力する。
b)サブイメージ3のaの部分を記憶する。
c)3のアクセス状況を最も最近アクセスされた状況
に、1を次に最も最近アクセスされた状況に、2を最も
最近アクセスされていない状況に更新する(2、1、
3)。
ステップ4 a)サブイメージ4が次に更新できるように、交換によ
りサブイメージ2を出しサブイメージ4を入力する。
b)サブイメージ4のaの部分を記憶する。
c)4のアクセス状況を最も最近アクセスされた状況
に、3を次に最も最近アクセスされた状況に、1を最も
最近アクセスされていない状況に更新する(1、3、
4)。イメージは現在第5B図に示したLRU初期状態にあ
る。
ステップ5 a)サブイメージ2が長方形bの一部分と共に更新でき
るように、交換によりサブイメージ1を出しサブイメー
ジ2を入れる。
b)サブイメージ2のbの部分を記憶する。
c)2のアクセス状況を最も最近アクセスされた状況
に、4を次に最も最近アクセスされた状況に、3を最も
最近アクセスされていない状況に更新する(3、4、
2)。
ステップ6 a)サブイメージ1を更新できるように、交換によりサ
ブイメージ3を出しサブイメージ1を入れる。
b)サブイメージ1のaの部分を記憶する。
c)1のアクセス状況を最も最近アクセスされた状況
に、2を次に最も最近アクセスされた状況に、4を最も
最近アクセスされていない状況に更新する(4、2、
1)。
ステップ7 a)交換によりサブイメージ4を出しサブイメージ3を
入れる。
b)サブイメージの3のbの部分を記憶する。
c)3のアクセス状況を最も最近アクセスされた状況
に、1を次に最も最近アクセスされた状況に、2を最も
最近アクセスされていない状況に更新する(2、1、
3)。
ステップ8 a)交換により2次記憶域21にサブイメージ2を出し、
2次記憶域21からサブイメージ4を入れる。
b)サブイメージ4のbの部分を記憶する。
c)4のアクセス状況を最も最近アクセスされた状況
に、3を次に最も最近アクセスされた状況に、1を最も
最近アクセスされていない状況に更新する(1、3、
4)。
通常のLRU法を使用する場合、イメージを修正して円
aと長方形bを追加するのに1次記憶域19と2次記憶域
21の間で7つの交換操作が必要である。
この例から明らかなように、1次記憶域19の状態の知
識に基づいた順序でサブイメージ・ブロックを処理すれ
ば、交換の量が減少するはずである。不必要な交換操作
の発生は、スラッシングと呼ばれる。このスラッシング
は、本発明による修正されたLRUアルゴリズムを使うと
著しく減らすことができる。
本発明が提供する修正を用いることにより、交換サイ
クルの数を大幅に減少させることができる。本発明によ
れば、仮想記憶域マネージャが1次記憶域マネージャへ
のアクセス・リストを作成する。1次記憶域マネージャ
はそのリストを処理して、どのイメージを最初にアクセ
スするかを決定する。各サブイメージは他のサブイメー
ジとは独立して処理できるので、1次記憶域マネージャ
はサブイメージを任意の順序にアクセスされるように配
列することができる。
したがって、1次記憶域19と2次記憶域21の間の記憶
サイクルおよび取出しサイクルが最小になる順序でサブ
イメージにアクセスする。
仮想メモリ・システムはまず、アクセスしなければな
らないサブイメージ・ブロックの集合を決定し、次い
で、必要な交換サイクルが最小になる順序でそれらを処
理する。交換論理機構はアクセス集合リスト中のサブイ
メージ・ブロックを優先的に1次記憶域19に保持する。
第5A図および第5B図に示した例では、サブイメージ・
ブロック2、3および4はアクセス・リストと1次記憶
域19の両方にある。操作の順序は以下のようになる。
ステップ1 a)サブイメージ{1、2、3、4}のアクセス集合リ
ストを作成する。
b)サブイメージ2のaの部分が最も最近使用されてい
ずアクセスするのに最もコストがかからないので、それ
を記憶する。
c)アクセス・リストからサブイメージ2を取り除く。
アクセス・リストは{1、3、4}になる。
d)2のアクセス状況を最も最近アクセスされた状況に
更新する。1次記憶域19は状態(3、4、2)になる。
ステップ2 a)サブイメージ3のaの部分が最も最近使用されてい
ないので、それを記憶する。
b)アクセス・リストからサブイメージ2を取り除く。
アクセス・リストは{1、4}になる。
c)3のアクセス状況を最も最近アクセスされた状況に
更新する。1次記憶域19は状態(4、2、3)になる。
ステップ3 a)サブイメージ4のaの部分を記憶する。
b)アクセス・リストからサブイメージ3を取り除く。
アクセス・リストは{1}となる。
c)4のアクセス状況を最も最近アクセスされた状況に
更新する。1次記憶域19は状態(2、3、4)になる。
ステップ4 a)交換によりサブイメージ2を出しサブイメージ1を
入れる。
b)サブイメージ1のaの部分を記憶する。
c)アクセス・リストからサブイメージ1を取り除く。
アクセス・リストは空になる。
d)1のアクセス状況を最も最近使用された状況に更新
する。1次記憶域19は状態(3、4、1)になる。
ステップ5 a)第5B図の修正LRUの初期状態に示すような、長方形
bの新しいアクセス・リスト{1、2、3、4}を作成
する。
b)サブイメージ3のbの部分を記憶する。
c)アクセス・リストからサブイメージ3を取り除く。
アクセス・リストは{1、2、4}になる。
d)3のアクセス状況を最も最近使用された状況に更新
する。1次記憶域19は状態(4、1、3)になる。
ステップ6 a)サブイメージ4のbの部分を記憶する。
b)アクセス・リストからサブイメージ4を取り除く。
アクセス・リストは{1、2}になる。
c)1のアクセス状況を最も最近使用された状況に更新
する。1次記憶域19は状態(1、3、4)になる。
ステップ7 a)サブイメージ1のbの部分を記憶する。
b)アクセス・リストからサブイメージ1を取り除く。
アクセス・リストは{1}になる。
c)2のアクセス状況を最も最近使用された状況に更新
する。1次記憶域19は状態(3、4、1)になる。
ステップ8 a)交換によりサブイメージ3を出しサブイメージ2を
入れる。
b)サブイメージ2のbの部分を記憶する。
c)アクセス・リストからサブイメージ2を取り除く。
アクセス・リストは空になる。
d)2のアクセス状況を最も最近使用された状況に更新
する。1次記憶域19は状態(4、1、2)になる。
容易に判明するように、アクセス・リストのイメージ
の一部分を選択する、1次記憶域19で最も容易に利用で
きるプロセスにより、交換操作がこの単純な例では未修
正LRUの場合の7つから修正LRUの場合のわずか2つに減
少した。変更が複雑になるにつれて、サイクル時間の節
約量は飛躍的に増大する。
以上、本発明の特定の実施例について説明したが、本
発明はこれらの実施例に限定されるものではなく、当業
者の技術の範囲内に含まれる他の構成にまで拡張され
る。たとえば、ここに開示した実施例では、修正された
LRUアルゴリズムを使って、1次記憶域19と2次記憶域2
1の間でサブイメージの転送の順序を決定したが、イメ
ージ情報の効率的な転送を可能にするものなら、他の周
知の多くのアルゴリズムのどれを使ってもよい。また、
特定のメモリ管理手法について説明してきたが、当然の
ことながら、他の技法を選択して発明を実行することも
できる。
F.発明の効果 本発明により、イメージの変形を高速で実行できるイ
メージ処理装置が提供される。
【図面の簡単な説明】
第1図は、本発明の実施に有用な仮想イメージ・システ
ムの概略図である。 第2A図は、記憶され表示されるイメージの概略図であ
る。 第2B図、は第2A図に示されているイメージを記憶する方
式の概略図である。 第3図は、システム・データの流れ図である。 第4A図および第4B図は、本発明のイメージ処理特性の例
を示すのに使用する概略図である。 第5A図および第5B図は、本発明の利点を示すのに役に立
つイメージ処理ステップの概略図である。 1……主メモリ、3……ディスク、5……ディスプレ
イ、7……プリンタ、9……スキャナ、11……表示メモ
リ、13……プリンタ・バッファ、15……スキャナ・バッ
ファ、17……ディスク書込みバッファ、19……1次記憶
域、21……2次記憶域。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭60−196856(JP,A) 特開 昭60−138690(JP,A) 特開 昭60−173623(JP,A)

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】複数のサブイメージに分割されたイメージ
    のうち処理すべき部分のサブイメージを記憶する1次記
    憶域と、 前記イメージを記憶する2次記憶域と、 選択されたサブイメージを表示するディスプレイ装置
    と、 前記イメージの表示特性を定義し、且つ前記サブイメー
    ジの表示特性をサブイメージ毎に定義するテーブル手段
    と、 前記イメージに対する処理要求に応答して前記テーブル
    手段において前記イメージの表示特性を変更し、前記イ
    メージの選択されたサブイメージを前記ディスプレイ装
    置で表示するときに、前記イメージの表示特性と前記選
    択されたサブイメージの表示特性とを比較して、不一致
    であれば、前記選択されたサブイメージの表示特性を前
    記イメージの表示特性に変更した後前記ディスプレイ装
    置で表示させる処理手段と、 を具備するイメージ処理装置。
JP63044667A 1987-03-30 1988-02-29 イメ―ジ処理装置 Expired - Lifetime JP2544429B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CA533370 1987-03-30
CA000533370A CA1272312A (en) 1987-03-30 1987-03-30 Method and system for processing a two-dimensional image in a microprocessor

Publications (2)

Publication Number Publication Date
JPS63249280A JPS63249280A (ja) 1988-10-17
JP2544429B2 true JP2544429B2 (ja) 1996-10-16

Family

ID=4135329

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63044667A Expired - Lifetime JP2544429B2 (ja) 1987-03-30 1988-02-29 イメ―ジ処理装置

Country Status (5)

Country Link
US (1) US4894646A (ja)
EP (1) EP0288672B1 (ja)
JP (1) JP2544429B2 (ja)
CA (1) CA1272312A (ja)
DE (1) DE3851774T2 (ja)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5263135A (en) * 1985-07-18 1993-11-16 Canon Kabushiki Kaisha Image processing apparatus
DE3729023C2 (de) * 1986-08-29 1995-03-16 Canon Kk Bildbearbeitungsgerät
US5144679A (en) * 1987-06-29 1992-09-01 Hitachi, Ltd Graphic data searching and storage method
US5254979A (en) * 1988-03-12 1993-10-19 Dupont Pixel Systems Limited Raster operations
JP2748562B2 (ja) * 1988-07-13 1998-05-06 セイコーエプソン株式会社 画像処理装置
US5276786A (en) * 1988-09-05 1994-01-04 Quantel Limited Video graphics systems separately processing an area of the picture before blending the processed area into the original picture
CA1329433C (en) * 1988-10-24 1994-05-10 Lemuel L. Davis Computer animation production system
US4910611A (en) * 1989-01-05 1990-03-20 Eastman Kodak Company Method for doing interactive image processing operations on large images
DE4015430C2 (de) * 1989-05-18 1994-04-14 American Telephone & Telegraph Verfahren zur unabhängigen Steuerung des Kontrastes und/oder der Helligkeit einer Vielzahl von Bildern und Schaltungsanordnung zur Durchführung dieses Verfahrens
IL90385A0 (en) * 1989-05-23 1989-12-15 Joel Isaacson Apparatus and method for image processing
JPH032979A (ja) * 1989-05-31 1991-01-09 Toshiba Corp 画像修正方法及び装置
AU643053B2 (en) * 1990-08-16 1993-11-04 Canon Kabushiki Kaisha Compressed image stores for high resolution computer graphics
AU640809B2 (en) * 1990-08-16 1993-09-02 Canon Kabushiki Kaisha Pipeline structures for full colour computer graphics
US5142667A (en) * 1990-09-28 1992-08-25 Xerox Corporation Resource and memory management algorithms for electric printing and electronic reprographic systems
US5581279A (en) * 1991-12-23 1996-12-03 Cirrus Logic, Inc. VGA controller circuitry
US5613018A (en) * 1991-12-23 1997-03-18 Xerox Corporation Page buffer rotator
JPH05242232A (ja) * 1992-02-28 1993-09-21 Hitachi Ltd 情報処理装置及び映像表示装置
US5900856A (en) 1992-03-05 1999-05-04 Seiko Epson Corporation Matrix display apparatus, matrix display control apparatus, and matrix display drive apparatus
JP3582082B2 (ja) 1992-07-07 2004-10-27 セイコーエプソン株式会社 マトリクス型表示装置,マトリクス型表示制御装置及びマトリクス型表示駆動装置
DE69422324T2 (de) * 1993-03-29 2000-07-27 Koninkl Philips Electronics Nv Speicherarchitektur mit Fenstern zum Bildkompilieren
GB2277012B (en) * 1993-04-08 1997-06-18 Sony Uk Ltd Image data storage
US5598181A (en) * 1994-09-26 1997-01-28 Xerox Corporation Method and apparatus for rotating a digital image ninety degrees using a small auxiliary buffer
CN100505008C (zh) 1994-11-17 2009-06-24 精工爱普生株式会社 显示装置和含显示装置的电子设备
US6121974A (en) * 1996-06-27 2000-09-19 Cirrus Logic, Inc. Priority storage system for fast memory devices
US5905506A (en) * 1996-08-26 1999-05-18 Adobe Systems Incorporated Shared tile image representations
JP2000148997A (ja) * 1998-11-13 2000-05-30 Minolta Co Ltd 画像処理装置
JP3845045B2 (ja) * 2002-07-23 2006-11-15 株式会社リコー 画像処理装置、画像処理方法、画像形成装置、印刷装置及びホストpc
DE102004030055A1 (de) * 2004-06-22 2006-01-12 Bayerische Motoren Werke Ag Verfahren zur Regelung einer elektrischen Verstelleinrichtung
US8332144B2 (en) * 2005-12-31 2012-12-11 Alpine Electronics, Inc Image correction method and apparatus for navigation system with portable navigation unit
US20090136098A1 (en) * 2007-11-27 2009-05-28 Honeywell International, Inc. Context sensitive pacing for effective rapid serial visual presentation
US8107758B2 (en) * 2008-04-16 2012-01-31 Microsoft Corporation Block based image processing
US20110234636A1 (en) * 2010-03-24 2011-09-29 Dsp Group Ltd. Method and integrated circuit for image manipulation
TWI520598B (zh) * 2012-05-23 2016-02-01 晨星半導體股份有限公司 影像處理裝置與影像處理方法
US10565778B2 (en) * 2017-08-22 2020-02-18 Samsung Electronics Co., Ltd. Electronic devices for and methods of implementing memory transfers for image warping in an electronic device
CN110782389B (zh) * 2019-09-23 2023-09-15 五八有限公司 一种图像数据字节对齐方法和终端

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3938102A (en) * 1974-08-19 1976-02-10 International Business Machines Corporation Method and apparatus for accessing horizontal sequences and rectangular sub-arrays from an array stored in a modified word organized random access memory system
US3996559A (en) * 1974-11-07 1976-12-07 International Business Machines Corporation Method and apparatus for accessing horizontal sequences, vertical sequences and regularly spaced rectangular subarrays from an array stored in a modified word organized random access memory system
US3995253A (en) * 1975-03-03 1976-11-30 International Business Machines Corporation Method and apparatus for accessing horizontal sequences, vertical sequences, and rectangular subarrays from an array stored in a modified word organized random access memory system
US4090174A (en) * 1976-11-01 1978-05-16 International Business Machines Corporation Method and apparatus for accessing horizontal sequences, vertical sequences and rectangular subarrays from an array stored in a modified word organized random access memory system
US4271476A (en) * 1979-07-17 1981-06-02 International Business Machines Corporation Method and apparatus for rotating the scan format of digital images
GB2073988B (en) * 1980-04-10 1984-09-26 Micro Consultants Ltd Video picture processing
JPS5763586A (en) * 1980-10-03 1982-04-17 Canon Kk Pattern generator
JPS6073671A (ja) * 1983-09-30 1985-04-25 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション パタ−ン処理装置
JPS60138690A (ja) * 1983-12-27 1985-07-23 Kawasaki Steel Corp 画像入力装置
JPS60173623A (ja) * 1984-02-14 1985-09-07 Nippon Telegr & Teleph Corp <Ntt> 画像情報の記憶検索表示方式
JPS60196856A (ja) * 1984-03-20 1985-10-05 Olympus Optical Co Ltd 画像検索登録装置
JPS619762A (ja) * 1984-06-25 1986-01-17 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション イメ−ジ処理装置
US4637057A (en) * 1984-07-30 1987-01-13 Xerox Corporation Rotation of digital images
FR2571571B1 (fr) * 1984-10-05 1986-11-28 Thomson Csf Procede d'elaboration d'images video synthetiques en vue d'une visualisation en temps reel et a haute densite d'information et dispositif utilisant ce procede

Also Published As

Publication number Publication date
JPS63249280A (ja) 1988-10-17
EP0288672A2 (en) 1988-11-02
DE3851774T2 (de) 1995-05-24
EP0288672B1 (en) 1994-10-12
EP0288672A3 (en) 1991-06-26
DE3851774D1 (de) 1994-11-17
CA1272312A (en) 1990-07-31
US4894646A (en) 1990-01-16

Similar Documents

Publication Publication Date Title
JP2544429B2 (ja) イメ―ジ処理装置
USRE36145E (en) System for managing tiled images using multiple resolutions
US5644758A (en) Bitmap block transfer image conversion
EP0121015B1 (en) Presentation space management and viewporting on a multifunction virtual terminal
JP3462211B2 (ja) 多態グラフィック・デバイス
US5945997A (en) Block- and band-oriented traversal in three-dimensional triangle rendering
EP0138064B1 (en) Tomographic image processing apparatus
US6288722B1 (en) Frame buffer reconfiguration during graphics processing based upon image attributes
US5835086A (en) Method and apparatus for digital painting
JPH0711778B2 (ja) イメージ処理方法及び装置
JPH09223244A (ja) 3次元オブジェクトを高速にレンダリングする方法および装置
US20110279465A1 (en) Memory system having multiple address allocation formats and method for use thereof
JPH0345076A (ja) 画像データの処理方式
JPH09245179A (ja) コンピュータグラフィックス装置
JP3086189B2 (ja) テクスチャーマップパッキング
US6891546B1 (en) Cache memory for texture mapping process in three-dimensional graphics and method for reducing penalty due to cache miss
US5986661A (en) Graphics output system with bounded updating
EP0519694B1 (en) Method for allocating off-screen display memory
JP2726271B2 (ja) パッチ化システム
JP2776793B2 (ja) 画像表示方法およびその表示装置
JP2897441B2 (ja) イメージ処理方法及び装置
Ng Dynamic memory mapping for window based display system
CN117372235A (zh) 图元处理的方法和装置
JPH0750512B2 (ja) 画像処理装置
Willis et al. Manipulating large pictures using the Perq