JP3935335B2 - Image data processing apparatus and color image forming apparatus - Google Patents

Image data processing apparatus and color image forming apparatus Download PDF

Info

Publication number
JP3935335B2
JP3935335B2 JP2001334838A JP2001334838A JP3935335B2 JP 3935335 B2 JP3935335 B2 JP 3935335B2 JP 2001334838 A JP2001334838 A JP 2001334838A JP 2001334838 A JP2001334838 A JP 2001334838A JP 3935335 B2 JP3935335 B2 JP 3935335B2
Authority
JP
Japan
Prior art keywords
image data
image
data
pixel
output
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
JP2001334838A
Other languages
Japanese (ja)
Other versions
JP2003141519A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2001334838A priority Critical patent/JP3935335B2/en
Priority to US10/283,350 priority patent/US7286717B2/en
Priority to EP02257566.6A priority patent/EP1309173B1/en
Publication of JP2003141519A publication Critical patent/JP2003141519A/en
Application granted granted Critical
Publication of JP3935335B2 publication Critical patent/JP3935335B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Image Input (AREA)
  • Facsimile Image Signal Circuits (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、入出力インターフェースにバッファメモリ装置がある画像データ処理装置およびカラー画像形成装置に関する。
【0002】
【従来の技術】
画像データ処理には例えば、原稿スキャナが読取ったRGB画像データに読取り歪を補償又は修正する読取補正(CCDライン間補正,主走査レジスト調整,シェーディング補正,ドット補正,縦スジ補正,γ変換等),読取った画像が文字,線などの濃淡が2値的なもの(以下単に文字と称す)のエッジ(文字エッジ)又は中(線幅内:文字なか)か、写真などの網点画像(以下単に写真と称す)か、更に、有彩か、無彩か、を判定する像域分離,読取補正をしたRGB画像データのYMCK画像データへの変換を主とする中間処理(フィルタ処理,地肌除去,色変換すなわちYMCK画像データへの変換,下色除去,主走査変倍,主走査シフト,主走査ミラーリング,副走査間引き,マスク処理および単色文字出力の場合の2値化)、ならびに、中間処理したYMCK画像データをプリンタの出力特性に合うように補正する出力補正(プリンタγ変換および階調処理)などがあり、また階調処理には、濃度変換,ディザ処理,誤差拡散処理等があるなど、多種多様な処理がある。
【0003】
そしてデータの処理形態も、フィルタ処理における積和演算,像域分離におけるパターンマッチング,LUT(Look Up Table:変換テーブル)を用いるデータ変換(例えばγ変換)或は補正演算(例えばシェーディング補正)等々、様々である。
【0004】
先行の画像データ処理と後行の画像データ処理の処理速度が異なる場合には、これらの間でバッファメモリに画像データを一時格納する必要がある。フィルタ処理やパターンマッチングでは、数ラインに及ぶ画素マトリクスの画像データ群を同時に参照する必要があるため、数ライン分のラインバッファメモリが必要である。従って、画像データ処理では、バッフアメモリ装置が用いられる。
【0005】
特開平8−305329号公報は、データの流れに沿って入力データセレクタ6,入力データラッチ10,1つのメモリ部1,出力データラッチ11および出力データセレクタ9をこの順に接続し、さらに書込アドレスセレクタ7,読出しアドレスセレクタ8および各セレクタを制御するCPU12を備えて、CPU12によるセレクタの設定によりメモリ部1を、TV受信映像信号のラインメモリと非線形演算のためのルックアップテーブルに選択使用する信号処理装置を開示している。ルックアップテーブルのデータはCPU12が発生してメモリ部1に書込む。
【0006】
【発明が解決しようとする課題】
画像処理には、上述のように多くの形態があるのに加えて、メモリへの蓄積や編集などもある。画像読取り,蓄積記憶およびプリントアウトの何れにおいても、白黒読取り,白黒記録にかかわる白黒画像データの処理すなわちモノクロ画像モードの処理と、RGB画像データやYMCK画像データなどの処理即ちカラー画像モードの処理がある。カラー処理機であっても、モノクロ画像モードの使用要求も多く、モノクロ画像モードが選択可であるのが一般的である。
【0007】
モノクロ画像モードでは単色画像データを処理する。これに対して、カラー画像モードでは、読取り処理においては、R(レッド),G(グリーン)およびB(ブルー)それぞれの画像データすなわち3色分の画像データを処理し、記録(プリント)モードにおいては、Y(イエロー),M(マゼンタ),C(シアン)およびK(ブラック)それぞれの画像データ即ち4色分の画像データを処理する。したがって、モノクロ画像モードの画像データ転送システムをカラー画像モードにも使用すると、単純には、カラー画像モードでは、1ラインの画像データ転送がモノクロ画像モードの転送時間の3倍或は4倍になってしまう。1ライン分の画像データ処理時間は、3倍以上或は4倍以上になる。
【0008】
これを短くするために、2以上の画像データを同時に並行して入出力しえて、複数の画像データに同時に並行して、補正,変換などのデータ処理ができる画像処理器をカラー処理機に採用するのが好ましい。これによれば、カラー画像モードでは、2色(2連)以上の画像データ列を同時に並行して処理できるので、処理速度を数倍に向上しうる。しかし、この場合、カラー画像モードでのデータ転送が同時に2色(2連)以上になるので、従来のモノクロ専用の、1系統のデータ転送ラインのみを有する画像処理システムには、そのままでは適用できない。また、モノクロ画像モードで従来のモノクロ専用機と同様に白黒画像データの転送およびデータ処理をすると、画像処理器が同時に2連以上の画像データの処理能力があるにもかかわらず、一連づつの処理となり、モノクロ画像モードでは画像処理器の能力を十分に活かせない。
【0009】
前記特開平8−305329号公報の信号処理装置のデータ処理は、ラインメモリの使用態様でのCPU12による出力データセレクタ9の切り替え制御によるラインデータへの0の挿入と、ルックアップテーブルの使用態様でのルックアップテーブルによるデータ変換であり、上述のごとき各種の複雑な画像データ処理に適用は難しい。
【0010】
本発明は、カラー画像モードもモノクロ画像モードも共通の画像処理部の構成で、高速で処理が可能となる入出力インターフェースを有する画像データ処理装置および方法を提供することを第1の目的とし、画像処理速度が速い複合機能があるカラー画像形成装置を提供することを第2の目的とする。
【0011】
【課題を解決するための手段】
(1)画像データの入力もしくは出力を選択的に行なう画像ポートと、
画像データに所定の画像処理を行なう画像処理器と、
前記画像ポートから画像データを受け取り前記画像処理器へ入力する処理と、前記画像処理器から出力された画像データを受け取り前記画像ポートへ出力する処理選択的に行なうバッファメモリ装置と、を備える画像データ処理装置において、
前記画像ポートへ入力もしくは画像ポートから出力する画像データは、画像データを時系列にシリアルに並べた1連の画像データ列を2以上の所定数a 並行して入出力するa 連の画像データ列であり、
前記画像処理器は、
データ処理を行なう2以上の所定数bのプロセッサエレメントと、
前記バッファメモリ装置との入出力インターフェイスとして機能し、前記プロセッサエレメントの各々に対応して b のデータを蓄えることができる a 以上の複数のレジスタと、
前記バッファメモリ装置からのデータを b 毎に前記レジスタへ入出力する処理と、前記各プロセッサエレメントに対応する前記レジスタの各データに対して同一の処理を同時に並行して処理させる制御を行なう処理制御手段とから構成され、
前記バッファメモリ装置は、
前記画像ポートへ入出力する前記画像データを少なくとも b 以上蓄えるバッファメモリと、
記バッファメモリに対して前記画像データの入出力管理を行なうメモコンとから構成され、
前記メモコンは、前記画像ポートを入力として選択したとき、
前記バッファメモリに蓄積された前記画像データを1連の画像データ列で並行するa列に振り分ける分離機能と
前記分離機能により分離したa列で1連の画像データ列を前記画像処理器の所定の前記各レジスタに a 列の並行入力をする並行入力機能を行い、
前記画像ポートを出力として選択したとき、
前記画像処理器の所定の a 列の各レジスタから各1連の画像データを並行出力する並行出力機能と
前記並行出力機能により出力された a 列で 1 連の画像データ列を順次摘出して a 連の画像データ列に合成して前記バッファメモリに前記画像データとして蓄える合成機能を行なうものであって、
前記 a 連の画像データ列として、カラー画像データにおける第1色の画像データ列から第 a 色の画像データ列を並行入力もしくは並行出力することで、カラー画像データを入出力するのに必要な画像ポート数を削減することを特徴とした画像データ処理装置。
【0012】
これによれば、メモコンの分離機能を用いて例えばモノクロ画像モードでは一連(例えば1ライン)の白黒画像データをa連(例えば奇数番画素の画像データ列と偶数番画素の画像データ列の2連)に分離して各連の各画像データを同時に並行して画像処理器に与えて同時に並行してデータ処理でき、白黒画像データの高速処理が可能となる。更に、メモコンの合成機能を用いて、処理したa連の画像データを1ラインに合成して出力できるので(図6のAf)、モノクロ画像処理システムのデータ転送ラインでも、そのまま処理後データを転送できる。このような処理は、カラー画像モードにおいて、1色1ラインの画像データに対しても同様に行って、1ライン分の1色の処理速度を高くできる。
【0013】
また、カラー画像モードでは、1ラインのRGB画像データ又はYMCK画像データの、複数色(例えば2色)の画像データのそれぞれを、同時に並行して画像処理器に与えて同時に並行してデータ処理し、処理後のa連の画像データを、メモコンの合成機能を用いて、一連に合成して出力できるので(図6のCf〜Ff)、カラー画像データの処理速度が速く、しかもモノクロ画像処理システムのデータ転送ライン(1系統)と同様なデータ転送ラインでも、そのまま処理後データを転送できる。
【0014】
【発明の実施の形態】
(2)前記画像データ処理装置において、前記a 連の画像データ列としてカラー画像データにおける第1色の画像データ列から a の画像データ列を並行入力もしくは並行出力することに代えて、前記 a の画像データ列として隣接するa の画素を並行入力もしくは並行出力することで、前記画像ポートから前記バッファメモリ装置への入出力を高速に処理することを特徴とした上記(1)に記載の画像データ処理装置。
【0015】
(3)前記メモリバッファ装置は複数のバッファメモリと複数のメモコンの組み合わせを1セットとする複数セットから構成され、前記画像ポートから画像データを受け取り前記画像処理器へ入力する処理と、前記画像処理器から出力された画像データを受け取り前記画像ポートへ出力する処理を各セット単位で選択的に行なうことを特徴とした上記(1)又は(2)に記載の画像データ処理装置。
【0016】
(4)前記画像処理器は、更に読み書き可能なプログラムメモリを有し、
前記画像データ処理装置は、更に前記プログラムメモリにデータ処理プログラムを書込む手段を備え、
前記画像処理器は前記プログラムメモリに書込まれたデータ処理プログラムに従って画像処理を行なうこと特徴とした上記(3)に記載の画像データ処理装置。
【0017】
(5)上記()に記載の前記画像データ処理装置と、
カラー画像読取手段と、画像形成手段を有するカラー画像形成装置において
前記画像データ処理装置は、前記画像処理器を前記データ処理プログラムに従ってRGB画像データを読取補正する第1の画像処理器、
RGB画像データをYMCK画像データに変換する第2の画像処理器、
YMCK画像データを出力補正する第3の画像処理器として処理するように前記データ処理プログラムを書込む手段により前記プログラムメモリに書き込み、
前記カラー画像読取手段で読取ったRGB画像データを、前記第1の画像処理器で前記カラー画像読取手段の画像読取用の読取補正を行い、
該読取補正を行なったRGB画像データを前記第2の画像処理器でYMCK画像データに変換し、
該変換したYMCK画像データを前記第3の画像処理器で前記画像形成手段の画像形成用の出力補正を行い、
該出力補正したYMCK画像データを、前記画像形成手段で画像形成することを特徴としたカラー画像形成装置。
【0018】
(6)前記a 連の画像データ列は、RGB画像データにおけるいずれか色の画像データであることを特徴とした上記(1)に記載の画像データ処理装置。
【0019】
(7)前記a 連の画像データ列は、CMYK画像データにおけるいずれか色の画像データであることを特徴とした上記(1)に記載の画像データ処理装置。
【0020】
(8)前記 a連の画像データ列は、1ラインの奇数番目の画素と偶数番目の画素のデータ列であること特徴とした上記(2)に記載の画像データ処理装置。
【0021】
(9)前記 a連の画像データ列は、隣接する2ラインの画像データ列であること特徴とした上記(2)に記載の画像データ処理装置。
【0022】
(10)前記 a連の画像データ列は白黒読取りの白黒画像データの列である上記(8)又は(9)に記載の画像データ処理装置。
【0023】
本発明の他の目的および特徴は、図面を参照した以下の実施例の説明より明らかになろう。
【0024】
【実施例】
−第1実施例−
図1に本発明の一実施例の複合機能フルカラーデジタル複写機の外観を示す。このフルカラー複写機は、大略で、自動原稿送り装置ADFと、操作ボードOPBと、カラースキャナSCRと、カラープリンタPTR、の各ユニットで構成されている。機内のカラー画像データ処理装置ACP(図3)には、パソコンPCが接続したLAN(Local Area Network)、および、電話回線PN(ファクシミリ通信回線)に接続された交換器PBXが接続されており、交換器PBXにファクシミリボードのファクシミリコントロールユニットFCU(図3)が接続されている。プリンタPTRのプリント済の用紙は、排紙トレイ8上に排出される。
【0025】
図2に、カラープリンタPTRの機構を示す。この実施例のカラープリンタPTRは、レーザプリンタである。このレーザプリンタPTRは、マゼンダ(M),シアン(C),イエロー(Y)および黒(ブラック:K)の各色の画像を形成するための4組のトナー像形成ユニットが、転写紙の移動方向(図中の右下から左上方向)に沿ってこの順に配置されている。即ち、4連ドラム方式のフルカラー画像形成装置である。
【0026】
これらマゼンダ(M),シアン(C),イエロー(Y)および黒(K)のトナー像形成ユニットは、それぞれ、感光体ドラム11M,11C,11Yおよび11Kを有する感光体ユニット10M,10C,10Yおよび10Kと現像ユニット20M,20C,20Yおよび20Kとを備えている。また、各トナー像形成部の配置は、各感光体ユニット内の感光体ドラム11M,11C,11Yおよび11Kの回転軸が水平x軸に平行になるように、且つ、転写紙移動方向(y,z平面上でy軸に対して45°をなす左上がり線)に所定ピッチの配列となるように、設定されている。各感光体ユニットの感光体ドラムとしては、表面に有機感光体(OPC)層を有する直径が30mmの感光体ドラムを用いた。
【0027】
また、レーザプリンタPTRは、上記トナ−像形成ユニットのほか、レーザ走査による光書込ユニット2、給紙カセット3,4、レジストローラ対5、転写紙を担持して各トナ−像形成部の転写位置を通過するように搬送する転写搬送ベルト60を有する転写ベルトユニット6、ベルト定着方式の定着ユニット7、排紙トレイ8等を備えている。また、レーザプリンタPTRは、図示していない手差しトレイ、トナ−補給容器、廃トナーボトル、両面・反転ユニット、電源ユニットなども備えている。
【0028】
光書込ユニット2は、光源、ポリゴンミラー、f−θレンズ、反射ミラー等を備え、画像データに基づいて各感光体ドラム11M,11C,11Yおよび11Kの表面にレーザ光を、x方向に振り走査しながら照射する。また図2上の一点鎖線は、転写紙の搬送経路を示している。給紙カセット3,4から給送された転写紙は、図示しない搬送ガイドで案内されながら搬送ローラで搬送され、レジストローラ対5に送られる。このレジストローラ対5により所定のタイミングで転写搬送ベルト60に送出された転写紙は転写搬送ベルト60で担持され、各トナ−像形成部の転写位置を通過するように搬送される。
【0029】
各トナー像形成部の感光体ドラム11M,11C,11Yおよび11Kに形成されたトナー像が、転写搬送ベルト60で担持され搬送される転写紙に転写され、各色トナー像の重ね合わせ即ちカラー画像が形成された転写紙は、定着ユニット7に送られる。定着ユニット7を通過する時トナー像が転写紙に定着する。トナー像が定着した転写紙は、排紙トレイ8上に排出される。すなわち転写は、転写紙上にじかにトナー像を転写する直接転写方式である。
【0030】
イエローYのトナ−像形成ユニットの概要を次に説明する。他のトナ−像形成ユニットも、イエローYのものと同様な構成である。イエローYのトナー像形成ユニットは、前述のように感光体ユニット10Y及び現像ユニット20Yを備えている。感光体ユニット10Yは、感光体ドラム11Yのほか、感光体ドラム表面に潤滑剤を塗布するブラシローラ,感光体ドラム表面をクリーニングする揺動可能なブレード,感光体ドラム表面に光を照射する除電ランプ,感光体ドラム表面を一様帯電する非接触型の帯電ローラ、等を備えている。
【0031】
感光体ユニット10Yにおいて、交流電圧が印加された帯電ローラにより一様帯電された感光体ドラム11Yの表面に、光書込ユニット2で、プリントデータに基づいて変調されポリゴンミラーで偏向されたレーザ光Lが走査されながら照射されると、感光体ドラム11Yの表面に静電潜像が形成される。感光体ドラム1IY上の静電潜像は、現像ユニット20Yで現像されてイエローYのトナー像となる。転写搬送ベルト60上の転写紙が通過する転写位置では、感光体ドラム1IY上のトナー像が転写紙に転写される。トナ−像が転写された後の感光体ドラム11Yの表面は、ブラシローラで所定量の潤滑剤が塗布された後、ブレードでクリーニングされ、除電ランプから照射された光によって除電され、次の静電潜像の形成に備えられる。
【0032】
現像ユニット20Yは、磁性キャリア及びマイナス帯電のトナ−を含む二成分現像剤を収納している。そして、現像ケース1Yの感光体ドラム側の開口から一部露出するように配設された現像ローラや、搬送スクリュウ、ドクタブレード、トナ−濃度センサ,粉体ポンプ等を備えている。現像ケース内に収容された現像剤は、搬送スクリュウで損枠攪拌搬送されることにより摩擦帯電する。そして、現像剤の一部が現像ローラの表面に担持される。ドクタブレードが現像ローラの表面の現像剤の層厚を均一に規制し、現像ローラの表面の現像剤中のトナーが感光体ドラムに移り、これにより静電潜像に対応するトナー像が感光体ドラム11Y上に現われる。現像ケース内の現像剤のトナー濃度はトナ−濃度センサで検知される。濃度不足の時には、粉体ポンプが駆動されてトナーが補給される。
【0033】
次に、転写ベルトユニット6の概要を説明する。転写ベルトユニット6の転写搬送ベルト60は、体積抵抗率が10〜1011Ωcmである高抵抗の無端状単層ベルトであり、その材質はPVDF(ポリふっ化ビニリデン)である。この転写搬送ベルト60は、各トナ−像形成部の感光体ドラム11M,11C,11Yおよび11Kに接触対向する各転写位置を通過するように、4つの接地された張架ローラに掛け回されている。これらの張架ローラのうち、2点鎖線矢印で示す転写紙移動方向上流側の入口ローラには、電源から所定電圧が印加された静電吸着ローラが対向するように配置されている。これらの2つのローラの間を通過した転写紙は、転写搬送ベルト60上に静電吸着される。また、転写紙移動方向下流側の出口ローラは、転写搬送ベルトを摩擦駆動する駆動ローラであり、図示しない駆動源に接続されている。また、転写搬送ベルト60の外周面には、電源から所定のクリーニング用電圧が印加されたバイアスローラが接触するように配置されている。このバイアスローラにより転写搬送ベルト60上に付着したトナ−等の異物が除去される。
【0034】
また、感光体ドラム11M,11C,11Yおよび11Kに接触対向する接触対向部を形成している転写搬送ベルト60の裏面に接触するように、転写バイアス印加部材を設けている。これらの転写バイアス印加部材は、マイラ製の固定ブラシであり、各転写バイアス電源から転写バイアスが印加される。この転写バイアス印加部材で印加された転写バイアスにより、転写搬送ベルト60に転写電荷が付与され、各転写位置において転写搬送ベルト60と感光体ドラム表面との間に所定強度の転写電界が形成される。
【0035】
図3に、図1に示す複写機の電気系システムの主要部を示す。原稿を光学的に読み取るカラー原稿スキャナSCRは、読み取りユニット21にて、原稿に対するランプ照射の反射光をミラー及びレンズにより受光素子に集光する。受光素子(本実施例ではCCD)は、読み取りユニット21のセンサー・ボード・ユニット(以下単にSBUと称す)にあり、CCDに於いて電気信号に変換されたRGB画像信号は、SBU上でディジタル信号すなわち読取った各8ビット多値のR,G,B画像デ−タに変換された後、SBUから、第1画像処理ユニットIPU1(以下、単にIPU1と表現する)に与えられる。
【0036】
IPU1は、入力RGB画像デ−タのそれぞれ(R,G,B画像データ)に、読取補正(CCDライン間補正,主走査レジスト調整,シェーディング補正,ドット補正,縦スジ補正およびスキャナγ変換)を加えると共に、RGB画像データが表す画像が、文字,線などの濃淡が2値的なもの(以下単に文字と称す)のエッジ(文字エッジ)又は中(線幅内:文字なか)か、写真などの網点画像(以下単に写真と称す)か、更に、有彩か、無彩か、を判定する像域分離を行う。また、RGB画像データが、紙幣や証券などの、複製禁止物を表すものであるかの判定(以下単に紙幣認識と称す)を行う。
【0037】
そしてIPU1は、読取補正をした各8ビット多値のRGB画像データに、像域分離結果すなわち判定結果を表す像域データFdを加えて、それらを圧縮/伸張及びカラーデータインターフェース制御部CDIC(以下単にCDICと称す)に出力する。紙幣認識の結果が複製禁止物であるとIPU1は、システムコントローラ106にこれを報知する。システムコントローラ106はこの報知に応答して、カラー原稿スキャナSCRによる原稿画像読取りに付帯する画像処理条件(たとえば複写指示の場合には、フルカラー読取りか否か)を参照して、忠実な複製となる複写条件が設定されていると複製画を大きく色違いにする、画像毀損用のスキャナγ変換をIPU1に設定する。
【0038】
CDICは、RGB画像データおよびYMCK画像データとそれらに付帯する像域データFdに関し、IPU1,パラレルバスPbおよび中間処理用の第2画像処理ユニットIPU2(以下、単にIPU2と表現する)の間のデータ転送、ならびに、図1に示すデジタル複写機全体制御を司るシステムコントローラ106と、主に読取ユニット21の動作とカラープリンタPTRの画像形成プロセス制御を司るプロセスコントローラ101間の、画像データ転送およびその他の制御に関する通信を行う。システムコントローラ106とプロセスコントローラ101は、パラレルバスPb,CDIC及びシリアルバスSbを介して相互に通信を行う。CDICは、その内部に於いてパラレルバスPbとシリアルバスSbとのデータインターフェースのためのデータフォーマット変換を行う。
【0039】
カラー原稿スキャナSCRのIPU1からの、像域データFd付きのRGB画像データ(以下単にRGB画像データと称すこともある)は、CDICを経由してIPU2又はパラレルバスPbに転送又は送出される。パラレルバスPbに送出したRGB画像データは、画像メモリアクセス制御部IMAC(以下単にIMACと称す)によって画像メモリMEMに書込まれる。画像メモリMEMからパラレルバスPbに読み出したRGB画像データは、ファクシミリ送信のときにはFCUに、そうでないときにはIPU2に出力される。
【0040】
IPU2はRGB画像データを各8ビット多値のYMCK画像データに変換し更にその前後に数種の画像処理を加える。YMCK画像データは、CDICを経由してパラレルバスPbに送出されIMACによって画像メモリMEMに格納される,或は、IPU2から直接に、Y,M,CおよびKの画像データごとにそれぞれ、第3画像処理ユニットIPU3y,IPU3m,IPU3cおよびIPU3k(以下、単にIPU3y,IPU3m,IPU3cおよびIPU3kと表現する)に出力される。
【0041】
IPU3y,IPU3m,IPU3cおよびIPU3kはそれぞれ、Y,M,CおよびK画像データに各色プリンタγ変換を施してから、階調処理によりプリント出力用の2値のY,M,CおよびK画像データに変換しカラープリンタPTRの作像ユニット105に出力する。
【0042】
上述のようにCDICには、RGB画像デ−タ又はYMCK画像データをメモリMEMに蓄積して再利用するジョブと、RGB画像デ−タをメモリMEMに蓄積しないでIPU2でYMCK画像データに変換してIPU3y,3m,3c,3kに出力しプリントアウトするジョブとがある。メモリMEMに蓄積する例としては、1枚の原稿を複数枚複写する場合、読取りユニット21を1回だけ動作させ、IPU1のRGB画像デ−タ又はそれをIPU2で変換したYMCK画像データをメモリMEMに蓄積し、蓄積データを複数回読み出す使い方がある。メモリMEMを使わない例としては、1枚の原稿を1枚だけ複写する場合、IPU1のRGB画像デ−タをそのままIPU2に出力しそのYMCK画像データをIPU3でプリンタ出力用に処理すれば良いので、メモリMEMへの書込みを行う必要はない。
【0043】
まず、メモリMEMを使わない場合、IPU1からCDICへ転送された画像データは、CDICからIPU2に送られる。IPU2は、RGB画像データに中間処理(フィルタ処理,地肌除去,色変換すなわちYMCK画像データへの変換,下色除去,主走査変倍,主走査シフト,主走査ミラーリング,副走査間引き,マスク処理および単色文字出力の場合の2値化)を施す。
【0044】
IPU3y,IPU3m,IPU3cおよびIPU3kはそれぞれ、Y,M,CおよびK画像データに、出力補正(プリンタγ変換および階調処理)を施す。階調処理により2値化されたY,M,CおよびK画像データが、レ−ザプリンタPTRの作像ユニット105に於いてY,M,CおよびK作像ユニットのレーザ変調器に与えられ、各色画像形成用の2値静電潜像が、感光体ドラム11Y,11M,11Cおよび11Kに形成される。階調処理には、濃度変換,ディザ処理,誤差拡散処理等が有り、階調情報の面積近似を主な処理とする。
【0045】
メモリMEMに蓄積し、それからの読み出し時に付加的な処理、例えば画像方向の回転,画像の合成等を行う場合は、IPU1からCDICへ転送されたデータは、CDICでバス転送用の1次圧縮をしてからパラレルバスPbを経由してIMACに送られる。ここではシステムコントローラ106の制御に基づき画像データと画像メモリMEMのアクセス制御,外部パソコンPC(以下単にPCと称す)のプリント用データの展開(文字コ−ド/キャラクタビット変換),メモリー有効活用のための画像データの2次圧縮を行う。
【0046】
IMACで2次圧縮したデータは画像メモリMEMへ蓄積し、蓄積データを必要に応じて読み出す。読み出したデータはIMACで2次伸張(2次圧縮の伸張)をして1次圧縮データに戻しIMACからパラレルバスPb経由でCDICへ戻される。CDICでは、1次伸張(1次圧縮の伸張)をして画像データに戻してIPU2に送り、RGB画像データの場合はそこでYMCK画像データに変換して、上述と同様に圧縮して画像メモリMEMに書込む。又は、IPU2のYMCK画像データを直ちにIPU3y〜3kに送り、作像ユニット105で画像を形成する。
【0047】
上述の画像データの流れに於いて、IMACの、画像メモリMEMおよびパラレルバスPbに対する画像データの読み書き制御、ならびに、CDICの、IPU1およびIPU2とパラレルバスPbとの間のバス制御により、デジタル複写機の複合機能を実現する。複写機能の1つであるFAX送信機能は、カラー原稿スキャナSCRの読取りユニット21が発生するRGB画像データをIPU1にて読取補正し、必要に応じて更にIPU2でYMCK画像データに変換して、CDIC及びパラレルバスPbを経由してFCUへ転送する。FCUにて公衆回線通信網PN(以下単にPNと称す)へのデータ変換を行い、PNへFAXデータとして送信する。FAX受信は、PNからの回線データをFCUにて画像データに変換し、パラレルバスPb及びCDICを経由してIPU2へ転送する。受信データがRGB画像データであるとIPU2でYMCK画像データに変換するが、受信データがYMCK画像データであると特別な中間処理は行わず、IPU3y〜3kに送り、作像ユニット105で画像を形成する。
【0048】
複数ジョブ、例えばコピー機能,FAX送受信機能およびプリンタ出力機能、が並行に動作する状況に於いて、カラー原稿スキャナSCR,カラープリンタPTR,パラレルバスPbおよびIPU2の使用権のジョブへの割り振りを、システムコントロ−ラ106およびプロセスコントロラ101にて制御する。
【0049】
プロセスコントローラ101は画像データの流れを制御し、システムコントローラ106はシステム全体を制御し各リソースの起動を管理する。このデジタル複合機能カラー複写機の機能選択は、操作ボ−ドOPBにて選択入力し、コピー機能,FAX機能等の処理内容を設定する。パソコンPCのプリントコマンドに応答するプリンタ出力機能の処理内容は、パソコンPCのプリントコマンドが設定する。
【0050】
カラー原稿スキャナSCRが出力する読取補正をしたRGB画像データを、一旦メモリMEMに蓄積しておけば、IPU3y,IPU3m,IPU3cおよびIPU3k、ならびに必要に応じてIPU2で施す処理を変える事によって種々の再生画像を確認することができる。例えばγ変換特性を変えてみたり、再生画像の濃度を振ってみたり、ディザマトリクスの線数を変更してみたりする事で、再生画像の雰囲気を変更できる。この時処理を変更する度に画像をカラー原稿スキャナSCRで読み込み直す必要はなく、MEMから格納画像を読み出せば同一データに対し、何度でも異なる処理を実施できる。
【0051】
図4の(a)に、カラー原稿スキャナSCRの画像データ処理系の概要を示す。CCD22が発生したR,G,B画像信号はA/Dコンバータ23で8ビット多値のR,G,B画像データに変換されて、インターフェース(以下ではI/Fと称す)24を通して、IPU1に与えられる。
【0052】
IPU1の主要部は、入出力I/F31,バッファメモリ32およびSIMD型プロセッサ33を結合したカラー画像処理ユニットである。
【0053】
図5に、IPU1のカラー画像処理ユニット(31+32+33)の各部の構成を示す。入出力I/F31には、画像データの入,出力をする画像ポート0〜4、および、制御データ,制御信号あるいは同期信号のやり取りをするモード設定器(モード指定デコーダ),SCI(Computer System Interface),割込みコントローラ,JTAG,ホストI/Fおよびクロックジェネレータ、ならびにタイマがある。画像ポート0および1は画像データの入力専用,画像ポート2は画像データの入出力用、ならびに、画像ポート3および4は出力専用である。
【0054】
画像ポートは、2バイトのデータを同時に並行して入力および又は出力できるもの、即ち二連の画像データを同時に入出力できるもの、であり、RGBおよびYMCKカラー画像データ(多値階調)は8ビット、モノクロ(白黒画像)読取りおよび又はモノクロ(白黒)プリントが指定(モノクロ画像モード指定)された場合の読取りデータ,プリント出力データ(多値階調)すなわち白黒画像データも8ビットである。したがってモノクロ画像モードのときには、2つの画像データ即ち2画素の画像データを同時に並行して入力/出力できる。カラー処理モードの時には、1画素のRGB各画像データの2つ(2色)を同時に並行して入力/出力できる。
【0055】
バッファメモリ32の一個のRAM 8K(8Kバイト)は、A3版短辺に平行な1ラインの600dpiの多値の画像データ(8ビット:R,G,B,Y,M,C,K画像データの1種)を格納しうる容量であり、ラインバッフアとして画像データの入力および又は出力に用いられる、あるいは、LUTとして用いられる。この種のRAM 8Kが16個ある。2個のRAM 2Kは、画像データ転送元又は転送先との間のシリアルデータ転送の速度差吸収のために、画像データを循環シフトする循環シフトレジスタとして使用するものである。
【0056】
これらのRAMはメモリスイッチSW1〜SW3の何れかに接続されている。画像ポート0〜4,メモリスイッチSW1〜SW3およびSIMD型プロセッサ33の3者の間にはメモリコントローラ「メモコン」が介挿されている。メモコンは、SIMD型プロセッサ33が与える入出力モード指定に応じて、メモリスイッチSW1〜SW3の内部のスイッチのオン/オフを定め、すなわち、画像ポート/メモコン/RAM使用モードの場合はメモリスイッチ&使用するRAM/SIMD型プロセッサの接続、を設定し、指定モードの、画像データのパラレル,シリアル変換および転送を行う。
【0057】
SIMD型プロセッサ33は、外部(メモコン)とのデータ入出力に関し、同時に並行して2バイトのデータを入出力できる入出力ポートを持ち、2バイト同時に入出力できるのはもとより、各バイトのそれぞれを個別に入出力できる。2バイト入出力および1バイトづつの入出力を任意に設定できる。
【0058】
図6に、メモコンが行うことができる画像データのパラレル,シリアル変換、ならびに、IPU1,IPU2およびIPU3y〜IPU3kが実施し得るデータ入出力モードの数例A〜Gを示す。
【0059】
AのAf方向(実線矢印)の画像データの流れは、例えばIPU1において、読取りユニット21が与える1ラインの画像データ(モノクロ画像モードの白黒画像データ又はカラー画像モードでのRGB画像データのうちの1色の画像データ)をメモコンAに与えて、メモコンAで1ライン上の各画像データを並び順で交互に振り分けて奇数番画素の画像データ列と偶数番画素の画像データ列の2連に分離して、奇数番画素の画像データと偶数番画素の画像データとを同時に並行してSIMD型プロセッサ33に与えて、プロセッサ33で両画像データを同時に並行して入力して各画像データに同時に並行してデータ処理を施してメモコンBに出力し、メモコンBで奇数番画素の画像データ列と偶数番画素の画像データ列から交互に画像データを摘出して1ラインに合成して、CDICに送出する、「1ライン入力の分離処理モード」のものである。
【0060】
なお、必要に応じてメモコンA及びメモコンBの入力側,出力側にラインバッフアメモリ(RAM 8k)もしくはLUT(RAM 8k)を介挿することもある。また、メモコンA,BおよびCは、同一のものを指す場合もあるし、別体の場合もある。これらは、以下に説明する他のモードにおいても同様である。
【0061】
AのAr方向(破線矢印)の画像データの流れは、例えばIPU2あるいはIPU3y〜3kにおいて、CDIC又はIPU2が与える1ラインの画像データをメモコンBで奇数番画素の画像データ列と偶数番画素の画像データ列の2連に分離して、SIMD型プロセッサ33で奇数番画素の画像データと偶数番画素の画像データとを同時に並行して処理して、同時に並行して出力し、メモコンAで1ラインに合成して、IPU3y〜3k又は作像ユニット105に送出する、「1ライン入力の分離処理モード」のものである。
【0062】
BのBf方向(実線矢印)の画像データの流れは、例えばIPU1において、読取りユニット21が与える1ライン上の奇数番画素の画像データ列と偶数番画素の画像データ列の2連(モノクロ画像モードの白黒画像データ又はカラー画像モードでのRGB画像データのうちの1色の画像データ)をメモコンAを介して、同時に並行してSIMD型プロセッサ33に与えて、プロセッサ33で同時に並行して処理を施して同時に並行して出力し、メモコンBで処理後の奇数番画素の画像データ列と偶数番画素の画像データ列を1ラインに合成して、CDICに送出する、「奇数偶数画素分離入力モード」のものである。
【0063】
BのBr方向(破線矢印)の画像データの流れは、例えばIPU2あるいはIPU3y〜3kにおいて、CDIC又はIPU2が与える1ラインの画像データをメモコンBで奇数番画素の画像データ列と偶数番画素の画像データ列の2連に分離して、SIMD型プロセッサ33で奇数番画素の画像データと偶数番画素の画像データとを同時に並行して処理して、同時に並行して出力し、メモコンAで2連のまま同時に並行して、IPU3y〜3k又は作像ユニット105に送出する、「奇数偶数画素分離出力モード」のものである。
【0064】
CのCf方向(実線矢印)の画像データの流れは、IPU2において、読取りユニット21が与える1ラインのRGB画像データの2つRおよびG画像データを、メモコンAを介して同時に並行してSIMD型プロセッサ33に与えて、プロセッサ33で同時に並行して処理を施して同時に並行して出力し、メモコンBで処理後のR画像データとG画像データを一連に合成してCDICに送出する、「複数色並行処理モード」のものである。
【0065】
CのCr方向(破線矢印)の画像データの流れは、IPU2において、CDICが与える、R画像データとG画像データを交互に配列した一連の画像データをメモコンBでR画像データ列とG画像データ列の2連に分離して、SIMD型プロセッサ33でR画像データとG画像データとを同時に並行して処理して、同時に並行して出力し、メモコンAで2連のまま同時に並行して、CDICに送出する、「複数色分離出力モード」のものである。
【0066】
DのDf方向(実線矢印)およびDr方向(破線矢印)の画像データの流れは、それぞれCのCf方向およびCr方向の画像データの流れと同様である。ただし、カラー読取りのRGB画像データは3連(3色)であるので、Dにおいては、もう一連のデータXが加えられる。このデータXはダミーデータの場合と、後述の像域データFdの場合がある。
【0067】
EのEf方向およびFのFf方向(いずれも実線矢印)の画像データの流れは、IPU2において、YMCK画像データの2連Y,M/C,KをメモコンAを介して、同時に並行してSIMD型プロセッサ33に与えて、プロセッサ33で同時に並行して処理を施して同時に並行して出力し、メモコンBで処理後の2連Y,M/C,Kの画像データを一連に合成してCDICに送出する、「複数色並行処理モード」のものである。
【0068】
EのEr方向およびFのFr方向(破線矢印)の画像データの流れは、IPU2において、CDICが与える、2色の画像データY,M/C,Kを交互に配列した一連の画像データを、メモコンBで2色すなわち2連に分離して、SIMD型プロセッサ33で2色を同時に並行して処理して、メモコンAで2連のまま同時に並行して、IPU3y,IPU3m/IPU3c,IPU3kに出力する「複数色分離出力モード」のものである。
【0069】
GのGf方向(実線矢印)の画像データの流れは、例えばIPU1において、モノクロ画像モードにおいて読取りユニット21が与える2ラインの白黒画像データをメモコンAを介して、同時に並行してSIMD型プロセッサ33に与えて、プロセッサ33で同時に並行して処理を施して同時に並行して出力し、メモコンBで処理後の2ラインの画像データをラインメモリ(RAM 8k)に順次に格納して、格納を終えると、1ラインごとにCDICに送出する、「白黒複数ライン処理モード」のものである。
【0070】
GのGr方向(破線矢印)の画像データの流れは、例えばIPU2あるいはIPU3kにおいて、CDIC又はIPU2がシリアルに与える2ラインの画像データをメモコンBでラインメモリ(RAM 8k)に蓄積して、2ライン分を同時に並行してSIMD型プロセッサ33に与えて、そこで同時に並行して処理して同時に並行して出力し、メモコンAで2連(2ライン)のまま同時に並行して、IPU3k又は作像ユニット105に送出する、「白黒複数ライン出力モード」のものである。
【0071】
なお、メモコンおよびSIMD型プロセッサ33共に、一連のみの入出力および処理は当然可能である。また、各メモコンには単体で、図6のB〜Gに示すメモコンAおよびSIMD型プロセッサ33を省略した形での、メモコンB(図6のB〜Fの場合)およびメモコンC(図6のGの場合)の、2連入力/一連出力のパラレル/シリアル変換(以下では単にシリアル変換という)の機能、ならびに、一連入力/2連出力のシリアル/パラレル変換(以下では単にパラレル変換という)の機能がある。
【0072】
この機能を用いてRGB画像データと共に像域データFdを転送する場合には、RおよびG画像データは、メモコンで2連入力/一連出力のシリアル変換(Cf出力)で一連にしてCDICに送出するが、B画像データは、像域データFdと共に2連入力/一連出力のシリアル変換(Df出力、ただしX=Fd)で一連にしてCDICに送出する。また、IPU2からIPU3y,IPU3m,IPU3cおよびIPU3kに、YMCK画像データのそれぞれと像域データFdとを送出するときには、IPU2の4個のメモコンのそれぞれで、Y,M,CおよびK画像データのそれぞれと像域データFdとを、2連入力/一連出力のシリアル変換(Cf出力)で一連にして、それぞれをIPU3y,IPU3m,IPU3cおよびIPU3kに転送する。IPU3y,IPU3m,IPU3cおよびIPU3kの各メモコンは、一連入力/2連出力のパラレル変換によって、Y,M,CおよびK画像データのそれぞれと像域データFdとの2連に分離する。
【0073】
この実施例では、バッフアメモリ装置32の画像ポートが2バイト(16ビット)パラレル入力および又は出力が可能なものであるので、同時に二連の画像データを並行して入,出力できる。したがって、画像ポートとSIMD型プロセッサ33との間でメモコンを介して同時に二連の画像データを並行して入出力できる。この場合には、図6のケースA〜Gの何れでも、画像ポートからメモコンAに画像データを入力して、すなわちケースAの場合には一連の画像データを、ケースB〜Gの場合には二連の画像データを入力して、メモコンAで二連に画像データを振り分けて同時に並行してSIMD型プロセッサ33に与えて、SIMD型プロセッサは同時に並行して処理をして、処理済データを二連で同時に出力し、メモコンA(別個のメモコンでもよい)がそのまま二連を、画像ポートを通して出力できる。この場合は、図6上では、SIMD型プロセッサ33に図6上最左端(画像ポート側)から実線矢印で示す方向(右向き)の流れで画像データを与えて、SIMD型プロセッサ33で折り返すように、処理済画像データを破線矢印で示す左向き方向(左端:画像ポート)に出力する形態のデータフローを採用するのが好ましい。
【0074】
画像ポートが1バイト(8ビット)の場合、あるいは2バイト以上であっても、データ入,出力の相手先が一連の画像データ入出力仕様の場合には、図6のA〜Gの何れでも、画像ポートからメモコンB(ケースGではメモコンC)に一連の画像データを入力して、メモコンBで二連に振り分けて同時に並行してSIMD型プロセッサ33に与えて、SIMD型プロセッサは同時に並行して処理をして、処理済データを二連で同時に出力し、メモコンB(別のメモコンでもよい)が一連に合成して画像ポートを通して出力する。この場合は、図6上では、SIMD型プロセッサ33に図6上最右端(画像ポート側)から点線矢印Ar〜Grで示す方向(左向き)の流れで画像データを与えて、SIMD型プロセッサ33で折り返すように、処理済画像データを実線矢印Af〜Gfで示す右向き方向(右端:画像ポート)に出力する形態のデータフローを採用する。
【0075】
即ち、本実施例のバッフアメモリ装置32は、図6上のA〜Gの、図6上最左端から最右端に流れるデータフロー,その逆に最右端から最左端に流れるデータフロー,最左端からSIMD型プロセッサ33で折り返して最左端に戻るデータフロー、および、最右端からSIMD型プロセッサ33で折り返して最右端に戻るデータフロー、の何れも任意に設定または選択できる。なお、これらのデータフローの何れでも、メモコンA,B,Cは同一のものであってもよいし、別個のものであっても良い。又、ラインバッフアメモリ(RAM 8k)は必要に応じてメモコンの入力側および又は出力側に介挿する。
【0076】
図7の(a)に、図5に示すSIMD型プロセッサ33の内部構成の概略を示し、図7の(b)には、(a)に示す1つのプロセッサエレメントPEの一部分の構成を拡大して示す。このSIMD型プロセッサ33は、内部にプロセッサエレメントPE区分のローカルメモリRAM群を持ち、使用するメモリ領域,データパスの経路をグローバルプロセッサ38にあるデータバスコントロールに於いて制御する。入力されたデータおよび出力のためのデータはローカルメモリRAM群をバッファーメモリとして割り当て、それぞれに格納し、外部I/F39にて外部に出力する。ローカルメモリRAMを含みそれぞれが8ビット以上の多値画像データに対して並行して同じ画像処理を行う320個のプロセッサエレメントPE群に、グローバルプロセッサ38が同時に同一の演算命令を与える。プロセッサエレメントPEの演算結果は再度ローカールメモリRAMに格納する。そして外部I/F39を通してメモコンに出力する。
【0077】
プロセッサエレメントPEの処理手順,処理のためのパラメータ等はプログラムRAM36及びデータRAM37との間でやり取りを行う。プログラムRAM36,データRAM37には、システムコントローラ106によって、ハードディスクHDDのプログラムおよびデータが、IMAC/パラレルバスPb/CDIC/シリアルバスSb経由で、ダウンロードされる。このデータ転送は、外部I/F39にあるDMAC(ダイレクトメモリアクセスコントローラ)が、システムコントローラ106が与えるロードコマンドに応答して実行する。このデータの流れは、該DMACの要求に応じてプロセスコントローラ101が設定する。
【0078】
画像処理の内容を変えたり、システムで要求される処理形態(画像処理の組合せ)が変更になる場合、HDDからプログラムRAM36及びデータRAM37に転送するデータセットの、システムコントローラ106による選択を、操作ボードOPB又はパソコンPCからの指示により変更して対応する。また、HDDの、プログラムRAM36及びデータRAM37に転送するデータセットを、書換えて対応する場合もある。
【0079】
再度図4の(a)を参照すると、IPU1のカラー画像処理ユニット(31+32+33)の画像処理機能は、SIMD型プロセッサ33の内部のプログラムメモリであるRAM36に書込まれた読取処理プログラムにより定まる。該読取処理プログラムは、入力RGB画像データに、CCDライン間補正,主走査レジスト調整,シェーディング補正,ドット補正,縦スジ補正およびスキャナγ変換をこの順に順次に加え、しかも縦スジ補正まで施したRGB画像データに基いて像域分離して像域データFdを生成して画像上の同一位置対応で読取処理を終えた出力RGB画像データに付加してCDICに出力すると共に、外付けの紙幣認識ユニット34に、縦スジ補正まで施したRGB画像データを与えるものである。
【0080】
図4の(b)に、CDICの機能構成の概要を示す。画像データ入出力制御121は、IPU1が図6のCf,Dfに示す態様(但しX=Fd)でシリアル変換したRGB画像データをうけて、IPU2に出力する。IPU2は、そのメモコンでパラレル/シリアル変換をして、RGB画像データのそれぞれと像域データFdに分離し、RGB画像データを中間処理を施してYMCK各記録色の画像データに変換した8ビット構成の多値YMCK画像データを発生して、画像形成(プリントアウト)が指定されているときには、図6のDfの、B画像データをYMCK画像データのそれぞれに置き換え、かつ、X=Fdとした形にパラレル/シリアル変換をして、IPU3y〜IPU3kに出力する。パラレルバスPbに出力する指定の場合には、図6のEf,Ffに示すパラレル/シリアル変換をしてCDICの画像データ入出力制御122に送りだす。
【0081】
画像データ入出力制御122が受けたデータは、パラレルバスPbでの転送効率を高めるためにデータ圧縮部123に於いて、画像データの1次圧縮を行う。圧縮した画像デ−タは、データ変換部124でパラレルデータに変換してパラレルデータI/F125を介してパラレルバスPbへ送出される。パラレルデータバスPbからパラレルデータI/F125を介して入力される画像データは、データ変換部124でシリアル変換される。このデータは、バス転送のために1次圧縮されており、データ伸張部126で伸張される。伸張された画像データは、図6のEf,FfのメモコンB出力側に示すシリアルデータであり、画像データ出力制御127によってIPU2へ転送される。IPU2では、パラレル変換によりY,M,C,K画像データに分ける。
【0082】
CDICは、パラレルバスPbで転送するパラレルデータとシリアルバスSbで転送するシリアルデータの変換機能を併せ持つ。システムコントローラ106は、パラレルバスPbにデータを転送し、プロセスコントローラ101は、シリアルバスSbにデータを転送する。2つのコントローラ106,101の通信のために、デ−タ変換部124およびシリアルデ−タI/F129で、パラレル/シリアルデータ変換を行う。シリアルデータI/F128は、IPU2用であり、IPU2ともシリアルデ−タ転送する。
【0083】
図8の(a)に、IPU2の概要を示す。IPU2は、入出力I/F41,バッファメモリ42およびSIMD型プロセッサ43を結合したカラー画像処理ユニットである。これは、図5に示すIPU1のカラー画像処理ユニット(31+32+33)と同様の構成であるが、SIMD型プロセッサ43のプログラムRAMおよびデータRAMに格納されるデータが、IPU2では、RGB画像データに中間処理(フィルタ処理,地肌除去,色変換すなわちYMCK画像データへの変換,下色除去,主走査変倍,主走査シフト,主走査ミラーリング,副走査間引き,マスク処理および単色文字出力の場合の2値化)を行うものである。
【0084】
図8の(b)に、IMACの機能構成の概略を示す。パラレルデータI/F141に於いて、パラレルバスPbに対する画像データの入,出力を管理し、MEMへの画像データの格納/読み出しと、主に外部のパソコンPCから入力されるコードデータの画像データへの展開を制御する。PCから入力されたコードデータは、ラインバッファ142に格納する。すなわち、ローカル領域でのデータの格納を行い、ラインバッファ142に格納したコードデータは、システムコントローラI/F144を介して入力されたシステムコントローラ106からの展開処理命令に基づき、ビデオ制御143に於いて画像データに展開する。
【0085】
展開した画像データもしくはパラレルデータI/F141を介してパラレルバスPbから入力される画像データは、MEMに格納される。この場合、データ変換部45に於いて格納対象となる画像データを選択し、データ圧縮部46においてメモリ使用効率を上げるためにデータの2次圧縮を行い、メモリアクセス制御部147にてMEMのアドレスを管理しながらMEMに2次圧縮したデータを格納する。MEMに格納された画像データの読み出しは、メモリアクセス制御部147にて読み出し先アドレスを制御し、読み出された画像データをデータ伸張部48にて伸張する。伸張された画像データは、パレルバスPbで転送用に1次圧縮されたものであり、これをパラレルバスPbへ転送する場合、パラレルデータI/F141を介してデータ転送を行う。
【0086】
図3に示す、FAX送受信を行うファクシミリコントロールユニットFCUは、画像データを通信形式に変換して外部回線PNに送信し、又、外部回線PNからのデータを画像データに戻して外部I/F部及びパラレルバスPbを介して作像ユニット105において記録出力する。FCUは、FAX画像処理,画像メモリ,メモリ制御部,ファクシミリ制御部,画像圧縮伸張,モデム及び網制御装置からなる。画像データの出力バッファ機能に関してはIMAC及びMEMでその機能の一部をおぎなう。
【0087】
この様に構成されたFAX送受信部FCUでは、画像情報の伝送を開始するとき、FCU内においてファクシミリ制御部がメモリ制御部に指令し、FCU内の画像メモリから蓄積している画像情報を順次読み出させる。読み出された画像情報は、FCU内のFAX画像処理によって元の信号に復元されるとともに、密度変換処理及び変倍処理がなされ、ファクシミリ制御部に加えられる。ファクシミリ制御部に加えられた画像信号は、画像圧縮伸張部によって符号圧縮され、モデムによって変調された後、網制御装置を介して宛先へと送出される。そして、送信が完了した画像情報は、画像メモリから削除される。
【0088】
受信時には、受信画像は一旦FCU内の画像メモリに蓄積され、その時に受信画像を記録出力可能であれば、1枚分の画像の受信を完了した時点で記録出力される。
【0089】
図9に、IPU3y〜3kの概要を示す。IPU3y〜3kは同一の構成で、ほぼ同様な内容の出力補正(プリンタγ変換および階調処理)を行う。そこでここではIPU3yを説明する。IPU3yは、入出力I/F51y,バッファメモリ52yおよびSIMD型プロセッサ53yを結合したカラー画像処理ユニットである。これは、図5に示すIPU1のカラー画像処理ユニット(31+32+33)と同様の構成であるが、SIMD型プロセッサ53yのプログラムRAMおよびデータRAMに格納されるデータが、IPU3yでは、Y画像データにY用のプリンタγ変換を加えさらに、階調処理によってプリント出力用の2値データに変換するものである。階調処理では、濃度階調処理,ディザ処理および誤差拡散2値化があり、画像処理モード指定または像域データFdに応じてそれらの1つを実施するが、本実施例のIPU3yは、誤差拡散2値化ユニット35(図5に2点鎖線で示す)をSIMDプロセッサ53yに接続したものである。図9においてはこの誤差拡散2値化ユニット35の図示は省略している。
【0090】
IPU3m,IPU3cおよびIPU3kの説明はそれぞれ、上記IPU3yの説明のY(y)を、M(m),C(c)およびK(k)とおき変えたものとなる。なお、IPU3y〜3kは、像域データFdを含むシリアルデータ(Y/Fd/Y/Fd/Y/Fd・・・,M/Fd/M/Fd/M/Fd・・・,C/Fd/C/Fd/C/Fd・・・,M/Fd/M/Fd/M/Fd・・・)を受けるときには、パラレル変換をして、YMCK画像データと像域データFdとを分離する。例えばIPU3yは、Y画像データと像域データFdが交互に配置された一連のシリアルデータ(Y/Fd/Y/Fd/Y/Fd・・・)を、Y画像データのみの一連と、像域データFdのみの一連に、パラレル変換する。
【0091】
1ライン上の奇数番画素のデータ列と偶数番画素のデータ列の2連で、同時に並行して2画素(奇数番画素と偶数番画素)の画像データを受けるときには、同時に取り込んでIPU3y〜3kの内部で2画素の画像データを同時に並行して処理する。IPU3y〜3kで生成した、作像ユニット105に出力するための、奇数番画素のデータ列と偶数番画素のデータ列の2連は、メモコンで奇数番画素および偶数番画素のデータをシリアルに一連に並ぶ1ラインのプリント出力用の画像データ列に合成してから、作像ユニット105に出力する。なお、作像ユニット105において、奇数番画素と偶数番画素とを別個のレーザ光又は別個の走査線で露光する場合には、奇数番画素のデータ列と偶数番画素のデータ列の2連のままで作像ユニット105に出力する。
【0092】
以上の例において、画像データ制御手段であるCDICと画像メモリ制御手段であるIMACは、パラレルバスPbで接続されている。各独立した、カラー原稿スキャナSCR,第2のカラー画像処理ユニットIPU2およびカラープリンタPTRは直接パラレルバスPbに接続せずにCDICあるいはIPU2に接続するため、事実上、パラレルバスPbの使用管理は、CDICとIMACによってのみ行われる。よってパラレルバスPbの調停や転送の制御が容易であり、かつ効率的である。
【0093】
図10に、画像メモリMEMに画像を蓄積する処理ならびにMEMから画像を読出す処理のフローを示す。(a)はカラー原稿スキャナSCRが発生するRGB画像データ又はIPU2が変換したYMCK画像データをMEMに書き込むまでの画像データの処理あるいは転送過程Ip1〜Ip14を示し、(b)はMEMから画像データを読み出して、カラープリンタPTRの作像ユニット105に出力するまで、又は、RGB画像データを読出してIPU2でYMCK画像データに変換して再度MEMに書込むまで、の画像データの処理あるいは転送過程Op1〜Op13を示す。CDICの制御により、このようなバス及びユニット間のデータフローが制御される。
【0094】
なお、カラー原稿スキャナSCRが発生するRGB画像データをMEMに書込むときには、CDICは、ステップIp4からIP6に進むルート(A)を選択する。カラー原稿スキャナSCRが発生するRGB画像データをIPU2でYMCK画像データに変換してそのままプリントアウトするときにはルート(B)を選択する。IPU2のYMCK画像データを一旦MEMに書込む時には、ステップIp4からIP5に進むルート(C)を選択する。
【0095】
メモリMEMから読出すときには、読出しデータがYMCK画像データであるときにはCDICは、ステップOp8からOP10に進むルート(D)を選択し、RGB画像データを読出してYMCKデータに変換してから再度MEMに書込む時には、ステップOp8からIP10に進むルート(E)を選択し、RGB画像データを読出してYMCKデータに変換してプリントアウトするときには、ステップOp8からOP9に進むルート(F)を選択する。
【0096】
上述のIPU1におけるRGB画像データの読取補正,IPU2におけるYMCK画像データへの変換を含む中間処理、および、IPU3y〜IPU3kにおけるプリンタ出力用の出力補正、のいずれにも、1ライン上に分布する各画素宛ての各画像データに、大要では同一の処理を行う画像処理が多い。細かくは、像域データFdの違いに対応して処理内容を切換える処理もあるが、その場合でも像域データFdが同じであれば同じ内容の画像処理を行う。
【0097】
したがって、カラー画像処理ユニットIPU1〜IPU3にはSIMD型プロセッサ33,43,53y,53m,53c,53kを用いて、多数のプロセッサエレメントPEによって、多数の、多値階調のカラー画像データのそれぞれに同時に並行して同じ画像処理を施すことにより、前記読取補正,中間処理および出力補正の総てでカラー画像処理速度を高くしている。
【0098】
なお、本実施例でSIMD型プロセッサ33,43,53Y,53m,53c,53kは、それぞれが8ビット以上の多値画像データを処理する総計320個のプロセッサエレメントPEを備え、同時に320個(320画素分)の画像データを処理できる。例えばディザ処理で用いられるマトリクスは、例えば4×4,6×6,8×8,16×16のサイズが考えられ、これらの何れにも適応しえて、しかも、ディザ処理速度を速くするために同時に複数個のマトリクスの処理を並行して行おうとすれば、4,8は16の約数のため6と16の最小公倍数である96(=6×16)の整数倍の数のプロセッサエレメントPEが必要である。そこで本実施例では、オフセット分32個を加えて、96×3+32=320個のプロセッサエレメントPEを設けている。これらオフセットのものは、96×3個の画素群の画像データを処理する場合に、該画素群の両外側の近傍画素の画像データを参照するときに、該近傍画素の画像データ保持用又は供給用もしくは中間的な演算処理用に使用される。
【0099】
注目画素を中央に2次元方向にそれぞれ複数の画素があるマトリクスの区分で、注目画素の画像データにエッジ強調又は平滑化の処理を施すフィルタ処理(MTF補正)のとき、また、マトリクスの画像データ分布をエッジパターンマトリクスと比較して注目画素が画像エッジであるかを判定するエッジ検出など、マトリクス区分の画像データ処理をする場合には、実質上演算データを算出出力する96×3個のプロセッサエレメントPE(実効エレメント)の両側に夫々16個プロセッサエレメントをオフセット分として割当てて、それらにも96×3個の画素群の両外側の近傍画素の画像データを与えて、積和演算或はパターン比較をして、結果を実効エレメントに供給する必要がある。したがって、画像処理の内容によっては、96×3個以上のプロセッサエレメントが同時並行の画像データ処理に用いられる。
【0100】
ハードディスクHDD(図3)には、SIMD型プロセッサ33,43,53y,53m,53cおよび53kそれぞれのプログラムRAMおよびデータRAM(36,37:図7の(a))にロードする、画像処理プログラムおよびデータがある。
【0101】
システムコントローラ106が、電源オンに応じて発生するリセット信号ならびに操作ボードOPBまたはホストPCからのリセット指示に応答してシステムの初期設定をするとき、ハードディスクHDDにある、各プロセッサ33,43,53y,53m,53cおよび53k宛てのプログラムおよびデータを、上述のIMAC,パラレルバスPb,CDIC,シリアルバスSbおよびプロセスコントローラ101を用いるデータ転送を利用して、各プロセッサ33,43,53y,53m,53cおよび53kのプログラムRAMおよびデータRAMにロードする。
【0102】
図11に、操作ボードOPBまたはホストPCからの画像処理の指示に応答するシステムコントローラ106の、システム設定の概要を示す。システムコントローラ106は、操作ボードOPB,パソコンPC,FCU,カラー原稿スキャナSCRおよびカラープリンタPTRとの間で、コマンド,応答および状態情報のやり取りをして、操作ボードOPB,パソコンPCあるいはFCUから画像処理コマンド(命令,指示)を受けると(ステップSc1)、コマンドを解析する(ステップSc2)。すなわち命令データをデコードする。なお、以下において、括弧内には、ステップという語を省略して、ステップNo.又は符号のみを記す。
【0103】
そしてシステムコントローラ106は、コマンド解析結果にしたがって、図3に示すシステム構成各要素の動作モードを決定してそれらに動作モードを指定し(Sc3)、動作モード対応の画像処理用データを転送する(Sc4)。システム構成各要素は、受けた動作モードおよび処理用データを自身に設定して、その実行が可能であると、レディをシステムコントローラ106に報知する。指定動作モードの実行に関わりがある全ての要素がレディであるとシステムコントローラ106は、システム構成各要素に画像処理の開始を指示する(Sc5,Sc6)。
【0104】
図12には、システムコントローラ106が初期設定を指示したときの、それに応答したIPU1のSIMD型プロセッサ33の、自己の初期設定の内容を示す。システムコントローラ106は初期設定コマンドでHDDの転送元アドレスおよびダウンロード指示をSIMD型プロセッサ33に与える。SIMD型プロセッサ33の外部I/F39のDMAC(ダイレクトメモリアクセスコントローラ)が、これに応答して、指定があったアドレスのプログラムデータをプログラムRAM36に、参照データをデータRAM37に書込む(Sd1)。
【0105】
このデータ転送が完了すると、DMACのレディ報知に応答してSIMD型プロセッサ33がプログラムRAM36の初期設定プログラムにしたがって、バッフアメモリ32の設定(Sd2),シェーディング補正LUT生成(Sd3),ドット補正LUTの生成(Sd4)、R,G&B各γ変換のLUTの生成(Sd5),IDUγ変換のLUTの生成(Sd6)および像域分離で用いる各種LUTの生成(Sd7)を行い、これらを完了するとレディを報知する。
【0106】
バッフアメモリ32の設定(Sd2)では、初期設定プログラムの中でのメモリ割当てにしたがって、図5に示す16個のRAM 8Kならびに2個のRAM 2Kの用途割り当てを行う。用途種の主なものは、入力画像データを一時保持する入力ラインバッフア,出力用の画像データを一時保持する出力ラインバッフア,処理途中の画像データを一時保持する中間ラインバッフア,LUTおよびデータ遅延又は同期用の遅延メモリ、である。このような設定は、SIMD型プロセッサ33が、その内部のメモコン設定レジスタに書込んだ、図5に示す16個のメモコンそれぞれ宛てのメモコン設定情報を、該当のメモコンに出力することにより、実現する。
【0107】
なお、これらのメモコン設定情報の初期情報は、SIMD型プロセッサ33が初期設定プログラムにしたがって、データRAM37から読出してメモコン設定レジスタに書込んだものであるが、その後画像処理が始まると、その進行にしたがって、メモコン設定情報は書き換えられる。例えば、入力ラインバッファに指定されたRAM 8K(のデータ読み書きを制御するメモコン)に対しては、入力画像データを受け入れるタイミングでは「書込」が指定されるが、受け入れ(書込)が完了して、それの画像データを所定個ごとに読出して画像処理を施すタイミングでは、「読出し」が指定される。
【0108】
図13の(a)に、メモコン設定レジスタ上のメモコン設定情報の区分を示し、(b)には設定情報の主要項目を示す。図5に示す16個のRAM 8Kの1つNo.1を、画像データ入力用のラインバッフアに指定してそれに入力画像データを書込むときには、(c)に示すように、No.1の読み書きを制御するメモコン1に与えられる設定情報は、「ラインバッフア」かつ「書込」を指定するものとなる。開始アドレスから終了アドレスまでが、書込指定領域である。このNo.1に入力画像データを書込んだ後に、読出しをするときには、設定情報が図13の(d)に示すように、読出しを指定するものとなる。図13の(e)に示す設定情報は、16個のRAM 8Kの中のNo.15の1領域をラインバッフアとして画像データの入出力に使用するとともに、他の1領域をLUTとして使用するものである。この設定情報を用いて図5に示すRAMのそれぞれをラインバッフア又はLUTとして使用できると共に、1つのRAMを同時に、ラインバッフアとLUTに設定できる。ただし、ラインバッフアとLUTに対するアクセスは時分割となる。つまり異なったタイミングでアクセスする。
【0109】
図14に、1つのRAM 8Kの使用態様の数種を示す。(a)は、1つのRAM 8K(バイト)を、A3サイズの短辺長を1ラインとする画像データの1ライン分のラインバッファメモリ(入力バッファ,中間バッファ又は出力バッファ)として使用する場合の、1つのRAM 8K上のデータ読書き領域を示す。(b)は、A4サイズの短辺長を1ラインとする画像データの2ライン分のラインバッファメモリとして使用する態様を、(c)はA3サイズ用1ライン分のラインバッファメモリおよび1つのLUTに用いる態様を、(d)は1つのLUTとして使用する態様を、(e)は7つのLUTとして使用する態様を示す。(e)の態様は、例えば単色成分用のLUTを7種準備しておいて、像域分離結果に応じてリアルタイムで、或は操作ボードOPB又はパソコンPCからの特性指定に応じて、1つを選択使用する場合に好適である。
【0110】
(f)は、一部のRAM 8Kを、HDDから読み出したLUTあるいはSIMD型プロセッサ33で生成したLUTの一時格納用のメモリとして使用する態様である。例えばRGB画像データの各γ変換用の3個のLUT10,LUT11,LUT12をSIMD型プロセッサ33で生成して格納しておき、RGB画像データのγ変換を行うときには、R画像データ用のLUT10を、別の2つのRAM 8Kに書込んで、これらを用いて奇数番画素のR画像データの一連と偶数番画素のR画像データの一連の、各画像データを同時に並行してγ変換する。G画像データおよびB画像データについても同様である。
【0111】
再度図13の(b)を参照する。アクセスモードの「(1/2)奇数同期読出/(1/2)偶数同期読出」は、パラレル/シリアル変換あるいは2連を一連に合成を指定するものであり、例えばR画像データとB画像データを一連に集成するメモコンの場合、R画像データの出力を行う第1のRAM 8K(又は1つのRAMの1領域)とB画像データの出力を行う第2のRAM 8K(又は上記1つのRAMの他領域)のそれぞれに、(1/2)奇数同期読出と(1/2)偶数同期読出が指定される。該メモコンは、データ読み出し同期信号(パルス)の奇数番では第1のRAM 8Kから、偶数番では第2のRAM 8Kから、画像データを読み出す。
【0112】
図12に示すドット補正LUTの生成(Sd4)、R,G&B各γ変換のLUTの生成(Sd5),IDUγ変換のLUTの生成(Sd6)および像域分離で用いる各種LUTの生成(Sd7)は、図11に示す「システム制御」SCLにおいて、操作ボードOPB又はパソコンPCから、LUTの変更又は調整が指示されたときにも、それに応じたシステムコントローラ106の指示に応じてSIMD型プロセッサ33が起動し、指示に含まれる特性指定データに対応するLUTに、バッファメモリ装置32のRAM 8Kの対応LUTを書き換える。
【0113】
ここで、IPU1で行われるR,G&B各γ変換のLUTの生成(Sd5)、ならびに、IPU3y,IPU3m,IPU3cおよびIPU3で行われるY,M,C&K各γ変換のLUTの生成、の内容を説明する。
【0114】
ハードディスク装置HDDの、IPU1宛ての読取補正プログラムには、γ変換の位置に、スキャナγ変換のプログラムの格納アドレス(例えば第1グループのS1R,S1G&S1B:図15)が挿入されており、HDDから読取補正プログラムをIPU1のプロセッサ33のプログラムRAM36に転送するときに、該格納アドレスのR,GおよびBスキャナγ変換のプログラムを、該格納アドレスと置き変えて、転送する。プログラムRAM36に転送した後でも、プログラムRAM36のプログラムは、操作ボードOPB或はホストPCからの変更操作(書換え指示入力)によってシステムコントローラ106に書換え命令を与えて、図15に示す他のグループのもの(例えばS3R,S3G,S3Bのもの)に書換えることができる。
【0115】
同様に、IPU3y,IPU3m,IPU3cおよびIPU3kの夫々宛てのY,M,CおよびK出力補正プログラムにも、γ変換の位置に、Y,M,CおよびKプリンタγ変換のプログラムの格納アドレス(例えば第1グループのP1Y,P1M,P1CおよびP1K:図15)が挿入されており、HDDからY,M,CおよびK出力補正プログラムを、IPU3y,IPU3m,IPU3cおよびIPU3kのプロセッサ53y,53m,53cおよび53kの各プログラムRAMに転送するときに、該格納アドレスのプリンタγ変換のプログラムを、該格納アドレスと置き変えて、転送する。各プログラムRAMに転送した後でも、操作ボードOPB或はホストPCからの変更操作によって、図15に示す他のグループのもの(例えばP3Y,P3M,P3C,P3Kのもの)に書換えることができる。ここで、補間演算プログラムによるγ変換のためのLUTの生成を説明する。
【0116】
図17を参照されたい。本実施例では、読取ユニット21が出力するRGB画像データのIPU1でのγ変換ならびにIPU2が出力するYMCK画像データのIPU3y〜IPU3kでのγ変換で、入力画像データx(横軸値:R,G,B/Y,M,C,K画像データ)を、図17に2点鎖線で示す略S字カーブの変換特性(特性曲線は色々である)となるように、出力画像データy(縦軸値;イエローyではない)に変換(階調特性の変換)をするが、8ビット構成の入力画像データxが表し得る数値範囲0〜255をそれより少ない複数m=8区間に分割して、変換特性曲線の各区間を、図17上に実線で示す直線で近似した。これらの直線を表わす数式を用いる、直線近似の補間演算により、0〜255を表す各階調データをγ変換する。これらの補間演算式の適用区間を次に示す。
【0117】
区間No.i 境界値 演算式(パラメータai,bi)
1 x1 y1=a1・x+b1
2 x2 y2=a2・x+b2
3 x3 y3=a3・x+b3
4 x4 y4=a4・x+b4
5 x5 y5=a5・x+b5
6 x6 y6=a6・x+b6
7 x7 y7=a7・x+b7
8 (x8:不要) y8=a8・x+b8
なお、隣接する区間の境界において両区間の演算式は繋がっている。例えばy1=a1・x+b1とy2=a2・x+b2に、x=x1を与えたときの、y1の値=y2の値、すなわち、
y1=a1・x1+b1=a2・x1+b2=y2
である。
【0118】
境界値はxi(x1〜x8)、補間演算パラメータは傾きai(a1〜a8)およびy切片(オフセット)bi(b1〜b8)である。
【0119】
図15に示すリスト上の各変換プログラムは、これらの演算式に従って、入力階調データxに対応するγ変換した出力階調データyを算出するものである。なお、図15に示すリスト上の多数の変換プログラムは、直線式(を規定するパラメータ)あるいは区間(を規定する境界値)が異なるものである。すなわちγ変換特性(階調変換特性)が異なるものである。
【0120】
図16に、IPU1,IPU3y,IPU3m,IPU3cおよびIPU3kのSIMD型プロセッサ33,53y,53m,53c,53kの、プログラムRAM(36)の変換プログラムに基いたグローバルプロセッサ(38)による、n+1個(n=255)の、0〜255の各値を表す階調データの同時並行のγ変換の内容を示す。なお、本実施例では、階調データは、8ビット構成の多値階調データである。
【0121】
グローバルプロセッサ(38)はまず、全プロセッサエレメントPE0〜PEnを初期化してから、n+1個の0〜255の各値を表す階調データD0〜Dnのそれぞれを、320個ある中のn+1個のプロセッサエレメントPE0〜PEnの各入力レジスタにセットする(ステップγp1)。なお、以下においてカッコ内には、ステップという語を省略して、ステップNo.記号のみを記す。
【0122】
次に、グローバルプロセッサ(38)は、全プロセッサエレメントPE0〜PEnに最後区間i=m=8の補間演算パラメータam(a8),bm(b8)を与え、各プロセッサエレメントはそれらを自己のパラメータ設定用レジスタに書込む(γp2)。
【0123】
次に、グローバルプロセッサ(38)は、演算対象区間iを第1区間(i=1)に定めて(γp3)、区間iの境界値xiをプロセッサエレメントPE0〜PEnに与えて、比較を指示する。PE0〜PEnはそれぞれ、セットされている階調データDj(D0〜Dnのそれぞれ)が第i区間である(xi<Dj:NO,すなわちxi≧Djである)かをチェックして、第i区間であると自身のフラグに「1」を立てる(γp4)。次に、第i区間の計算式を規定するパラメータA=ai,B=biをプロセッサエレメントPE0〜PEnに与える。ここで、自身のフラグに始めて「1」を立てた(フラグを「0」から「1」に切換えた)プロセッサエレメントは、自身のパラメータ設定用レジスタに、パラメータA=ai,B=biを書込む(γp5)。
【0124】
第1区間を演算対象区間とした上記処理を同様に、演算対象区間iを順次に第2(i=2),第3(i=3),・・・と更新して、第m−1=7区間(i=7)まで繰返し実行する(γp6/γp7/γp4/γp5/γp6)。ただし、すでにフラグに「1」を立てており、「0」から「1」への切換わりのないプロセッサエレメントは、自身のパラメータ設定用レジスタに新たにパラメータA=ai,B=biを更新書込みすることはしない。
【0125】
第m−1=7区間まで実行すると、プロセッサエレメントPE0〜PEnのいずれもが、自身にセットされている階調データが属する区間に宛てられているパラメータA=ai,B=biを、自身のパラメータ設定用レジスタに保持していることになる。
【0126】
ここでグローバルプロセッサは、Y=A・x+B、xはセットしている階調データ、なる演算指示をプロセッサエレメントPE0〜PEnにあたえる。プロセッサエレメントPE0〜PEnは、パラメータ設定用レジスタに保持しているA=ai,B=biを用いて、Y=A・x+Bを算出し、算出したYを表すデータすなわちγ変換した階調データすなわちγ変換データを、自身の出力レジスタに格納する(γp8)。グローバルプロセッサ(38)は、プロセッサエレメントPE0〜PEnの出力レジスタのデータ(AD0〜ADn:算出したY)をプロセッサエレメントのRAMの出力データ領域に書込み、メモコン設定レジスタ(図13の(a))でγ変換用LUTの読み書きを指定したメモコン(図5)にそこのデータの読み出しを指示する。該メモコンは、設定情報でLUTに指定されたRAM 8Kの指定領域に、0〜255の各値の階調データ宛てに、そのγ変換データ(γ変換テーブル)を書込む(γp9)。
【0127】
この第1実施例の上述の補間演算では、プロセッサエレメントPE群に対する1グループの階調データ群D0〜Dnのセット;プロセッサエレメント群に対するi区間の境界値の同時供給とそれに続く該区間iの補間演算パラメータの同時供給、の区間i=1〜mについての実行、すなわちm回の繰返し;および、一回の演算式の指定と算出指示;によって、階調データ群D0〜Dnの変換が完了する。
【0128】
プロセッサエレメント群は算出演算は1回のみであり、変換速度が速い。320個のプロセッサエレメント(PE)の中の256個を用いて0〜255の各値を表す総計256個の階調データを同時にγ変換する場合の、画像処理器(33)のデータ処理ステップ数は少ない。従来の、階調データのγ変換を256回繰り返して行う場合と対比して、大幅なステップ数の低減となり、γ変換用LUTの生成速度が速い。
【0129】
上述のγ変換は、IPU1のSIMD型プロセッサ33のプログラムRAM(36)に書込んだ読取補正プログラムの中のスキャナγ変換プログラム、又は、IPU3y〜3kのSIMD型プロセッサのプログラムRAMに書込んだ出力補正プログラムの中のプリンタγ変換プログラムを、ハードディスクHDDにある他の、γ変換特性が異なるものに書換えることにより、変更できる。
【0130】
上述の、図16のステップγp9でRAM 8Kに書込んだγ変換テーブルは、γ変換を行うときに、図18に示すように、1つの変換テーブルγLUT−Rを2つのRAM 8Kに書込んで、一方を奇数画素の画像データのγ変換に、他方を偶数画素の画像データのγ変換に割り当てる。図18には、R画像データのγ変換時のデータの流れを示す。G画像データおよびB画像データのγ変換も同様である。図18においては、奇数番画素のR画像データの一連と、それと同一ライン上の偶数番画素のR画像データの一連との、画像上は隣り合う各画素のR画像データが同時に並行して1つの画像ポートを介してメモコンに与えられる。メモコンは、奇数番画素のR画像データに第1のγLUT−Rの書込始端アドレスを加えたLUTアクセスアドレスを第1のγLUT−Rを格納している第1のRAM 8kに読み出しアドレスとして、また、偶数番画素のR画像データに第2のγLUT−Rの書込始端アドレスを加えたLUTアクセスアドレスを第2のγLUT−Rを格納している第2のRAM 8kに読み出しアドレスとして同時に並行して与えて、それらのアドレスの第1のγ変換データ(第1のγLUT−Rのデータ)および第2のγ変換データ(第2のγLUT−Rのデータ)を読み出して、読み出しデータを同時に並行してSIMD型プロセッサ33に出力する。なお、画像ポートから入力画像データを直接にメモコンに与えるのに変えて、入力画像データを一旦RAM 8kに格納してからメモコンに与えることもできる。また、γ変換データをLUTから読出して直接にSIMD型プロセッサ33に出力するのに変えて、一旦RAM 8kに蓄えてから出力することもできる。
【0131】
上述のように、γ変換テーブルの生成(図16)において、境界値を最小値から順番に大きいものに変更して、階調データと比較したが、境界値を最大値から順番に小さいものに変更して階調データと比較する態様も有り得る。例えば、図16のステツプγp2ではA=a1,B=b1をパラメータ設定用レジスタに書込み、ステップγp3ではiを8に設定し、ステップγp4ではx(i−1)をエレメントPE0〜PEnにあたえて第i区間にある(Dj≧x(i−1))かをチェックする。そしてステップγp6ではiが1かをチェックして、1であるとステップγp8に進み、1になっていないと、ステップγp7でiを1デクレメントする。
【0132】
図19に、IPU1のSIMD型プロセッサ33の内部のプログラムRAM36に書込まれた読取処理プログラムに基づいてグローバルプロセッサ33が、プロセッサエレメントPEならびにバッファメモリ32を用いて行う像域分離の概要を示す。ここに示す像域分離は、RGB画像データに基づいて、それらのデータが宛てられる画像領域が文字領域(文字や線画の領域)か絵柄領域(写真や絵の領域&文字領域でない領域)かを判定し、文字エッジ領域,文字なか領域あるいは絵柄領域を表すC/P信号および有彩領域/無彩領域を表すB/C信号を発生する。ここで「文字なか」とは、文字エッジの内側すなわち文字線幅内を意味する。この実施例では、C/P信号およびB/C信号を併せて3ビットの信号の組み合わせが像域データFdである;
C/P信号:2ビット信号であり、3を意味する2ビット「11」が
文字エッジ領域を示し、1を意味する2ビット「01」が
文字なか領域を示し、0を意味する2ビット「00」が
絵柄領域を示す;
B/C信号:1ビット信号であり、H(「1」)が無彩領域を示し、
L(「0」)が有彩領域を示す。
【0133】
像域分離は、大別すると、MTF補正321,エッジ分離322,白背景分離323,網点分離324,色相分割325a,色判定325bおよび総合判定326からなる。なお、ここでは、スキャナSCRの読取ユニット21による画像読取り密度は、600dpi程度である。
【0134】
MTF補正321は、主に文字のエッジの抽出ために、読取ユニット21が発生するG画像データを補正する。ここで、読取ユニット21で読み取ったデータは、レンズなどの性能でボケていることがあるので、エッジ強調フィルタをかける。この実施例では、MTF補正321の画素マトリクスを、主走査方向xの画素数7×副走査方向yの画素数5として、画素マトリクス上の各画素宛てに各重み付け係数a1〜a7,b1〜b7,c1〜c7,d1〜d7,e1〜e7を宛てた係数グループ(係数マトリクス)が、データRAM37にある。係数マトリクスの第3行c1〜c7の中央の画素即ち注目画素の係数がc4である。係数マトリクスの各係数に、それに宛てられる画素の画像データが表す値を乗算した積(総計7×5=35個)の総和(積和値)が、注目画素(c4が宛てられた画素)の、MTF補正321で処理した画像データ値として、エッジ分離322,白背景分離323および網点分離323に与える。ここで注目画素とは、現在処理対象の画素であり、それが順次にx方向にそしてy方向に位置が異なるものに更新される。
【0135】
−エッジ分離322−
文字領域は、高レベル濃度の画素と低レベル濃度の画素(以下、黒画素、白画素と呼ぶ)が多く、かつ、エッジ部分では、これらの黒画素及び白画素が連続している。エッジ分離322は、このような黒画素及び白画素それぞれの連続性に基づいて文字エッジを検出する。先ず、3値化で、2種の閾値TH1およびTH2を用いて、MTF補正した画像データを3値化する。閾値TH1およびTH2は、例えば、画像データが0から255までの256階調(0=白)を表す場合、例えばTH1=20、TH2=80に設定している。3値化では、入力データ<TH1であると、該データが宛てられる画素を白画素と、TH1≦入力データ<TH2であると中間調画素と、TH2≦入力データであると黒画素と、表す2ビット構成の3値化データに入力データを変換する。そして、3値化データを2値化して、画像成分の有無を表す画情報ビット(「1」:画像成分あり,「0」:画像成分なし)を得て、この2値データに基づいて黒画素が連続する箇所および白画素が連続する箇所を、それぞれパターンマッチングにより検出する。
【0136】
ここで黒画素連続検出に用いる参照パターンの代表例が、図21の(a)に示す3×3画素マトリクスBPa〜BPdであり、何れも、少なくとも注目画素(中心画素)を含む縦(y),横(x)および斜め方向に並んだ3画素の画情報ビットが「1」であるものであり、この条件を満たす他の全てのパターン(BPa〜BPdの空白升目のいずれかも「1」)も、黒画素連続検出に用いる参照パターンである。以下においては、これらの参照パターン群を、黒画素連続検出用参照パターン群という。
【0137】
白画素連続検出に用いる参照パターンの代表例が、図21の(a)に示す3×3画素マトリクスWPa〜WPdであり、何れも、少なくとも注目画素を含む縦(y),横(x)および斜め方向に並んだ3画素の画情報ビットが「0」であるものであり、この条件を満たす他の全てのパターン(WPa〜WPdの空白升目のいずれかも「0」)も、白画素連続検出に用いる参照パターンである。以下においては、これらの参照パターン群を、白画素連続検出用参照パターン群という。
【0138】
なお、図21の(a)に示す参照パターンにおいて、黒丸はそれがある画素の画情報ビットが「1」(画像成分あり)であることを意味し、白丸はそれがある画素の画情報ビットが「0」(画像成分なし)であることを意味する。3×3画素マトリクスの中心の画素が注目画素である。
【0139】
黒画素連続/白画素連続のためにパターンマッチング判定では、黒画素連続と白画素連続とは背反するので、まず、黒画素連続検出で、注目画素を中央とする3×3画素マトリクスの画情報ビット群(図21の(b)のa〜i)が、黒画素連続検出用参照パターン群のいずれかに合致するかを、参照パターンを切換えてチェックし、合致する参照パターンがあると、該注目画素に、「黒画素連続」の画素であることを示す情報(11:黒連続画素)を与える。黒画素連続検出用参照パターン群のいずれの参照パターンにも合致しないと、今度は白画素連続検出用参照パターン群のいずれかに合致するかを、参照パターンを切換えてチェックし、合致する参照パターンがあると、該注目画素に、「白画素連続」の画素であることを示す情報(01:白連続画素)を与える。白画素連続検出用参照パターン群のいずれの参照パターンにも合致しないと、黒画素連続,白画素連続のいずれでもないことを示す情報(00:不一致)を与える。
【0140】
これらのパターンマッチングを行うために、データRAM37には上述の黒画素連続検出用参照パターン群および白画素連続検出用参照パターン群の参照データセット群がある。1つの参照データセットは、1つの参照パターン画情報ビット群(9ビット)をシリアルに配列して2バイトデータとしたものである。たとえば図21の(c)に示す形態の2バイトデータであって、ここでは、画情報ビット群a〜iが、参照パターン(例えばBPa)のものである。
【0141】
なお、対象マトリクスが図21の(c)に示すように5×5サイズの場合には、その対象データセットは、図21の(e)に示すように、4バイトデータとなる。
【0142】
図20に、SIMD型プロセッサ33が行う、1ライン上の各画素を中央とする画素マトリクスが参照マトリクスに合致するかの判定すなわちパターンマッチングPMP、の内容を示す。
【0143】
なお、例えば図21の(a)の3×3マトリクスパターンに対するパターンマッチングのときには、SIMD型プロセッサ33はメモリ装置32に、3ライン以上の2値化データ格納用の入力ラインバッファを設定し、かつ3ラインの中の真中のラインの各画素宛てに、それを中心とする3×3画素マトリクスの画情報ビット群が、参照パターン(参照データセット)と合致するか否を表す判定データ(「11」:黒連続画素,「01」:白連続画素,「00」:該当せず)を書込むための、判定結果格納用のラインバッファを設定する。
【0144】
そして、図20を参照すると、SIMD型プロセッサ33のグローバルプロセッサ38は、その内部のA個(例えば320個)のプロセッサエレメントの各RAM(図7の(b)に示す)に、b個の参照パターン(参照マトリクス)群の参照データセット群(例えば上述の黒画素連続検出用参照パターン群および白画素連続検出用参照パターン群のもの;b個の参照データセット)を書込む(pm1)。
【0145】
次にSIMD型プロセッサ33は、A個の対象データセットの転送をメモリ装置32のメモコンに指示し(pm2)、これに応答して該メモコンが、入力ラインバッファの、中央ライン(注目ライン)上の一連のA個の注目画素のそれぞれを中央とする各画素マトリクスの画情報ビット群を、マトリクス単位で図21の(c)に示す態様でcバイトの対象データセットに変換して、SIMD型プロセッサ33に転送する。SIMD型プロセッサ33のグローバルプロセッサ38は、先頭の対象データセットから順に、A個の各プロセッサエレメントの各RAMに書込む(pm3)。
【0146】
例えば、バッファメモリ32のメモコンが、ラインバッフアメモリに割り当てた3個のRAM 8Kに、前記3値化データを2値化した画情報ビットを書込み、それらから、図21の(b)に示すように、注目画素eの周辺に2次元x,yのそれぞれに1画素が分布する、画素a〜iでなる3×3画素マトリクスに宛てられた画情報ビット群を読み出して、図21の(c)に示すように、1列2バイトの対象データセットに変換してSIMD型プロセッサ33に与え、これを注目画素を1画素づつ同一ライン上でシフトして、A回行う。SIMD型プロセッサ33のグローバルプロセッサ38が各対象データセットを各プロセッサエレメントのRAMに書込む(pm3)。
【0147】
そしてグローバルプロセッサ38の命令に従って、各プロセッサエレメントが比較演算SIMDopを並行して同時に行う。この比較演算SIMDopにおいてプロセッサエレメントは、まずその出力レジスタに「00」(該当なし:不一致)を書込む(pm4)。次に、その内部のRAMに格納している第i種(第i番)の参照データセットが対象データセットに合致するかを、対応バイトごとにチェックして(pm5,pm6)、合致したときは「11」(黒画素連続検出用参照パターン群のとき)又は「01」(白画素連続検出用参照パターン群のとき)を出力レジスタに更新書込みするが(pm7)、不一致のときには何も書込まない。このような一致/不一致の判定を、参照データセット(参照パターン)を切換えて(pm8,pm9)繰返し実行する。RAM37にある参照データセット群のすべてを対象データセットと上述のように照合し終わると、比較演算SIMDopを終了する。
【0148】
終了したときには、各プロセッサエレメントの出力レジスタのデータは、該プロセッサエレメントのRAMに格納している対象データセットで表される画素マトリクス画像が、参照データセットで表される参照パターン(黒画素連続検出用または白画素連続検出用の参照パターン)に合致するか否を表すものになっている。
【0149】
SIMD型プロセッサ33のグローバルプロセッサ38は、A個のプロセッサエレメントの各出力レジスタのデータを、メモコンを介して判定結果格納用のラインバッファに転送する(pm10)。そして1ライン上の全画素に関して上述のパターンマッチングが完了したかをチェックして(pm11)、完了していないと、同一ライン上の次の注目画素群をパターン比較対照画素に設定して、上述のステップpm3以下のパターンマッチングを同様に実行する。
【0150】
以上に説明したパターンマッチングでは、1画素マトリクスC×D=E(上記例では3×3=9画素)の全画情報ビット群(2バイトデータ)につき、一個のプロセッサエレメントPEが参照パターン群の参照データセット群のいずれかの参照データセットと同じかの判定をして判定結果を得る。この判定がバイトデータの比較によるものであるので、判定速度が速い。さらには、これをA個のプロセッサエレメントが並行して同時に行うので、A個の画素マトリクスのパターンマッチングが同時に完了し、パターンマッチング判定が高速である。
【0151】
図22には、メモコンのエッジ/非エッジ領域判定のデータ処理FEDを示す。図23の(a)には、このエッジ/非エッジ領域判定のときの、メモコンの内部フィードバックループを示す。次に図23の(a)を参照すると、上述の黒画素,白画素連続検出の次にSIMD型プロセッサ33のグローバルプロセッサ38は、データRAMのエッジ/非エッジ領域判定用LUTを読出してメモコンを介してRAM 8Kに転送する。このRAM 8Kをここで、エッジ/非エッジ判定用のRAM 8K(LUT)と表現する。メモコンは、SIMD型プロセッサ33が与えるLUTアドレスLad(変換対象入力データ)を入力レジスタ75に受けてマルチプレクサ76および出力レジスタ72ならびにメモリSWを介して、RAM 8K(LUT)のアドレスラインに与え、SIMD型プロセッサ33が与えるLUTの記憶データ(変換出力データ)を入出力レジスタ74に受けて入出力レジスタ73およびメモリSWを介して、RAM 8K(LUT)のデータラインに与える。すなわちRAM 8K(LUT)に書込む。
【0152】
グローバルプロセッサ38は、このRAM 8K(LUT)およびメモコンを用いて上述の黒画素連続検出および白画素連続検出の検出結果について、注目画素の近傍に黒連続画素又は白連続画素があるか否かを調べることにより、該注目画素が、エッジ領域と非エッジ領域のいずれにあるかを判定する。
【0153】
より具体的に述べれば、本実施例にあっては、5×5画素マトリクスのブロックで、その内部に黒連続画素と白連続画素がそれぞれ1つ以上存在するときに、そのブロックをエッジ領域と判定してマトリクスの中心画素である注目画素に「エッジ領域」との情報を与え、そうでないときに、そのブロックを非エッジ領域と判定し該注目画素に「非エッジ領域」との情報を与える。
【0154】
図22を参照する。メモコンは、SIMD型プロセッサ33の指示に従い、図23の(a)に示すように、バッファメモリ32にLUT(RAM 8K(LUT))と5ライン分以上のラインメモリ(RAM 8K(LINE))を定めて(fe1)、5ライン分以上の、上述の黒画素連続/白画素連続検出の検出結果を蓄積して、5ラインの真中の第3ラインを注目ラインとして、そのライン上の各画素を順次に注目画素とする(fe2)。
【0155】
メモコンは、注目画素を中心とする5×5画素マトリクスの上述の検出結果を、読み出しアドレスPadをマルチプレクサ77,出力レジスタ72およびメモリSWを介してラインメモリRAM 8K(LINE)のアドレスラインに与えることにより、入出力レジスタ71を介して5画素の列単位で順次に取込んで、5×5画素マトリクス上に黒連続画素と白連続画素がそれぞれ1つ以上存在するときに、注目画素をエッジ領域と判定してエッジ/非エッジ情報edsを発生する(fe3〜fe6)。
【0156】
注目画素のこのエッジ/非エッジ情報eds,主走査x方向で1画素分先行する画素すなわち先行画素の確定エッジ/非エッジ情報Edp(メモコンの入出力レジスタ74のデータ)、及び、注目画素の画像処理データである、前記黒画素連続/白画素連続検出の検出結果Tpd、の3者をマルチプレクサ75,76および出力レジスタ72を介してRAM 8K(LUT)にLUTのアクセスアドレスとして与えて(fe7)、それら3者の組み合わせに対応する確定エッジ/非エッジ情報Edsをエッジ判定用RAM 8K(LUT)から読み出して(fe8)、メモコン内部の出力レジスタ74に書込んでSIMD型プロセッサ33に出力する(fe9,fe10)。そして1ライン上の全画素に関して上述のエッジ/非エッジの判定が完了したかをチェックして(fe11)、完了していないと、同一ライン上の次の画素に注目画素を移して、上述のステップfe3以下のパターン比較を同様に実行する。
【0157】
先行画素の確定エッジ/非エッジ情報Edpがフィードバック情報である。RAM 8K(LUT)のエッジ/非エッジ判定の大要は、注目画素のエッジ/非エッジ情報edsがエッジ(注目画素を中心とする5×5画素マトリクス上に黒連続画素と白連続画素がそれぞれ1つ以上存在)を示すときには、確定エッジ/非エッジ情報Edsをエッジとし、edsが非エッジであると、先行画素の確定エッジ/非エッジ情報Edpがエッジで、しかも注目画素の前記黒画素連続/白画素連続検出の検出結果Tpdが「黒画素連続」又は「白画素連続」であると確定エッジ/非エッジ情報Edsをエッジとし、Tpdが何れでもないと確定エッジ/非エッジ情報Edsを非エッジとするものである。先行画素の確定エッジ/非エッジ情報Edsが非エッジである場合には、Tpdが「黒画素連続」のときのみ確定エッジ/非エッジ情報Edsをエッジとし、他のときは非エッジとする。
【0158】
この先行画素の確定エッジ/非エッジ情報Edpのフィードバックと、注目画素の前記黒画素連続/白画素連続検出の検出結果Tpdが「黒画素連続」又は「白画素連続」であるかの参照を、エッジ/非エッジ判定用LUTに加えたことにより、エッジ/非エッジ間の切替わりが短いピッチで頻繁に起こる振動が抑制され、エッジ/非エッジの検出の信頼性が高い。
【0159】
なお、メモコン内部のマルチプレクサ75,76を使用するフィードバックLUT処理は、図23の(a)に示し上述したように、数個のRAM 8K(LINE)からメモコンにデータを取り込んでそれに基づいてLUTアクセスデータ(入力データ)を生成してLUTにアクセスするばかりでなく、SIMD型プロセッサ33から一組以上のデータをメモコンに与えてLUTアクセスデータを生成することもできる。
【0160】
図23の(b)に、この態様を、上述のエッジ/非エッジ判定に適用した形での、メモコン内部のデータフィードバックループを示す。この態様では、図23の(b)には図示しない5個のRAM 8K(LINE)から、他のメモコンがSIMD型プロセッサ33に、5×5画素マトリクスの黒画素連続/白画素連続検出の検出結果を与え、プロセッサ33が5×5画素マトリクス上に黒連続画素と白連続画素がそれぞれ1つ以上存在するときに、注目画素をエッジ領域と判定して、注目画素のこのエッジ/非エッジ情報eds、及び、注目画素の前記黒画素連続/白画素連続検出の検出結果Tpd、を図23の(b)に示すメモコンに与え、このメモコンがこれらをマルチプレクサ76を介して、出力レジスタ72に、先行画素の確定エッジ/非エッジ情報Edpと共に書込んで、RAM 8K(LUT)に出力する。このフィードバックLUT処理を利用することにより、SIMD型プロセッサ33の状態遷移処理能力が向上する。
【0161】
−孤立点除去(図19)−
さらに、文字エッジは連続して存在するので、孤立点除去にて孤立しているエッジを非エッジ領域に補正する。そして、エッジ領域と判定した画素に対して”1”(エッジ領域)なるedge情報を与え、非エッジ領域と判定した画素に対応して”0”(非エッジ領域)なるedge情報を与える。
【0162】
−白背景分離323(図19)−
白背景分離323では、RGB白抽出,白判定,白パターンマッチング,黒判定,黒パターンマッチングおよび白補正等を行う。パターンマッチングでは、前述の、パターンマトリクスのデータをメモコンで1列に配列して、複数のプロセッサエレメントPEで同時に参照パターンのシリアルデータと比較して、一気に1マトリクスのマッチング(パターンが一致しているかの判定)を行う。
【0163】
RGB白地検出では、R,G,B画像データで白地領域を検出することにより、白背景分離の動作をアクティブにする。すなわち白背景分離の処理を起動する。具体的には、3×3画素マトリックスのR,G,B画像データのすべてが閾値thwssより小さければ、注目画素(3×3画素マトリックスの中心画素)が白領域と判定して白パターンマッチングをアクティブにする。これは、ある程度の広がりの白画素領域があるかを検出するものである。
【0164】
次に、黄色地を白背景としないために、仮想白画素を定める。ここでは注目画素を中心とする5×5画素マトリックスのどこかに、閾値thwc以下のB画像データが存在すれば、注目画素を仮想白画素とする。特に、B画像データのみで見ているのは、後述の白判定が、G画像データのみに基づいて判定を行っているので、G画像データでは検出できないYをB画像データにて検出する。
【0165】
次に、谷白画素検出で、上記RGB白地検出で検出できない小さな白領域の谷白画素を、図24の(b)に示すG画像データの5×5画素マトリクス分布RDPaおよびRDPbに基づいて検出する。具体的には、5×5画素マトリクス分布RDPaの、黒丸を付した画素群の中の最低濃度minyを摘出する。そして、5×5画素マトリクス分布RDPaの、白丸を付した画素群の中の最高濃度maxyを摘出する。次に、もう1つの5×5画素マトリクス分布RDPbの、黒丸を付した画素群の中の最低濃度mintを摘出する。そして、5×5画素マトリクス分布RDPbの、白丸を付した画素群の中の最高濃度maxtを摘出する。次に、(miny−maxy)と(mint−maxt)のうち、正値であって大きいほうの値を谷検出値OUTとし、このOUTの値がある閾値以上であると、注目画素(RDPaまたはRDPbの中心画素)を谷白画素と検出する。このように画像の谷状態を検出して、RGB白地検出では、検出しにくいところを補う。
【0166】
−白判定−
白判定にもちいる状態変数MS,SS[I]を生成し更新する。ここで、状態変数MSは処理対象ライン(注目ライン)の画素宛てのもの、状態変数SS[I]は処理対象ラインの1ライン前(処理済ライン)の画素宛てのものであり、いずれも白地の白の程度を表す4bitの白地情報である。状態変数MSおよびSS[I]が表す値の最高値は15に定めており、これが最も白い程度を意味し、最低値は0である。すなわち状態変数MSおよびSS[I]は、白の程度を示すデータであり、それが表す値が大きいほど、強い白を意味する。処理開始時に、状態変数MSおよびSS[I]は共に0に初期化する。
【0167】
そして、1ライン前かつ注目画素の主走査位置より前の白地情報SSを、注目画素の白地情報MSをそれから主走査方向xの1画素の位置ずれにつき1の低減率で下げた値に更新し、注目画素の白地情報を1ライン前の主走査方向xで主走査の後方に、前記低減率で伝搬させる(白伝搬処理)。但しこれは、1ライン前の白地情報のほうが小さい値である場合である。例えば1ライン前の画素が、RGB白地検出で白地(白領域)と検出したものであるときにはそれの白地情報は15であって最高値であるので書換えは行わない。
上述の、1ライン前の白地情報SSの白伝搬処理においては、1ライン前の白地情報SSをRAM 8Kに保持して、図23の(b)に示すように、メモコン内にフィードバックループを形成して、該RAM 8K(図23の(b)上のRAM 8K(LUT)に置き変わったもの)から読み出したデータ(Edp)と、SIMD型プロセッサ33が算出しメモコンに与える白伝搬処理値データの一方を、プロセッサ33の選択指定に応じてマルチプレクサ76,77で選択して、前記RAM 8Kの、読み出したデータ(Edp)のアドレスに再度書き込む。
【0168】
注目画素を更新してそれが白地でないものになると、注目画素が、仮想白画素かつ白地情報MSが閾値thw1(13)以上、である時に、注目画素宛ての白地情報MSを+1する。すなわち、1だけ白程度が強い値に更新する。白地情報MSの最高値maxは15に定めており、15を超える時には15にとどめる。この経路を進んできたときにも、前述の、白伝搬処理を行う。
【0169】
注目画素が仮想白画素かつ白地情報MSがthw1(13)未満、thw2(1)以上、かつ、谷白画素である時に、状態変数MSをそのままの値に保持する。この経路を進んできたときにも、前述の、白伝搬処理を行う。
【0170】
上記条件のいずれにも一致しないときは、注目画素の白地情報MSをー1する。すなわち白程度が1だけ弱い白地情報に更新する。白地情報MSの最低値MINは0であり、0未満になる時には0にとどめる。この経路を進んできたときにも、前述の、白伝搬処理を行う。
【0171】
−網点分離324(図19)−
G画像データを用いて、所定の大きさの二次元局所領域内の画素濃度情報から、網点ドットの一部を形成する画素(網点ピーク画素と呼ぶ)を検出する。局所領域に関して、次の二つの条件が同時に成立するときに、領域の中心画素を網点ピーク画素として検出する:
条件1:中心画素の濃度レベルが局所領域内で最大(山ピーク)または最小(谷ピーク)である;
条件2:中心画素に対し点対称関係にある全ての画素のペアについて、画素ペアの濃度レベルの平均と中心画素の濃度レベルとの差の絶対値が、閾値Th以上である。
【0172】
山と谷の網点ピーク画素を、所定の大きさの二次元の小領域毎に計数し、山と谷の網点ピーク画素の合計を小領域の計数値Pとする。この計数値Pが閾値Pthより大きいときに、小領域の全画素(あるいは画素単位の処理の場合、小領域の中心画素のみ)を網点領域と判定する。
【0173】
この小領域の網点領域か否かの判定においても、前記エッジ/非エッジ判定のときと同様に、図23の(a)あるいは図23の(b)に示すメモコン内フィードバックループを用いて、先行画素の確定網点/非網点のフィードバックと、注目画素が網点山ピーク,網点谷ピークか否の検出結果を網点/非網点判定用LUTに加えて、網点/非網点間の切替わりが単ピッチで頻繁に起こる振動を抑制し、網点/非網点検出の信頼性を高くしている。
【0174】
−7値化325a(図19)−
入力データR,G,Bを、c,m,yおよび色判定用w(白)の信号に変換する。色相分割の例としては、それぞれの色の境界を求め、1画素内のR,G,Bそれぞれの画像データの最大値と最小値の差をRGB差と定義して、色相空間を7領域に区画し、入力データがどの領域かを判定する。出力信号は、c,m,yに各1ビットの3ビットデータと、さらに、色判定用色画素検出のwの1ビットである。ここで色相毎に閾値をかえているのは、色相領域毎に、有彩範囲が異なる時に色相領域に応じた閾値を決定する。この色相分割は、一例であって、どんな式を使用してもよい。色相分割325aの出力c,m,y,wは、バッフアメモリ32に5ライン蓄え、色画素判定に用いる。
【0175】
そして、色画素用w画素が存在する時は、その画素のc=m=y=0に補正する。この補正により、注目画素を中心とする5×5画素マトリクスの白レベルが大きくなる。次に注目画素が、色相分割で得たc,m,yの全てが1(c=m=y=1)または全てが0(c=m=y=0)以外の画素(色画素)であるかを、該5×5画素マトリクスが、色画素パターン群のいずれに合致するか、パターンマッチングを行う。そして5×5画素マトリクス色細線用パターン群を用いるパターンマッチングで、注目画素が白に囲まれた色線画素かを検出する。次に、5×5画素マトリクスの白領域パターン群をパターンマッチングにより注目画素が白領域画素かを検出する。上記で抽出したパターンマッチング結果にもとづいて、白領域に囲まれた色画素を色画素候補として、それ以外で白領域が存在する時は、色画素としない。白領域がない色画素パターンマッチングで一致したものは、色画素候補とする。
【0176】
−色判定325b(図19)−
次に、5×5画素マトリクス内の各画素のc,m,yの1(c=1,m=1,y=1)の数をカウント1する。c,m,yそれぞれについてのカウント値の最大値と最小値との差が、thcnt以上でかつ最小値がthmin未満ならば、色画素候補1とする。thcnt,thminは、複写(処理)前に設定する閾値である。y,m,cにプレーン展開して、N×Nのマトリクスにおいてのそれぞれのプレーン毎に数を数えて、最少値をブラックと仮定している。このことにより、黒画素の読み取りが漏れても補正が可能となる。そして最大値と最小値の差で有彩画素を判定している。このことにより、黒画素が読取りから外れた画素を補正して、有彩画素を抽出する。注目画素を中心とする5×5画素マトリクス内に一定画素の有彩画素があると注目画素を有彩画素とする。注目画素が色画素候補1でかつ色画素候補2であれば、色画素1とする。
【0177】
次に、4×4画素のマトリックスにおいて、1画素以上の色画素1があれば、該4×4画素マトリックス全体を色画素1ブロックとブロック化をする。ブロック化以降の処理は、4×4画素を1ブロックとしてブロック単位出力する。孤立点除去にて、注目ブロックの隣り合うブロックに色画素1ブロックがなければ孤立点として、除去する。次に膨張処理にて、色画素1ブロックが存在する場合は、5×5ブロックに膨張する。膨張するのは、色画素の周辺を、黒文字処理をしないようにするためである。ここで、色画素1ブロックの時にL(有彩)、それ以外の時はH(無彩)の、B/C情報を発生する。
【0178】
以下、5×5画素マトリクス内の各画素の、c,m,yの1(c=1,m=1,y=1)の数をカウント,カウント値の最大値と最小値との差に従った色画素2,色画素3かの検出と、ブロック化,孤立ブロックの除去等を行う。更に、注目画素が黒画素候補1,2かをパターンマッチングにより判定し、注目画素が、黒画素候補1でかつ黒画素候補2であれば、黒画素とする。4×4画素のマトリックスにおいて、1画素以上の黒画素があれば、該4×4画素マトリックスの全体を黒画素ブロックとする。このブロック化以降の処理は、4×4画素を1ブロックとしてブロック単位で出力する。3×3ブロックのマトリックス内において、注目ブロックが黒画素ブロックで、その周辺画素が非黒画素ならば、注目ブロックを非黒画素ブロックにする。
【0179】
−統合色画素判定−
注目ブロックが、色画素判定で色画素2と判定されかつ無彩判定で黒画素と判定されていなければ、注目ブロックは色ブロックと判定する。また、色画素判定が色画素との判定の時も色ブロックと判定する。統合色画素判定で、色と判定したブロックに対して小さな文字を連続と見なすために、注目ブロックを中心とする9×9ブロックのマトリックス内に1ブロックでも色ブロックであれば、注目ブロックを色ブロックとする。ここで、大きく膨張させるのは、文字同士のすき間を埋めるためである。
【0180】
−連続カウント−
次に、色画素ブロックの連続性を見て、カラー原稿か白黒原稿かを判定する。上記膨張の出力データ(色画素ブロック)の中の色画素の連続数をカウントすることにより、カラー原稿かどうか判定する。注目画素が色画素ブロックにある時に注目画素の左上,上,右上および左の画素の色画素連続数を参照して、注目画素の色画素連続数を算出する。ここで、注目画素を、例えば図24の(b)の画素分布パターンMPpのc3画素とすると、左上,上,右上および左の画素はそれぞれ、b2,b3,b4およびc2の画素である。注目画素が色画素ブロックにないときには、該注目画素には0なる色画素連続数を与える。
【0181】
この処理において、図24の(a)に示すRAM 8K(LUT)に、左上,上,右上および左の画素b2,b3,b4およびc2の色画素連続数に対応する注目画素(c3)の色画素連続数の関係を規定したLUTをSIMD型プロセッサ33のデータRAM37から読み出して、書き込む。図24の(a)に示すように、メモコン内にフィードバックループを形成して、RAM 8K(LUT)から読み出したデータc2(左の画素c2の色画素連続数)と、先行ラインの各画素の色画素連続数を格納したラインメモリRAM 8K(LINE)から読み出した左上,上および右上画素b2,b3およびb4の色画素連続数(同じくb2,b3およびb4と表記)とを、マルチプレクサ75,76および出力レジスタ72で併合してLUTアクセスアドレスとしてメモリSWを介してRAM 8K(LUT)のアドレスラインに与えて、LUTからデータc3を読み出し、これを注目画素c3宛ての色画素連続数とする。
【0182】
このLUTによる色画素連続数決定のロジック概要をここで説明すると、注目画素が色画素ブロックにない場合はそれに0を与えるが、色画素ブロックにある場合は、先ず注目画素の上画素の色画素連続数が0であると、参照値Aに右上画素(b4)の色画素連続数に1を加えた値を与え、上画素(b3)の色画素連続数が0であると参照値Aに右上画素(b4)の色画素連続数を与える。次に、参照値Bに左上画素(b2)の色画素連続数に1を加えた値を与え、参照値Cには上画素(b3)の色画素連続数に1を加えた値を与え、また参照値Dには左画素(c2)の色画素連続数に1を加えた値を与える。そして、参照値A,B,CおよびDのうちの最高値を、注目画素(c3)の色画素連続数とする。上画素の色画素連続数が0でないとそれを注目画素に与える。
【0183】
注目画素(c3)に色画素連続数を上述のように与えると、この色画素連続数が設定値thacs以上であるかをチエックして、thacs以上であると、カラー原稿であると決定して、そこで連続カウントの処理を終える。色画素連続数が設定値thacs未満であると、注目画素を走査方向x,yの次の画素に更新して、上述の処理を繰返す。原稿全面について上述の処理をした結果、最後まで色画素連続数が設定値thacs未満であったときには、原稿は白黒画像であると決定する。
【0184】
上述の色画素連続数は、ほぼたての色付き線分と横の色付き線分の和となる。右上の色画素連続数が、他と異なるのは二重カウントを防ぐためである。同一原稿上のどれかの色画素群のなかの色画素連続数が1つでも設定値thacs以上になるとそこで、カラー原稿である、とカラーか白黒かの判定を確定する。
【0185】
−総合判定326(図19)−
総合判定326は、文字判定,膨張処理および文字なか判定からなる。
【0186】
−文字判定−
文字判定では、エッジ分離322の結果がエッジありで、網点分離324の結果が網点なしで白背景分離323の結果が白領域ありのときは、文字エッジと判定する。そうでないときには非文字エッジ(絵柄又は文字なか)と判定する。
【0187】
−膨張処理−
膨張処理では、文字判定の結果を8×8ブロックのOR処理をして、その後に3×3ブロックのAND処理をして4ブロックの膨張処理を行う。すなわち、注目ブロックを中心とする8×8ブロックのいずれかのブロックが文字エッジであると、注目ブロックも文字エッジブロックであると仮定し、該注目ブロックを中心とする3×3ブロックのすべてが文字エッジであると注目ブロックを文字エッジと確定し、そして、注目ブロックとそれに隣接する3ブロック、計4ブロックを文字エッジと見なす。OR処理してからAND処理するのは、特に黒文字の場合、黒文字の領域の周辺に小領域の非黒文字領域が存在すると、処理の差により違和感が感じられることがある。例えば黒が薄く見える。これを防ぐために、OR処理で非黒文字領域を大きくしている。AND処理は、望むべき膨張量にするために行っている。
【0188】
−文字なか判定−
文字なか判定は、エッジ分離322,白背景分離323,網点分離324,色判定325bおよび文字判定の結果を用いて、文字のなか領域(文字線幅内)か否を表す文字なか信号を生成する。文字なか信号を生成するために用いる処理と信号を、次に示す。
【0189】
文字なか用文字信号:文字判定の、文字エッジ/非文字エッジをあらわす出力信号を5×5ブロックのOR処理をする。この出力を文字なか用文字信号と言う;
白ブロック黒文字信号A:文字なか用文字信号がアクティブ(文字エッジ)で、白背景分離323の白ブロック補正の出力が白ブロック補正データありで、色判定325bの結果がノンアクティブ(無彩:黒画素ブロック)の時に、白ブロック黒文字信号Aをアクティブとする。すなわち、「白ブロック黒文字」を示すものとする。この場合(白地に囲まれた黒文字)は、文字である確率が非常に高い;
高濃度黒領域信号B:白背景分離323の黒ブロック化の3×3ブロックのORがアクティブ(黒)で、色判定325の結果がノンアクティブ(無彩)で、網点分離の結果がノンアクティブ(非網点)で、さらに、文字なか用文字信号がノンアクティブ(非文字エッジ)の時に、高濃度黒領域信号Bをアクティブにする。すなわち、「高濃度黒領域」を示すものとする。黒文字のなかは、濃度が濃いので、他の条件と組み合わせて文字なか判定をする;
黒文字信号C:文字なか用文字信号がアクティブ(文字エッジ)で、色判定325の結果がノンアクティブ(無彩)の時に、黒文字信号Cはアクティブ(黒文字)になる。このアクティブの黒文字部分は、文字のエッジである可能性が高く、その周辺に文字なかがある可能性が高い。
【0190】
ここで、文字なか候補の判定について説明する。白ブロック黒文字信号A,高濃度黒領域信号Bおよび黒文字信号Cを用いて、文字なか候補信号Qを表現すると、次式のようになる:
Q24=(A21&A22&A23&A24)
#((Q13#Q23#Q14#Q15)&(B24#C24))
記号の2桁の数字の上桁の数字の2は現在のラインy2を示し、1は1ライン前y1を示す。下桁の数字は、ライン上の画素位置xを示す。上式が表す処理を簡単に説明すると、白ブロック黒文字信号Aが連続して存在するとすなわちA21〜A24が全てアクティブであると、注目画素を文字なか候補であると仮定し、次に、文字なか候補確定の処理を開始する。すなわち、高濃度黒領域信号B24か黒文字信号C24の周辺に文字なか候補ありと判定した画素(Q13,Q23,Q14またはQ15)があると、注目画素も、文字なか候補と、判定を確定する。つまり、白ブロック文字信号A(アクティブ)が連続して存在するとこの条件をトリガーにして、文字なか候補の判定を開始する。
【0191】
白地に囲まれた黒文字(白ブロック黒文字信号Aがアクティブ)の場合は、そこが文字である確率が非常に高く、白ブロック黒文字信号A(アクティブ)が連続して存在するのは、ほとんどすべて文字であるからである。黒文字信号A(アクティブ)は、文字のエッジである可能性が高く、「文字なか」がその周辺にある可能性が高いので、上述のように、文字なか候補(Q24:アクティブ)としている。この結果を文字なか候補とする。
次に、文字なか候補(信号Q:アクティブ)から文字なか信号をつくる。文字なか信号は、文字エッジ信号でなく、文字なか候補であれば、文字なか信号あり(文字なか信号:アクティブ)と判定する。ここで最終的に出力するC/P信号は、以下の表のようになる:
C/P信号 文字エッジ信号 文字なか信号 領域判定内容
0 なし なし 絵柄領域
1 なし あり 文字なか領域
2 − − −
3 あり × 文字エッジ領域
C/P=2を出力するケースは存在しない。
【0192】
この2ビットのC/P信号に、1ビットのB/C信号を加えた3ビットの信号が像域データFdである。
【0193】
像域データFdは、IPU2におけるフィルタ処理および下色除去で参照され、また、IPU3y,IPU3m,IPU3cおよびIPU3kにおけるγ変換および階調処理に参照される。
【0194】
IPU2におけるフィルタ処理は、RGBデータをMTF補正するフィルタ処理であり、N×Nの画素マトリックスに対応する係数マトリクスを用いて、各係数に各画像データを乗じて重み付け平均値を得る。C/P信号が3を表すもの(文字エッジ領域)である時には、鮮鋭化処理用の係数マトリクスを用い、0又は1を表すもの(文字なか領域又は絵柄領域)である時には平滑化処理用の係数マトリクスを用いて、重み付け平均値を導出する。
【0195】
下色除去は、画像データの色再現を向上させるためのものであり、色変換によって生成したY,M,Cデータの共通部分をUCR(加色除去)処理してBkデータを生成し、Y,M,C,Kデータを生成する。ここで、C/P信号が3(文字エッジ領域)以外の時(文字なか領域又は絵柄領域のとき)は、スケルトンブラック処理を行う。C/P信号が3(文字エッジ領域)の時は、フルブラック処理を行う。さらにC/P信号が3(文字エッジ領域)かつB/C信号がH(無彩領域)の時は、C,M,Yのデータをイレースする。これは、黒文字の時、黒成分のみで表現するためである。
【0196】
IPU3y,IPU3m,IPU3cおよびIPU3kのγ変換は、カラープリンタPTRの作像ユニット105の周波数特性やC/P信号に応じて、γ変換特性(いわゆるγカーブ)を変更し処理する。C/P信号が0(絵柄領域)又は1(文字なか領域)の時は画像を忠実に再現するγカーブを用い、C/P信号が3(文字エッジ領域)の時はγカーブを立たせてコントラストを強調する。
【0197】
IPU3y,IPU3m,IPU3cおよびIPU3kの階調処理は、カラープリンタPTRの作像ユニット105の階調特性やC/P信号に応じて、ディザ処理,誤差拡散処理等の量子化を行う。IPU3kによるK画像データの階調処理では、C/P信号が0(絵柄領域)の時は階調重視の処理を行い、それ以外の時は解像力重視の処理を行う。Bk以外の作像の時は、C/P信号が0(絵柄領域)又は1(文字なか領域)の時は階調重視の処理を行い、それ以外の時は解像力重視の処理を行う。
【0198】
−第2実施例−
第2実施例のハードウエアは、上述の第1実施例と同じであるが、第2実施例は、LUT生成用γ変換の補間演算でのデータ処理の内容が少し異なる。
【0199】
図25に、第2実施例のIPU1およびIPU3y〜3kが実行する、LUT生成用γ変換(IPU1におけるスキャナγ変換用LUTの生成&IPU3y〜3kにおけるプリンタγ変換用LUTの生成)の内容を示す。
【0200】
第2実施例のSIMD型プロセッサ(33)のグローバルプロセッサ(38)はまず、全プロセッサエレメントPE0〜PEnを初期化してから、n+1個(n=255)の、それぞれが0〜255の各値を表す階調データD0〜Dnのそれぞれを、n+1個のプロセッサエレメントPE0〜PEnの各入力レジスタにセットする(ステップaγp1)。
【0201】
次に、グローバルプロセッサ(38)は、演算対象区間iを第1区間(i=1)に定めて(aγp2)、区間iの補間演算パラメータai,biを全プロセッサエレメントPE0〜PEnに与えて、yi=ai・x+biの算出を指示する(aγp3)。全プロセッサエレメントPE0〜PEnは、それぞれに与えられている階調データDj(D0〜Dnのそれぞれ)をxとして、yiを算出し、それぞれ算出値A0〜Anを得る(aγp3)。
【0202】
次に、グローバルプロセッサ(38)は、第i区間の境界値xiを全プロセッサエレメントPE0〜PEnに与えて、比較を指示する。PE0〜PEnはそれぞれ、セットされている階調データDjが第i区間である(xi<Dj:NO,すなわちxi≧Djである)かをチェックして、第i区間であると自身のフラグに「1」を立てる(aγp4)。
【0203】
次に、自身のフラグに始めて「1」を立てた(フラグを「0」から「1」に切換えた)プロセッサエレメントは、算出値Aj(A0〜Anのいずれか)を出力レジスタADjに書込む(aγp5)。自身のフラグを「0」から「1」に切換えなかったプロセッサエレメントは、この書込をしない。
【0204】
第1区間を演算対象区間とした上記処理を同様に、演算対象区間iを順次に第2(i=2),第3(i=3),・・・と更新して、第m−1=7区間(i=7)まで繰返し実行する(aγp6/aγp7/aγp3/aγp4/aγp5/aγp6)。ただし、すでにフラグに「1」を立てており、「0」から「1」への切換わりのないプロセッサエレメントは、出力レジスタAjへの算出値の書込はしない。そして最後の第m=8区間では、フラグに「1」を立てていないプロセッサエレメントのみが、算出値Ajを出力レジスタADjに書込む。
【0205】
第m−1=7区間まで実行すると、プロセッサエレメントPE0〜PEnのいずれもが、自身にセットされている階調データが属する区間に宛てられているパラメータA=ai,B=biに基づいた算出値を出力レジスタに保持していることになる。
【0206】
次にグローバルプロセッサ(38)は、プロセッサエレメントPE0〜PEnの出力レジスタのデータ(AD0〜ADn)をプロセッサエレメントのRAMの出力データ領域に書込み、メモコン設定レジスタ(図13の(a))でγ変換用LUTの読み書きを指定したメモコン(図5)にそこのデータの読み出しを指示する。該メモコンは、設定情報でLUTに指定されたRAM 8KのLUT形成用の指定領域に、0〜255の各値の階調データ宛てに、そのγ変換データを書込む(aγp8)。
【0207】
この第2実施例の補間演算によれば、各プロセッサエレメントが同一時点には同一の区間の補間演算をしてγ変換データを算出する。しかしこのとき各プロセッサエレメントに与えられる各階調データは同一とは限らず、すべてが該補間演算が宛てられる区間iに入っているものとは限らない。区間iに入っていない階調データが与えられたプロセッサエレメントの演算出力はエラーであり、区間iに入っている階調データが与えられたプロセッサエレメントの演算出力が正しい値である。
【0208】
各区間i、i=1〜m、の補間演算を1つづつ、すべてのプロセッサエレメントで同時に同じ演算を並行して実行し、全区間の補間演算を遂行すると、その間に、どのプロセッサエレメントも1回、正しい変換値を算出する。この正しい変換値を有効とする。すなわち変換データとして出力する。
【0209】
1つの階調データに対して、それを与えられたプロセッサエレメントは、見かけ上はm回(例えば、m=8)補間演算を繰り返す。すなわち、各区間の補間演算yi、i=1〜m、のそれぞれを実行する。したがって演算回数は多くなるが、1回の演算が簡単で時間が短いので、大きなn値の複数nの階調データ全体としての変換時間は短い。
【0210】
−第3実施例−
第3実施例のハードウエアは、上述の第1実施例と同じであるが、第3実施例は、γ変換用LUTの生成に用いる補間演算プログラムの構成が少し異なる。第3実施例のIPU1およびIPU3y〜3kが実行する、γ変換(IPU1におけるスキャナγ変換用LUTの生成&IPU3y〜3kにおけるプリンタγ変換用LUTの生成)を説明する。
【0211】
IPU1宛ての読取補正プログラムには、γ変換用LUTの生成の位置に、スキャナγ変換のプログラムの格納アドレスS00(図26)が挿入されており、HDDから読取補正プログラムをIPU1のSIMD型プロセッサ33のプログラムRAM36に転送するときに、該格納アドレスS00のスキャナγ変換のプログラムを、該格納アドレスと置き変えて転送する。これに加えて、1セットのR,G,B γ変換用の「境界値,パラメータ」群、例えばアドレスS1R,S1GおよびS1B(図26)のデータを、SIMD型プロセッサ33のデータRAM37のγ変換用データ格納領域に転送して書込む。一組例えばアドレスS1Rの、R γ変換用の、「境界値,パラメータ」群は、図17に示す区間の境界値xiおよび補間演算式yiのパラメータai,biであり、i=1〜8、の8区間分である。
【0212】
図27に、一組のパラメータ群の、データRAM37上の情報区分を模式的に示す。
【0213】
前記1セットすなわち3組(R用,G用およびB用:アドレスS1R,S1GおよびS1B)をデータRAM37に書込んだ後でも、操作ボードOPB或はホストPCからの変更操作によって、図26に示す他のグループのもの(例えばS3R,S3G,S3Bのもの)に書換えることができる。
【0214】
同様に、IPU3y,IPU3m,IPU3cおよびIPU3kの夫々宛てのY,M,CおよびK出力補正プログラムにも、γ変換の位置に、γ変換のプログラムの格納アドレス(P00:図26)が挿入されており、HDDからY,M,CおよびK出力補正プログラムを、IPU3y,IPU3m,IPU3cおよびIPU3kのプロセッサ53y,53m,53cおよび53kの各プログラムRAM(36)に転送するときに、該格納アドレスP00のプリンタγ変換のプログラムを、該格納アドレスと置き変えて、転送する。これに加えて、1セットのY,M,C,およびKそれぞれのγ変換用の「境界値,パラメータ」群、例えばアドレスP1Y,P1M,P1CおよびP1K(図26)のデータ、のそれぞれを、SIMD型プロセッサ53y,53m,53cおよび53kの各データRAMのγ変換用データ格納領域に転送して書込む。データRAMに書込んだ後でも、操作ボードOPB或はホストPCからの変更操作によって、図26に示す他のグループのもの(例えばP3Y,P3M,P3CおよびP3Kのもの)に書換えることができる。
【0215】
第3実施例のγ変換処理フローは、図16に示す第1実施例のものと同様である。ただし、境界値xiおよびパラメータai,biは、SIMDプロセッサ(33)内のデータRAM(37)から読出してプロセッサエレメントPEに与える。
【0216】
−第4実施例−
第4実施例のハードウエアは、上述の第1実施例と同じであるが、第4実施例は、γ変換テーブルの補間演算による生成は行わず、原変換テーブルをHDDに格納しているものである。IPU1宛ての読取補正プログラムには、γ変換用LUTの生成の位置に、スキャナγ変換のプログラムの格納アドレスS00(図28)が挿入されており、HDDから読取補正プログラムをIPU1のSIMD型プロセッサ33のプログラムRAM36に転送するときに、該格納アドレスS00のスキャナγ変換のプログラムを、該格納アドレスと置き変えて転送する。これに加えて、1セットのR,G,B γ変換テーブル、例えばアドレスS1R,S1GおよびS1B(図28)の変換テーブルを、SIMD型プロセッサ33のデータRAM37のγ変換テーブル格納領域に転送して書込む。
【0217】
RGB画像データのγ変換のときには、SIMD型プロセッサ33が、データRAM37からγ変換テーブルを読み出して、例えば図18に示すように、1つの変換テーブルを2つのRAM 8kに書込んで、1ライン上の奇数番画素の画像データと偶数番画素の画像データを同時に並行してγ変換する。
【0218】
前記1セットすなわち3組(R用,G用およびB用:アドレスS1R,S1GおよびS1B)のγ変換テーブルをデータRAM37に書込んだ後でも、操作ボードOPB或はホストPCからの変更操作によって、図28に示す他のグループのもの(例えばS3R,S3G,S3Bのもの)に書換えることができる。
【0219】
同様に、IPU3y,IPU3m,IPU3cおよびIPU3kの夫々宛てのY,M,CおよびK出力補正プログラムにも、γ変換の位置に、γ変換のプログラムの格納アドレス(P00:図28)が挿入されており、HDDからY,M,CおよびK出力補正プログラムを、IPU3y,IPU3m,IPU3cおよびIPU3kのプロセッサ53y,53m,53cおよび53kの各プログラムRAM(36)に転送するときに、該格納アドレスP00のプリンタγ変換のプログラムを、該格納アドレスと置き変えて、転送する。これに加えて、1セットのY,M,C,およびKそれぞれのγ変換テーブル、例えばアドレスP1Y,P1M,P1CおよびP1K(図28)のデータ、のそれぞれを、SIMD型プロセッサ53y,53m,53cおよび53kの各データRAMのγ変換テーブル格納領域に転送して書込む。データRAMに書込んだ後でも、操作ボードOPB或はホストPCからの変更操作によって、図28に示す他のグループのもの(例えばP3Y,P3M,P3CおよびP3Kのもの)に書換えることができる。
【0220】
−第5実施例−
第5実施例のハードウエアは前述の第1実施例と略同様であるが、第5実施例のIPU1のSIMD型プロセッサ33が、その内部のプログラムメモリ36の読取り補正プログラムの中の像域分離プログラム、更にその中のパターン比較プログラム、に基づいて行うパターン比較すなわちパターンマッチングの内容が異なる。
【0221】
図29に、この第5実施例のパターン比較PMPaの内容を示す。なお、この処理は第1実施例の図20に示す処理に置き換わるものである。図29に示すパターン比較PMPaの内容を次に説明する。
【0222】
例えば図21の(a)に代表例を示す黒画素連続,白画素連続の検出用の参照パターン群を用いるパターン比較のときには、SIMD型プロセッサ33はメモリ装置32に、3ライン以上の3値化データ格納用の入力ラインバッファを設定し、かつ3ラインの中の真中のラインの各画素宛てに、それを中心とする3×3画素マトリクスの画像データ群が、参照パターン(参照データセット)と合致するか否を表す判定データ(「11」:黒連続画素,「01」:白連続画素,「00」:該当せず)を書込むための、判定結果格納用のラインバッファを設定する。
【0223】
そして、図29を参照すると、SIMD型プロセッサ33のグローバルプロセッサ38は、その内部のA個(例えば320個)のプロセッサエレメントの各RAMに、b個の参照パターン(参照マトリクス)群の参照データセット群(前述の黒画素連続検出用参照パターン群および白画素連続検出用参照パターン群のもの;b個の参照データセット)を書込む(pm1)。
【0224】
次にSIMD型プロセッサ33は、A個の対象データセットの転送をメモリ装置32のメモコンに指示し(pm2)、これに応答して該メモコンが、入力ラインバッファの、中央ライン(注目ライン)上の一連のA個の注目画素のそれぞれを中央とする各画素マトリクスの画情報ビット群を、マトリクス単位で図17の(c)に示す態様でaバイトの対象データセットに変換して、SIMD型プロセッサ33にシリアル転送する。SIMD型プロセッサ33のグローバルプロセッサ38は、先頭の対象データセットから順に、A個の各プロセッサエレメントの各RAMに書込む(pm3)。
【0225】
例えば、バッファメモリ32のメモコンが、ラインバッフアメモリに割り当てた3個のRAM 8Kに、画情報ビット(2値化データ)を書込み、それらから、図21の(b)に示すように、注目画素eの周辺に2次元x,yのそれぞれに1画素が分布する、画素a〜iでなる3×3画素マトリクスに宛てられた画情報ビット群を読み出して、図21の(c)に示すように、1列a(a=2)バイトの対象データセットに変換してSIMD型プロセッサ33に与え、これを注目画素を1画素づつ同一ライン上でシフトして、A回行う。SIMD型プロセッサ33のグローバルプロセッサ38が各対象データセットを各プロセッサエレメントのRAMに書込む(pm3)。
【0226】
次に、プロセッサエレメントのRAMの記憶容量の限界近くの所定上限値まで対象データセットを格納したか、もしくは、1ライン上の全画素に関して上述の対象データセットの生成とSIMD型プロセッサ33への送出が完了したかをグローバルプロセッサ38がチェックして(pm13,11)、いずれも否であると、同一ライン上の次の注目画素群をパターン比較対照画素に設定して、上述のステップpm3の対象データセットの生成とSIMD型プロセッサ33への送出を行う。SIMD型プロセッサ33のグローバルプロセッサ38が各対象データセットを各プロセッサエレメントのRAMに書込む(pm13−pm11−pm12−pm3)。
【0227】
プロセッサエレメントのRAMに所定上限値まで対象データセットを格納したとき又は1ライン上の全画素を注目画素とする対象データセットのSIMD型プロセッサ33への書込が終わったとき、グローバルプロセッサ38は、パターンマッチング対象データセットに、プロセッサエレメントのRAM上の第1のものを指定して(pm14)、各プロセッサエレメントに比較演算SIMDopを指示する。この比較演算SIMDopの内容は、図20に示すものと同じである。
【0228】
この第5実施例では、この比較演算SIMDopを、プロセッサエレメントのRAMに書込んでいる対象データセットの数分繰り返し実行する(pm14−SIMDop−pm10−pm15−pm16−SIMDop)。この複数回の比較演算SIMDopを繰返すと、1ライン分の全画素宛てのパターンマッチングが終了したかをチェックして、終了していないと、同一ライン上の次の注目画素群をパターン比較対照画素に設定して、上述のステップpm3の対象データセットの生成とSIMD型プロセッサ33への送出を行う。
【0229】
この第5実施例のパターン比較では、1ライン上の多くの画素を注目画素とするパターンマッチングを一気に実行するように各プロセッサエレメントがパターン比較を多数回繰り返すので、パターンマッチング判定を更に高速にし得る。
【0230】
なお、上記第1〜5実施例のいずれも、YMCK画像データの処理を、4組のSIMD型プロセッサ53y,53m,53c,53kで、色別に同時に並行処理するようにしたが、YMCK画像データのプリンタγ変換あるいは出力処理の全体を、1つのSIMD型プロセッサで色毎に順次に行うこともできる。これは、1組の感光体ユニットで順次に各色像を形成するいわゆるワンドラム方式のカラープリンタに適合する。しかし、実施例に示した4組の感光体ユニットをタンデム配列したカラープリンタでは、上述のようにYMCK画像データのそれぞれあて、合計4組のSIMD型プロセッサ53Y,53m,53c,53kを用いるのが、YMCK画像データの出力処理の全体が極めて高速になり、高速プリントアウトに好ましい。
【0231】
【発明の効果】
バッファメモリ装置(32)のメモコンの分離機能を用いて例えばモノクロ画像モードでは1ラインの白黒画像データを奇数番画素の画像データ列と偶数番画素の画像データ列の2連に分離して各連の各画像データを同時に並行して画像処理器に与えて同時に並行してデータ処理でき、白黒画像データの高速処理が可能となる。更に、メモコンの合成機能を用いて、処理した複数連の画像データを1ラインに合成して出力(図6のAf)できるので、モノクロ画像処理システムのデータ転送ラインでも、そのまま処理後のRGB画像データ又はYMデータを転送できる。
【0232】
また、カラー画像モードでは、1ラインCK画像データの、複数色(例えば2色)の画像データのそれぞれを、同時に並行して画像処理器に与えて同時に並行してデータ処理し、処理後の複数連の画像データを、メモコンの合成機能を用いて、一連に合成して出力(図6のCf〜Ff)できるので、カラー画像データの処理速度が速く、しかもモノクロ画像処理システムのデータ転送ライン(たとえば1系統)と同様なデータ転送ラインでも、そのまま処理後データを転送できる。
【図面の簡単な説明】
【図1】 本発明の第1実施例の、複合機能があるデジタルフルカラー複写機の外観を示す正面図である。
【図2】 図1に示すカラープリンタPTRの作像機構の概要を示す拡大縦断面図である。
【図3】 図1に示す複写機の電気系システムの概要を示すブロック図である。
【図4】 (a)および(b)はそれぞれ、図3に示すカラー原稿スキャナSCRおよびカラーデータインターフェース制御部CDICの画像処理系およびデータ転送系の概要を示すブロック図である。
【図5】 図4の(a)に示す第1画像処理ユニットIPU1の、入出力インターフェイス31およびバッファメモリ32の構成を示すブロック図である。
【図6】 画像データ転送の際の、パラレル,シリアルのデータ配列の変換態様の数種を示すブロック図である。
【図7】 (a)は図4の(a)および図5に示すSIMD型プロセッサ33の構成の概要を示すブロック図、(b)は1個のプロセッサエレメントPEの一部分の構成を示すブロック図である。
【図8】 (a)および(b)はそれぞれ、図3に示す第2画像処理ユニットIPU2および画像メモリアクセス制御部IMACの画像処理系およびデータ転送系の概要を示すブロック図である。
【図9】 図3に示す第3画像処理ユニットIPU3Y,IPU3m,IPU3cおよびIPU3kの画像処理系の概要を示すブロック図である。
【図10】 図3に示す画像処理システムにおける、画像データの流れの数例を示すフローチャートである。
【図11】 図3に示すシステムコントローラ106の、操作ボードOPBおよびパソコンPCからの画像処理コマンドに応答するシステム制御の概要を示すフローチャートである。
【図12】 図3に示すシステムコントローラ106の初期設定指令に応答してIPU1が実施する初期設定の内容を示すフローチャートである。
【図13】 (a)は、図5に示すSIMD型プロセッサ33の内部レジスタに書込む設定情報の区分を示す図表である。(b)は設定情報の項目を示す図表である。(c),(d)および(e)は、設定情報を例示する図表である。
【図14】 設定情報によって、図5に示すRAM 8Kに設定されるデータ読み書き領域を模式的に示すブロック図である。
【図15】 図3に示すハードディスク装置HDDに格納されている、γ変換用データの区分を示す図表である。
【図16】 図7に示すグローバルプロセッサ38が、プログラムRAM36に格納された読取補正プログラムの中のγ変換プログラムに基いて実行する補間演算処理の過程を示すフローチャートである。
【図17】 γ変換特性カーブを2点鎖線で示し、その近似直線を実線で示すグラフである。
【図18】 補間演算処理によって生成された変換テーブルを用いるR画像データのγ変換のときの画像データの流れを示すブロック図である。
【図19】 図4に示すSIMD型プロセッサ33が行う像域分離でのデータ処理の概要を示す機能ブロック図である。
【図20】 図4に示すSIMD型プロセッサ33が行うパターン比較の内容を示すフローチャートである。
【図21】 (a)は、図19に示すエッジ分離322で、注目画素が白,黒連続画素かを判定するために用いる参照パターンの代表例を示すブロック図である。(b)および(d)は注目画素とその周辺画素のマトリクスを示すブロック図である。(c)および(e)はそれぞれ、(b)および(d)に示す画素マトリクスのデータ群を整数バイトの対象データセットにした場合のデータ分布を示すブロック図である。
【図22】 図5に示すメモコンのデータフィードバックによる確定エッジ/非エッジ情報の生成処理の内容を示すフローチャートである。
【図23】 (a)は、図5に示すメモコンのデータフィードバック機能の1態様を示すブロック図、(b)は、図5に示すメモコンのデータフィードバック機能のもう1つの態様を示すブロック図である。
【図24】 (a)は、図5に示すメモコンのデータフィードバック機能のもう1つの態様を示すブロック図である。(b)は、注目画素とその周辺画素のマトリクスを示すブロック図である。
【図25】 第2実施例においてSIMD型プロセッサのグローバルプロセッサ38が、プログラムRAM36に格納された読取補正プログラムの中のγ変換プログラムに基いて実行する補間演算処理の過程を示すフローチャートである。
【図26】 第3実施例の、ハードディスク装置HDDに格納されている、γ変換用データの区分を示す図表である。
【図27】 第3実施例の、HDDから読出してデータRAM37に書込んだ一組のパラメータ群のRAM37上の分布を模式的に示す図表である。
【図28】 第4実施例の、ハードディスク装置HDDに格納されている、γ変換用データの区分を示す図表である。
【図29】 第5実施例の、SIMD型プロセッサ33によるパターン比較の内容を示すフローチャートである。
【符号の説明】
ADF:自動原稿供給装置
SCR:カラー原稿スキャナ
OPB:操作ボード PTR:カラープリンタ
PC:パソコン PBX:交換器
PN:通信回線 2:光書込みユニット
3,4:給紙カセット 5:レジストローラ対
6:転写ベルトユニット
7:定着ユニット 8:排紙トレイ
10M,10C,10Y,10K:感光体ユニット
11M,11C,11Y,11K:感光体ドラム
20M,20C,20Y,20K:現像器
60:転写搬送ベルト IPU1:第1画像処理ユニット
IPU2:第2画像処理ユニット
IPU3y,3m,3c,3k:第3画像処理ユニット
CDIC:カラーデータインターフェース制御部
IMAC:画像メモリアクセス制御部
HDD:ハードディスク装置
MEM:画像メモリ LAN:ローカルエリアネットワーク
FONT:フォントROM
IDU:紙幣認識ユニット
SCI:システム制御インターフェイス
JTAG:ジョブエンコーダ/デコーダ
メモコン:メモリコントローラ
R:R画像データ G:G画像データ
B:B画像データ Fd:像域データ
Y:Y画像データ M:M画像データ
C:C画像データ K:K画像データ
[0001]
BACKGROUND OF THE INVENTION
  The present invention relates to an image data processing apparatus having a buffer memory device at an input / output interface and a color image forming apparatus.In placeRelated.
[0002]
[Prior art]
  For image data processing, for example, reading correction (compensation between CCD lines, main scanning registration adjustment, shading correction, dot correction, vertical stripe correction, γ conversion, etc.) that compensates or corrects reading distortion in RGB image data read by a document scanner , The scanned image is a binary image (character edge) or medium (within the line width: character) of a character or line that has a binary contrast (hereinafter simply referred to as a character), or a halftone image such as a photograph (hereinafter referred to as a character). Intermediate processing (filter processing, background removal) mainly consisting of conversion of RGB image data that has undergone image area separation and reading correction to determine whether it is chromatic or achromatic, and whether it is chromatic or achromatic , Color conversion, that is, conversion to YMCK image data, under color removal, main scanning scaling, main scanning shift, main scanning mirroring, sub-scanning thinning, mask processing, and binarization in the case of monochromatic character output), In addition, there are output corrections (printer γ conversion and gradation processing) for correcting intermediately processed YMCK image data so as to match the output characteristics of the printer, and gradation processing includes density conversion, dither processing, and error diffusion processing. There are various types of processing.
[0003]
  Also, the data processing form includes product-sum operation in filter processing, pattern matching in image area separation, data conversion using LUT (Look Up Table) (for example, γ conversion) or correction operation (for example, shading correction), etc. There are various.
[0004]
  When the processing speeds of the preceding image data processing and the subsequent image data processing are different, it is necessary to temporarily store the image data in the buffer memory between them. In filter processing and pattern matching, since it is necessary to simultaneously refer to image data groups of a pixel matrix extending over several lines, a line buffer memory for several lines is required. Therefore, a buffer memory device is used in the image data processing.
[0005]
  In Japanese Patent Laid-Open No. 8-305329, an input data selector 6, an input data latch 10, one memory unit 1, an output data latch 11, and an output data selector 9 are connected in this order along the flow of data, and further a write address A signal that includes a selector 7, a read address selector 8, and a CPU 12 that controls each selector, and that uses the memory unit 1 as a line memory for a TV reception video signal and a look-up table for non-linear operation according to the selector setting by the CPU 12. A processing apparatus is disclosed. The data in the lookup table is generated by the CPU 12 and written into the memory unit 1.
[0006]
[Problems to be solved by the invention]
  In addition to many forms of image processing as described above, there are also storage and editing in a memory. In any of image reading, storage and printing, monochrome image data processing related to monochrome reading and monochrome recording, that is, monochrome image mode processing, RGB image data and YMCK image data processing, that is, color image mode processing. is there. Even in the case of a color processor, there are many requests for using a monochrome image mode, and the monochrome image mode is generally selectable.
[0007]
  In monochrome image mode, monochrome image data is processed. In contrast, in the color image mode, in the reading process, image data of each of R (red), G (green), and B (blue), that is, image data for three colors is processed, and in the recording (print) mode. Processes image data of Y (yellow), M (magenta), C (cyan) and K (black), that is, image data for four colors. Therefore, when the image data transfer system in the monochrome image mode is also used in the color image mode, simply, in the color image mode, one line of image data transfer is three times or four times the transfer time in the monochrome image mode. End up. The image data processing time for one line is three times or more or four times or more.
[0008]
  In order to shorten this, an image processor that can input and output two or more image data simultaneously in parallel and can process data such as correction and conversion simultaneously in parallel with multiple image data is adopted in the color processor. It is preferable to do this. According to this, in the color image mode, image data sequences of two colors (two or more) can be processed simultaneously in parallel, so that the processing speed can be improved several times. However, in this case, since the data transfer in the color image mode simultaneously becomes two colors (two or more), it cannot be applied as it is to the conventional image processing system having only one data transfer line dedicated to monochrome. . Also, when monochrome image data is transferred and processed in the monochrome image mode in the same manner as a conventional monochrome machine, a series of processing is performed even though the image processor has the ability to process two or more sets of image data simultaneously. Thus, in the monochrome image mode, the ability of the image processor cannot be fully utilized.
[0009]
  The data processing of the signal processing apparatus disclosed in Japanese Patent Application Laid-Open No. 8-305329 is performed by inserting 0 into the line data by the switching control of the output data selector 9 by the CPU 12 in the usage mode of the line memory and using the lookup table. This is a data conversion using the look-up table, and is difficult to apply to various complex image data processing as described above.
[0010]
  A first object of the present invention is to provide an image data processing apparatus and method having an input / output interface capable of high-speed processing with a configuration of an image processing unit common to both a color image mode and a monochrome image mode. A second object is to provide a color image forming apparatus having a composite function with a high image processing speed.
[0011]
[Means for Solving the Problems]
  (1) Input of image dataForce orOutputSelectivelyImage port to perform,
image dataTo the predetermined imageprocessingDoAn image processor;
Image data from the image portReceiveInput to the image processorprocessingAnd the image data output from the image processorAcceptanceOutput to the image portprocessingTheDo selectivelyAn image data processing device comprising: a buffer memory device;
The image data input to or output from the image port is a predetermined number of two or more of a series of image data sequences in which the image data is serially arranged in time series.a ColumnI / O in parallela A series of image dataAnd
The image processor is
A predetermined number of 2 or more for data processingbProcessor elements
Functions as an input / output interface with the buffer memory device, corresponding to each of the processor elements b Can store data a With these multiple registers,
Data from the buffer memory device b A process control means for performing a process for inputting / outputting to / from the register every time and a process for performing the same process on each data of the register corresponding to each processor element in parallel,
The buffer memory device includes:
The image data to be input / output to / from the image portat least b more thanstorebufferMemory,
in frontInput / output management of the image data to the buffer memoryMemoconAnd consists of
The memocon isWhen selecting the image port as input,
Parallel the image data stored in the buffer memory in a series of image data stringsaWith separation function
A series of image data strings in a row separated by the separation functionTo each of the predetermined registers a ColumnPerform parallel input function to perform parallel input,
When selecting the image port as output,
The image processorPredetermined a Each from each register in the columnParallel output function that outputs a series of image data in parallel
Output by the parallel output function a In a row 1 Extract a series of image data sequentially a Combined into a series of image data sequences and stored as the image data in the buffer memoryWhich performs the composition function,
Said a As the continuous image data sequence, the first color image data sequence in the color image data a Reduce the number of image ports required to input / output color image data by parallel input / output of color image data stringsAn image data processing apparatus characterized by that.
[0012]
  According to this, using a separation function of the memo control, for example, in the monochrome image mode, a series (for example, one line) of monochrome image data is a series (for example, an image data string of odd-numbered pixels and an image data string of even-numbered pixels). ), The image data of each series is simultaneously supplied to the image processor in parallel and data processing can be performed in parallel at the same time, and high-speed processing of monochrome image data becomes possible. Furthermore, since the processed “a” series of image data can be combined into one line and output using the memocon combining function (Af in FIG. 6), the processed data is transferred as it is even on the data transfer line of the monochrome image processing system. it can. Such processing is similarly performed on image data of one color and one line in the color image mode, so that the processing speed of one color for one line can be increased.
[0013]
  In the color image mode, each of a plurality of colors (for example, two colors) of RGB image data or YMCK image data of one line is simultaneously supplied to the image processor in parallel and simultaneously processed in parallel. Since the processed a-series image data can be synthesized and output in series using the memocon synthesis function (Cf to Ff in FIG. 6), the processing speed of color image data is high, and the monochrome image processing system Even after a data transfer line similar to the data transfer line (one system), the processed data can be transferred as it is.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
  (2) In the image data processing device,a ReamFrom the image data sequence of the first color in the color image data as the image data sequenceFirst a colorInstead of parallel input or parallel outputSaid a CommunicatingAdjacent as the image data string ofa everyThe image data processing apparatus according to (1), wherein input / output from the image port to the buffer memory device is processed at a high speed by performing parallel input or parallel output of the pixels.
[0015]
  (3)The memory buffer device is composed of a plurality of sets each including a combination of a plurality of buffer memories and a plurality of memocons. The memory buffer device receives image data from the image port, inputs the image data to the image processor, and outputs from the image processor. Processing for receiving received image data and outputting it to the image port is selectively performed in units of sets.The image data processing apparatus according to (1) or (2), characterized in that:
[0016]
  (4) The image processor further includes a readable / writable program memory,
The image data processing apparatus further comprises means for writing a data processing program in the program memory,
The image processor performs image processing according to a data processing program written in the program memory.The image data processing apparatus according to (3), characterized in that:
[0017]
  (5) Above (4The image data processing device according to claim 1;
Color image reading means and image forming meansIn a color image forming apparatus having,
The image data processing device includes a first image processor that reads and corrects RGB image data according to the data processing program.
A second image processor for converting RGB image data into YMCK image data;
Third image processor for correcting output of YMCK image dataBy means of writing the data processing program to be processed asWrite to the program memory;
The RGB image data read by the color image reading unit is subjected to reading correction for image reading of the color image reading unit by the first image processor,
The RGB image data subjected to the reading correction is converted into YMCK image data by the second image processor,
The converted YMCK image data is subjected to output correction for image formation of the image forming means by the third image processor,
A color image forming apparatus, wherein the output-corrected YMCK image data is image-formed by the image forming means.
[0018]
  (6) The abovea ReamThe image data sequence is the RGB image dataeither2Color imagedataColumnThe image data processing apparatus according to (1) above, wherein
[0019]
  (7) The abovea ReamThe image data string is a CMYK image dataeither2Color imagedataColumnThe image data processing apparatus according to (1) above, wherein
[0020]
  (8)Said aThe image data processing apparatus according to (2), wherein the continuous image data sequence is a data sequence of odd-numbered pixels and even-numbered pixels in one line.
[0021]
  (9)Said aThe image data processing apparatus according to (2), wherein the continuous image data sequence is an image data sequence of two adjacent lines.
[0022]
  (10)Said aThe image data processing apparatus according to (8) or (9), wherein the continuous image data sequence is a sequence of monochrome image data read in monochrome.
[0023]
  Other objects and features of the present invention will become apparent from the following description of embodiments with reference to the drawings.
[0024]
【Example】
  -1st Example-
  FIG. 1 shows the appearance of a multi-function full-color digital copying machine according to an embodiment of the present invention. This full-color copying machine is roughly constituted by units of an automatic document feeder ADF, an operation board OPB, a color scanner SCR, and a color printer PTR. The color image data processing apparatus ACP (FIG. 3) in the apparatus is connected to a LAN (Local Area Network) connected to a personal computer PC and a switch PBX connected to a telephone line PN (facsimile communication line). A facsimile control unit FCU (FIG. 3) of a facsimile board is connected to the exchange PBX. The printed paper of the printer PTR is discharged onto the paper discharge tray 8.
[0025]
  FIG. 2 shows the mechanism of the color printer PTR. The color printer PTR of this embodiment is a laser printer. This laser printer PTR has four toner image forming units for forming images of each color of magenta (M), cyan (C), yellow (Y), and black (black: K). They are arranged in this order along (from the lower right to the upper left in the figure). That is, it is a four-drum type full-color image forming apparatus.
[0026]
  These magenta (M), cyan (C), yellow (Y) and black (K) toner image forming units are respectively photoreceptor units 10M, 10C, 10Y having photoreceptor drums 11M, 11C, 11Y and 11K. 10K and developing units 20M, 20C, 20Y and 20K. Further, the arrangement of each toner image forming unit is such that the rotation axes of the photosensitive drums 11M, 11C, 11Y and 11K in each photosensitive unit are parallel to the horizontal x axis and the transfer paper moving direction (y, It is set so as to be arranged at a predetermined pitch on the z-plane (upward left line forming 45 ° with respect to the y-axis). As the photoreceptor drum of each photoreceptor unit, a photoreceptor drum having a diameter of 30 mm and having an organic photoreceptor (OPC) layer on the surface thereof was used.
[0027]
  In addition to the toner image forming unit, the laser printer PTR carries the optical writing unit 2 by laser scanning, the paper feed cassettes 3 and 4, the registration roller pair 5, and the transfer paper to support each toner image forming unit. The image forming apparatus includes a transfer belt unit 6 having a transfer conveyance belt 60 that conveys the transfer position so as to pass through, a belt fixing type fixing unit 7, a paper discharge tray 8, and the like. The laser printer PTR also includes a manual feed tray, a toner replenishing container, a waste toner bottle, a duplex / reversing unit, a power supply unit, etc. (not shown).
[0028]
  The optical writing unit 2 includes a light source, a polygon mirror, an f-θ lens, a reflection mirror, and the like, and oscillates laser light on the surfaces of the photosensitive drums 11M, 11C, 11Y, and 11K in the x direction based on image data. Irradiate while scanning. Also, the alternate long and short dash line in FIG. 2 indicates the transfer path of the transfer paper. The transfer paper fed from the paper feed cassettes 3 and 4 is conveyed by a conveyance roller while being guided by a conveyance guide (not shown), and is sent to the registration roller pair 5. The transfer paper sent to the transfer conveyance belt 60 at a predetermined timing by the registration roller pair 5 is carried by the transfer conveyance belt 60 and conveyed so as to pass the transfer position of each toner image forming portion.
[0029]
  The toner images formed on the photoconductive drums 11M, 11C, 11Y, and 11K of each toner image forming unit are transferred to transfer paper carried and transferred by the transfer conveyance belt 60, and the color toner images are superimposed, that is, a color image is formed. The formed transfer paper is sent to the fixing unit 7. When passing through the fixing unit 7, the toner image is fixed on the transfer paper. The transfer paper on which the toner image is fixed is discharged onto the paper discharge tray 8. That is, the transfer is a direct transfer method in which a toner image is directly transferred onto a transfer sheet.
[0030]
  The outline of the yellow Y toner image forming unit will be described below. Other toner image forming units have the same configuration as that of yellow Y. As described above, the yellow Y toner image forming unit includes the photosensitive unit 10Y and the developing unit 20Y. In addition to the photosensitive drum 11Y, the photosensitive unit 10Y includes a brush roller that applies a lubricant to the surface of the photosensitive drum, a swingable blade that cleans the surface of the photosensitive drum, and a static elimination lamp that irradiates light on the surface of the photosensitive drum. , A non-contact type charging roller for uniformly charging the surface of the photosensitive drum, and the like.
[0031]
  In the photoconductor unit 10Y, a laser beam modulated on the surface of the photoconductor drum 11Y uniformly charged by a charging roller to which an AC voltage is applied and modulated by the optical writing unit 2 based on print data and deflected by a polygon mirror. When L is irradiated while scanning, an electrostatic latent image is formed on the surface of the photosensitive drum 11Y. The electrostatic latent image on the photosensitive drum 1IY is developed by the developing unit 20Y to become a yellow Y toner image. At the transfer position where the transfer paper on the transfer conveyance belt 60 passes, the toner image on the photosensitive drum 1IY is transferred to the transfer paper. After the toner image is transferred, the surface of the photosensitive drum 11Y is coated with a predetermined amount of lubricant with a brush roller, then cleaned with a blade, discharged with light emitted from a discharge lamp, and then subjected to the next static charge. Prepared for formation of an electrostatic latent image.
[0032]
  The developing unit 20Y contains a two-component developer including a magnetic carrier and a negatively charged toner. A developing roller, a conveying screw, a doctor blade, a toner concentration sensor, a powder pump, and the like are provided so as to be partially exposed from the opening on the photosensitive drum side of the developing case 1Y. The developer accommodated in the developing case is triboelectrically charged by being conveyed by stirring with a loss frame by a conveying screw. A part of the developer is carried on the surface of the developing roller. The doctor blade uniformly regulates the layer thickness of the developer on the surface of the developing roller, and the toner in the developer on the surface of the developing roller moves to the photosensitive drum, whereby the toner image corresponding to the electrostatic latent image becomes a photosensitive member. Appears on drum 11Y. The toner density of the developer in the developing case is detected by a toner density sensor. When the density is insufficient, the powder pump is driven to replenish the toner.
[0033]
  Next, the outline of the transfer belt unit 6 will be described. The transfer conveyance belt 60 of the transfer belt unit 6 has a volume resistivity of 109-1011It is an endless single layer belt having a high resistance of Ωcm, and its material is PVDF (polyvinylidene fluoride). The transfer conveyance belt 60 is wound around four grounded stretching rollers so as to pass through the transfer positions that are in contact with and opposed to the photosensitive drums 11M, 11C, 11Y, and 11K of each toner image forming unit. Yes. Among these stretching rollers, an electrostatic attracting roller to which a predetermined voltage is applied from a power source is arranged so as to face an entrance roller on the upstream side in the transfer sheet moving direction indicated by a two-dot chain line arrow. The transfer paper that has passed between these two rollers is electrostatically adsorbed onto the transfer conveyance belt 60. An exit roller on the downstream side in the transfer sheet moving direction is a drive roller that frictionally drives the transfer conveyance belt, and is connected to a drive source (not shown). In addition, a bias roller to which a predetermined cleaning voltage is applied from a power source is disposed on the outer peripheral surface of the transfer conveyance belt 60. The bias roller removes foreign matters such as toner adhered on the transfer conveyance belt 60.
[0034]
  Further, a transfer bias applying member is provided so as to come into contact with the back surface of the transfer conveyance belt 60 that forms a contact facing portion that contacts and faces the photosensitive drums 11M, 11C, 11Y, and 11K. These transfer bias applying members are Mylar fixed brushes, and a transfer bias is applied from each transfer bias power source. The transfer bias applied by the transfer bias applying member applies a transfer charge to the transfer conveyance belt 60, and a transfer electric field having a predetermined strength is formed between the transfer conveyance belt 60 and the surface of the photosensitive drum at each transfer position. .
[0035]
  FIG. 3 shows a main part of the electric system of the copying machine shown in FIG. In the color document scanner SCR that optically reads an original, the reading unit 21 condenses the reflected light of lamp irradiation on the original on a light receiving element by a mirror and a lens. The light receiving element (CCD in this embodiment) is in the sensor board unit (hereinafter simply referred to as SBU) of the reading unit 21, and the RGB image signal converted into an electrical signal in the CCD is a digital signal on the SBU. That is, after each read 8-bit multivalued R, G, B image data is converted, it is given from the SBU to the first image processing unit IPU1 (hereinafter simply referred to as IPU1).
[0036]
  The IPU 1 performs reading correction (CCD line-to-line correction, main scanning registration adjustment, shading correction, dot correction, vertical stripe correction, and scanner γ conversion) on each of the input RGB image data (R, G, B image data). In addition, the image represented by the RGB image data is an edge (character edge) or medium (within the line width: character) of a binary image (hereinafter simply referred to as a character) with a light and shade of characters, lines, etc., a photograph, etc. Image halftone image (hereinafter simply referred to as a photograph), and further, image area separation for determining whether the image is chromatic or achromatic. Further, it is determined whether or not the RGB image data represents a copy prohibited item such as a banknote or a security (hereinafter simply referred to as banknote recognition).
[0037]
  Then, the IPU 1 adds image area data Fd representing the image area separation result, that is, the determination result, to each 8-bit multi-value RGB image data subjected to the reading correction, and compresses / decompresses them and the color data interface control unit CDIC (hereinafter, referred to as “CDIC”). Simply called CDIC). The IPU 1 informs the system controller 106 that the result of banknote recognition is a copy prohibited object. In response to this notification, the system controller 106 refers to the image processing conditions (for example, full-color reading in the case of a copy instruction) that accompanies the reading of the original image by the color original scanner SCR, and makes a faithful copy. When the copying conditions are set, the scanner γ conversion for image damage that makes the copied image greatly different in color is set in the IPU 1.
[0038]
  CDIC relates to RGB image data, YMCK image data, and image area data Fd incident thereto, data between IPU 1, parallel bus Pb, and second image processing unit IPU2 for intermediate processing (hereinafter simply referred to as IPU2). Transfer of image data and other operations between the system controller 106 that controls the entire digital copying machine shown in FIG. 1 and the process controller 101 that mainly controls the operation of the reading unit 21 and the image forming process control of the color printer PTR. Performs communication related to control. The system controller 106 and the process controller 101 communicate with each other via the parallel bus Pb, CDIC, and serial bus Sb. The CDIC performs data format conversion for the data interface between the parallel bus Pb and the serial bus Sb.
[0039]
  RGB image data with image area data Fd (hereinafter also simply referred to as RGB image data) from the IPU 1 of the color document scanner SCR is transferred or transmitted to the IPU 2 or the parallel bus Pb via the CDIC. The RGB image data sent to the parallel bus Pb is written into the image memory MEM by an image memory access control unit IMAC (hereinafter simply referred to as IMAC). The RGB image data read from the image memory MEM to the parallel bus Pb is output to the FCU during facsimile transmission and to the IPU 2 otherwise.
[0040]
  The IPU 2 converts the RGB image data into 8-bit multi-value YMCK image data, and adds several types of image processing before and after that. The YMCK image data is sent to the parallel bus Pb via the CDIC and stored in the image memory MEM by the IMAC, or directly from the IPU 2 for each of the Y, M, C, and K image data. It is output to the image processing units IPU3y, IPU3m, IPU3c and IPU3k (hereinafter simply expressed as IPU3y, IPU3m, IPU3c and IPU3k).
[0041]
  The IPU 3y, IPU 3m, IPU 3c, and IPU 3k respectively perform Y-, M-, C-, and K-image data for each color printer γ conversion, and then convert the binary Y, M, C, and K image data for print output by gradation processing. The image is converted and output to the image forming unit 105 of the color printer PTR.
[0042]
  As described above, in the CDIC, the RGB image data or YMCK image data is stored in the memory MEM and reused, and the RGB image data is not stored in the memory MEM and converted into YMCK image data by the IPU 2. And jobs to be output to the IPUs 3y, 3m, 3c, 3k and printed out. As an example of storing in the memory MEM, when copying a plurality of originals, the reading unit 21 is operated only once, and the RGB image data of the IPU 1 or YMCK image data converted by the IPU 2 is stored in the memory MEM. There is a method of storing data and reading stored data multiple times. As an example of not using the memory MEM, when only one original is copied, the RGB image data of the IPU 1 can be output to the IPU 2 as it is, and the YMCK image data can be processed by the IPU 3 for printer output. There is no need to write to the memory MEM.
[0043]
  First, when the memory MEM is not used, the image data transferred from the IPU 1 to the CDIC is sent from the CDIC to the IPU 2. The IPU 2 performs intermediate processing (filter processing, background removal, color conversion, ie conversion to YMCK image data, undercolor removal, main scanning scaling, main scanning shift, main scanning mirroring, sub-scanning thinning, mask processing, and RGB image data. (Binarization in the case of monochrome character output).
[0044]
  The IPU 3y, IPU 3m, IPU 3c, and IPU 3k respectively perform output correction (printer γ conversion and gradation processing) on Y, M, C, and K image data. The Y, M, C, and K image data binarized by the gradation processing is given to the laser modulator of the Y, M, C, and K imaging unit in the imaging unit 105 of the laser printer PTR. A binary electrostatic latent image for forming each color image is formed on the photosensitive drums 11Y, 11M, 11C, and 11K. The gradation processing includes density conversion, dither processing, error diffusion processing, and the like, and the area approximation of gradation information is the main processing.
[0045]
  When data is stored in the memory MEM and additional processing is performed at the time of reading from the memory MEM, for example, rotation in the image direction, image composition, etc., the data transferred from the IPU 1 to the CDIC is subjected to primary compression for bus transfer by the CDIC. And then sent to the IMAC via the parallel bus Pb. Here, based on the control of the system controller 106, access control of the image data and the image memory MEM, development of print data (character code / character bit conversion) of an external personal computer PC (hereinafter simply referred to as PC), effective use of the memory Secondary compression of the image data is performed.
[0046]
  The data secondarily compressed by the IMAC is stored in the image memory MEM, and the stored data is read out as necessary. The read data is subjected to secondary decompression (secondary decompression) by IMAC, returned to primary compressed data, and returned from IMAC to CDIC via parallel bus Pb. In the CDIC, primary decompression (primary compression decompression) is performed, and the image data is returned to the IPU 2. In the case of RGB image data, the image data is converted into YMCK image data and compressed in the same manner as described above, and the image memory MEM is compressed. Write to. Alternatively, the YMCK image data of the IPU 2 is immediately sent to the IPUs 3y to 3k, and the image forming unit 105 forms an image.
[0047]
  In the above-described image data flow, the digital copying machine is controlled by the IMAC's image data read / write control with respect to the image memory MEM and the parallel bus Pb and the CDIC bus control between the IPU 1 and IPU 2 and the parallel bus Pb. Realize multiple functions. The FAX transmission function, which is one of the copying functions, reads and corrects RGB image data generated by the reading unit 21 of the color document scanner SCR by the IPU 1 and further converts it to YMCK image data by the IPU 2 as necessary. And transfer to the FCU via the parallel bus Pb. The FCU performs data conversion to a public line communication network PN (hereinafter simply referred to as PN), and transmits the data to the PN as FAX data. In FAX reception, line data from the PN is converted into image data by the FCU, and transferred to the IPU 2 via the parallel bus Pb and CDIC. If the received data is RGB image data, it is converted to YMCK image data by the IPU 2, but if the received data is YMCK image data, no special intermediate processing is performed, and the image data is sent to the IPUs 3y to 3k and an image is formed by the image forming unit 105. To do.
[0048]
  In a situation where a plurality of jobs, for example, a copy function, a FAX transmission / reception function and a printer output function operate in parallel, the system assigns the right to use the color document scanner SCR, color printer PTR, parallel bus Pb and IPU2 to the job. Control is performed by the controller 106 and the process controller 101.
[0049]
  The process controller 101 controls the flow of image data, and the system controller 106 controls the entire system and manages the activation of each resource. The function selection of the digital multi-function color copier is selected and input by the operation board OPB, and processing contents such as a copy function and a FAX function are set. The processing contents of the printer output function in response to the print command of the personal computer PC are set by the print command of the personal computer PC.
[0050]
  Once the RGB image data subjected to the reading correction output from the color document scanner SCR is stored in the memory MEM, various reproductions can be performed by changing processing performed by the IPU 3y, IPU 3m, IPU 3c and IPU 3k, and IPU 2 as required. The image can be confirmed. For example, the atmosphere of the reproduced image can be changed by changing the γ conversion characteristic, changing the density of the reproduced image, or changing the number of lines of the dither matrix. At this time, it is not necessary to read the image again with the color document scanner SCR every time the process is changed, and different processes can be performed again and again on the same data by reading the stored image from the MEM.
[0051]
  FIG. 4A shows an outline of the image data processing system of the color document scanner SCR. The R, G, B image signals generated by the CCD 22 are converted into 8-bit multi-value R, G, B image data by the A / D converter 23 and passed to the IPU 1 through the interface (hereinafter referred to as I / F) 24. Given.
[0052]
  The main part of the IPU 1 is a color image processing unit in which an input / output I / F 31, a buffer memory 32 and a SIMD type processor 33 are combined.
[0053]
  FIG. 5 shows the configuration of each part of the color image processing unit (31 + 32 + 33) of the IPU 1. The input / output I / F 31 includes image ports 0 to 4 for inputting and outputting image data, a mode setting unit (mode designation decoder) for exchanging control data, control signals, or synchronization signals, and an SCI (Computer System Interface). ), Interrupt controller, JTAG, host I / F and clock generator, and timer. Image ports 0 and 1 are dedicated to input of image data, image port 2 is dedicated to input / output of image data, and image ports 3 and 4 are dedicated to output.
[0054]
  The image port can input and output 2-byte data simultaneously in parallel, that is, can input and output two series of image data simultaneously. RGB and YMCK color image data (multi-value gradation) is 8 When the bit, monochrome (monochrome image) reading and / or monochrome (monochrome image) printing is designated (monochrome image mode designation), the read data and print output data (multi-value gradation), that is, monochrome image data are also 8 bits. Therefore, in the monochrome image mode, two image data, that is, image data of two pixels can be input / output simultaneously in parallel. In the color processing mode, two (two colors) of RGB image data of one pixel can be input / output simultaneously in parallel.
[0055]
  One RAM 8K (8K bytes) of the buffer memory 32 has 600 dpi multi-value image data (8 bits: R, G, B, Y, M, C, K image data) of one line parallel to the A3 plate short side. Can be stored as a line buffer and used for input and / or output of image data, or used as an LUT. There are 16 such RAMs 8K. The two RAMs 2K are used as a cyclic shift register that cyclically shifts image data in order to absorb a speed difference in serial data transfer between the image data transfer source and the transfer destination.
[0056]
  These RAMs are connected to any one of the memory switches SW1 to SW3. A memory controller “Memocon” is interposed between the image ports 0 to 4, the memory switches SW 1 to SW 3 and the SIMD type processor 33. The memocon determines on / off of the internal switches of the memory switches SW1 to SW3 according to the input / output mode designation given by the SIMD type processor 33. That is, in the case of the image port / memocon / RAM use mode, the memory switch & use The RAM / SIMD type processor to be connected is set, and parallel and serial conversion and transfer of image data are performed in the designated mode.
[0057]
  The SIMD type processor 33 has an input / output port that can input / output 2 bytes of data simultaneously in parallel with respect to data input / output with the external (memocon). Can be input / output individually. 2-byte input / output and 1-byte input / output can be arbitrarily set.
[0058]
  FIG. 6 shows several examples A to G of parallel / serial conversion of image data that can be performed by the memo controller, and data input / output modes that can be implemented by the IPU 1, IPU 2, and IPU 3 y to IPU 3 k.
[0059]
  The flow of image data in the Af direction (solid arrow) of A is, for example, one line of image data (monochrome image data in monochrome image mode or RGB image data in color image mode) provided by the reading unit 21 in the IPU 1. Color image data) is provided to Memocon A, and each image data on one line is alternately arranged in the order of arrangement in Memocon A to separate the image data sequence of the odd-numbered pixels and the image data sequence of the even-numbered pixels. Then, the odd-numbered pixel image data and the even-numbered pixel image data are simultaneously supplied to the SIMD type processor 33 in parallel, and both image data are simultaneously input in parallel by the processor 33 and simultaneously in parallel with each image data. Then, the data is processed and output to the memo control B. The memo control B alternately outputs the image data from the image data sequence of the odd-numbered pixels and the image data sequence of the even-numbered pixels. By combining the excised by one line, and sends the CDIC, it is of "1 line input separating operation mode."
[0060]
  If necessary, a line buffer memory (RAM 8k) or an LUT (RAM 8k) may be inserted on the input side and output side of the memocon A and memocon B. Further, the memocons A, B and C may indicate the same thing or may be separate bodies. These are the same in other modes described below.
[0061]
  The flow of image data in the Ar direction (broken arrow) of A is, for example, in IPU2 or IPU3y-3k, one line of image data provided by CDIC or IPU2 is an image data sequence of odd-numbered pixels and an image of even-numbered pixels with Memocon B. Separated into two data strings, the odd-numbered pixel image data and the even-numbered pixel image data are simultaneously processed in parallel by the SIMD type processor 33 and output simultaneously in parallel. And is sent to the IPUs 3y to 3k or the image forming unit 105 in the “1-line input separation processing mode”.
[0062]
  The flow of the image data in the Bf direction (solid arrow) of B is, for example, in the IPU 1, an image data sequence of odd-numbered pixels and an image data sequence of even-numbered pixels on one line provided by the reading unit 21 (monochrome image mode). Of monochrome image data or RGB image data in the color image mode) is simultaneously supplied to the SIMD type processor 33 via the memo control A, and the processor 33 performs processing simultaneously and in parallel. “Odd / even pixel separation input mode” in which the image data sequence of the odd-numbered pixels and the image data sequence of the even-numbered pixels processed by the memo control B are combined into one line and sent to the CDIC. "belongs to.
[0063]
  The flow of image data in the Br direction (broken arrows) of B is, for example, in IPU2 or IPU3y-3k, one line of image data provided by CDIC or IPU2 is an image data sequence of odd-numbered pixels and an image of even-numbered pixels with Memocon B. Separated into two data strings, the odd-numbered pixel image data and the even-numbered pixel image data are simultaneously processed in parallel by the SIMD type processor 33 and output simultaneously in parallel. At the same time, the “odd / even pixel separation output mode” is sent to the IPUs 3y to 3k or the image forming unit 105 in parallel.
[0064]
  The flow of image data in the Cf direction (solid arrow) of C is as follows. In the IPU 2, two R and G image data of one line of RGB image data provided by the reading unit 21 are simultaneously converted into SIMD type via the memo control A. The data is supplied to the processor 33, processed simultaneously in parallel by the processor 33 and output simultaneously in parallel, and the processed R image data and G image data are combined in series and sent to the CDIC. "Color parallel processing mode".
[0065]
  The flow of the image data in the Cr direction (broken arrow) of C is as follows. In the IPU 2, a series of image data in which R image data and G image data are alternately arranged is provided by CDIC. Separated into two columns, the SIMD processor 33 processes the R image data and the G image data in parallel at the same time, and outputs them in parallel at the same time. This is the “multiple color separation output mode” that is sent to the CDIC.
[0066]
  The flow of image data in the Df direction (solid arrow) and the Dr direction (broken arrow) of D is the same as the flow of image data in the Cf direction and Cr direction of C, respectively. However, since RGB image data for color reading is triple (three colors), a series of data X is added to D. This data X may be dummy data or image area data Fd described later.
[0067]
  The flow of the image data in the Ef direction of E and the Ff direction of F (both solid arrows) is performed simultaneously in SIMD in the IPU2 through YMCK image data in series Y, M / C, and K via the memocon A. Is provided to the type processor 33, simultaneously processed in parallel by the processor 33 and output simultaneously in parallel, and the processed Y, M / C, K image data after the processing in the memo-con B is serially synthesized and CDIC To the “multiple color parallel processing mode”.
[0068]
  The flow of image data in the Er direction of E and the Fr direction of F (broken arrows) is a series of image data obtained by alternately arranging two-color image data Y, M / C, and K provided by CDIC in IPU2. The memocon B separates the two colors, that is, the two colors, and the SIMD processor 33 processes the two colors at the same time, and the memocon A simultaneously outputs the data to the IPU3y, IPU3m / IPU3c, and IPU3k in parallel. The “multiple color separation output mode” is used.
[0069]
  The flow of image data in the Gf direction (solid arrow) of G is, for example, in the IPU 1, two lines of monochrome image data provided by the reading unit 21 in the monochrome image mode are simultaneously sent to the SIMD processor 33 via the memo controller A in parallel. Then, the processor 33 performs processing in parallel at the same time, and outputs in parallel at the same time. When the memo-con B processes the two lines of image data sequentially in the line memory (RAM 8k), the storage ends. This is a “monochrome multiple line processing mode” that is sent to the CDIC line by line.
[0070]
  The flow of image data in the Gr direction (broken arrow) of G is, for example, in IPU2 or IPU3k, 2 lines of image data given serially by CDIC or IPU2 are stored in line memory (RAM 8k) by memocon B and 2 lines Minutes are simultaneously supplied to the SIMD type processor 33, processed simultaneously in parallel there, and output simultaneously in parallel. The “monochrome multi-line output mode” is sent to 105.
[0071]
  Of course, only a series of input / output and processing is possible for both the memo controller and the SIMD type processor 33. Each memocon is a single memocon B (in the case of BF in FIG. 6) and memocon C (in FIG. 6) in which memocon A and SIMD type processor 33 shown in FIGS. In the case of G), dual input / serial output parallel / serial conversion (hereinafter simply referred to as serial conversion) function and serial input / double output serial / parallel conversion (hereinafter simply referred to as parallel conversion) There is a function.
[0072]
  When the image area data Fd is transferred together with the RGB image data using this function, the R and G image data are sent to the CDIC in a series by serial conversion (Cf output) of double input / serial output at the memo control. However, the B image data is sent to the CDIC in a series by serial conversion (Df output, where X = Fd) of the dual input / serial output together with the image area data Fd. When YMCK image data and image area data Fd are sent from IPU 2 to IPU 3y, IPU 3m, IPU 3c, and IPU 3k, Y, M, C, and K image data respectively in each of the four memocons of IPU 2. And the image area data Fd are serialized by serial conversion (Cf output) of two-line input / serial output, and each is transferred to the IPU 3y, IPU 3m, IPU 3c, and IPU 3k. Each memo controller of IPU 3y, IPU 3m, IPU 3c, and IPU 3k is separated into two series of Y, M, C, and K image data and image area data Fd by parallel conversion of series input / two series output.
[0073]
  In this embodiment, since the image port of the buffer memory device 32 can input and output 2 bytes (16 bits) in parallel, two sets of image data can be input and output simultaneously. Therefore, two sets of image data can be input / output simultaneously between the image port and the SIMD processor 33 via the memo controller. In this case, in any of the cases A to G in FIG. 6, image data is input from the image port to the memo control A, that is, a series of image data in the case A, and a case B to G in the case B. Two sets of image data are input, the image data is divided into two sets by Memocon A, and simultaneously supplied to the SIMD type processor 33. The SIMD type processor processes the processed data simultaneously in parallel. Duplicate output is possible at the same time, and Memocon A (may be a separate Memocon) can be output as it is through the image port. In this case, in FIG. 6, image data is given to the SIMD processor 33 in the direction indicated by the solid line arrow (rightward) from the leftmost end (image port side) in FIG. It is preferable to employ a data flow in which processed image data is output in a leftward direction (left end: image port) indicated by a broken-line arrow.
[0074]
  If the image port is 1 byte (8 bits), or 2 bytes or more, and the data input / output destination is a series of image data input / output specifications, any of A to G in FIG. A series of image data is input from the image port to Memocon B (Memocon C in case G), distributed in duplicate at Memocon B, and simultaneously supplied to SIMD processor 33. SIMD processors are simultaneously executed in parallel. The processed data is simultaneously output in duplicate, and Memocon B (or another Memocon) may be combined in series and output through the image port. In this case, in FIG. 6, image data is given to the SIMD type processor 33 in the direction indicated by the dotted arrows Ar to Gr (leftward) from the rightmost end (image port side) in FIG. A data flow is adopted in which processed image data is output in a rightward direction (right end: image port) indicated by solid line arrows Af to Gf so as to be folded.
[0075]
  That is, the buffer memory device 32 of the present embodiment has a data flow from A to G in FIG. 6 that flows from the leftmost end to the rightmost end in FIG. 6, and conversely, a data flow that flows from the rightmost end to the leftmost end, and SIMD from the leftmost end. The data flow that returns by the type processor 33 and returns to the left end, and the data flow that returns from the right end by the SIMD type processor 33 and returns to the right end can be arbitrarily set or selected. Note that in any of these data flows, the memo controllers A, B, and C may be the same or separate. Further, the line buffer memory (RAM 8k) is inserted on the input side and / or output side of the memo controller as necessary.
[0076]
  FIG. 7A shows an outline of the internal configuration of the SIMD type processor 33 shown in FIG. 5, and FIG. 7B shows an enlarged configuration of a part of one processor element PE shown in FIG. Show. This SIMD type processor 33 has a local memory RAM group divided into processor elements PE, and controls the memory area to be used and the path of the data path by the data bus control in the global processor 38. The input data and the data for output are allocated to the local memory RAM group as a buffer memory, stored in each, and output to the outside by the external I / F 39. The global processor 38 simultaneously gives the same operation instruction to 320 processor element PE groups that include the local memory RAM and perform the same image processing in parallel on multi-valued image data each having 8 bits or more. The calculation result of the processor element PE is stored again in the local memory RAM. And it outputs to memo control through external I / F39.
[0077]
  The processing procedure of the processor element PE, parameters for processing, and the like are exchanged between the program RAM 36 and the data RAM 37. The program and data in the hard disk HDD are downloaded to the program RAM 36 and the data RAM 37 via the IMAC / parallel bus Pb / CDIC / serial bus Sb by the system controller 106. This data transfer is executed by a DMAC (direct memory access controller) in the external I / F 39 in response to a load command given by the system controller 106. This data flow is set by the process controller 101 according to the request of the DMAC.
[0078]
  When the contents of image processing are changed or the processing form (combination of image processing) required by the system is changed, the operation board selects the data set to be transferred from the HDD to the program RAM 36 and the data RAM 37 by the system controller 106. Change according to instructions from OPB or PC. In some cases, the data set transferred to the program RAM 36 and the data RAM 37 of the HDD is rewritten to correspond.
[0079]
  Referring again to FIG. 4A, the image processing function of the color image processing unit (31 + 32 + 33) of the IPU 1 is determined by a reading processing program written in the RAM 36 which is a program memory inside the SIMD type processor 33. The reading processing program sequentially adds CCD line-to-line correction, main scanning registration adjustment, shading correction, dot correction, vertical stripe correction, and scanner γ conversion to the input RGB image data in this order, and further performs vertical stripe correction. The image area is separated based on the image data to generate image area data Fd, which is added to the output RGB image data that has been read in correspondence with the same position on the image and output to the CDIC. In FIG. 34, RGB image data subjected to vertical stripe correction is given.
[0080]
  FIG. 4B shows an outline of the functional configuration of the CDIC. The image data input / output control 121 receives the RGB image data serially converted by the IPU 1 in the mode shown by Cf and Df in FIG. 6 (where X = Fd), and outputs it to the IPU 2. The IPU 2 performs parallel / serial conversion with the memo control, separates each of the RGB image data and the image area data Fd, and performs an intermediate process on the RGB image data to convert it into image data of each recording color of YMCK. When multi-value YMCK image data is generated and image formation (printout) is designated, the B image data of Df in FIG. 6 is replaced with each of the YMCK image data, and X = Fd. Are subjected to parallel / serial conversion and output to IPU 3y to IPU 3k. In the case of designating output to the parallel bus Pb, parallel / serial conversion indicated by Ef and Ff in FIG. 6 is performed and sent to the image data input / output control 122 of the CDIC.
[0081]
  The data received by the image data input / output control 122 is subjected to primary compression of the image data in the data compression unit 123 in order to increase the transfer efficiency on the parallel bus Pb. The compressed image data is converted into parallel data by the data converter 124 and sent to the parallel bus Pb via the parallel data I / F 125. Image data input from the parallel data bus Pb via the parallel data I / F 125 is serially converted by the data converter 124. This data is primarily compressed for bus transfer and is decompressed by the data decompression unit 126. The expanded image data is serial data shown on the memocon B output side of Ef and Ff in FIG. 6 and transferred to the IPU 2 by the image data output control 127. The IPU 2 divides the image data into Y, M, C, and K image data by parallel conversion.
[0082]
  The CDIC has a conversion function of parallel data transferred by the parallel bus Pb and serial data transferred by the serial bus Sb. The system controller 106 transfers data to the parallel bus Pb, and the process controller 101 transfers data to the serial bus Sb. For communication between the two controllers 106 and 101, the data converter 124 and the serial data I / F 129 perform parallel / serial data conversion. The serial data I / F 128 is for IPU2, and serial data transfer is also performed with IPU2.
[0083]
  FIG. 8A shows an outline of the IPU 2. The IPU 2 is a color image processing unit that combines an input / output I / F 41, a buffer memory 42, and a SIMD type processor 43. This is the same configuration as the color image processing unit (31 + 32 + 33) of the IPU 1 shown in FIG. 5, but the data stored in the program RAM and the data RAM of the SIMD type processor 43 is intermediate processed into RGB image data in the IPU 2. (Filtering, background removal, color conversion, that is, conversion to YMCK image data, undercolor removal, main scanning scaling, main scanning shift, main scanning mirroring, sub-scanning thinning, mask processing, and binarization in the case of monochromatic character output ).
[0084]
  FIG. 8B shows an outline of the functional configuration of the IMAC. The parallel data I / F 141 manages input / output of image data to / from the parallel bus Pb, stores / reads image data to / from the MEM, and converts to image data of code data mainly input from an external personal computer PC. Control the deployment of Code data input from the PC is stored in the line buffer 142. That is, the data in the local area is stored, and the code data stored in the line buffer 142 is transmitted to the video control 143 based on the expansion processing command from the system controller 106 input via the system controller I / F 144. Expand to image data.
[0085]
  The developed image data or the image data input from the parallel bus Pb via the parallel data I / F 141 is stored in the MEM. In this case, the data conversion unit 45 selects image data to be stored, the data compression unit 46 performs secondary compression of the data in order to increase the memory use efficiency, and the memory access control unit 147 performs the MEM address. The second-compressed data is stored in the MEM. The image data stored in the MEM is read by controlling the read destination address by the memory access control unit 147 and decompressing the read image data by the data decompression unit 48. The decompressed image data is primarily compressed for transfer on the parel bus Pb, and when it is transferred to the parallel bus Pb, data transfer is performed via the parallel data I / F 141.
[0086]
  The facsimile control unit FCU that performs FAX transmission / reception shown in FIG. 3 converts the image data into a communication format and transmits it to the external line PN, and returns the data from the external line PN to the image data and converts it to the external I / F unit. The image forming unit 105 records and outputs the data via the parallel bus Pb. The FCU includes a FAX image processing, an image memory, a memory control unit, a facsimile control unit, an image compression / decompression, a modem, and a network control device. Regarding the output buffer function of image data, a part of the function is cut off by IMAC and MEM.
[0087]
  In the FAX transmission / reception unit FCU configured as described above, when the transmission of image information is started, the facsimile control unit instructs the memory control unit in the FCU, and sequentially reads the image information stored in the image memory in the FCU. Let it come out. The read image information is restored to the original signal by FAX image processing in the FCU, and density conversion processing and scaling processing are performed and added to the facsimile control unit. The image signal applied to the facsimile control unit is code-compressed by the image compression / decompression unit, modulated by the modem, and then sent to the destination via the network control unit. Then, the image information for which transmission has been completed is deleted from the image memory.
[0088]
  At the time of reception, the received image is temporarily stored in the image memory in the FCU. If the received image can be recorded and output at that time, the received image is recorded and output when reception of one image is completed.
[0089]
  FIG. 9 shows an outline of the IPUs 3y to 3k. The IPUs 3y to 3k have the same configuration and perform output correction (printer γ conversion and gradation processing) with almost the same contents. Therefore, the IPU 3y will be described here. The IPU 3y is a color image processing unit that combines an input / output I / F 51y, a buffer memory 52y, and a SIMD type processor 53y. This is the same configuration as the color image processing unit (31 + 32 + 33) of the IPU 1 shown in FIG. 5, but the data stored in the program RAM and the data RAM of the SIMD type processor 53y is Y for Y image data in the IPU 3y. The printer γ conversion is further converted into binary data for print output by gradation processing. In gradation processing, there are density gradation processing, dither processing, and error diffusion binarization, and one of them is performed according to image processing mode designation or image area data Fd. A diffusion binarization unit 35 (indicated by a two-dot chain line in FIG. 5) is connected to a SIMD processor 53y. In FIG. 9, the error diffusion binarization unit 35 is not shown.
[0090]
  The descriptions of IPU3m, IPU3c, and IPU3k are obtained by replacing Y (y) in the description of IPU3y with M (m), C (c), and K (k), respectively. The IPUs 3y to 3k are serial data including image area data Fd (Y / Fd / Y / Fd / Y / Fd..., M / Fd / M / Fd / M / Fd..., C / Fd / (C / Fd / C / Fd..., M / Fd / M / Fd / M / Fd...), Parallel conversion is performed to separate the YMCK image data and the image area data Fd. For example, the IPU 3y generates a series of serial data (Y / Fd / Y / Fd / Y / Fd...) In which Y image data and image area data Fd are alternately arranged, a series of only Y image data, and an image area. Parallel conversion is performed on a series of only data Fd.
[0091]
  When receiving the image data of two pixels (odd number pixels and even number pixels) in parallel at the same time in two lines of the odd number pixel data row and the even number pixel data row on one line, the IPUs 3y to 3k are taken in at the same time. The image data of 2 pixels is processed simultaneously in parallel. Two series of odd-numbered pixel data rows and even-numbered pixel data rows that are generated by the IPUs 3y to 3k and output to the image forming unit 105 are serially connected to the odd-numbered pixel data and even-numbered pixel data in the memocon. Are combined into an image data string for one line of print output arranged in the line, and then output to the image forming unit 105. In the image forming unit 105, when the odd-numbered pixels and the even-numbered pixels are exposed with separate laser beams or separate scanning lines, two series of data rows of the odd-numbered pixels and the data rows of the even-numbered pixels are used. The image is output to the image forming unit 105 as it is.
[0092]
  In the above example, the CDIC that is the image data control means and the IMAC that is the image memory control means are connected by the parallel bus Pb. Since each independent color document scanner SCR, second color image processing unit IPU2 and color printer PTR are not directly connected to the parallel bus Pb but are connected to the CDIC or IPU2, the use management of the parallel bus Pb is effectively Only done by CDIC and IMAC. Therefore, arbitration and transfer control of the parallel bus Pb is easy and efficient.
[0093]
  FIG. 10 shows a flow of processing for storing an image in the image memory MEM and processing for reading an image from the MEM. (A) shows image data processing or transfer processes Ip1 to Ip14 until the RGB image data generated by the color document scanner SCR or YMCK image data converted by the IPU 2 is written to the MEM, and (b) shows the image data from the MEM. Image data processing or transfer process Op1 until reading and output to the image forming unit 105 of the color printer PTR, or until the RGB image data is read and converted into YMCK image data by the IPU 2 and written again into the MEM. Op13 is shown. The data flow between such buses and units is controlled by the control of the CDIC.
[0094]
  When the RGB image data generated by the color document scanner SCR is written into the MEM, the CDIC selects the route (A) that proceeds from step Ip4 to IP6. When the RGB image data generated by the color document scanner SCR is converted into YMCK image data by the IPU 2 and printed out as it is, the route (B) is selected. When the YMCK image data of the IPU 2 is once written in the MEM, the route (C) from step Ip4 to IP5 is selected.
[0095]
  When reading from the memory MEM, if the read data is YMCK image data, the CDIC selects the route (D) from step Op8 to OP10, reads the RGB image data, converts it to YMCK data, and then writes it again to the MEM. The route (E) going from Step Op8 to IP10 is selected, and when the RGB image data is read and converted into YMCK data and printed out, the route (F) going from Step Op8 to OP9 is selected.
[0096]
  Each pixel distributed on one line in any of the above-described reading correction of RGB image data in IPU1, intermediate processing including conversion to YMCK image data in IPU2, and output correction for printer output in IPU3y to IPU3k In general, there are many image processes in which the same processing is performed on each addressed image data. More specifically, there is a process of switching the processing content corresponding to the difference in the image area data Fd, but even in this case, if the image area data Fd is the same, image processing with the same content is performed.
[0097]
  Accordingly, the color image processing units IPU1 to IPU3 use SIMD type processors 33, 43, 53y, 53m, 53c, and 53k, respectively, and a large number of multi-value gradation color image data by a large number of processor elements PE. By simultaneously performing the same image processing in parallel, the color image processing speed is increased in all of the reading correction, intermediate processing, and output correction.
[0098]
  In this embodiment, the SIMD processors 33, 43, 53Y, 53m, 53c, and 53k each include a total of 320 processor elements PE that process multi-valued image data of 8 bits or more, and 320 (320 Image data) can be processed. For example, the matrix used in the dither processing may be 4 × 4, 6 × 6, 8 × 8, 16 × 16, for example, and can be applied to any of these, and in order to increase the dither processing speed. If processing of a plurality of matrices is performed in parallel, 4, 8 is a divisor of 16, and the processor element PE is an integer multiple of 96 (= 6 × 16) which is the least common multiple of 6 and 16. is required. Therefore, in the present embodiment, 96 × 3 + 32 = 320 processor elements PE are provided by adding 32 offsets. These offsets are used for holding or supplying image data of neighboring pixels when processing the image data of 96 × 3 pixel groups and referring to the image data of neighboring pixels on both outer sides of the pixel group. Used for intermediate or intermediate arithmetic processing.
[0099]
  At the time of filter processing (MTF correction) that applies edge enhancement or smoothing processing to image data of a pixel of interest in a segment of a matrix having a pixel of interest in the center and a plurality of pixels in a two-dimensional direction, and image data of the matrix 96 × 3 processors that substantially calculate and output operation data when performing image data processing of a matrix section, such as edge detection for comparing a distribution with an edge pattern matrix to determine whether a pixel of interest is an image edge 16 processor elements are allocated as offsets on both sides of the element PE (effective element), and image data of neighboring pixels outside both sides of the 96 × 3 pixel group is also given to them, and product-sum operation or pattern It is necessary to make a comparison and supply the result to the effective element. Therefore, depending on the contents of the image processing, 96 × 3 or more processor elements are used for simultaneous parallel image data processing.
[0100]
  In the hard disk HDD (FIG. 3), an image processing program loaded into the program RAM and data RAM (36, 37: FIG. 7 (a)) of the SIMD type processors 33, 43, 53y, 53m, 53c and 53k, and There is data.
[0101]
  When the system controller 106 initializes the system in response to a reset signal generated when the power is turned on and a reset instruction from the operation board OPB or the host PC, each processor 33, 43, 53y, The programs and data addressed to 53m, 53c, and 53k are transferred to the processors 33, 43, 53y, 53m, 53c, and the data transfer using the IMAC, parallel bus Pb, CDIC, serial bus Sb, and process controller 101 described above. Load to 53k program RAM and data RAM.
[0102]
  FIG. 11 shows an overview of system settings of the system controller 106 that responds to an image processing instruction from the operation board OPB or the host PC. The system controller 106 exchanges commands, responses, and status information with the operation board OPB, personal computer PC, FCU, color document scanner SCR, and color printer PTR, and performs image processing from the operation board OPB, personal computer PC, or FCU. When a command (command, instruction) is received (step Sc1), the command is analyzed (step Sc2). That is, the instruction data is decoded. In the following, the word “step” is omitted in parentheses, and step No. Or just the sign.
[0103]
  Then, the system controller 106 determines the operation mode of each component of the system shown in FIG. 3 according to the command analysis result, designates the operation mode to them (Sc3), and transfers the image processing data corresponding to the operation mode (see FIG. 3). Sc4). Each component of the system sets the received operation mode and processing data in itself, and notifies the system controller 106 of the ready when it can be executed. If all the elements related to execution of the designated operation mode are ready, the system controller 106 instructs each element of the system to start image processing (Sc5, Sc6).
[0104]
  FIG. 12 shows the contents of the initial setting of the SIMD processor 33 of the IPU 1 in response to the system controller 106 instructing the initial setting. The system controller 106 gives the HDD transfer source address and download instruction to the SIMD processor 33 by an initial setting command. In response to this, the DMAC (direct memory access controller) of the external I / F 39 of the SIMD type processor 33 writes the program data of the designated address into the program RAM 36 and the reference data into the data RAM 37 (Sd1).
[0105]
  When this data transfer is completed, the SIMD processor 33 sets the buffer memory 32 (Sd2), generates the shading correction LUT (Sd3), and generates the dot correction LUT according to the initial setting program of the program RAM 36 in response to the ready notification of the DMAC. (Sd4), RUT generation for each R, G & B γ conversion (Sd5), LUT generation for IDU γ conversion (Sd6), and various LUTs used for image area separation (Sd7), and when these are completed, ready is notified To do.
[0106]
  In the setting of the buffer memory 32 (Sd2), the 16 RAMs 8K and the 2 RAMs 2K shown in FIG. 5 are allocated for use according to the memory allocation in the initial setting program. The main application types are the input line buffer that temporarily holds the input image data, the output line buffer that temporarily holds the image data for output, the intermediate line buffer that temporarily holds the image data being processed, the LUT, and the data delay or synchronization Delay memory. Such a setting is realized by outputting, to the corresponding memocon, the memocon setting information addressed to each of the 16 memocons shown in FIG. .
[0107]
  Note that the initial information of the memo control setting information is read from the data RAM 37 and written in the memo control setting register by the SIMD type processor 33 in accordance with the initial setting program. Therefore, the memo control setting information is rewritten. For example, for the RAM 8K designated as the input line buffer (memo memory for controlling data read / write), “write” is designated at the timing of accepting the input image data, but the acceptance (writing) is completed. Then, “read” is designated at the timing when the image data is read for every predetermined number and subjected to image processing.
[0108]
  FIG. 13A shows a division of memo control setting information on the memo control setting register, and FIG. 13B shows main items of the setting information. One of 16 RAMs 8K shown in FIG. 1 is designated as the line buffer for inputting image data and the input image data is written in it, as shown in FIG. The setting information given to the memo control 1 that controls reading and writing of 1 designates “line buffer” and “write”. The area from the start address to the end address is the write designation area. This No. When reading is performed after the input image data is written in 1, the setting information designates reading as shown in FIG. 13 (d). The setting information shown in FIG. 13 (e) includes No. 16 in the 16 RAMs 8K. One area 15 is used as a line buffer for input / output of image data, and the other area is used as an LUT. Using this setting information, each of the RAMs shown in FIG. 5 can be used as a line buffer or an LUT, and one RAM can be simultaneously set as a line buffer and an LUT. However, access to the line buffer and LUT is time division. In other words, access is made at different timings.
[0109]
  FIG. 14 shows several types of usage of one RAM 8K. (A) shows a case where one RAM 8K (byte) is used as a line buffer memory (input buffer, intermediate buffer or output buffer) for one line of image data having a short side length of A3 size as one line. A data read / write area on one RAM 8K is shown. (B) shows a mode of using as a line buffer memory for two lines of image data having a short side length of A4 size as one line, and (c) shows a line buffer memory for one line for A3 size and one LUT. (D) shows an embodiment used as one LUT, and (e) shows an embodiment used as seven LUTs. In the aspect (e), for example, seven types of LUTs for single color components are prepared, and one type is selected in real time according to the image area separation result or according to the characteristic designation from the operation board OPB or the personal computer PC. It is suitable when selecting and using.
[0110]
  (F) is a mode in which a part of the RAM 8K is used as a memory for temporarily storing the LUT read from the HDD or the LUT generated by the SIMD type processor 33. For example, three LUTs 10, LUT11, and LUT12 for γ conversion of RGB image data are generated and stored by the SIMD type processor 33, and when performing γ conversion of RGB image data, the LUT 10 for R image data is The data is written in the other two RAMs 8K, and these are used to simultaneously γ-convert the image data of the odd-numbered pixel R image data and the even-numbered pixel R image data in parallel. The same applies to G image data and B image data.
[0111]
  Reference is again made to FIG. The access mode “(1/2) odd-numbered synchronous read / (1/2) even-numbered synchronous read” designates parallel / serial conversion or a combination of two series, for example, R image data and B image data. In the case of a memo controller that collects a series of data, a first RAM 8K (or one area of one RAM) that outputs R image data and a second RAM 8K that outputs B image data (or the above-mentioned one RAM) (1/2) odd-numbered synchronous reading and (1/2) even-numbered synchronous reading are designated for each of the other areas. The memocon reads image data from the first RAM 8K when the data read synchronization signal (pulse) is an odd number, and from the second RAM 8K when the data number is an even number.
[0112]
  The dot correction LUT generation shown in FIG. 12 (Sd4), R, G & B γ conversion LUT generation (Sd5), IDU γ conversion LUT generation (Sd6), and various LUT generation (Sd7) used in image area separation are as follows. In the “system control” SCL shown in FIG. 11, when an instruction to change or adjust the LUT is issued from the operation board OPB or the personal computer PC, the SIMD processor 33 is activated in response to an instruction from the system controller 106 corresponding thereto. Then, the corresponding LUT in the RAM 8K of the buffer memory device 32 is rewritten to the LUT corresponding to the characteristic designation data included in the instruction.
[0113]
  Here, the contents of the LUT generation for each R, G & B γ conversion performed in IPU1 (Sd5) and the generation of the LUT for each Y, M, C & K γ conversion performed in IPU3y, IPU3m, IPU3c, and IPU3 will be described. To do.
[0114]
  In the reading correction program addressed to the IPU 1 of the hard disk device HDD, the storage address of the scanner γ conversion program (for example, S1R, S1G & S1B in the first group: FIG. 15) is inserted at the γ conversion position. When the correction program is transferred to the program RAM 36 of the processor 33 of the IPU 1, the R, G and B scanner γ conversion programs of the storage address are replaced with the storage address and transferred. Even after transfer to the program RAM 36, the programs in the program RAM 36 are assigned to the system controller 106 by a change operation (rewrite instruction input) from the operation board OPB or the host PC, and belong to other groups shown in FIG. (For example, S3R, S3G, S3B) can be rewritten.
[0115]
  Similarly, the Y, M, C, and K output correction programs addressed to the IPU 3y, IPU 3m, IPU 3c, and IPU 3k are also stored in the Y, M, C, and K printer γ conversion program storage addresses (for example, A first group of P1Y, P1M, P1C and P1K: FIG. 15) is inserted, Y, M, C and K output correction programs from the HDD, IPU3y, IPU3m, IPU3c and IPU3k processors 53y, 53m, 53c and When transferring to each 53k program RAM, the printer γ conversion program of the storage address is replaced with the storage address and transferred. Even after transfer to each program RAM, it can be rewritten to another group shown in FIG. 15 (for example, P3Y, P3M, P3C, P3K) by a change operation from the operation board OPB or the host PC. Here, generation of an LUT for γ conversion by an interpolation calculation program will be described.
[0116]
  See FIG. In this embodiment, input image data x (horizontal axis values: R, G) is obtained by γ conversion of the RGB image data output by the reading unit 21 in the IPU 1 and γ conversion of the YMCK image data output by the IPU 2 in the IPU 3y to IPU 3k. , B / Y, M, C, K image data) is converted into output image data y (vertical axis) so as to have a substantially S-shaped curve conversion characteristic (characteristic curves vary) indicated by a two-dot chain line in FIG. Value (not yellow y) (gradation characteristic conversion), but the numerical value range 0 to 255 that can be represented by 8-bit input image data x is divided into a plurality of smaller m = 8 sections, Each section of the conversion characteristic curve was approximated by a straight line indicated by a solid line in FIG. Each gradation data representing 0 to 255 is γ-converted by linear approximation interpolation using these mathematical formulas. The applicable sections of these interpolation calculation expressions are as follows.
[0117]
  Section No. i Boundary value arithmetic expression (parameters ai, bi)
      1 x1 y1 = a1 · x + b1
      2 x2 y2 = a2 · x + b2
      3 x3 y3 = a3 · x + b3
      4 x4 y4 = a4 · x + b4
      5 x5 y5 = a5 · x + b5
      6 x6 y6 = a6 · x + b6
      7 x7 y7 = a7 · x + b7
      8 (x8: unnecessary) y8 = a8 · x + b8
  Note that the arithmetic expressions of both sections are connected at the boundary between adjacent sections. For example, when x = x1 is given to y1 = a1 · x + b1 and y2 = a2 · x + b2, the value of y1 = the value of y2, that is,
        y1 = a1 * x1 + b1 = a2 * 1 + b2 = y2
It is.
[0118]
  The boundary value is xi (x1 to x8), and the interpolation calculation parameters are the slope ai (a1 to a8) and the y intercept (offset) bi (b1 to b8).
[0119]
  Each conversion program on the list shown in FIG. 15 calculates γ-converted output gradation data y corresponding to the input gradation data x according to these arithmetic expressions. It should be noted that many conversion programs on the list shown in FIG. 15 have different linear expressions (parameters for defining) or sections (boundary values for defining). That is, the γ conversion characteristics (tone conversion characteristics) are different.
[0120]
  FIG. 16 shows n + 1 (n) by the global processor (38) based on the conversion program of the program RAM (36) of the SIMD type processors 33, 53y, 53m, 53c, and 53k of the IPU1, IPU3y, IPU3m, IPU3c, and IPU3k. = 255), the contents of the simultaneous and parallel γ conversion of the gradation data representing each value of 0 to 255 are shown. In this embodiment, the gradation data is multi-value gradation data having an 8-bit configuration.
[0121]
  The global processor (38) first initializes all the processor elements PE0 to PEn, and then converts each of the n + 1 pieces of gradation data D0 to Dn representing the values of 0 to 255 into 320 pieces of n + 1 processors. Set in each input register of the elements PE0 to PEn (step γp1). In the following, the word “step” is abbreviated in parentheses, and step no. Write only the symbol.
[0122]
  Next, the global processor (38) gives the interpolation calculation parameters am (a8) and bm (b8) of the last section i = m = 8 to all the processor elements PE0 to PEn, and each processor element sets their own parameters. Write to the register (γp2).
[0123]
  Next, the global processor (38) sets the calculation target section i to the first section (i = 1) (γp3), gives the boundary value xi of the section i to the processor elements PE0 to PEn, and instructs comparison. . PE0 to PEn check whether the set gradation data Dj (each of D0 to Dn) is the i-th section (xi <Dj: NO, ie, xi ≧ Dj), and the i-th section If it is, “1” is set in its own flag (γp4). Next, parameters A = ai and B = bi defining the calculation formula for the i-th section are given to the processor elements PE0 to PEn. Here, the processor element which set “1” for the first time in its own flag (switched the flag from “0” to “1”) writes parameters A = ai and B = bi in its own parameter setting register. (Γp5).
[0124]
  Similarly, the above-described processing in which the first section is set as the calculation target section updates the calculation target section i sequentially to the second (i = 2), the third (i = 3),. = Repeatedly execute until 7 interval (i = 7) (γp6 / γp7 / γp4 / γp5 / γp6). However, a processor element that has already set a flag “1” and has not switched from “0” to “1” newly writes and updates parameters A = ai and B = bi to its own parameter setting register. Do not do.
[0125]
  When the m-1 = 7th section is executed, all of the processor elements PE0 to PEn set their own parameters A = ai and B = bi to the section to which the gradation data set in the processor element PE0 to PEn belongs. It is held in the parameter setting register.
[0126]
  Here, the global processor gives the processor element PE0 to PEn an operation instruction of Y = A · x + B, where x is the set gradation data. The processor elements PE0 to PEn calculate Y = A · x + B using A = ai and B = bi held in the parameter setting register, and represent the calculated Y, that is, γ-converted gradation data, The γ conversion data is stored in its own output register (γp8). The global processor (38) writes the output register data (AD0 to ADn: calculated Y) of the processor elements PE0 to PEn to the output data area of the RAM of the processor element, and uses the memocon setting register ((a) of FIG. 13). A memo controller (FIG. 5) that designates reading and writing of the γ conversion LUT is instructed to read the data there. The memo controller writes the γ conversion data (γ conversion table) to the gradation data of each value from 0 to 255 in the designated area of the RAM 8K designated in the LUT by the setting information (γp9).
[0127]
  In the above-described interpolation operation of the first embodiment, a set of gradation data groups D0 to Dn for the processor element PE group is set; the boundary value of the i section is simultaneously supplied to the processor element group and the interpolation of the section i is subsequently performed. The conversion of the gradation data groups D0 to Dn is completed by the simultaneous supply of calculation parameters, the execution of the sections i = 1 to m, that is, m repetitions; and the designation and calculation instruction of one calculation expression. .
[0128]
  The processor element group has only one calculation operation, and the conversion speed is fast. The number of data processing steps of the image processor (33) in the case where 256 of 320 processor elements (PE) are used and γ conversion is simultaneously performed on a total of 256 gradation data representing each value of 0 to 255. There are few. Compared to the conventional case where the γ conversion of gradation data is repeated 256 times, the number of steps is greatly reduced, and the generation speed of the γ conversion LUT is high.
[0129]
  The above-mentioned γ conversion is performed by the scanner γ conversion program in the reading correction program written in the program RAM (36) of the SIMD processor 33 of the IPU 1 or the output written in the program RAM of the SIMD processor of the IPUs 3y to 3k. The printer γ conversion program in the correction program can be changed by rewriting it with another one having a different γ conversion characteristic in the hard disk HDD.
[0130]
  The γ conversion table written in the RAM 8K in step γp9 in FIG. 16 described above is obtained by writing one conversion table γLUT-R in the two RAMs 8K as shown in FIG. 18 when performing γ conversion. One is assigned to γ conversion of image data of odd pixels, and the other is assigned to γ conversion of image data of even pixels. FIG. 18 shows a data flow at the time of γ conversion of R image data. The same applies to the γ conversion of G image data and B image data. In FIG. 18, a series of odd-numbered pixel R image data and a series of even-numbered pixel R image data on the same line as the series of R-image data of adjacent pixels on the image are simultaneously 1 Given to Memocon via one image port. The memocon uses the LUT access address obtained by adding the writing start end address of the first γLUT-R to the R image data of the odd-numbered pixels as a read address to the first RAM 8k storing the first γLUT-R. In addition, the LUT access address obtained by adding the write start end address of the second γLUT-R to the R image data of the even-numbered pixel is simultaneously read as a read address in the second RAM 8k storing the second γLUT-R. The first γ-converted data (first γLUT-R data) and the second γ-converted data (second γLUT-R data) at those addresses are read and the read data are simultaneously read In parallel, the data is output to the SIMD type processor 33. Instead of directly providing the input image data from the image port to the memo control, the input image data can be temporarily stored in the RAM 8k and then provided to the memo control. Further, instead of reading out the γ-converted data from the LUT and directly outputting it to the SIMD type processor 33, it is also possible to store it in the RAM 8k and then output it.
[0131]
  As described above, in the generation of the γ conversion table (FIG. 16), the boundary value is changed from the minimum value to the larger one in order and compared with the gradation data, but the boundary value is changed from the maximum value to the smaller one in order. There may be a mode of changing and comparing with gradation data. For example, in step γp2 in FIG. 16, A = a1 and B = b1 are written to the parameter setting register, i is set to 8 in step γp3, and x (i−1) is assigned to elements PE0 to PEn in step γp4. It is checked whether it is in the i-th section (Dj ≧ x (i−1)). In step γp6, it is checked whether i is 1. If it is 1, the process proceeds to step γp8. If it is not 1, i is decremented by 1 in step γp7.
[0132]
  FIG. 19 shows an outline of image area separation performed by the global processor 33 using the processor element PE and the buffer memory 32 based on the reading processing program written in the program RAM 36 inside the SIMD type processor 33 of the IPU 1. The image area separation shown here is based on RGB image data and determines whether the image area to which the data is addressed is a character area (character or line drawing area) or a picture area (photo or picture area & not a character area). A determination is made and a C / P signal representing a character edge region, a character middle region or a pattern region and a B / C signal representing a chromatic region / achromatic region are generated. Here, “character” means inside the character edge, that is, within the character line width. In this embodiment, the combination of the C / P signal and the B / C signal and the 3-bit signal is the image area data Fd;
  C / P signal: 2-bit signal, 2 bits “11” meaning 3
              2 bits "01" indicating the character edge area, meaning 1
              2 bits “00”, which indicates an area within a character and means 0
              Indicates the pattern area;
  B / C signal: 1-bit signal, H (“1”) indicates an achromatic region,
              L (“0”) indicates a chromatic area.
[0133]
  The image area separation is roughly divided into an MTF correction 321, an edge separation 322, a white background separation 323, a halftone separation 324, a hue division 325 a, a color judgment 325 b, and an overall judgment 326. Here, the image reading density by the reading unit 21 of the scanner SCR is about 600 dpi.
[0134]
  The MTF correction 321 corrects the G image data generated by the reading unit 21 mainly for extracting the edge of the character. Here, since the data read by the reading unit 21 may be blurred due to the performance of a lens or the like, an edge enhancement filter is applied. In this embodiment, the pixel matrix of the MTF correction 321 is set such that the number of pixels in the main scanning direction x is 7 × the number of pixels in the sub-scanning direction y is 5, and the weighting coefficients a1 to a7 and b1 to b7 are addressed to each pixel on the pixel matrix. , C1 to c7, d1 to d7, and e1 to e7 are in the data RAM 37. The coefficient of the center pixel of the third row c1 to c7 of the coefficient matrix, that is, the pixel of interest is c4. The sum (product sum value) of products (total 7 × 5 = 35) obtained by multiplying each coefficient of the coefficient matrix by the value represented by the image data of the pixel addressed to the coefficient is the pixel of interest (pixel addressed to c4). The image data values processed by the MTF correction 321 are given to the edge separation 322, the white background separation 323 and the halftone separation 323. Here, the pixel of interest is a pixel that is currently processed, and it is updated to pixels that are sequentially different in the x direction and in the y direction.
[0135]
  -Edge separation 322-
  In the character region, there are many high-level density pixels and low-level density pixels (hereinafter referred to as black pixels and white pixels), and these black pixels and white pixels are continuous in the edge portion. The edge separation 322 detects a character edge based on the continuity of each of such black pixels and white pixels. First, in the ternarization, the MTF-corrected image data is ternarized using two kinds of threshold values TH1 and TH2. For example, when the image data represents 256 gradations (0 = white) from 0 to 255, the threshold values TH1 and TH2 are set to TH1 = 20 and TH2 = 80, for example. In the ternarization, when the input data <TH1, the pixel to which the data is addressed is represented as a white pixel, when TH1 ≦ input data <TH2, the halftone pixel, and when TH2 ≦ input data, the black pixel is represented. Input data is converted into ternary data having a 2-bit configuration. Then, the binarized data is binarized to obtain image information bits (“1”: presence of image component, “0”: no image component) indicating the presence / absence of an image component, and black based on this binary data. A location where pixels are continuous and a location where white pixels are continuous are detected by pattern matching.
[0136]
  A typical example of a reference pattern used for black pixel continuous detection is a 3 × 3 pixel matrix BPa to BPd shown in FIG. 21A, and each of them includes a vertical (y) that includes at least a target pixel (center pixel). , Horizontal (x) and image information bits of three pixels arranged in the diagonal direction are “1”, and all other patterns satisfying this condition (any one of the blank cells of BPa to BPd may be “1”) Is also a reference pattern used for black pixel continuous detection. Hereinafter, these reference pattern groups are referred to as black pixel continuous detection reference pattern groups.
[0137]
  A typical example of a reference pattern used for white pixel continuous detection is a 3 × 3 pixel matrix WPa to WPd shown in FIG. 21A, and each of them includes a vertical (y), a horizontal (x), and at least a pixel of interest. The image information bits of the three pixels arranged in the diagonal direction are “0”, and all the other patterns that satisfy this condition (any one of the blank grids of WPa to WPd may be “0”) also detect white pixels continuously. This is a reference pattern used for. Hereinafter, these reference pattern groups are referred to as white pixel continuous detection reference pattern groups.
[0138]
  In the reference pattern shown in FIG. 21A, the black circle means that the image information bit of the pixel where the pixel is present is “1” (there is an image component), and the white circle indicates the image information bit of the pixel where the pixel is present. Means “0” (no image component). The pixel at the center of the 3 × 3 pixel matrix is the target pixel.
[0139]
  In pattern matching judgment for black pixel continuation / white pixel continuation, black pixel continuation and white pixel continuation are contrary to each other. Therefore, first, image information of a 3 × 3 pixel matrix with the pixel of interest at the center in black pixel continuation detection It is checked whether the bit group (a to i in FIG. 21B) matches any of the black pixel continuous detection reference pattern groups by switching the reference pattern. If there is a matching reference pattern, Information (11: black continuous pixels) indicating that the pixel is “black pixel continuous” is given to the target pixel. If it does not match any reference pattern in the black pixel continuous detection reference pattern group, this time, it checks whether it matches any of the white pixel continuous detection reference pattern group, and matches the reference pattern. If there is, information (01: white continuous pixels) indicating that the pixel is “continuous white pixels” is given to the target pixel. If it does not match any reference pattern in the white pixel continuous detection reference pattern group, information (00: mismatch) indicating that neither black pixel continuous nor white pixel continuous is present.
[0140]
  In order to perform such pattern matching, the data RAM 37 includes a reference data set group of the above-described black pixel continuous detection reference pattern group and white pixel continuous detection reference pattern group. One reference data set is a 2-byte data in which one reference pattern image information bit group (9 bits) is serially arranged. For example, it is 2-byte data in the form shown in FIG. 21C, and here, the image information bit groups a to i are of a reference pattern (for example, BPa).
[0141]
  When the target matrix is 5 × 5 size as shown in (c) of FIG. 21, the target data set is 4-byte data as shown in (e) of FIG.
[0142]
  FIG. 20 shows the determination performed by the SIMD type processor 33 whether the pixel matrix centered at each pixel on one line matches the reference matrix, that is, the contents of the pattern matching PMP.
[0143]
  For example, when pattern matching is performed on the 3 × 3 matrix pattern shown in FIG. 21A, the SIMD processor 33 sets an input line buffer for storing binary data of three lines or more in the memory device 32, and Determination data (“11” indicating whether or not the image information bit group of the 3 × 3 pixel matrix centered on each pixel of the middle line among the three lines matches the reference pattern (reference data set). ": Black continuous pixels," 01 ": white continuous pixels," 00 ": not applicable), a line buffer for storing determination results is set.
[0144]
  Referring to FIG. 20, the global processor 38 of the SIMD processor 33 has b references in each RAM (shown in FIG. 7B) of A (eg, 320) processor elements. A reference data set group (for example, the reference pattern group for continuous detection of black pixels and the reference pattern group for continuous detection of white pixels; b reference data sets) of the pattern (reference matrix) group is written (pm1).
[0145]
  Next, the SIMD type processor 33 instructs the memocon of the memory device 32 to transfer the A target data set (pm2), and in response to this, the memocon is on the center line (target line) of the input line buffer. The image information bit group of each pixel matrix centered on each of the series of A target pixels is converted into a c-byte target data set in a manner shown in FIG. Transfer to processor 33. The global processor 38 of the SIMD type processor 33 writes data into each RAM of each of the A processor elements in order from the first target data set (pm3).
[0146]
  For example, the memo controller in the buffer memory 32 writes the image information bits obtained by binarizing the ternary data into the three RAMs 8K allocated to the line buffer memory, and the result is shown in FIG. Thus, the image information bit group addressed to the 3 × 3 pixel matrix composed of the pixels a to i in which one pixel is distributed in each of the two-dimensional x and y around the pixel of interest e is read out as shown in FIG. As shown in c), it is converted into a target data set of 1 column and 2 bytes and given to the SIMD type processor 33. This is performed A times by shifting the pixel of interest on the same line one pixel at a time. The global processor 38 of the SIMD type processor 33 writes each target data set to the RAM of each processor element (pm3).
[0147]
  Then, according to the instruction of the global processor 38, each processor element simultaneously performs the comparison operation SIMDop in parallel. In this comparison operation SIMDop, the processor element first writes “00” (not applicable: mismatch) in its output register (pm4). Next, it is checked for each corresponding byte whether the i-th type (i.sup.th) reference data set stored in the internal RAM matches the target data set (pm5, pm6). "11" (for black pixel continuous detection reference pattern group) or "01" (for white pixel continuous detection reference pattern group) is updated and written to the output register (pm7). Don't put it. Such determination of coincidence / non-coincidence is repeatedly performed by switching the reference data set (reference pattern) (pm8, pm9). When all the reference data set groups in the RAM 37 are collated with the target data set as described above, the comparison operation SIMDop is terminated.
[0148]
  When the processing is completed, the data in the output register of each processor element is the pixel matrix image represented by the target data set stored in the RAM of the processor element, and the reference pattern (black pixel continuous detection) represented by the reference data set. Or a reference pattern for continuous detection of white pixels).
[0149]
  The global processor 38 of the SIMD type processor 33 transfers the data of the output registers of the A processor elements to the determination result storage line buffer via the memo control (pm10). Then, it is checked whether the above pattern matching is completed for all pixels on one line (pm11). If not, the next pixel group of interest on the same line is set as a pattern comparison reference pixel, and The pattern matching after step pm3 is similarly executed.
[0150]
  In the pattern matching described above, one processor element PE corresponds to the reference pattern group for all image information bit groups (2 byte data) of one pixel matrix C × D = E (3 × 3 = 9 pixels in the above example). It is determined whether it is the same as any reference data set in the reference data set group, and a determination result is obtained. Since this determination is based on comparison of byte data, the determination speed is fast. Furthermore, since A processor elements perform this simultaneously in parallel, pattern matching of A pixel matrices is completed at the same time, and pattern matching determination is fast.
[0151]
  FIG. 22 shows the data processing FED for determining the edge / non-edge region of the memo controller. FIG. 23A shows an internal feedback loop of the memo control at the time of the edge / non-edge region determination. Next, referring to (a) of FIG. 23, the global processor 38 of the SIMD processor 33 reads the edge / non-edge area determination LUT of the data RAM after the black pixel and white pixel continuous detection described above and reads the memo control. To the RAM 8K. Here, the RAM 8K is expressed as RAM 8K (LUT) for edge / non-edge determination. The memocon receives the LUT address Lad (input data to be converted) given by the SIMD type processor 33 at the input register 75 and gives it to the address line of the RAM 8K (LUT) via the multiplexer 76, the output register 72 and the memory SW. The LUT storage data (conversion output data) provided by the type processor 33 is received by the input / output register 74 and applied to the data line of the RAM 8K (LUT) via the input / output register 73 and the memory SW. That is, the data is written in the RAM 8K (LUT).
[0152]
  The global processor 38 uses the RAM 8K (LUT) and the memo controller to determine whether there is a black continuous pixel or a white continuous pixel in the vicinity of the target pixel for the detection result of the black pixel continuous detection and the white pixel continuous detection described above. By examining, it is determined whether the target pixel is in the edge region or the non-edge region.
[0153]
  More specifically, in this embodiment, when a block of a 5 × 5 pixel matrix includes one or more continuous black pixels and one continuous white pixel, the block is defined as an edge region. Judgment is made to give information about the “edge region” to the target pixel that is the central pixel of the matrix, and if not, the block is judged to be a non-edge region and information about the “non-edge region” is given to the target pixel .
[0154]
  Refer to FIG. In accordance with the instruction from the SIMD type processor 33, the memocon stores an LUT (RAM 8K (LUT)) and a line memory (RAM 8K (LINE)) of 5 lines or more in the buffer memory 32 as shown in FIG. (Fe1) The detection results of the above-described black pixel continuous / white pixel continuous detection for five lines or more are accumulated, the third line in the middle of the five lines is set as the target line, and each pixel on the line is determined. The pixel of interest is sequentially set (fe2).
[0155]
  The memocon supplies the above detection result of the 5 × 5 pixel matrix centered on the target pixel to the address line of the line memory RAM 8K (LINE) via the multiplexer 77, the output register 72, and the memory SW. Thus, when one or more black continuous pixels and one or more white continuous pixels exist on the 5 × 5 pixel matrix sequentially in units of 5 pixel columns via the input / output register 71, the target pixel is set as an edge region. And edge / non-edge information eds is generated (fe3 to fe6).
[0156]
  The edge / non-edge information eds of the pixel of interest, the pixel preceding by one pixel in the main scanning x direction, that is, the determined edge / non-edge information Edp (data of the memocon input / output register 74) of the preceding pixel, and the image of the pixel of interest The processing data, that is, the detection result Tpd of the black pixel continuous / white pixel continuous detection is given as an LUT access address to the RAM 8K (LUT) via the multiplexers 75 and 76 and the output register 72 (fe7). Then, the determined edge / non-edge information Eds corresponding to the combination of the three is read from the edge determination RAM 8K (LUT) (fe8), written in the output register 74 in the memo controller, and output to the SIMD processor 33 ( fe9, fe10). Then, it is checked whether the above-mentioned edge / non-edge determination has been completed for all pixels on one line (fe11). If not, the target pixel is moved to the next pixel on the same line, and The pattern comparison after step fe3 is similarly executed.
[0157]
  The determined edge / non-edge information Edp of the preceding pixel is feedback information. The outline of the edge / non-edge determination of RAM 8K (LUT) is that the edge / non-edge information eds of the target pixel is the edge (the black continuous pixel and the white continuous pixel are respectively on the 5 × 5 pixel matrix centered on the target pixel. 1 or more), the determined edge / non-edge information Eds is an edge, and if eds is a non-edge, the determined edge / non-edge information Edp of the preceding pixel is an edge, and the continuous black pixel of the target pixel / When the detection result Tpd of the white pixel continuous detection is “black pixel continuous” or “white pixel continuous”, the determined edge / non-edge information Eds is set as an edge, and when Tpd is not any, the determined edge / non-edge information Eds is not set. It is an edge. When the determined edge / non-edge information Eds of the preceding pixel is a non-edge, the determined edge / non-edge information Eds is set as an edge only when Tpd is “black pixel continuous”, and is set as a non-edge in other cases.
[0158]
  Refer to feedback of the determined edge / non-edge information Edp of the preceding pixel and whether the detection result Tpd of the black pixel continuous / white pixel continuous detection of the target pixel is “black pixel continuous” or “white pixel continuous”. By adding to the edge / non-edge determination LUT, vibration frequently occurring at a short pitch between switching between the edge / non-edge is suppressed, and the reliability of edge / non-edge detection is high.
[0159]
  Note that the feedback LUT processing using the multiplexers 75 and 76 in the memocon is the LUT access based on the data fetched from several RAMs 8K (LINE) into the memocon as shown in FIG. In addition to generating data (input data) and accessing the LUT, it is also possible to generate one or more sets of data from the SIMD type processor 33 to the memo controller and generate LUT access data.
[0160]
  FIG. 23 (b) shows a data feedback loop inside the memo controller in a form in which this mode is applied to the above-described edge / non-edge determination. In this aspect, from five RAMs 8K (LINE) (not shown in FIG. 23B), another memo controller detects the continuous detection of black pixels / white pixels of a 5 × 5 pixel matrix from the SIMD type processor 33. When the processor 33 gives one or more black continuous pixels and one or more white continuous pixels on the 5 × 5 pixel matrix, the target pixel is determined to be an edge region, and this edge / non-edge information of the target pixel eds and the detection result Tpd of the black pixel continuous / white pixel continuous detection of the pixel of interest are given to the memo control shown in FIG. 23B, and this memo control outputs these to the output register 72 via the multiplexer 76. Write together with the definite edge / non-edge information Edp of the preceding pixel and output to RAM 8K (LUT). By using this feedback LUT process, the state transition processing capability of the SIMD type processor 33 is improved.
[0161]
  -Isolated point removal (Fig. 19)-
  Furthermore, since there are continuous character edges, the isolated edges are corrected to non-edge regions by isolated point removal. Then, edge information “1” (edge region) is given to the pixel determined as the edge region, and edge information “0” (non-edge region) is given to the pixel determined as the non-edge region.
[0162]
  -White background separation 323 (Fig. 19)-
  In the white background separation 323, RGB white extraction, white determination, white pattern matching, black determination, black pattern matching, white correction, and the like are performed. In the pattern matching, the pattern matrix data described above is arranged in one row with a memo controller, and simultaneously compared with the reference pattern serial data with a plurality of processor elements PE. Determination).
[0163]
  In the RGB white background detection, the white background separation operation is activated by detecting the white background area from the R, G, B image data. That is, the white background separation process is started. Specifically, if all of the R, G, B image data of the 3 × 3 pixel matrix is smaller than the threshold thwss, the target pixel (the central pixel of the 3 × 3 pixel matrix) is determined to be a white region and white pattern matching is performed. Activate. This is to detect whether there is a white pixel region of a certain extent.
[0164]
  Next, virtual white pixels are determined so that the yellow background is not a white background. Here, if B image data equal to or less than the threshold thwc exists somewhere in the 5 × 5 pixel matrix centered on the target pixel, the target pixel is set as a virtual white pixel. In particular, what is seen only with B image data is that white determination described later makes a determination based only on G image data, and therefore Y that cannot be detected with G image data is detected with B image data.
[0165]
  Next, in the valley white pixel detection, valley white pixels in a small white area that cannot be detected by the above-described RGB white background detection are detected based on the 5 × 5 pixel matrix distributions RDPa and RDPb of the G image data shown in FIG. To do. Specifically, the minimum density miny in the pixel group with black circles in the 5 × 5 pixel matrix distribution RDPa is extracted. Then, the highest density maxy in the pixel group with white circles in the 5 × 5 pixel matrix distribution RDPa is extracted. Next, the lowest density mint in the pixel group with a black circle in another 5 × 5 pixel matrix distribution RDPb is extracted. Then, the highest density maxt in the pixel group with white circles in the 5 × 5 pixel matrix distribution RDPb is extracted. Next, of (miny−maxy) and (mint−maxt), the larger positive value is set as a valley detection value OUT, and when the value of OUT is equal to or greater than a certain threshold value, the target pixel (RDPa or RDPb central pixel) is detected as a valley white pixel. In this way, the valley state of the image is detected to compensate for the difficulty of detection in RGB white background detection.
[0166]
  -White judgment-
  The state variables MS and SS [I] used for white determination are generated and updated. Here, the state variable MS is addressed to the pixel of the processing target line (target line), and the state variable SS [I] is addressed to the pixel one line before the processing target line (processed line). This is 4-bit white background information representing the degree of white. The maximum value represented by the state variables MS and SS [I] is set to 15, which means the whitest degree, and the minimum value is 0. That is, the state variables MS and SS [I] are data indicating the degree of white, and the larger the value represented, the stronger the white. At the start of processing, both the state variables MS and SS [I] are initialized to zero.
[0167]
  Then, the white background information SS one line before and before the main scanning position of the target pixel is updated to a value obtained by reducing the white background information MS of the target pixel by a reduction rate of one per positional deviation of one pixel in the main scanning direction x. The white background information of the target pixel is propagated at the reduction rate behind the main scanning in the main scanning direction x one line before (white propagation processing). However, this is a case where the white background information one line before is a smaller value. For example, when the pixel one line before is detected as a white background (white area) by RGB white background detection, the white background information thereof is 15 and is the highest value, and rewriting is not performed.
In the white propagation process of the white background information SS of the previous line, the white background information SS of the previous line is held in the RAM 8K, and a feedback loop is formed in the memo control as shown in FIG. Then, the data (Edp) read from the RAM 8K (replaced by the RAM 8K (LUT) in FIG. 23B) and the white propagation processing value data calculated by the SIMD type processor 33 and given to the memo controller Is selected by the multiplexers 76 and 77 according to the selection designation of the processor 33, and is again written in the address of the read data (Edp) in the RAM 8K.
[0168]
  When the pixel of interest is updated and becomes a non-white background, when the pixel of interest is a virtual white pixel and the white background information MS is greater than or equal to the threshold thw1 (13), the white background information MS addressed to the pixel of interest is incremented by one. That is, the white level is updated to a strong value by 1. The maximum value max of the white background information MS is set to 15, and when it exceeds 15, it is limited to 15. The white propagation process described above is also performed when the route has been advanced.
[0169]
  When the target pixel is a virtual white pixel, and the white background information MS is less than thw1 (13), thw2 (1) or more, and is a valley white pixel, the state variable MS is held as it is. The white propagation process described above is also performed when the route has been advanced.
[0170]
  If none of the above conditions is met, the white background information MS of the target pixel is set to -1. That is, it is updated to white background information whose white level is weak by one. The minimum value MIN of the white background information MS is 0, and is kept at 0 when it is less than 0. The white propagation process described above is also performed when the route has been advanced.
[0171]
  -Halftone dot separation 324 (Fig. 19)-
  Using the G image data, pixels that form a part of halftone dots (called halftone dot peak pixels) are detected from pixel density information in a two-dimensional local region of a predetermined size. For a local region, the center pixel of the region is detected as a halftone peak pixel when the following two conditions are met simultaneously:
  Condition 1: The density level of the central pixel is maximum (mountain peak) or minimum (valley peak) in the local region;
  Condition 2: The absolute value of the difference between the average density level of the pixel pair and the density level of the center pixel is greater than or equal to the threshold Th for all pixel pairs that are in point symmetry with respect to the center pixel.
[0172]
  The halftone dot peak pixels of the peaks and valleys are counted for each two-dimensional small area of a predetermined size, and the sum of the peak peak pixels of the peaks and valleys is taken as the small area count value P. When the count value P is larger than the threshold value Pth, all the pixels in the small area (or in the case of pixel unit processing, only the central pixel of the small area) are determined as halftone dot areas.
[0173]
  In the determination of whether or not this is a halftone dot region, as in the case of the edge / non-edge determination, using the feedback loop in the memo control shown in FIG. 23 (a) or FIG. 23 (b), The halftone dot / non-halftone dot feedback is added to the LUT for halftone dot / non-halftone dot determination by adding the feedback of the determined halftone dot / non-halftone dot of the preceding pixel and the detection result of whether the target pixel is the halftone dot peak / halftone dot peak Switching between points suppresses vibrations that frequently occur at a single pitch, increasing the reliability of halftone dot / non-halftone dot detection.
[0174]
  -7-value 325a (Fig. 19)-
The input data R, G, and B are converted into c, m, y, and color determination w (white) signals. As an example of hue division, the boundary of each color is obtained, the difference between the maximum value and the minimum value of R, G, B image data in one pixel is defined as an RGB difference, and the hue space is divided into 7 regions. Partition and determine which area the input data is. The output signal is 3 bits of data of 1 bit for each of c, m, and y, and 1 bit of w for color pixel detection for color determination. Here, the threshold is changed for each hue because the threshold corresponding to the hue area is determined for each hue area when the chromatic range is different. This hue division is an example, and any formula may be used. The output c, m, y, w of the hue division 325a is stored in the buffer memory 32 for use in color pixel determination.
[0175]
  When a color pixel w pixel exists, the pixel is corrected to c = m = y = 0. This correction increases the white level of the 5 × 5 pixel matrix centered on the pixel of interest. Next, the target pixel is a pixel (color pixel) other than 1 (c = m = y = 1) or all 0 (c = m = y = 0) of c, m, y obtained by hue division. Whether the 5 × 5 pixel matrix matches the color pixel pattern group is determined by pattern matching. Then, it is detected whether the target pixel is a color line pixel surrounded by white by pattern matching using a 5 × 5 pixel matrix thin line pattern group. Next, it is detected whether the pixel of interest is a white region pixel by pattern matching of a white region pattern group of a 5 × 5 pixel matrix. Based on the pattern matching result extracted above, a color pixel surrounded by a white area is set as a color pixel candidate, and when there is a white area other than that, it is not set as a color pixel. Those matched by color pixel pattern matching without a white area are determined as color pixel candidates.
[0176]
  -Color determination 325b (Fig. 19)-
  Next, the number of 1 of c, m, and y (c = 1, m = 1, y = 1) of each pixel in the 5 × 5 pixel matrix is counted. If the difference between the maximum value and the minimum value of the count values for c, m, and y is greater than or equal to thcnt and the minimum value is less than thmin, color pixel candidate 1 is determined. thcnt and thmin are threshold values set before copying (processing). The plane is expanded to y, m, and c, the number is counted for each plane in the N × N matrix, and the minimum value is assumed to be black. This makes it possible to correct even if black pixel reading fails. A chromatic pixel is determined based on the difference between the maximum value and the minimum value. This corrects a pixel from which a black pixel is not read, and extracts a chromatic pixel. If there is a certain chromatic pixel in the 5 × 5 pixel matrix centered on the target pixel, the target pixel is determined as a chromatic pixel. If the pixel of interest is color pixel candidate 1 and color pixel candidate 2, color pixel 1 is assumed.
[0177]
  Next, if there is one or more color pixels 1 in the 4 × 4 pixel matrix, the entire 4 × 4 pixel matrix is blocked into one color pixel block. In the processing after blocking, 4 × 4 pixels are output as a block with one block. In isolated point removal, if there is no color pixel block in the adjacent block of the target block, it is removed as an isolated point. Next, in the expansion process, if there is one block of color pixels, it expands to 5 × 5 blocks. The reason for expansion is to prevent black character processing around the color pixel. Here, B / C information of L (chromatic) is generated for one color pixel block, and H (achromatic) in other cases.
[0178]
  Hereinafter, the number of 1 of c, m, y (c = 1, m = 1, y = 1) of each pixel in the 5 × 5 pixel matrix is counted, and the difference between the maximum value and the minimum value of the count value is calculated. Accordingly, detection of the color pixel 2 and the color pixel 3, detection of blocks, removal of isolated blocks, and the like are performed. Further, whether the pixel of interest is the black pixel candidates 1 and 2 is determined by pattern matching. If the pixel of interest is the black pixel candidate 1 and the black pixel candidate 2, the pixel is determined to be a black pixel. If there is one or more black pixels in a 4 × 4 pixel matrix, the entire 4 × 4 pixel matrix is defined as a black pixel block. In the processing after the block formation, 4 × 4 pixels are output as one block. If the target block is a black pixel block and its surrounding pixels are non-black pixels in the 3 × 3 block matrix, the target block is set to a non-black pixel block.
[0179]
  -Integrated color pixel determination-
  If the block of interest is determined to be color pixel 2 by the color pixel determination and is not determined to be a black pixel by the achromatic determination, the block of interest is determined to be a color block. Further, when the color pixel determination is a determination as a color pixel, it is also determined as a color block. In the integrated color pixel determination, in order to regard small characters as continuous for blocks determined to be color, if at least one block is a color block in a 9 × 9 block matrix centered on the target block, the target block is colored. Let it be a block. Here, the reason for the large expansion is to fill the gap between the characters.
[0180]
  -Continuous count-
  Next, the color pixel block continuity is checked to determine whether it is a color document or a monochrome document. By counting the number of continuous color pixels in the expansion output data (color pixel block), it is determined whether the document is a color document. When the pixel of interest is in the color pixel block, the number of continuous color pixels of the pixel of interest is calculated with reference to the number of continuous color pixels of the upper left, upper, upper right and left pixels of the pixel of interest. Here, if the target pixel is, for example, the c3 pixel of the pixel distribution pattern MPp in FIG. 24B, the upper left, upper, upper right, and left pixels are the pixels b2, b3, b4, and c2, respectively. When the target pixel is not in the color pixel block, a continuous number of color pixels of 0 is given to the target pixel.
[0181]
  In this processing, the color of the pixel of interest (c3) corresponding to the number of consecutive color pixels of the upper left, upper, upper right and left pixels b2, b3, b4 and c2 is stored in the RAM 8K (LUT) shown in FIG. The LUT that defines the relationship of the number of continuous pixels is read from the data RAM 37 of the SIMD processor 33 and written. As shown in FIG. 24A, a feedback loop is formed in the memo controller, and the data c2 (number of continuous color pixels of the left pixel c2) read from the RAM 8K (LUT) and each pixel of the preceding line Multiplexers 75 and 76 represent the color pixel continuous numbers (also denoted as b2, b3 and b4) of the upper left, upper and upper right pixels b2, b3 and b4 read from the line memory RAM 8K (LINE) storing the color pixel continuous numbers. The data is merged in the output register 72 and given as an LUT access address to the address line of the RAM 8K (LUT) via the memory SW to read the data c3 from the LUT, and this is set as the number of continuous color pixels addressed to the target pixel c3.
[0182]
  An outline of the logic for determining the number of continuous color pixels by the LUT will be described here. If the target pixel is not in the color pixel block, 0 is given to it, but if it is in the color pixel block, first, the color pixel of the upper pixel of the target pixel When the continuous number is 0, a value obtained by adding 1 to the color pixel continuous number of the upper right pixel (b4) is given to the reference value A, and when the color pixel continuous number of the upper pixel (b3) is 0, the reference value A is set. The number of continuous color pixels of the upper right pixel (b4) is given. Next, a value obtained by adding 1 to the number of continuous color pixels of the upper left pixel (b2) is given to the reference value B, and a value obtained by adding 1 to the number of continuous color pixels of the upper pixel (b3) is given to the reference value B. The reference value D is a value obtained by adding 1 to the number of consecutive color pixels of the left pixel (c2). The highest value among the reference values A, B, C, and D is set as the number of continuous color pixels of the target pixel (c3). If the number of continuous color pixels of the upper pixel is not 0, it is given to the target pixel.
[0183]
  If the number of continuous color pixels is given to the target pixel (c3) as described above, it is checked whether the number of continuous color pixels is equal to or greater than the set value thacs. Therefore, the process of continuous counting is finished. If the number of consecutive color pixels is less than the set value thacs, the target pixel is updated to the next pixel in the scanning direction x, y, and the above-described processing is repeated. As a result of performing the above-described processing on the entire surface of the document, if the number of continuous color pixels is less than the set value thacs until the end, it is determined that the document is a monochrome image.
[0184]
  The above-mentioned number of consecutive color pixels is the sum of almost a fresh colored line segment and a horizontal colored line segment. The number of consecutive color pixels in the upper right is different from others because it prevents double counting. If even one color pixel group in any color pixel group on the same document exceeds the set value thacs, it is determined whether the document is color or monochrome.
[0185]
  -Comprehensive judgment 326 (Fig. 19)-
  The overall determination 326 includes character determination, expansion processing, and character determination.
[0186]
  -Character judgment-
  In character determination, when the result of edge separation 322 is an edge, the result of halftone separation 324 is no halftone, and the result of white background separation 323 is a white area, it is determined that the character edge. Otherwise, it is determined as a non-character edge (whether a pattern or a character).
[0187]
  -Expansion treatment-
  In the expansion processing, the result of character determination is ORed for 8 × 8 blocks, and then AND processing for 3 × 3 blocks is performed to perform expansion processing for 4 blocks. That is, if any block of the 8 × 8 block centered on the target block is a character edge, it is assumed that the target block is also a character edge block, and all 3 × 3 blocks centered on the target block are If it is a character edge, the target block is determined as the character edge, and the target block and three blocks adjacent to the target block are regarded as the character edge. The reason why the AND process is performed after the OR process, particularly in the case of a black character, when a small non-black character region exists around the black character region, a sense of incongruity may be felt due to a difference in processing. For example, black looks thin. In order to prevent this, the non-black character area is enlarged by OR processing. The AND process is performed to obtain a desired expansion amount.
[0188]
  -Judgment of character-
  The character determination is performed by using the edge separation 322, the white background separation 323, the halftone separation 324, the color determination 325b, and the character determination result to generate a character signal indicating whether the character is in the region (within the character line width). To do. The processing and signals used to generate a character signal are as follows.
[0189]
  Character signal for character: An OR process of 5 × 5 blocks is performed on an output signal representing character edge / non-character edge for character determination. This output is called a character signal for character use;
  White block black character signal A: Character signal for character is active (character edge), white block correction output of white background separation 323 is white block correction data, and the result of color determination 325b is non-active (achromatic: black) In the case of a pixel block), the white block black character signal A is made active. That is, “white block black character” is indicated. In this case (black characters surrounded by white background), the probability of being a character is very high;
  High density black region signal B: 3 × 3 block OR of black block of white background separation 323 is active (black), the result of color determination 325 is non-active (achromatic), and the result of halftone dot separation is non- When it is active (non-halftone) and the character signal for characters is non-active (non-character edge), the high density black region signal B is activated. That is, “high density black region” is indicated. Among black characters, the density is high, so it is determined whether it is a character in combination with other conditions;
  Black character signal C: When the character signal for character is active (character edge) and the result of the color determination 325 is non-active (achromatic), the black character signal C becomes active (black character). This active black character portion is likely to be an edge of the character, and there is a high possibility that there is a character around it.
[0190]
  Here, the determination of candidates among characters will be described. Using the white block black character signal A, the high density black region signal B, and the black character signal C to express the candidate signal Q among characters, the following expression is obtained:
  Q24 = (A21 & A22 & A23 & A24)
          # ((Q13 # Q23 # Q14 # Q15) & (B24 # C24))
  The upper number 2 of the two-digit number of the symbol indicates the current line y2, and 1 indicates the previous line y1. The lower digit indicates the pixel position x on the line. Briefly explaining the processing represented by the above formula, if the white block black character signal A exists continuously, that is, if all of A21 to A24 are active, it is assumed that the pixel of interest is a character or a candidate, The candidate confirmation process is started. That is, if there is a pixel (Q13, Q23, Q14, or Q15) that has been determined to be a candidate for a character in the vicinity of the high density black region signal B24 or the black character signal C24, the determination is made that the target pixel is also a candidate for a character. That is, when the white block character signal A (active) is continuously present, this condition is used as a trigger to start the determination of a character candidate.
[0191]
  In the case of a black character surrounded by a white background (white block black character signal A is active), there is a very high probability that the character is a character, and white block black character signal A (active) is present almost continuously. Because. The black character signal A (active) is highly likely to be an edge of a character, and there is a high possibility that “character is” in the vicinity thereof, and therefore, as described above, a character character is a candidate (Q24: active). This result is taken as a candidate among characters.
Next, a character signal is created from the character candidate (signal Q: active). If the character signal is not a character edge signal but a character or a candidate, it is determined that there is a character signal (character signal: active). Here, the finally output C / P signal is as shown in the following table:
  C / P signal Character edge signal Character signal Signal area determination
    0 None None Picture area
    1 No Yes Characters in the area
    2 − − −
    3 Yes × Character edge area
    There is no case of outputting C / P = 2.
[0192]
  A 3-bit signal obtained by adding a 1-bit B / C signal to the 2-bit C / P signal is the image area data Fd.
[0193]
  The image area data Fd is referred to in filter processing and under color removal in the IPU 2, and is also referred to in γ conversion and gradation processing in the IPU 3y, IPU 3m, IPU 3c, and IPU 3k.
[0194]
  The filter process in the IPU 2 is a filter process for performing MTF correction on RGB data, and a coefficient matrix corresponding to an N × N pixel matrix is used to multiply each coefficient by each image data to obtain a weighted average value. When the C / P signal represents 3 (character edge region), the coefficient matrix for sharpening processing is used, and when it represents 0 or 1 (character region or pattern region), it is used for smoothing processing. A weighted average value is derived using the coefficient matrix.
[0195]
  The under color removal is for improving the color reproduction of the image data. The common part of the Y, M, and C data generated by the color conversion is subjected to UCR (addition removal) processing to generate Bk data. , M, C, K data is generated. Here, when the C / P signal is other than 3 (character edge region) (when it is a character region or a picture region), skeleton black processing is performed. When the C / P signal is 3 (character edge region), full black processing is performed. Further, when the C / P signal is 3 (character edge region) and the B / C signal is H (achromatic region), the C, M, and Y data are erased. This is because black characters are expressed only by the black component.
[0196]
  The γ conversion of the IPU 3y, IPU 3m, IPU 3c, and IPU 3k is processed by changing the γ conversion characteristic (so-called γ curve) according to the frequency characteristic of the image forming unit 105 of the color printer PTR and the C / P signal. When the C / P signal is 0 (picture area) or 1 (character area), a γ curve that faithfully reproduces the image is used. When the C / P signal is 3 (character edge area), the γ curve is set up. Emphasize contrast.
[0197]
  The gradation processing of the IPU 3y, IPU 3m, IPU 3c, and IPU 3k performs quantization such as dither processing and error diffusion processing according to the gradation characteristics of the image forming unit 105 of the color printer PTR and the C / P signal. In the gradation processing of K image data by the IPU 3k, when the C / P signal is 0 (picture area), processing for emphasizing gradation is performed, and for other cases, processing for emphasizing resolution is performed. During image formation other than Bk, gradation-oriented processing is performed when the C / P signal is 0 (picture area) or 1 (character area), and resolution-oriented processing is performed otherwise.
[0198]
  -Second Example-
  The hardware of the second embodiment is the same as that of the first embodiment described above, but the contents of data processing in the interpolation operation of the γ conversion for LUT generation are slightly different in the second embodiment.
[0199]
  FIG. 25 shows the contents of LUT generation γ conversion (generation of scanner γ conversion LUT in IPU 1 & generation of printer γ conversion LUT in IPU 3 y to 3 k) executed by IPU 1 and IPUs 3 y to 3 k of the second embodiment.
[0200]
  The global processor (38) of the SIMD type processor (33) of the second embodiment first initializes all the processor elements PE0 to PEn, and then sets n + 1 (n = 255), each value of 0 to 255. Each of the gradation data D0 to Dn to be expressed is set in each input register of n + 1 processor elements PE0 to PEn (step aγp1).
[0201]
  Next, the global processor (38) sets the calculation target section i to the first section (i = 1) (aγp2), gives the interpolation calculation parameters ai and bi of the section i to all the processor elements PE0 to PEn, The calculation of yi = ai · x + bi is instructed (aγp3). All the processor elements PE0 to PEn calculate yi by using the gradation data Dj (D0 to Dn) given to x as x, and obtain calculated values A0 to An, respectively (aγp3).
[0202]
  Next, the global processor (38) gives the boundary value xi of the i-th section to all the processor elements PE0 to PEn to instruct comparison. Each of PE0 to PEn checks whether the set gradation data Dj is in the i-th section (xi <Dj: NO, ie, xi ≧ Dj), and if it is in the i-th section, its own flag is set. Set “1” (aγp4).
[0203]
  Next, the processor element that has set its own flag to “1” for the first time (the flag is switched from “0” to “1”) writes the calculated value Aj (any one of A0 to An) to the output register ADj. (Aγp5). The processor element that has not switched its flag from “0” to “1” does not perform this writing.
[0204]
  Similarly, the above-described processing in which the first section is set as the calculation target section updates the calculation target section i sequentially to the second (i = 2), the third (i = 3),. = Repeatedly execute until 7 interval (i = 7) (aγp6 / aγp7 / aγp3 / aγp4 / aγp5 / aγp6). However, a processor element that has already set the flag to “1” and does not switch from “0” to “1” does not write the calculated value to the output register Aj. In the last m = 8 section, only the processor element whose flag is not set to “1” writes the calculated value Aj into the output register ADj.
[0205]
  When executed up to the (m-1) th section, all of the processor elements PE0 to PEn calculate based on the parameters A = ai and B = bi addressed to the section to which the gradation data set in itself belongs. The value is held in the output register.
[0206]
  Next, the global processor (38) writes the output register data (AD0 to ADn) of the processor elements PE0 to PEn into the output data area of the processor element RAM, and performs γ conversion by the memocon setting register ((a) of FIG. 13). The memo controller (FIG. 5) that designates the reading and writing of the LUT for LUT is instructed to read the data there. The memo controller writes the γ-converted data to the gradation data of each value from 0 to 255 in the designated area for forming the LUT of the RAM 8K designated by the setting information as the LUT (aγp8).
[0207]
  According to the interpolation calculation of the second embodiment, each processor element calculates the γ conversion data by performing the interpolation calculation of the same section at the same time. However, the gradation data given to each processor element at this time is not necessarily the same, and not all are in the section i to which the interpolation calculation is addressed. The calculation output of the processor element to which the gradation data not in the section i is given is an error, and the calculation output of the processor element to which the gradation data in the period i is given is a correct value.
[0208]
  One interpolation operation for each interval i, i = 1 to m, is performed simultaneously on all the processor elements at the same time, and the interpolation operation for all the intervals is performed. Times, the correct conversion value is calculated. This correct conversion value is valid. That is, it is output as converted data.
[0209]
  For one gradation data, the processor element given it repeats the interpolation operation apparently m times (for example, m = 8). That is, each of the interpolation operations yi, i = 1 to m of each section is executed. Therefore, although the number of calculations increases, since one calculation is simple and the time is short, the conversion time as a whole of a plurality of n gradation data having a large n value is short.
[0210]
  -Third Example-
  The hardware of the third embodiment is the same as that of the first embodiment described above, but the configuration of the interpolation operation program used for generating the γ conversion LUT is slightly different in the third embodiment. Γ conversion (generation of scanner γ conversion LUT in IPU 1 & generation of printer γ conversion LUT in IPUs 3y to 3k) executed by IPU 1 and IPUs 3y to 3k of the third embodiment will be described.
[0211]
  In the reading correction program addressed to the IPU 1, the storage address S00 (FIG. 26) of the scanner γ conversion program is inserted at the position where the γ conversion LUT is generated, and the reading correction program is transferred from the HDD to the SIMD processor 33 of the IPU 1. When the program is transferred to the program RAM 36, the scanner γ conversion program at the storage address S00 is transferred in place of the storage address. In addition to this, a set of “boundary values, parameters” group for R, G, B γ conversion, for example, data of addresses S1R, S1G and S1B (FIG. 26) is converted to γ conversion of the data RAM 37 of the SIMD type processor 33. Transfer to the data storage area for writing. The group of “boundary values, parameters” for R γ conversion of a set, for example, address S1R, is the boundary values xi of the section shown in FIG. It is for 8 sections.
[0212]
  FIG. 27 schematically shows information classification on the data RAM 37 for a set of parameters.
[0213]
  Even after the one set, that is, three sets (for R, G, and B: addresses S1R, S1G, and S1B) are written in the data RAM 37, a change operation from the operation board OPB or the host PC is shown in FIG. It can be rewritten to another group (for example, S3R, S3G, S3B).
[0214]
  Similarly, in the Y, M, C, and K output correction programs addressed to IPU 3y, IPU 3m, IPU 3c, and IPU 3k, the storage address (P00: FIG. 26) of the γ conversion program is inserted at the γ conversion position. When the Y, M, C and K output correction programs are transferred from the HDD to the program RAMs (36) of the processors 53y, 53m, 53c and 53k of the IPU 3y, IPU 3m, IPU 3c and IPU 3k, the storage address P00 is stored. The printer γ conversion program is replaced with the storage address and transferred. In addition, a set of “boundary values, parameters” groups for Y, M, C, and K for each set of Y, M, C, and K, for example, data at addresses P1Y, P1M, P1C, and P1K (FIG. 26), Data is transferred and written in the data storage area for γ conversion of each data RAM of the SIMD type processors 53y, 53m, 53c and 53k. Even after the data RAM is written, it can be rewritten to another group shown in FIG. 26 (for example, P3Y, P3M, P3C and P3K) by a change operation from the operation board OPB or the host PC.
[0215]
  The γ conversion processing flow of the third embodiment is the same as that of the first embodiment shown in FIG. However, the boundary value xi and the parameters ai and bi are read from the data RAM (37) in the SIMD processor (33) and given to the processor element PE.
[0216]
  -Fourth embodiment-
  The hardware of the fourth embodiment is the same as that of the first embodiment, but the fourth embodiment stores the original conversion table in the HDD without generating the γ conversion table by interpolation. It is. In the reading correction program addressed to the IPU 1, the storage address S00 (FIG. 28) of the scanner γ conversion program is inserted at the position where the γ conversion LUT is generated, and the reading correction program is transferred from the HDD to the SIMD processor 33 of the IPU 1. When the program is transferred to the program RAM 36, the scanner γ conversion program at the storage address S00 is transferred in place of the storage address. In addition to this, a set of R, G, B γ conversion tables, for example, conversion tables of addresses S1R, S1G and S1B (FIG. 28) are transferred to the γ conversion table storage area of the data RAM 37 of the SIMD type processor 33. Write.
[0217]
  At the time of γ conversion of RGB image data, the SIMD type processor 33 reads the γ conversion table from the data RAM 37 and writes one conversion table into two RAMs 8k as shown in FIG. 18, for example. The image data of the odd-numbered pixels and the image data of the even-numbered pixels are simultaneously γ-converted.
[0218]
  Even after the γ conversion table of one set, that is, three sets (for R, G, and B: addresses S1R, S1G, and S1B) is written in the data RAM 37, a change operation from the operation board OPB or the host PC It can be rewritten to those of other groups shown in FIG. 28 (for example, those of S3R, S3G, S3B).
[0219]
  Similarly, in the Y, M, C, and K output correction programs addressed to IPU 3y, IPU 3m, IPU 3c, and IPU 3k, the storage address (P00: FIG. 28) of the γ conversion program is inserted at the γ conversion position. When the Y, M, C and K output correction programs are transferred from the HDD to the program RAMs (36) of the processors 53y, 53m, 53c and 53k of the IPU 3y, IPU 3m, IPU 3c and IPU 3k, the storage address P00 is stored. The printer γ conversion program is replaced with the storage address and transferred. In addition to this, a set of Y, M, C, and K γ conversion tables, for example, data at addresses P1Y, P1M, P1C, and P1K (FIG. 28) are respectively converted into SIMD processors 53y, 53m, 53c. And transferred to the γ conversion table storage area of each data RAM of 53k. Even after the data RAM is written, it can be rewritten to another group shown in FIG. 28 (for example, P3Y, P3M, P3C and P3K) by a change operation from the operation board OPB or the host PC.
[0220]
  -Fifth embodiment-
  The hardware of the fifth embodiment is substantially the same as that of the first embodiment, but the SIMD processor 33 of the IPU 1 of the fifth embodiment separates the image area in the reading correction program of the program memory 36 inside. The contents of pattern comparison, that is, pattern matching performed based on the program, and the pattern comparison program included therein, are different.
[0221]
  FIG. 29 shows the contents of the pattern comparison PMPa of this fifth embodiment. Note that this process replaces the process shown in FIG. 20 of the first embodiment. The contents of the pattern comparison PMPa shown in FIG. 29 will be described next.
[0222]
  For example, in the case of pattern comparison using a reference pattern group for detecting black pixel continuation and white pixel continuation as shown in FIG. 21A as a representative example, the SIMD processor 33 stores three lines or more in three values. An input line buffer for data storage is set, and a group of 3 × 3 pixel matrix image data centered on each pixel of the middle line of the three lines is referred to as a reference pattern (reference data set). A line buffer for storing determination results for writing determination data (“11”: black continuous pixels, “01”: white continuous pixels, “00”: not applicable) indicating whether or not they match is set.
[0223]
  Referring to FIG. 29, the global processor 38 of the SIMD type processor 33 has a reference data set of b reference patterns (reference matrix) in each RAM of A (eg, 320) processor elements. Write a group (the reference pattern group for continuous detection of black pixels and the reference pattern group for continuous detection of white pixels; b reference data sets) (pm1).
[0224]
  Next, the SIMD type processor 33 instructs the memocon of the memory device 32 to transfer the A target data set (pm2), and in response to this, the memocon is on the center line (target line) of the input line buffer. The image information bit group of each pixel matrix centered on each of a series of A target pixels is converted into an a-byte target data set in the form shown in FIG. Serial transfer to the processor 33. The global processor 38 of the SIMD type processor 33 writes data into each RAM of each of the A processor elements in order from the first target data set (pm3).
[0225]
  For example, the memo controller in the buffer memory 32 writes the image information bits (binarized data) to the three RAMs 8K allocated to the line buffer memory, and as shown in FIG. The image information bit group addressed to the 3 × 3 pixel matrix composed of the pixels a to i in which one pixel is distributed around the pixel e in each of the two dimensions x and y is read out and shown in FIG. As described above, the target data set of one column a (a = 2) bytes is converted and given to the SIMD type processor 33, and this is performed A times by shifting the target pixel one pixel at a time on the same line. The global processor 38 of the SIMD type processor 33 writes each target data set to the RAM of each processor element (pm3).
[0226]
  Next, the target data set is stored up to a predetermined upper limit value near the limit of the storage capacity of the RAM of the processor element, or the above-described target data set is generated for all the pixels on one line and sent to the SIMD type processor 33 The global processor 38 checks whether the process is completed (pm13, 11). If both are not determined, the next target pixel group on the same line is set as the pattern comparison reference pixel, and the object of the above-described step pm3. A data set is generated and sent to the SIMD type processor 33. The global processor 38 of the SIMD type processor 33 writes each target data set in the RAM of each processor element (pm13-pm11-pm12-pm3).
[0227]
  When the target data set is stored in the RAM of the processor element up to a predetermined upper limit value or when the target data set having all pixels on one line as the target pixel is written to the SIMD type processor 33, the global processor 38 The pattern matching target data set is designated with the first one on the RAM of the processor element (pm14), and the comparison operation SIMDop is instructed to each processor element. The contents of this comparison operation SIMDop are the same as those shown in FIG.
[0228]
  In the fifth embodiment, this comparison operation SIMDop is repeatedly executed by the number of target data sets written in the RAM of the processor element (pm14-SIMDop-pm10-pm15-pm16-SIMDop). When the comparison operation SIMDop is repeated a plurality of times, it is checked whether the pattern matching addressed to all pixels for one line has been completed. If not, the next target pixel group on the same line is designated as a pattern comparison reference pixel. In step pm3, the target data set is generated and sent to the SIMD processor 33.
[0229]
  In the pattern comparison of the fifth embodiment, each processor element repeats the pattern comparison many times so that pattern matching with many pixels on one line as the target pixel is performed at a stretch, so that the pattern matching determination can be further accelerated. .
[0230]
  In any of the first to fifth embodiments, the YMCK image data is processed in parallel by the four sets of SIMD type processors 53y, 53m, 53c, and 53k. The entire printer γ conversion or output processing can be sequentially performed for each color by one SIMD type processor. This is suitable for a so-called one-drum type color printer in which each color image is sequentially formed by one set of photoconductor units. However, in the color printer in which the four photoconductor units shown in the embodiment are arranged in tandem, a total of four sets of SIMD type processors 53Y, 53m, 53c, and 53k are used for the YMCK image data as described above. The entire output process of YMCK image data becomes extremely fast, which is preferable for high-speed printout.
[0231]
【The invention's effect】
  In the monochrome image mode, for example, in the monochrome image mode, by separating the memo-con separation function of the buffer memory device (32), one line of monochrome image data is separated into an odd-numbered pixel image data string and an even-numbered pixel image data string. These image data can be simultaneously supplied to the image processor in parallel and data processing can be performed in parallel at the same time, thereby enabling high-speed processing of monochrome image data. Furthermore, since the processed image data can be combined into one line and output (Af in FIG. 6) using the memocon combining function, the processed RGB image can be directly processed even in the data transfer line of the monochrome image processing system. Data or YM data can be transferred.
[0232]
  In the color image mode, each of a plurality of colors (for example, two colors) of 1-line CK image data is simultaneously supplied to the image processor in parallel and simultaneously processed in parallel. Since a series of image data can be combined and output (Cf to Ff in FIG. 6) using a memocon combining function, the processing speed of color image data is high, and the data transfer line of the monochrome image processing system ( For example, even after a data transfer line similar to that of one system), the processed data can be transferred as it is.
[Brief description of the drawings]
FIG. 1 is a front view showing an external appearance of a digital full-color copying machine having a composite function according to a first embodiment of the present invention.
FIG. 2 is an enlarged vertical sectional view showing an outline of an image forming mechanism of the color printer PTR shown in FIG.
3 is a block diagram showing an outline of an electric system of the copying machine shown in FIG. 1. FIG.
FIGS. 4A and 4B are block diagrams showing an outline of an image processing system and a data transfer system of the color document scanner SCR and the color data interface control unit CDIC shown in FIG. 3, respectively.
5 is a block diagram showing a configuration of an input / output interface 31 and a buffer memory 32 of the first image processing unit IPU1 shown in FIG.
FIG. 6 is a block diagram showing several types of conversion modes of parallel and serial data arrays when transferring image data.
7A is a block diagram showing an outline of the configuration of the SIMD type processor 33 shown in FIGS. 4A and 5B, and FIG. 7B is a block diagram showing the configuration of a part of one processor element PE. It is.
FIGS. 8A and 8B are block diagrams showing an outline of an image processing system and a data transfer system of the second image processing unit IPU2 and the image memory access control unit IMAC shown in FIG. 3, respectively.
9 is a block diagram showing an outline of an image processing system of third image processing units IPU3Y, IPU3m, IPU3c, and IPU3k shown in FIG.
10 is a flowchart showing several examples of the flow of image data in the image processing system shown in FIG.
11 is a flowchart showing an outline of system control in response to image processing commands from the operation board OPB and the personal computer PC of the system controller 106 shown in FIG. 3;
12 is a flowchart showing the contents of initial setting performed by IPU 1 in response to the initial setting command of system controller 106 shown in FIG. 3; FIG.
13A is a chart showing setting information categories to be written in an internal register of the SIMD type processor 33 shown in FIG. 5; FIG. (B) is a chart showing items of setting information. (C), (d), and (e) are charts illustrating setting information.
14 is a block diagram schematically showing a data read / write area set in the RAM 8K shown in FIG. 5 by setting information. FIG.
15 is a chart showing a classification of γ conversion data stored in the hard disk device HDD shown in FIG. 3;
16 is a flowchart showing a process of an interpolation calculation process executed by the global processor 38 shown in FIG. 7 based on a γ conversion program in the reading correction program stored in the program RAM 36. FIG.
FIG. 17 is a graph showing a γ conversion characteristic curve by a two-dot chain line and an approximate straight line by a solid line.
FIG. 18 is a block diagram showing a flow of image data at the time of γ conversion of R image data using a conversion table generated by interpolation calculation processing.
19 is a functional block diagram showing an outline of data processing in image area separation performed by the SIMD type processor 33 shown in FIG. 4;
20 is a flowchart showing the contents of pattern comparison performed by the SIMD type processor 33 shown in FIG. 4;
FIG. 21A is a block diagram illustrating a representative example of a reference pattern used for determining whether a pixel of interest is a white or black continuous pixel in the edge separation 322 shown in FIG. 19; (B) and (d) are block diagrams showing a matrix of a pixel of interest and its surrounding pixels. (C) and (e) are block diagrams showing data distributions when the pixel matrix data group shown in (b) and (d) is an integer byte target data set, respectively.
FIG. 22 is a flowchart showing the details of processing for generating fixed edge / non-edge information by memocon data feedback shown in FIG. 5;
23 (a) is a block diagram showing one mode of the data feedback function of the memocon shown in FIG. 5, and FIG. 23 (b) is a block diagram showing another mode of the data feedback function of the memocon shown in FIG. is there.
24A is a block diagram showing another aspect of the data feedback function of the memo control shown in FIG. 5. FIG. (B) is a block diagram showing a matrix of a pixel of interest and its surrounding pixels.
FIG. 25 is a flowchart showing a process of an interpolation calculation process executed by a global processor 38 of a SIMD type processor in the second embodiment based on a γ conversion program in a reading correction program stored in a program RAM 36.
FIG. 26 is a chart showing classification of γ conversion data stored in the hard disk device HDD according to the third embodiment;
27 is a chart schematically showing a distribution on the RAM 37 of a set of parameters read from the HDD and written in the data RAM 37 in the third embodiment. FIG.
FIG. 28 is a chart showing classification of γ conversion data stored in the hard disk device HDD according to the fourth embodiment;
FIG. 29 is a flowchart showing the contents of pattern comparison by the SIMD type processor 33 in the fifth embodiment.
[Explanation of symbols]
ADF: Automatic document feeder
SCR: Color document scanner
OPB: Operation board PTR: Color printer
PC: PC PBX: Exchanger
PN: Communication line 2: Optical writing unit
3, 4: Paper feed cassette 5: Registration roller pair
6: Transfer belt unit
7: Fixing unit 8: Output tray
10M, 10C, 10Y, 10K: photoconductor unit
11M, 11C, 11Y, 11K: photosensitive drum
20M, 20C, 20Y, 20K: Developer
60: Transfer conveyance belt IPU1: First image processing unit
IPU2: second image processing unit
IPU 3y, 3m, 3c, 3k: third image processing unit
CDIC: Color data interface controller
IMAC: Image memory access control unit
HDD: Hard disk device
MEM: Image memory LAN: Local area network
FONT: Font ROM
IDU: Banknote recognition unit
SCI: System control interface
JTAG: Job encoder / decoder
Memocon: Memory controller
R: R image data G: G image data
B: B image data Fd: Image area data
Y: Y image data M: M image data
C: C image data K: K image data

Claims (10)

画像データの入力もしくは出力を選択的に行なう画像ポートと、
画像データに所定の画像処理を行なう画像処理器と、
前記画像ポートから画像データを受け取り前記画像処理器へ入力する処理と、前記画像処理器から出力された画像データを受け取り前記画像ポートへ出力する処理選択的に行なうバッファメモリ装置と、を備える画像データ処理装置において、
前記画像ポートへ入力もしくは画像ポートから出力する画像データは、画像データを時系列にシリアルに並べた1連の画像データ列を2以上の所定数a 並行して入出力するa 連の画像データ列であり、
前記画像処理器は、
データ処理を行なう2以上の所定数bのプロセッサエレメントと、
前記バッファメモリ装置との入出力インターフェイスとして機能し、前記プロセッサエレメントの各々に対応して b のデータを蓄えることができる a 以上の複数のレジスタと、
前記バッファメモリ装置からのデータを b 毎に前記レジスタへ入出力する処理と、前記各プロセッサエレメントに対応する前記レジスタの各データに対して同一の処理を同時に並行して処理させる制御を行なう処理制御手段とから構成され、
前記バッファメモリ装置は、
前記画像ポートへ入出力する前記画像データを少なくとも b 以上蓄えるバッファメモリと、
記バッファメモリに対して前記画像データの入出力管理を行なうメモコンとから構成され、
前記メモコンは、前記画像ポートを入力として選択したとき、
前記バッファメモリに蓄積された前記画像データを1連の画像データ列で並行するa列に振り分ける分離機能と
前記分離機能により分離したa列で1連の画像データ列を前記画像処理器の所定の前記各レジスタに a 列の並行入力をする並行入力機能を行い、
前記画像ポートを出力として選択したとき、
前記画像処理器の所定の a 列の各レジスタから各1連の画像データを並行出力する並行出力機能と
前記並行出力機能により出力された a 列で 1 連の画像データ列を順次摘出して a 連の画像データ列に合成して前記バッファメモリに前記画像データとして蓄える合成機能を行なうものであって、
前記 a 連の画像データ列として、カラー画像データにおける第1色の画像データ列から第 a 色の画像データ列を並行入力もしくは並行出力することで、カラー画像データを入出力するのに必要な画像ポート数を削減することを特徴とした画像データ処理装置。
Image port for input or output of image data selectively,
An image processor for performing predetermined image processing on the image data;
Image comprising a process for inputting from the image port image data to the receiving the image processor, and a buffer memory device for selectively performing a process for outputting to receive said image port output image data from the image processor In a data processing device,
Image data output from the input or the image port to the image port, the image data of a communication to be input and output in parallel a predetermined number a column image data sequence of a series of arranged serially in time series 2 or more image data Column ,
The image processor is
Two or more predetermined number b of processor elements for data processing; and
Said function as input and output interface to the buffer memory device, in correspondence with each of the processor elements b more than a data can store the register,
Processing control for performing processing for inputting / outputting data from the buffer memory device to the register every b and processing for simultaneously processing the same processing for each data of the register corresponding to each processor element in parallel Means and
The buffer memory device includes:
A buffer memory for storing at least b or more of the image data to be input to and output from the image port;
Is composed of a memory controllers that for the previous SL buffer memory input and output management of the image data,
When the memo control selects the image port as an input,
A separation function that distributes the image data stored in the buffer memory into a row of parallel images in a series of image data rows and a row of image data rows that are separated by the separation function . Perform a parallel input function for parallel input of a columns to each register ,
When selecting the image port as output,
A parallel output function for parallel output of each series of image data from each register of a predetermined row a of the image processor;
A performs a synthesizing function of storing as said image data the parallel output image data string a series output has been a column successively excised by combining the image data stream of a communication with the function to the buffer memory,
Wherein as image data column of a communication, by parallel input or parallel output image data sequence of the color a from the image data stream of the first color in the color image data, necessary for inputting and outputting color image data image An image data processing apparatus characterized by reducing the number of ports .
前記画像データ処理装置において、前記a 連の画像データ列としてカラー画像データにおける第1色の画像データ列から a の画像データ列を並行入力もしくは並行出力することに代えて、前記 a の画像データ列として隣接するa の画素を並行入力もしくは並行出力することで、前記画像ポートから前記バッファメモリ装置への入出力を高速に処理することを特徴とした請求項1に記載の画像データ処理装置。Wherein the image data processing apparatus, wherein instead of being as an image data stream of image data sequence of the color a from the first color image data string in the color image data in parallel input or parallel output of a communication, said a communication by adjacent parallel inputs or parallel pixels per a output as image data stream, image data according to claim 1, from the image port was characterized by processing the input and output to the buffer memory device at high speed Processing equipment. 前記メモリバッファ装置は複数のバッファメモリと複数のメモコンの組み合わせを1セットとする複数セットから構成され、前記画像ポートから画像データを受け取り前記画像処理器へ入力する処理と、前記画像処理器から出力された画像データを受け取り前記画像ポートへ出力する処理を各セット単位で選択的に行なうことを特徴とした請求項1又は請求項2に記載の画像データ処理装置。 The memory buffer device is composed of a plurality of sets each including a combination of a plurality of buffer memories and a plurality of memocons. The memory buffer device receives image data from the image port, inputs the image data to the image processor, and outputs from the image processor. 3. The image data processing apparatus according to claim 1, wherein the process of receiving the received image data and outputting the image data to the image port is selectively performed for each set unit . 前記画像処理器は、更に読み書き可能なプログラムメモリを有し、
前記画像データ処理装置は、更に前記プログラムメモリにデータ処理プログラムを書込む手段を備え、
前記画像処理器は前記プログラムメモリに書込まれたデータ処理プログラムに従って画像処理を行なうこと特徴とした請求項3に記載の画像データ処理装置。
The image processor further has a readable / writable program memory,
The image data processing apparatus further comprises means for writing a data processing program in the program memory,
4. The image data processing apparatus according to claim 3, wherein the image processor performs image processing according to a data processing program written in the program memory .
請求項に記載の前記画像データ処理装置と、
カラー画像読取手段と、画像形成手段を有するカラー画像形成装置において
前記画像データ処理装置は、前記画像処理器を前記データ処理プログラムに従ってRGB画像データを読取補正する第1の画像処理器、
RGB画像データをYMCK画像データに変換する第2の画像処理器、
YMCK画像データを出力補正する第3の画像処理器として処理するように前記データ処理プログラムを書込む手段により前記プログラムメモリに書き込み、
前記カラー画像読取手段で読取ったRGB画像データを、前記第1の画像処理器で前記カラー画像読取手段の画像読取用の読取補正を行い、
該読取補正を行なったRGB画像データを前記第2の画像処理器でYMCK画像データに変換し、
該変換したYMCK画像データを前記第3の画像処理器で前記画像形成手段の画像形成用の出力補正を行い、
該出力補正したYMCK画像データを、前記画像形成手段で画像形成することを特徴としたカラー画像形成装置。
The image data processing device according to claim 4 ,
In a color image forming apparatus having a color image reading unit and an image forming unit,
The image data processing device includes a first image processor that reads and corrects RGB image data according to the data processing program.
A second image processor for converting RGB image data into YMCK image data;
Writing to the program memory by means for writing the data processing program to process as a third image processor for output correction of YMCK image data;
The RGB image data read by the color image reading means is subjected to reading correction for image reading of the color image reading means by the first image processor,
The RGB image data subjected to the reading correction is converted into YMCK image data by the second image processor,
The converted YMCK image data is subjected to output correction for image formation of the image forming means by the third image processor,
A color image forming apparatus, wherein the output-corrected YMCK image data is image-formed by the image forming means.
前記a 連の画像データ列は、RGB画像データにおけるいずれか色の画像データであることを特徴とした請求項1に記載の画像データ処理装置。The image data stream of a communication, the image data processing apparatus according to claim 1, characterized in that it is a one or two-color image data stream in the RGB image data. 前記a 連の画像データ列は、CMYK画像データにおけるいずれか色の画像データであることを特徴とした請求項1に記載の画像データ処理装置。The image data stream of a communication, the image data processing apparatus according to claim 1, characterized in that it is a one or two-color image data stream of the CMYK image data. 前記 a連の画像データ列は、1ラインの奇数番目の画素と偶数番目の画素のデータ列であること特徴とした請求項2に記載の画像データ処理装置。The image data processing apparatus according to claim 2, wherein the a- sequence image data sequence is a data sequence of odd-numbered pixels and even-numbered pixels in one line. 前記 a連の画像データ列は、隣接する2ラインの画像データ列であること特徴とした請求項2に記載の画像データ処理装置。The image data processing apparatus according to claim 2, wherein the a- sequence image data sequence is an image data sequence of two adjacent lines. 前記 a連の画像データ列は白黒読取りの白黒画像データの列である請求項8又は請求項9に記載の画像データ処理装置。The image data processing apparatus according to claim 8 or 9, wherein the a- sequence image data string is a string of monochrome image data for monochrome reading.
JP2001334838A 2001-10-31 2001-10-31 Image data processing apparatus and color image forming apparatus Expired - Fee Related JP3935335B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2001334838A JP3935335B2 (en) 2001-10-31 2001-10-31 Image data processing apparatus and color image forming apparatus
US10/283,350 US7286717B2 (en) 2001-10-31 2002-10-30 Image data processing device processing a plurality of series of data items simultaneously in parallel
EP02257566.6A EP1309173B1 (en) 2001-10-31 2002-10-31 Image data processing device processing plurality of series of data items simultaneously in parallel

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001334838A JP3935335B2 (en) 2001-10-31 2001-10-31 Image data processing apparatus and color image forming apparatus

Publications (2)

Publication Number Publication Date
JP2003141519A JP2003141519A (en) 2003-05-16
JP3935335B2 true JP3935335B2 (en) 2007-06-20

Family

ID=19149908

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001334838A Expired - Fee Related JP3935335B2 (en) 2001-10-31 2001-10-31 Image data processing apparatus and color image forming apparatus

Country Status (1)

Country Link
JP (1) JP3935335B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9672450B2 (en) 2015-03-17 2017-06-06 Canon Kabushiki Kaisha Image recording apparatus and control method therefor

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4515986B2 (en) * 2005-08-04 2010-08-04 株式会社リコー Image processing apparatus and program
JP5093576B2 (en) * 2007-05-25 2012-12-12 富士ゼロックス株式会社 Printing control apparatus and image forming system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9672450B2 (en) 2015-03-17 2017-06-06 Canon Kabushiki Kaisha Image recording apparatus and control method therefor

Also Published As

Publication number Publication date
JP2003141519A (en) 2003-05-16

Similar Documents

Publication Publication Date Title
US7286717B2 (en) Image data processing device processing a plurality of series of data items simultaneously in parallel
JP3907155B2 (en) Image data correction apparatus, image reading apparatus, and image forming apparatus
US7199897B2 (en) Image data processing apparatus for and image data processing method of pattern matching
JP3946038B2 (en) Image processing apparatus and image forming apparatus
JP3859134B2 (en) Image data processing apparatus, image processing apparatus, color image forming apparatus, and pattern matching method
JP3559021B2 (en) Data conversion device, image processing device, and data conversion method
JP3935335B2 (en) Image data processing apparatus and color image forming apparatus
US7336395B2 (en) Data conversion system, image processing and image forming apparatus
JP2000321925A (en) Color image forming device
JP3867888B2 (en) Image information rotating method, rotating device, recording medium, image reading device, and image forming device
JP3963260B2 (en) Image processing apparatus and image forming apparatus
JP3952445B2 (en) Color image forming apparatus and color copying apparatus
JP2003110853A (en) gamma CONVERSION PROCESSOR, IMAGE PROCESSOR AND gamma CONVERSION PROCESSING METHOD
JP2003216365A (en) Image processor and image forming device
JPH10304200A (en) Image processor
EP0551823B1 (en) Image processing apparatus
JP2008023959A (en) Image processor, image processing method and program
JP3712189B2 (en) Multifunction color copier
JP2003209681A (en) Image processing method, image processing equipment and image forming equipment
JP4574070B2 (en) Image processing apparatus and control method thereof
JP3888662B2 (en) Image reading processing method, image reading apparatus, and image forming apparatus
JP3889279B2 (en) Image processing device
JP2003169221A (en) Color image forming apparatus and color image processing method
JPH1032690A (en) Image processor and its method
JP2001144943A (en) Image processing method and image processing unit

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040113

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040305

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040722

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040922

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040928

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20050311

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070223

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070319

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110330

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120330

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130330

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140330

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees