JP2617007B2 - 対話型大画像処理方法 - Google Patents

対話型大画像処理方法

Info

Publication number
JP2617007B2
JP2617007B2 JP1323667A JP32366789A JP2617007B2 JP 2617007 B2 JP2617007 B2 JP 2617007B2 JP 1323667 A JP1323667 A JP 1323667A JP 32366789 A JP32366789 A JP 32366789A JP 2617007 B2 JP2617007 B2 JP 2617007B2
Authority
JP
Japan
Prior art keywords
image data
mask
pixels
log
chunk
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP1323667A
Other languages
English (en)
Other versions
JPH02228175A (ja
Inventor
ロイ コック デビッド
Original Assignee
イーストマン・コダック・カンパニー
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 イーストマン・コダック・カンパニー filed Critical イーストマン・コダック・カンパニー
Publication of JPH02228175A publication Critical patent/JPH02228175A/ja
Application granted granted Critical
Publication of JP2617007B2 publication Critical patent/JP2617007B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/40Picture signal circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は対話型大画像処理方法、特にコンピュータメ
モリにデータを格納できず、またディスクメモリへの書
き込み/読み出しにも多大な時間を要する大規模な画像
データの処理方法に関する。
[従来の技術] 近年におけるコンピュータ機能の向上及び撮影画像−
デジタルデータ間の相互交換技術の発展により、専門家
的利用に耐え得る映像品質の画像再生が可能になってい
る。
このようなデジタル画像に対し、ユーザが処理結果を
見ながらいわゆる対話型式で画像編集及び画像処理を実
施できるコンピュータワークステーションへの要望が強
い。
しかし、画像の高品質化に伴い取扱うデジタルデータ
量が膨大化し、汎用コンピュータでは単純な演算処理さ
えも対話型画像処理における通常の所要時間内に実行す
るのは困難になる。
このため、例えばEP0112 414 A1(発明の名称:「I
mage Transformation on an Interactive Raster Scan
on Matrix Display」;発明者:R.L.A Cottrell)に係
る対話型ラスタースキャン表示装置では、表示/消去さ
れるデータ量を全画像データよりも大幅に削減した代替
画像データを用いる構成が開示されている。
また他の公知の従来システムとして、USP No.4,189,7
44(発明の名称:「Apparatus for Generating Signals
Representing Operator−Selected Portions of a Sce
ne」;発明者:G.Stern)又はUSPNo.4,746,980(発明の
名称:「Video Processing System」;発明者:A.C.Pete
rsen)等には、全画像データのうちその時に対象となる
画像領域だけを選択抽出して必要な処理を実行し、終了
すればこれを元の全画像へ戻すというオペレーションを
行う方法が記載されている。
[発明が解決しようとする課題] しかし、上記各従来装置では、一連のオペレーション
のうち、対話型式で行われるのは一部に過ぎない。
この結果、対話型式以外のオペレーションを完了する
には1〜2時間も掛るうえにそのオペレーションは全く
他の処理を進めることができないという不都合が生じて
いた。
本発明は上記従来の課題に鑑みなされたものであり、
その目的は分割された大画像データに対し必要なオペレ
ーションを最小限の待ち時間で完了できる対話型大画像
処理方法を提供することにある。
[課題を解決するための手段及び作用] 本発明では全画像データ処理工程が対話型式で進めら
れ、例えばユーザがコンピュータマウス等の対話型指示
手段を用いて被処理ピクセル又は画像領域を選択する。
極めて対話傾向の強いいわゆるブラッシング等のオペレ
ーションを含む。このオペレーションは以下の手順で行
われる。
1.規定された通り忠実にオペレーションを完了できるよ
う、ログ内にユーザの実行する全オペレーションを逐次
記録する。
各オペレーションのうち、例えば回転オペレーション
は角度により、規模変換オペレーションは新たな幅及び
高さにより、それぞれ特定される。その他、色相(色の
3要素)あるいは色相の領域等の規定も含まれる。
また、ワークステーションでユーザが行う手書きオペ
レーション等に対しては、その手書き経路を含み潜在容
量の大きなデータアレイ又は対応するピクセルのリスト
等が必要になる。
2.画像データ編集中はいつでもユーザの前に処理対象画
像が表示される。この画像は全分解能(1スクリーンピ
クセル/画像データピクセル)で表わされる完全(大)
画像データよりも小さいか、あるいは画像の大領域(1
スクリーン−ピクセル/多数の画像データピクセル)の
一部を抽出したものとなる。
ここでの問題は、ユーザがログのオペレーションを進
めるに従って変化する最新の画像データをいかに演算・
表示するかという点である。
原理的には、コンピュータディスク等に記録されてい
る原データを読み取り、これに各オペレーションを施す
ことでログ内の状態から完全画像へと変換しそして最終
画像データに到達した段階でその任意部分を表示すると
いう手順になる。
ただ、この場合大容量のコンピュータメモリ又はディ
スクに対する頻繁なデータの出し入れが必要になる。そ
の他、次のようなアプローチもある。
すなわち、ログ内の各オペレーションに対し、原デー
タ又は前オペレーションの結果が入力として与えられ
る。各オペレーションは予め数学的に規定されているの
で、オペレーション結果に係るピクセルグループのデー
タが与えられることにより、該結果を算出するためにど
のピクセルグループが入力として必要かを決定できる。
なお、実際上はピクセルグループを矩形で表すのが便
利であるが、無論他の一般的形状を採用してもさしつか
えない。
処理は以下の手順で進められる。
2a)最終画像のうち表示すべき部分を決定する。
2b)各オペレーションにおける所定の出力を得るには入
力されているどのピクセルが必要かを決定しつつ、ログ
内を逆方向に進む。ここでのオペレーションにより得ら
れた処理結果は、その後行われる一又は複数のオペレー
ションにおける入力として用いられる。こうして、得ら
れた一の画像データを構成するピクセルグループがその
後のオペレーションにおける入力として必要になるとい
う連関性が生まれる。
2c)ログ内を今度は順方向に進み、各オペレーションに
おいてその後段のオペレーションに必要とされるピクセ
ルグループだけを演算する。これにより重複演算を回避
しつつ、最終処理結果を得るために必要な全ピクセルが
算出されることになる。
3.上述のアプローチで重複演算は回避できるが、コンピ
ュータメモリの容量に制限がある場合等では、演算中に
保持されるべき中間ピクセルグループの大きさが演算装
置のメモリ容量を超過する恐れがある。これは以下のよ
うに処理手順を変更すれば改善できる。
3a)各オペレーションにおいて、その対応ログ内だけに
とどまらず、全オペレーションを表す画像データのピク
セルグループを出力する。
このピクセルグループを、チャンクと呼ばれる小グル
ープに分割する。
そして、前記アプローチ同様、各オペレーションの定
義に基づきこれらのピクセルと前画像データのピクセル
及び、これらのチャンクと前画像データのチャンク、の
連関性がそれぞれ設定される。
3b)各チャンクは、それ自身がどの中間画像データの一
部であるかを問わず、任意の順次で演算してよい。この
際の唯一の条件は、当然のことであるが、チャンクAを
演算するためにチャンクBのピクセルデータが必要な場
合には先ずチャンクBの演算を完了しておくことであ
る。
この条件さえ満たされれば、チャンクの演算はいかな
る方向へ順序づけしてもよい。
またオーダーは、最終処理結果を演算するためには要
求されるメモリの最大容量等の条件に合致するよう、自
由に変更できる。
3c)更に、演算処理の開始に先立ってチャンクのオーダ
ーを実施することにより、他の目的を達成することがで
きる。
すなわち、今後処理されるどのチャンクにどのチャン
クが与えられるのかを知ることで、そのチャンクがいつ
不要になるかを把握できるので、処理の終ったチャンク
を速やかに削除してそのメモリスペースに他の処理結果
を格納できるという利点が得られる。
従来のコンピュータシステムでは、あるデータが以降
の段階でどのように使用されるかを予め知ることは不可
能であり、わずかに最新の過去の使用事実に基づく情報
から推論的に割り出すのが精一杯であった。換言すれ
ば、過去最後に使用されたデータが再び使用されるの
は、それまでの基本サイクルが繰り返された後であろう
と確率的に判断されるにとどまっていた。
これに対し、本発明では上述のように実際のオペレー
ション手順に基づく確実な以降のデータ使用情報が得ら
れるので、これに従い最も近い過去に使用されたアルゴ
リズムを改善することもできる。
4.ユーザが表示画像の一領域を注視している間にログに
対するオペレーションが逐次進められているような状況
の下では、各オペレーションの結果得られたり画像が表
示された段階で一定期間データ処理を一時停止すること
により、ユーザにその画像視認を行う余裕が与えられ、
変化後の画像を見逃してしまうという事態を回避でき
る。
このように本発明は、画像データ編集又は処理システ
ムにおける表示する画像データの演算をユーザとの対話
形式で進める方法であるが、更に次のような利点も持
つ。
それは、対話型式の各オペレーション完了後、同一の
演算手段を所定時間全画像データの演算用としても用い
ることができることである。
勿論、現在の汎用ソフト及びハードシステムで全画像
データの演算を行うには膨大な時間が必要となるので、
前述したようないわゆる後処理ステップを設定すること
自体はこの種のワークステーションでは慣用的である。
しかし、本発明方法の特徴とするところは、前記ステ
ップ3b)で説明したように、中間処理結果のホールドに
要するコンピュータメモリ容量を最小限に抑制しつつ最
終演算処理工程を実行できる点にある。
要約すれば、本発明は、ユーザとの対話工程中ユーザ
に対し表示すべき画像データ及び後段の使用のために記
憶保存あるいは所定の写真出力装置に適用される最終画
像を演算するための方法であり、次の各ステップを含
む。
1)ユーザが実行する各オペレーションの詳細を記録す
る。
2)入力、中間及び最終画像データのそれぞれにおい
て、どのピクセルが出力画像データを得るために必要か
を決定する。
3)前オペレーション結果の重複演算を回避しつつ、こ
れらのピクセルの演算を所要コンピュータメモリ容量が
最小限に抑制されよう順序づける。
このような本発明においては、次の理由により、大幅
に改善された画像処理性能を発揮できる。
上記1)により、対話中に適用される他のオペレーシ
ョンに先立って全画像データに対して実行を要求される
オペレーションが存在しない。
上記2)により、表示不能なピクセル演算を行う無駄
が省かれる。
上記3)により、補助記憶装置に対し不必要な情報を
出し入れする不効率が回避される。
なお、本発明の基本方法及びその変更例は、共に対話
型演算及び対話工程後に各画像データに対して実行され
る演算の双方に適用される。
また、上記説明は適宜上本発明方法をディスク等の補
助記憶手段をもち汎用コンピュータに適用した場合を想
定して説明したが、これに限らず汎用コンピュータに接
続される特殊目的のコンピュータにおける演算にも応用
可能である。
[実施例] 以下、図面に基づき本発明の好適な実施例を説明す
る。
第1図に本発明方法が適用される対話型画像データ処
理装置の基本システムを示す。無論、こうしたシステム
自体は周知である。
図において、イメージスキャナ12は画像データ10をア
ナログ又はデジタルの電気信号に変換する。イメージス
キャナ12がアナログ信号を発生する場合、このアナログ
信号はA/Dコンバータ14によりデジタル変換され、CPU16
に供給される。処理装置16はメモリ、ALU、テンポラリ
レジスタ、及び該処理装置を所定のソフトウェア及びユ
ーザによる指令に従って制御する制御回路を含む。
また、ディスクメモリ18内には拡大メモリが内蔵され
ている。
端末装置30はユーザに視覚情報を提供すると共に、ユ
ーザの指令をベーシックシステムへ伝送する役割を果す
キーボードを有する。
尚、マウス、ライトペンあるいはカーソルを制御する
パッド又はジョイスティック等の入力付属機器をキーボ
ード30に接続可能である。
CPU16及び端末装置30に接続されたプリンタ20はCPU16
から受信した処理済デジタル画像データに基づき画像デ
ータのハードコピーを印刷する。
さて、本発明方法を適用するシステムオペレーション
の説明に入る。
まず、この種のシステムの処理対象となる画像データ
の規模が膨大なため、メモリ内に収納する事自体全く不
可能であったり、たとえ可能な場合でも全画像データに
対する処理完了までに長く時間が掛りすぎて、到底デー
タを満足させ得る良好な応答性は望めない。
従って、ユーザからのオペレーション指令は、端末装
置30のCRT上に表示される特定の画像領域に対してのみ
実行される。
I.後処理及びログファイルの使用 まず、ディスクメモリ18又はイメージスキャナ12にて
走査されたいくつかの初期画像から、CPU16へ画像デー
タのローディングが行われる。
この状態でユーザは色相変換、他の画像からの小画像
領域の貼り合せ、対象画像から小領域を切り出しこれに
変調を施し再び貼り合せあるいは切り出した小画像領域
を分離画像データとしてディスクに保存する等のオペレ
ーションを行う。
このような本発明では如何なる時点においても、ソフ
トウェア内に保持される対象画像データ及びこれに付属
するマスク数は少ない。
対話工程中にユーザは所望の画像データ又はマスクを
ディスクファイルとして保存させることができる。やが
て、対話工程が終了する。
以上のような状況により、一の対話工程中に複数枚の
画像データを入出力でき、また多数の対象画像データ
(CPU16内)を活性化することも可能である。例えば、
2枚の画像データ又は2個の画像データバッファを活性
化させ、これらを相互に切り替えることで、貼り合せる
前にカラーバランス等画像データの各種特性を調整又は
均一化することを実現できる。
こうして対話工程が終了した時点でそれまで実際に原
画像データファイルに対し進められてきた処理が、画像
データ表示の生成を要求されている処理ということにな
る。そして、要求された全オペレーションはログファイ
ル内に収められる。
勿論、ユーザが実行を要求したオペレーション工程を
CRT上で確認できるよう視覚フィードバックをかけるた
めに、この時点で試験的に処理を実行することが必要に
なることもある。これがログファイルの第1の使用形態
となる。
次に説明したように、この種のシステムではデータ量
が莫大であり、たとえサブサンプル画像データであって
もその全データをコンピュータメモリへ収納することは
不可能であり、また完全画像データを最新状態に保持
(マルチ画像データバッファに関係なく)するに充分な
時間もない。
従って、最近状態に保持されるのは当該画像データの
一部のみとなるが、その大きさはハードウェアの形態に
より異なる。本発明方法においては、その時に表示され
ている画像(view)の一部だけを最新状態に置けば済
む。そして、次のオペレーションが要求されることによ
ってviewが現在の状態から刷新されることになる。
しかし、ユーザが画像データを異なる部分に分離させ
あるいは異なる画像データバッファに分離入力させたよ
うな場合にはその結果が最新画像として表示されること
はなく、ログファイルを用いて所望の画像を生成するた
めに必要な演算を求め、原画像データからviewを算出す
るという手順を採る。
次に、本発明の第2の使用形態は、完全な結果画像デ
ータファイルを生成するための演算を実行することであ
る。
これは後処理と呼ばれ、システムの非機能時あるいは
ユーザが他の画像データに対する処理を行っている間に
非対話型式で進められる。
その要求はログファイルの処理という簡単な形で行わ
れ、ユーザが対話工程中に保存を要求した全ての画像デ
ータが生成されることになる。
第3の使用形態は、それまでの処理結果をまとめるた
めにユーザが対話工程を中断することである。
この場合、ユーザが処理結果がログファイルへ要約さ
れることを指令すると、該ログファイルから現在のview
が算出されると共に、これに新たな処理が付加される。
第4の使用形態は、ユーザが処理結果をまとめるため
に対話を中断したいが、同時にその間処理の一部を平行
して進めることを望むような場合である。
これは通常の後処理に極めて近似した形態であるが、
次の点が異なる。
すなわち、前記第3の形態と同等の状況にあるとする
と、その対話工程が最後まで処理され保存されるという
点である。これには中断が行われた時点で活性化してい
る全マスクも含まれる。
上記説明した以外のログファイルの使用形態を実行す
るに際しては、ユーザは目標とする演算結果を具体的に
特定しておくことが要求される。
それがviewの生成を目的としているのであれば、現在
のviewに対してだけ演算が必要とされる。
もしそれが最終的な後処理のために行われるのであれ
ば、保存指定された画像データだけを演算すればよい。
もし中断した対話工程の最終位置を捕えることが目的
ならば、その時の全画像データ及びマスク(途中で保存
されたものも含む)に対する演算が求められる。
換言すれば、要求−駆動形の演算においては当然のこ
とであるが、ユーザが外部要求を特定することが第1の
条件となり、これによって要求を満たし得る処理のみを
実行でき、他は対象外に置くことができるというわけで
ある。
II.用語 ここでは、本発明方法において使用される用語及び仮
定を要約しておく。
1.画像−第2図において、画像Iは、直角に境界が引か
れ所定の幅及び高さ(ピクセル及びラインの数)内に含
まれる複数のピクセルのアレイとして表わされている。
各ピクセルは、0で始まりmで終わるX軸及び0で始ま
りnで終わるY軸からなる座標にて規定される。
画像データの形状は種々の方法、例えばビットマスク
や幾何的記述等を用いて特定することができるが、その
ピクセルが画像内で位置していることをxy座標で表示困
難であってはならない。
2.マスク−第3図において、いくつかの画像データに対
応するマスクMが設けられており、これは画像データの
形状あるいは画像データに対し適用されるオペレーショ
ンの強さを示す目的で使用される。
マスク値が0又は無であれば、画像データが存在しな
いか又はそのピクセルに対しオペレーションが適用され
ないことを意味する。
このマスクは二値すなわちオンオフの構成でもよく、
又は例えば256等のディスクリートレベルを多数持つよ
うにしても構わない。従って、マスク値が0と最大値
(オン値)間にある状態では、オフでもオンでもないこ
とになる。
通常、マスク値は実際のマスク演算を実行しない限り
知ることができないが、マスクのオフである領域、オン
である領域、そしてそれ以外の領域等の識別は可能であ
る。
無論、マスク全体がブラックボックス状態の値認識が
不能であると扱うことも不可能ではないが、その付加情
報が与えられることで画像データ処理効率は著しく向上
する。
例えば、もしマスクが幾何形状又は境界線で構成され
ていたり、色領域をもつ境界線の幾何形状を組み合せて
なるものであるとすると、境界を形成する直角はマスク
がオフの領域外にあることを推察できる。この領域にお
いて該マスクを用いたオペレーションは実質上無意味で
あり、画像データ源からのデータは何らの変調も施され
ることなくそのまま結果データとしてコピーされるわけ
である。
また、その領域が未知又はONであることが判明してい
れば該領域「オフでない」ことが読み取れ、他方その領
域が未知又はONであることが判明していれば該領域は
「オンでない」と判断できる。
3.オペレーションログ−(後述の「オペレーションログ
例」参照) 各ログエントリーとは画像データに対し実行される基
本オペレーションの完全詳細を表すもので、これにはオ
ペレーション対象となる画像データ、オペレーションに
用いられるパラメータ、オペレーションに適用されるマ
スク領域等が含まれる。
そして、通常はこうしたオペレーションを実行した結
果として新たな画像データ又はマスクが得られるわけで
ある。
オペレーションの一例としては、「ピクセル50、ライ
ン10から開始して、画像データ14を幅950ピクセル、高
さ200ラインにcropせよ」、あるいは「マスクM2及びdef
ault kernelを用いて画像データ15を尖鋭化せよ」等で
ある。後者の例では、マスクは対話型ブラッシュにて生
成されたものを使用し、これによって尖鋭化対象となる
ピクセル並びに尖鋭化の度合が指示され得る。
そして、画像データ又はマスクは、画像データの長方
形区画であるチャンク(チャンクの定義の項参照)から
構成されている。
オペレーションログ例 FILELORD II=I15 CROP XP=50 YP=10 IW=950 IH=200 SHARPEN MI=M1 ST=3 MMRECT MI=M3 XP=50 YP=0 MW=300 MH=100 CUT MI=M3 II=120 CHSATHUE MI=M1 SC=110 HC=0 MMBRUSH MI=M4 XP=80 YP=30 MW=200 MH=80 BR=1 BLUR MI=M1 ST=2 FILESAVE II=I21 FILELOAD II=I20 MIRROR MO=HFLIP FILESAVE II=I22 FILELOAD II=I21 PASTE MI=M1 II=I22 XP=330 YP=0 FILESAVE II=I30 4.オペレーション−オペレーションは上記ログファイル
内の任意の順序で開始し、規定された手順で進められ
る。
ここで、連続するいくつかのオペレーションを組み合
せて単一の複合オペレーションを構成することも皆無で
ないが、相互交換が可能でかつ厳密に同一の結果を出す
ことのできる複数のオペレーションというのは極めて少
ないのが実情である。例えば、まずある輝度から10ユニ
ットを差し引いた後この輝度へ10ユニットを加えるとい
うオペレーションと、先に10ユニットを加えてその後10
ユニットを差し引くというオペレーションとは、結果と
しては同じに見えても等しくはない(全く変化させない
場合も同様)。
この理由は、輝度というのが、例えば8ビットという
ような精密な固定値で表されていることに基づく。従っ
て、輝度がもし250だとすれば、これに10ユニットを加
えて255となった時点で飽和することになる。
場合によっては、複数のオペレーションを組み合せ又
は入れ換えたことにより目標に近い満足できる結果が得
られることもあり、演算時間の短縮に寄与し得る。
又、この組み合せ又は入れ換えた場合の方が原オペレ
ーションの時に比し望む結果に近いというケースもあ
る。
尚、要求される条件としては、ピクセル値の演算を行
うことなしにオペレーションの詳細から結果画像の大き
さを定められること、及び画像データ又はマスクのピク
セル値を演算せずに前画像データ又はマスクのどのピク
セルが原画像データの演算に必要かを知り得ること、等
がある。
5.チャンク−第5図に示すように、画像データ及びマス
クは大きさが均一で四角形のチャンクが複数個集合して
構成されている。図示例におけるチャンクのサイズは12
8×128ピクセルである。こうしたチャンクのアレイは原
画像データに対応して形成されることが多いが、必ずし
もそうである必要はない。
更に、もしチャンクB内のデータなしにチャンクAの
演算が不可能な関係にある場合、チャンクAがチャンク
Bに依存している。
そして、チャンク演算順序における絶対的な制約条件
は、当然のことであるが、被依存チャンクの演算を依存
側チャンクの演算に先立って実行することである。
III.処理方法 画像データ処理を構成する一方法として、要求−駆動
(demand−driven)型式が知られている。これは、以下
に述べる帰納的処理を用いて所望の最終画像データチャ
ンクを得るための演算を実行する。
処理方法−バージョン1 一のチャンクを演算する場合、まず該チャンクの依存
する全チャンクを求める。その後入力チャンクに対して
ログファイル内に規定されたオペレーションの基本処理
を実行して所望の出力チャンクを得る。
このように単純な処理であるが、この方法における問
題は、得られた出力チャンクを後続する複数のチャンク
の演算に用いなければならないことで、こうした不効率
は可能ならば避けたい。
ところが、一度演算の完了したチャンクを次の使用の
ために保持するか否かの判断の拠りどころとなる情報が
存在しない。
これに対する最も容易な解決法を次に述べる。
処理方法−バージョン2 1.複数のチャンク対間における“依存−被依存”“次の
〜の為に必要”関係をログファイルを用いて検索・記録
する。
2.得られた依存情報に基づき、重複演算の回避及びディ
スクへのアクセス回数の最小化を図りつつチャンクの演
算順序を決定する。
3.規定された順序で実際に各チャンクを演算する。そし
て一のチャンクの演算が終了するとこのチャンクを「必
要とされる」リストから除去する。
「必要とされる」リストが現在空白であればその対応
メモリスペースは開放される。
また、ディスク内に中間チャンクを保持する必要があ
る場合、どのチャンクがその後時間的に最も遅く必要と
されるかを演算して割り出し、ディスク内に記録してお
くべきチャンクを選び出す。
ところが、以上述べた方法を実施するに際して種々の
問題が生ずる。
まず、ステップ1で全てのチャンク相互の依存関係を
求めるわけであるが、依存性を知る必要のあるチャンク
は限られていて、特に対話型式で映像形成を行う場合な
どその傾向が強い。こうした場合、現実に演算が行われ
るチャンク相互の依存関係が判れば済む。
第2に、必要なチャンク全てが常に演算されるとは限
らないということで、例えばいわゆるぼけオペレーショ
ン等が施されると、各チャンクはいくつかの隣接するピ
クセル又はチャンクにまたがった依存性を持つこともあ
る。しかし、この場合これらの隣接したチャンク全てを
演算する必要はない。
第3の問題は、上記第2の問題に関連することである
が、上述した依存性が隣接チャンクに対し必要以上に速
く拡大してしまうことである。
今、2回連続でぼけオペレーションを画像データに対
し実行した場合を想定する。画像データAをぼけオペレ
ーションして画像データBを得た後、更に画像データB
をぼけオペレーションして画像データCにする。画像デ
ータの大きさは変化しないものとする。
又、各画像データのチャンクのサイズも同一である。
このような状況の下では画像データBのチャンクは画
像データA内の隣接チャンクに、そして画像データCの
チャンクは画像データBの隣接チャンクそして同様に画
像データAの大きな隣接チャンクに依存することとな
る。
ところが実際には、こうした依存性が外に向けてそれ
程高速で移動する必要はなく、良好な結果を得るには画
像データCな画像データAの比較的面積の小さな隣接部
に依存しているだけの方が望ましい。
従って、全チャンクを演算すべきものと取扱い又全て
を必ずしも演算しないとする場合でも、次の2点の効率
面での不都合を否めない。すなわち、必要でないチャン
クの依存性までわざわざ演算してしまうこと、及び本来
必要とする以上の数のチャンクの演算を進めてしまうと
いうことである。これらは以下の対応にて解決できる。
処理方法−バージョン3(理想バージョン) 1.各オペレーションにおける入力となる画像データ及び
該各オペレーションの結果生成される画像データの大き
さを決定する処理をログファイルの最初から最後まで通
して実行する。
各画像データに対し、初期には存在しないが、画像デ
ータの演算対象となる領域に関する記述が付与されてい
る。
又、各画像データ画素におけるチャンクの大きさも定
められる。
2.どの画像のどの領域が演算の最終結果となるかを決め
る(所要ディスクの節約及びこれら画像及び領域がログ
ファイルの終端でその時点で活性状態にあるため)。こ
れが「外部要求」と呼ばれるものである。
更に、このような各画像に対しその「演算対象領域」
についての記述が付加される。
3.リストを逆方向に進みつつ、各画像データに付し以下
の処理を実行する。
・各画像データにおける「演算対象領域」情報に基づ
き、演算対象領域をもつチャンクはどれか及びこの各チ
ャンクの中のどの部分が演算対象なのかを求める。
・演算対象である(少なくともその一部が)各チャンク
(これを以下「チャンクZ」と呼ぶ)に対し、以下の処
理を実行する。
−チャンクZの所望領域の演算を実施するために必要と
なる他の画像データのどのチャンクそしてそのどの領域
が必要かを決める。そしてこれらのチャンクのリストを
チャンクZが依存するチャンクのリストであるとして作
成する。
−チャンクZが依存する各チャンク(チャンクYと呼
ぶ)に対し、チャンクYを必要とするチャンクのリスト
にZを付加してもよい。
4.前ステップ3で発生した各チャンク相互の依存関係に
基づき、不必要な演算及びディスクへのデータ入出力を
抑制できるチャンクの演算順序を決め、これにより演算
順のチャンクリストが得られることになる。
過度に複雑化せずに所望の結果を達成できる好適なア
ルゴリズムを次に述べる。
−最終演算結果を構成するチャンクの組を定め、チャン
クを含まない演算順序リストを作成する。
−こうした各チャンク(左→右、上→下のラスタースキ
ャンにより対話対象となっている)に対し、“try−to
−schedule"処理を施す。
−帰納的“try−to−schedule"処理は以下の手順で勧め
られる。まず対象をチャンクzとすれば、該チャンクZ
が演算順序リスト上に既出のものならば、処理対象から
外す。そうでない場合にはチャンクZが依存している全
チャンクを割り出す(チャンクZの「依存」リストよ
り)。そしてそのような各チャンク(ラスタースキャン
の順)に対してtry−to−schedule処理が実行される。
しかる後、演算順序リストの終末部にチャンクZを付加
しておく。
5.演算リスト内の各チャンク(以下「チャンクZ」と呼
ぶ)に対し、順次以下の処理を進める。
・チャンクZの演算が行われるメモリペースの割り当て
を行い、チャンクZが依存する如何なるチャンクも混入
しないことを必要に応じディスクから読み出して確認す
る。この際利用可能なメモリスペースが足りない時は、
次の処理で対応する。
−その時メモリ内に存在している各チャンク(チャンク
Aと呼ぶ)に対し、演算リストのチャンクZから始まる
対話工程を、チャンクAに依存する一のチャンク(これ
をチャンクBAと呼ぶ)が見つかるまで進める。そしてチ
ャンクZとチャンクBAとの間に介在するチャンク(チャ
ンクBAを含む)の数を数え、これをtAと呼ぶ。
−n個のチャンク分のメモリスペースが必要ならば、メ
モリ内に存在しているチャンクの中から最も大きなtA
なるn個のチャンクを選出してこれらをディスクに保存
する。こうしてメモリスペースに必要な空きをつくる。
・チャンクZの現在必要な領域に対してだけその画像デ
ータを演算する。
・チャンクZが依存している各チャンクYの“必要とさ
れる”リストからチャンクZを削除する。もしその時に
チャンクYの“必要とされる”リストが空白ならば、チ
ャンクYの画像データを含むメモリスペースを開放す
る。
上記一連の説明は演算対象である画像データ又はチャ
ンクの領域記述の概念を利用した。この記述は簡略化す
ることも記述化することも自由であるが、唯一の必要条
件は、少なくとも演算対象となるピクセルがその中に含
まれるということになる。
この記述を最も簡単にすれば、例えば「このチャンク
又は画像データのいくつかのピクセルを演算する必要が
ある」等になるであろう。この場合、下位のオペレーシ
ョンに関するデータを持っているか否かを知るために全
チャンク又は画像データを演算しなければならない。
逆に最も複雑な記述とは必要な個々のピクセルを具体
的に列挙することである。こうすれば不必要なピクセル
も演算してしまうという不効率は確実に回避できるが、
そのためにはそれ自身の画像データ又はチャンクよりも
大きな補助データ構造が必要になる。
以上を考慮すれば、最も好適な方法は、全ての必要な
ピクセルを包含する四角形も記録するというもので、こ
うすれば時に演算不要のピクセルが混入することもなく
はないが、要求されるデータ構造を簡略化でき、その大
きさも固定できる。
IV.基本オペレーション ログファイル内に収納されている各オペレーションに
対し、以下の処理を適用可能でなければならない。
・結果画像データ又はマスクの大きさを、ピクセルデー
タを演算を行わずに求める(各オペレーションopに対す
るop−sizeファンクション)。
・結果画像データ又はマスクの領域が存在する前画像デ
ータのチャンクを該結果画像データ又はマスクのピクセ
ルデータを演算せずに求める(各オペレーションopに対
するop−dependencyファンクション)。
・結果画像データ又はマスクの領域を演算する(各オペ
レーションopに対する演算ファンクションop−)。
以下詳述するのは本発明内容に従属するオペレーショ
ン型式の例である。多くの対話オペレーションはよりシ
ンプルな最終説明へと凝縮でき、トーン−スケール曲線
図はルックアップテーブルへそしてマウスを用いたペイ
ンティング又はブラッシングはマスクへと凝縮すること
が可能になることが理解されよう。
さて、これらの記述には上述した3種のオペレーショ
ンに係る英記又は数学的記述が付加される。以下の付記
が記述において用いられる。
・I[x,y]…画像データIのピクセルx,yの値(CIELUV
カラーシステムのL*U*V等の選択されたカラースペ
ース内における全ての色の3要素)。
・I[x1‥x2,y1…y2]…x座標がx1〜x2でy座標がy1
〜y2である画像データIのピクセルで構成される四角
形。
・Ipixles,Ilines‥画像データIを包含する四角形内に
おけるピクセル数及びライン数。
・R…当該オペレーションを実行した結果得られた画像
データ又はマスク。
・マスク値の範囲…0(オフ)〜maskmax(オン) 以下に説明するオペレーションのそれぞれに対し、
“op−size"、“op−compute"及び“op−pixel−depend
encies"の処理が与えられる。
各チャンク相互間の依存性を定めるファンクションで
ある“op−dependencies"は、“op−pixel−dependenci
es"を用いて以下のように表すことができる。
1.与えられたチャンクR又は画像データ領域において含
まれる(又は演算が必要とされる)ピクセルを求める。
2.op−pixel−dependenciesのファンクションを用い
て、チャンクRが依存する前画像データ又はマスクのピ
クセルを求める。
3.上記ステップ2で求められたピクセルのいずれかを含
む前画像データ又はマスクの全チャンクRを求める。こ
れらがチャンクRの依存するチャンクである。
ここで、画像データは四角形状に配置された画像デー
タ及び付設された任意数のマスクから構成されていると
いう事実に適合したスペックが使用されていることを念
頭に置く必要がある。
このようなマスクの一種としてシェイプマスクが含ま
れ、このシェイプマスクは画像データの形状を特定する
作用を果す。
勿論、もし画像データが四角形状ならばこれをピクセ
ル値の全アレイとして組み込む必要はなくなるが、理論
上は尚画像データ中のどのピクセルが実際に四角形状の
境界を定めているかを求める役割を果しているとも言え
る。
そして、一の画像データは他の画像データを基に演算
されるものであるから、同様に対応するマスクも新画像
データに関連性を及ぼす。尚、オペレーションの中には
後述するようにマスク自体が変調又はシフトされるもの
もある。
また、オペレーションの多くにおいて、同一の画像デ
ータを用いるという状況のため、結果画像データと原画
像データとの対応部分が同一であるという状態が生じる
が、本発明の好適な実施例においてはこのような場合に
別々に分離した画像データを作成することなく、単一の
データを共用するという効率化を図ることができる。こ
の場合の対応処理はスペック内に同一のワードで組み込
まれている。
1.BACKGROUNDオペレーション 本オペレーションでは、指定された大きさ及び色の新
画像データを生成する。パラメータは次の通り。
・カラー…新画像データの色の3要素についてのスペッ
ク。
・ピクセル…新画像データのピクセル数。
・ライン…新画像データのライン数 background_size ファンクション: Rpixels=pixels, Rlines=lines background_pixel_dependencies ファンクション: 新画像データは前画像データには全く依存しない。
background_compute ファンクション: R[x,y]=0≦x<ピクセル 0≦Y≦ライン 一のマスク(画像)が新画像データに対応している。
R[x,y]=0≦x<ピクセルのmaskmax 0≦Y≦ライン 2.飽和及び色相変換(CHSATHUE)オペレーション 本オペレーションでは、画像データ内のピクセルの飽
和及び色相を変化させる。変化量又は変化の表現を調節
するためにマスクを使用してもよい。パラメータは次の
通りである。
・I…原画像 ・M…変化量を調節するために画像データIに付設され
たマスク。
・sat−change…飽和変化量(1.0=変化なし) ・hue−change…色相変化量(色相を回転させた角度) change_sat_hue_size ファンクション: Rpixels=Ipixels,Rlines=Ilines change_sat_hue_pixel_dependenciesファンクション: 四角形R[x1‥x2,y1‥y2]はM[x1‥x2,y1‥y2]及
びI[x1‥x2,y1‥y2]に依存している。
change_sat_hue_compute ファンクション: Rに対応するマスクはIに対応するマスクと同一であ
る; 以下の各要素を用いる。
satch=1+(sat−change−1) M[x,y]/maskmax huech=(hue−change)M[x,y]/maskmax R[x,y].1star=I[x,y].1star R[x,y].ustar=satch (cos(huech) I[x,y].ustar=sin(huech) I[x,y].vstar) R[x,y].vstar=satch (−sin(huech) I[x,y].ustar+cos(huech) I[x,y].vstar) Rは、Mがオフであると判明しているIと同一であ
る。
3.COPY(CLONE)オペレーション 本オペレーションは、画像データ中のある位置から他
の位置に向けてピクセル値を複写するもので、ピクセル
を定められた距離及び方向へ移動させることにより行
う。パラメータは次の通りである。
・I…原画像 ・M…マスク(オンオフにより値を書き込むべき位置を
示す)。
・xdist,ydist…ピクセルのx方向、y方向への移動量 copy_size ファンクション: Rpixels=Ipixels,Rlines=Ilines COPY_pixel_dependencies ファンクション: 四角形R[x1‥x2,y1‥y2]はM[x1‥x2,y1‥y2],M
[x1‥x2,y1‥y2]がオンであることが判明していない
I[x1‥x2,y1‥y2]及びM[x1‥x2,y1‥y2]がオフで
あることが判明していないI[x1−xdist‥x2−xdist,y
1−ydist‥y2−ydist]に依存する。
COPY_compute ファンクション: Rに対応するマスクはIに対応するマスクと同一; R[x,y]=I[x,y](1−M[x,y]/maskmax) +I[x−xdist,y−ydist]M[x,y]/maskmax Rは、Mがオフであることが判明していないIと同
一。
4.CROP オペレーション 本オペレーションは画像データのエッジを一部整える
作用をいう。エッジの大きさを減少させるわけである
が、ピクセルピッチや個々のピクセル値は変化させな
い。オペレーションのパラメータは次の通りである。
・I…原画像 ・result−pixel…結果画像データの幅 ・result−liness…結果画像データの高さ ・start−pixel…画像データIにおける第1のピクセル
が結果 画像データ上に現れた時のx座標 ・start−line…画像データIの第1ラインが結果範囲
に現われたy座標。
crop_size ファンクション; Rpixels=result_pixels, Rlines=result_lines, crop_pixel_dependencies ファンクション: 四角形R[x1‥x2,y1‥y2]は I[x1+start−pixel‥x2+start−pixel,y1+start −line‥y2+start−line] crop_compute ファンクション: Rのマスクは、画像データが画素がクロップされたの
と同様の方法でクロップされたIのマスクである。
R[x,y]=I[x+start−pixel,y+start−line]
他の全マスクに対しても同様。
5.CUTオペレーション 本オペレーションは原画像データから一部を抽出した
新画像データを生成する。原画像データは変化させな
い。原画像データから抽出すべき領域はマスクにより指
定される。パラメータは次の通り。
・I…原画像データ。
・M…その値を含めて抽出すべき領域を指定するマス
ク。
−rx,yy…マスクの境界(端線)の四角形を示すx,y座
標。
−rpixels,rlines,…マスク外領域がオフであることが
判明しているマスクの四角形状境界内におけるピクセル
とラインの数。
本オペレーションはR及びSの2個の出力画像データ
を持つ。その一方(R)は原画像データIに等しく、他
方(S)は画像データの抽出領域である。
cut_size ファンクション: Rpixels=Ipixels,Rlines=Ilines Spixels=rpixels,Slines=rlines cut_pixel_dependencies ファンクション: 四角形R[x1‥x2,y1‥y2]はI[x1‥x2,y1‥y2]に
依存している。
四角形S[x1‥x2,y1‥y2]はI[x1+rx‥x2+rx,y1
+ry‥y2+ry]及びM[x1+rx‥x2+rx,y1+ry‥y2+r
y]に依存する。
cut_compute ファンクション: 画像データRは画像データIと同一のマスクを持ち、R
の画像データデータとIの画像データとは等しい; マスクMは、(−rx,ry)分シフトされ、画像データS
の大きさにまでtruncateされた後に画像データSのシェ
イプマスクになる;Sは同様にシフトされクロップされた
後に画像データIからのマスクを相続する; S[x,y]=I[x+rx,y+ry]。
6.FILE−LOAD(ディスクから)オペレーション 本オペレーションは、ディスクから画像データ又はマ
スクを呼び出すもので、次の要素に依存する。
・画像データ名称…その画像データがファイルシステム
に収められている名称; 新画像データはディスクファイル内に保存されている
画像データと大きさが等しく、かつ前チャンクには依存
していない。
一画像データ全体又は一部のリコールには、ファイル
システムのサブルーチンを用いて、その画像データ(又
は任意のチャンクあるいはその四角形)の演算が行われ
る。画像データと共に保存されている全てのマスクは結
果画像データと関連するものと判断される。
7.FILE SAVE(ディスクへの)オペレーション 本オペレーションは画像データ又はマスクをディスク
ファイルとして保存するもので、次の条件に依存する。
・I…原画像又はマスク ・画像データ名称…ファイルシステムに納められている
その画像データの名称; ディスクファイル内に保存された画像データと保存さ
れつつある画像データとは大きさが等しい。
ディスクファイルは保存されつつある画像データの全
チャンクに依存し、ディスクファイル(又はその一部)
は、全画像データ又はその一部領域を保存するためにフ
ァイルシステムのサブルーチンにより演算される。画像
データに付随する如何なるマスクも同様に保存される。
8.Tonescaleオペレーション(密度調節及びコントラス
ト変化) 本オペレーションは、マスクにより変調を受けること
のある画像データのコントラスト及び中立密度レベルを
変化させるために行われ、以下のパラメータを含む。
・I…原画像 ・M…画像データIに付随したマスク(オンオフマス
ク)。
・lut…輝度のディスクリート範囲も新たな値にマップ
するルックアップテーブル。
lut_size ファンクション: Rpixels=Ipixels,Rlines=Ilines lut_pixel_dependencies ファンクション: 四角形R[x1‥x2,y1‥y2]はM[x1‥x2,y1‥y2]及
びI[x1‥x2,y1‥y2]に依存する。
lut_compute ファンクション: Rに付随する各マスクはIに付随する各マスクと等し
い。
Mv=M[x,y]/maskmax R[x,y] =(mv*lut(I[x,y]) Rは、Mがオフであると判明しているIと同一であ
る。
9.MAKE MASK FROM BOUNDARY(MMBOUNDARY)オペレーシ
ョン 本オペレーションでは、一組の境界スペックから新た
なマスクを作成する。境界スペックとは、閉五角形の各
頂点を表す座標のリストで、一の境界がクロスするとイ
ン又はアウト(マスクオン又はオフ)が切り替わる。こ
の境界自体は内側に位置していると考える。オペレーシ
ョンパラメータは次の通りである。
・I…マスクが付随した原画像 ・boundaries…各々が閉五角形の頂点を示す座標リスト
である境界スペックのリスト。
・sense…全ての境界の外側のピクセルがオンであるか
オフであるかを示す。
ここで、画像データ、そのクロップ境界及び付随する
マスクは本オペレーションによっては基本的に変化しな
いが、新たなマスクが付加された場合は例外となる。こ
の新マスクは次の処理にて特定される: 座標(x,y)と共に与えられたピクセルが一組の境界
をもって特定されるマスクの内側にあるか外側にあるか
を知るためには、次のオペレーションを実行する。
−該ピクセルに対するマスクの状態をOUTにする。
−境界スペックの各五角形におけるそれぞれの辺に対し
以下の処理を行う。
各辺の終点における座標は(x1,y1)及び(x2,y2)た
だしy2≧y1とする。
a)もしy<y1又はy2<yであれば、何も処理を実行し
ない。
b)もしy1<y<y2及び(x−x1)(y2−y1)=(x2
x1)(y−y1)であれば、当該ピクセルに対する状態を
BOUNDARYにセットする。
c)もしy1<y<y2及び(x−x1)(y2−y1)<(x2
x1)(y−y1)であれば、何も処理しない。
d)もしy1<y<y2及び(x−x1)(y2−y1)>(x2
x1)(y−y1)であれば、その時の状態がINの時はOUT
へ、逆にOUTの時はINへ、それぞれ切り替える。
e)y=y2及びx=x2であれば、その時の状態がINの時
はOUTへ、逆にOUTの時はINへ、それぞれ切り替える。
f)y=y1、x=x1であれば何も処理しない。
g)y=y1でx=x1の時は状態をBOUNDARYにセットす
る。
h)y=y2でx=x2の時は状態をBOUNDARYにセットす
る。
−もしピクセルの状態がIN又はBOUNDARYならば、マスク
に対しsenseパラメータの値を付与する。状態がOUTなら
ば、マスクに対しsenseパラメータの補足値を与える。
このアルゴリズムをピクセルグループへ一度に適用で
きれば、個々のピクセルに対する各辺のリスト全てにわ
たる対話工程を実行する必要はなくなる 10.MAKE MASK FROM COLOR SPECIFICATION(MMCOLORSPE
C)オペレーション 本オペレーションでは、カラーレンジのスペックから
マスクを生成する。カラーレンジとは、各ピクセルにお
けるピクセル値に対する論理条件をいう。
勿論、本オペレーションにおいてピクセル値又は隣接
ピクセルの他の状況に対する各種条件(組織、ローカル
バリアンス、赤色感度)をも包含することができるが、
ここでの記述は輝度、色相及び飽和に対する論理条件の
みに止める。
・I…マスクが付随され得る原画像 ・spec…各ピクセルに対し設定した論理条件 ・sense…論理条件が真である時にマスクがオンである
かオフであるか。
ここで、画像データ及び付随するマスクは本オペレー
ションによっては基本的に変化しないが、新たなマスク
が付加された場合は例外となる。この新マスクは次の処
理によって特定される: もし、spec(I[x,y])が真であれば R[x,y]=sense又は R[x,y]=maskmax−sense 11.MAKE MASK FROM GEOMETRIC OBJECT(MMGEOM,MMREC
T)オペレーション 本オペレーションはピクセル座標に関する条件を用い
て新たなマスクを生成するもので、これらにより幾何学
的画像を形成できる。パラメータは次の通りである。
・I…マスクが付随し得る原画像 ・spec…各座標位置に対する論理条件 ・sense…論理条件が真である時にマスクがオンである
かオフであるか。
ここで、画像データ及び付随するマスクは本オペレー
ションによっては基本的に変化しないが、新たなマスク
が付加された場合は例外となる。この新マスクは次の処
理によって特定される。
もしspec(x,y)が真ならば R[x,y]=sense又は R[x,y]=maskmax−sense 他に可能なspecとしては次のようなものが挙げられ
る。
・四角形(x1‥x2,y1‥y2): x1≦x≦x2及びy1≦y≦y2 ・半径rで中心がxc,ycの円: (x−xc+(y−yc≦r2 12.MAKE MASK FROM LOGICAL OPERATION(MMLOGICAL)オ
ペレーション 本オペレーションは、複数のマスクの値を組み合せて
新たなマスクを作成しようとするもので、反転、統合、
交叉等のオペレーションが含まれる。使用されるパラメ
ータは次の通りである。
・I…マスクが付随し得る原画像 ・expression…各ピクセルに対する論理条件 ・sense…論理条件が真である場合にマスクがオンであ
るかオフであるか。
ここで、画像データ及び付随するマスクは本オペレー
ションによっては基本的に変化しないが、新たなマスク
が付加された場合は例外となる。この新マスクは次の処
理によって特定される: もし、expressions(x,y)が真ならば R[x,y]=sense又は R[x,y]=maskmax−sense 13.MIRRORオペレーション 本オペレーションではリフレクション、90゜回転又は
組合せ等の作用を画像データ全体に対して施す。このオ
ペレーションは次の各パラメータに依存する。
・I…原画像 ・rr…回転又は反射のいずれかを定める id:同一(変化しない) hr:水平反射(垂直軸に関して) rr:垂直反射(水平軸に関して) in:180゜回転 dr:斜め反射(左上−右下軸に関して) or:他の斜め反射(右上−左下軸に関して) cw:時計方向への90゜回転 cc:反時計方向への90゜回転 mirror_size ファンクション: id,hr,rr,inの各オペレーションに対しては Rpixels=Ipixels, Rlines=Ilines; dr,or,cw,ccの各オペレーションに対しては Rpixels=Ipixels, Rlines=Ipixels mirror_pixel_dependencies ファンクション: x1=Ipixels−1−x2 x2=Ipixels−1−x1 y1=Ilines−1−y2 y2=Ilines−1−y1 id:R[x1‥x2,y1‥y2]がI[x1‥x2,y1‥y2]に依存す
る。
hr:R[x1‥x2,y1‥y2]がI[x1‥x2,y1‥y2]に依存す
る。
vr:R[x1‥x2,y1‥y2]がI[x1‥x2,y1‥y2]に依存す
る。
in:R[x1‥x2,y1‥y2]がI[x1‥x2,y1‥y2]に依存す
る。
dr:R[y1‥y2,x1‥x2]がI[x1‥x2,y1‥y2]に依存す
る。
or:R[y1‥y2,x1‥x2]がI[x1‥x2,y1‥y2]に依存す
る。
cw:R[y1‥y2,x1‥x2]がI[x1‥x2,y1‥y2]に依存す
る。
cc:R[y1‥y2,x1‥x2]がI[x1‥x2,y1‥y2]に依存す
る。
mirror_compute ファンクション: id:R[x,y]=I[x,y](RとIは同一) hr:R[x,y]=I[Ipixels−1−x,y] vr:R[x,y]=I[x,Ilines−1−y] in:R[x,y」=I[Ipixels−1−x,Ilines−1−y] dr:R[y,x]=I[x,y] or:R[y,x]=I[Ipixels−1−x,Ilines−1−y] cw:R[y,x]=I[x,Ilines−1−y] cc:R[y,x]=I[Ipixels−1−x,y] 原画像データIに付随するマスクは、Rに付随するマ
スクを納める場合に画像データに対して行われるのと同
様な手順で反射又は回転される。
14.PAINT COLOR又はLUMINANCE(Point)オペレーション 本オペレーションは、(マスクに応じて)一定の色を
画像データに混合する。後述するように、このオペレー
ションでは色の3要素全てを用いるが、3要素のいずれ
かのみ(例えば輝度のみ又は色相のみ)だけを変化させ
るよう処理することも可能である。パラメータは次の通
りである。
・I…原画像 ・M…原画像データIに付随し混合量を調節するマスク ・color…描かれている色の3要素のスペック; paint_color_size ファンクション: Rpixels=Ipixels, Rlines=Ilines paint_color_pixel_dependencies_ファンクション: 四角形R[x1‥x2,y1‥y2]はM[x1‥x2,y1‥y2]及
びM[x1‥x2,y1‥y2]がオンであることが判明してい
ないI[x1‥x2,y1‥y2](及び色の3要素のうち描か
れないものがある場合にはどこでもI[x1‥x2,y1
y2])に依存している。
pait−color−compute ファンクション: R[x,y]=color*M[x,y]/maskmax+I[x,y] *(1−M[x,y]/maskmax) Rに付随するマスクとIに付随するマスクとは一であ
る。
15.PASTE オペレーション 本オペレーションでは、原画像データへ画像データを
追加する処理を行う。原画像の大きさは変えない。
こうして貼り合された後の透明度や調子を整えるため
にマスクを用いることが可能である。オペレーションパ
ラメータは次の通りである。
・I…原画像 ・P…貼り合されている画像 ・Mi,Mp…それぞれI,Pに依存し、透明度を調節する。
・start−pixel…画像Pのピクセル(0,0)を画像Iに
貼り合せる位置のx座標 ・start_line…画像Pのピクセル(0,0)を画像データ
Iに貼り合せる位置のy座標 paste_size ファンクション: Rpixels=Ipixels, Rlines=Ilines paste_pixel_dependenciesファンクション: 四角形R[x1‥x2,y1‥y2]は、Mi[x1‥x2,y1‥y2
(又はMp[x1‥x2,y1‥y2]及びMi[x1‥x2,y1‥y2
(又は、Mp[x1‥x2,y1‥y2])がオンであることが判
明していないI[x1‥x2,y1‥y2]に依存し、又Mi[x1
‥x2,y1‥y2](又はMp[x1‥x2,y1‥y2])がオフであ
ることが判明していないP[x1‥x2,y1‥y2]に依存す
る。
ここで、 x1=x1−start_pixel x2=x2−start_pixel y1=y1−start_line y2=y2−start_line paste−compute ファンクション: R[x,y]=I[x,y]* (1−Mi[x,y]/maskmax) +P[x,y]*Mi[x,y]/maskmax又は R[x,y]=I[x,y]* (1−Mp[x,y]/maskmax) +P[x,y]*Mp[x,y]/maskmax x=x−start_pixel y=y−start_line Rは、Mi(又はシフトされたMp)がオフであるIと同
一である。
Rに付随するマスクとIに付随するマスクとは同一で
あるが、(start_pixel,start_line)分シフトされた付
加マスクをRが持つ場合は例外となる。
16.RESIZE オペレーション 本オペレーションは画像を新たなピクセル及びライン
数に規模変換(拡大又は縮小)するものである。パラメ
ータは次の通り。
・I…原画像 ・fx…x方向におけるスケール成分 ・fy…y方向におけるスケール成分 ・kernel…規模変換の実行に使用される、値を含む中核
(領域)のスペック(この中核の大きさはスケール成分
により変化する)。
−k_left…中核ピクセルの左方向への伸長 −k_right…中核ピクセルの右方向への伸長 −k_up…中核ピクセルの垂直上方への伸長 −k_down…中核ピクセルの垂直下方への伸長 注:nintは最も近い整数関数を表す。
qx(x)=x/fx qy(y)=y/fy resize−size ファンクション: Rpixels=nint(fx・Ipixels), Rlines=nint(fy・Ilines) resize−pixel_dependencies ファンクション: 四角形R[x1‥x2,y1‥y2]はI[qx(x1)−k_left
‥qx(x2)+k_right,qy(y1)+k_top‥qy(y2)+k
dottom]に依存する。
resize_compute ファンクション: k_right k_bottom R[x,y]= x=−k_left−y=−ktop I[nint(xs)+x,nint(y)+y] kernel[δ+x,δ+y)y ここで、δ=nint(xs)−xs, δ=nint(ys)−ys xs=qx(x), ys=qy(y)であり、Rに付随するマスクは画像データ
と同様に規模変換されたIに付随するマスクである。
上記各式において、 x<0ならばI[x,y]=I[0,y], x≧IpixelならばI[x,y] =I[Ipixels−1,y], y<0ならばI[x,y]=I[x,0], y≧IlinesならばI[x,y] =I[x,Ilines−1]である。
17.ROTATE オペレーション 本オペレーションは画像全体に対し任意角度の回転
(90゜単位の回転はMIRRORにより行われる)を与えるも
のであり、この時画像の形状も同時に回転する。パラメ
ータは次の通りである。
・I…原画像 ・x0,y0…画像Iの回転中心位置のx,y座標(ピクセル位
置とは限らない)。
.angle…回転角度(時計方向を正とし、度で表す) ・kernel…回転の実行に使用される中核ピクセルのスペ
ック。値を含む。
−k_left…左方向への中核ピクセルの伸長 −k_right…右方向への中核ピクセルの伸長 −k_up…垂直上方への中核ピクセルの伸長 −k_down…垂直下方への中核ピクセルの伸長 注:nintは最も近い整数関数、Miは画像データIのシュ
イプマスクである。
xrot(x,y angle)=x cos angle+sin angle yrot(x,y angle) =−x sin angle+y cos angle xmin(M,xc,yc,angle)=Xrot(x−xc,y−yc,angle) 上でのmin M[x,y] xmax(M,xc,yc,angle)=xrot(x−xc,y−yc,angle) 上でのmax M[x,y] ymin(M,xc,yc,angle)=yrot(x−xc,y−yc,angle) 上でのmin M[x,y] xn=x0−xmin(Mi,x0,y0angle) yn=y0−ymin(Mi,x0,y0angle) rotate−size ファンクション; Rpixels=nint(xmax(Mi,x0,y0angle)) −nint(xmin(Mi,x0,y0angle)) Rlines=nint(ymax(Mi,x0,y0angle)) −nint(ymin(Mi,x0,y0angle)) rotate−pixel−dependecies ファンクション: 四角形R[x1‥x2,y1‥y2] はI[x1−k left‥x2+k right,y1−k top‥y2k
+bottom] ここで、 x1=x0+xmin(M,xn,yn,angle) x2=x0+xmax(M,xn,yn,angle) y1=y0+ymin(M,xn,yn,angle) y2=y0+ymax(M,xn,yn,angle) MはMiと四角形[x1‥x2,y1‥y2]の回転バージョン
の交点である。
rotate−compute ファンクション: k_right k_bottom R[x,y]= x=−K_left−y=−k_top nint(yy+y]kernel (δ+x,δ+y) ここで、δ=nint(xr)−xr, δ=nint(yr)−yr 及び xr=x0+xrot(x−xn,y−yn,−angle) yr=x0+yrot(x−xn,y−yn,−angle) である。
画像データIと共に回転するマスクがRに付随する。
上記各式において、 x<0ならばI[x,y]=I[0,y], x≧IpixelならばI[x,y] =I[Ipixels−1,y], y<0ならばI[x,y]=I[0,y], y≧IlinesならばI[x,y] =I[x,Ilines−1]である。
18.SHARPEN AND BLUR オペレーション 本オペレーションにおいては、マスクにより指定され
た量だけ画像データに対し尖鋭化又はぼけ処理を施す。
パラメータは次の通りである。
・I…原画像 ・M…画像Iに付随するマスク ・strength…尖鋭化又はぼけ化の量 ・kernel…尖鋭化又はぼけ化オペレーションの対象領域
(中核ピクセル)(値を含む)。
−k_left…対象領域を左方向への伸長させる。
−k_right…対象領域を右方向への伸長させる。
−k_up…対象領域を垂直上方への伸長させる。
−k_down…対象領域を垂直下方への伸長させる。
sharpen_blur_size ファンクション: Rpixels=Ipixels, Rlines=Ilines sharpen_blur_pixel_dependencies ファンクション: 四角形R[x1‥x2,y1‥y2]はM[x1‥x2,y1‥y2]及
びM[x1‥x2,y1‥y2]がオンであると判明していない
I[x1−k_left‥x2+k−right,y1−k_top‥y2+k_bot
tom]双方に依存し、またM[x1‥x2,y1‥y2]がオフで
あると判明しているI[x1‥x2,y1‥y2]のみに対して
も依存する。
sharpen_blur_compute_ ファンクション: Rに付随するマスクはIに付随するマスクと同一であ
る。
R[x,y]=I[x,y]+strenght (R[x,y]M[x,y]/maskmax+I[x,y] (1−M[x,y]/maskmax)−I[[x,y]) ここで、 k_right k_bottom R[x,y]= x=−k_left y=−k_top I[x−x,y−y]・kernel(x,y) Rは、MがオフであるIと同一。
上記各式において、 x<0ならばI[x,y]=I[0,y], x≧IpixelならばI[x,y] =I[Ipixels−1,y], y<0ならばI[x,y]=I[x,0], y≧IlinesならばI[x,y] =I[x,Ilines−1]である。
19.SHIFT COLOR and LUMINANCE(Balance)オペレーシ
ョン 本オペレーションでは、画像データのピクセルに対し
色及び輝度のシフトを施す。変化量又は変化呈示度合を
調節するためにマスクを使用し得る。パラメータは次の
通りである。
・I…原画像 ・M…Iに付随し変化量の調節作用を果すマスク ・1_change…光座標におけるシフト量 ・u_change…u座標におけるシフト量 ・v_change…v座標におけるシフト量 shift_color_size ファンクション: Rpixels=Ipixels, Rlines=Ilines shift_color_pixel_dependencies ファンクション: 四角形R[x1‥x2,y1‥y2]はM[x1‥x2,y1‥y2]及
びMI[x1‥x2,y1‥y2]に依存する。
shift_color_computeファンクション: R[x,y]・lightness=I[x,y]・lightness +1_changeM[x,y]/maskmax, R[x,y]・ustar=I[x,y]・ustar +u_changeM[x,y]/maskmax), R[x,y]・vstar=I[x,y]・vstar +v_changeM[x,y]/maskmax Rは、MがオフであるIと同一である。
Rに、付随するマスクはIに付随するマスクと同一で
ある。
20.STRETCH オペレーション 本オペレーションでは、ピクセル又はラインのコラム
を画像の端縁部又は画像内で複製することにより、画像
を水平又は垂直方向に引き伸す。パラメータは次の通り
である。
・I…原画像 ・hv…引き伸ばし方向が水平か垂直か ・pl…複製すべきピクセル又はラインの番号 ・nrep…コラム又はローの複製回数(nrep=0は画像デ
ータへ本処理を行わないことを意味する)。
k<plのときはk、 また、S(K)=pl≦k≦pl+nrepのときはpl、pl+
nrep<kのときはk=nrepであると、水平方向の引き伸
しは次のようになる。
stretch_pixel_dependenciesファンクション: 四角形R[x1‥x2,y1‥y2]はI[S(x1)‥S
(x2),y1‥y2)に依存する。
stretch_compute ファンクション: R[x,y]=I[S(x),y] Rに付随するマスクは、画像データIに付随しIと同
様の方法で引き伸ばされたマスクと等しい。
垂直方向への引き伸ばし: stretch_size ファンクション: pixels(R)=pixels(I), lines(R)=lines(I)+nrep stretch_pixel_dependencies ファンクション: 四角形R[x1‥x2,y1‥y2]はI[x1‥x2,S(y1)‥
S(y2)]に依存する。
stretch_compute ファンクション: R[x,y]=I[x,S(y)] Rに付随するマスクは、Iに付随しIと同様な方法で
引き伸されたマスクである。
21.MAKE Image from Mask(IMAGEFROMMASK)オペレ
ーション 本オペレーションはマスクを画像データへ変換するも
ので、単一のパラメータとして入力マスクMIを用いる。
make_image_from_mask_pixel dependencies ファンク
ション: 四角形R[x1‥x2,y1‥y2]はM[x1‥x2,y1‥y2]に
依存する。
make_mask_from_image_compute ファンクション: 新画像データの各ピクセル値は中立(無色)値に変換
されたマスクの対応ピクセル値に等しい。これによりマ
スク値(最小から最大まで)の範囲は輝度値の全範囲に
変換される。そして、色の各要素は中立色となる値にセ
ットされる。
22.Make Mask from Image(MMIMAGE)オペレーショ
ン 本オペレーションでは、画像データをマスクに変換す
ると共に変換されたマスクを基本画像データに付随させ
るという作用を行う。入力画像データは新画像データと
任意に位置決めされる。オペレーションパラメータは次
の通りである。
・入力画像データ ・基本画像データ ・x及びy位置 本オペレーションの結果として得られる画像は、マス
クが付加された以外は基本画像と変わるところはない。
基本画像に対するマスクの位置関係は位置パラメータx,
yとして与えられる。そして、マスクの各ピクセル値は
その範囲がマスク値範囲に入るように定められた入力画
像データの輝度値となる。
23.Delete Mask オペレーション 本オペレーションは画像からマスクを除去する方法
で、パラメータは次の2つである。
・入力画像データ ・マスク判別器 本オペレーションの結果得られる画像データは、マス
クがないこと以外入力画像データと変わらない。除去さ
れるピクセルはマスク判別器にて確認される。
24.Make a mask by brushing(MMBRUSH)オペレーショ
ン 本オペレーションはマウス又はジョイスティック等の
対話式装置の動作に従って新しいマスクを生成しようと
するものである。これらのインターフェースはユーザの
オペレーションの完全な記述を作成するものであること
が要求される。こうした記述を用いて入力画像データに
対する新マスクが形成される。得られた画像データはマ
スクが付加されている以外の入力画像データと変わらな
い。
尚、対話動作の型式にはいくつかの方法を採用でき
る。
1)配置装置が通過した座標位置のリスト。これは記憶
には便利であるが、演算を行うには不適である。
2)数字のアレイ。このアレイのディメンションはその
動作経路内で最大許容領域内に入るよう対応設定されて
いる。アレイ内における各素子の値は配置装置が対応ピ
クセルを通過する回数を示し、これはユーザがスケール
成分を特定することで複製される。この値がマスク値と
なり、マスクの大きさがアレイの大きさでもある。
V.例 以下、本発明方法の具体例を第4図、第5図及び「オ
ペレーションログ例」を参照しつつ説明する。
図示例におけるログの第1のコマンドは、FILELOAD
で、これによりディスクファイル18へ所定の画像データ
がロードされる。実施例においては画像データI15が処
理装置16へ表示のために伝送される。
次いでCROPオペレーションが実行され、クロッピング
処理により画像データ幅IW、画像データ高さIH、x方向
及びy方向のスタートピクセルが定められる。第4図に
示したクロップされる画像データ200は完全画像データI
15から抽出されたものである。第5図では、原FILELOAD
はそれぞれ数字記入にて特定されたピクセルのチャンク
からなることが表されている。
CROPオペレーションにより得られた画像データ領域を
構成するチャンク数は少なくなっており、クロッピング
オペレーションの演算を実行するためにロードされた完
全画像データのどのチャンクを用いるのかを示す接続リ
ンクが描かれている。例えば、チャンク5はFILELOAD内
のチャンク1,2,3及び4は依存している。明瞭化を考慮
して、図示例では依存関係を示すリンクは一部だけを示
す。
その後ログ内から選択されるオペレーションはSHARPE
Nで、ここでは画像データはマスクM1を用いて尖鋭化さ
れ、尖鋭度は3である。
第4図において尖鋭化オペレーションにより得られた
画像データは202で示され、第5図でクロッピングオペ
レーション及びFILELOADオペレーションにより得られた
画像データのうち尖鋭化対象となるチャンク及びその依
存関係を示す接続リンクを示す。
尖鋭化された画像データ202から、MMRECTオペレーシ
ョンにより切り抜き画像データ204が抽出され、四角形
で包囲される。そしてこの画像データはI20の名称でデ
ィスクファイル18へ保存される。
次に行われるCHSATHUEオペレーションでは、前画像デ
ータの飽和及び色相を変化させる処理が第4図のブロッ
ク207で行われ、その結果画像データを212で示す。
更に、こうして得られた画像データへMMBRUSHを施
す。
そして更に画像データI21上にぼけオペレーション214
を施すことによりブロック208において画像データI21を
生成する。
その後、FILESAVEオペレーションにより全チャンク及
びピクセルをディスクファイル18へ納め、保存する。
次いでFILELOADオペレーションによりブロック201で
示す画像データファイルI20をプロセス16へロードして
対話オペレーションに入る。
更に、MIRRORオペレーションにより、画像データI20
のピクセル素子の順序を逆にしてブロック206で表され
たmirrorバージョンI22へ伝送する。
次に要求されるオペレーションはFILESAVEであり、画
像データファイル22がディスクメモリ18に保存されるよ
う指示する。
その次に、画像データI21のFILELOADを行う。FILELOA
Dオペレーションにより、オペレーションログ内では貼
り合せオペレーションからなる画像データの対話処理が
可能となる。オペレーション206にて得られたミラー画
像データは画像データI21へ貼り合せられる。こうして
生成された複合画像データはディスク18内にFILESAVEさ
れ、画像データI30として保存される。
第5図から認識できるように、最終画像データを構成
しているチャンク自体は原画像のチャンクと同等である
が、そのうちのいくつかが演算処理を受け、又各オペレ
ーションレベルへ反映した前オペレーションにより変調
されている。
又、所定の中間画像データにおけるいくつかのチャン
クに対しては全く演算処理を施す必要はない。
[発明の効果] 以上説明したように本発明によれば、まず得ようとす
る最終画像データを特定し、そのために必要なピクセル
及び処理を予め把握してからオペレーションを実行する
構成としたので、本画像に対しても最少限のメモリ容量
と処理時間で所望の画像データを実現でき、その処理を
全面的に対話型式で実行できるという利点が得られる。
[付記] 尚、本発明は上記実施例に基づき、以下のような各構
成態様とすることも好適である。
(1)以下a)〜t)の各ステップを含み、アドレス指
定型メモリを持つデジタルコンピュータを用いた対話型
大画像データ処理方法: a)アドレス指定型メモリ内へピクセル素子のアレイと
して大画像データを格納するステップ; b)大画像データに対し実行される各オペレーションの
ログを構成するステップ; c)前記ログ内における各オペレーションに対し、どの
ピクセル素子のグループを使用するかを決定するステッ
プ; d)前記ピクセル素子の各グループからピクセルのチャ
ンクを形成するステップ; e)前記ログ内の処理を逆順序で進め、演算に供される
べきチャンク及び該演算が他のどのチャンクに依存する
かを決定するステップ; f)チャンク演算の最効率順序を決定するステップ; g)各チャンクの演算が行われる前記アドレス指定型メ
モリ内におけるメモリスペースの割り当てを行うステッ
プ;及び h)前記ログ内で順方向に処理を進め、依存関係の消滅
した各チャンクをログ内から削除するステップ。
(2)以下a)〜h)の各ステップを含むことを特徴と
する対話型大画像処理方法: a)最終画像データの表示すべき部分を決定するステッ
プ; b)最終画像データへ到達するために画像データに対し
実行される前オペレーションのログを構成するステッ
プ; c)前記ログ内で逆方向に処理を進め、各オペレーショ
ンにおける入力として必要とされるピクセルを決定する
ステップ; d)前記ログ内で順方向に処理を進め、後段の処理に必
要とされまた該ログ内のオペレーションを含む全オペレ
ーションを表す画像データの一部ともなるピクセルグル
ープを決定するステップ; e)前記各ピクセルをチャンクグループに分割するステ
ップ; f)前段のチャンクに依存するチャンクを決定するステ
ップ; g)前段のチャンクの演算後にこれに依存するチャンク
が演算されることを除く、任意の手順にてチャンクを演
算するステップ;及び h)不要となったチャンクをログから削除するステッ
プ;。
(2)以下a)〜c)の各ステップを含むことを特徴と
する対話型大画像処理方法: a)大デジタル画像データに対して実行される各オペレ
ーションのログを構成するステップ; b)前記ログ内で逆方向に処理を進め、所望の出力画像
データを得るにはデジタル画像データのどのピクセルを
演算すべきかを決定するステップ;及び c)依存ピクセルのチャンクを形成すると共に最終処理
結果を得るために必要とされるチャンクだけをストレー
ジから呼び出すことにより、格納されるデータ量が最小
限に抑制されるよう前記決定されたピクセルの演算を順
序付けるステップ。
(4)上記(3)に記載の方法において、更に前記ログ
内で順方向に処理を進めて処理画像データを得るステッ
プを含むことを特徴とする対話型大画像処理方法。
(5)上記(4)に記載の方法において、更に不要とな
った使用済のチャンクをストレージから削除するステッ
プを含むことを特徴とする対話型大画像処理方法。
(6)以下a)〜d)の各ステップを含むことを特徴と
する対話型大画像データ処理方法: a)ユーザが大画像に対し実行を望む各オペレーション
のログを構成するステップ; b)ログ内で逆手順で処理を進め、全オペレーションを
完了するために必要となる画像データの領域を決定する
ステップ; c)上記ステップb)において決定された画像データ領
域だけを格納するステップ;及び d)ログ内で順方向に処理を進め、上記ステップc)に
おいて格納された画像データ領域に対しオペレーション
を実行するステップ。
(7)以下a)〜f)の各ステップを含むことを特徴と
する対話型大画像データ処理方法: a)出力画像データを得るために画像データに対し実行
される全オペレーションのファイルを構成するステッ
プ; b)前記ファイル内で最初から最後まで処理を進め、各
オペレーションにおける入力となる画像データ及び各オ
ペレーションの結果得られた画像データのサイズを決定
するステップ; c)各画像データに対しその演算対象となる領域につい
ての記述を関連づけるステップ; d)どの画像データのどの部分がステップc)における
演算の最終結果であるかを決定するステップ; e)他の領域が依存する全画像データ領域を演算するス
テップ;及び f)ログファイル内の全オペレーションを実行して出力
画像データを生成するステップ。
(8)以下a)〜g)の各ステップを含むことを特徴と
する対話型大画像処理方法: a)出力画像データを得るため画像データに対し実行さ
れる全オペレーションのファイルを構成するステップ; b)前記ファイル内で最初から最後まで処理を進め、各
オペレーションにおける入力となる画像データ及び各オ
ペレーションの結果得られた画像データのサイズを決定
するステップ; c)各画像データからチャンクを形成するステップ。
b)各チャンクをその依存性に基づき演算する順序を決
定するステップ; e)あらゆる重複演算を除去するステップ; f)順序演算を実行すると共に、以降の演算には不要と
なったチャンクを除去するステップ;及び g)演算されたチャンクを用いてログファイル内の全オ
ペレーションを実行し、出力画像データを得るステッ
プ。
(9)以下a)〜g)の各ステップを含むことを特徴と
する対話型大画像データ処理方法: a)出力画像データを得るために画像データに対し順次
実行される全オペレーションのファイルを編成するステ
ップ; b)前記ファイル内で最初から最後まで処理を進め、各
オペレーションにおける入力となる画像データ及び各オ
ペレーションの結果得られた画像データのサイズを決定
するステップ; c)各画像データのチャンクを形成するステップ; d)どの画像データのどの領域が演算の最終結果となる
かを決定するステップ; e)前記ファイル内で逆順序に画像データ処理を進め、
各画像データに対し以下の処理を実行するステップ; i)前記ステップb)において演算されるべく決定され
た画像データ領域に基づき、どのチャンクが演算される
べき領域を持っているかを決定する。
ii)演算が行われる各チャンクに対し、他のどのチャン
クのどの領域が上記i)におけるチャンクの演算を行う
べきかを決定する。
f)上記i)及びii)で決定されたチャンクの演算順序
を決定し、不必要な演算を排除するステップ;及び g)ファイル内の全オペレーションを実行して出力画像
データを得るステップ。
【図面の簡単な説明】
第1図は本発明に係る方法を適用可能な画像データ処理
装置の外観斜視図、 第2図は画像データに対応しx及びyの座標値が与えら
れたピクセルのアレイを示す図、 第3図は第2図に係るアレイ上に配置されたマスクを示
す図、 第4図は本発明に係るオペレーションログの一例を表す
フローダイヤグラム図、 第5図は第4図に係るフローダイヤグラムにおけるチャ
ンクの依存関係図である。 16……CPU 18……ディスクファイル I……原画像データ M……マスク

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】対話型大画像処理方法であって、 a)大画像データに対し実行される逐次オペレーション
    のログを形成するステップと、 b)前記大画像データを、イメージスキャナを用いてピ
    クセル素子のアレイに変換するステップと、 c)前記ログ内の各オペレーションにおいて使用される
    べきピクセル素子を決定するステップと、 d)前記ログ内を逐次オペレーションの流れに逆らって
    前記決定された各ピクセル素子の演算を順序づけ、次段
    の処理ステップに必要なピクセル素子のグループを決定
    するステップと、 e)前記ログの流れに沿って進める各オペレーションに
    おいて前記決定されたピクセル素子に対してのみ演算を
    実行すると共に、処理が完了したピクセル素子をコンピ
    ュータメモリから削除するステップと、 を含み、ステップc)〜e)はオペレーション毎に繰り
    返し実行されることを特徴とする対話型大画像処理方
    法。
  2. 【請求項2】対話型大画像処理方法であって、 a)大デジタル画像データに対して実行される各オペレ
    ーションのログを構成するステップと、 b)前記ログ内で逆方向に処理を進め、所望の出力画像
    データを得るにはデジタル画像データのどのピクセルを
    演算すべきかを決定するステップと、 c)依存ピクセルのチャンクを形成すると共に最終処理
    結果を得るために必要とされるチャンクだけをストレー
    ジから呼び出すことにより、格納されるデータ量が最小
    限に抑制されるよう前記決定されたピクセルの演算を順
    序付けるステップと、 を含み、ステップb)〜c)はオペレーション毎に繰り
    返し実行されることを特徴とする対話型大画像処理方
    法。
  3. 【請求項3】対話型大画像データ処理方法であって、 a)ユーザが大画像に対し実行を望む各オペレーション
    のログを構成するステップと、 b)ログ内で逆手順で処理を進め、全オペレーションを
    完了するために必要となる画像データの領域を決定する
    ステップと、 c)上記ステップb)において決定された画像データ領
    域だけを格納するステップと、 d)ログ内で順方向に処理を進め、上記ステップc)に
    おいて格納された画像データ領域に対しオペレーション
    を実行するステップと、 を含むことを特徴とする対話型大画像処理方法。
JP1323667A 1989-01-05 1989-12-12 対話型大画像処理方法 Expired - Fee Related JP2617007B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/293,792 US4910611A (en) 1989-01-05 1989-01-05 Method for doing interactive image processing operations on large images
US293792 1989-01-05

Publications (2)

Publication Number Publication Date
JPH02228175A JPH02228175A (ja) 1990-09-11
JP2617007B2 true JP2617007B2 (ja) 1997-06-04

Family

ID=23130601

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1323667A Expired - Fee Related JP2617007B2 (ja) 1989-01-05 1989-12-12 対話型大画像処理方法

Country Status (4)

Country Link
US (1) US4910611A (ja)
EP (1) EP0377389B1 (ja)
JP (1) JP2617007B2 (ja)
DE (1) DE68926952T2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5142667A (en) * 1990-09-28 1992-08-25 Xerox Corporation Resource and memory management algorithms for electric printing and electronic reprographic systems
US5327248A (en) * 1992-03-23 1994-07-05 Ricoh Company, Ltd. Compressed image virtual editing system
EP0599098B1 (en) * 1992-11-24 2002-02-06 Eastman Kodak Company Multiple versions of storage phosphor image
EP0691011B1 (en) * 1993-03-25 2002-09-04 MGI Software Corporation Method and system for image processing
US5473740A (en) * 1993-12-29 1995-12-05 International Business Machines Corporation Method and apparatus for interactively indicating image boundaries in digital image cropping
AUPO886397A0 (en) * 1997-08-29 1997-09-25 Canon Kabushiki Kaisha Utilisation of caching in image manipulation and creation
JP3352982B2 (ja) * 1999-09-14 2002-12-03 株式会社スクウェア レンダリング方法及び装置、ゲーム装置、並びに立体モデルをレンダリングするプログラムを格納するコンピュータ読み取り可能な記録媒体
US8112831B2 (en) * 2007-03-17 2012-02-14 Cook Joseph R Methods of manufacturing and installation of prefabricated shower benches and associated shower benches
US8582919B2 (en) 2007-09-24 2013-11-12 Microsoft Corporation Altering the appearance of a digital image using a shape
US10032435B2 (en) * 2014-10-02 2018-07-24 Nagravision S.A. Accelerated image gradient based on one-dimensional data
US11049289B2 (en) * 2019-01-10 2021-06-29 General Electric Company Systems and methods to semi-automatically segment a 3D medical image using a real-time edge-aware brush
US11773603B2 (en) 2021-09-23 2023-10-03 Tile Redi, Llc Reinforced floors for modular bathrooms

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4805138A (en) * 1985-08-23 1989-02-14 Texas Instruments Incorporated An unerasable eprom cell
EP0249661B1 (en) * 1986-06-16 1991-08-21 International Business Machines Corporation Image data display system
CA1272312A (en) * 1987-03-30 1990-07-31 Arthur Gary Ryman Method and system for processing a two-dimensional image in a microprocessor

Also Published As

Publication number Publication date
DE68926952T2 (de) 1997-03-13
JPH02228175A (ja) 1990-09-11
EP0377389A3 (en) 1992-08-05
EP0377389B1 (en) 1996-08-14
EP0377389A2 (en) 1990-07-11
DE68926952D1 (de) 1996-09-19
US4910611A (en) 1990-03-20

Similar Documents

Publication Publication Date Title
JP3497187B2 (ja) 画像処理システム用画像編集装置
USRE43747E1 (en) Method and system for image processing
US7436531B2 (en) Systems and methods for using multiple processors for imaging
JP2617007B2 (ja) 対話型大画像処理方法
JP4766657B2 (ja) 画像処理装置及びその制御方法、プログラム
US20120229501A1 (en) Method and a Computer System for Displaying and Selecting Images
US20040263533A1 (en) Image processing apparatus, image processing method, program for implementing image processing method, and recording medium recording program
JPH07104958B2 (ja) データ表示システムを作動させる方法
JPH0439112B2 (ja)
JPH09190546A (ja) 自動画像編集装置
JP4063918B2 (ja) 表示のためのグラフィックス情報を含むイメージを作成する装置と方法
US6122069A (en) Efficient method of modifying an image
JPH07110568A (ja) 白版図形修正方法
JPH0457570A (ja) 画像処理装置
JP3890096B2 (ja) 画像編集システム
JPH0767136B2 (ja) 画像処理装置
JPH0276073A (ja) 描画装置
US7587086B2 (en) Identifying selected pixels in a digital image
JPH09190538A (ja) 画像処理装置およびその方法
JP2578785B2 (ja) 画面作成処理方法
JP3517982B2 (ja) 図形描画装置
JPH0620038A (ja) 画像処理装置
US6400369B1 (en) Information processing method and apparatus for generating texture-data for computer graphics
JPH06337930A (ja) 画像処理装置及び方法
JPH0581397A (ja) ページスクロール方法及び画像処理装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees