JP4753253B2 - 画像処理装置 - Google Patents
画像処理装置 Download PDFInfo
- Publication number
- JP4753253B2 JP4753253B2 JP2006178414A JP2006178414A JP4753253B2 JP 4753253 B2 JP4753253 B2 JP 4753253B2 JP 2006178414 A JP2006178414 A JP 2006178414A JP 2006178414 A JP2006178414 A JP 2006178414A JP 4753253 B2 JP4753253 B2 JP 4753253B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- data
- processing
- threshold
- matrix
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Facsimile Image Signal Circuits (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Description
また、プリント出力等の画像出力時には、その都度、ユーザの要求や出力機器(プロッタ)の機器条件に適した出力用データを生成する処理を行う。この処理には、中間調の多値画像データに対し、出力機器(プロッタ)が表現できる画像データ(例えば、2値化)に変換する中間調処理が含まれる。
従来の出力用データの処理プロセスでは、集約処理を行う場合、記憶装置に格納された画像データを出力用データの処理系によって、画像データごとに別々に中間調処理を施し、その後、プロッタに出力するデータとして、記憶装置で1つの画像フレームに集約・合成される。
画像の集約処理は、図1の2画像の例に示すように、画像領域マスクがある場合(A)と、ない場合(B)がある。上記のプロセスで中間調処理と集約処理を行う際、図1(A)の場合には、マスクによる余白によって、画像Iと画像IIの領域同士が直接接していないので、中間調処理の結果として生じ得る境界問題が認識されることがないが、(B)の隣接する画像Iと画像IIの領域同士が余白なしにつながっている場合、次に示す2つの問題点が認識される。
1.中間調処理がディザ処理の場合には、図2に示すように、画像Iと画像IIの境界部において階調に応じて生成される斜めのディザパターンがずれることがある。また、同様に閾値変動誤差拡散処理の場合にも、階調に応じて生成される斜めの直線パターンがずれることがある。
2.中間調処理が誤差拡散処理の場合には、画像Iと画像IIの境界部ではドット生成が遅れてしまうため、図3に示すように、文字(図中、文字「A」として示す)が境界部を跨がり、繋がっているとき、文字が境界部で数ライン消えてしまう。
ディザの閾値マトリクスから適用する閾値を選択する操作は、次の様に行う。ディザの閾値マトリクスをN×Nとした場合、副走査の1ライン目の主走査先頭画素では、必ず閾値選択部162のポインタが1行1列目の閾値データを指し示しているので、始めにその閾値データを選択し、以後、1行2列目の閾値データ、1行3列目の閾値データ、…、1行N列目の閾値データまで閾値選択部162が閾値を選択する。N列目まで選択し終わると、ポインタが始めの位置に戻って、再び1行1列目の閾値データ、1行2列目の閾値データ…の順に選択される。主走査1ライン分の処理が終わるまでこの処理が繰り返される。次に、副走査の2ライン目の画像データを処理する際には、閾値選択部は2行1列目の閾値データを選択し、以後2行2列目の閾値データ、2行3列目の閾値データ、…、2行N列目の閾値データが選択される。この後も1ライン目と同じように再びポインタが2行1列目の閾値データに戻るので、その閾値データが選択され、以後順々に2行目の閾値データが繰り返し選択されていく。N+1ライン目の処理では、主走査先頭画素と比較演算行う際に、閾値選択部162のポインタが再び1行1列目に戻り、1行目の閾値データが同様に順々に選択される。N+2ライン目の処理は、2行目の閾値データが、N+3ライン目の処理では、3行目の閾値データが順々に選択されていく。このように閾値選択部により、閾値データをマトリクスの行・列ごとに繰り返し選択する。
ここで、図1(B)のような2画像データを1フレームに集約する場合を考えてみると、図5に示すように、左側の画像データにおける主走査方向の画素数がディザの閾値マトリクスの列数で割り切れないと、右側の画像データをディザ処理する際に、閾値選択部162は、再び閾値マトリクスの1行1列目の閾値データから選択を始めてしまうため、左側の画像と右側の画像との境界部でディザの閾値マトリクスが不連続になってしまう(なお、図5は、閾値マトリクス「N×N」が「4×1」の場合を例にしている)。ディザ処理では、図2の拡大図に示す様に、斜めのディザパターンを生成することが多く、画像境界部でディザの閾値マトリクスが不連続になると出力画像上にも出力パターンのずれとして現われ、ユーザに違和感を生じさせてしまう。
また、擬似的に中間調を表現するこの種の中間調処理として知られている、閾値変動誤差拡散処理においても、この処理に用いる閾値マトリクスが、ディザマトリクスと同様の形をしていることが多いため、ディザ処理と全く同様の問題が生じる。
この誤差拡散処理で淡い、即ち、階調値の小さい文字が、図3に示すように、左側と右側の画像の境界部を跨がり、繋がっている場合を考えてみる。
誤差拡散処理は、上記ディザ処理と同じように、主走査の先頭画素から比較演算を行っているので、左側の画像の画像境界部では誤差バッファ142に誤差データが蓄積されているので、文字部では、ほぼ等間隔でドットが打たれる。しかし、右側の画像の画像境界部では、この境界部が誤差拡散処理の主走査ラインでの開始位置であるため、比較演算に左側の画素による誤差データが利用できない。さらに、階調数が小さいと、発生する誤差も小さいので、ドットが打たれるまでの誤差の蓄積時間もそれだけ長くかかる。こうしたことから、本来2画像間の境界面でつながってほしい文字が、図3の拡大図に示すように、右側の境界部辺りでは、数ライン分のドットが消えてしまい、ユーザに違和感を生じさせてしまう。
特許文献1には、プラズマディスプレイパネル等の表示デバイスを画像出力機器とし、映像入力信号に誤差拡散を用いることによって起きる表示開始位置のずれ補正にかかわる回路が示されている。この補正回路は、画像の表示開始領域の映像入力信号に画像内容に与える影響が少ない低レベルの補正用の信号を付加することによって、誤差成分の蓄積を早め、表示開始位置のずれを低減することを可能にするものである。
本発明は、上述の従来技術の問題に鑑み、これを解決するためになされたもので、複数の画像データをもとに、1フレームに画像同士が境界部で接するように、集約した画像出力用データを生成する際に、閾値マトリクス方式の階調(中間調)処理を用いても、ユーザに違和感を生じさせる出力パターンのずれや数ライン分のドットの消失が起きないようにすることにある。
請求項2の発明は、複数の画像データをもとに、1フレームに境界線を対称軸として2画像を集約した画像出力用データを生成する際に、閾値マトリクス方式の中間調処理手段を用いて画像データに中間調処理を施す画像処理装置であって、前記中間調処理手段は、後から処理される画像に対し、中間調処理を施す前に鏡面画像へ変換する鏡面変換手段と、変換後の鏡面画像に中間調処理を施す際に、該鏡面画像に適用する閾値マトリクスデータとして、先に処理された画像に適用したマトリクスデータとの連続性が保たれるように、鏡面画像に適用するマトリクスデータの並び替えを行うマトリクスデータ調整手段と、中間調処理が施された鏡面画像を逆変換する鏡面変換手段を備えたことを特徴とする。
また、1フレームに画像同士が境界部で接するように、複数画像を集約した画像出力用データを生成する際に、画像データに施される誤差拡散処理を伴う閾値マトリクス方式の中間調処理において、隣接画像の端部画像データを用いること、或いは画像のミラーリング処理で、集約画像の処理における誤差データを補償するようにしたので、従来方式で集約画像の境界部に起きていた数ライン分のドットの消失を生じることが無く、画質の向上を図ることが可能になる。
以下に示す実施形態は、デジタルカラー複写機をベースにFAX(ファクシミリ)機能・プリンタ機能・スキャナ機能・ドキュメントボックス機能等を複合したMFP(複合機)に本発明の画像処理装置を適用した例を示す。ただ、適用する装置は、電子化データをもとに画像出力用のデータを生成する処理を行う装置であれば良く、プリント出力を行う装置としては、以下に例示するカラー対応のMFP以外の単能機であっても良いし、モノクロ機であっても、本例と同様に実施可能である。
“MFPの概要”
図7は、本実施形態のMFPの全体構成を示すブロック図である。
読取り装置1はCCD(Charge Coupled Device)光電変換素子からなるラインセンサとA/Dコンバータとこれらの駆動回路を具備し、セットされた原稿を2次元走査(主・副走査)方式でスキャンすることで得る原稿の濃淡情報から、8ビットのデジタル画像データを生成し出力する。ここでは、原稿を3原色(R:Red,G:Green,B:Blue)で色分解し、カラーで読取るので、3ラインのカラーCCDを用いて、RGB各8ビットの画像データを得る。
画像データ処理装置 (1) 2は、読取り装置1で読取られた機器条件に依存する画像データに対し、補正・変換処理を行うことにより、データを正規化、汎用化し、本例では、一旦データをMFP内部に蓄積するために、蓄積場所であるメモリ7或いはHDD(Hard Disk Drive)5等の記憶装置に出力する。
バス制御装置3は、MFP内で必要な画像データや制御コマンド等の各種データのやり取りを行うデータバスの制御装置で、複数種のバス規格間のブリッジ機能も有している。本例では、画像データ処理装置 (1) 2、画像データ処理装置 (2) 4、CPU(Central Processing Unit)6とはPCI(Peripheral Component Interconnect)-Expressバスで、又HDD5とはATA(AT Attachment)バスで接続し、ASIC(Application Specific Integrated Circuit)化している。
画像データ処理装置 (2) 4は、画像データ処理装置 (1) 2で正規化、汎用化されたデジタル画像データに対し、ユーザによって指示される出力方法に適した画像処理を施し、出力する。本案は、複数の画像データをもとに生成される集約画像出力用データに閾値マトリクス方式の中間調処理を施す際の処理方法に特徴を有する。この点に関しては、後記で詳細に説明する。
HDD5は、電子データを保存するための比較的大容量の記憶装置で、MFP内では主にデジタル画像データおよびデジタル画像データの付帯情報を蓄積する。また本例ではIDE(Intelligent Drive Electronics)を拡張して規格化されているATAバス接続のハードディスクを使用する。
メモリ7は、複数種のバス規格間をブリッジする際の速度差や、接続された部品自体の処理速度差を吸収するために、一時的にやりとりするデータを記憶したり、CPU6がMFPの制御を行う際に、プログラムや中間処理データを一時的に記憶する揮発性メモリである。CPU6には高速処理が求められるため、通常起動時にROM(Read Only Memory)14に記憶されたブートプログラムにてシステムを起動し、その後は高速にアクセス可能なメモリ7に展開されたプログラムによって処理を行う。本例では規格化され、PC(パーソナルコンピュータ)で通常使用されているDIMM(Dual In-line Memory Module)を使用する。
プロッタI/F装置8は、CPU6にインテグレートされた汎用規格I/F経由で送られてくるCMYK(カラー成分色:シアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K))からなるデジタル画像データを受け取ると、プロッタ装置9の専用I/Fに出力するバスブリッジ処理を行う。本例で使用している汎用規格I/FはPCI-Expressバスである。
プロッタ装置9は、画像データ処理装置 (2) 4から受取るCMYKからなるデジタル画像データによって出力光が制御されるレーザービームを用いる電子写真プロセスによって、記録媒体(転写紙)への画像出力を行う。
ROM14は、CPU6がMFPの制御を行う際のプログラム(ブートプログラムを含む)が格納されるメモリである。
操作表示装置10は、MFPとユーザとの間のインターフェースを提供し、LCD(液晶表示装置)とキースイッチから構成され、MFPの各種機器状態をユーザに知らせたり、ユーザの操作方法をガイドするためのメッセージ等をLCDに表示し、又ユーザによるキースイッチへの操作入力を検知する。本例では、上記の動作をCPU6の管理下で行うために、操作表示装置10がPCI-Expressバスを介してCPU6に接続される。
回線I/F装置11は、PCI-Expressバスと電話回線を接続する装置で、この装置によりMFPは電話回線を介して各種データのやり取りを行うことを可能にし、外部に設置されたファクシミリFAX15とのFAX送信/受信により、画像データの授受を行う。
外部I/F装置12は、PCI-Expressバスと外部に設置されたPC等の画像処理装置を接続する装置で、この装置によりMFPは、外部装置と各種データのやり取りを行うことが可能になる。この接続を可能とするI/Fとして、例えばイーサネット(登録商標)等のネットワークに対応するものを使用することによって、外部のPC16にインストールされたアプリケーションソフトやドライバを介して、ユーザは本MFPに対して各種制御や画像データの入出力を行う。
“コピー動作”
ユーザは、原稿を読取り装置1にセットし、操作表示装置10で所望のモード等の設定とコピー開始の入力操作を行う。
操作表示装置10は、ユーザの操作によって入力された情報を、機器内部の制御コマンドデータに変換し、発行する。発行された制御コマンドデータは、PCI-Expressバスを介してCPU6に通知される。
CPU6は、コピー開始の制御コマンドデータに応じて、コピー動作プロセスのプログラムを起動し、コピー動作に必要な設定や動作を以下のプロセスに従って実行する。
読取り装置1で原稿をスキャンし、得られたRGB各8ビットのデジタル画像データは、画像データ処理装置 (1) 2で補正・変換処理が施され,データが正規化、汎用化され、バス制御装置3に送られる。
バス制御装置3は、CPU6を介して画像データ処理装置 (1) 2から受取ったRGB画像データをメモリ7に蓄積する。
次に、メモリ7に蓄積されたRGB画像データは、CPU6及びバス制御装置3を介して、画像データ処理装置 (2) 4に送られる。
画像データ処理装置 (2) 4は、受け取ったRGB画像データを、プロッタ出力用のCMYK画像データに変換し、出力する。
バス制御装置3は、画像データ処理装置 (2) 4からのCMYK画像データを受け取ると、CPU6を介してメモリ7に蓄積する。
次に、メモリ7に蓄積されたCMYK画像データは、CPU6及びプロッタI/F装置8を介して、プロッタ装置9に送られる。
プロッタ装置9は、受け取ったCMYK画像データによって出力光が制御されるレーザービームを用いて感光体を露光し、トナーによる現像、記録媒体(転写紙)への転写、定着、といった電子写真プロセスによって、画像のプリント出力処理を行う。こうした一連のプロセスを実行することによって、原稿のコピーが作成される。
ユーザは、原稿を読取り装置1にセットし、操作表示装置10で所望のモード等の設定とFAX送信開始の入力操作を行う。
操作表示装置10は、ユーザの操作によって入力された情報を、機器内部の制御コマンドデータに変換し、発行する。発行された制御コマンドデータは、PCI-Expressバスを介してCPU6に通知される。
CPU6は、FAX送信開始の制御コマンドデータに応じて、FAX送信動作プロセスのプログラムを起動し、FAX送信動作に必要な設定や動作を以下のプロセスに従って実行する。
読取り装置1で原稿をスキャンし、得られたRGB各8ビットのデジタル画像データは、画像データ処理装置 (1) 2で補正・変換処理が施され,データが正規化、汎用化され、バス制御装置3に送られる。
バス制御装置3は、CPU6を介して画像データ処理装置 (1) 2から受取ったRGB画像データをメモリ7に蓄積する。
次に、メモリ7に蓄積されたRGB画像データは、CPU6及びバス制御装置3を介して、画像データ処理装置 (2) 4に送られる。
画像データ処理装置 (2) 4は、受け取ったRGB画像データを、FAX送信用のモノクロ2値の画像データに変換し、出力する。
バス制御装置3は、画像データ処理装置 (2) 4からのモノクロ2値画像データを受け取ると、CPU6を介してメモリ7に蓄積する。
次に、メモリ7に蓄積されたモノクロ2値画像データは、CPU6を介して、回線I/F装置11に送られる。
回線I/F装置11は、受け取ったモノクロ2値画像データを、回線を介して接続したFAX15に送信する。
ユーザは、原稿を読取り装置1にセットし、操作表示装置10で所望のモード等の設定とスキャナ配信開始の入力操作を行う。
操作表示装置10は、ユーザの操作によって入力された情報を、機器内部の制御コマンドデータに変換し、発行する。発行された制御コマンドデータは、PCI-Expressバスを介してCPU6に通知される。
CPU6は、スキャナ配信開始の制御コマンドデータに応じて、スキャナ配信動作プロセスのプログラムを起動し、スキャナ配信動作に必要な設定や動作を以下のプロセスに従って実行する。
読取り装置1で原稿をスキャンし、得られたRGB各8ビットのデジタル画像データは、画像データ処理装置 (1) 2で補正・変換処理が施され,データが正規化、汎用化され、バス制御装置3に送られる。
バス制御装置3は、CPU6を介して画像データ処理装置 (1) 2から受取ったRGB画像データをメモリ7に蓄積する。
次に、メモリ7に蓄積されたRGB画像データは、CPU6及びバス制御装置3を介して、画像データ処理装置 (2) 4に送られる。
画像データ処理装置 (2) 4は、受け取ったRGB画像データをスキャナ配信用の画像データとして、RGB多値,グレースケール,モノクロ2値等に変換し出力する。
バス制御装置3は、画像データ処理装置 (2) 4からの画像データを受け取ると、CPU6を介してメモリ7に蓄積する。
次にメモリ7に蓄積された画像データは、CPU6を介して、外部I/F装置12に送られる。
外部I/F装置12は、受け取った画像データを、ネットワークを介して接続したPC16に送信する。
この動作モードは、原稿のスキャン画像データをMFP内に蓄積・保存する動作に加え、蓄積・保存した画像データを用いてコピー動作を行い、その後も、蓄積・保存したデータの再利用を可能とするものである。
ユーザは、原稿を読取り装置1にセットし、操作表示装置10で、コピー+HDDへの蓄積・保存の動作モードに係わる所望の設定とコピー開始の入力操作を行う。
操作表示装置10は、ユーザの操作によって入力された情報を、機器内部の制御コマンドデータに変換し、発行する。発行された制御コマンドデータは、PCI-Expressバスを介してCPU6に通知される。
CPU6は、コピー開始の制御コマンドデータに応じて、コピー+HDDへの蓄積・保存を行う動作プロセスのプログラムを起動し、この動作に必要な設定や動作を以下のプロセスに従って実行する。
読取り装置1で原稿をスキャンし、得られたRGB各8ビットのデジタル画像データは、画像データ処理装置 (1) 2で補正・変換処理が施され、データが正規化、汎用化され、バス制御装置3に送られる。
ここで、画像データ処理装置 (1) 2で行う補正・変換処理プロセスについて、この処理装置内の処理ブロックを示す図8を参照して説明する。
γ変換30は、読取り装置1から受け取ったRGB画像データの明るさを予め定めた特性のデータに変換する。本例では明度リニアな特性のデータに変換する。
フィルタ処理31は、RGB画像データの鮮鋭性を予め定めた特性のデータに変換する。本例では、基準チャートを読取り装置1でスキャンしたときに、線数毎に対して予め定めたMTF特性値になるような変換を施す。
色変換32は、RGB画像データの色を予め定めた特性のデータに変換する。本例では、色空間が標準色空間として用いられる、例えば、Adobe−RGBのような色空間になるように変換する。
変倍処理33はRGB画像データのサイズ(解像度)を予め定めた値に統一する。本例では、サイズ(解像度)を600dpiに変換する。
メモリ7に蓄積したRGB画像データは、CPU6及びバス制御装置3を介して、HDD5に送信され、HDD5内に蓄積・保存される。
その後、上述の“コピー動作”と同様に、メモリ7に蓄積されたRGB画像データは、CPU6及びバス制御装置3を介して、画像データ処理装置 (2) 4に送られる。
画像データ処理装置 (2) 4は、受け取ったRGB画像データを、プロッタ出力用のCMYK画像データに変換し、出力する。
ここで、画像データ処理装置 (2) 4で行う補正・変換処理プロセスについて、この処理装置内の処理ブロックを示す図9を参照して説明する。
フィルタ処理50はRGB画像データの鮮鋭性を、プロッタ装置9に出力する場合の再現性が良くなるように補正する。具体的には、操作表示装置10を通じて設定されたモード情報に従って、鮮鋭化/平滑化処理を施す。例えば、文字モードでは文字をハッキリ/クッキリとするために、鮮鋭化処理を施し、写真モードでは滑らかに階調性を表現するため平滑化処理を施す。
色変換51は、本例では、上記のようにRGB標準色空間で表現されているので、受け取ったこのRGB各8ビットのデータをプロッタ装置用の色空間であるCMYK各8ビットに変換する。このときにユーザが操作表示装置10を通じて設定したモード情報に従って、彩度もあわせて調整する。
変倍処理52は、CMYK画像データのサイズ(解像度)を、プロッタ装置9の再現性能に従って、サイズ(解像度)変換を行う。本例ではプロッタ9の性能が600dpi出力であるため、特に変換は行わない。
階調処理53は、CMYK各8ビットを受け取るとプロッタ装置9の階調処理能力に従った階調数変換処理を行う。本例ではCMYK各2ビットに疑似中間調処理の一つである誤差拡散法を用いて階調数の変換を行う。なお、本案は、複数の画像データをもとに生成される集約画像出力用データに閾値マトリクス方式の中間調処理を施す際の処理方法に特徴を有するので、この点に関しては、後記で詳細に説明する。
画像データ処理装置 (2) 4によって処理され、メモリ7に蓄積されたCMYK画像データは、CPU6及びプロッタI/F装置8を介して、プロッタ装置9に送られる。
プロッタ装置9は、受け取ったCMYK画像データによって出力光が制御されるレーザービームを用いて感光体を露光し、トナーによる現像、記録媒体(転写紙)への転写、定着、といった電子写真プロセスによって、画像のプリント出力処理を行う。こうした一連のプロセスを実行することによって、原稿のコピーが作成される。
HDD5内に蓄積・保存した画像データを再利用し、FAX送信を行う場合の動作を説明する。
ユーザは、先の動作時にHDD5内に蓄積した画像データに対し、操作表示装置10で所望のモード等の設定とFAX開始の入力操作を行う。
操作表示装置10は、ユーザの操作によって入力された情報を、機器内部の制御コマンドデータに変換し、発行する。発行された制御コマンドデータは、PCI-Expressバスを介してCPU6に通知される。
CPU6は、FAX送信開始の制御コマンドデータに応じて、FAX送信動作プロセスのプログラムを起動し、FAX送信動作に必要な設定や動作を以下のプロセスに従って実行する。
バス制御装置3は、HDD5内に蓄積されているRGB画像データを、CPUを介してメモリ7に出力する。
次に、メモリ7に蓄積されたRGB画像データは、CPU6及びバス制御装置3を介して、画像データ処理装置 (2) 4に送られる。
画像データ処理装置 (2) 4は、受け取ったRGB画像データを、FAX送信用のモノクロ2値の画像データに変換し、出力する。
ここで、画像データ処理装置 (2) 4で行う補正・変換処理について、この処理装置内の処理ブロックを示す図9を参照して説明する。
フィルタ処理50は、RGB画像データの鮮鋭性を、FAX送信する場合の再現性が良くなるように補正する。具体的には、操作表示装置10を通じて設定されたモード情報に従って、鮮鋭化/平滑化処理を施す。例えば、文字モードでは文字をハッキリ/クッキリとするために、鮮鋭化処理を施し、写真モードでは滑らかに階調性を表現するため平滑化処理を施す。
色変換51は、RGB各8ビットのデータを受け取ると、FAX装置で一般的な単色(モノクロ)8ビットに変換する。
変倍処理52は、モノクロ画像データのサイズ(解像度)を、FAX装置で送受されるサイズ(解像度)変換を行う。本例では、主走査:200dpi × 副走査:100dpiに変換する。
階調処理53では、モノクロ8ビットを受け取るとFAX装置で送受される階調処理能力に従った階調数変換処理を行う。本例では、疑似中間調処理の一つである誤差拡散法を用いて、2値に階調数を変換する。なお、本案は、複数の画像データをもとに生成される集約画像出力用データに閾値マトリクス方式の中間調処理を施す際の処理方法に特徴を有するので、この点に関しては、後記で詳細に説明する。
この後、バス制御装置3は、画像データ処理装置 (2) 4からのモノクロ2値画像データを受け取ると、CPU6を介してメモリ7に蓄積する。
次に、メモリ7に蓄積されたモノクロ2値画像データは、CPU6を介して、回線I/F装置11に送られる。
回線I/F装置11は、受け取ったモノクロ2値画像データを、回線を介して接続したFAX15に送信する。
HDD5内に蓄積・保存した画像データを再利用し、スキャナ配信を行う場合の動作を説明する。
ユーザは、先の動作時にHDD5内に蓄積した画像データに対し、操作表示装置10で所望のモード等の設定とスキャナ配信開始の入力操作を行う。
操作表示装置10は、ユーザの操作によって入力された情報を、機器内部の制御コマンドデータに変換し、発行する。発行された制御コマンドデータは、PCI-Expressバスを介してCPU6に通知される。
CPU6は、スキャナ配信開始の制御コマンドデータに応じて、スキャナ配信動作プロセスのプログラムを起動し、スキャナ配信動作に必要な設定や動作を以下のプロセスに従って実行する。
バス制御装置3は、HDD5内に蓄積されているRGB画像データを、CPUを介してメモリ7に出力する。
次に、メモリ7に蓄積されたRGB画像データは、CPU6及びバス制御装置3を介して、画像データ処理装置 (2) 4に送られる。
画像データ処理装置 (2) 4は、受け取ったRGB画像データを、スキャナ配信用の画像データとして、RGB多値,グレースケール,モノクロ2値等に変換し、出力する。
ここで、画像データ処理装置 (2) 4で行う補正・変換処理について、この処理装置内の処理ブロックを示す図9を参照して説明する。
フィルタ処理50は、RGB画像データの鮮鋭性を、スキャナ配信する場合の再現性が良くなるように補正する。具体的には、操作表示装置10を通じて設定されたモード情報に従って、鮮鋭化/平滑化処理を施す。例えば、文字モードでは文字をハッキリ/クッキリとするために、鮮鋭化処理を施し、写真モードでは滑らかに階調性を表現するため平滑化処理を施す。
色変換51は、RGB各8ビットのデータを受け取ると、指定される色空間に変換する。例えば、スキャナ配信で一般的なsRGB色空間に各色8ビットで変換する。
変倍処理52は、sRGB画像データのサイズ(解像度)を、指定されたスキャナ配信で送受されるサイズ(解像度)への変換を行う。本例では主走査:200dpi×副走査:200dpiに変換する。
階調処理53では、指定されたスキャナ配信で送受される階調処理能力に従った階調数変換処理を行う。本例では、RGB各8bitの16万色が指定されたものとして、階調処理は、特に実施しない。なお、本案は、複数の画像データをもとに生成される集約画像出力用データに閾値マトリクス方式の中間調処理を施す際の処理方法に特徴を有するので、この点に関しては、後記で詳細に説明する。
バス制御装置3は、画像データ処理装置 (2) 4からの画像データを受け取ると、CPU6を介してメモリ7に蓄積する。
次にメモリ7に蓄積された画像データは、CPU6を介して、外部I/F装置12に送られる。
外部I/F装置12は、受け取った画像データを、ネットワークを介して接続したPC16に送信する。
本MFPは、集約処理を行う機能を持つ。集約機能そのものは、既存のMFP等の画像処理装置が有するもので、普通、コピー機能に付属して利用できるように仕組まれており、複数枚の原稿、或いは表裏面に画像をもつ両面原稿における複数の画像を転写紙の1面に合成して出力する機能である。
集約機能の利用時に、ユーザは、操作表示装置10から、原稿の両面/片面の種別、コピー出力の両面/片面の種別、集約数等の集約モードの設定を行うことにより所望の出力を得ることを可能とする。
集約処理は、複数の画像データをプロッタ出力用の1フレームの画像データに合成する処理を必要とし、基本的には、メモリ間のデータ転送を、各画像が転送先で1フレームの画像となるような操作によって行う。この合成処理は、上記したMFPの構成(図7)においては、画像データ処理装置 (2) 4から出力されるプロッタ出力用のCMYK画像データを受取るバス制御装置3が、CPU6を介してプロッタ出力用の1フレームの画像データをメモリ7に展開する処理に当たる。つまり、集約される画像は、それぞれメモリ7に展開される1フレームを構成する画像の指定の記憶領域に書込まれ、図1に示すような集約化を行う。
また、集約処理に伴う処理として、画像の集約数及び原稿と転写紙のサイズの関係によっては、画像の変倍処理を必要とする。この処理は、画像データ処理装置 (2) 4の変倍処理52(図9、参照)によって、画像を合成する前に行う。なお、画像合成、画像変倍は、いずれも処理手法そのものは、既知の手法を用いることにより実施することができる。
上記した集約機能により、複数の画像データをもとに1フレームの画像への合成処理を行う際に、合成処理の前段で先に図9を参照して説明したように、画像データ処理装置 (2) は、出力画像データに階調処理53を施す。
従来、この階調処理は、閾値マトリクス方式によって行われるが、そのとき、合成する画像同士が接する境界部で階調処理の連続性を保つことができなかったため、ユーザに違和感を生じさせる出力パターンのずれや数ライン分のドットの消失が起きていた(上記[背景技術]の項における説明、参照)。
そこで、本案では、閾値マトリクス方式の階調処理における処理条件を調整もしくは補償する手段を備えることにより、集約する画像同士が接する境界部で起きる出力パターンのずれや数ライン分のドットの消失、という問題を解消するものである。
出力パターンのずれに対しては、集約する画像の境界部において、適用する閾値マトリクスが画像間で不整合となる、即ちマトリクスデータの連続性が保たれなくなることに起因するものであるから、不整合を調整することにより、問題を解消することが可能であり、下記実施形態1〜3には、それぞれ異なる実現手段による実施形態を示す。
また、誤差拡散処理を伴う閾値マトリクス方式の階調処理において、境界部で起きる数ライン分のドットの消失に対しては、集約する画像の先端部の画素に対する誤差データが実際のデータ値に基づいて求められていないことに起因するものであるから、隣接画像の端部画像データを補償することにより、問題を解消することが可能であり、下記実施形態4〜7には、それぞれ異なる実現手段による実施形態を示す。
本実施形態は、集約される画像同士が接する境界部で起きる出力パターンのずれを解消するために、ずれの原因となっている、画像間で適用する閾値マトリクスの閾値データの不整合を無くし、連続性を保つようにすることを目的とするものである。
従来、階調処理の対象となる画像における副走査1ライン目の主走査の先頭画素に対し閾値として用いられる閾値マトリクスから選択されるデータは、マトリクスの1行1列目の閾値データとして固定されていたために、集約する画像の境界部において、連続性が保てなくなる場合が生じていた(上記[背景技術]の項における図5に関する説明、参照)。
ここでは、この不具合を解消し、連続性を保つために、集約の対象となる画像に適応させて、調整量としてオフセット値を入力する。このオフセット値は、閾値マトリクスから処理に用いる閾値データを選択するために設定される値をオフセットできるようにし、マトリクスデータの連続性を保つようにする、という役割を持つ。
図10は、上記オフセットの役割を説明する図で、ディザマトリクス[1234]の例を示すものである。同図は、従来技術として示した図5と同様の集約処理を行う場合に、集約される画像同士が接する境界部で、マトリクスデータの連続性を保つように、マトリクスデータの終了位置がデータ[1]であれば、マトリクスの開始位置をデータ[2]から始まるように、オフセット“1”を調整量として入力する。
図11の構成において、画像データ入力部110を介して入力される画像データは、比較部130でディザ閾値と比較され、プロッタ出力用の2値データに変換され、出力部を介して1フレームの集約画像としてメモリ7に展開される。
ここに、画像データに適用するディザ閾値は、ディザの閾値マトリクス記憶部160に記憶されている閾値マトリクスのデータの中から、入力画像データの画素ごとに閾値選択部162のポインタが指し示す閾値データを選択し、比較部130に送られ、比較演算に用いられる。
ディザの閾値マトリクスから適用する閾値を選択する操作は、次の様に行う。ディザの閾値マトリクスを図10に例示したマトリクス[1234]とした場合、副走査の1ライン目の主走査先頭画素では、必ず閾値選択部162のポインタが1行1列目の閾値データ[1]を指し示しているので、始めにその閾値データを選択し、以後、1行2列目の閾値データ[2]、…、1行4列目の閾値データ[4]まで閾値選択部162が閾値を選択する。4列目まで選択し終わると、ポインタが始めの位置に戻って、再び1行1列目の閾値データ[1]、1行2列目の閾値データ[2]、…の順に選択される。主走査1ライン分の処理が終わるまでこの処理が繰り返される。また、副走査の2ライン目の画像データについても同様に処理される。上記の動作は、オフセット入力163がない場合(オフセット“0”)の動作である。
他方、オフセット入力163にオフセット“1”を調整量として入力すると、副走査の1ライン目の主走査先頭画素では、閾値選択部162のポインタの初期位置である1行1列目の閾値データ[1]から調整量1だけオフセットした、1行2列目のをポインタが指し示すようになるので、始めにその閾値データ[2]を選択する。以降、マトリクスの列順にデータを選択し、4列目まで選択し終わると、ポインタが始めの位置に戻り、この選択操作を繰返す。また、副走査の2ライン目についても、主走査先頭画素では、閾値選択部162のポインタの初期位置である1行1列目の閾値データ[1]から調整量“1”だけオフセットさせ、副走査の1ライン目と同様に選択操作を行う。
上記のように、オフセット入力163にオフセット“1”を調整量として入力することによって、図10に示した閾値データの選択操作を行うことが可能になり、マトリクスデータの連続性が保たれ、集約される画像同士が接する境界部で起きる出力パターンのずれが生じることはない。
図12は、オフセット入力により閾値データの選択を制御可能とした本実施形態の閾値変動誤差拡散を伴う処理系の構成を示す。
図12の構成において、画像データ入力部110を介して入力される画像データは、比較部130で閾値と比較され、プロッタ出力用の階調数へデータ変換され、出力部150を介して1フレームの集約画像としてメモリ7に展開される。
ここでは、階調変換に誤差拡散方式を用いている。入力画像データは、誤差加算120で拡散誤差データを加算された後、比較部130で閾値と比較される。比較結果として出力される階調変換後のデータは、比較部130への入力データとの間の誤差が誤差算出140で求められ、得られた誤差データは、誤差バッファ142に保持される。積和計算144は、誤差バッファ142に保持された注目画素の周辺の処理済み画素に関する誤差データをもとに、所定の領域の周辺画素まで誤差を拡散させるため、次の注目画素へ拡散させる誤差データを計算する。拡散誤差データは、誤差加算120で入力画像データに加算される。
比較部130において、誤差拡散処理を経て入力される画像データに適用するディザ閾値は、閾値マトリクス記憶部160に記憶されている閾値マトリクスのデータの中から、入力画像データの画素ごとに閾値選択部162のポインタが指し示す閾値データを選択し、比較部130に送られ、比較演算に用いられる。オフセット入力163から調整量として入力されるオフセット値に従って閾値マトリクスから適用する閾値を選択する操作は、図11を参照して説明したディザ処理におけると同様に行う。
本実施形態は、上記実施形態1と同様に、閾値マトリクスから処理に用いる閾値データを選択するために設定される値をオフセット入力163により調整するという方法を採用する。ただ、本例では、調整量をフレーム中の各画像の集約位置に応じて決定するための手法を提案するもので、画像の集約位置及び閾値マトリクスのサイズが変っても、変化に応じて、マトリクスデータの連続性が保たれるようにオフセット値を定めることで、汎用性の向上を図ることを可能にする。なお、処理系の基本構成は、図11及び図12と変わらない。
図13は、フレーム中の集約画像の位置を説明する図である。同図は、集約画像の先頭画素、即ち、集約画像における副走査1ライン目の主走査1つ目の画素が、フレーム中の主走査方向m番目の画素、副走査方向n番目の画素に当たることを示している。
図13に示すようなフレーム中の集約位置に画像が集約される場合、この集約画像にディザマトリクスもしくは閾値変動誤差拡散の閾値マトリクスを適用して、中間調処理をする。適用する閾値マトリクスは、そのアドレスが、図14のように、割り振られているY×Xのマトリクスとする。
上記の条件の下で、集約画像に対しマトリクスデータが連続性を保つように、データを適用するためには、以下の式(1)で決定されるアドレス値をオフセット値として、マトリクスの閾値データを選択するポインタ値を調整する。
オフセット値:X{mod(n−1,Y)}+mod(m−1,X)・・・式(1)
ただし、上記式(1)のmod(A,B)は、A÷Bの余りの値を表す。
従って、集約画像の副走査1ライン目の主走査先頭画素との比較演算をする際に、閾値選択部が、閾値マトリクス(図14)の(a+オフセット値)番目の閾値データを選択する。
CPU6は、画像データ処理装置(2)の階調処理53に集約画像のディザ処理もしくは閾値変動誤差拡散処理を行わせる際に、予め演算により求めておいた上記のオフセット値をオフセット入力部168に与えることにより、マトリクスの閾値データを選択するポインタ値を調整する。
従来のように、階調処理の対象となる画像における副走査1ライン目の主走査の先頭画素に対し閾値として用いられる閾値マトリクスから選択されるデータは、マトリクスの1行1列目の閾値データとして固定されていると、集約する画像の境界部において、連続性が保てなくなる場合が生じ、集約される画像同士が接する境界部で出力パターンのずれが起きる(上記[背景技術]の項における図5に関する説明、参照)。
ここでは、この不具合を解消し、連続性を保つために、集約の対象となる画像に用いる閾値マトリクスを画像の集約状態に対応して、並び替えることにより、調整を図る。マトリクスの並び替えは、特定の画像を基準に隣接画像の集約状態に応じ,適用する閾値マトリクスの行/列方向の移動による。また、並び替えに必要な移動量は、演算により求められ、並び替え演算で得た移動量によって、閾値マトリクスの保管場所におけるデータが並び替えられる。
図15は、この実施形態を説明するための集約例を示す。同図に示すように、各々(3500×2500)画素の画像サイズを持つ4画像を、画像 (1) →画像 (2) →画像 (3) →画像 (4) の順で集約する場合を例にする。
図16は、閾値マトリクスの並び替えを可能とした本実施形態のディザ処理系の構成を示す。
図16の構成において、画像データ入力部110を介して入力される画像データは、比較部130でディザ閾値と比較され、プロッタ出力用の2値データに変換され、出力部を介して1フレームの集約画像としてメモリ7に展開される。
ここに、画像データに適用するディザ閾値は、ディザの閾値マトリクス記憶部160に記憶されている閾値マトリクスのデータの中から、入力画像データの画素ごとに閾値選択部162のポインタが指し示す閾値データを選択し、比較部130に送られ、比較演算に用いられる。また、この実施形態では、ディザの閾値マトリクス記憶部160に記憶されている閾値マトリクスは、並び替え演算164の結果に基づいて行われるCPU6の指示に従って、マトリクスデータが並び替えられる。
図17は、集約画像への閾値マトリクスデータの選択操作を説明する概念図である。同図(A)は、フレームに4画像を集約した場合(図15、参照)におけるマトリクスデータの適用状態を例示し、同図(B)は、(3×3)閾値マトリクスを例に、基準のマトリクスと、(A)に示した集約画像各々に用いる並び替えを行ったマトリクスを例示する。
CPU6は、制御コマンドデータに従って、ユーザが操作表示装置10から設定した集約条件に応じた設定や動作をする。その際、CPU6からディザマトリクスの閾値データも与えられる。
ディザの閾値マトリクスを図17(B)に例示した(3×3)閾値マトリクスとした場合、図17(A)の1枚目の左上画像が、与えられたディザマトリクスの閾値データに従い、通常通りに処理される。即ち、副走査の1ライン目の主走査先頭画素では、必ず閾値選択部162のポインタが1行1列目の閾値データ[1]を指し示し、以降、(3×3)閾値マトリクスであるから、3列/3列ごとに、マトリクスへのポインタを閾値データ[1]へ戻す操作を繰返す。
次いで、図17(A)の2枚目の右上画像に対するディザ処理に移行するが、その前に、CPU6は、画像の集約位置とディザマトリクスのサイズに基づいて、ディザマトリクスの閾値データを並び替える。ここでは、図17(A)に示すように、1枚目の画像における主走査方向の大きさが3500画素で、ディザマトリクスのサイズが(3×3)マトリクスであるから、この場合、3500÷3=1166余り2となる。従って、並び替えの処理には、図17(B)に示すように、1枚目のときに用いたディザマトリクスの閾値データを左に2つずつ移動させた値を設定する。この結果、閾値データ[3]を1行1列目のデータとする並び替え後のマトリクスを得る。ただし、この並び替えの処理では、マトリクスの先頭の列を左に1つ動かすと、同じ行の最終列に移動させるようにして、連続性を維持する。
また、図17(A)の3枚目の左下画像データをディザ処理する場合には、1枚目の副走査方向の大きさを2500画素とすると、2500÷3=833余り1となるので、1枚目のディザマトリクスの閾値データを上に1つずつ移して並び替える。この結果、図17(B)に示すように、閾値データ[4]を1行1列目のデータとする並び替え後のマトリクスを得る。ただし、この並び替えの処理では、マトリクスの1行目のデータを上に1つ動かすとマトリクスの同じ列の最終行に移動させるようにして、連続性を維持する。
図17(A)の3枚目の右下画像データをディザ処理する際には、1枚目のディザマトリクスの閾値データを左に2つずつ、上に1つずつ移して並び替える。この結果、図17(B)に示すように、閾値データ[6]を1行1列目のデータとする並び替え後のマトリクスを得る。
このように、各々の集約画像ごとにその集約位置に応じて、CPU6が、ディザマトリクスの閾値データの移動量を決定し、ディザマトリクスの閾値データを並び替える。
なお、図17に示した集約画像の例は、1実施例であり、集約数・集約位置が異なっても、上記と同様の手法で1枚目のディザマトリクスの閾値データを基準に連続性を保つ移動量を求めることによって、実施することができる。
また、閾値変動誤差拡散を伴う中間調処理方式においても、集約の対象となる画像に用いる閾値マトリクスを画像の集約状態に対応して、並び替えることができるようにし、マトリクスデータの連続性を保つようにする上記と同様の方法が適用できる。
図18は、閾値マトリクスの並び替えを可能とした閾値変動誤差拡散を伴う中間調処理の処理系の構成を示す。同図に示す処理系の構成の特徴は、並び替え演算166を付加要素とした点にある。ただ、並び替え演算166が集約状態に対応して行う閾値マトリクスの閾値データの並び替えについては、基本的に上記したディザ処理における動作と変わらない。従って、上記のディザ処理における説明を参照することとする。また、誤差拡散の処理プロセスは、先に閾値変動誤差拡散方式の中間調処理系(図12)の説明に記した通りであるから、ここでは、記載を省略する。
本実施形態は、誤差拡散処理を伴う閾値マトリクス方式の階調処理において、境界部で起きる数ライン分のドットの消失(上記[背景技術]の項における図3に関する説明、参照)を解消することを目的とするものである。ドットの消失は、集約する画像の先端部の画素に対する誤差データが実際のデータ値に基づいて求められていないことに起因して生じるので、本案では、隣接画像の端部画像データを用いることで、誤差データを補償することにより、この問題を解消する。
この実施形態では、集約する画像に隣接する画像の端部のデータを予め画像バッファに蓄積しておき、集約画像を誤差拡散処理する際に、画像バッファに蓄積されたこの画像データを誤差拡散処理に利用することで、誤差開始位置の遅れを改善するものである。
図19は、誤差データを補償する本実施形態の誤差拡散処理における集約画像と端部画像の関係を説明する図である。なお、集約条件は、図17に示したと同様の4画像の集約処理を例にする。図19において、斜線部 (1)〜(5) が誤差データを補償するための隣接画像の端部画像を示す。
4集約画像中の左上の集約画像を誤差拡散処理する際に、図19の斜線部 (1) (左上画像の主走査後端部の画像データ)と斜線部 (2) (左上画像の副走査後端部の画像データ)を数十から数百ラインぐらい、画像バッファに格納する。左上の画像に関しては、先端側に他の画像との境界がないので、この後端画像データを画像バッファに格納する処理以外は、誤差拡散処理として、通常処理を行うだけで良い。
次に、右上画像に誤差拡散処理を行う際に、本案の補償動作のない通常の誤差拡散処理であれば、右上画像の副走査1ライン目の先頭画素を閾値マトリクスの閾値と比較する比較部に送るが、本案の場合、画像バッファに蓄積されている斜線部 (1) 画像の副走査1ライン目の先頭画素から順に比較部に送る。画像バッファの1ライン分のデータを全て比較部に送った後に、右上画像の1ライン目のデータを比較部に送る。1ライン目のデータを全て比較部に送ったら、斜線部 (1) 画像の副走査2ライン目の画素データを送り、その後に右上画像の2ライン目の画像データを比較部に送る。以降、同様に斜線部 (1) 画像データ・右上画像データという順番を繰り返し、斜線部 (1) 画像と右上画像、両方の画像データを全て比較部に送る。これは、図20に示すように、仮想的に斜線部 (1) 画像を右上画像の左端に加えた1つの画像(同図中の太線で囲んだ領域の画像)に誤差拡散処理を行ったことと同じことである。
以下同様に、左下画像を処理する際には、斜線部 (2) 画像を利用し、右下画像を処理する際には斜線部 (4) 画像(左下画像の主走査後端部の画像データ)と斜線部 (3) 画像(右上画像の副走査後端部の画像データ)と斜線部 (5) 画像(左上画像の主走査・副走査ともに後端部の画像データ)の画像を利用した誤差拡散処理が行われる。
図21は、拡散誤差データの補償が可能な本実施形態の閾値変動誤差拡散を伴う処理系の構成を示す。
図21の構成において、画像データ入力部110を介して入力される画像データは、比較部130で閾値と比較され、プロッタ出力用の階調数へデータ変換され、出力部150を介して1フレームの集約画像としてメモリ7に展開される。
また、誤差拡散をするので、比較部130で閾値と比較されるデータは、入力画像データに誤差加算120で拡散誤差データが加算されたデータである。比較部130から比較結果として出力される階調変換後のデータは、比較部130への入力データとの間の誤差が誤差算出140で求められ、得られた誤差データは、誤差バッファ142に保持される。積和計算144は、誤差バッファ142に保持された注目画素の周辺の処理済み画素に関する誤差データをもとに、所定の領域の周辺画素まで誤差を拡散させるため、次の注目画素へ拡散させる誤差データを計算する。拡散誤差データは、誤差加算120で入力画像データに加算される。
図21に示す処理系の構成において、本実施形態に特有の構成として付加された要素は、画像データ入力部110の後段に設けた画像バッファ117と画像選択部119、並びに出力部150の前段に設けた出力選択部155である。
画像バッファ117は、隣接する集約画像の先端画像に対する拡散誤差データを補償する上記動作に示したように、後端画像データ(図19の各斜線部)を蓄積し、集約画像における先端画像の中間調処理をする前に、この処理系に通され、補償動作を行う。画像選択部119は、処理系に入力するデータを、画像バッファ117に蓄積した後端画像データとカレント入力画像データから選択する。
また、出力選択部155は、処理系からのデータ出力をON/OFFする手段である。拡散誤差データの補償動作を行う場合、即ち画像バッファ117に蓄積した後端画像データ(図19の各斜線部)を処理するときには、データ出力は、行わないので、この間は、OFFする。
なお、図19に示した集約画像の例は、1実施例であり、集約数・集約位置が異なっても、上記と同様の手法で2枚目以降の集約画像に対し、隣接する画像の端部画像の補償を実施することができる。
本実施形態は、誤差拡散処理を伴う閾値マトリクス方式の階調処理において、上記実施形態4と同様に、隣接画像の端部画像データを用いた誤差データの補償をする。上記実施形態4では、数十から数百ライン相当の隣接画像の端部画像データを誤差データの補償に用いるとしたが、この端部データに対する閾値マトリクスの適用条件を考慮していないので、端部画像と集約画像との間で不整合が生じる可能性がある。
そこで、本例では、画像バッファに蓄積した端部画像データの先頭画素に用いる閾値マトリクスのデータをマトリクスの1行1列目とするように、端部画像データに蓄積する端部データを定め、このようにすることで、境界部の誤差拡散処理における誤差データの補償においても、閾値マトリクスのデータの不連続による不具合が生じることがないようにする。
図22は、誤差データを補償する本実施形態の誤差拡散処理における集約画像と端部画像の関係を説明する図である。同図において、階調処理の対象となる集約画像のフレーム内の配置を先頭画素位置( m,n )で表し、又集約画像に対する誤差データの補償に用いる隣接画像の端部画像をグレイ領域で示す。グレイ領域で示した端部画像がこの実施形態により定められる領域で、同図中には、主走査方向の端部の a 画素分と、副走査方向の端部のb 画素分として、その範囲が示されている。
閾値マトリクスが y × x であるとき、集約画像の誤差拡散処理に利用する隣接画像の端部画像データの主走査幅:a 画素、副走査幅:b 画素は、以下の式(2)で定める。
a = k x + mod( m-1 ,x ), b = k y + mod( n-1,y ) ・・・式(2)
ただし、上記式(2)において、k = 0,1,2,3,…である。また、mod( a,b )は、 a÷b の余りの値を表す。ここに、a≠0 ,b≠0 とする。
図23を参照して、上記式(2)の意味を説明する。なお、図23は、図22と同様の集約画像と端部画像の関係を説明する図であるが、閾値マトリクスの適用領域を破線で示しており、破線で囲まれたそれぞれの矩形領域に閾値マトリクス( y × x )が適用されることを示している。図23では、破線矩形領域で示される閾値マトリクスの先頭アドレス(1行1列目)とグレイ領域で示した隣接画像の端部画像の処理開始位置とが一致している。つまり、この整合を得るために、隣接画像の端部画像データの主走査幅:a 画素、副走査幅:b 画素が定められ、上記式(2)によって、この主走査幅a,副走査幅bの値が導かれる。
上記の方法で閾値マトリクスの先頭アドレス(1行1列目)とグレイ領域で示した隣接画像の端部画像の処理開始位置とを一致させることによって、境界部で起きる数ライン分のドットの消失を無くす上記実施形態4の効果だけでなく、画像境界部における閾値変動誤差拡散処理による出力パターンのずれを補正する効果がプラスされる。
本実施形態は、誤差拡散処理を伴う閾値マトリクス方式の階調処理において、境界部で起きる数ライン分のドットの消失(上記[背景技術]の項における図3に関する説明、参照)を解消することを目的とするものであり、上記実施形態4と目的は同一である。
ただ、上記実施形態4では、隣接画像の端部画像データを集約画像に付加し、構成される画像を1つの画像として扱い、この画像に対し誤差拡散処理をするという手法(図20、参照)であり、このために隣接画像の端部画像を画像バッファ117に蓄積した。
本実施形態では、先行する画像の誤差拡散処理で得られた誤差データを、後行の隣接画像における誤差拡散処理で端部画像に用いる、という手法をとり、このために先に隣接画像の端部画像の処理で得た誤差データを誤差バッファに蓄積する。また、次の集約画像の処理では、蓄積された隣接画像の端部画像の誤差データを加えて、集約画像の誤差拡散処理の積和演算を行うようにする。このように、上記実施形態4とは異なる手法により、所期の目的を達成するものである。
図24は、本実施形態の誤差拡散処理における集約画像と誤差データが蓄積される端部画像の関係を説明する図である。なお、集約条件は、図17に示したと同様の4画像の集約処理を例にする。また、本例の誤差拡散処理の積和演算(後記図26に示す処理系における積和演算144)では、積和演算マトリクスとして、図25に示すような、*で示す注目画素に対し、注目画素の近辺にある7画素の誤差データA〜Gを用いる。
上記のような誤差拡散の処理条件を設定する場合、左上画像を誤差拡散処理する際に、図24に示すように、主走査後端部の2画素列分の誤差データ(A部)を隣接画像の端部画像の誤差データを格納する誤差バッファ(後記図26に示す処理系における誤差バッファ (2) 142b)へ蓄積する。また、同様に副走査後端部1ライン分の誤差データ(B部)も誤差バッファに蓄積する。ここに、蓄積する誤差データを2画素列分(A部)とするのは、積和演算マトリクス(図25)の注目画素からの主走査幅(図27中に示す (I) の大きさ)と同じにするためであり、又副走査後端部1ライン分(B部)とするのは、注目画素からの副走査幅(図27中に示す (II) の大きさ)と同じにするためである。
次の右上画像の誤差拡散処理では、主走査の先端部から2画素まで(図24の斜線部)を誤差拡散処理する際に、先行する処理で誤差バッファに蓄積された主走査後端部の2画素列分(A部)を利用し、それ以外の画素の計算は通常の誤差拡散処理として、自身の画像データをもとに誤差バッファに蓄積した誤差データのみを利用する。つまり、図24の斜線部の誤差拡散処理では、隣接画像の端部画像の誤差データを自身の画像の誤差データに加えて積和演算のデータとして利用する。また、右上画像の誤差拡散処理の中で、副走査後端部1ライン分(C部)の誤差データを後で処理される右下画像用のデータとして、誤差バッファに記憶する。
また、同様に、左下画像を誤差拡散処理する際に、左上画像の副走査後端部1ライン分(B部)の誤差データを利用し、右下画像を誤差拡散処理するのに、右上画像の副走査後端部1ライン分(C部)、左下画像の2画素列分(D部)、左上画像の副走査後端部1ラインの1部(E部)の各誤差データを利用する。
このように、隣接画像の誤差データを誤差拡散処理の積和演算に利用することで、誤差拡散処理の開始直後に誤差がたまっていないために従来方式で生じた不具合を解消することができ、ドットの消失による誤差拡散処理の開始位置のずれを改善することができる。
図26の構成において、画像データ入力部110を介して入力される画像データは、比較部130で閾値と比較され、プロッタ出力用の階調数へデータ変換され、出力部150を介して1フレームの集約画像としてメモリ7に展開される。
また、誤差拡散をするので、比較部130で閾値と比較されるデータは、入力画像データに誤差加算120で拡散誤差データが加算されたデータである。比較部130から比較結果として出力される階調変換後のデータは、比較部130への入力データとの間の誤差が誤差算出140で求められ、得られた誤差データは、誤差バッファ (1) 142aに保持される。積和計算144は、上記で説明した端部の処理以外は、誤差バッファ (1) 142aに保持された注目画素の周辺の処理済み画素に関する誤差データをもとに、積和演算マトリクス(図25)に従い、次の注目画素へ拡散させる誤差データを計算する。拡散誤差データは、誤差加算120で入力画像データに加算される。
図26に示す処理系の構成において、本実施形態に特有の構成として付加された要素は、誤差バッファ (1) 142aに並設した誤差バッファ (2) 142bと両誤差バッファ (1) , (2) の後段に設けた誤差バッファ選択部143である。
誤差バッファ (2) 142bは、先行する画像の処理から後行の隣接画像における端部画像の処理に誤差データを引継ぐために、該当する画素(図24の説明、参照)のデータを誤差バッファ (1) 142aから受取り蓄積する。
誤差バッファ選択部143は、誤差拡散の積和演算に用いるデータを、誤差バッファ (1) 142aに蓄積したカレント集約画像の誤差データと誤差バッファ (2) 142bに蓄積した先行処理された隣接画像の端部画像の誤差データを選択する。つまり、誤差バッファ選択部143は、積和演算マトリクス(図25)に従って、注目画素が積和演算に必要な周辺画素の誤差データを選択するので、画像における注目画素の画素位置により、誤差バッファ (1) 142a或いは誤差バッファ (2) 142bのみのデータを選択する場合と、両誤差バッファ (1) , (2)のデータを選択する場合がある。
なお、図24に示した集約画像の例は、1実施例であり、集約数・集約位置が異なっても、上記と同様の手法で2枚目以降の集約画像に対し、隣接する画像の端部画像における誤差データの補償を実施することができる。
本実施形態は、誤差拡散処理を伴う閾値マトリクス方式の階調処理において、境界部で起きる数ライン分のドットの消失(上記[背景技術]の項における図3に関する説明、参照)を解消することを目的とするものであり、上記実施形態4、実施形態6と目的は同一である。
ただ、上記実施形態4では、隣接画像の端部画像データを集約画像に付加し、構成される画像を1つの画像として扱い、この画像に対し誤差拡散処理をする、という手法(図20、参照)であり、又、実施形態6では、先行する画像の誤差拡散処理で得られた誤差データを、後行の隣接画像における誤差拡散処理で端部画像に用いる、という手法で、いずれも、先行の処理に用いたデータを後行の処理に引継ぐ、という考え方であった。
本実施形態では、上記の隣接画像のデータを引継ぐことなく、自己の画像データを操作することで、データを補償する、という異なる手法によって、所期の目的を達するものである。
具体的には、画像にミラーリング(鏡面画像変換)処理を行い、先端部と後端部の画像データを反転させ、集約画像に対する誤差拡散処理の開始位置を変更させる手法により、境界部で起きる数ライン分のドットの消失を無くすことを可能にする。
この手法が適用できる条件は、1フレームに境界線を対称軸として2画像を集約する、所謂、2 in1 の集約処理である。
この処理プロセスでは、図27の (I) に示すように、まず、左側の画像データでは、ミラーリング選択をOFFの状態にして、通常の誤差拡散処理を行う。
次に、右側の画像データを誤差拡散処理するが、その前に、まず、この画像をミラーリングする。ミラーリングは、画像バッファをLIFO(Last In First Out)として扱うことにより、ライン画像データの先端部と後端部が反転、即ち画像の左右が反転する。図27の (II) に示すように、ミラーリング後の鏡面画像に対して、誤差拡散処理を行う。
このとき、誤差拡散処理が、変動閾値誤差拡散処理である場合に、画像に適用する閾値マトリクスの並び替えも行う。このマトリクスデータの並び替えは、鏡面画像から元の画像に戻したときに、近接画像(図27の (I) では左側の画像)間の境界部で適用するマトリクスデータの順序が不連続にならないように定める。なお、この並び替えは、出力パターンの位置ずれを防止するための手法として、上記実施形態3に示した手法を用いることにより、同様に実施し得る。
適用するマトリクスデータの連続性を保つための並び替えを行い、得られるマトリクスデータを適用した誤差拡散処理が施された画像に、再びミラーリング処理を行って、鏡面画像を元の順序の画像に戻す。
この一連の動作により、図27の (III) に示すように、右側の画像に対する誤差拡散の開始位置が後端となる。図28は、この処理動作状態を説明する図である。同図に示すように、集約する各画像の誤差拡散の処理が画像境界部に向けて行われ、画像境界部でのドットの消失は起こらないので、所期の結果が得られる。なお、このとき、閾値が変動しない場合の誤差拡散処理では、ミラーリング処理される画像では、左右反転した積和演算マトリクスと閾値マトリクスを利用することと同じことである。
図29に示す処理系の構成の特徴は、ミラーリング処理を行うための要素を付加した点にある。なお、並び替え演算166が集約状態に対応して行う閾値マトリクスの閾値データの並び替えについては、基本的に上記実施形態3において、図16の処理系を参照して説明したディザ処理における動作と変わらない。従って、上記のディザ処理における説明を参照することとする。また、誤差拡散の処理プロセスは、先に閾値変動誤差拡散方式の中間調処理系(図12)の説明に記した通りであるから、ここでは、記載を省略する。
図29に示す処理系におけるミラーリング処理を行うための要素は、入力側でミラーリング処理を行う画像バッファ180、ミラーリング選択182と、出力側でミラーリング処理を行う出力画像バッファ180、ミラーリング選択182である。
ミラーリング処理を必要としない 2 in1における先行して処理される入力画像は、一旦画像バッファ180に格納した後、ミラーリング選択182をOFFの状態にして、即ち画像バッファ180を通常のFIFOとして扱い、画像データ入力部110を介して、処理系に送られ、中間調処理を経て出力される。このとき、出力側でも、一旦出力画像バッファ157に格納した後、ミラーリング選択159をOFFの状態にして出力される。
他方、ミラーリング処理を必要とする 2 in1における後から処理される入力画像は、一旦画像バッファ180に格納した後、ミラーリング選択182をONの状態にして、画像バッファ180をLIFOとして扱い、ミラーリング動作をさせて、画像データ入力部110を介して、処理系に送られ、中間調処理を経て出力される。このとき、出力側でも、一旦出力画像バッファ157に格納した後、ミラーリング選択159をONの状態にして、出力画像バッファ157をLIFOとして扱い、ミラーリング動作をさせて、元の順序の画像データとして、出力される。
142a・・誤差バッファ (1) 、142b・・誤差バッファ (2) 、157・・出力画像バッファ、159,182・・ミラーリング選択、160・・ディザの閾値マトリクス記憶部、165・・閾値マトリクス記憶部、162,167・・閾値選択部、163,168・・オフセット入力、164,166・・並び替え演算。
Claims (2)
- 複数の画像データをもとに、1フレームに集約した画像出力用データを生成する際に、閾値マトリクス方式の中間調処理手段を用いて画像データに中間調処理を施す画像処理装置であって、
前記中間調処理手段が使用する閾値マトリクスは、Y×Xのマトリクスであって、マトリクスデータのアドレス値を、X及びY方向で昇順に且つ行間で連続する一連の数値で表すものであり、
前記中間調処理手段は、処理対象となる前記複数の画像データそれぞれの先頭画素に適用するために閾値マトリクスから選択するマトリクスデータのアドレスをポインタによって指示する閾値選択手段と、
フレームの主走査方向m番目、副走査方向n番目を先頭画素位置として指定される集約画像に対し、前記閾値選択手段が指示するポインタを次式、即ち、
X{mod(n−1,Y)}+mod(m−1,X)
ただし、上記式において、mod(n−1,Y)は(n−1)÷Yの余り、mod(m−1,X)は(m−1)÷Xの余りを表す、
により求めたオフセット値で調整するポインタ調整手段を備えたことを特徴とする画像処理装置。 - 複数の画像データをもとに、1フレームに境界線を対称軸として2画像を集約した画像出力用データを生成する際に、閾値マトリクス方式の中間調処理手段を用いて画像データに中間調処理を施す画像処理装置であって、
前記中間調処理手段は、後から処理される画像に対し、中間調処理を施す前に鏡面画像へ変換する鏡面変換手段と、変換後の鏡面画像に中間調処理を施す際に、該鏡面画像に適用する閾値マトリクスデータとして、先に処理された画像に適用したマトリクスデータとの連続性が保たれるように、鏡面画像に適用するマトリクスデータの並び替えを行うマトリクスデータ調整手段と、中間調処理が施された鏡面画像を逆変換する鏡面変換手段を備えたことを特徴とする画像処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006178414A JP4753253B2 (ja) | 2006-06-28 | 2006-06-28 | 画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006178414A JP4753253B2 (ja) | 2006-06-28 | 2006-06-28 | 画像処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008011076A JP2008011076A (ja) | 2008-01-17 |
JP4753253B2 true JP4753253B2 (ja) | 2011-08-24 |
Family
ID=39068905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006178414A Expired - Fee Related JP4753253B2 (ja) | 2006-06-28 | 2006-06-28 | 画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4753253B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6743449B2 (ja) * | 2016-03-28 | 2020-08-19 | コニカミノルタ株式会社 | 画像形成装置、画像形成方法および制御プログラム |
JP7491070B2 (ja) | 2020-06-08 | 2024-05-28 | セイコーエプソン株式会社 | 画像処理装置、印刷装置、印刷システムおよび画像処理方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0648850B2 (ja) * | 1987-06-11 | 1994-06-22 | キヤノン株式会社 | 画像処理方法 |
JPH08140036A (ja) * | 1994-11-15 | 1996-05-31 | Olympus Optical Co Ltd | 画像処理装置 |
JP3604755B2 (ja) * | 1995-01-27 | 2004-12-22 | キヤノン株式会社 | 画像情報処理装置 |
-
2006
- 2006-06-28 JP JP2006178414A patent/JP4753253B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008011076A (ja) | 2008-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4476203B2 (ja) | 画像処理装置、プログラムおよび画像処理方法 | |
JP2010283687A (ja) | プログラム、情報処理装置、階調補正パラメータ生成方法、記憶媒体 | |
JP2012231401A (ja) | 画像処理装置および画像処理方法およびコンピュータプログラム。 | |
JP2017130751A (ja) | 画像処理装置及び画像処理方法、プログラム | |
US20040184056A1 (en) | Image processing method | |
JP4053674B2 (ja) | 画像形成装置および画像形成方法 | |
US5877865A (en) | Image processing apparatus and method for printing data described in a page description language | |
JP5212886B2 (ja) | 画像形成システム、及び、画像形成プログラム | |
JP2000056525A (ja) | 画像形成装置及び方法 | |
EP2033432B1 (en) | Image processing apparatus, image processing method and image processing program product | |
JPH0879516A (ja) | 画像処理装置 | |
JP4753253B2 (ja) | 画像処理装置 | |
US8294954B2 (en) | Image forming apparatus and method for reducing the difference of image qualities between the image data read by a plurality of reading units | |
US6025586A (en) | Image processing device, image recording apparatus, and image reading device and image forming apparatus | |
JP6343956B2 (ja) | 読取画像処理装置、画像読取装置、画像形成装置、読取画像処理プログラム及び読取画像処理方法 | |
JP4628984B2 (ja) | 画像処理装置 | |
JP2008113364A (ja) | 画像処理回路、プログラム、画像処理方法及び画像処理装置 | |
US20030030827A1 (en) | Image processing apparatus and image forming apparatus | |
US8649050B2 (en) | Image forming apparatus | |
US8416469B2 (en) | Image processing apparatus, image processing method and computer program | |
JP6688193B2 (ja) | 画像処理装置、画像形成装置、画像処理方法、及び画像処理プログラム | |
JP2019199050A (ja) | 画像形成装置、そのための画像データを生成する方法、およびプログラム | |
JP7339774B2 (ja) | 画像形成装置とその制御方法、及びプログラム | |
JP2003051940A (ja) | 画像処理方法及びその装置 | |
US20070052982A1 (en) | Color image forming apparatus and image forming method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090323 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101015 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101021 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101216 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110518 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110518 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140603 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |