JP2821452B2 - Color image processing method - Google Patents

Color image processing method

Info

Publication number
JP2821452B2
JP2821452B2 JP9013938A JP1393897A JP2821452B2 JP 2821452 B2 JP2821452 B2 JP 2821452B2 JP 9013938 A JP9013938 A JP 9013938A JP 1393897 A JP1393897 A JP 1393897A JP 2821452 B2 JP2821452 B2 JP 2821452B2
Authority
JP
Japan
Prior art keywords
color
data
color image
image
address
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
JP9013938A
Other languages
Japanese (ja)
Other versions
JPH09179972A (en
Inventor
衞 佐藤
秀史 大沢
尚登 河村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP9013938A priority Critical patent/JP2821452B2/en
Publication of JPH09179972A publication Critical patent/JPH09179972A/en
Application granted granted Critical
Publication of JP2821452B2 publication Critical patent/JP2821452B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 【0001】 【発明の属する技術分野】本発明は、カラー画像データ
に施される処理の処理条件を決定するカラー画像処理方
法に関する。 【0002】 【従来の技術】カラープリントの分野においては、従
来、色修正等の処理条件を決定するにあたっては、実際
に複数の処理条件のもとでのプリントを行い、最適な条
件を選択するのが一般的であった。 【0003】 【発明が解決しようとする課題】しかしながら、このよ
うな調整方法では、調整の手間やコストがかかってしま
うという問題点があった。 【0004】他方、このような問題を解決するために、
モニタ上で処理条件を決定することが考えられる。 【0005】ところが、特にカラー画像の処理条件を決
定するにあたって、処理対象となるカラー画像データそ
のものを変更してモニタ上で処理条件を決定しようとす
ると、データ処理に時間がかかったり、データの劣化が
生じるなどの問題が生じる。 【0006】そこで本発明は、カラー画像に施される処
理の処理条件を効率良く決定することができるカラー処
理方法を提供することを目的とする。 【0007】 【課題を解決するための手段】上記課題を解決するた
め、本発明は、複数のカラー画像データの夫々に基づく
カラー画像を表示手段(例えば、本実施例では、図1に
示すカラーCTR10に相当する)上に表示させ、前記
表示手段上に表示されたカラー画像に対する色修正処理
のための指示を受け付け、該指示に従った色修正処理を
該カラー画像に対して行い(例えば、本実施例では、図
18に示すステップ216に相当する)、該色修正処理
に対応する色修正条件を記憶し(例えば、本実施例で
は、図18に示すステップ220に相当する)、前記表
示手段上に表示されたカラー画像に対する輪郭修正処理
のための指示を受け付け、該指示に従った輪郭修正処理
を該カラー画像に対して行い(例えば、本実施例では、
図18に示すステップ217に相当する)、該輪郭修正
処理に対応する輪郭修正条件を記憶し(例えば、本実施
例では、図18に示すステップ221に相当する)、前
記複数のカラー画像データの夫々に基づく低解像度のカ
ラー画像を生成すると共に、該低解像度のカラー画像を
前記表示手段上で合成させ(例えば、本実施例では、図
16に示すステップ202に相当する)、前記表示手段
上で合成された低解像度のカラー画像に対応するカラー
画像データに対して前記色修正条件若しくは前記輪郭修
正条件に基づく処理を施し(例えば、本実施例では、図
16に示すステップ203に相当する)、該カラー画像
データを高解像度のカラー画像として出力する(例え
ば、本実施例では、図16に示すステップ206に相当
する)ことを特徴とする。又、上記課題を解決するた
め、本発明は、複数のカラー画像データの夫々をイメー
ジメモリに転送し、前記複数のカラー画像データの夫々
に基づくカラー画像を表示手段(例えば、本実施例で
は、図1に示すカラーCTR10に相当する)上に表示
させ、前記表示手段上に表示されたカラー画像に対する
色修正処理のための指示を受け付け、該指示に従った色
修正処理を該カラー画像に対して行い(例えば、本実施
例では、図18に示すステップ216に相当する)、該
色修正処理に対応する色修正条件を記憶し(例えば、本
実施例では、図18に示すステップ220に相当す
る)、前記表示手段上に表示されたカラー画像に対する
輪郭修正処理のための指示を受け付け、該指示に従った
輪郭修正処理を該カラー画像に対して行い(例えば、本
実施例では、図18に示すステップ217に相当す
る)、該輪郭修正処理に対応する輪郭修正条件を記憶し
(例えば、本実施例では、図18に示すステップ221
に相当する)、前記色修正条件若しくは前記輪郭修正条
件に基づいて処理される複数のカラー画像を前記表示手
段上で合成させる(例えば、本実施例では、図16に示
すステップ202に相当する)と共に、該表示手段上で
合成されたカラー画像を解像度の高いカラー画像として
出力する(例えば、本実施例では、図16に示すステッ
プ206に相当する)ことを特徴とする。 【0008】 【発明の実施の形態】一般に画像編集装置の機能として
は、 ハードウエア回路による高速処理 CPUによるソフトウエア処理 以上の2つの編集機能を必要とする。前者は一般にハー
ドウエアによるパイプライン・プロセサーといわれるも
ので本装置に於ては画像編集機能のある特定の高速性を
必要とする項目について実行する。後者のCPUによる
処理は人間とインターラクティブに行う項目について
(ある程度時間はかかってもよい)実行する。 【0009】即ち、前者のパイプライン・プロセサー
は、例えば画像のレイアウトを決めるアフイン変換(拡
大・縮小・移動・回転)と空間フィルター処理(画像の
強調・平滑化等)及びlook up table(L
UT)による色変換処理等の画像の逐次処理を主として
行う。 【0010】後者のCPUによる処理は一般に複雑な処
理、ハードウエア化出来にくい処理を行う。ここでは画
像を任意の形状に切り出したり、切り出した画像を別の
所へコピーする処理、画像の一部を修正する等の処理を
さす。これらの処理は一般に操作者の創造によるクリエ
イティブな処理で、ある程度時間がかかっても許容出来
る。しかしこの機能は高機能である必要がある。 【0011】以上2つの編集処理機能を最大のパフォー
マンスで実施するためには編集装置のシステム・アーキ
テクチャーから考える必要がある。即ち両者の処理が十
分高機能に高速に実行出来るようにするためには構成す
るシステムの体系、取り扱う画像データの持ち方(フォ
ーマット)、信号の流れ、機能の解析等が検討される必
要がある。 【0012】種々の検討の結果カラー画像編集装置とし
てのシステム・アーキテクチャーとして次の事が結論と
して得られた。 【0013】(1)画像編集を行うためには画像データ
は圧縮データとして持つ。 【0014】(2)圧縮の方式としてはm×mのブロッ
クを一符号として持つベクトル量子化がよい。 【0015】(1)に於て、高解像・高階調の画像編集
処理を行うためには、画像データ容量としては極めて莫
大となる。例えばA4,1pageを16pel/mm
でカラー読取りした場合、R,G,B3色で約48Mバ
イトのデータ容量となる。先に述べた画像編集をインタ
ーラクティブに、高機能に行うためには、かかるカラー
画像データを圧縮し、編集やりやすい形にする事が重要
技術となる。このためには(2)のベクトル量子化手法
が最適であると結論づけられた。 【0016】以上の結論を基にシステム・アーキテクチ
ャーを決定し、高画質で高機能・高速の画像編集処理装
置を実現出来たものである。 【0017】以下カラー処理に適用した実施例に基づき
詳細に説明する。 【0018】(実施例)図1はこの発明の一実施例を示
す画像編集装置の構成図である。リーダ1によって読み
とられた画像データ(例えばR,G,B各8bitデジ
タルデータ)は変換器11により信号変換されNTSC
信号で用いられる輝度(Y)信号と色差信号(I,Q)
に変換される。かかる変換は例えばR,G,Bのデータ
を 【0019】 【外1】 なるマトリックス計算により得られる。ここで変換マト
リックスの係数はリーダの色分解特性、r特性等に合わ
せて適宜修正される。かかるY,I,Q信号は後述の圧
縮器2により圧縮され画像データファイル用のディスク
メモリ3へ記憶される。ディスク内の画像データはIm
ageメモリ5−1及び5−2と呼ばれるICメモリ上
へ読み出され加工・編集される。そこで高速処理を行う
べく基本処理はハードウエア化されたパイプラインプロ
セサー4によって、ディスクから一方のImageメモ
リへ転送を行い、このメモリからもう一方のImage
メモリに対して、ラスターデータとしてデータの転送の
過程で、編集展開される。 【0020】一方、イメージメモリ5上の画像データ
は、CPU8により各種処理が施され加工・修正が行わ
れる。編集の過程はCRTコントローラ9によりカラー
CRT10上へ表示され、編集の状況がモニターでき
る。編集された結果はイメージメモリ5から復号器6を
通して元の画像データに戻され、変換器12によりこの
画像データがプリンタに対応した色信号(Yello
w,Magenta,Cyan,Black)に変換さ
れColor Printer 7へ出力される。この
際、処理前データと処理後データの流れに対応してCP
U8は、入出力制御13−1及び13−2に指示をし
て、データの流れる経路をコントロールする。 【0021】次に画像データの圧縮法について述べる。
Y,I,Qのような輝度と色差の3色信号に分けること
により、輝度データであるY信号の空間周波数をよく保
存しておけば、色差信号であるI,Q信号の空間周波数
は、ある程度制限し(高周波成分のカット)視覚上の画
像劣化が少ないということが知られている。 【0022】そこで例えばI,Q信号はm×mのブロッ
ク(mは整数)の平均値等で色情報を代表させ、カラー
画像のデータ量を削減するデータ圧縮法が考えられる。
I,Q信号のブロックサイズは要求される画質、許容さ
れるメモリ容量により2×2,4×4,6×6などのブ
ロックサイズが選ばれる。例えばブロックサイズを4×
4とすると、前述したようにA4,1pageのメモリ
容量48MByteは、Y信号16MByte+I,Q
信号2MByte=計18MByteとなり、約2.7
の圧縮率となる。 【0023】一方Y信号に関してはI,Q信号の圧縮と
は異なり解像度データを十分残すような圧縮法が必要と
なる。 【0024】第1の方法としてブロック符号化手法があ
る。 【0025】この手法はm×mブロック内の画素データ
xの平均値x、標準偏差σを算出する。次に各画素ごと
の濃淡情報を数bit程度で表わす。例えば(x−x)
/σの計算値を再量子化することにより実現できる。こ
の圧縮データフォーマットは図2(a)のようになり、
平均値、標準偏差の次に各画素の濃淡情報を続け、この
濃淡情報の順序をブロック内の画素位置に1対1に対応
させる。したがって、この濃淡情報の順序を入れ換える
ことによりブロック内での画素の回転を実施することが
できる。 【0026】第2の方法は、m×m画素のベクトル量子
化手法である。 【0027】この手法はm×mブロック内の画素データ
を平均値x,標準偏差σと画像の回転を表わすコードお
よび画像のパターンを表わすコードにより表現させて、
データの圧縮を計るものである。この圧縮データフォー
マットは、図2(b)のようになる。ここで回転を表わ
すコードとは例えばm×mブロック内の画素パターンを
90°,180°,270°回転させたものと、同じパ
ターンコードを用いるベクトル量子化法において、この
角度を表わすコードである。本実施例では0°,90
°,180°,270°の4パターン2bitで表わさ
れる。 【0028】この手法においては、回転コードを操作す
ることにより、ブロック内の画素の回転が可能となる。 【0029】次にアフイン変換について説明する。 【0030】アフイン変換では画像の拡大・縮小・移動
・回転を行う。 【0031】入力画像の持つ入力メモリ上でのアドレス
を(xS,yS)とし、主走査方向縮倍率をα、副走査方
向の縮倍率をβ、回転角をφ、回転の中心座標を
(xC,yC)、主走査方向への移動量をxm、副走査方
向への移動量をymとした時、出力メモリでのアドレス
(xD,yD)とすると次のような関係式が成立する。 【0032】 【外2】【0033】xD ,yD が与えられると,に従って
S ,yS を求めてゆく。これは例えば図3のような構
成で実現できる。以下、図3に従って説明する。xS
式に従って求めてゆく場合は、初期値オフセット(直
流分)分を初期値としてレジスタ31にセットする。ま
た、副走査同期増分値及び主走査同期増分値を各々当該
レジスタ32,37にセットする。この一連の値のセッ
トは、縮倍率・回転角に応じてCPUにより実行され
る。図4は、図3の回路のページ同期信号と副走査同期
信号と主走査同期信号の関係を示すタイミングチャート
である。ページ同期信号が立ち下がることにより副走査
同期信号の発生が開始されページ内に存在する走査線数
分だけ発生する。副走査同期信号の立ち下がりにより主
走査同期信号が発生し、走査線内に存在するデータ数分
だけ発生する。これらの信号は、図示しない同期信号発
生回路によって発生される。ページ同期信号がLowレ
ベルの間33の選択器は、31の初期値レジスタの保持
する値を出力する。34の加算器は副走査同期信号の立
ち下がりにより加算が実行される。34の出力は副走査
ラッチ同期によって35にラッチされる。また、36は
副走査同期信号がLowレベルである間は、35出出力
を出力する。38の加算器は、36の出力と、37の主
走査同期増分値を主走査同期信号の立ち下がりにより加
算が実行され、その出力は、主走査同期信号の立ち上が
りによりにより39にラッチされる。ラッチ35は、走
査線の先頭のデータが対応する入力側のアドレスを保持
し、ラッチ39は走査線内の各データの対応する入力側
のアドレスを与える。yS に関しても式に従って全く
同様に求めることが可能である。 【0034】かくして求めたアドレスはcosφ,si
nφ等が一般には無理数であるため、無理数となる。実
機上では、十分なビット数をもつ小数となる。この小数
アドレスの近傍の整数アドレスを入力アドレスとして定
める。即ち、xS 及びyS の小数部を切り捨てた(即ち
整数部のみ)値から得られる入力側の点でデータをもっ
て出力側アドレスの(XDD )の点のデータとする。
図5がソース側とディスティネーション側とのアドレス
の対応を示している。正方格子がディスティネーション
側のアドレス格子を示しており、正方形の中心が整数ア
ドレスである。平行四辺形の格子がソース側のアドレス
格子を示しており、平行四辺形の中心が整数アドレスで
ある。図5のA点(XDD )に対し、b点が定まる。
A点のもつデータをb点のもつデータをもって定める。 【0035】本実施例に於けるアフィン変換アルゴリズ
ムは前述の如くディスティネーション側にラスターデー
ター(今の場合、ファイルからの順次読出しデータ)を
出力してゆく。この時、ソースメモリ(今の場合、イメ
ージメモリ)へランダム・アクセスして元データが入力
されていく。従ってアフィン変換ハードウエアがパイプ
ライン化されているためソース側イメージメモリから、
ディスティネーション側イメージメモリへのデータ転送
の過程にて実行され、極めて高速な変換を行う事が出来
る。ここで画像データは前述の圧縮データを言い、アド
レスポイントは圧縮データでのアドレス空間での座標を
言う。 【0036】符合化されたデータのアフィン変換後のア
ドレスが決定されると、次にブロック内の画像データの
配置交換を実行する。 【0037】以下実施例を2×2のブロックで説明す
る。 【0038】図6(a)は原画となる5ブロック(A,
B,C,D)内のデータを示している。このブロックに
対し、90°,180°,270°のブロックごとの回
転を前述した回転処理によりアドレスを発生させ、ディ
スティネーションメモリに記録させ、これを再生する
と、同図(b),(c),(d)のようになる。同図か
ら明らかなように原画を忠実に再現していない。そこで
回転角に応じてブロックの内部の画素を回転させる方式
をとる。同図(e),(f),(g)にはブロック内の
画素を90°,180°,270°回転させた例であ
り、原画への忠実性を増すことができる。この回転操作
は図2(b)のコードを用いて、2bitの回転コード
の書き換えを行いパターンコードはいじらずに実施でき
る。 【0039】任意角度の回転に関しては、90°単位に
ブロック内回転角を分けて対応する。図7は回転角を3
15°〜45°,45°〜135°,135°〜225
°,225°〜315°の4つの領域に分け、ブロック
内回転を0°,90°,180°,270°に割りあて
た例を示している。 【0040】図8は、図2(a)に示したブロック符合
化のデータフォーマットをブロック内回転角により入れ
換えて再フォーマットした実施例である。(a)0°
(b)90°(c)180°(d)270°を示す。
x,σに関しては回転による変更はされず、後に続く濃
淡データの順序が変更される。(a)0°のデータフォ
ーマットがABCDの時に(b)90°はBDAC、
(c)180°はDCBA、(d)270°はCADB
となる。 【0041】図9は、ブロック内データフォーマット変
換回路の実施例である。入力信号は、x,σをバッファ
80に、残りの4つ濃淡データをバッファ81,82,
83,84に別々に保持される。セレクタ85,86,
87,89には図示しない制御器より回転角に応じたセ
レクト信号が送られる。例えばブロック内回転角0°,
90°,180°,270°をそれぞれ0,1,2,3
に対応させると2bitのセレクト信号になる。フバッ
ファ81,82,83,84の出力をA,B,C,Dと
し、セレクタ85,86,87,88の入力端子X,
Y,Z,Wにそれぞれ対応が異なるように接続する。セ
レクト信号が1つの場合入力端子のYがそれぞれのセレ
クタの出力端子より出力されるとすると、バッファ8
5,86,87,88よりそれぞれB,D,A,Cが出
力されることになる。この出力値をバッファ90におい
てx,σとともに再連結すると、図8に示したようなデ
ータフォーマットが完成し、バッファ90の出力信号と
して出力される。 【0042】以上が符合化データのブロック回転および
ブロック内回転の実施例である。即ち本実施例に於いて
は回転を伴うAFFINE変換を行う時、m×mの圧縮
データを一データとして回転オペレーションを行う事、
及びm×mの圧縮データ内での回転オペレーションを行
う事の組合せで実行される。これは多少の画質劣化を伴
うため、それを最小限にくい止めるため 輝度信号(Y)に対しては小さいマトリックス(m
0 ×m0 )でブロック符号化又はベクトル量子化を行
う。 【0043】 色差信号(I,Q)に対しては、比較
的人間の目には高分解性を必要としないため大きいマト
リックス(m1 ×m1 :m1 >m0 )でブロック符号化
又はベクトル量子化あるいは直接平均データでもつ。 【0044】以上2点に注意する必要がある。 【0045】次に、CRTコントローラ9について説明
する。 【0046】図10はCRTコントローラ9の機能を示
した図で、5は圧縮メモリ、9はCRTコントローラ、
10はカラーCRT、8はCPU、356はCPUから
セットされるパラメータレジスタである。本発明ではメ
モリアドレスをX,Yの2次元として扱っているが、こ
のアドレスを一次元のアドレスに変換して用いることも
可能である。図10のCRTコントローラの機能は、メ
モリ5の任意の始アドレス(x0 ,y0 )を持つ任意大
きさ(xw ,yw )の矩形領域をたてYD ドット、よこ
D ドットの解像度のCRTに表示出力することであ
る。任意の値x0,y0 ,xw ,yw には範囲のみなら
ず、2や4の倍数でなければならないという制約はつき
得る。図11はこのCRTコントローラの実施例で、1
01,102,103,104はパラメータレジスタ、
105,1006は加算器、107,108はセレク
タ、109,110はアドレスラッチまたはレジスタで
ある。112はCRT同期回路で121は水平同期信
号、122は垂直同期信号、123は画素クロックであ
る。111はデータラッチ、128はメモリから読みだ
されたカラー信号、124はCRTへのカラー信号で、
125は水平アドレス(X)、126は垂直アドレス
(Y)である。CRT同期回路112により垂直同期信
号122が発生され、さらに水平同期信号121、画素
クロック123が発生される。121によってYアドレ
スラッチ110にとり込まれるアドレスは122がON
の間、108によっては始値y0 102が選択されてい
るので、y0 となる。また、123によってXアドレス
ラッチ109にとり込まれるアドレスは121がONの
間107によって始値x0 101が選択されているので
0 となる。その他の場合Xアドレスラッチ109は1
クロック(=1ドット)にxw /XD だけ増加し、メモ
リアドレスは更新され、x方向のスキャンがなされるこ
とになる。水平同期信号121がONになり、画素クロ
ックがONになるとXアドレスラッチ109はx0 にリ
セットされる。またYアドレスラッチ110は1水平同
期毎にyw /YD だけ増加し、メモリアドレスは更新さ
れ、y方向のスキャンがなされることになる。 【0047】図12はCRT上で矩形合成をすることが
可能なCRTコントローラの機能を示した図である。C
RT10に表示されている矩形画像130,131はメ
モリ5上に領域132,133として保存されている画
像である。今は画像131の上に画像130が重なって
おり、画像130がのっている部分の画像131は表示
されていない。図11に示した構成を拡張して得ること
ができる。図13にその構成例を示す。図13におい
て、134,135,136,137は領域内アドレス
生成モジュールで内部の構成はすべて等しい。134は
最高の優先順位を持つ領域の水平アドレス生成モジュー
ル、135は同じく垂直アドレス生成モジュール、13
6は第2の優先順位を持つ領域の水平アドレス生成モジ
ュール、137は同じく垂直アドレス生成モジュールで
ある。148は水平ディスプレイアドレスカウンタ、1
49は垂直ディスプレイアドレスカウンタであり各々水
平ディスプレイアドレス150、垂直ディスプレイアド
レス151を出力する。次にアドレス生成モジュールに
ついて説明する。134内部で138は表示開始ディス
プレイアドレスを保持するレジスタ、139は表示終了
ディスプレイアドレスを保持するレジスタ、152,1
40は比較器で、141の論理回路により信号150が
レジスタ138とレジスタ139の領域に含まれている
か否かを判断する。領域に含まれていれば、このアドレ
ス生成モジュールがメモリアドレスを出力する権利を持
つ。ただし、それは、X,Yの両方共に成立した時であ
り、このモジュール134,135によるアドレス出力
が可能となるのは信号153,154が共に真となった
時であり、論理回路159により出力許可信号155が
生成され、出力バッファ147がイネーブルになりメモ
リ水平アドレスバス125にアドレスレジスタ146の
内容が出力される。同様にモジュール135からメモリ
垂直アドレスバス126にアドレスが出力される。モジ
ュール134,135のどちらかの領域内信号すなわち
153または154が偽となると、論理回路159の出
力も偽となり、モジュール134,135の出力はディ
スェーブルとなる。この時、第2の優先順位を持つモジ
ュール136,137の領域内信号すなわち156,1
57が真であれば、論理回路160の出力が真となり、
モジュール136,137のアドレス出力がメモリアド
レスバス125,126に出力される。論理回路160
の出力が偽となると第3の優先順位を持つモジュールが
テストされ、以下、次々に下位の優先順位を持つものへ
とアドレス出力権が移行することになる。勿論、自分よ
り上位の優先順位を持つモジュールがアドレス出力権を
獲得した時は、その上位のモジュールがアドレス出力を
することになる。一方、出力するアドレスについて説明
する。モジュール134内においてレジスタ143は読
み出し開始メモリアドレスを保持するレジスタ、142
はアドレス増分値を保持するレジスタであり、145は
153が偽である間、アドレスレジスタ146にレジス
タ143の出力が入力されるように構成されたセレク
タ、144はレジスタ146に増分レジスタ142の内
容を加えていく加算器である。信号153が真になると
レジスタ146はレジスタ142の内容だけクロック毎
に増加する。以上のように、図13の構成で図12に示
したCRT画面上での矩形合成をすることができる。 【0048】図14は、CRTコントローラの機能を示
した図で任意の自由形状の画像をCRT上で合成出力す
ることを可能にしたものである。図14において、30
6はマスク形状記憶であり、図14の例の場合、画像領
域133に対応してマスク領域162が、画像領域13
2に対応してマスク領域161が定義され、マスク領域
161にはハート形のマスクが書き込まれている。この
時、図14のCRT10に示すように画像領域132が
ハート形に切りぬかれて画像領域133の上に重畳され
て表示される。このような処理を行うCRTコントロー
ラ9は、画像メモリ5の読み出しに先立ってマスク形状
記憶306を先読みすることによって実現する。たとえ
ば本実施例では垂直アドレス方向に1だけ先のラインを
読み出し、マスクの制御を行う。図14のCRT10で
垂直アドレスyに表示すべきラスタ画像データが領域1
33では先頭よりy0 ,領域132では先頭よりy1
け進んだラスタであるときマスク形状記憶306上での
マスク領域162はラインy0 +1を、領域161はラ
インy1 +1をそれぞれ読み出して、次のCRT10の
垂直アドレスy+1にそなえることを可能にしている。
図15はCRTコントローラの実施例である。 【0049】図15は、図13の一対の水平・垂直モジ
ュールに対応している。図15において、161,16
2,167,168はディスプレイアドレスを保持する
レジスタで先の実施例と同様、このレジスタの指定する
ディスプレイ上の矩形の領域が、このモジュールによっ
て制御される。173は2ラスク分のマスクを保持でき
る2ラインマスクデータバッファであり、本実施例の特
徴となるものである。1垂直アドレス分だけ先読みされ
たマスクデータはカウンタ174によりアドレスされ、
論理回路176に入力される。論理回路176は図示し
ないカウンタによって生成されたディスプレイ上のアド
レスXD ,YD が当モジュールが扱うべき矩形領域内に
含まれており、かつマスクデータがONであることによ
って真の出力を行う。この信号は論理回路177に入力
され、当モジュールよりも優先度の高いモジュールから
の信号PRIORが真であるとき、メモリアドレスX
DAT,YDAT を出力するようにデータアドレスバッファ
179,178を駆動する。マスクデータMSKDTは
表示すべきデータの転送中もマスクデータバッファ17
3に読み込みを続けている。用いられるマスクデータは
マスク形状記憶306から読み込まれるが表示データア
ドレスより先行して読み出す必要があるので、データア
ドレスレジスタ166,172より1タイミング先行し
たアドレスを保持するマスクアドレスレジスタ165,
171から出力される。このとき、モジュールの個数が
複数個であるときはマスク読み込みが異なったモジュー
ルから同時になされる場合があり得るがENMSK信号
により時分割してマスクアドレスバスの使用許可を与え
て衝突を防いでいる。以上のように本実施例によれば、
任意形状の画像を高速、高精細にディスプレイ上で重畳
表示することが可能である。本実施例によりCRTコン
トローラ画像データそのものは書き換えをせずに重畳が
できるので、持ち時間もなく処理が可能であることが特
徴である。 【0050】次に画像編集の機能及び操作について述べ
る。 【0051】第一表は本装置に於ける各種画像編集機能
を示す。 【0052】図16は編集操作の概略のフローである。
今複数枚の画像を編集合成する事を想定する。画像入力
処理200はまずこの複数枚の画像を読み取り画像ファ
イル用のメモリーへしまう操作及び処理を意味する。こ
の時、ファイル容量を少なくするため前述の圧縮データ
を用いる。その後部品処理を行うか、レイアウト処理を
行うかを204に於て選択する。部品処理201とは1
枚の画像の内の修正・交換等の処理を行う。 【0053】 【表1】 もので第一表のAの項目が概当する。レイアウト処理2
02は出来上った部品としての複数の画像データのレイ
アウトを決める処理で画像の回転、変倍、移動等の処理
を行うアフイン変換と、合成処理を行う、第一表のBの
項目に相当する。 【0054】ここで部品処理は画像データを直接変換す
る事が必要であるが、レイアウト処理はレイアウトパラ
メータ情報(例えば変倍率、回転角移動後の位置等)を
記憶しておくだけでよい。従ってレイアウト処理は画像
データを間引いてCRTディスプレイ10へ表示してパ
ラメータを抽出すればよい。 【0055】かかる処理が終了した段階で、次に実画像
データ203を行う。これは出来上がった部品データを
レイアウト・パラメータの下でイメージ・メモリ上へ合
成編集していく。かかる処理が終了後イメージ・メモリ
のデータをプリンターへ転送しプリンター出力206を
行う。 【0056】図17は画像入力処理200を詳しく説明
したもので、まず、リーダで原稿読み取り207を行
い、データを前述の圧縮器で圧縮した後(208)、フ
ァイルとして例えばハード・ディスク等へ登録する。こ
の操作を原稿がある間繰り返し、読みとる原稿が無くな
ると終了する(210)。 【0057】図18は、部品処理の内容を示したもの
で、まず何を行うか処理項目の選択211を行う。先ず
色修正212は画像データをFileからイメージ・メ
モリへ転送し(イメージメモリがCRT10のビデオ・
メモリを兼ねているので即時にCRT10に出力され
る)、CRT10を見つつ色修正を行う。かかる操作は
イメージ・メモリ内の画像データは変更せずディスプレ
イ(CRT)10への出力へのLook up Tab
le(LUT)の変更にて行われる(216)。これで
よいと思う画像になった時のLUTを記憶する(22
0)。 【0058】輪郭修正213は、同様にCRTへ出力す
るケーブル上に空間フィルター演算器を置き実画像デー
タはいじらない。そして空間フィルターの情報(例えば
周知のラプラシアンの係数)等を記憶する(221)。
次に切抜きマスク214はイメージメモリと並列に置か
れた1bit planeのマスクメモリの書換えを行
う。これは画像の領域を決めるもので、実画像データは
いじらない(218)。その他の処理は実データ修正2
15と呼ばれる処理を行う。これはイメージ・メモリ上
に書かれた実画像データをCPUから直接アクセスして
書き換えるもので、実画像に画像を書き込んだり消した
り、コピーしたりする。以上の処理が終了したら実デー
タ及びマスク・データをファイルとして登録222す
る。 【0059】図19はレイアウト処理について記したも
のである。 【0060】まずファイルから画像データをイメージ・
メモリーへ書込む(223)。この時、前述の如く間引
きデータでよく複数枚の画像データがイメージメモリ内
へとりこまれる。かかる複数枚の画像データをCRTコ
ントローラにより合成変倍(225)してCRT10上
に出力される。この時画像の回転はイメージメモリー上
の別の領域へアフイン変換器4によりラスターオペレー
ション(ROP)で書き変えられる(224)。一方変
倍はCRTコントローラでは整数変倍しか出来ないた
め、同様変換器4により任意変倍を行う。出力画像領域
を制限するマスクメモリのデータ作成226を次に行
う。以上の操作が各画像に対して行われ、レイアウトパ
ラメータが抽出される(227)。 【0061】図20は以上の部品データ及びレイアウト
パラメタに基づいて最終画像を形成する。このプロセス
は全くの無人化が可能である。まず下に重ねられる画像
部品データから先に処理されていく。1枚目の画像のレ
イアウトパラメター及びマスクデーターがパイプライン
用AFFINE変換用のレジスタ、LUT及びマスクメ
モリ(これはイメージメモリと並列に置かれた1bit
メモリ)等へセットされる。次にファイルからのデータ
がこれらパイプライン・プロセサを経てイメージ・メモ
リへ転送される。その結果ラスター・オペレーション
(ROP)により処理される。 【0062】かかる処理が部品データの数の分だけ(n
maxだけ)くり返されイメージメモリ上へオーバライ
トされる(230,231)。 【0063】次にプリンターへの出力について述べる。 【0064】編集結果の画像データはイメージメモリ上
に作られ、プリンター側へ転送される。プリンターの出
力方式、例えば面順次・線順次・点順次かによりイメー
ジメモリからの送出状態が異なる。かかる変換は図1の
変換器12で行われる。それに先立ち、圧縮データを通
常の画素データへ復号器6で復号しておく。 【0065】プリンター7は通常1台が接続される。し
かし複数台のプリンターを接続することにより、より高
速の出力が可能となり、特に大量の出力を必要とする出
版、印刷分野では有要である。本イメージ・メモリへの
画像データの記憶形態は、濃度データを圧縮し、再び濃
度データへ戻す方式であるため、複数台のプリンターへ
つないだ時生じる色相のズレ(これは個々のプリンター
の出来具合により異なる)を各々、ある濃度データから
別のある濃度データへ移すL00k Up Table
(LUT)により変換・補正が出来る。 【0066】(これは通常イメージ・メモリが2値化さ
れた後の状態で記憶する方式であれば困難である)。か
かるLUTによる個別プリンターへの調整機構は変換器
12に含まれる。 【0067】カラープリンタ7に於てはかかる補正され
た画像データをもとに通常の方法、例えばディザ法等に
より画像出力される。 【0068】以上述べた如く圧縮データを用いた画像編
集を行う事と、高速編集に適したシステム・アーキテク
チャーをとる事により画像編集を高速・高機能に行う事
が出来る。 【0069】 【発明の効果】以上の様に本発明によれば、カラー画像
データに施される処理の処理条件を効率良く決定するこ
とができる。
Description: BACKGROUND OF THE INVENTION [0001] The present invention relates to color image data.
Image processing method that determines the processing conditions of the processing applied to
About the law. 2. Description of the Related Art In the field of color printing,
In determining processing conditions such as color correction,
Print under multiple processing conditions
It was common to select the matter. [0003] However, this problem
Such an adjustment method requires labor and cost for adjustment.
There was a problem that. On the other hand, in order to solve such a problem,
It is conceivable to determine processing conditions on a monitor. However, in particular, the processing conditions for color images are determined.
The color image data to be processed.
Try to determine the processing conditions on the monitor by changing the
Data processing takes time or data degradation
Problems arise. [0006] Accordingly, the present invention provides a process for color images.
Color processing that can efficiently determine processing conditions
The purpose is to provide a management method. Means for Solving the Problems To solve the above problems,
Therefore, the present invention is based on each of a plurality of color image data.
A color image is displayed on display means (for example, in this embodiment, FIG.
(Corresponding to the color CTR 10 shown in FIG.
Color correction processing for a color image displayed on the display means
For color correction processing according to the instruction.
Performed on the color image (for example, in this embodiment,
18), the color correction processing
(For example, in this embodiment,
Corresponds to step 220 shown in FIG. 18).
Contour correction processing for the color image displayed on the display means
For the contour correction process according to the instruction
Is performed on the color image (for example, in this embodiment,
This corresponds to step 217 shown in FIG.
The contour correction conditions corresponding to the processing are stored (for example,
In the example, this corresponds to step 221 shown in FIG.
A low-resolution camera based on each of a plurality of color image data
Color image and generate the low-resolution color image
Combined on the display means (for example, in this embodiment,
16), the display means
Color corresponding to the low-resolution color image synthesized above
The color correction condition or the contour correction for image data
Perform processing based on the positive condition (for example, in this embodiment,
16), the color image
Output data as a high-resolution color image (for example,
For example, in this embodiment, this corresponds to step 206 shown in FIG.
Do). Also, to solve the above problems
Therefore, according to the present invention, each of a plurality of color image data is imaged.
To each of the plurality of color image data.
Means for displaying a color image based on (for example, in this embodiment,
Corresponds to the color CTR 10 shown in FIG. 1)
For the color image displayed on the display means.
An instruction for a color correction process is received, and a color according to the instruction is received.
Correction processing is performed on the color image (for example,
In the example, this corresponds to step 216 shown in FIG. 18).
The color correction conditions corresponding to the color correction processing are stored (for example,
In the embodiment, this corresponds to step 220 shown in FIG.
The color image displayed on the display means.
Received an instruction for contour correction processing and followed the instruction
Contour correction processing is performed on the color image (for example,
In the embodiment, this corresponds to step 217 shown in FIG.
), And stores contour correction conditions corresponding to the contour correction processing.
(For example, in this embodiment, step 221 shown in FIG.
), The color correction condition or the contour correction condition.
A plurality of color images to be processed based on the
The synthesis is performed on the stage (for example, in the present embodiment, as shown in FIG.
On the display means.
Combined color image as high resolution color image
Output (for example, in the present embodiment, the step shown in FIG. 16).
(Corresponding to the loop 206). DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Generally, as a function of an image editing apparatus,
Requires two editing functions more than software processing by a high-speed processing CPU by a hardware circuit. The former is generally
It is said to be a pipeline processor by hardware
Therefore, in this device, a certain high-speed
Execute the required items. By the latter CPU
Processing is performed interactively with humans
Execute (may take some time). That is, the former pipeline processor
Is an affine transformation (extended
Large / Reduced / Move / Rotate) and Spatial Filtering (Image
Emphasis, smoothing, etc.) and look up table (L
UT) mainly for sequential processing of images such as color conversion processing
Do. The processing by the latter CPU is generally a complicated processing.
Perform processing that is difficult to implement in hardware. Here is the picture
Cut an image into an arbitrary shape, or
Processing such as copying to a location,
As expected. These processes are generally created by the operator
It is an active process, and it can be tolerated even if it takes some time
You. However, this function needs to be sophisticated. [0011] The above two editing processing functions have the maximum performance.
In order to implement it on a monthly basis, a system architect
You need to think from the architecture. That is, both processes are sufficient.
To enable high-speed execution of high-level functions, configure
System system, how to hold image data
Analysis), signal flow, function analysis, etc.
It is necessary. As a result of various studies, a color image editing device was
The following conclusions were made for all system architectures:
Was obtained. (1) In order to perform image editing, image data
Has as compressed data. (2) As a compression method, an m × m block
Vector quantization having a symbol as one code is preferable. In (1), high resolution and high gradation image editing
In order to perform the processing, the image data capacity is extremely huge.
It will be great. For example, A4, 1 page is 16 pel / mm
When reading color with, about 48 Mb for R, G and B colors
Data capacity. The image editing described earlier
-To perform operatively and highly functionally, such color
It is important to compress image data to make it easy to edit
Technology. For this purpose, the vector quantization method (2)
Was determined to be optimal. Based on the above conclusions, the system architecture
High-performance, high-performance, high-speed image editing processor
Is realized. The following description is based on an embodiment applied to color processing.
This will be described in detail. (Embodiment) FIG. 1 shows an embodiment of the present invention.
1 is a configuration diagram of an image editing device. Read by reader 1
Taken image data (for example, R, G, B 8-bit digital
Signal is converted by the converter 11 into NTSC
Luminance (Y) signal and color difference signal (I, Q) used in the signal
Is converted to Such conversion is, for example, data of R, G, B
[0019] [outside 1] Is obtained by the following matrix calculation. Here the transformation mat
The Rix coefficient matches the reader's color separation characteristics, r characteristics, etc.
And amended accordingly. Such Y, I, Q signals are applied to the
Disk for image data file compressed by compressor 2
Stored in the memory 3. The image data in the disc is Im
Age memory 5-1 and 5-2 on the IC memory
Is read and processed / edited. Therefore, perform high-speed processing
Basic processing is hardware pipelined
One image memo from the disk by Secer 4
Transfer from the memory to the other Image
Transfer of data as raster data to memory
In the process, it is edited and developed. On the other hand, image data on the image memory 5
Is processed and corrected by the CPU 8
It is. The editing process is performed in color by the CRT controller 9.
It is displayed on CRT10, and you can monitor the editing status.
You. The edited result is transmitted from the image memory 5 to the decoder 6.
The image data is returned to the original image data
If the image data is a color signal corresponding to the printer (Yellow
w, Magenta, Cyan, Black)
Is output to the Color Printer 7. this
At the time, the CP corresponding to the flow of the pre-processing data and the post-processing data
U8 instructs input / output controls 13-1 and 13-2.
To control the data flow path. Next, a method for compressing image data will be described.
Dividing into three color signals of luminance and color difference like Y, I, Q
The spatial frequency of the Y signal as luminance data
If it exists, the spatial frequency of I and Q signals which are color difference signals
Is to some extent (cut high frequency components)
It is known that image deterioration is small. Therefore, for example, the I and Q signals are m × m blocks.
The color information is represented by the average value of
A data compression method for reducing the amount of image data is conceivable.
The block size of the I and Q signals depends on the required image quality and tolerance.
Depending on the memory capacity used, blocks such as 2 × 2, 4 × 4, 6 × 6
The lock size is chosen. For example, 4 ×
4 is A4, 1 page memory as described above.
The capacity of 48 MByte is a Y signal of 16 MByte + I, Q
Signal 2 MByte = 18 MByte in total, about 2.7
Compression rate. On the other hand, for the Y signal, the compression of the I and Q signals
It needs a compression method that leaves enough resolution data
Become. The first method is a block coding method.
You. This method uses pixel data in an m × m block.
An average value x of x and a standard deviation σ are calculated. Next, for each pixel
Is expressed by about several bits. For example, (xx)
This can be realized by requantizing the calculated value of / σ. This
The compressed data format of is as shown in FIG.
Following the average value and standard deviation, the density information of each pixel follows.
The order of shading information corresponds one-to-one to pixel positions in the block
Let it. Therefore, the order of the shade information is changed.
To perform pixel rotation within a block.
it can. The second method is a vector quantum of m × m pixels.
It is a generalization technique. This method uses pixel data in an m × m block.
Is the average value x, the standard deviation σ and the code representing the rotation of the image.
And the code representing the image pattern,
It measures data compression. This compressed data format
The mat is as shown in FIG. Here is the rotation
A code is, for example, a pixel pattern in an m × m block.
Rotated 90 °, 180 °, 270 °
In vector quantization using turn codes,
This code represents an angle. In this embodiment, 0 °, 90 °
°, 180 °, 270 ° 4 patterns 2 bits
It is. In this method, a rotating code is operated.
This enables the rotation of the pixels in the block. Next, the affine transformation will be described. In the affine transformation, the image is enlarged, reduced, or moved.
・ Perform rotation. Address on the input memory of the input image
To (x S , Y S ), The magnification in the main scanning direction is α,
The direction reduction ratio is β, the rotation angle is φ, and the rotation center coordinate is
(X C , Y C ), The movement amount in the main scanning direction is x m , Sub-scanning method
The amount of movement in the direction m And the address in the output memory
(X D , Y D ), The following relational expression holds. [Outside 2] X D , Y D Is given, according to
x S , Y S In search of This is, for example, the structure shown in FIG.
Can be realized. Hereinafter, description will be given with reference to FIG. x S To
When calculating according to the formula, the initial value offset (direct
The current value is set in the register 31 as an initial value. Ma
The sub-scanning synchronization increment value and the main scanning synchronization increment value are
Set in registers 32 and 37. This set of values
Is executed by the CPU according to the reduction ratio and the rotation angle.
You. FIG. 4 shows the page synchronization signal and the sub-scan synchronization of the circuit of FIG.
Timing chart showing the relationship between signal and main scanning synchronization signal
It is. Sub-scan due to falling of page synchronization signal
Number of scan lines existing in the page after generation of synchronization signal started
Occurs in minutes. When the sub-scan sync signal falls, the main
A scan synchronization signal is generated and the number of data exists within the scan line.
Only happens. These signals are output from a synchronization signal (not shown).
Generated by the raw circuit. Page synchronization signal is Low
During the bell 33 selectors hold 31 initial value registers
The value to be output. The adder 34 generates the sub-scan synchronization signal.
Addition is performed by falling. 34 output is sub-scan
Latched to 35 by latch synchronization. 36 is
35 outputs while the sub-scanning synchronizing signal is at the low level.
Is output. The 38 adders have 36 outputs and 37 main
The scan synchronization increment value is added by the fall of the main scan synchronization signal.
Calculation is performed, and the output is the rising edge of the main scanning synchronization signal.
Latched at 39. The latch 35
The data at the beginning of the check line holds the corresponding input address
The latch 39 is connected to the corresponding input side of each data in the scanning line.
Give the address of y S Also according to the formula
It can be determined similarly. The address thus obtained is cos φ, si
Since nφ and the like are generally irrational numbers, they are irrational numbers. Real
On the machine, it is a decimal with a sufficient number of bits. This decimal
Set an integer address near the address as the input address.
Confuse. That is, x S And y S Truncated (ie,
Integer part only)
Output side address (X D y D ) Point data.
Figure 5 shows the addresses of the source and destination
Is shown. Square grid is the destination
Side address grid, the center of the square is the integer address
Dress. The parallelogram grid is the source address
The grid is shown and the center of the parallelogram is an integer address.
is there. Point A (X D y D ), The point b is determined.
The data of point A is defined by the data of point b. Affine transformation algorithm in this embodiment
As mentioned above, the raster
(In this case, the data read sequentially from the file)
Output. At this time, the source memory (in this case,
Original data input by random access to
Will be done. So the affine transformation hardware is a pipe
Because it is lined, from the source side image memory,
Data transfer to destination-side image memory
It is executed in the process of
You. Here, the image data refers to the above-described compressed data,
The response point is the coordinates in the address space of the compressed data.
To tell. Affine data after affine transformation of encoded data
Once the dress is determined, the image data in the block is
Perform a placement swap. The embodiment will be described below with reference to 2 × 2 blocks.
You. FIG. 6A shows five blocks (A,
B, C, D). In this block
On the other hand, 90 °, 180 °, and 270 ° times per block
An address is generated by the above-described rotation processing, and the
Record in the destination memory and play it back
(B), (c), and (d) of FIG. Same figure
As is evident, the original was not faithfully reproduced. Therefore
A method to rotate the pixels inside the block according to the rotation angle
Take. (E), (f), and (g) in FIG.
In this example, pixels are rotated by 90 °, 180 °, and 270 °.
And increase the fidelity to the original. This rotation operation
Is a 2-bit rotation code using the code shown in FIG.
Can be implemented without rewriting the pattern code.
You. With respect to rotation at an arbitrary angle, the rotation angle is in units of 90 °.
Corresponds to different rotation angles in the block. FIG. 7 shows a rotation angle of 3
15 ° to 45 °, 45 ° to 135 °, 135 ° to 225
°, 225 ° to 315 °
Assign inner rotation to 0 °, 90 °, 180 °, 270 °
An example is shown. FIG. 8 is a block diagram showing the block code shown in FIG.
Data format is specified by the rotation angle in the block.
This is an embodiment in which the data is reformatted instead. (A) 0 °
(B) 90 ° (c) 180 ° (d) 270 ° is shown.
x and σ are not changed by rotation, and
The order of the light data is changed. (A) 0 ° data format
-When the mat is ABCD, (b) 90 ° is BDAC,
(C) 180 ° is DCBA, (d) 270 ° is CADB
Becomes FIG. 9 shows a data format change in a block.
5 is an embodiment of a conversion circuit. Input signal buffers x and σ
80, the remaining four shade data are stored in buffers 81, 82,
83 and 84 are separately held. Selectors 85, 86,
87 and 89 are controlled by a controller (not shown) according to the rotation angle.
Rect signal is sent. For example, the rotation angle in the block is 0 °,
90 °, 180 °, 270 ° are 0, 1, 2, 3 respectively
Corresponds to a 2-bit select signal. Hubat
The outputs of the fas 81, 82, 83, 84 are A, B, C, D
And the input terminals X, X of selectors 85, 86, 87, 88
Y, Z, and W are connected so as to have different correspondences. C
If there is only one rect signal, the input terminal Y
Output from the output terminal of the buffer 8
B, D, A, and C are output from 5,86,87,88, respectively.
Will be empowered. This output value is stored in buffer 90.
Rejoining with x and σ, the data as shown in FIG.
The data format is completed and the output signal of the buffer 90 is
And output. The above is the block rotation of the encoded data and
It is an Example of rotation in a block. That is, in this embodiment,
Is m × m compression when performing AFFINE transformation with rotation
Perform rotation operation with data as one data,
And rotate operation within m × m compressed data
It is performed in a combination of things. This is accompanied by some image quality degradation.
In order to minimize the luminance signal (Y), a small matrix (m
0 × m 0 ) Performs block coding or vector quantization.
U. The color difference signals (I, Q) are compared with each other.
Human eye does not need high resolution
Rix (m 1 × m 1 : M 1 > M 0 ) With block coding
Alternatively, it has vector quantization or direct average data. It is necessary to pay attention to the above two points. Next, the CRT controller 9 will be described.
I do. FIG. 10 shows the function of the CRT controller 9.
In the figure, 5 is a compression memory, 9 is a CRT controller,
10 is a color CRT, 8 is a CPU, 356 is a CPU
Parameter register to be set. In the present invention,
Although the memory address is treated as two dimensions of X and Y,
Can be converted to a one-dimensional address
It is possible. The functions of the CRT controller in FIG.
Any starting address (x 0 , Y 0 ) Any large with
Size (x w , Y w ) D Dot, horizontal
X D Display output on a CRT with dot resolution
You. Any value x 0 , Y 0 , X w , Y w If only the range
The restriction that it must be a multiple of 2 or 4
obtain. FIG. 11 shows an embodiment of this CRT controller.
01, 102, 103 and 104 are parameter registers,
105 and 1006 are adders, 107 and 108 are select
And 109 and 110 are address latches or registers.
is there. 112 is a CRT synchronization circuit and 121 is a horizontal synchronization signal.
, 122 is a vertical synchronization signal, and 123 is a pixel clock.
You. 111 is data latch, 128 is read from memory
The color signal 124 is a color signal to the CRT,
125 is a horizontal address (X), 126 is a vertical address
(Y). Vertical synchronization signal by CRT synchronization circuit 112
Signal 122 is generated, and the horizontal synchronizing signal 121
A clock 123 is generated. Y address by 121
122 is ON in the address taken in the latch 110
During the period, depending on 108, the opening price y 0 102 is selected
So y 0 Becomes Also, the X address by 123
As for the address taken into the latch 109, 121 is ON.
Opening x by interval 107 0 Because 101 is selected
x 0 Becomes In other cases, the X address latch 109 is 1
X for the clock (= 1 dot) w / X D Just increase and note
The readdress is updated and scanning in the x direction is performed.
And The horizontal synchronizing signal 121 turns on, and the pixel
When the lock is turned on, the X address latch 109 0 To
Set. The Y address latch 110 is one horizontal
Y every period w / Y D Only increases and the memory address is updated
Thus, a scan in the y direction is performed. FIG. 12 shows a case where a rectangle is synthesized on a CRT.
FIG. 4 illustrates possible CRT controller functions. C
The rectangular images 130 and 131 displayed on the RT 10 are
Images stored as areas 132 and 133 on the memory 5
It is a statue. Now the image 130 overlaps the image 131
And the image 131 where the image 130 is placed is displayed.
It has not been. Obtaining and expanding the configuration shown in FIG.
Can be. FIG. 13 shows an example of the configuration. Figure 13
And 134, 135, 136, and 137 are addresses in the area.
All internal configurations are the same in the generation module. 134 is
Horizontal address generation module for the highest priority area
135, a vertical address generation module, 13
6 is a horizontal address generation module for the area having the second priority.
Module 137 is also a vertical address generation module
is there. 148 is a horizontal display address counter, 1
49 is a vertical display address counter,
Flat display address 150, vertical display address
And outputs the address 151. Next to the address generation module
explain about. 138 is a display start disk inside 134.
Register holding the play address, 139 end display
Register for holding display address, 152, 1
Reference numeral 40 denotes a comparator, which outputs a signal 150 by the logic circuit 141.
Included in the area of register 138 and register 139
It is determined whether or not. If it is included in the area,
Module has the right to output the memory address.
One. However, that is when both X and Y are established.
Address output by the modules 134 and 135
Is possible because both signals 153 and 154 are true
It is time, and the output permission signal 155 is
Generated, the output buffer 147 is enabled and
The horizontal address bus 125
The contents are output. Similarly from module 135 to memory
The address is output to the vertical address bus 126. Mogi
Signal in one of the areas 134 and 135,
When 153 or 154 becomes false, the output of the logic circuit 159 is output.
The output is also false, and the outputs of modules 134 and 135 are
Sable. At this time, the module having the second priority
136, 137, ie, 156, 1
If 57 is true, the output of logic circuit 160 is true,
Address output of modules 136 and 137
It is output to the rescue buses 125 and 126. Logic circuit 160
Is false, the module with the third priority is
Tested, and so on, with lower priority one after another
And the address output right is transferred. Of course you are
The module with the higher priority has the address output right.
When the module is acquired, the higher-order module outputs the address output.
Will do. On the other hand, the address to output is explained
I do. The register 143 in the module 134 is read.
Register for holding the start memory address, 142
Is a register for holding the address increment value, and 145 is
While 153 is false, register in address register 146
Selector configured to receive the output of the
And 144 are the register 146 of the increment register 142.
It is an adder that adds content. When signal 153 becomes true
The register 146 stores only the contents of the register 142 every clock.
To increase. As described above, the configuration shown in FIG.
The rectangle can be synthesized on the CRT screen. FIG. 14 shows the function of the CRT controller.
Composite image of an arbitrary free-form image on a CRT
It is possible to do. In FIG. 14, 30
Reference numeral 6 denotes a mask shape memory. In the example of FIG.
The mask area 162 corresponding to the area 133 is
2, a mask area 161 is defined corresponding to
A heart-shaped mask is written in 161. this
At this time, as shown on the CRT 10 in FIG.
Cut into a heart shape and superimposed on the image area 133
Is displayed. CRT controller that performs such processing
The line 9 is a mask shape prior to reading out the image memory 5.
This is realized by pre-reading the storage 306. for example
For example, in this embodiment, the line ahead by one in the vertical address direction is
Readout and mask control are performed. In the CRT 10 of FIG.
The raster image data to be displayed at the vertical address y is area 1
At 33, y from the beginning 0 , Y in the area 132 1 Is
When the raster is advanced, the
Mask area 162 is line y 0 +1 and area 161
In y 1 +1 is read out, and the next CRT 10
It is possible to prepare for the vertical address y + 1.
FIG. 15 shows an embodiment of the CRT controller. FIG. 15 shows a pair of horizontal and vertical modules of FIG.
Module. In FIG. 15, 161 and 16
2, 167 and 168 hold display addresses
Specify this register as in the previous embodiment using a register.
A rectangular area on the display is
Controlled. 173 can hold 2 rusks of mask
This is a two-line mask data buffer.
It is a sign. Read ahead by one vertical address
The mask data is addressed by the counter 174,
Input to the logic circuit 176. The logic circuit 176 is shown
Ad on display generated by no counter
Less X D , Y D Is in the rectangular area that this module should handle
Included and the mask data is ON
Gives a true output. This signal is input to the logic circuit 177
From the module with higher priority than this module
Is true, the memory address X
DAT , Y DAT Output data address buffer
179 and 178 are driven. The mask data MSKDT is
Mask data buffer 17 even during transfer of data to be displayed
Continue reading to 3. The mask data used is
The display data is read from the mask shape
Data must be read before the address.
One timing ahead of dress registers 166 and 172
Address register 165 holding the address
171 is output. At this time, the number of modules
Modules with different mask readings
ENMSK signal
Time-divided to allow use of the mask address bus
To prevent collisions. As described above, according to the present embodiment,
Superimpose images of any shape on the display at high speed and high definition
It is possible to display. According to this embodiment, the CRT
The controller image data itself is superimposed without rewriting.
It can be processed in a short time.
It is a sign. Next, the functions and operations of image editing will be described.
You. Table 1 shows various image editing functions in this device.
Is shown. FIG. 16 is a schematic flowchart of the editing operation.
It is assumed that a plurality of images are edited and synthesized. Image input
Processing 200 first reads the plurality of images and reads the image files.
Means the operation and processing to save to the file memory. This
In order to reduce the file size, the compressed data
Is used. Then perform component processing or layout processing.
Whether or not to perform is selected at 204. What is part processing 201?
Processing such as correction and replacement of the images is performed. [Table 1] The items in A in Table 1 are roughly equivalent. Layout processing 2
02 is a layout of a plurality of image data as completed parts
Processing such as rotation, scaling, and movement of the image in the processing that determines the out
Affine transformation that performs
Equivalent to item. Here, the component processing directly converts the image data.
Layout processing is required
Meter information (for example, magnification, position after rotation angle, etc.)
Just remember it. Therefore, the layout process
The data is thinned out, displayed on the CRT display 10 and
What is necessary is just to extract a parameter. At the stage where such processing has been completed, the actual image
The data 203 is performed. This is the completed parts data
Copy to image memory under layout parameters
And edit. After such processing is completed, the image memory
Data to the printer and output the printer
Do. FIG. 17 illustrates the image input processing 200 in detail.
First, the document reading 207 is performed by the reader.
After the data is compressed by the aforementioned compressor (208),
The file is registered in, for example, a hard disk or the like. This
Repeat steps as long as the original is present.
Then, the process ends (210). FIG. 18 shows the contents of the component processing.
First, a process item selection 211 is performed as to what to do. First
The color correction 212 converts image data from a file into an image
Transfer to the memory (image memory is CRT10 video
Since it also serves as a memory, it is immediately output to CRT10.
Color correction while looking at the CRT 10. Such an operation
The image data in the image memory is
Look up Tab to output to A (CRT) 10
This is performed by changing le (LUT) (216). with this
The LUT at the time when the image is considered to be good is stored (22
0). The contour correction 213 is similarly output to the CRT.
Place the spatial filter calculator on the cable
I don't need to do anything. And the spatial filter information (for example,
The well-known Laplacian coefficient) and the like are stored (221).
Next, the cutout mask 214 is placed in parallel with the image memory.
Rewrite the 1-bit plane mask memory
U. This determines the area of the image, and the actual image data is
Do not touch (218). Other processing is actual data correction 2.
A process called No. 15 is performed. This is on the image memory
Access the actual image data written in
Write or erase an image on a real image
Or copy. When the above processing is completed, the actual data
Register 222 data and mask data as a file.
You. FIG. 19 shows the layout processing.
It is. First, image data from a file
Write to memory (223). At this time, as described above,
Data can be stored in the image memory.
Engulfed. A plurality of such image data are stored in a CRT
Controller performs variable magnification (225) on CRT10
Is output to At this time, the image is rotated on the image memory
Raster operation by affine converter 4 to another area of
(224). Meanwhile
Doubles can only be done with the CRT controller with integer scaling
Therefore, arbitrary magnification is performed by the converter 4 in the same manner. Output image area
Next, the data creation 226 of the mask memory for limiting
U. The above operation is performed for each image, and the layout
The parameters are extracted (227). FIG. 20 shows the above component data and layout.
A final image is formed based on the parameters. This process
Can be completely unmanned. The image to be overlaid first
It is processed first from the part data. Review the first image
Outline parameters and mask data are pipelined
AFFINE conversion register, LUT and mask
Mori (This is a 1-bit parallel to the image memory
Memory). Then the data from the file
Memos via these pipeline processors
Transferred to The resulting raster operation
(ROP). This processing is performed for the number of component data (n
max only) Repeatedly overlaid on image memory
(230, 231). Next, output to the printer will be described. The edited image data is stored in the image memory.
And transferred to the printer. Printer output
Force method, such as plane-sequential, line-sequential,
The sending status from the memory differs. Such a conversion is shown in FIG.
The conversion is performed by the converter 12. Prior to that, pass the compressed data
The normal pixel data is decoded by the decoder 6 in advance. Normally, one printer 7 is connected. I
However, by connecting multiple printers,
High-speed output, especially those that require large amounts of output.
It is important in the plate and printing fields. To this image memory
Image data is stored by compressing the density data and
Data to multiple printers
Hue misalignment that occurs when connected (this is an individual printer
Varies depending on the condition of
L00k Up Table to move to another certain density data
Conversion and correction can be performed by (LUT). (This is usually because the image memory is binarized)
It is difficult to store data in a state after it has been deleted.) Or
The adjustment mechanism for individual printers using the LUT is a converter.
12 included. In the color printer 7, such correction is performed.
Image data based on the normal method such as dither method
Image output. As described above, image editing using compressed data
System architecture suitable for high-speed editing
High-speed and high-performance image editing by taking a char
Can be done. As described above, according to the present invention, a color image
Efficiently determine processing conditions for processing applied to data
Can be.

【図面の簡単な説明】 【図1】実施例のカラー編集処理装置の概観図。 【図2】符号化データのデータ形成を示す図。 【図3】アフイン変換器のアドレス生成部のブロック
図。 【図4】アドレス生成部のタイミングチャート図。 【図5】原画像と処理画像のアドレス対応を示した図。 【図6】ブロック回転とブロック内回転の概念図。 【図7】ブロック内回転を示した図。 【図8】回転によって符号が受ける処理を示した図。 【図9】回転のブロック図。 【図10】CRTコントローラの概念図。 【図11】CRTコントローラのブロック図。 【図12】CRTコントローラの概念図。 【図13】CRTコントローラのブロック図。 【図14】CRTコントローラの概念図。 【図15】CRTコントローラのブロック図。 【図16】画像編集処理手順を示したフローチャート
図。 【図17】画像編集処理手順を示したフローチャート
図。 【図18】画像編集処理手順を示したフローチャート
図。 【図19】画像編集処理手順を示したフローチャート
図。 【図20】画像編集処理手順を示したフローチャート
図。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a schematic view of a color editing apparatus according to an embodiment. FIG. 2 is a diagram showing data formation of encoded data. FIG. 3 is a block diagram of an address generator of the affine converter. FIG. 4 is a timing chart of an address generation unit. FIG. 5 is a diagram showing an address correspondence between an original image and a processed image. FIG. 6 is a conceptual diagram of block rotation and block rotation. FIG. 7 is a view showing rotation in a block. FIG. 8 is a diagram showing a process of receiving a code by rotation. FIG. 9 is a block diagram of rotation. FIG. 10 is a conceptual diagram of a CRT controller. FIG. 11 is a block diagram of a CRT controller. FIG. 12 is a conceptual diagram of a CRT controller. FIG. 13 is a block diagram of a CRT controller. FIG. 14 is a conceptual diagram of a CRT controller. FIG. 15 is a block diagram of a CRT controller. FIG. 16 is a flowchart illustrating an image editing processing procedure. FIG. 17 is a flowchart illustrating an image editing processing procedure. FIG. 18 is a flowchart illustrating an image editing processing procedure. FIG. 19 is a flowchart illustrating an image editing processing procedure. FIG. 20 is a flowchart illustrating an image editing processing procedure.

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭58−125171(JP,A) 特開 昭60−131594(JP,A) (58)調査した分野(Int.Cl.6,DB名) G06T 1/00 - 11/80 H04N 1/60────────────────────────────────────────────────── ─── Continuation of the front page (56) References JP-A-58-125171 (JP, A) JP-A-60-131594 (JP, A) (58) Fields investigated (Int. Cl. 6 , DB name) G06T 1/00-11/80 H04N 1/60

Claims (1)

(57)【特許請求の範囲】 1.複数のカラー画像データの夫々に基づくカラー画像
を表示手段上に表示させ、 前記表示手段上に表示されたカラー画像に対する色修正
処理のための指示を受け付け、該指示に従った色修正処
理を該カラー画像に対して行い、該色修正処理に対応す
る色修正条件を記憶し、 前記表示手段上に表示されたカラー画像に対する輪郭修
正処理のための指示を受け付け、該指示に従った輪郭修
正処理を該カラー画像に対して行い、該輪郭修正処理に
対応する輪郭修正条件を記憶し、 前記複数のカラー画像データの夫々に基づく低解像度の
カラー画像を生成すると共に、該低解像度のカラー画像
を前記表示手段上で合成させ、 前記表示手段上で合成された低解像度のカラー画像に対
応するカラー画像データに対して前記色修正条件若しく
は前記輪郭修正条件に基づく処理を施し、該カラー画像
データを高解像度のカラー画像として出力することを特
徴とするカラー画像処理方法。 2.複数のカラー画像データの夫々をイメージメモリに
転送し、 前記複数のカラー画像データの夫々に基づくカラー画像
を表示手段上に表示させ、 前記表示手段上に表示されたカラー画像に対する色修正
処理のための指示を受け付け、該指示に従った色修正処
理を該カラー画像に対して行い、該色修正処理に対応す
る色修正条件を記憶し、 前記表示手段上に表示されたカラー画像に対する輪郭修
正処理のための指示を受け付け、該指示に従った輪郭修
正処理を該カラー画像に対して行い、該輪郭修正処理に
対応する輪郭修正条件を記憶し、 前記色修正条件若しくは前記輪郭修正条件に基づいて処
理される複数のカラー画像を前記表示手段上で合成させ
ると共に、該表示手段上で合成されたカラー画像を解像
度の高いカラー画像として出力することを特徴とするカ
ラー画像処理方法。
(57) [Claims] A color image based on each of the plurality of color image data is displayed on a display unit, an instruction for a color correction process for the color image displayed on the display unit is received, and the color correction process according to the instruction is performed. A color correction condition corresponding to the color correction process is stored for a color image, an instruction for a contour correction process for the color image displayed on the display means is received, and a contour correction process according to the instruction is performed. Is performed on the color image, and a contour correction condition corresponding to the contour correction processing is stored, and a low-resolution color image based on each of the plurality of color image data is generated. The color correction condition or the contour correction is performed on the color image data corresponding to the low-resolution color image synthesized on the display unit, on the display unit. A color image processing method comprising: performing a process based on a condition; and outputting the color image data as a high-resolution color image. 2. Transferring each of the plurality of color image data to an image memory, displaying a color image based on each of the plurality of color image data on a display unit, and performing color correction processing on the color image displayed on the display unit Is received, a color correction process according to the instruction is performed on the color image, a color correction condition corresponding to the color correction process is stored, and a contour correction process on the color image displayed on the display unit is performed. For the color image, performing an outline correction process according to the instruction on the color image, storing an outline correction condition corresponding to the outline correction process, based on the color correction condition or the outline correction condition. A plurality of color images to be processed are synthesized on the display means, and the color image synthesized on the display means is output as a high-resolution color image. And a color image processing method.
JP9013938A 1997-01-28 1997-01-28 Color image processing method Expired - Fee Related JP2821452B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9013938A JP2821452B2 (en) 1997-01-28 1997-01-28 Color image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9013938A JP2821452B2 (en) 1997-01-28 1997-01-28 Color image processing method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP60281634A Division JP2653781B2 (en) 1985-12-13 1985-12-13 Image editing processing method

Publications (2)

Publication Number Publication Date
JPH09179972A JPH09179972A (en) 1997-07-11
JP2821452B2 true JP2821452B2 (en) 1998-11-05

Family

ID=11847154

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9013938A Expired - Fee Related JP2821452B2 (en) 1997-01-28 1997-01-28 Color image processing method

Country Status (1)

Country Link
JP (1) JP2821452B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58125171A (en) * 1982-01-21 1983-07-26 Toshiba Corp Picture display

Also Published As

Publication number Publication date
JPH09179972A (en) 1997-07-11

Similar Documents

Publication Publication Date Title
EP0597555B1 (en) Image processing apparatus
JP2922680B2 (en) Compressed image storage method for high-resolution computer graphics
JP3063957B2 (en) Image processing device
US5034806A (en) Image processing apparatus and method
JPH01184581A (en) Document image processor
JP2830690B2 (en) Image processing device
US6208767B1 (en) Hardware rotation of images with line sorting in L*A*B* color space
US6307966B1 (en) 180° rotation of digital images with concurrent compression
JP2821452B2 (en) Color image processing method
JP2653781B2 (en) Image editing processing method
JP2575641B2 (en) Image editing processing method
JPH0679322B2 (en) Image editing processor
JP2862498B2 (en) Image processing method
JP2974596B2 (en) Color image processing equipment
EP0558292B1 (en) Compression/expansion circuit
JP2000503134A (en) Image signal processing apparatus and digital data signal processing method
JPH08123939A (en) Picture processor
JP2641432B2 (en) Interface device
JP3629509B2 (en) Shading processor
JPH10136179A (en) Data processing unit
JP2000227848A (en) Image processor
JP2513636B2 (en) Image processing device
JP2744229B2 (en) Image processing device
JPS62140178A (en) Image editing processor
JP3037363B2 (en) Image processing device

Legal Events

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