JP2004120021A - Image processing apparatus, image reader, and image forming apparatus - Google Patents

Image processing apparatus, image reader, and image forming apparatus Download PDF

Info

Publication number
JP2004120021A
JP2004120021A JP2002276431A JP2002276431A JP2004120021A JP 2004120021 A JP2004120021 A JP 2004120021A JP 2002276431 A JP2002276431 A JP 2002276431A JP 2002276431 A JP2002276431 A JP 2002276431A JP 2004120021 A JP2004120021 A JP 2004120021A
Authority
JP
Japan
Prior art keywords
processing
image
gradation
unit
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002276431A
Other languages
Japanese (ja)
Inventor
Koji Hayashi
林 浩司
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 JP2002276431A priority Critical patent/JP2004120021A/en
Publication of JP2004120021A publication Critical patent/JP2004120021A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Color, Gradation (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To selectively apply many kinds of gradation processes to image data at a comparatively low cost and high speed. <P>SOLUTION: A gradation processing section 210 is provided with an SIMD processor for applying common processing arithmetic operations to a plurality of input data according to an image processing program. Then process areas A, B, C and contents of gradation processing of each process area are set to an original read by a scanner 20, an area processing section 212 transmits the setting contents in each process area to a CPU 131 at reading and the CPU 131 transfers programs required for the setting gradation processing to a gradation processing section 210. A gradation processing program extract section 236 selects a proper program among the programs according to the control of the CPU 131 and allows the SIMD processor to execute the selected program and to apply the gradation processing to the read image data in response to the process areas. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
この発明は、入力する画像データに対して画像処理を行う画像処理装置、読み取った画像データをその画像処理装置によって処理するスキャナ等の画像読取装置、および画像形成する画像データをその画像処理装置によって画像処理する複写機,プリンタ,ファクシミリ装置,デジタル複合機等の画像形成装置に関する。
【0002】
【従来の技術】
従来から、画像データを処理する場合において、その内容に応じて適切な画像処理が異なることが知られている。例えば階調処理については、文字原稿を読み取って得た画像データに対しては文字再現性を良くするためにサイズの小さなディザマトリクスを用いたディザ処理もしくは誤差拡散処理がよく、写真原稿を読み取って得た画像データに対しては階調が豊富で滑らかな画像を得るために、大きめのディザマトリクスを用いたディザ処理がよい等である。
【0003】
そして、従来は、階調処理のための専用の特定用途向けIC(ASIC:Application Specific Integrated Circuit)を作成し、文字,写真等の原稿の内容に応じた階調処理を行っていた。また、1枚の画像中に文字と写真の両方が含まれる場合には、文字領域と写真領域を設定し、それぞれの領域の画像データについてその内容に適した処理を施すことも行われている。
このような処理を行う装置としては、例えば特許文献1に記載の画像処理装置が知られている。このような画像処理装置によれば、読み取る原稿上にマーカーペン等で記載されたマーキングを認識して、読み取った画像データのそのマーキングで指定された領域に対してマーキングの種別に応じた画像処理を行うことができる。
【0004】
【特許文献1】
特開2000−78389号公報
【0005】
【発明が解決しようとする課題】
しかしながら、このような従来の画像処理装置においては、階調処理は処理速度やコスト面からの要求により専用のASICによって行っているので、回路規模の観点からあまり多種の階調処理を行うことができず、文字用に1種類,写真用に1種類等、限られた範囲でしか選択することができなかった。従って、1枚の画像中で、階調性を重視した写真用の階調処理,解像度を重視した写真用の階調処理,地図原稿等のようにハイライト再現を重視し同時に文字再現性も高い階調処理,文字原稿用の誤差拡散処理等の多種の階調処理を領域指定に応じて行えるようにすることは、困難であった。
また、上記特許文献1には、画像処理中の階調処理についての詳細な記載はない。
この発明は、このような問題を解決し、画像データに対し、比較的安価かつ高速に、多種の階調処理を選択的に施すことができるようにすることを目的とする。
【0006】
【課題を解決するための手段】
上記の目的を達成するため、この発明の画像処理装置は、複数個の入力レジスタ及び出力レジスタと、画像処理プログラムを格納するプログラムメモリ部と、そのプログラムメモリ部に格納された画像処理プログラムにより演算処理を実行して上記複数個の入力レジスタに入力した画像データに対して並列的に画像処理を行い、その処理結果を出力画像データとして各上記出力レジスタへ出力するプログラマブル演算器とを備え、入力する画像データに対して階調処理を含む画像処理を行う画像処理手段と、その手段によって処理する画像データについて処理領域を設定する領域設定手段と、上記画像処理手段に上記処理領域に応じた階調処理を行わせる領域処理手段とを設けたものである。
【0007】
このような画像処理装置において、上記画像処理手段に上記階調処理に応じた階調補正処理を行わせる手段を設けるとよい。
さらに、上記領域処理手段が上記画像処理手段に行わせる階調処理を、上記処理領域に応じた線数の階調処理とするとよい。
さらにまた、上記階調処理を、誤差拡散処理,ディザ処理,これらの組み合わせ、あるいは無処理とするとよい。
また、この発明の画像読み取り装置は、これらの画像処理装置を備え、読み取った画像データをその画像処理装置によって処理するようにしたものであり、この発明の画像形成装置は、これらの画像処理装置を備え、画像形成する画像データをその画像処理装置によって画像処理するようにしたものである。
【0008】
【発明の実施の形態】
以下、この発明の画像処理装置の好ましい実施の形態及び、その画像処理装置を備えた画像読取装置及び画像形成装置の実施形態である複写機について図面を参照して説明する。
まず、図1乃至図3を用いてその複写機の全体構成について説明する。図1はその複写機の機構の概略をシステム構成の一部と共に示す模式的な断面図、図2はその複写機の駆動制御系の構成を示すブロック図、図3はその複写機のレーザ光学系に備えるレーザダイオード変調回路の構成を示す図である。
【0009】
この複写機においては、図1に示すように、複写機本体101のほぼ中央部に像担持体としてφ120mmの有機感光体(OPC)による感光体ドラム102を配置し、その周囲に、感光体ドラム102の表面を帯電する帯電チャージャ103、一様帯電された感光体ドラム102の表面上に半導体レーザ光を照射して静電潜像を形成するレーザ光学系104、静電潜像に各色トナーを供給して現像し、各色毎にトナー像を得る黒現像装置105及びイエロー(Y),マゼンタ(M),シアン(C)の3つのカラー現像装置106,107,108、感光体ドラム102上に形成された各色毎のトナー像を順次転写する中間転写ベルト109、中間転写ベルト109に転写電圧を印加するバイアスローラ110、転写後の感光体ドラム102の表面に残留するトナーを除去するクリーニング装置111、転写後の感光体ドラム102の表面に残留する電荷を除去する除電部112などを順次配列している。
【0010】
また、中間転写ベルト109の周囲には、感光体ドラム102から転写されたトナー像を、給紙トレイ125,126あるいは両面トレイ127からレジストローラ128によってタイミングを合わせて給紙される転写材に転写する電圧を印加するための転写バイアスローラ113及び、転写材に転写後に残留したトナー像をクリーニングするためのベルトクリーニング装置114を配設している。さらに、トナー像の転写後に中間転写ベルト109から剥離された転写材を搬送する搬送ベルト115の出口側端部には、トナー像を加熱及び加圧して定着させる定着装置116を配置していると共に、この定着装置116の出口部には、排紙トレイ117を取り付けている。
これらの各部によって画像形成手段であるプリンタ10を構成し、レーザ光学系104を駆動する画像信号に応じた画像を形成することができる。
【0011】
ここで、レーザ光学系104に備えるレーザダイオード(LD)174を変調する変調回路は図3に示すものであり、その書き込み周波数は、18.6MHz、1画素の走査時間は、53.8nsec(ナノ秒)である。また、レーザ光学系104はLD174を2つ備え、2ラインの同時書き込みを行う光学系であり、各LD174について図3に示した変調回路を備え、同期して転送されてくる画像データに従って各LD174を変調しながら感光体ドラム102上を主走査方向に並行して走査する。
【0012】
この変調回路において、入力する8ビットの画像データはルックアップテーブル(LUT)171でγ変換を行うことができる。そして、パルス幅変調回路(PWM)172で8ビットの画像データの上位3ビットの信号に基づいて8値のパルス幅が生成され、パワー変調回路(PM)173で下位5ビットの信号に基づいて32値のパワー変調が行われ、LD174が変調されたパルスに基づいて発光する。そして、フォトディテクタ(PD)175で発光強度をモニターし、1ドット毎に補正を行う。
【0013】
レーザ光の強度の最大値は、画像信号とは独立に、8ビット(256段階)に可変できる。そして、1画素の大きさに対し、主走査方向のビーム径(これは、静止時のビームの強度が最大値に対し、1/eに減衰するときの幅として定義される)としては、600DPIの1画素42.3μmの場合には、主走査方向50μm、副走査方向60μmが使用される。
また、レーザ光学系104の上側にはスキャナ20による画像読取手段を設け、複写機本体101の上部には原稿載置台としてのコンタクトガラス118を設け、さらにコンタクトガラス118上に読み取り対象の原稿を給送するための自動原稿給送装置(ADF)140も設けている。そして、ADF140上に載置された原稿150は、給紙コロ141によって1枚ずつ分離されて給紙され、原稿ベルト142によってコントクトガラス118上に給送される。
【0014】
一方、コンタクトガラス118の下側には、コンタクトガラス118上の原稿に走査光を照射する露光ランプ119を設け、原稿からの反射光を反射ミラー120,121,122によって結像レンズ123に導き、光電変換素子であるCCD(Charge Coupled Device)によるイメージセンサアレイ124に入射させるようにしている。露光ランプ119とミラー120は第1の走行系143に搭載され、ミラー121,122は第2の走行系144に搭載され、図で横方向に駆動されて原稿上を走査する。
【0015】
そして、イメージセンサアレイ124で原稿の画像を電気信号による画像信号に変換し、この画像信号に後述する画像処理系の画像処理を施して出力画像データを取得し、その出力画像データに基づいてレーザ光学系104中の半導体レーザのレーザ発振を制御して、感光体ドラム102上に出力画像データに基づいた静電潜像を形成させる。 なお、HDD等による記憶装置181に、画像処理を施した画像データを蓄積することもできる。記憶装置制御部182は記憶装置181の動作を制御するユニットである。
【0016】
このような複写機における駆動制御系は、図1にも簡単に示したが、図2に示す構成である。すなわち、主制御部であるシステム制御部130を設け、センサ制御部160,電源・バイアス制御部161,通信制御部162,駆動制御部163とインタフェース135によって接続している。
システム制御部130は、CPU131,ROM132,RAM133,システムコントローラ134を備え、この複写機を統括制御する制御部である。この複写機を操作するための操作部151の動作や、後述する画像処理部200の動作も、このシステム制御部130が制御する。
【0017】
通信制御部162は、この複写機をインターネットやイントラネット,ローカルエリアネットワーク(LAN)等によるネットワークに接続するためのインタフェースである。
また、センサ制御部160,電源・バイアス制御部161,駆動制御部163についてさらに具体的に記載すると、レーザ光学系104,電源回路,光学センサ,トナー濃度センサ,環境センサ,感光体表面電位センサ,トナー補給回路,中間転写ベルト駆動部を制御する制御部等である。
【0018】
このうちレーザ光学系104の制御は、レーザ光学系104のレーザ出力を調整するものであり、また電源回路の制御は、帯電チャージャ103に対して所定の帯電用放電電圧を与えると共に、現像装置105〜108に対して所定電圧の現像バイアスを与え、かつバイアスローラ110および転写バイアスローラ113に対して所定の転写電圧を与えるものである。
また、光学センサとしては、感光体ドラム102に対向させ、感光体ドラム102上のトナー付着量を検知するための光学センサ、中間転写ベルト109に対向させ、中間転写ベルト109上のトナー付着量を検知するための光学センサ、搬送ベルト115に対向させ、搬送ベルト115上のトナー付着量を検知するための光学センサを設けている。なお、実用上はこれらのいずれか1つを設ければよい。
【0019】
次に、図4乃至図7を用いて図1に示した画像処理部200を始めとする画像処理系について説明する。図4はその画像処理系の構成を示すブロック図、図5はその画像処理系のうちスキャナ側の処理部の構成を示すブロック図、図6はスキャナにおける白補正及び黒補正についての概念図、図7はスキャナにおけるサンプルホールドについて説明するための図である。
この複写機における画像処理系は、図4に示すようにIPU(イメージプロセシングユニット)による画像処理部200,スキャナ側処理部220,プリンタ側処理部230によって構成されている。なお、図4においてスキャナ側処理部220の構成は簡単に示しているが、その詳細は図5に示す通りである。
【0020】
まず、スキャナ側処理部220について説明する。
スキャナ20においては、図1に示すコンタクトガラス118上に載置された原稿150は、露光ランプ119により照射され、反射光は、図5に示すようにCCDによるイメージセンサアレイ124にRGBフィルタにより色分解されて読みとられ、増幅回路221により所定レベルに増幅される。CCDドライバ136は、このCCDを駆動するためのパルス信号を供給する。CCDドライバ136を駆動するために必要なパルス源は、パルスジェネレータ137で生成され、パルスジェネレータ137は、水晶発振子などからなるクロックジェネレータ138の発する信号を基準信号とする。
【0021】
パルスジェネレータ137は、サンプルホールド(S/H)回路222が増幅回路221によって増幅されたイメージセンサアレイ124からの信号をサンプルホールドするための必要なタイミングを供給する。そして、そのタイミングでS/H回路222によりサンプルホールドされたアナログカラー画像信号は、A/D変換回路223で8ビット信号(一例である)にデジタル化される。
黒補正回路224は、CCDのチップ間、画素間の黒レベル(光量が少ない場合の電気信号)のばらつきを低減する黒補正を行い、画像の黒部にスジやムラを生じることを防ぐ。シェーディング補正回路225は、必要であれば白レベル(光量が多い場合の電気信号)を補正する白補正を行う。白レベルは、スキャナ20の読取部で図示しない均一な白色板を読み取って得た白色データに基づき、照射系,光学系,CCDの感度ばらつきを補正する。
【0022】
この白補正及び黒補正については図6に概念図を示したが、同じ白あるいは黒の画像を読み取った場合でも、CCDの素子特性や光学系の特性等により、主走査方向の位置によって読取信号値にばらつきが生じるので、これを補正して均一なデータを得られるようにするのが白補正及び黒補正である。
シェーディング補正回路225からの信号は、インタフェース(I/F)部226を介して画像処理部200転送され、以降の処理に供される。
そして、画像処理系の他の部分についても同様であるが、スキャナ側処理部220における画像処理は、CPU131により制御され、ROM132及びRAM133に制御に必要なデータを記憶する。CPU131は、画像形成装置全体の制御を行うシステムコントローラ134とシリアルI/Fにより通信を行っている。また、図2に示した駆動制御部163を介してスキャナ20の駆動制御も行う。
【0023】
ところで、増幅回路221の増幅量は、ある特定の原稿濃度に対して、A/D変換回路223の出力値が所望の値になるように決定する。一例として、通常のコピー時に原稿濃度が、0.05(反射率で0.891)のものを8ビット信号値で240値として得られるようにする。一方、シェーディング補正を行う場合には、増幅率を下げてシェーディング補正の感度を上げる。その理由は、通常のコピー時の増幅率では、反射光が多い場合には、8ビット信号で255値を超える大きさの画像信号となると、255値に飽和してしまい、シェーディング補正に誤差が生じるためである。
【0024】
そして、増幅回路221で増幅された画像の読み取り信号がS/H回路222でサンプルホールドされる際には、図7に示すように、所定のサンプルホールド時間Tsでアナログ信号がサンプルホールドされて、A/D変換回路223に信号が送られる。なお、図7で横軸は増幅後のアナログ画像信号がS/H回路222を通過する時間、縦軸は増幅後のアナログ信号の大きさを示す。また、図に示した信号は前述した白色板を読み取った場合の画像信号で、実線81は通常のコピー時のように増幅後の画像信号がA/D変換後に240値になるように増幅した例、破線82はシェーディング補正を行う場合の例として、増幅後の画像信号がA/D変換後に180値になるように増幅した例を示すものである。
【0025】
次に、画像処理部200について説明する。画像処理部200は、画像処理手段であり、図4に示したように、I/F部201,画像メモリ202,スキャナγ変換回路203,画像分離回路204,MTFフィルタ回路205,色変換UCR(下色除去)処理回路206,変倍処理回路207,画像加工(クリエイト)回路208,画像処理用プリンタγ補正回路209,階調処理部210,色相判定回路211,エリア処理部212,パターン生成回路213を備えている。
【0026】
そして、I/F部201によってスキャナ側処理部220から受信した8ビットの画像データは、画像メモリ202に記憶され、ここから順次読み出されて各回路による画像処理に供される。ここで、スキャナγ変換回路203はスキャナ20によって得られた反射率データを8ビットの明度データに変換する回路である。そして、画像分離回路204は、文字部と写真部の判定及び有彩色・無彩色の判定を行う回路であり、パターン生成回路213は画像処理に用いる階調パターンを発生させる回路である。そして、階調処理部210による階調処理後の画像データはプリンタ側処理部230に転送される。この処理の詳細については後述する。
【0027】
一方、エリア処理部212では、現在処理を行っている画像データが原稿内のどの処理領域に属するかを区別するための領域信号を発生させる。そして、この回路で発生された領域信号により、後段の各画像処理回路及び階調処理部210で用いるパラメータを切り替えたり設定したりする。
ここで、処理領域とは、手動あるいは自動によって、画像の種類に応じて施す階調処理を含む画像処理を変更するために設定したものである。そして、上記の領域信号により、文字,銀塩写真(印画紙),印刷原稿,インクジェット出力原稿,蛍光ペン,地図,熱転写出力原稿などの、スキャナ20で読み取る原稿の種類に応じて、最適な色補正係数、空間フィルタ処理のパラメータ、階調処理の方式やパラメータなどの画像処理パラメータを処理領域毎に設定することができる。
この点がこの発明の特徴の一つであり、この処理領域の設定及びパラメータの設定については後に詳述する。
【0028】
なお、画像処理部200がこの発明の画像処理装置であるが、ここでは複写機に搭載しているため、複写機側のCPU131によってその動作を制御している。画像処理装置として単独で用いる場合には、専用の制御手段を設ければ良い。
【0029】
次に、プリンタ側処理部230について説明する。プリンタ側処理部230は、図4に示すように、I/Fセレクタ231,画像形成用プリンタγ補正回路232,パターン生成回路233を備えている。
I/Fセレクタ231は画像データの受信及び送信先を選択するセレクタであり、プリンタコントローラ139と接続されている。そして、コピー動作を行う場合には画像処理部200の階調処理部210からのデータを画像形成用プリンタγ補正回路232に出力するが、システムコントローラ134とも接続され、ネットワークを介して接続されるPC(パーソナルコンピュータ)240等からプリンタコントローラ139を介して送信されてくる画像データをプリンタ10側に送信することもできる。後者の場合にはプリンタ側処理部230とプリンタ10はスキャナ20や画像処理部200とは独立に機能し、この複写機はプリンタとして動作する。また、スキャナ20で読み込んだ画像データを外部装置に対して出力することもできる。
【0030】
画像形成用プリンタγ(プロセス・コントロールγ)補正回路232は、I/Fセレクタ231からの画像信号を階調変換テーブルで変換し、プリンタ10に備える図3に示したLD変調回路に出力する。パターン生成回路233は、プリンタ側処理部230で用いる階調パターンを生成する回路である。
【0031】
次に、図8乃至図11を用いて上述した処理領域の設定方法について説明する。図8はこの複写機の操作部の全体構成を示す図、図9はその操作部に備えた液晶ディスプレイの表示例を示す図、図10はその別の例を示す図、図11はそのさらに別の例を示す図である。
この複写機の操作部151は、図8に示すようにコンタクトガラス118の脇に設けられ、タッチパネルを積層した液晶ディスプレイ(LCD)152と、テンキー等によるキー群153とによって構成されている。そして、主に機能の設定と表示に用いるLCDの基本状態での表示は図9に示すものである。
【0032】
そして、この状態からLCD153に表示されているエリア加工キー154の部分にタッチすると、図10に示す画面に表示が切り換わる。そして、コンタクトガラス118上に載置された原稿をスキャナ20によってスキャンし、画像表示部155にその画像を縮小して表示する。この画面で、タッチペン等によって処理領域を設定することができる。図10では、左側の絵の部分の破線で囲んだ領域を処理領域として設定しようとしている例を示している。
【0033】
この状態でエリア編集キー156をタッチすると、図11に示す画面に表示が切り換わる。この画面は、図10に示した画面で指定した処理領域内における画像処理の内容を設定する画面であり、「クリエイト」,「画質」,「カラー加工」,「カラーバランス」の各タブにタッチすることにより、これらの調整と設定を行う画面を表示させることができる。
ここでは、「画質」の設定を行う画面を表示した例を示している。「シャープ/ソフト」ではコピー画像のシャープネスの調整を行い、「地肌調整」では地肌部の濃度の調整を行い、「UCR調整」ではUCR処理の入れ方の調整を行う。そして、「階調処理」では、階調処理の内容を設定する。ここでは、文字原稿に適した文字寄りから写真原稿に適した写真寄りまで5段階の設定が可能であり、それぞれの処理内容及びその特性は表1に示す通りである。
【0034】
【表1】

Figure 2004120021
【0035】
なお、ここでは誤差拡散処理,ディザ処理,これらの組み合わせ、あるいは無処理から選択するようにしているが、選択範囲はこれに限られるものではない。また、表1に示したように段階的な選択ではなく、文字,銀塩写真,印刷原稿,インクジェット出力原稿,蛍光ペン,地図,熱転写出力原稿といった原稿の種類毎に適した階調処理内容を用意し、ここから選択させるようにしてもよい。処理の内容については後述する。
【0036】
そして、これらの設定を行って「閉じる」キーにタッチすると、図10の画面でその設定がなされる。指定した処理領域に対して階調処理を含む画像処理の内容が設定される。そして、その後コピー動作を行う際、図4に示した画像処理系の各回路にCPU131あるいはシステムコントローラ134によって処理領域毎にその設定に応じたパラメータが設定され、ユーザの指定に従った画像処理を行って画像を出力する。なお、処理領域を特に設定しなかった部分については、その部分全体で1つの処理領域を構成するものとする。
【0037】
次に、図12及び図13を用いて図4に示したMTFフィルタ回路205における適応型エッジ強調処理について説明する。図12はそのフィルタ補正回路の構成を示すブロック図、図13はそのMTFフィルタ回路で使用する適応エッジ強調フィルタテーブルの内容を示す図である。
MTFフィルタ回路205では、シャープな画像やソフトな画像などの使用者の好みに応じて、エッジ強調や平滑化等、画像信号の周波数特性を変更する処理や、画像信号のエッジ度に応じたエッジ強調処理(適応エッジ強調処理)を行うことができる。例えば、文字画像にはエッジ強調を行い、網点画像にはエッジ強調を行わないという所謂適応エッジ強調をR、G、B信号それぞれに対して行うことができる。そしてここでは、処理領域毎に設定されたシャープネスの設定に従った処理を行う。
【0038】
MTFフィルタ回路205の構成は図12に示す通りであり、平滑化フィルタ回路251,254,ラプラシアンフィルタ回路252,エッジ量検出フィルタ回路253,テーブル変換回路255,乗算器256,加算器257を備えている。
このようなMTFフィルタ回路205において、スキャナγ変換回路203によって反射率リニアから明度リニアに変換された画像信号に対し、まず平滑化フィルタ回路251によって平滑化を行う。この平滑化には、一例として、表2に示す係数を使用する。そして、次段の3×3のラプラシアンフィルタ回路252によって画像データの微分成分を抽出する。ラプラシアンフィルタの具体例は、表3に示すとおりである。
【0039】
【表2】
Figure 2004120021
【0040】
【表3】
Figure 2004120021
【0041】
また、スキャナγ変換回路203によるγ変換をされない画像信号(所定ビット数の成分のみでもよい)について、エッジ量検出フィルタ回路253により、エッジ検出がなされる。エッジ検出フィルタとしては例えば表4乃至表7に示したものを用い、これらにより得られたエッジ量のうち、最大値をエッジ度として後段で使用する。
【0042】
【表4】
Figure 2004120021
【0043】
【表5】
Figure 2004120021
【0044】
【表6】
Figure 2004120021
【0045】
【表7】
Figure 2004120021
【0046】
エッジ度は、必要に応じて後段の平滑化フィルタ回路254により平滑化される。
これにより、スキャナ20における偶数画素と奇数画素の感度差の影響を軽減する。この平滑化には、例えば表8に示す係数を使用する。
【0047】
【表8】
Figure 2004120021
【0048】
そして、テーブル変換回路255により、求められたエッジ度をテーブル変換し、このテーブルの値により、線や点の濃さ(コントラスト、濃度を含む)および網点部の滑らかさを指定する。テーブルの内容は、例えば図13に実線83で示すものである。エッジ度は、白地に黒い線や点などで最も大きくなり、印刷の細かい網点や、銀塩写真や熱転写原稿などのように画素の境界が滑らかなものになるほど小さくなる。
そして、テーブル変換回路255によって変換されたエッジ度(画像信号C)とラプラシアンフィルタ回路252の出力値(画像信号B)との積(画像信号D)が、平滑化フィルタ回路251による平滑処理後の画像信号(画像信号A)に加算され、画像信号Eとして後段の画像処理回路に伝達される。
【0049】
次に、図4に示した色変換UCR処理回路206から画像処理用プリンタγ補正回路209における画像処理について説明する。
まず、色変換UCR処理回路206では、入力系の色分解特性と出力系の色材の分光特性の違いを補正し、忠実な色再現に必要なYMCの色材の量を計算する色補正処理部と、YMCの3色が重なる部分をBk(ブラック)に置き換えるためのUCR処理部からなる。色補正処理は数1のようなマトリクス演算をすることにより実現できる。
【0050】
【数1】
Figure 2004120021
【0051】
この式において、B,G,Rは、B,G,Rのデータの補数を示す。マトリクス係数aijは入力系と出力系(色材)の分光特性によって決まる。ここでは、1次マスキング方程式を例に挙げたが、B,BGのような2次項、あるいはさらに高次の項を用いることにより、より精度良く色補正することができる。また、色相によって演算式を変えたり、ノイゲバウアー方程式を用いるようにしても良い。何れの方法にしても、Y,M,CはB,G,Rの補数(またはB,G,Rそのものでもよい)の値から求めることができる。
一方、UCR処理は数2を用いて演算することにより行うことができる。
【0052】
【数2】
Figure 2004120021
【0053】
この式において、αはUCR処理の量を決める係数で、α=1の時100%UCR処理となる。αは一定値でも良いが、例えば、高濃度部ではαを1に近く、ハイライト部(低画像濃度部)では0に近くすることにより、ハイライト部での画像を滑らかにすることができる。
ここでは、上記の色補正係数αを、RGBYMCの6色相をそれぞれ更に2分割した12色相に更に黒および白を加えた14の色相毎に異ならせるようにしている。すなわち、色相判定回路211が読み取った画像データがどの色相に判別するかを判定し、その判定した結果に基づいて各色相毎の色補正係数αを選択するようにしている。
【0054】
次の変倍処理回路207では、縦横変倍を行い、画像加工(クリエイト)回路208ではリピート処理などを行う。
そして、画像処理用プリンタγ補正回路209では、文字、写真などの画質モードに応じて、画像信号の補正を行う。また、地肌飛ばしなども同時に行うこともできる。画像処理用プリンタγ補正回路209は、エリア処理部212が発生した領域信号に対応して切り替え可能な複数本(一例として10本)の階調変換テーブルを有する。そして、文字、銀塩写真(印画紙)、印刷原稿、インクジェット、蛍光ペン、地図、熱転写原稿など、それぞれの領域における原稿に最適な階調変換テーブルを用意しておき、これらの中から適当なものを選択することができるようにしている。
【0055】
次に、図14乃至図19を用いて、図4に示した階調処理部210の構成及びその階調処理部で誤差拡散処理による階調処理を行う場合の動作について説明する。図14は階調処理部に設けたSIMD型の画像処理プロセッサの概略構成を示す説明図、図15は階調処理部のハードウェア構成を示す図、図16はその一部をより詳しく示す図、図17は図16に示した逐次型画像データ処理部の構成を示す図、図18は階調処理部で行う誤差拡散処理における各画素の取り扱いについて説明するための図、図19はその誤差拡散処理において用いるIIRフィルタシステムについて説明するための図である。
【0056】
この複写機における階調処理部210は、複数のPE(プロセッサエレメント)によって構成され、複数のデータに対して単一の命令を並列に実行させるSIMD(Single Instruction stream Multiple Data stream)型の画像処理プロセッサ(以下「SIMD型プロセッサ」という)を備えている。
このSIMD型プロセッサの概略構成は図14に示すものであり、各PEは図の縦一列分の要素で構成される。すなわち、各PEは、データを格納するレジスタ(Reg)261,他のPEのレジスタをアクセスするためのマルチプレクサ(MUX)262,バレルシフタ(Shift Expand)263,論理演算器(ALU)264、論理演算結果を格納するアキュムレータ(A)265,アキュムレータの内容を一時的に退避させるテンポラリレジスタ(F)266から構成される。なお、通常用いるSIMD型プロセッサは、ここに示したものよりはるかに多くのPEを備えたものである。
【0057】
各レジスタ261は入力レジスタとして機能し、アドレスバスおよびデータバス(リード線およびワード線)に接続されており、処理を規定する命令コードや処理の対象となるデータを格納する。そして、レジスタ261の内容は論理演算器264に入力され、演算処理結果はアキュムレータ265に格納され、結果をPE外部に取り出すために、テンポラリレジスタ266に一旦退避させる。その後テンポラリレジスタ266の内容を取り出すことにより、対象データに対する処理結果が得られる。ここで、アキュムレータ265とテンポラリレジスタ266が出力レジスタとして機能する。
【0058】
各PEのマルチプレクサ262,バレルシフタ263及び論理演算器264は、それぞれ与えられたプログラムに従って動作するプログラマブル演算器を構成し、ここでは後述するプログラムRAMにから読み出され、レジスタ261に格納された画像処理プログラムに従って動作させる。そして、画像処理プログラムの命令コードは各PEに同一内容で与え、処理の対象データとしてはPEごとに異なるものを与え、隣接するPEのレジスタ261の内容をマルチプレクサ262を用いて参照することで、演算結果は並列処理され、各アキュムレータ265に出力される。
【0059】
たとえば、画像データ1ラインの内容を各画素ごとにPEに配置し、同一のプログラムで演算処理させれば、並列的な画像処理が可能であり、1画素づつ逐次処理するよりも短時間で1ライン分の処理結果が得られる。ここで、空間フィルタ処理、シェーディング補正処理ではPEごとの命令コードを演算式そのものとすることができ、PE全てに共通に処理を実施させることができるので、これらの処理についてもSIMD型プロセッサを用いるようにしてもよい。
【0060】
このようなSIMD型プロセッサを備えた階調処理部210の構成は、図15に示すものである。
この図に示す通り、階調処理部210は、外部とのデータ入出力に関し、複数個の入出力ポート241を備え、それぞれデータの入力および出力を任意に設定することができる。また、入出力ポート241と接続するように内部にバススイッチ/ローカルメモリ群242を備え、使用するメモリ領域、データバスの経路をメモリー制御部243において制御する。そして、入力された画像データおよび出力する画像データには、バススイッチ/ローカルメモリ群242をバッファメモリとして割り当て、それぞれに格納し、外部との入出力を制御する。
【0061】
また、バススイッチ/ローカルメモリ群242に格納された画像データはプロセッサアレー部244に転送して各種階調処理を行い、出力結果(処理された画像データ)を再度バススイッチ/ローカルメモリ群242に格納する。
ここで、プロセッサアレー部244は上述したSIMD型プロセッサと、一方向に配列された複数の画素で構成される複数の画素ラインとして画像を処理する逐次型画像データ処理部とを備えている。そして、SIMD型プロセッサにおける処理手順を記述するプログラム、処理のためのパラメータ等については、プログラムRAM245およびデータRAM246との間でやりとりがおこなわれる。このプログラムRAM245がプログラムメモリ部である。
【0062】
また、プログラムRAM245及びデータRAM246の内容は、シリアルI/F248を通じてプロセスコントローラとして機能するCPU131からホストバッファ247にダウンロードされ、ここから各RAMに転送される。また、CPU131はデータRAM246の内容を読み出して処理の経過の監視を行う。そして、プロセッサアレー部244における処理の内容を変えたり、システムで要求される処理形態が変更になったりする場合は、プロセッサアレー部244が参照するプログラムRAM245およびデータRAM246の内容を更新して対応する。
特殊処理部249,250は、プロセッサアレー部244以外で行うべき特殊な処理を行う処理部である。
【0063】
このような階調処理部210のうち、入出力ポート241、バススイッチ/ローカルメモリ群242,メモリ制御部243,プロセッサアレー部244についてさらに詳しく示したものが図16である。
この図においては、SIMD型プロセッサ306と、SIMD型プロセッサ306に接続された2つの逐次型画像データ処理部307とがプロセッサアレー部244に該当し、階調処理部210に画像データおよび制御信号を入力する5つのデータ入出力用バス301a〜301eが入出力ポート241に、データ入出力用バス301a〜301eをスイッチングしてSIMD型プロセッサ306に入力する画像データおよび制御信号を切り替えるとともに、接続されたバスのバス幅を切り替えるバススイッチ302a〜302cと、入力した画像データの処理に使用されるデータを記憶する20個のRAM303とがバススイッチ/ローカルメモリ群242に該当し、各々対応するRAM303を制御するメモリコントローラ305a,305bと、メモリコントローラ305aまたは305bの制御にしたがってRAM303をスイッチングする4つのメモリスイッチ304a〜304dとがメモリ制御部243に該当する。
【0064】
なおここでは、バススイッチ302a〜302cによって制御されるメモリコントローラを符号305bで示し、バススイッチ302a〜302cの制御を受けないメモリコントローラを符号305aで示して区別した。
また、SIMD型プロセッサ306は、R0〜R23の24個のレジスタを備えている。そして、R0〜R23の各々は、SIMD型プロセッサ306にあるPEとメモリコントローラ305a,305bとのデータインターフェースとして機能する。
【0065】
バススイッチ302aは、レジスタR0〜R3に接続されたメモリコントローラ305aを切り替えてSIMD型プロセッサ306に制御信号を入力し、バススイッチ302bは、レジスタR4,R5に接続されたメモリコントローラ305aを切り替えてSIMD型プロセッサ306に制御信号を入力する。そして、バススイッチ302cは、レジスタR6〜R9に接続されたメモリコントローラ305aを切り替えてSIMD型プロセッサ306に制御信号を入力する。
【0066】
またメモリスイッチ304aは、レジスタR0〜R5に接続されたメモリコントローラ305aを使用してSIMD型プロセッサ306内部のPEとRAM303との間で画像データを授受している。メモリスイッチ304bは、レジスタR6,R7に接続されたメモリコントローラ305aを使用してSIMD型プロセッサ306内部のPEとRAM303との間で画像データを授受している。また、メモリスイッチ304cは、レジスタR8〜R13に接続されたメモリコントローラ305aまたは305bを使用してSIMD型プロセッサ306内部のPEとRAM303との間で画像データを授受している。
【0067】
そして、メモリスイッチ304dは、レジスタR14〜R19に接続されたメモリコントローラ305bを使用してSIMD型画像処理プロセッサ306内部のPEとRAM303との間で画像データを授受している。
また、図示しない画像データ制御部は、画像データと共に、画像データを処理するための制御信号をデータ入出力用バス301a〜301eを介してバススイッチ302a〜302cに入力する。そして、バススイッチ302a〜302cは、制御信号に基づいて接続されているバスのバス幅を切り替える。また、間接的にあるいは直接接続されたメモリコントローラ305aを制御し、画像データの処理に必要なデータをRAM303から取り出すようにメモリスイッチ304a〜304cをスイッチングさせる。
【0068】
このような階調処理部210には、図示しない画像データ制御部の制御により、画像処理用プリンタγ処理回路209による処理後の画像データを入力する。この画像データに対して誤差拡散処理を行う場合、図18に斜線で示した注目画素の誤差拡散処理に当たり、注目画素に対して周囲の画素の影響を、同一の画素ラインに含まれる画素、異なる画素ラインに含まれる画素の両方について考慮する。そして、注目画素とは異なる画素ラインa,b,cに含まれる画素との間の誤差拡散処理をSIMD型プロセッサ306で行い、注目画素と同一の画素ラインdに含まれる画素(図中に丸付き数字を付して示した画素)との間の誤差拡散処理を逐次型画像データ処理部307で行う。
【0069】
また、誤差拡散処理においては、注目画素が含まれる画素ライン(現画素ライン)よりも前に処理された画素ライン(前画素ライン)に含まれる画素の画素データと所定の閾値との差である誤差データと、注目画素の画素データとを加算する。そしてこの加算について、SIMD型プロセッサ306を用い、複数の注目画素について並列的に実行する。
このため、SIMD型プロセッサ306に接続されているRAM303のいずれかには、SIMD型画像処理プロセッサ306で一括して処理される画素の数に対応する複数の誤差データが保存されている。ここでは、SIMD型プロセッサ306において1画素ライン分の加算処理を一括して行うものとし、RAM303に1画素ライン分の誤差データを保存するものとした。
【0070】
SIMD型プロセッサ306で一括して処理された1画素ライン分の画像データと誤差データとの加算値は、レジスタR20,R21,R22,R23のうち少なくとも2つから逐次型画像データ処理部307に一つずつ出力される。また、以上の処理に使用される誤差データは、後述する逐次型画像データ処理部307によって算出され、SIMD型プロセッサ306に入力されるものである。
一方、逐次型画像データ処理部307は、コンピュータプログラムの制御によらず稼動するハードウェアである。なお、図15では、逐次型画像データ処理部307をSIMD型プロセッサ306に2個接続するものとしているが、この複写機ではこのうちのいずれか1個を逐次おこなう誤差拡散処理専用に使用するものとする。
【0071】
逐次型画像データ処理部307の構成は図17に示すものであり、誤差データ算出部311と、誤差データ算出部311が算出した誤差データから一つを選択するマルチプレクサ317と、マルチプレクサ317によって選択された誤差データを加工してSIMD型プロセッサ306から入力したデータに加算する誤差データ加算部318とを備えている。
また、誤差データの選択に必要な信号をマルチプレクサ317に入力する論理回路316と、SIMD型プロセッサ306に対し、あらかじめ設定されている誤差拡散のモード(2値誤差拡散、3値誤差拡散、4値誤差拡散)のうちのいずれによって誤差拡散処理を行うかや、誤差拡散処理に使用される演算係数等を設定できるハードウェアレジスタ群315を備えている。またさらに、ブルーノイズ信号発生器319を備え、誤差拡散処理にブルーノイズを使用するか否かをもハードウェアレジスタ群315の設定によって選択可能に構成されている。
【0072】
ここで、誤差データ算出部311は、現画素ラインに含まれる画素の画素データと所定の閾値との差である誤差データを算出する構成であり、3つの量子化基準値保存部313a〜313cと、3つのコンパレータ314a〜314cと、3つの閾値テーブル312a〜312cとを備えている。そしてここでは、それぞれ同じ沿え字のユニットが1組となって動作する。
【0073】
ところで、逐次型画像データ処理部307は、画像データと誤差データとの加算値(加算値データ)をSIMD型プロセッサ306から入力するが、この画像データは、今回処理される注目画素の画像データであり、誤差データは、注目画素以前に処理された画素の誤差データである。
入力した加算値データは、以前に処理された画素の誤差データに基づいて誤差データ加算部318が算出した値を加算器321で加算され、乗算器322によって演算誤差低減のために16または32で除算される。さらに、除算された加算値データは、誤差データ算出部311の3つのコンパレータ314a〜314cのすべてに入力する。なお、誤差データ加算部318が以前に処理された画素の誤差データに基づいて算出した値については、後述するものとする。
【0074】
コンパレータ314a〜314cは、それぞれ接続された閾値テーブル312a〜312cから閾値を入力する。そして、入力した加算値データから閾値を差し引き、画像データを作成する。また、加算値データからそれぞれの量子化基準値保存部313a〜313cに保存されている量子化基準値を減算器323a〜cによって差し引いた値を誤差データとしてマルチプレクサ317に出力する。この結果、マルチプレクサ317には、合計3つの誤差データが同時に入力することになる。
なお、誤差拡散処理にブルーノイズを使用する場合には、ブルーノイズ信号発生器319がブルーノイズデータを比較的高周期で乗算器324によってオン、オフしてブルーノイズを発生する。閾値は、コンパレータ314a〜314cに入力する以前に減算器326a〜326cによってブルーノイズから差し引かれる。ブルーノイズを用いた処理により、閾値に適当なばらつきを持たせて画像が単調になることを防ぐことができる。
【0075】
また、閾値テーブル312a〜312cには、それぞれ異なる値の閾値が保存されている。ここでは、閾値テーブル312a〜312cのうち、閾値テーブル312aが最も大きい閾値を保存し、次いで閾値テーブル312b、閾値テーブル312cの順序で保存される閾値が小さくなるものとした。また、量子化標準値保存部313a〜313cは、接続された閾値テーブル312a〜312cに応じて保存する量子化基準値が設定されている。たとえば、画像データが0〜255の256値で表される場合、量子化基準値保存部313aには255が、また、量子化基準値保存部313bには170が、量子化基準値保存部313cには85が保存される。
【0076】
また、コンパレータ314a〜314cは、作成した画像データを論理回路316に出力する。論理回路316は、このうちから注目画素の画像データを選択してマルチプレクサ317に入力する。マルチプレクサ317は、入力した画像データに応じて3つの誤差データのうちのいずれかを注目画素の誤差データとして選択する。選択された誤差データは、SIMD型プロセッサ306のPEを介してRAM303のいずれかに入力する。
さらに、論理回路316が出力した画像データは、マルチプレクサ317に入力する以前に分岐され、SIMD型プロセッサ306のPEのいずれかに入力する。ここでは、画像データを上位ビット、下位ビットの2ビットで表されるデータとした。このため、この処理では、コンパレータ314aは使用されていない。なお、以降、注目画素の画像データを画素データというものとする。
【0077】
また、選択された誤差データは、誤差データ加算部318にも入力する。誤差データ加算部318は、図18に示した▲1▼、▲2▼、▲3▼を付して示した画素についての誤差データ、つまり注目画素に対して3つ前に処理された画素の誤差データ(第1の誤差データ)と、2つ前に処理された画素の誤差データ(第2の誤差データ)と、一つ前に処理された画素の誤差データ(第3の誤差データ)とを保存している。そして、第1の誤差データに演算係数である0または1を、第2の誤差データに演算係数である1または2を、第3の誤差データに演算係数である2または4をそれぞれ乗算器327a〜327cで乗じる。そして、3つの乗算値を加算器328a,328bで足し合わせ、この値(重み付け誤差データ)をSIMD型プロセッサ306からつぎに入力した加算値データと加算器321によって足し合わせる。この結果、注目画素に近い位置にある画素ほど注目画素の誤差拡散処理に大きい影響を及ぼすことになり、画素の誤差を適切に拡散し、元画像のイメージに近い画像を形成することができる。
【0078】
なお、以上述べた逐次型画像データ処理部307における画像データの作成は、一般的にIIR(Infinite Impulse Response:無限長インパルス応答)型フィルタシステムと呼ばれる構成を用いておこなわれている。IIR型フィルタシステムで用いられる演算式は、数3に示すものであり、回路で表現すると図19に示すものである。
【0079】
【数3】
Figure 2004120021
【0080】
数3および図19から明らかなように、演算後の濃度ODは、一つ前の画素データを用いた演算結果ODn−1と現画素データIDの値から求められる。一般的にIIR型フィルタシステムは、現画素より前に処理された画素を用いた演算結果を使用して現画素についての演算を行う、いわゆる逐次変換を行うための専用の回路である。そして、ここで用いている階調処理部210の逐次型画像データ処理部307は、図19に示したような逐次変換の全般に使用することができる。
【0081】
次に、図20乃至図25を用いて、階調処理部210がディザ処理と誤差分散処理の組み合わせを行う場合の動作について説明する。図20はディザ処理と誤差分散処理の組み合わせを行う場合の階調処理部の機能構成を示す図、図21はその処理に用いる誤差拡散マトリクスの例を示す図、図22はその処理に用いる5×5微分フィルタの例を示す図、図23はその処理に用いる4×4ディザ閾値マトリクスの例を示す図、図24はその別の例を示す図、図25は図23に示したディザ閾値マトリクスを用いた場合のスクリーン角とラインの成長方向を示す図である。
【0082】
この複写機においては、表1に示したように、階調処理としてディザ処理と誤差分散処理の組み合わせ(以下「複合処理」という)を選択することも可能である。このような階調処理を行う場合、階調処理部210は、図20に示す各部の機能を果たす。この場合もハードウェア構成は図15及び図16に示したものと同様であり、プログラムRAM245に適当な画像処理プログラムを記憶させ、SIMD型プロセッサ306にそのプログラムに従った処理を行わせることにより、階調処理部210が全体として図20に示す各部の機能を果たす。
【0083】
複合処理を行う場合、階調処理部210は多階調の画像データを受け取り、その量子化データを出力する。そして、量子化処理部330,画像特徴抽出部340,量子化閾値発生部350,量子化処理部330と画像特徴抽出部340とのタイミング調整のための信号遅延部325の機能を果たす。この信号遅延部325の機能は必要に応じて設けられるものであり、例えば所要ライン数のラインメモリの機能である。
入力する画像データは、スキャナ20によって読み取られた、例えば600dpiの8ビット/画素のデータである。そして、この画像データは、中間調を滑らかに表現するために平滑化フィルタを含むMTFフィルタ回路205を通してから入力する。通常、平滑化フィルタでは150Lpi(ライン・パー・インチ)程度の画像周期から平滑化されるため、グラビア印刷などで用いられる175Lpi以上の高線数網点画像の周期性成分は入力される画像データには残っていない。
【0084】
量子化処理部330は、量子化閾値発生部350で生成された量子化閾値を用いて多階調の画像データを誤差拡散法により量子化するものであり、ここでは図示のように、量子化部(比較部)331,誤差計算部332,誤差記憶部333,誤差拡散マトリクス部334,誤差加算部335からなる。そして、入力される画像データは、信号遅延部325によってタイミングを調整されて誤差加算部335に入力し、誤差加算部335によって拡散誤差を加算された画像データは量子化部331に入力する。量子化部331は、入力した画像データを量子化閾値発生部350より与えられる量子化閾値を用いて量子化し、量子化結果を量子化された処理済みの画像データとして出力する。
【0085】
この処理について、ディザ処理と2ビットの誤差拡散処理の組み合わせの場合を例にさらに説明する。
この場合、量子化閾値発生部350で量子化閾値th1〜th3を生成する。3つの量子化しきい値の関係は、th1≦th2≦th3とする。
そして、量子化部331は入力した画像データをth1〜th3と比較し、th3より大きい場合に「3」、th3以下でth2より大きい場合に「2」、th2以下でth1より大きい場合に「1」、th1以下の場合に「0」の値をとる2ビットの量子化データを出力する。
【0086】
誤差計算部332は量子化部331の量子化誤差を算出するものである。ここでは8ビットの画像データを扱っているため、この誤差計算においては、例えば、量子化データの「3」を255(10進)、「2」を192(10進)、「1」を128(10進)、「0」を0(10進)として扱う。算出された量子化誤差は誤差記憶部333に一時的に記憶される。この誤差記憶部333は、注目画素の周辺の処理済み画素に関する量子化誤差を保存するためのものである。ここでは、次に述べるように量子化誤差を2ライン先の周辺画素まで拡散させるため、誤差記憶部333には例えば3ラインのラインメモリの機能を設ける。
【0087】
誤差拡散マトリクス部334は、誤差記憶部333に記憶されている量子化誤差データから次の注目画素に加算する拡散誤差を計算するものである。ここでは、誤差拡散マトリクス部334は、図21に示すような副走査方向が3画素、主走査方向が5画素のサイズの誤差拡散マトリクスを用いて拡散誤差データを算出する。図21において、*印は次の注目画素の位置に相当し、a,b,…,k,lは周辺の12個の処理済み画素の位置に対応した係数(総和は32)である。また、誤差拡散マトリクス部334では、それら12個の処理済み画素に対する量子化誤差と対応した係数a〜lとの積和を32で除した値を、次の注目画素に対する拡散誤差として誤差加算部335に与える。
【0088】
また、画像特徴抽出部340は、エッジ検出部341と領域拡張処理部342とからなる。エッジ検出部341は、入力する画像データのエッジ検出を行うもので、本実施例ではレベル0(非エッジ)からレベル3(エッジ度最大)までのエッジレベルを表す2ビットのエッジデータを出力する。より具体的には、例えば図22に示す4種類の5×5の微分フィルタを用いて、主走査方向、副走査方向、主走査方向から±45゜傾いた方向の4方向についてエッジ量を検出し、その中で絶対値が最大のエッジ量を選び、そのエッジ量の絶対値をレベル0からレベル3までの4レベルのエッジレベルに量子化して出力する。
【0089】
領域拡張処理部342は、エッジ検出部341により検出されたエッジに対し7画素幅の領域拡張処理を行うもので、エッジ検出部341から出力されたエッジデータを参照し、注目画素の周囲の7×7画素の領域(主走査方向の前後3画素、副走査方向の前後3画素の範囲)の中で最小のエッジレベル(最大のエッジ度合)を注目画素のエッジレベルとして、それを4ビットのエッジデータとして出力する。このエッジデータは、量子化閾値発生部350に与えられる。
量子化閾値発生部350は、領域拡張処理部342から出力されたエッジデータで表されるエッジレベルに応じた振動幅で、画像空間上で周期的に振動する量子化閾値を生成し、それを量子化処理部330の量子化部331に与えるもので、ディザ閾値発生部351と、このディザ閾値発生部351の出力値に、エッジデータで示されるエッジレベルに対応した係数(0〜3)を掛ける乗算部352、乗算部352の出力値に固定値を加算する加算部353から構成される。
【0090】
またここでは、ディザ閾値発生部351は、図23あるいは図24に示すような1段階目から6段階目までの閾値を小さいものから順に(1段階目が最小、6段階目が最大)ラインを成長させるように配置した4×4のディザ閾値マトリクスを用い、画像空間上で周期的に1段階目から6段階目まで振動するディザ閾値を出力する。ここで、同じ値の画素は同じ閾値を使用している。またディザ閾値周期は、ここでは600dpiの画像形成の場合には168Lpiに相当する。このようなディザ閾値発生部351は、上記ディザ閾値マトリクスを格納したメモリと、画像データの主,副走査のタイミング信号をカウントして、このメモリの読み出しアドレスを発生するカウンタなどの機能によって容易に実現できる。
【0091】
ここで、図23のディザ閾値マトリクスにおいて、1段階目の閾値を設定する画素を主走査方向に並べているので、濃度がその閾値を越えると主走査方向に2画素並んだドットが最初に形成されることになる。このようにすると、安定したドット形成がなされるので、エネルギーが少ない書込みレベルである1値を2画素並べている。この場合のスクリーン角とラインの成長方向を図25に示した。ラインの初期の成長方向は、図中に実線の矢印で「ラインが成長する方向1」として示した。
乗算部352は、画像特徴抽出部340からのエッジデータで示されるエッジレベルがレベル0(非エッジ)の時に係数3を、レベル1の時に係数2を、レベル2の時に係数1を、レベル3(エッジ度最大)の時に係数0を、ディザ閾値発生部351の出力値に乗じる。
【0092】
以上のような機能を果たす階調処理部210によって処理され量子化された画像データによってプリンタ10を駆動すれば、文字、画像の変化点や比較的低線数の網点画像部などは解像性が良く、写真、画像の変化の少ない部分、高線数の網点画像などは滑らかで安定性が良く、それらの領域が違和感なく整合した高品位な画像を形成可能である。例えば、画像中の文字や線画のエッジ部のような変化が急峻でエッジレベルがレベル3(エッジ度最大)となる部分では、量子化閾値発生部350で生成される量子化閾値は固定され、量子化処理部330で固定閾値を用いた純粋な誤差拡散法による量子化処理が行われるため、解像性の良い画像を形成できる。
【0093】
次に、図26及び図27を用いて、階調処理部210がディザ処理を行う場合の動作について説明する。図26は階調処理部によるディザ処理について説明するための概念図、図27はそのディザ処理の手順を示すフローチャートである。この複写機においては、表1に示したように、階調処理としてディザ処理を選択することも可能である。そして、主走査m画素×副走査n画素(m,nは正の整数)の閾値マトリクスを用いたディザ処理を選択することが可能である。また、m及びnの最大値は、使用するハードウェアもしくは内蔵メモリによって決まり、ここでは最大8値に量子化するための主走査方向192画素×副走査方向42画素までの閾値マトリクスを作成可能であるとする。
【0094】
そして、このディザ閾値マトリクスは、階調処理部210の図16に示したRAM303に記憶させ、メモリコントローラ305によって8値に量子化するための7段階分の閾値パラメータをそれぞれレジスタR11〜R17からSIMD型プロセッサ306にロードすることができる。
しかしここでは、画像データは4値に量子化するものとし、そのための3段階分の閾値のみをレジスタR11〜R13からロードするようにしている。また、ディザ閾値マトリクスの大きさは8画素×8画素であり、SIMD型プロセッサ306にはこれを繰り返しロードしている。その概念図を図26に示した。
【0095】
以下ディザ処理の具体的な流れについて説明する。階調処理部210がディザ処理を行う場合、図27のフローチャートに示す処理を行う。
まず、ステップS1で、RAM303に記憶しているディザ閾値マトリクスのうち1ライン目の閾値をSIMD型プロセッサ306のレジスタR11〜R13にロードする。そして、ステップS2で処理すべき画像データを同時に処理できる画素数分(ここでは224画素であり、1SIMDとする)だけレジスタR0にロードする。
【0096】
次のステップS3ではロードした閾値を用いてSIMD型プロセッサ306によって画像データの量子化を行い、その結果をレジスタR1にロードする。そして、ステップS4でその結果をRAM303に記憶させる。
その後、ステップS5で1ライン分の処理が終了したか否か判断し、終了していなければステップS2に戻って次のSIMDについて同様な処理を行う。この際、1SIMDが閾値マトリクスの主走査方向の画素数で割り切れない場合には閾値マトリクスのシフトが必要になるが、この場合には再度閾値マトリクスのロードを行う。
また、ステップS5で終了していれば、ステップS6に進み、全ラインの処理が終了したか否か判断する。終了していれば処理を終了するが、終了していなければ、ステップS7に進む。
【0097】
そしてステップS7では、レジスタR1に接続したRAM303の画像データを処理後のデータとして出力させ、レジスタR0に接続したRAM303へは次のラインの画像データを格納する。そしてステップS8で閾値マトリクスのうちの次のラインの閾値をSIMD型プロセッサ306のレジスタR11〜R13にロードしてステップS2に戻り、処理を繰り返す。このとき、マトリクスの副走査方向の大きさをnとして、n+1ライン目になった場合には、再度1ライン目の閾値をロードする。
以上の手順により、SIMD型プロセッサ306を備えた階調処理部210でディザ処理を行うことができる。なお、閾値マトリクスは何種類かの予め用意しておき、ユーザによる階調処理の選択に応じて選択するようにするとよい。表1に示した「ディザ1」と「ディザ2」は、それぞれ閾値マトリクスの異なるディザ処理を示す。
【0098】
次に、図28乃至図36を用いてこの複写機において処理領域に応じた階調処理を行う際の制御について説明する。図28はその制御に関する部分の機能や構成を中心に示した説明図、図29は処理領域毎の階調処理の選択について説明するための図、図30は階調処理の線数について説明するためのディザ閾値マトリクスの例を示す図、図31はその別の例を示す図、図32は図30に示したディザ閾値マトリクスを用いた場合の画素の成長方向とスクリーン角を示す図、図33は図31に示したディザ閾値マトリクスを用いた場合の図32と対応する図、図34はディザ処理の線数に応じた階調性の違いを示す図、図35はディザ処理の線数に応じてその前段で実施すべきγ処理の内容を示す図、図36はこの複写機において処理領域に応じた階調処理を行うための制御手順を示すフローチャートである。
【0099】
この複写機においては、図8乃至図11を用いて説明したように、複写動作の1つの設定として、処理領域を設定し、処理領域毎に画像処理の内容を設定することができる。図28に示した例では、原稿中に処理領域Aと処理領域Bの2つの処理領域を設定し、特に設定を行っていない部分を処理領域Cとしている。
そして、この画像をスキャナ20で読み取って得た画像データに画像処理を施す場合、この処理領域に応じてそれぞれの設定に従った画像処理を行う。この発明は、この画像処理のうち、階調処理に関する部分に特徴を有するが、図28には画像処理用プリンタγ補正回路209と階調処理部210について詳しく示している。
【0100】
この複写機においては、処理領域に応じた画像処理を行うため、エリア処理部212を設け、スキャナ20からの読み取り位置信号をエリア処理部212に入力している。そして、エリア処理部212でその位置がどの処理領域に属するかを判定し、その処理領域と対応した処理内容を示すデータを図4に示した各処理回路203〜209のデコーダ(画像処理用プリンタγ補正回路209の場合はデコーダ215)に送信する。そして、デコーダ215がこのデータをデコードして必要なセレクタの切り換えやレジスタの書き換えを行うことにより、各処理回路で処理領域に応じた画像処理を行うことができる。
画像処理用プリンタγ補正回路209においては、γ補正用の複数のテーブルとして、例えば文字原稿,インクジェット出力原稿,印画紙による写真原稿,印刷出力原稿に適したテーブルを予め記憶しており、デコーダ215がセレクタ216を切り換えることにより、処理領域毎にユーザの選択したテーブルを用いたγ補正を行うようにしている。
【0101】
ところで、階調処理部210については、種々の方式の階調処理を小さな回路規模で比較的高速に行うため、SIMD型のプログラマブルな画像処理プロセッサを用い、各処理に応じたプログラムを用いてこれを動作させるようにしている。そこで、エリア処理部212を内部バス165によってCPU131等と接続し、CPU131の制御によってシリアルI/F248を介して階調処理部210に必要なプログラムやデータを転送すると共に、階調処理プログラム抽出部236によって各処理領域毎に処理に必要な階調処理プログラム(関数)を抽出させ、そのプログラムに従ってSIMD型プロセッサ306を動作させるようにしている。そして、FIFOメモリによる入力部235から入力した画像データに対し、SIMD型プロセッサ306と逐次型画像データ処理部307とによって階調処理を施し、FIFOメモリによる出力部238から出力するようにしている。
このようにすることにより、階調処理部210に、処理領域に応じて上述したような誤差拡散処理,ディザ処理,これらの組み合わせ、あるいは無処理(スルー)等の階調処理を行わせることができ、CPU131が領域処理手段として機能する。
【0102】
この複写機においては、階調処理部210に並列演算の可能なプログラマブル演算器としてSIMD型プロセッサを設けているので、このような種々の階調処理を選択的に行わせるようにする場合でも、さほど回路規模を大きくするする必要がない。また、並列演算が可能であるので処理も高速に行うことができる。従って、従来のように階調処理にASICを用いる場合に比べて、機能上の制限をより受けにくくなり、処理領域に応じて複数の階調処理をより自由に選択して設定することが可能になる。その結果、ユーザの好みや原稿の特徴に合わせて適切な階調処理を選択・設定することができ、画質の向上を図ることができる。
【0103】
ところで、階調処理関数抽出部の説明で関数を「抽出」するという表現を用いたのは以下の理由によるものである。
SIMD型プロセッサが画像データの処理を行う場合、一定数(1SIMD)の画素毎に並列して処理を行うことは既に述べた。一方で、処理領域の境界は、SIMD型プロセッサにおける処理単位とは無関係に定められる。従って、図29に示すように、1処理単位の画素に対して異なった処理を行う必要がある部分が生じる。また、階調処理に際しては、実際に処理を反映させる部分よりも広い範囲の画像データが必要になることが多い。特に、誤差分散処理は、量子化誤差を隣接する画素に伝播させることにより階調再現性を向上させる方式であるので、処理を反映させる部分よりも広い範囲の画像データを必要とする。
【0104】
従って、このような場合には、1つの処理単位に対して複数回の処理タイミングを用意し、初めのタイミングではディザ処理、次のタイミングでは誤差分散処理というように各タイミングにおいて別々の処理を順次行い、各処理後の画像データについて実際に処理を反映させる部分をセレクタ237によって選択して出力するようにしている。あるいは、1つのタイミングで複数の処理を別々に行って出力することができるのであれば、そのようにしてもよい。
このように、階調処理部210においては画像データの一部分に対して複数の処理を繰り返し(あるいは並列して)行うことがあるので、「抽出」としたものである。
【0105】
なお、プリンタ10側においては、各回路は第2の内部バス166によってシステムコントローラ134と接続しており、ここから必要なデータやコマンドを受け取る。
【0106】
ところで、上述した誤差拡散処理や複合処理、ディザ処理は、処理内容によって階調特性が異なる。例えば、ディザ処理の場合には、用いるディザマトリクスによって階調処理の線数が異なり、それによって階調特性も変化する。
例えば図30あるいは図31に示したディザ閾値マトリクスを用いた場合には、ラインの成長方向とスクリーン角はそれぞれ図32及び図33に示すようになり、この場合の線数はそれぞれ212線及び300線となる。また、図23及び図25に示した例の場合には線数は168線である。
【0107】
これらの処理についての階調特性を示したものが図34のグラフである。このグラフからわかるように、168線の場合が最も階調性が高く、212線の場合、300線の場合の順に階調性が落ちる。
このように、処理によって階調特性が異なるので、単に階調処理を行うだけでは同じ画像データを入力した場合でも処理領域毎に画像の濃度が異なってしまうことになる。そして、このような事態が好ましくない場合があることから、図35に示すように、階調処理における階調特性の入力と出力を入れ換えた、階調特性については階調処理の逆変換となるようなγ補正処理を、階調補正処理として各階調処理の前に行うようにしている。これが、図28で階調処理部210内に示したγ補正である。なお、誤差拡散処理や複合処理の場合にも、ディザ処理の場合と同様に階調特性に応じて必要なγ補正テーブルを定めるものとする。
【0108】
このように階調処理に応じた階調補正処理を行うことにより、同じ画像データを入力した場合の画像濃度を、処理領域(階調処理内容)によらず一定にすることができる。なお、上記のγ補正処理は、SIMD型プロセッサ306の動作を決めるミドルウェアがコールする画像処理関数のうち、γ補正処理をコールすることにより実現できる。また、階調処理が無処理の場合にはγ補正処理も不要であるが、この場合には単にγ補正処理をコールしないようにすればよい。
【0109】
なお、ディザ処理に用いるディザ閾値マトリクスによって階調処理の線数が異なることは上述したが、階調処理を、処理領域に応じてその領域の画像に合った線数の階調処理とすることにより、より好ましい出力画像を得ることができる。例えば、地図や集合写真等の領域では線数が比較的高く高解像度の階調処理を行い、夕焼けなどの階調性が重要な写真等の領域では線数が低めの階調処理を行うようにするとよい。このようにすることにより、より好ましい出力画像を得ることができる。ここでは、階調処理のモードをユーザが指定し、それに応じて線数が決まるようになっているが、ユーザが線数を指定し、それに応じて処理内容を定めるようにしてもよい。
【0110】
以下、この複写機において処理領域に応じた階調処理を行うための制御手順について説明する。このような階調処理は、図36のフローチャートに示す制御手順によって実現する。
まず、ステップS11でユーザが原稿の読取領域中に処理領域及びその処理領域における階調処理を設定する。その後、ステップS12でユーザがコピースタートを指示すると、CPU131はステップS13で各処理領域の座標とその座標における階調処理の内容を階調処理部210に送信する。また必要に応じて、SIMD型プロセッサ306の駆動に必要なプログラムやデータをプログラムRAM245やデータRAM246にロードする。
【0111】
階調処理部210側ではステップS14でその内容を受信し、ステップS15で原稿の各画素に対応する階調処理内容を抽出する。そして、抽出の終了後CPU131にその旨を伝達する。
すると、CPU131はステップS16でコピー動作を開始し、スキャナ20に駆動命令を発して原稿の読み取りを開始させ、階調処理部210側ではステップS17で、スキャナ側の処理及び前段の画像処理を終えて転送されてきた画像データに対してステップS15で各位置の階調処理内容として抽出した階調処理を行う。
処理後の画像データはプリンタ10に出力し、プリンタ側の処理を行ってから画像形成出力する。
以上のような制御手順によって、処理領域に応じた階調処理を実現することができる。
【0112】
なお、以上説明した実施形態では、処理領域及び各処理領域における階調処理の内容を手動で設定する例について説明したが、自動的に原稿の内容を認識して処理領域及び各処理領域における階調処理の内容を設定するようにしてもよい。また、この発明の画像処理装置を画像形成装置である複写機に搭載して設けた例について説明したが、単独の装置として構成してもよい。また、この画像処理装置を搭載する装置は複写機には限られず、プリンタ,ファクシミリ装置,デジタル複合機等の他の画像形成装置に搭載してもよい。この場合において、画像処理装置によって処理する画像データは自機に備えた画像読み取り手段によって読み取った画像データには限られず、過去に読み取って蓄積しておいたもの、他機から受信したもの等を処理するようにしてもよい。さらにまた、この画像処理装置はスキャナ等の画像読み取り装置に搭載することも可能であり、この場合には処理後の画像データは記憶手段に蓄積するか又は他機に送信するようにするとよい。
【0113】
【発明の効果】
以上説明してきたように、この発明の画像処理装置、画像形成装置、および画像読み取り装置によれば、処理領域に応じて複数の階調処理を幅広く選択して設定し、その処理を比較的安価かつ高速に実行することができる。その結果、ユーザの好みや原稿の特徴に合わせて適切な階調処理を選択・設定することができ、画質の向上を図ることができる。
【図面の簡単な説明】
【図1】この発明の画像処理装置を備えた画像形成装置の実施形態である複写機の機構の概略をシステム構成の一部と共に示す模式的な断面図である。
【図2】その複写機の駆動制御系の構成を示すブロック図である。
【図3】その複写機のレーザ光学系に備えるレーザダイオード変調回路の構成を示す図である。
【図4】その複写機の画像処理系の構成を示すブロック図である。
【図5】その画像処理系のうちスキャナ側の処理部の構成を示すブロック図である。
【図6】スキャナにおける白補正及び黒補正についての概念図である。
【図7】スキャナにおけるサンプルホールドについて説明するための図である。
【図8】図1に示した複写機の操作部の全体構成を示す図である。
【図9】その操作部に備えた液晶ディスプレイの表示例を示す図である。
【図10】その別の例を示す図である。
【図11】そのさらに別の例を示す図である。
【図12】図4に示した画像処理系におけるMTFフィルタ回路の構成を示すブロック図である。
【図13】そのMTFフィルタ回路で使用する適応エッジ強調フィルタテーブルの内容を示す図である。
【図14】図4に示した画像処理系における階調処理部に設けたSIMD型の画像処理プロセッサの概略構成を示す説明図である。
【図15】その階調処理部のハードウェア構成を示す図である。
【図16】その一部をより詳しく示す図である。
【図17】図16に示した逐次型画像データ処理部の構成を示す図である。
【図18】階調処理部で行う誤差拡散処理における各画素の取り扱いについて説明するための図である。
【図19】その誤差拡散処理において用いるIIRフィルタシステムについて説明するための図である。
【図20】階調処理部がディザ処理と誤差分散処理の組み合わせを行う場合の階調処理部の機能構成を示す図である。
【図21】その処理に用いる誤差拡散マトリクスの例を示す図である。
【図22】その処理に用いる5×5微分フィルタの例を示す図である。
【図23】その処理に用いる4×4ディザ閾値マトリクスの例を示す図である。
【図24】その別の例を示す図である。
【図25】図23に示したディザ閾値マトリクスを用いた場合のスクリーン角とラインの成長方向を示す図である。
【図26】階調処理部によるディザ処理について説明するための概念図である。
【図27】そのディザ処理の手順を示すフローチャートである。
【図28】図1に示した複写機について処理領域に応じた階調処理を行う際の制御に関する部分の機能や構成を中心に示した説明図である。
【図29】処理領域毎の階調処理の選択について説明するための図である。
【図30】階調処理の線数について説明するためのディザ閾値マトリクスの例を示す図である。
【図31】その別の例を示す図である。
【図32】図30に示したディザ閾値マトリクスを用いた場合の画素の成長方向とスクリーン角を示す図である。
【図33】図31に示したディザ閾値マトリクスを用いた場合の図32と対応する図である。
【図34】ディザ処理の線数に応じた階調性の違いを示す図である。
【図35】ディザ処理の線数に応じてその前段で実施すべきγ処理の内容を示す図である。
【図36】図1に示した複写機において処理領域に応じた階調処理を行うための制御手順を示すフローチャートである。
【符号の説明】
10:プリンタ      20:スキャナ
101:複写機本体    104:レーザ光学系
130:システム制御部  131:CPU
134:システムコントローラ
151:操作部      152:液晶ディスプレイ
154:エリア加工キー  155:画像表示部
200:画像処理部    210:階調処理部
212:エリア処理部
236:階調処理プログラム抽出部
237:セレクタ     241:入出力ポート
242:バススイッチ/ローカルメモリ群
243:メモリ制御部  244:プロセッサアレー部
245:プログラムRAM 246:データRAM
247:ホストバッファ  248:シリアルI/F
261:レジスタ     262:マルチプレクサ
263:バレルシフタ   264:論理演算器
265:アキュムレータ 266:テンポラリレジスタ
301:データ入出力用バス 302:バススイッチ
303:RAM      304:メモリスイッチ
305:メモリコントローラ
306:SIMD型プロセッサ
307:逐次型画像データ処理部[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image processing apparatus that performs image processing on input image data, an image reading apparatus such as a scanner that processes read image data by the image processing apparatus, and an image processing apparatus that performs image processing to form image data. The present invention relates to an image forming apparatus such as a copier, a printer, a facsimile machine, and a digital multifunction peripheral for performing image processing.
[0002]
[Prior art]
Conventionally, when processing image data, it is known that appropriate image processing differs depending on the content. For example, in the case of gradation processing, image data obtained by reading a character original is often subjected to dither processing or error diffusion processing using a small-sized dither matrix in order to improve character reproducibility. For the obtained image data, dither processing using a large dither matrix is preferable in order to obtain a smooth image with rich gradations.
[0003]
Conventionally, an application specific integrated circuit (ASIC: ASIC) for exclusive use for gradation processing has been created, and gradation processing according to the content of a document such as a character or a photograph has been performed. Further, when both a character and a photograph are included in one image, a character region and a photograph region are set, and processing suitable for the contents is performed on the image data of each region. .
As an apparatus for performing such processing, for example, an image processing apparatus described in Patent Document 1 is known. According to such an image processing apparatus, a marking written on a document to be read with a marker pen or the like is recognized, and image processing according to the type of marking is performed on an area of the read image data designated by the marking. It can be performed.
[0004]
[Patent Document 1]
JP 2000-78389 A
[0005]
[Problems to be solved by the invention]
However, in such a conventional image processing apparatus, since gradation processing is performed by a dedicated ASIC according to processing speed and cost requirements, too many types of gradation processing can be performed from the viewpoint of circuit scale. However, it was not possible to select only one type for characters and one type for photographs in a limited range. Therefore, in one image, gradation processing for a photograph in which gradation is emphasized, gradation processing for a photograph in which resolution is emphasized, and highlight reproduction such as a map document are emphasized, and character reproduction is also performed. It has been difficult to enable various kinds of gradation processing such as high gradation processing and error diffusion processing for character originals in accordance with area designation.
Further, Patent Document 1 does not include a detailed description of gradation processing during image processing.
SUMMARY OF THE INVENTION It is an object of the present invention to solve such a problem and to selectively perform various types of gradation processing on image data at a relatively low cost and at a high speed.
[0006]
[Means for Solving the Problems]
In order to achieve the above object, an image processing apparatus according to the present invention comprises a plurality of input registers and output registers, a program memory unit storing an image processing program, and an image processing program stored in the program memory unit. A programmable operation unit that performs processing and performs image processing in parallel on the image data input to the plurality of input registers, and outputs the processing result to each of the output registers as output image data; Image processing means for performing image processing including gradation processing on image data to be processed, area setting means for setting a processing area for image data to be processed by the image processing means, and a level corresponding to the processing area to the image processing means. And an area processing means for performing a tone adjustment process.
[0007]
In such an image processing apparatus, it is preferable to provide a means for causing the image processing means to perform a gradation correction process according to the gradation process.
Furthermore, the gradation processing performed by the image processing means by the area processing means may be gradation processing of the number of lines corresponding to the processing area.
Furthermore, the gradation processing may be error diffusion processing, dither processing, a combination thereof, or no processing.
Further, an image reading apparatus according to the present invention includes the above image processing apparatuses and processes read image data by the image processing apparatuses. The image forming apparatus according to the present invention includes the above image processing apparatuses. And image processing of image data to form an image by the image processing apparatus.
[0008]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, a preferred embodiment of an image processing apparatus according to the present invention and a copying machine which is an embodiment of an image reading apparatus and an image forming apparatus including the image processing apparatus will be described with reference to the drawings.
First, the overall configuration of the copying machine will be described with reference to FIGS. FIG. 1 is a schematic sectional view showing the outline of the mechanism of the copying machine together with a part of the system configuration, FIG. 2 is a block diagram showing the configuration of a drive control system of the copying machine, and FIG. FIG. 3 is a diagram illustrating a configuration of a laser diode modulation circuit provided in a system.
[0009]
In this copying machine, as shown in FIG. 1, a photoconductor drum 102 made of an organic photoconductor (OPC) having a diameter of 120 mm is disposed as an image carrier at a substantially central portion of a main body 101 of the copying machine. A laser charger 104 for charging the surface of the photosensitive drum 102; a laser optical system 104 for irradiating a semiconductor laser beam onto the uniformly charged surface of the photosensitive drum 102 to form an electrostatic latent image; The toner is supplied and developed to obtain a toner image for each color. An intermediate transfer belt 109 for sequentially transferring the formed toner images of each color, a bias roller 110 for applying a transfer voltage to the intermediate transfer belt 109, and a photosensitive drum 102 after the transfer A cleaning device 111 for removing toner remaining on the surface, are sequentially arranged and discharger 112 for removing charges remaining on the surface of the photosensitive drum 102 after the transfer.
[0010]
Around the intermediate transfer belt 109, the toner image transferred from the photosensitive drum 102 is transferred from the paper feed trays 125 and 126 or the double-sided tray 127 to a transfer material fed at a timing by the registration roller 128. And a belt cleaning device 114 for cleaning a toner image remaining on the transfer material after transfer. Further, a fixing device 116 for fixing the toner image by heating and pressurizing the toner image is arranged at the exit side end of the conveyance belt 115 that conveys the transfer material separated from the intermediate transfer belt 109 after the transfer of the toner image. At the outlet of the fixing device 116, a paper discharge tray 117 is attached.
These components constitute the printer 10 as an image forming unit, and can form an image corresponding to an image signal for driving the laser optical system 104.
[0011]
Here, the modulation circuit for modulating the laser diode (LD) 174 provided in the laser optical system 104 is shown in FIG. 3, and its writing frequency is 18.6 MHz, and the scanning time of one pixel is 53.8 nsec (nano). Seconds). The laser optical system 104 is an optical system that includes two LDs 174 and performs simultaneous writing of two lines. Each LD 174 includes the modulation circuit illustrated in FIG. While scanning the photosensitive drum 102 in parallel with the main scanning direction.
[0012]
In this modulation circuit, input 8-bit image data can be subjected to γ conversion by a look-up table (LUT) 171. A pulse width modulation circuit (PWM) 172 generates an 8-level pulse width based on the upper 3 bits of the 8-bit image data, and a power modulation circuit (PM) 173 generates the pulse width based on the lower 5 bits. The power modulation of 32 values is performed, and the LD 174 emits light based on the modulated pulse. Then, the light emission intensity is monitored by a photodetector (PD) 175, and correction is performed for each dot.
[0013]
The maximum value of the intensity of the laser beam can be changed to 8 bits (256 steps) independently of the image signal. Then, the beam diameter in the main scanning direction with respect to the size of one pixel (this is 1 / e with respect to the maximum value of the beam intensity at rest) 2 Is defined as a width at which the pixel value is attenuated in the case of 600 DPI, in the case of 42.3 μm per pixel, 50 μm in the main scanning direction and 60 μm in the sub-scanning direction.
An image reading means by the scanner 20 is provided above the laser optical system 104, a contact glass 118 is provided above the copying machine main body 101, and a document to be read is supplied onto the contact glass 118. An automatic document feeder (ADF) 140 for feeding is also provided. The originals 150 placed on the ADF 140 are separated and fed one by one by a feed roller 141, and are fed onto the contact glass 118 by the original belt 142.
[0014]
On the other hand, below the contact glass 118, an exposure lamp 119 for irradiating the original on the contact glass 118 with scanning light is provided, and the reflected light from the original is guided to the imaging lens 123 by the reflection mirrors 120, 121, and 122. The light is incident on the image sensor array 124 using a CCD (Charge Coupled Device) as a photoelectric conversion element. The exposure lamp 119 and the mirror 120 are mounted on a first traveling system 143, and the mirrors 121 and 122 are mounted on a second traveling system 144, and are driven in the horizontal direction in FIG.
[0015]
Then, the image of the original is converted into an image signal by an electric signal by the image sensor array 124, image processing of an image processing system described later is performed on the image signal to obtain output image data, and a laser is generated based on the output image data. The laser oscillation of the semiconductor laser in the optical system 104 is controlled to form an electrostatic latent image on the photosensitive drum 102 based on output image data. Note that image data subjected to image processing can be stored in a storage device 181 such as an HDD. The storage device controller 182 is a unit that controls the operation of the storage device 181.
[0016]
The drive control system in such a copying machine is briefly shown in FIG. 1, but has the configuration shown in FIG. That is, a system control unit 130 as a main control unit is provided, and is connected to the sensor control unit 160, the power supply / bias control unit 161, the communication control unit 162, and the drive control unit 163 via the interface 135.
The system control unit 130 includes a CPU 131, a ROM 132, a RAM 133, and a system controller 134, and is a control unit that performs overall control of the copying machine. The operation of the operation unit 151 for operating this copying machine and the operation of an image processing unit 200 described later are also controlled by the system control unit 130.
[0017]
The communication control unit 162 is an interface for connecting the copying machine to a network such as the Internet, an intranet, and a local area network (LAN).
More specifically, the sensor control section 160, the power supply / bias control section 161, and the drive control section 163 will be described in detail. The laser optical system 104, the power supply circuit, the optical sensor, the toner density sensor, the environment sensor, the photoconductor surface potential sensor, The control unit controls the toner supply circuit and the intermediate transfer belt driving unit.
[0018]
The control of the laser optical system 104 is for adjusting the laser output of the laser optical system 104, and the control of the power supply circuit is to provide a predetermined charging discharge voltage to the charging charger 103 and to control the developing device 105. To 108, and a predetermined transfer voltage to the bias roller 110 and the transfer bias roller 113.
Further, as an optical sensor, an optical sensor for detecting the amount of toner adhered on the photosensitive drum 102 is opposed to the photosensitive drum 102, and is opposed to the intermediate transfer belt 109. An optical sensor for detection and an optical sensor for detecting the amount of toner adhering on the conveyor belt 115 are provided to face the conveyor belt 115. In practice, any one of these may be provided.
[0019]
Next, an image processing system including the image processing unit 200 shown in FIG. 1 will be described with reference to FIGS. 4 is a block diagram showing a configuration of the image processing system, FIG. 5 is a block diagram showing a configuration of a processing unit on the scanner side in the image processing system, FIG. 6 is a conceptual diagram of white correction and black correction in the scanner, FIG. 7 is a diagram for explaining a sample hold in the scanner.
As shown in FIG. 4, the image processing system of the copying machine includes an image processing unit 200, a scanner-side processing unit 220, and a printer-side processing unit 230 using an IPU (image processing unit). Although the configuration of the scanner-side processing unit 220 is simply shown in FIG. 4, the details are as shown in FIG.
[0020]
First, the scanner-side processing unit 220 will be described.
In the scanner 20, the original 150 placed on the contact glass 118 shown in FIG. 1 is irradiated by an exposure lamp 119, and the reflected light is reflected by an RGB filter to an image sensor array 124 of a CCD as shown in FIG. The signal is read after being decomposed and amplified to a predetermined level by the amplifier circuit 221. The CCD driver 136 supplies a pulse signal for driving the CCD. A pulse source required to drive the CCD driver 136 is generated by a pulse generator 137, and the pulse generator 137 uses a signal generated by a clock generator 138 including a crystal oscillator or the like as a reference signal.
[0021]
The pulse generator 137 supplies necessary timing for the sample and hold (S / H) circuit 222 to sample and hold the signal from the image sensor array 124 amplified by the amplifier circuit 221. Then, the analog color image signal sampled and held by the S / H circuit 222 at that timing is digitized by the A / D conversion circuit 223 into an 8-bit signal (an example).
The black correction circuit 224 performs black correction to reduce variation in black level (electric signal when the amount of light is small) between CCD chips and pixels, and prevents the occurrence of streaks or unevenness in a black portion of an image. The shading correction circuit 225 performs white correction for correcting a white level (an electric signal when the amount of light is large) if necessary. The white level corrects sensitivity variations of the irradiation system, the optical system, and the CCD based on white data obtained by reading a uniform white plate (not shown) by the reading unit of the scanner 20.
[0022]
FIG. 6 is a conceptual diagram showing the white correction and the black correction. However, even when the same white or black image is read, the read signal varies depending on the position in the main scanning direction due to the element characteristics of the CCD and the characteristics of the optical system. Since the values vary, the white correction and the black correction make it possible to obtain uniform data by correcting this.
The signal from the shading correction circuit 225 is transferred to the image processing unit 200 via the interface (I / F) unit 226, and is provided for subsequent processing.
The image processing in the scanner-side processing unit 220 is controlled by the CPU 131, and data necessary for the control is stored in the ROM 132 and the RAM 133. The CPU 131 communicates with a system controller 134 that controls the entire image forming apparatus by a serial I / F. In addition, drive control of the scanner 20 is also performed via the drive control unit 163 shown in FIG.
[0023]
By the way, the amplification amount of the amplification circuit 221 is determined so that the output value of the A / D conversion circuit 223 becomes a desired value for a specific document density. As an example, a document having a document density of 0.05 (0.891 in reflectivity) during normal copying can be obtained as an 8-bit signal value of 240 values. On the other hand, when performing shading correction, the sensitivity of shading correction is increased by lowering the amplification factor. The reason for this is that, when the reflected light is large, the 8-bit signal becomes an image signal having a magnitude exceeding 255 in the case of an amplification factor at the time of normal copying, and the image signal saturates to 255 values, and an error occurs in shading correction. This is because it occurs.
[0024]
When the read signal of the image amplified by the amplifier circuit 221 is sampled and held by the S / H circuit 222, the analog signal is sampled and held for a predetermined sample hold time Ts, as shown in FIG. A signal is sent to the A / D conversion circuit 223. In FIG. 7, the horizontal axis indicates the time during which the amplified analog image signal passes through the S / H circuit 222, and the vertical axis indicates the magnitude of the amplified analog signal. The signal shown in the figure is an image signal when the above-mentioned white plate is read, and a solid line 81 is amplified so that the amplified image signal becomes 240 values after A / D conversion as in a normal copy. For example, a broken line 82 shows an example in which the image signal after amplification is amplified to have a value of 180 after A / D conversion, as an example of performing shading correction.
[0025]
Next, the image processing unit 200 will be described. The image processing unit 200 is an image processing unit, and as shown in FIG. 4, an I / F unit 201, an image memory 202, a scanner γ conversion circuit 203, an image separation circuit 204, an MTF filter circuit 205, a color conversion UCR ( Under color removal) processing circuit 206, scaling processing circuit 207, image processing (create) circuit 208, printer γ correction circuit 209 for image processing, gradation processing section 210, hue determination circuit 211, area processing section 212, pattern generation circuit 213 are provided.
[0026]
Then, the 8-bit image data received from the scanner-side processing unit 220 by the I / F unit 201 is stored in the image memory 202, and is sequentially read therefrom for image processing by each circuit. Here, the scanner γ conversion circuit 203 is a circuit for converting the reflectance data obtained by the scanner 20 into 8-bit brightness data. The image separation circuit 204 is a circuit for determining a character portion and a photograph portion and for determining a chromatic color / achromatic color, and the pattern generation circuit 213 is a circuit for generating a gradation pattern used for image processing. Then, the image data after the gradation processing by the gradation processing section 210 is transferred to the printer processing section 230. Details of this processing will be described later.
[0027]
On the other hand, the area processing unit 212 generates an area signal for distinguishing to which processing area in the document the image data currently being processed belongs. The parameters used in the subsequent image processing circuits and the gradation processing unit 210 are switched or set in accordance with the area signal generated by this circuit.
Here, the processing area is set for manually or automatically changing image processing including gradation processing performed according to the type of image. Based on the area signal, an optimum color is selected according to the type of the original to be read by the scanner 20, such as a character, a silver halide photograph (photographic paper), a print original, an ink jet output original, a highlighter, a map, and a thermal transfer output original. Image processing parameters such as correction coefficients, spatial filter processing parameters, gradation processing methods and parameters can be set for each processing area.
This is one of the features of the present invention. The setting of the processing area and the setting of the parameters will be described later in detail.
[0028]
Although the image processing unit 200 is an image processing apparatus according to the present invention, since the image processing unit 200 is mounted on a copying machine, its operation is controlled by the CPU 131 of the copying machine. When used alone as an image processing apparatus, a dedicated control means may be provided.
[0029]
Next, the printer-side processing unit 230 will be described. As shown in FIG. 4, the printer processing unit 230 includes an I / F selector 231, an image forming printer γ correction circuit 232, and a pattern generation circuit 233.
The I / F selector 231 is a selector for selecting image data reception and transmission destinations, and is connected to the printer controller 139. When a copy operation is performed, the data from the gradation processing unit 210 of the image processing unit 200 is output to the image forming printer γ correction circuit 232, but is also connected to the system controller 134 and is connected via a network. Image data transmitted from a PC (personal computer) 240 or the like via the printer controller 139 can also be transmitted to the printer 10 side. In the latter case, the printer-side processing unit 230 and the printer 10 function independently of the scanner 20 and the image processing unit 200, and the copier operates as a printer. Further, image data read by the scanner 20 can be output to an external device.
[0030]
The image forming printer γ (process control γ) correction circuit 232 converts the image signal from the I / F selector 231 using the gradation conversion table and outputs the converted signal to the LD modulation circuit shown in FIG. The pattern generation circuit 233 is a circuit that generates a gradation pattern used in the printer-side processing unit 230.
[0031]
Next, a method of setting the processing area described above will be described with reference to FIGS. FIG. 8 is a diagram showing the overall configuration of the operation unit of the copying machine, FIG. 9 is a diagram showing a display example of a liquid crystal display provided in the operation unit, FIG. 10 is a diagram showing another example, and FIG. It is a figure showing another example.
The operation unit 151 of the copying machine is provided beside the contact glass 118 as shown in FIG. 8, and includes a liquid crystal display (LCD) 152 on which a touch panel is stacked, and a key group 153 such as a numeric keypad. The display in the basic state of the LCD mainly used for setting and displaying the functions is shown in FIG.
[0032]
Then, when the area processing key 154 displayed on the LCD 153 is touched in this state, the display is switched to the screen shown in FIG. Then, the original placed on the contact glass 118 is scanned by the scanner 20, and the image is reduced and displayed on the image display unit 155. On this screen, a processing area can be set with a touch pen or the like. FIG. 10 shows an example in which a region surrounded by a dashed line in the left picture portion is to be set as a processing region.
[0033]
If the area edit key 156 is touched in this state, the display switches to the screen shown in FIG. This screen is a screen for setting the contents of the image processing in the processing area designated on the screen shown in FIG. 10, and touches each tab of “Create”, “Image quality”, “Color processing”, and “Color balance”. By doing so, a screen for making these adjustments and settings can be displayed.
Here, an example is shown in which a screen for setting the “image quality” is displayed. “Sharp / soft” adjusts the sharpness of the copied image, “background adjustment” adjusts the density of the background portion, and “UCR adjustment” adjusts the way of UCR processing. Then, in the “gradation processing”, the contents of the gradation processing are set. Here, five levels of settings are possible from a character shift suitable for a character original to a photograph shift suitable for a photo original, and the processing contents and characteristics thereof are as shown in Table 1.
[0034]
[Table 1]
Figure 2004120021
[0035]
Here, the error diffusion processing, the dither processing, a combination thereof, or no processing is selected, but the selection range is not limited to this. Also, as shown in Table 1, instead of stepwise selection, gradation processing contents suitable for each type of original such as characters, silver halide photographs, printed originals, ink jet output originals, highlighter pens, maps, and thermal transfer output originals are used. It may be prepared and made to be selected from here. Details of the processing will be described later.
[0036]
When these settings are made and the “close” key is touched, the settings are made on the screen of FIG. The content of the image processing including the gradation processing is set for the designated processing area. Then, when performing a copy operation thereafter, the CPU 131 or the system controller 134 sets parameters according to the settings in each circuit of the image processing system shown in FIG. 4 for each processing area, and performs image processing according to the user's specification. Go and output the image. Note that, for a part for which no processing area is particularly set, one processing area is constituted by the entire part.
[0037]
Next, the adaptive edge enhancement processing in the MTF filter circuit 205 shown in FIG. 4 will be described with reference to FIGS. FIG. 12 is a block diagram showing the configuration of the filter correction circuit, and FIG. 13 is a diagram showing the contents of an adaptive edge enhancement filter table used in the MTF filter circuit.
The MTF filter circuit 205 changes the frequency characteristics of the image signal, such as edge enhancement and smoothing, according to the user's preference, such as a sharp image or a soft image, or performs edge processing according to the edge degree of the image signal. Enhancement processing (adaptive edge enhancement processing) can be performed. For example, so-called adaptive edge enhancement in which edge enhancement is performed on a character image and edge enhancement is not performed on a dot image can be performed on each of the R, G, and B signals. Here, processing is performed in accordance with the sharpness setting set for each processing area.
[0038]
The configuration of the MTF filter circuit 205 is as shown in FIG. 12 and includes smoothing filter circuits 251, 254, a Laplacian filter circuit 252, an edge amount detection filter circuit 253, a table conversion circuit 255, a multiplier 256, and an adder 257. I have.
In such an MTF filter circuit 205, first, a smoothing filter circuit 251 smoothes the image signal converted from linear reflectance to linear brightness by the scanner γ conversion circuit 203. For this smoothing, the coefficients shown in Table 2 are used as an example. Then, a differential component of the image data is extracted by a 3 × 3 Laplacian filter circuit 252 at the next stage. Specific examples of the Laplacian filter are as shown in Table 3.
[0039]
[Table 2]
Figure 2004120021
[0040]
[Table 3]
Figure 2004120021
[0041]
An edge amount is detected by an edge amount detection filter circuit 253 for an image signal (only a component having a predetermined number of bits) that is not subjected to γ conversion by the scanner γ conversion circuit 203. As the edge detection filters, for example, those shown in Tables 4 to 7 are used, and among the edge amounts obtained by these, the maximum value is used as the edge degree in the subsequent stage.
[0042]
[Table 4]
Figure 2004120021
[0043]
[Table 5]
Figure 2004120021
[0044]
[Table 6]
Figure 2004120021
[0045]
[Table 7]
Figure 2004120021
[0046]
The edge degree is smoothed by a smoothing filter circuit 254 at the subsequent stage as necessary.
Thereby, the influence of the sensitivity difference between the even-numbered pixels and the odd-numbered pixels in the scanner 20 is reduced. For this smoothing, for example, the coefficients shown in Table 8 are used.
[0047]
[Table 8]
Figure 2004120021
[0048]
Then, the table conversion circuit 255 converts the obtained edge degree into a table, and specifies the density (including contrast and density) of lines and points and the smoothness of the halftone dot portion using the values in this table. The contents of the table are, for example, those shown by solid lines 83 in FIG. The edge degree becomes the largest at a black line or point on a white background, and becomes smaller as the halftone dot becomes finer such as a fine halftone dot of printing or a silver halide photograph or a thermal transfer original.
Then, the product (image signal D) of the edge degree (image signal C) converted by the table conversion circuit 255 and the output value (image signal B) of the Laplacian filter circuit 252 is obtained by the smoothing filter circuit 251 after the smoothing process. It is added to the image signal (image signal A) and transmitted to the subsequent image processing circuit as an image signal E.
[0049]
Next, the image processing from the color conversion UCR processing circuit 206 to the image processing printer γ correction circuit 209 shown in FIG. 4 will be described.
First, the color conversion UCR processing circuit 206 corrects the difference between the color separation characteristics of the input system and the spectral characteristics of the output color material, and calculates the amount of YMC color material necessary for faithful color reproduction. And a UCR processing unit for replacing a portion where three colors of YMC overlap with Bk (black). The color correction process can be realized by performing a matrix operation as shown in Equation 1.
[0050]
(Equation 1)
Figure 2004120021
[0051]
In this equation, B, G, and R indicate the complements of the data of B, G, and R. Matrix coefficient a ij Is determined by the spectral characteristics of the input system and the output system (color material). Here, the primary masking equation is used as an example, but B 2 , BG, or higher order terms, color correction can be performed more accurately. Further, the arithmetic expression may be changed depending on the hue, or the Neugebauer equation may be used. In any method, Y, M, and C can be obtained from the complements of B, G, and R (or B, G, and R itself).
On the other hand, the UCR process can be performed by performing calculations using Equation 2.
[0052]
(Equation 2)
Figure 2004120021
[0053]
In this equation, α is a coefficient for determining the amount of UCR processing. When α = 1, 100% UCR processing is performed. α may be a constant value. For example, by setting α close to 1 in a high density portion and close to 0 in a highlight portion (low image density portion), an image in a highlight portion can be smoothed. .
Here, the color correction coefficient α is made different for each of 14 hues obtained by adding black and white to 12 hues obtained by further dividing each of the 6 hues of RGBYMC into two. That is, the hue determination circuit 211 determines to which hue the image data read is, and selects the color correction coefficient α for each hue based on the determination result.
[0054]
The next scaling processing circuit 207 performs vertical and horizontal scaling, and the image processing (create) circuit 208 performs repeat processing and the like.
Then, the image processing printer γ correction circuit 209 corrects the image signal according to the image quality mode of characters, photographs, and the like. In addition, the background can be removed at the same time. The image processing printer γ correction circuit 209 has a plurality of (for example, ten) tone conversion tables that can be switched in accordance with the area signal generated by the area processing unit 212. Then, a gradation conversion table optimal for the original in each area such as a character, a silver halide photograph (printing paper), a print original, an ink jet, a highlighter pen, a map, and a thermal transfer original is prepared. You can choose what you want.
[0055]
Next, the configuration of the gradation processing unit 210 shown in FIG. 4 and the operation when the gradation processing unit performs the gradation processing by the error diffusion processing will be described with reference to FIGS. 14 is an explanatory diagram showing a schematic configuration of a SIMD type image processor provided in the gradation processing unit, FIG. 15 is a diagram showing a hardware configuration of the gradation processing unit, and FIG. 17, FIG. 17 is a diagram showing the configuration of the sequential image data processing unit shown in FIG. 16, FIG. 18 is a diagram for explaining the handling of each pixel in the error diffusion process performed by the gradation processing unit, and FIG. FIG. 2 is a diagram for explaining an IIR filter system used in a diffusion process.
[0056]
A gradation processing unit 210 in the copying machine is configured by a plurality of PEs (processor elements), and executes a single instruction stream multiple data stream (SIMD) type image processing for executing a single instruction on a plurality of data in parallel. A processor (hereinafter referred to as “SIMD type processor”).
The schematic configuration of this SIMD type processor is shown in FIG. 14, and each PE is composed of one column of elements in the figure. That is, each PE includes a register (Reg) 261 for storing data, a multiplexer (MUX) 262 for accessing a register of another PE, a barrel shifter (Shift Expand) 263, a logical operation unit (ALU) 264, and a logical operation result. (A) 265 for temporarily storing the contents of the accumulator, and a temporary register (F) 266 for temporarily saving the contents of the accumulator. Note that a commonly used SIMD type processor has much more PEs than those shown here.
[0057]
Each register 261 functions as an input register, is connected to an address bus and a data bus (lead line and word line), and stores an instruction code for defining processing and data to be processed. Then, the contents of the register 261 are input to the logical operation unit 264, the operation processing result is stored in the accumulator 265, and the result is temporarily saved in the temporary register 266 in order to retrieve the result outside the PE. Thereafter, by extracting the contents of the temporary register 266, a processing result for the target data is obtained. Here, the accumulator 265 and the temporary register 266 function as output registers.
[0058]
The multiplexer 262, the barrel shifter 263, and the logical operation unit 264 of each PE constitute a programmable operation unit that operates according to a given program, and are read out from a program RAM described later and stored in the register 261. Operate according to the program. Then, the instruction code of the image processing program is given to each PE with the same content, and different data to be processed is given to each PE, and the content of the register 261 of the adjacent PE is referred to by using the multiplexer 262, The calculation results are processed in parallel and output to each accumulator 265.
[0059]
For example, by arranging the contents of one line of image data for each pixel in the PE and performing arithmetic processing by the same program, parallel image processing is possible, and one image can be processed in a shorter time than processing one pixel at a time. The processing result for the line is obtained. Here, in the spatial filter processing and the shading correction processing, the instruction code for each PE can be the arithmetic expression itself, and the processing can be performed in common for all PEs. You may do so.
[0060]
The configuration of the gradation processing unit 210 having such a SIMD type processor is shown in FIG.
As shown in the figure, the gradation processing unit 210 has a plurality of input / output ports 241 for data input / output with the outside, and can set data input and output arbitrarily, respectively. Further, a bus switch / local memory group 242 is provided inside so as to be connected to the input / output port 241, and a memory control unit 243 controls a memory area to be used and a data bus path. Then, a bus switch / local memory group 242 is allocated as a buffer memory to the input image data and the image data to be output, and stored in each of them, thereby controlling input / output with the outside.
[0061]
The image data stored in the bus switch / local memory group 242 is transferred to the processor array unit 244 to perform various gradation processing, and the output result (processed image data) is transferred to the bus switch / local memory group 242 again. Store.
Here, the processor array unit 244 includes the above-described SIMD processor and a sequential image data processing unit that processes an image as a plurality of pixel lines including a plurality of pixels arranged in one direction. A program describing a processing procedure in the SIMD type processor, parameters for processing, and the like are exchanged between the program RAM 245 and the data RAM 246. This program RAM 245 is a program memory unit.
[0062]
The contents of the program RAM 245 and the data RAM 246 are downloaded from the CPU 131 functioning as a process controller to the host buffer 247 through the serial I / F 248, and are transferred to each RAM. Further, the CPU 131 reads the contents of the data RAM 246 and monitors the progress of the processing. When the contents of the processing in the processor array unit 244 are changed or the processing form required by the system is changed, the contents of the program RAM 245 and the data RAM 246 referred to by the processor array unit 244 are updated. .
The special processing units 249 and 250 are processing units that perform special processing to be performed by other than the processor array unit 244.
[0063]
FIG. 16 shows the input / output port 241, the bus switch / local memory group 242, the memory control unit 243, and the processor array unit 244 of the gradation processing unit 210 in more detail.
In this figure, a SIMD type processor 306 and two sequential image data processing units 307 connected to the SIMD type processor 306 correspond to the processor array unit 244, and the image data and control signals are sent to the gradation processing unit 210. The five input / output data input / output buses 301a to 301e are connected to the input / output port 241 while switching the data input / output buses 301a to 301e to switch image data and control signals input to the SIMD type processor 306. Bus switches 302a to 302c for switching the bus width of the bus and 20 RAMs 303 for storing data used for processing input image data correspond to a bus switch / local memory group 242, and control the corresponding RAMs 303 respectively. Memory controllers 305a, 3 And 5b, and the four memory switches 304a~304d for switching the RAM303 under the control of the memory controller 305a or 305b corresponds to the memory controller 243.
[0064]
Here, the memory controllers controlled by the bus switches 302a to 302c are denoted by reference numeral 305b, and the memory controllers that are not controlled by the bus switches 302a to 302c are denoted by reference numeral 305a.
Further, the SIMD type processor 306 includes 24 registers R0 to R23. Each of R0 to R23 functions as a data interface between the PE in the SIMD type processor 306 and the memory controllers 305a and 305b.
[0065]
The bus switch 302a switches the memory controller 305a connected to the registers R0 to R3 to input a control signal to the SIMD processor 306, and the bus switch 302b switches the memory controller 305a connected to the registers R4 and R5 to switch the SIMD processor 305a. A control signal is input to the type processor 306. Then, the bus switch 302c switches the memory controller 305a connected to the registers R6 to R9 to input a control signal to the SIMD processor 306.
[0066]
The memory switch 304a transmits and receives image data between the PE inside the SIMD type processor 306 and the RAM 303 using the memory controller 305a connected to the registers R0 to R5. The memory switch 304b transmits and receives image data between the PE inside the SIMD type processor 306 and the RAM 303 using the memory controller 305a connected to the registers R6 and R7. The memory switch 304c transmits and receives image data between the PE inside the SIMD type processor 306 and the RAM 303 using the memory controller 305a or 305b connected to the registers R8 to R13.
[0067]
The memory switch 304d uses the memory controller 305b connected to the registers R14 to R19 to transfer image data between the PE inside the SIMD type image processor 306 and the RAM 303.
An image data control unit (not shown) inputs a control signal for processing the image data together with the image data to the bus switches 302a to 302c via the data input / output buses 301a to 301e. Then, the bus switches 302a to 302c switch the bus width of the connected bus based on the control signal. Further, the memory controller 305a is connected indirectly or directly, and the memory switches 304a to 304c are switched so that data necessary for processing image data is extracted from the RAM 303.
[0068]
Image data after processing by the image processing printer γ processing circuit 209 is input to such a gradation processing unit 210 under the control of an image data control unit (not shown). When performing error diffusion processing on this image data, the error diffusion processing of the target pixel indicated by hatching in FIG. Consider both pixels included in the pixel line. Then, the SIMD type processor 306 performs an error diffusion process between pixels included in the pixel lines a, b, and c different from the pixel of interest, and the pixels included in the same pixel line d as the pixel of interest (circled in the figure). The sequential image data processing unit 307 performs an error diffusion process between the image data processing unit 307 and the pixel indicated by the attached numeral.
[0069]
In the error diffusion process, a difference between pixel data of a pixel included in a pixel line (previous pixel line) processed before a pixel line (current pixel line) including a target pixel and a predetermined threshold value. The error data and the pixel data of the target pixel are added. This addition is performed in parallel for a plurality of pixels of interest using the SIMD processor 306.
Therefore, one of the RAMs 303 connected to the SIMD type processor 306 stores a plurality of pieces of error data corresponding to the number of pixels to be collectively processed by the SIMD type image processing processor 306. Here, it is assumed that the addition process for one pixel line is collectively performed in the SIMD type processor 306, and the error data for one pixel line is stored in the RAM 303.
[0070]
The added value of the image data for one pixel line and the error data, which are collectively processed by the SIMD type processor 306, are sent to the sequential image data processing unit 307 from at least two of the registers R20, R21, R22, and R23. Are output one by one. The error data used in the above processing is calculated by the sequential image data processing unit 307 described later, and is input to the SIMD processor 306.
On the other hand, the sequential image data processing unit 307 is hardware that operates without being controlled by a computer program. In FIG. 15, two sequential image data processing units 307 are connected to the SIMD type processor 306. In this copying machine, only one of them is used exclusively for error diffusion processing. And
[0071]
The configuration of the sequential image data processing unit 307 is as shown in FIG. 17, and is selected by the error data calculation unit 311, the multiplexer 317 for selecting one from the error data calculated by the error data calculation unit 311, and the multiplexer 317. And an error data adder 318 that processes the error data and adds the processed data to data input from the SIMD processor 306.
Further, a logic circuit 316 for inputting a signal necessary for selecting error data to a multiplexer 317 and a SIMD type processor 306 are supplied to a predetermined error diffusion mode (binary error diffusion, ternary error diffusion, Error diffusion), and a hardware register group 315 that can set an operation coefficient or the like used for the error diffusion processing. Further, a blue noise signal generator 319 is provided, and whether to use blue noise for error diffusion processing can be selected by setting of a hardware register group 315.
[0072]
Here, the error data calculation unit 311 is configured to calculate error data that is a difference between pixel data of a pixel included in the current pixel line and a predetermined threshold value, and includes three quantization reference value storage units 313a to 313c. And three comparators 314a to 314c and three threshold tables 312a to 312c. In this case, the units having the same character set are operated as one set.
[0073]
By the way, the sequential image data processing unit 307 inputs an added value (added value data) of the image data and the error data from the SIMD type processor 306. This image data is the image data of the target pixel to be processed this time. The error data is error data of a pixel processed before the target pixel.
The added value data is added by the adder 321 to the value calculated by the error data adding unit 318 based on the previously processed error data of the pixel, and is added by the multiplier 322 to 16 or 32 to reduce the calculation error. Divided. Further, the divided addition data is input to all three comparators 314a to 314c of the error data calculation unit 311. The value calculated by the error data adding unit 318 based on the error data of the pixel previously processed will be described later.
[0074]
The comparators 314a to 314c receive threshold values from the connected threshold tables 312a to 312c, respectively. Then, a threshold value is subtracted from the input added value data to create image data. Further, subtraction units 323a to 323c subtract the quantization reference values stored in the respective quantization reference value storage units 313a to 313c from the added value data, and output to the multiplexer 317 as error data. As a result, a total of three pieces of error data are input to the multiplexer 317 at the same time.
When blue noise is used for the error diffusion processing, the blue noise signal generator 319 turns on and off the blue noise data at a relatively high cycle by the multiplier 324 to generate blue noise. The threshold is subtracted from the blue noise by subtractors 326a-326c before entering the comparators 314a-314c. By the processing using blue noise, it is possible to prevent the image from becoming monotonous by giving an appropriate variation in the threshold value.
[0075]
Further, thresholds having different values are stored in the threshold tables 312a to 312c. Here, among the threshold tables 312a to 312c, the threshold table 312a stores the largest threshold, and then the threshold stored in the order of the threshold table 312b and the threshold table 312c decreases. In the quantization standard value storage units 313a to 313c, quantization reference values to be stored are set according to the connected threshold tables 312a to 312c. For example, when the image data is represented by 256 values from 0 to 255, 255 is set in the quantization reference value storage unit 313a, 170 is set in the quantization reference value storage unit 313b, and the quantization reference value storage unit 313c is set. Is stored as 85.
[0076]
The comparators 314a to 314c output the created image data to the logic circuit 316. The logic circuit 316 selects the image data of the pixel of interest from among them and inputs it to the multiplexer 317. The multiplexer 317 selects one of the three error data as the error data of the target pixel according to the input image data. The selected error data is input to one of the RAMs 303 via the PE of the SIMD type processor 306.
Further, the image data output from the logic circuit 316 is branched before being input to the multiplexer 317, and input to one of the PEs of the SIMD type processor 306. Here, the image data is data represented by two bits of upper bits and lower bits. Therefore, in this process, the comparator 314a is not used. Hereinafter, the image data of the target pixel is referred to as pixel data.
[0077]
The selected error data is also input to the error data adder 318. The error data adder 318 calculates the error data of the pixels indicated by (1), (2), and (3) shown in FIG. 18, that is, the error data of the pixel processed three times before the pixel of interest. The error data (first error data), the error data of the pixel processed two steps before (second error data), the error data of the pixel processed immediately before (third error data), Has been saved. The first error data is 0 or 1 as an operation coefficient, the second error data is 1 or 2 as an operation coefficient, and the third error data is 2 or 4 as an operation coefficient. Multiply by 327c. Then, the three multiplied values are added by the adders 328a and 328b, and this value (weighted error data) is added by the adder 321 to the added value data input next from the SIMD processor 306. As a result, a pixel located closer to the target pixel has a greater effect on the error diffusion processing of the target pixel, so that the pixel error can be appropriately diffused and an image closer to the original image can be formed.
[0078]
The generation of image data in the sequential image data processing unit 307 described above is generally performed using a configuration called an IIR (Infinite Impulse Response) filter system. The arithmetic expression used in the IIR type filter system is shown in Expression 3, and is expressed in a circuit as shown in FIG.
[0079]
[Equation 3]
Figure 2004120021
[0080]
As is clear from Equation 3 and FIG. 19, the calculated density OD n Is the calculation result OD using the previous pixel data n-1 And current pixel data ID n From the value of In general, an IIR type filter system is a dedicated circuit for performing a so-called sequential conversion that performs an operation on a current pixel using an operation result using a pixel processed before a current pixel. The sequential image data processing unit 307 of the gradation processing unit 210 used here can be used for the whole of the sequential conversion as shown in FIG.
[0081]
Next, an operation when the gradation processing unit 210 performs a combination of the dither processing and the error dispersion processing will be described with reference to FIGS. FIG. 20 is a diagram illustrating a functional configuration of a gradation processing unit when performing a combination of dither processing and error dispersion processing, FIG. 21 is a diagram illustrating an example of an error diffusion matrix used for the processing, and FIG. FIG. 23 is a diagram showing an example of a × 5 differential filter, FIG. 23 is a diagram showing an example of a 4 × 4 dither threshold matrix used in the processing, FIG. 24 is a diagram showing another example thereof, and FIG. 25 is a dither threshold shown in FIG. FIG. 7 is a diagram illustrating a screen angle and a line growth direction when a matrix is used.
[0082]
In this copying machine, as shown in Table 1, a combination of dither processing and error dispersion processing (hereinafter, referred to as "composite processing") can be selected as the gradation processing. When performing such gradation processing, the gradation processing section 210 fulfills the function of each section shown in FIG. Also in this case, the hardware configuration is the same as that shown in FIGS. 15 and 16. By storing an appropriate image processing program in the program RAM 245 and causing the SIMD type processor 306 to perform processing according to the program, The gradation processing unit 210 performs the function of each unit shown in FIG. 20 as a whole.
[0083]
When performing composite processing, the gradation processing unit 210 receives multi-gradation image data and outputs the quantized data. Then, it functions as a quantization processing unit 330, an image feature extraction unit 340, a quantization threshold value generation unit 350, and a signal delay unit 325 for adjusting the timing of the quantization processing unit 330 and the image feature extraction unit 340. The function of the signal delay unit 325 is provided as needed, and is, for example, a function of a line memory having a required number of lines.
The input image data is, for example, data of 8 bits / pixel of 600 dpi read by the scanner 20. Then, this image data is input through an MTF filter circuit 205 including a smoothing filter in order to smoothly express halftones. Normally, the smoothing filter smoothes the image from an image cycle of about 150 Lpi (line per inch). Therefore, the periodicity component of a high-line-number halftone dot image of 175 Lpi or more used in gravure printing or the like is the input image data. Is not left.
[0084]
The quantization processing unit 330 quantizes the multi-gradation image data by the error diffusion method using the quantization threshold generated by the quantization threshold generation unit 350, and here, as shown in FIG. A comparison section 331, an error calculation section 332, an error storage section 333, an error diffusion matrix section 334, and an error addition section 335. Then, the input image data is adjusted in timing by the signal delay unit 325 and input to the error addition unit 335, and the image data added with the diffusion error by the error addition unit 335 is input to the quantization unit 331. The quantization unit 331 quantizes the input image data using the quantization threshold value provided from the quantization threshold value generation unit 350, and outputs a quantization result as quantized processed image data.
[0085]
This processing will be further described with an example of a combination of dither processing and 2-bit error diffusion processing.
In this case, the quantization threshold generation unit 350 generates the quantization thresholds th1 to th3. The relationship between the three quantization thresholds is th1 ≦ th2 ≦ th3.
Then, the quantization unit 331 compares the input image data with th1 to th3, and sets “3” when it is larger than th3, “2” when it is smaller than th3 and larger than th2, and “1” when it is smaller than th2 and larger than th1. , And outputs 2-bit quantized data having a value of “0” in the case of th1 or less.
[0086]
The error calculator 332 calculates the quantization error of the quantization unit 331. Here, since 8-bit image data is handled, in this error calculation, for example, “3” of the quantized data is 255 (decimal), “2” is 192 (decimal), and “1” is 128 (Decimal), "0" is treated as 0 (Decimal). The calculated quantization error is temporarily stored in the error storage unit 333. The error storage unit 333 is for storing quantization errors related to processed pixels around the target pixel. Here, in order to diffuse the quantization error to neighboring pixels two lines ahead as described below, the error storage unit 333 is provided with, for example, a line memory function of three lines.
[0087]
The error diffusion matrix unit 334 calculates a diffusion error to be added to the next target pixel from the quantization error data stored in the error storage unit 333. Here, the error diffusion matrix unit 334 calculates diffusion error data using an error diffusion matrix having a size of three pixels in the sub-scanning direction and five pixels in the main scanning direction as shown in FIG. 21. In FIG. 21, the mark * corresponds to the position of the next target pixel, and a, b,... In addition, the error diffusion matrix unit 334 calculates a value obtained by dividing the product sum of the quantization errors and the corresponding coefficients a to l for the twelve processed pixels by 32 as a diffusion error for the next pixel of interest as an error addition unit. 335.
[0088]
The image feature extraction unit 340 includes an edge detection unit 341 and an area extension processing unit 342. The edge detection unit 341 performs edge detection of input image data, and outputs 2-bit edge data representing an edge level from level 0 (non-edge) to level 3 (maximum edge degree) in the present embodiment. . More specifically, for example, using four types of 5 × 5 differential filters shown in FIG. 22, edge amounts are detected in four main scanning directions, sub-scanning directions, and directions inclined by ± 45 ° from the main scanning direction. Then, the edge amount having the maximum absolute value is selected, and the absolute value of the edge amount is quantized to four edge levels from level 0 to level 3 and output.
[0089]
The region extension processing unit 342 performs a region extension process with a width of 7 pixels on the edge detected by the edge detection unit 341. The region extension processing unit 342 refers to the edge data output from the edge detection unit 341 and performs a 7 A minimum edge level (maximum edge degree) in a region of × 7 pixels (a range of three pixels before and after in the main scanning direction and three pixels before and after in the sub-scanning direction) is defined as an edge level of the pixel of interest, and is set to a 4-bit value Output as edge data. This edge data is provided to the quantization threshold generation unit 350.
The quantization threshold generation unit 350 generates a quantization threshold that vibrates periodically in the image space with a vibration width corresponding to the edge level represented by the edge data output from the region expansion processing unit 342, and generates the quantization threshold. The dither threshold value is given to the quantization unit 331 of the quantization processing unit 330, and coefficients (0 to 3) corresponding to the edge level indicated by the edge data are added to the dither threshold value generation unit 351 and the output value of the dither threshold value generation unit 351. The multiplication unit 352 includes an addition unit 353 that adds a fixed value to an output value of the multiplication unit 352.
[0090]
Also, here, the dither threshold generation unit 351 sequentially sets the thresholds from the first to sixth stages as shown in FIG. 23 or FIG. 24 in ascending order (the first stage is the minimum, and the sixth stage is the maximum). Using a 4 × 4 dither threshold matrix arranged to grow, a dither threshold vibrating periodically from the first stage to the sixth stage in the image space is output. Here, the pixels having the same value use the same threshold. The dither threshold period corresponds to 168 Lpi in the case of forming an image at 600 dpi. Such a dither threshold generation unit 351 can be easily operated by a memory storing the dither threshold matrix and a counter that counts main and sub-scanning timing signals of image data and generates a read address of the memory. realizable.
[0091]
Here, in the dither threshold matrix of FIG. 23, the pixels for setting the first-stage threshold are arranged in the main scanning direction. Therefore, when the density exceeds the threshold, dots arranged in two pixels in the main scanning direction are formed first. Will be. In this way, stable dot formation is performed, and two pixels each having a writing level of low energy are arranged. FIG. 25 shows the screen angle and the line growth direction in this case. The initial growth direction of the line is indicated by a solid line arrow in the drawing as “line growth direction 1”.
The multiplication unit 352 uses the coefficient 3 when the edge level indicated by the edge data from the image feature extraction unit 340 is level 0 (non-edge), the coefficient 2 when the level is 1, the coefficient 1 when the level is 2, and the level 3 At the time of (the maximum edge degree), the coefficient 0 is multiplied by the output value of the dither threshold generator 351.
[0092]
If the printer 10 is driven by the image data processed and quantized by the gradation processing unit 210 that performs the above functions, characters, changing points of images, and halftone dot image parts having a relatively low frequency are resolved. Photographs, portions with little change in the image, high-frequency halftone dot images, and the like are smooth and stable, and can form a high-quality image in which those regions are matched without a sense of incongruity. For example, the quantization threshold generated by the quantization threshold generator 350 is fixed at a portion where the change is sharp and the edge level is level 3 (maximum edge degree), such as the edge portion of a character or a line drawing in the image. Since the quantization processing unit 330 performs the quantization processing by a pure error diffusion method using a fixed threshold, an image with good resolution can be formed.
[0093]
Next, an operation in the case where the gradation processing unit 210 performs dither processing will be described with reference to FIGS. FIG. 26 is a conceptual diagram for explaining the dither processing by the gradation processing unit, and FIG. 27 is a flowchart showing the procedure of the dither processing. In this copier, as shown in Table 1, dither processing can be selected as gradation processing. Then, it is possible to select a dither process using a threshold matrix of m pixels in the main scan × n pixels in the sub-scan (m and n are positive integers). The maximum values of m and n are determined by the hardware used or the built-in memory. In this case, a threshold matrix of 192 pixels in the main scanning direction × 42 pixels in the sub-scanning direction for quantizing to a maximum of 8 values can be created. Suppose there is.
[0094]
The dither threshold matrix is stored in the RAM 303 of the gradation processing unit 210 shown in FIG. 16, and threshold parameters for seven levels for quantization into eight values by the memory controller 305 are stored in the registers R11 to R17 through SIMD. It can be loaded into the type processor 306.
However, here, it is assumed that the image data is quantized into four values, and only thresholds for three stages for that purpose are loaded from the registers R11 to R13. The size of the dither threshold matrix is 8 pixels × 8 pixels, and this is repeatedly loaded in the SIMD type processor 306. FIG. 26 shows a conceptual diagram thereof.
[0095]
Hereinafter, a specific flow of the dither processing will be described. When the gradation processing unit 210 performs the dither processing, the processing shown in the flowchart of FIG. 27 is performed.
First, in step S1, the threshold of the first line in the dither threshold matrix stored in the RAM 303 is loaded into the registers R11 to R13 of the SIMD processor 306. Then, in step S2, only the number of pixels that can simultaneously process image data to be processed (here, 224 pixels, 1 SIMD) is loaded into the register R0.
[0096]
In the next step S3, the image data is quantized by the SIMD processor 306 using the loaded threshold value, and the result is loaded into the register R1. Then, in step S4, the result is stored in the RAM 303.
Thereafter, it is determined in step S5 whether or not the processing for one line has been completed, and if not, the flow returns to step S2 to perform the same processing for the next SIMD. At this time, if one SIMD cannot be divided by the number of pixels of the threshold matrix in the main scanning direction, the threshold matrix needs to be shifted. In this case, the threshold matrix is loaded again.
If the processing has been completed in step S5, the process proceeds to step S6, and it is determined whether or not the processing for all lines has been completed. If it has ended, the process ends. If it has not ended, the process proceeds to step S7.
[0097]
In step S7, the image data in the RAM 303 connected to the register R1 is output as processed data, and the image data of the next line is stored in the RAM 303 connected to the register R0. Then, in step S8, the threshold value of the next line in the threshold value matrix is loaded into the registers R11 to R13 of the SIMD type processor 306, the process returns to step S2, and the process is repeated. At this time, if the size of the matrix in the sub-scanning direction is n and the line becomes the (n + 1) th line, the threshold value of the first line is loaded again.
According to the above procedure, the dither processing can be performed by the gradation processing unit 210 including the SIMD type processor 306. Note that several types of threshold matrices are prepared in advance, and may be selected according to the selection of gradation processing by the user. “Dither 1” and “dither 2” shown in Table 1 indicate dither processes with different threshold matrices.
[0098]
Next, control when performing gradation processing according to the processing area in the copying machine will be described with reference to FIGS. FIG. 28 is an explanatory diagram mainly showing functions and configurations of parts related to the control, FIG. 29 is a diagram for explaining selection of gradation processing for each processing area, and FIG. 30 is a diagram explaining the number of lines of gradation processing. FIG. 31 is a diagram showing another example of the dither threshold matrix, FIG. 32 is a diagram showing a pixel growth direction and a screen angle when the dither threshold matrix shown in FIG. 30 is used, and FIG. 33 is a diagram corresponding to FIG. 32 when the dither threshold matrix shown in FIG. 31 is used, FIG. 34 is a diagram showing a difference in gradation according to the number of lines of dither processing, and FIG. 35 is a number of lines of dither processing FIG. 36 is a flow chart showing a control procedure for performing gradation processing according to a processing area in this copying machine.
[0099]
In this copier, as described with reference to FIGS. 8 to 11, a processing area can be set as one setting of the copying operation, and the content of image processing can be set for each processing area. In the example shown in FIG. 28, two processing areas, a processing area A and a processing area B, are set in a document, and a part that is not particularly set is a processing area C.
When image processing is performed on image data obtained by reading this image with the scanner 20, image processing is performed according to each setting according to the processing area. The present invention has a feature in a portion related to the gradation processing in the image processing. FIG. 28 shows the image processing printer γ correction circuit 209 and the gradation processing section 210 in detail.
[0100]
In this copier, an area processing unit 212 is provided to perform image processing according to a processing area, and a reading position signal from the scanner 20 is input to the area processing unit 212. Then, the area processing unit 212 determines to which processing area the position belongs, and outputs data indicating the processing content corresponding to the processing area to the decoder (image processing printer) of each of the processing circuits 203 to 209 shown in FIG. In the case of the γ correction circuit 209, the signal is transmitted to the decoder 215). Then, the decoder 215 decodes this data and performs necessary switching of the selector and rewriting of the register, so that each processing circuit can perform image processing according to the processing area.
In the image processing printer γ correction circuit 209, tables suitable for, for example, character originals, ink jet output originals, photographic originals on photographic paper, and print output originals are stored in advance as a plurality of tables for γ correction. Switches the selector 216 to perform γ correction using a table selected by the user for each processing area.
[0101]
By the way, the gradation processing unit 210 uses a SIMD-type programmable image processor and a program corresponding to each processing in order to perform various types of gradation processing at a relatively high speed with a small circuit scale. To make it work. Therefore, the area processing unit 212 is connected to the CPU 131 and the like via the internal bus 165, and under the control of the CPU 131, necessary programs and data are transferred to the gradation processing unit 210 via the serial I / F 248, and the gradation processing program extraction unit A gradation processing program (function) necessary for processing is extracted for each processing region by 236, and the SIMD type processor 306 is operated according to the program. The SIMD processor 306 and the sequential image data processing unit 307 perform gradation processing on the image data input from the input unit 235 using the FIFO memory, and output the image data from the output unit 238 using the FIFO memory.
By doing so, it is possible to cause the gradation processing unit 210 to perform gradation processing such as error diffusion processing, dither processing, a combination thereof, or no processing (through) according to the processing area. The CPU 131 functions as an area processing unit.
[0102]
In this copying machine, since the SIMD type processor is provided as a programmable operation unit capable of performing parallel operation in the gradation processing unit 210, even when such various gradation processing is selectively performed, There is no need to increase the circuit scale so much. Further, since parallel operation is possible, processing can be performed at high speed. Therefore, as compared with the case where the ASIC is used for the gradation processing as in the related art, the function is less likely to be restricted, and a plurality of gradation processing can be more freely selected and set according to the processing area. become. As a result, appropriate gradation processing can be selected and set according to the user's preference and the characteristics of the document, and the image quality can be improved.
[0103]
By the way, the expression "extracting" a function in the description of the gradation processing function extracting unit is used for the following reason.
When the SIMD type processor processes image data, it has already been described that the process is performed in parallel for every fixed number (1 SIMD) of pixels. On the other hand, the boundaries of the processing regions are determined irrespective of the processing unit in the SIMD type processor. Therefore, as shown in FIG. 29, there is a portion in which different processing needs to be performed on pixels in one processing unit. Further, in the case of gradation processing, image data in a wider range than a part where the processing is actually reflected is often required. In particular, the error dispersion processing is a method of improving gradation reproducibility by transmitting a quantization error to an adjacent pixel, and thus requires a wider range of image data than a part reflecting the processing.
[0104]
Therefore, in such a case, a plurality of processing timings are prepared for one processing unit, and separate processing is sequentially performed at each timing such as dither processing at the first timing and error dispersion processing at the next timing. The selector 237 selects and outputs a portion of the processed image data that actually reflects the processing. Alternatively, if a plurality of processes can be separately performed and output at one timing, such a process may be performed.
As described above, in the gradation processing unit 210, a plurality of processes may be repeatedly (or in parallel) performed on a part of the image data.
[0105]
In the printer 10, each circuit is connected to the system controller 134 via the second internal bus 166, and receives necessary data and commands therefrom.
[0106]
Incidentally, the above-described error diffusion processing, composite processing, and dither processing have different gradation characteristics depending on the processing contents. For example, in the case of dither processing, the number of lines for gradation processing differs depending on the dither matrix used, and accordingly, gradation characteristics also change.
For example, when the dither threshold matrix shown in FIG. 30 or FIG. 31 is used, the line growth direction and the screen angle are as shown in FIGS. 32 and 33, respectively, and the number of lines in this case is 212 lines and 300 lines, respectively. It becomes a line. Further, in the case of the examples shown in FIGS. 23 and 25, the number of lines is 168 lines.
[0107]
FIG. 34 is a graph showing the gradation characteristics of these processes. As can be seen from this graph, the gradation is highest in the case of 168 lines, and decreases in the case of 212 lines in the order of 300 lines.
As described above, since the gradation characteristics are different depending on the processing, simply performing the gradation processing results in a different image density for each processing area even when the same image data is input. Since such a situation may not be preferable, as shown in FIG. 35, the input and output of the gradation characteristic in the gradation processing are interchanged, and the gradation characteristic is the inverse conversion of the gradation processing. Such gamma correction processing is performed before each gradation processing as gradation correction processing. This is the γ correction shown in the gradation processing unit 210 in FIG. In the case of the error diffusion processing and the composite processing, a necessary γ correction table is determined in accordance with the gradation characteristics as in the case of the dither processing.
[0108]
By performing the gradation correction processing according to the gradation processing in this manner, the image density when the same image data is input can be made constant regardless of the processing area (contents of the gradation processing). Note that the above γ correction processing can be realized by calling γ correction processing among image processing functions called by middleware that determines the operation of the SIMD type processor 306. When the gradation processing is not performed, the gamma correction processing is not necessary. In this case, the gamma correction processing may be simply not called.
[0109]
Although the number of lines in the gradation processing is different depending on the dither threshold matrix used for the dither processing, as described above, the gradation processing is performed with the number of lines suitable for the image of the area according to the processing area. Thereby, a more preferable output image can be obtained. For example, in areas such as maps and group photographs, gradation processing with a relatively high number of lines and relatively high resolution is performed, and in areas such as photographs where gradation is important such as sunsets, gradation processing with a low number of lines is performed. It is good to By doing so, a more preferable output image can be obtained. Here, the mode of the gradation processing is specified by the user, and the number of lines is determined accordingly. However, the user may specify the number of lines and determine the processing content accordingly.
[0110]
Hereinafter, a control procedure for performing gradation processing according to a processing area in the copying machine will be described. Such gradation processing is realized by the control procedure shown in the flowchart of FIG.
First, in step S11, the user sets a processing area in a reading area of a document and gradation processing in the processing area. Thereafter, when the user instructs a copy start in step S12, the CPU 131 transmits the coordinates of each processing area and the contents of the gradation processing at the coordinates to the gradation processing unit 210 in step S13. Also, as needed, a program and data necessary for driving the SIMD type processor 306 are loaded into the program RAM 245 and the data RAM 246.
[0111]
The gradation processing section 210 receives the content in step S14, and extracts the gradation processing content corresponding to each pixel of the document in step S15. After completion of the extraction, the fact is transmitted to the CPU 131.
Then, the CPU 131 starts a copying operation in step S16, issues a drive command to the scanner 20 to start reading the original, and the gradation processing unit 210 ends the scanner-side processing and the preceding image processing in step S17. The image data transferred in step S15 is subjected to the gradation processing extracted in step S15 as the contents of the gradation processing at each position.
The processed image data is output to the printer 10 and the image forming output is performed after performing the processing on the printer side.
With the above control procedure, it is possible to realize the gradation processing according to the processing area.
[0112]
In the above-described embodiment, an example has been described in which the content of the gradation processing in the processing area and each processing area is manually set. However, the content of the document is automatically recognized and the processing in the processing area and each processing area is performed. The content of the tone adjustment process may be set. Also, an example has been described in which the image processing apparatus of the present invention is mounted on a copier, which is an image forming apparatus, but may be configured as a single apparatus. Further, the device on which the image processing apparatus is mounted is not limited to a copying machine, but may be mounted on another image forming apparatus such as a printer, a facsimile apparatus, or a digital multifunction peripheral. In this case, the image data processed by the image processing apparatus is not limited to the image data read by the image reading means provided in the image processing apparatus, but may be the image data read and stored in the past, the image data received from another apparatus, or the like. You may make it process. Furthermore, the image processing apparatus can be mounted on an image reading apparatus such as a scanner. In this case, the processed image data may be stored in a storage unit or transmitted to another device.
[0113]
【The invention's effect】
As described above, according to the image processing apparatus, the image forming apparatus, and the image reading apparatus of the present invention, a plurality of gradation processes are selected and set widely according to the processing area, and the processes are relatively inexpensive. It can be executed at high speed. As a result, appropriate gradation processing can be selected and set according to the user's preference and the characteristics of the document, and the image quality can be improved.
[Brief description of the drawings]
FIG. 1 is a schematic sectional view showing an outline of a mechanism of a copying machine which is an embodiment of an image forming apparatus provided with an image processing apparatus of the present invention, together with a part of a system configuration.
FIG. 2 is a block diagram showing a configuration of a drive control system of the copying machine.
FIG. 3 is a diagram showing a configuration of a laser diode modulation circuit provided in a laser optical system of the copying machine.
FIG. 4 is a block diagram showing a configuration of an image processing system of the copying machine.
FIG. 5 is a block diagram illustrating a configuration of a processing unit on a scanner side in the image processing system.
FIG. 6 is a conceptual diagram illustrating white correction and black correction in a scanner.
FIG. 7 is a diagram illustrating a sample hold in the scanner.
FIG. 8 is a diagram showing an overall configuration of an operation unit of the copying machine shown in FIG.
FIG. 9 is a diagram showing a display example of a liquid crystal display provided in the operation unit.
FIG. 10 is a diagram showing another example.
FIG. 11 is a diagram showing still another example.
FIG. 12 is a block diagram showing a configuration of an MTF filter circuit in the image processing system shown in FIG.
FIG. 13 is a diagram showing the contents of an adaptive edge enhancement filter table used in the MTF filter circuit.
14 is an explanatory diagram illustrating a schematic configuration of a SIMD type image processor provided in a gradation processing unit in the image processing system illustrated in FIG. 4;
FIG. 15 is a diagram illustrating a hardware configuration of the gradation processing unit.
FIG. 16 is a diagram showing a part thereof in more detail.
FIG. 17 is a diagram illustrating a configuration of a sequential image data processing unit illustrated in FIG. 16;
FIG. 18 is a diagram for describing handling of each pixel in an error diffusion process performed by a gradation processing unit.
FIG. 19 is a diagram for explaining an IIR filter system used in the error diffusion processing.
FIG. 20 is a diagram illustrating a functional configuration of the gradation processing unit when the gradation processing unit performs a combination of dither processing and error dispersion processing.
FIG. 21 is a diagram illustrating an example of an error diffusion matrix used for the processing.
FIG. 22 is a diagram illustrating an example of a 5 × 5 differential filter used for the processing.
FIG. 23 is a diagram illustrating an example of a 4 × 4 dither threshold matrix used for the processing.
FIG. 24 is a diagram showing another example thereof.
FIG. 25 is a diagram showing a screen angle and a line growth direction when the dither threshold matrix shown in FIG. 23 is used.
FIG. 26 is a conceptual diagram for describing dither processing by a gradation processing unit.
FIG. 27 is a flowchart showing a procedure of the dither processing.
FIG. 28 is an explanatory diagram mainly showing functions and configurations of portions related to control when performing gradation processing according to a processing area in the copying machine shown in FIG. 1;
FIG. 29 is a diagram for describing selection of gradation processing for each processing area.
FIG. 30 is a diagram illustrating an example of a dither threshold value matrix for describing the number of lines in gradation processing.
FIG. 31 is a diagram showing another example.
FIG. 32 is a diagram showing a pixel growth direction and a screen angle when the dither threshold matrix shown in FIG. 30 is used.
FIG. 33 is a diagram corresponding to FIG. 32 when the dither threshold matrix shown in FIG. 31 is used.
FIG. 34 is a diagram illustrating a difference in gradation according to the number of lines in dither processing.
FIG. 35 is a diagram illustrating the content of γ processing to be performed in a preceding stage according to the number of lines of dither processing.
FIG. 36 is a flowchart showing a control procedure for performing gradation processing according to a processing area in the copying machine shown in FIG. 1;
[Explanation of symbols]
10: Printer 20: Scanner
101: Copy machine body 104: Laser optical system
130: System control unit 131: CPU
134: System controller
151: operation unit 152: liquid crystal display
154: Area processing key 155: Image display section
200: image processing unit 210: gradation processing unit
212: area processing unit
236: Tone processing program extraction unit
237: Selector 241: Input / output port
242: bus switch / local memory group
243: Memory control unit 244: Processor array unit
245: Program RAM 246: Data RAM
247: Host buffer 248: Serial I / F
261: Register 262: Multiplexer
263: Barrel shifter 264: Logical operation unit
265: Accumulator 266: Temporary register
301: data input / output bus 302: bus switch
303: RAM 304: Memory switch
305: Memory controller
306: SIMD type processor
307: sequential image data processing unit

Claims (6)

複数個の入力レジスタ及び出力レジスタと、画像処理プログラムを格納するプログラムメモリ部と、該プログラムメモリ部に格納された画像処理プログラムにより演算処理を実行して前記複数個の入力レジスタに入力した画像データに対して並列的に画像処理を行い、その処理結果を出力画像データとして各前記出力レジスタへ出力するプログラマブル演算器とを備え、入力する画像データに対して階調処理を含む画像処理を行う画像処理手段と、
該手段によって処理する画像データについて処理領域を設定する領域設定手段と、
前記画像処理手段に前記処理領域に応じた階調処理を行わせる領域処理手段とを設けたことを特徴とする画像処理装置。
A plurality of input registers and output registers, a program memory unit for storing an image processing program, and image data input to the plurality of input registers by executing arithmetic processing by the image processing program stored in the program memory unit And a programmable operation unit that outputs image processing results to the output registers as output image data in parallel, and performs image processing including gradation processing on input image data. Processing means;
Area setting means for setting a processing area for image data to be processed by the means,
An image processing apparatus, comprising: an area processing unit that causes the image processing unit to perform gradation processing according to the processing area.
請求項1記載の画像処理装置であって、
前記画像処理手段に前記階調処理に応じた階調補正処理を行わせる手段を設けたことを特徴とする画像処理装置。
The image processing apparatus according to claim 1,
An image processing apparatus comprising: means for causing the image processing means to perform a gradation correction process according to the gradation process.
請求項1又は2記載の画像処理装置であって、
前記領域処理手段が前記画像処理手段に行わせる階調処理は、前記処理領域に応じた線数の階調処理であることを特徴とする画像処理装置。
The image processing apparatus according to claim 1, wherein:
The image processing apparatus according to claim 1, wherein the gradation processing performed by the region processing means by the image processing means is a gradation processing of the number of lines according to the processing region.
請求項1乃至3のいずれか一項記載の画像処理装置であって、
前記階調処理は、誤差拡散処理,ディザ処理,これらの組み合わせ、あるいは無処理であることを特徴とする画像処理装置。
The image processing apparatus according to claim 1, wherein:
An image processing apparatus, wherein the gradation processing is error diffusion processing, dither processing, a combination thereof, or no processing.
請求項1乃至4のいずれか一項記載の画像処理装置を備え、読み取った画像データをその画像処理装置によって処理するようにしたことを特徴とする画像読取装置。An image reading apparatus comprising the image processing apparatus according to claim 1, wherein the read image data is processed by the image processing apparatus. 請求項1乃至4のいずれか一項記載の画像処理装置を備え、画像形成する画像データをその画像処理装置によって画像処理するようにしたことを特徴とする画像形成装置。An image forming apparatus comprising the image processing apparatus according to claim 1, wherein image data for forming an image is processed by the image processing apparatus.
JP2002276431A 2002-09-24 2002-09-24 Image processing apparatus, image reader, and image forming apparatus Pending JP2004120021A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002276431A JP2004120021A (en) 2002-09-24 2002-09-24 Image processing apparatus, image reader, and image forming apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002276431A JP2004120021A (en) 2002-09-24 2002-09-24 Image processing apparatus, image reader, and image forming apparatus

Publications (1)

Publication Number Publication Date
JP2004120021A true JP2004120021A (en) 2004-04-15

Family

ID=32272303

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002276431A Pending JP2004120021A (en) 2002-09-24 2002-09-24 Image processing apparatus, image reader, and image forming apparatus

Country Status (1)

Country Link
JP (1) JP2004120021A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010154069A (en) * 2008-12-24 2010-07-08 Fuji Xerox Co Ltd Image processing apparatus
JP2010211402A (en) * 2009-03-09 2010-09-24 Ricoh Co Ltd Simd(single instruction stream-multiple data stream) type processor, character recognition device, character recognition system, character recognition method, program, and recording medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010154069A (en) * 2008-12-24 2010-07-08 Fuji Xerox Co Ltd Image processing apparatus
JP2010211402A (en) * 2009-03-09 2010-09-24 Ricoh Co Ltd Simd(single instruction stream-multiple data stream) type processor, character recognition device, character recognition system, character recognition method, program, and recording medium

Similar Documents

Publication Publication Date Title
JPH11112791A (en) Image forming device
US8390900B2 (en) Image reading device, image reading device shading correction method, and image forming apparatus
JP4167100B2 (en) Image processing apparatus, image forming apparatus, image processing method, computer program, and recording medium
JP2008187466A (en) Image processor, image processing method, computer program, and recording medium
US7420700B2 (en) Image processing system, image forming system, computer program, and recording medium
JP2006121674A (en) Image forming apparatus, image processing apparatus and image generating program
JP4755532B2 (en) Image forming apparatus
JP4226278B2 (en) Image processing apparatus, image forming apparatus, image processing method, image processing program, and recording medium recording the same
JP2003032504A (en) Image forming device
JP2006121266A (en) Image processing apparatus, and image processing program
JP2002010090A (en) Image processing method, image processor and recording medium
JP2007158844A (en) Image processor
JP3728383B2 (en) Image output system
JP2004120021A (en) Image processing apparatus, image reader, and image forming apparatus
JP2008154131A (en) Image forming apparatus
JP2018033043A (en) Image formation device, control method, and program
JP3176212B2 (en) Image processing device
JPH10322568A (en) Image forming device
JP2006121675A (en) Image processing apparatus and image processing program
JP2002305662A (en) Device and method for processing image, and device and method for forming image
JP2001268361A (en) Image processing apparatus and storage medium
JP2005260399A (en) Image processor and image forming apparatus
JPH0368270A (en) Picture processor
JP2000165667A (en) Image forming device
JP3213347B2 (en) Digital copier and contour mode processing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040916

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061101

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070828

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080304