IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ セイコーエプソン株式会社の特許一覧

特許7491070画像処理装置、印刷装置、印刷システムおよび画像処理方法
<>
  • 特許-画像処理装置、印刷装置、印刷システムおよび画像処理方法 図1
  • 特許-画像処理装置、印刷装置、印刷システムおよび画像処理方法 図2
  • 特許-画像処理装置、印刷装置、印刷システムおよび画像処理方法 図3
  • 特許-画像処理装置、印刷装置、印刷システムおよび画像処理方法 図4
  • 特許-画像処理装置、印刷装置、印刷システムおよび画像処理方法 図5
  • 特許-画像処理装置、印刷装置、印刷システムおよび画像処理方法 図6
  • 特許-画像処理装置、印刷装置、印刷システムおよび画像処理方法 図7
  • 特許-画像処理装置、印刷装置、印刷システムおよび画像処理方法 図8
  • 特許-画像処理装置、印刷装置、印刷システムおよび画像処理方法 図9
  • 特許-画像処理装置、印刷装置、印刷システムおよび画像処理方法 図10
  • 特許-画像処理装置、印刷装置、印刷システムおよび画像処理方法 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-20
(45)【発行日】2024-05-28
(54)【発明の名称】画像処理装置、印刷装置、印刷システムおよび画像処理方法
(51)【国際特許分類】
   H04N 1/405 20060101AFI20240521BHJP
   B41J 2/52 20060101ALI20240521BHJP
   B41J 2/205 20060101ALI20240521BHJP
   B41J 2/01 20060101ALI20240521BHJP
【FI】
H04N1/405 510A
B41J2/52
B41J2/205
B41J2/01 201
【請求項の数】 9
(21)【出願番号】P 2020099385
(22)【出願日】2020-06-08
(65)【公開番号】P2021193771
(43)【公開日】2021-12-23
【審査請求日】2023-04-10
(73)【特許権者】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】110000028
【氏名又は名称】弁理士法人明成国際特許事務所
(72)【発明者】
【氏名】川井 純
【審査官】橋爪 正樹
(56)【参考文献】
【文献】特開2005-318661(JP,A)
【文献】特開2008-011076(JP,A)
【文献】特開2001-148783(JP,A)
【文献】特開2001-352448(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/40- 1/409
B41J 2/00- 2/525
(57)【特許請求の範囲】
【請求項1】
2次元的に配列された複数の画素からなる画像を処理する画像処理装置であって、
前記画像を複数のブロックに分割する分割部と、
前記分割されたブロックのうちの1つのブロックである第1ブロックに含まれる前記画素の階調を表わす画像データを、予め用意した第1閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第1ドットデータに変換する第1処理部と、
前記第1ブロックに隣り合ったブロックである第2ブロックに含まれる前記画素の階調を表わす画像データを、予め用意した第2閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第2ドットデータに変換する処理を、前記第1処理部とは独立に行なう第2処理部と
を備え、
前記第1,第2処理部における前記第1閾値および第2閾値は、前記画素の2次元の配列方向のそれぞれに沿って周期的に変化する変動成分を含み、前記変動成分を、前記第1ブロックと前記第2ブロックとのつなぎ目で同一の位相とする
画像処理装置。
【請求項2】
前記変動成分は、正弦波または余弦波に基づいて求められる正負の値であり、前記第1閾値および前記第2閾値を定める固定値に付加される、請求項1記載の画像処理装置。
【請求項3】
前記固定値は、前記画素の前記画像データの大きさによらない一定の値、または前記画像データの大きさに対応させて定めた値である、請求項2記載の画像処理装置。
【請求項4】
前記変動成分の空間周波数fは、3サイクル/ミリメートル以上である、請求項1から請求項3のいずれか一項に記載の画像処理装置。
【請求項5】
前記第1処理部と前記第2処理部とは、独立に動作する別個の装置に内蔵されている、請求項1から請求項4のいずれか一項に記載の画像処理装置。
【請求項6】
請求項1から請求項5のいずれか一項記載の画像処理装置と、
前記変換して得られた前記第1,第2ドットデータに従って、印刷媒体上にドットを形成するドット形成部と、
を備えた印刷装置。
【請求項7】
印刷システムであって、
2次元的に配列された複数の画素からなる原画像を複数のブロックに分割する分割部と、
前記分割されたブロックのうちの1つのブロックである第1ブロックに含まれる前記画素の階調を表わす第1画像データを、予め用意した第1閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第1ドットデータに変換する第1処理部と、
前記第1ブロックに隣り合ったブロックである第2ブロックに含まれる前記画素の階調を表わす第2画像データを、予め用意した第2閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第2ドットデータに変換する処理を行なう第2処理部と、
前記第1ドットデータと前記第2ドットデータとを結合して、前記原画像に対応した画像を印刷媒体に印刷する印刷部と、
を備え、
前記第1処理部と前記第2処理部とは、回線を介して接続された第1装置および第2装置内にそれぞれ設けられ、
前記第1,第2処理部における前記第1閾値および第2閾値は、前記画素の2次元の配列方向のそれぞれに沿って周期的に変化する変動成分を含み、前記変動成分を、前記第1ブロックと前記第2ブロックとのつなぎ目で同一の位相とする
印刷システム。
【請求項8】
請求項7記載の印刷システムであって、
前記第1装置は、前記原画像を扱うコンピューターであり、前記分割部および前記第1処理部を含み、
前記第2装置は、プリンターであり、前記第2処理部および前記印刷部を含み、
前記コンピューターは、更に、前記第2画像データと、前記第1ドットデータとを、前記プリンターに送信する送信部を備え、
前記プリンターは、更に、前記第2画像データと前記第1ドットデータとを受信する受信部を備える、
印刷システム。
【請求項9】
2次元的に配列された複数の画素からなる画像を処理する画像処理方法であって、
前記画像を複数のブロックに分割し、
前記分割されたブロックのうちの1つのブロックである第1ブロックに含まれる前記画素の階調を表わす画像データを、予め用意した第1閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第1ドットデータに変換する第1処理を行ない、
前記第1ブロックに隣り合ったブロックである第2ブロックに含まれる前記画素の階調を表わす画像データを、予め用意した第2閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第2ドットデータに変換する処理を、前記第1処理とは独立に行ない、
前記第1閾値および第2閾値は、前記画素の2次元の配列方向のそれぞれに沿って周期的に変化する変動成分を含み、前記変動成分を、前記第1ブロックと前記第2ブロックとのつなぎ目で同一の位相とする
画像処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、誤差拡散を用いた画像処理技術に関する。
【背景技術】
【0002】
画質に優れた画像処理として、従来から誤差拡散法が知られている。誤差拡散法による画像処理では、各画素の持つ階調値を、階調数の少ないドットの分布に変換する。その際、各画素において生じた濃度誤差を、処理している画素の周辺の未処理の画素に拡散するため、処理に時間がかかる。このため、並列処理を行なって、画像処理に要する時間を短くする工夫が種々なされている。例えば特許文献1では、画像を複数のブロックに分け、誤差拡散法により処理する誤差拡散ユニットをブロック毎に設けて、並列処理を実現している。この際、ブロック間の境界部に幅を持たせ、各ブロックにおける処理で境界領域へ拡散される誤差を別のメモリに記憶しておき、記憶しておいた誤差を用いて境界領域の誤差拡散処理を実施する。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2017-60015号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、こうした手法では、複数のブロックから境界領域に拡散される誤差を記憶し、読み出せるように、各ブロックから高速にアクセス可能なメモリ領域を用意する必要があり、同じシステム内に作り込む必要があった。したがって、各ブロックを処理する誤差拡散ユニットをメモリを共有しない異なるシステムに設けることは困難であった。また、処理対象となるブロックの数や分割の形態によって、境界領域で誤差を拡散する範囲が変化するので、分割処理のスケーラビリティを実現することも困難であった。
【課題を解決するための手段】
【0005】
本開示の第1の態様として、2次元的に配列された複数の画素からなる画像を処理する画像処理装置が提供される。この画像処理装置は、前記画像を複数のブロックに分割する分割部と、前記分割されたブロックのうちの1つのブロックである第1ブロックに含まれる前記画素の階調を表わす画像データを、予め用意した第1閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第1ドットデータに変換する第1処理部と、前記第1ブロックに隣り合ったブロックである第2ブロックに含まれる前記画素の階調を表わす画像データを、予め用意した第2閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第2ドットデータに変換する処理を、前記第1処理部とは独立に行なう第2処理部と、を備え、前記第1,第2処理部における前記第1閾値および第2閾値は、前記画素の2次元の配列方向のそれぞれに沿って周期的に変化する変動成分を含み、前記変動成分を、前記第1ブロックと前記第2ブロックとのつなぎ目で同一の位相とする。
【0006】
本開示の第2の態様として、印刷装置が提供される。この印刷装置は、上記の画像処理装置と、前記変換して得られた前記第1,第2ドットデータに従って、印刷媒体上にドットを形成するドット形成部と、を備える。
【0007】
更に、本開示の第3の態様として、印刷システムが提供される。この印刷システムは、2次元的に配列された複数の画素からなる原画像を複数のブロックに分割する分割部と、前記分割されたブロックのうちの1つのブロックである第1ブロックに含まれる前記画素の階調を表わす第1画像データを、予め用意した第1閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第1ドットデータに変換する第1処理部と、前記第1ブロックに隣り合ったブロックである第2ブロックに含まれる前記画素の階調を表わす第2画像データを、予め用意した第2閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第2ドットデータに変換する処理を行なう第2処理部と、前記受信した第1ドットデータと前記第2ドットデータとを結合して、前記原画像に対応した画像を印刷媒体に印刷する印刷部と、を備え、前記第1処理部と前記第2処理部とは、回線を介して接続された第1装置および第2装置内にそれぞれ設けられ、前記第1,第2処理部における前記第1閾値および第2閾値は、前記画素の2次元の配列方向のそれぞれに沿って周期的に変化する変動成分を含み、前記変動成分を、前記第1ブロックと前記第2ブロックとのつなぎ目で同一の位相とする。
【0008】
本開示の第4の態様として、画像処理方法が提供される。この画像処理方法は、2次元的に配列された複数の画素からなる画像を処理する画像処理方法であって、前記画像を複数のブロックに分割し、前記分割されたブロックのうちの1つのブロックである第1ブロックに含まれる前記画素の階調を表わす画像データを、予め用意した第1閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第1ドットデータに変換する第1処理を行ない、前記第1ブロックに隣り合ったブロックである第2ブロックに含まれる前記画素の階調を表わす画像データを、予め用意した第2閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第2ドットデータに変換する処理を、前記第1処理とは独立に行ない、前記第1閾値および第2閾値は、前記画素の2次元の配列方向のそれぞれに沿って周期的に変化する変動成分を含み、前記変動成分を、前記第1ブロックと前記第2ブロックとのつなぎ目で同一の位相とする。
【図面の簡単な説明】
【0009】
図1】第1実施形態の画像処理装置としてのプリンターの概略構成図。
図2】プリンターにおける画像処理を含む印刷処理の流れを示すフローチャート。
図3】画像処理により画像データが処理される様子を示す説明図。
図4】画像処理における誤差拡散処理ルーチンを示すフローチャート。
図5】濃度誤差を着目画素の周囲に分配する様子を示す説明図。
図6】誤差拡散処理において閾値を定める閾値演算ルーチンを示すフローチャート。
図7】分割された画像の境界における閾値の変動分の位相の一例を示す説明図。
図8】処理された画像の様子を参考例と共に例示する説明図。
図9】8画素1サイクルの場合の閾値の変動分の一例を示す説明図。
図10】第2実施形態の画像処理システムを示す概略構成図。
図11】画像を出力するコンピューターの処理と画像を印刷するプリンターの処理とを対応付けて示すフローチャート。
【発明を実施するための形態】
【0010】
A.第1実施形態:
[1]ハードウェア構成:
図1は、第1実施形態である画像処理装置としてのプリンター20の概略構成図である。このプリンター20は、画像を出力するコンピューター(以下、PCと略記することがある)90に接続されており、PC90が出力する原画像ORGを印刷媒体Pに印刷する。プリンター20は、カラーインクを用いて双方向印刷を行なうシリアル式インクジェットプリンターである。図示するように、プリンター20は、紙送りモーター74によって印刷媒体Pを搬送する機構と、キャリッジモーター70によってキャリッジ80をプラテン75の軸方向に往復動させる機構と、キャリッジ80に搭載された印刷ヘッド81を駆動してインクの吐出及びドット形成を行なう機構と、これらの紙送りモーター74,キャリッジモーター70,印刷ヘッド81、PC90及び操作パネル77との信号のやり取りを司る制御ユニット30とから構成されている。
【0011】
キャリッジ80をプラテン75の軸方向に往復動させる機構は、プラテン75の軸と平行に架設され、キャリッジ80を摺動可能に保持する摺動軸73と、キャリッジモーター70との間に無端の駆動ベルト71を張設するプーリー72等から構成されている。プラテン75の軸方向に沿ったキャリッジ80の動きによって印刷位置が変更されることを主走査と呼び、この方向を主走査方向(双方向)と呼ぶ。以下の説明では、主走査方向の画素位置を座標xとして表わすものとする。また、プラテン75の回転による印刷媒体Pの搬送によって印刷ヘッド81による印刷位置が変更されることを副走査と呼び、印刷媒体Pが搬送される方向(矢印CV)とは逆方向を副走査方向と呼ぶ。副走査方向の画素位置は、座標yとして表わすものとする。
【0012】
キャリッジ80には、カラーインクとして、シアンインクC、マゼンタインクM、イエロインクY、ブラックインクK、ライトシアンインクLc、ライトマゼンタインクLmをそれぞれ収容したカラーインク用のインクカートリッジ82~87が搭載される。キャリッジ80の下部の印刷ヘッド81には、上述の各色のカラーインクに対応するノズル列が形成されている。キャリッジ80にこれらのインクカートリッジ82~87を上方から装着すると、各カートリッジから印刷ヘッド81へのインクの供給が可能となる。
【0013】
制御ユニット30は、入力部31、CPU40、RAM35、印刷制御部32を備える。CPU40は内部に周知のROM等を備える。CPU40は、ROMに記憶されたプログラムを必要に応じてRAM35に展開し、このブログラムを実行することにより、プリンター20の動作全般を制御する。CPU40は、制御プログラムを実行することにより、分割部41、閾値出力部43、第1処理部51、第2処理部52として機能する。各部の働きについては、後で詳しく説明する。CPU40は、入力部31を介してPC90から原画像ORGを受け取り、これを第1処理部51,第2処理部52により処理し、印刷用のドットデータを生成する。CPU40は、生成されたドットデータを用いて、印刷制御部32を介して、上述した印刷ヘッド81や各種モーターなどを制御して、印刷媒体Pへの印刷を行なう。
【0014】
[2]画像処理:
プリンター20における画像処理ルーチンについて、図2を用いて説明する。プリンター20は、図示する画像処理ルーチンを、PC90から印刷の指示を受けると開始し、まずPC90から原画像ORGの画像データを入力部31を介して入力する処理を行なう(ステップS100)。本実施形態では、原画像ORGは、フルカラーの画像であり、その大きさは、主走査方向に2(xm+1)画素、副走査方向に(yn+1)画素、解像度は600dpiである。原画像ORGを入力すると、次に解像度変換を行なう(ステップS110)。解像度変換は、原画像ORGの解像度と印刷可能な解像度が異なる場合に行なわれる。例えば、原画像ORGの解像度が600dpiで、印刷の解像度として300dpiが指定されていれば、原画像ORGの2×2画素を1つの画素にまとめるといった解像度変換を行ない、後工程におけるハーフトーン処理などの負荷を低減する。
【0015】
次に、印刷解像度に基づいて、閾値の変動周期Tを求める処理を行なう(ステップS120)。閾値の変動周期Tとは、ハーフトーン処理において用いられる閾値ThEを変動させる周期、つまり何画素を単位として閾値を変動されるかという値である。一般に、変動周期Tは、変動であることから少なくも値2以上であって、かつ画像を視認する人の目の特性を考慮して、変動の空間周波数が、3/mm程度以上となるように定められる。例えば、印刷の解像度が、300dpiであれば、次式(1)を解き、
3≒(300/25.4)/T …(1)
変動周期Tは4画素程度となる。印刷の解像度が600dpiであれば、同様に8画素程度となる。本実施形態では、変動周期Tは値4、つまり後述する閾値ThEは、4画素を一周期として変動するものとした。この周期Tを用いた閾値ThEの演算については、後で詳述する。
【0016】
入力した画像データは、RGB形式の多階調のデータなので、次にこれをプリンター20が扱うCMYKのデータに変換する色変換処理(ステップS130)を行なう。もとより、画像データの形式は、プリンター20が扱える形式であれば、いずれの形式でもよく、例えばCMYKのデータであってもよい。またビット数は、標準的な8ビットであってもよく、画質に応じた任意のビット数が採用可能である。CMYKの形式で入力された場合には、色変換処理(ステップS130)は、省略可能である。入力部31による画像データの入力は、PC90との間の有線接続を介して、直接行なうものであってもよいし、イントラネット(登録商標)などのネットワークを介したものであってもよい。もとより、無線接続によるものであってもよいし、メモリカードなどにより、直接画像データのファイルを受け取るようなものであってもよい。
【0017】
こうして入力した画像データを、次に分割する処理を行なう(ステップS140)。画像データの分割は、図3に例示するように、原画像ORGを複数の分割画像に分ける処理である。この例では、主走査方向に沿って、分割された第1ブロックDG1,第2ブロックDG2に対応する画像データに分割している。第1ブロックDG1,第2ブロックDG2は、本実施形態では、大きさの等しいブロックであり、副走査方向であるy方向については、値0からynまでのn+1個の画素が配列され、主走査方向であるx方向については、値0からxmまでのm+1個の画素が配列されているものとする。このため、各ブロックには、(m+1)(n+1)個の画素が含まれることになる。なお、原画像ORGが主走査方向に、奇数個の画素を配列している場合には、原画像ORGの主走査方向右端に1画素分のダミー画素を加えてから分割し、第2ブロックDG2の右端の画素についての処理結果を用いないようにすればよい。図3では、この分割処理を、符号DVDとして示した。ここで、主走査方向xは、後述する誤差拡散処理において、誤差拡散の処理EDがなされる方向と一致している。
【0018】
原画像ORGを分割した後、第1ブロックDG1および第2ブロックDG2に上述した変動周期Tを適用する際の位相を一致させるための変位量αを求める処理を行なう(ステップS145)。第1ブロックDG1の主走査方向の画素数が、変動周期Tの倍数であれば、第1ブロックDG1の主走査方向終端と、第2ブロックDG2の主走査方向開始端での変動周期Tの位相は連続する。本実施形態では、原画像ORGを2つに等分しているので、第1ブロックDG1の主走査方向の画素数が、変動周期Tの倍数になるとは限らない。このため、第1ブロックDG1の主走査方向終端と、第2ブロックDG2の主走査方向開始端での変動周期Tの位相を連続させるための変位量αを次式(2)により求める。
α=mod(xm,4)+1 但し、α=4の場合はα=0 …(2)
仮に、第1ブロックDG1の主走査方向終端の画素の座標xmが、値98であれば、α=3となる。この変位量αは、後述するように、第2ブロックDG2における閾値ThEの演算に用いられる。
【0019】
続いて、プリンター20のCPU40は、第1処理部による処理(ステップS210)と第2処理部による処理(ステップS220)とを並列に実行する。ここで、並列に実行するとは、交互に処理することで擬似的に並列に処理することを含まず、2つの処理部により実質的に並列に処理することを意味する。第1処理部51,第2処理部52は、マルチコアのCPU40においてコア毎に処理が割り当てられて、並列処理を行なう構成であってもよいし、それぞれ独立に処理を行なうハードウェアを備えたものであってもよい。
【0020】
第1処理部51よる処理、第2処理部52による処理については、後で詳しく説明するが、いずれの処理も多階調の画像データを誤差拡散法によりハーフトーン処理して、インク滴のオン・オフに対応したドットデータに変換する処理である。図3では、この処理を符号H/Tとして表わし、第1処理部51,第2処理部52により変換されたドットデータを、それぞれ第1ドットデータDDT1、第2ドットデータDDT2として表わした。
【0021】
第1処理部51および第2処理部52による処理が終了し、第1ドットデータDDT1,第2ドットデータDDT2が形成された後、これらのドットデータを併合する処理を行なう(ステップS150)併合する処理は、第1ドットデータDDT1と第2ドットデータDDT2とを、元の画像の配置に従って、接続するだけである。この処理を、図3では、符号MRGで表わし、併合後の画像データをMRGGとして例示した。なお、図3では、第1ドットデータDDT1等は、分割された第1ブロックDG1等の画像、つまり誤差拡散処理前の画像との違いを示すために、網掛けした形態で模式的に示しており、実際に形成されるドットデータの形態とは異なる。
【0022】
こうして第1ブロックDG1と第2ブロックDG2とを併合して得られた画像MRGGを用いて、これを印刷媒体Pに印刷する処理を行なう(ステップS160)。以上で、印刷を伴う画像処理を終了する。なお、印刷処理に際して、キャリッジ80の複数回のパスで画像を完成させるために、キャリッジ80おけるノズルの配列に応じた画素の形成のタイミングと画素の並びとが不一致となる場合がある。こうした場合には、各ノズルの駆動のタイミングに合わせて、ドットデータを入れ替える、いわゆるインターレース処理を行なえばよい。
【0023】
次に、第1処理部51,第2処理部52が行なう処理について説明する。図4は、第1処理部51,第2処理部52が行なう誤差拡散処理ルーチンを示すフローチャートである。第1処理部51,第2処理部52は、分割処理(ステップS110)によって分割された第1ブロックDG1,第2ブロックDG2の画像データを受け取ると、これに対して、以下に説明する同じ処理を、個別に行なう。
【0024】
図4に示した処理ルーチンでは、第1ブロックDG1,第2ブロックDG2を構成する複数の画素について、画像の左上を原点、つまり座標(0,0)として、副走査方向の座標yについて、値0からynまで、また主走査方向の座標xについて値0~xmまで、二重のループで繰り返し実行する(ステップS200s,S210s)。この処理がなされる画素を、以下、着目画素*と呼ぶ。具体的には、着目画素に対するステップS220~S290の処理を、ステップS210sからステップS210eまでの間で繰り返し、更にこの処理を、ステップS200sからステップS200eの間で繰り返す。ループの内側では、まず副走査方向のy=0のラスターについて、最初の画素(0,0)から、そのラスターの末尾の画素(xm,0)まで、着目画素*(x,y)を順次移動しながら、処理を行ない、1ラスター上の総ての画素についての処理が完了すると(ステップ210s~S210e)、次に、副走査方向の座標yを値1だけインクリメントし、主走査方向の座標xを初期値(値0)に戻して、そのラスターについての処理を行なうという処理を、副走査方向の座標yが、最終ラスターであるynとなるまで繰り返す(ステップS200s~S200e)。
【0025】
こうした二重のループ処理が開始されると、まず着目画素の画像データDs(x,y)を入力する処理を行なう(ステップS220)。この画像データDs(x,y)は、原画像ORGの画素が備えていた階調データである。もとより、画像データDs(x,y)は、CMYKの各色のデータを含み、誤差拡散処理も各色についてそれぞれ行なわれる。各色についての処理は、本実施形態では独立の処理としたので、ここではこれらを特に区別せず、1つの処理として説明する。
【0026】
次に、着目画素の画像データDs(x,y)に拡散誤差ER(x,y)を加え、補正済み画像データDt(x,y)を求める処理を行なう(ステップS230)。ここで、拡散誤差ER(x,y)とは、既に処理済みの画素から着目画素に拡散された誤差の総和である。拡散誤差ER(x,y)は、RAM35に用意された領域である誤差バッファーEDBに格納されている。次に、閾値ThEを演算する処理を行なう(ステップS400)。この閾値ThEは、着目画素にドットを形成するか否かを判断する際に用いる判定値である。本実施形態では、閾値ThEは、着目画素の座標(x,y)により値が変動する。閾値ThEの演算方法については、後で詳しく説明する。
【0027】
閾値ThEを求めた後、この閾値ThEと着目画素の座標の補正済み画像データDt(x,y)との大小を比較する処理を行ない(ステップS240)、補正済み画像データDt(x,y)が閾値ThEより大きければ、ドットを形成するとして、ドットデータDD(x,y)に値1を入れ(ステップS250)、更に補正済み画像データDt(x,y)と最大階調値255との差分を求め、これを誤差値RSTとして記憶する(ステップS260)。他方、補正済み画像データDt(x,y)が閾値ThE以下であれば、ドットを形成しないとして、ドットデータDD(x,y)に値0を入れ(ステップS270)、更に補正済み画像データDt(x,y)と最小階調値0との差分を求め、これを誤差値RSTとして記憶する(ステップS280)。ドットデータDD(x,y)は、RAM35に保存される。
【0028】
ステップS260,S280で求めている誤差値RSTは、着目画素の階調値に対応してその画素が表現すべき濃度(明度)に対して、ドットを形成すること、または形成しないことにより、濃度誤差がどの程度発生したかを表わす。例えば、着目画素の階調値に対応する濃度が値196であって、閾値ThEが仮に値128であったとすると、ステップS240の判断により、ドットが形成されることになる。ドットが着目画素に形成されると、着目画素は塗り潰され、その濃度は最大濃度に対応する値255となる。しかし本来の濃度は値196であったことから、両者の差分59だけ濃度は過剰となり、濃度誤差が発生することになる。着目画素の濃度が閾値ThE以下の場合はドットを形成しないことにより、濃度は不足し、濃度誤差が生じる。誤差値RSTは、このように画素毎に生じる濃度の不足または過剰に対応した正負の値となる。
【0029】
そこで、続くステップS290では、この誤差値RSTを、着目画素の周囲に拡散する処理を行なう。この様子を図5に示した。図において、着目画素を「*」として示した。この着目画素*の座標を(x,y)とすると、この実施形態では、画素(x+1,y)および画素(x,y+1)に誤差値RSTの4/16が、それぞれ配分される。このように、誤差値RSTの一部が配分される範囲を示すのが誤差拡散マスクEDMである。この例では、画素(x+2,y)、画素(x対1,y+1)、画素(x-1,y+1)に、誤差値RSTの2/16が、画素(x+2,y+1)、画素(x-2,y+1)に、誤差値RSTの1/16が、それぞれ配分されるように、誤差拡散マスクEDMは、設定されている。本実施形態では、誤差拡散マスクEDMが、全て2/16(P=0,1、2)に設定されているため、8ビットの2進数で表現された誤差値RSTを(4-P)ビット右シフトするだけで、各画素に配分する誤差を求めることができ簡便である。もとより、誤差拡散マスクEDMの値は2のべき乗以外の値として設定されても差し支えない。誤差拡散マスクEDMは、例えばガウスフィルターと等価な配分割合を備えるものとしてもよい。また、誤差拡散の範囲は、より狭いもの、より広いものであっても差し支えなく、例えば着目画素の階調値に応じて、異なる誤差拡散マスクEDMを切り替えて適用するものとしてもよい。
【0030】
以上説明したように、着目画素*において、濃度誤差が発生すると、図4に示した誤差拡散処理によれば、その濃度誤差を反映した誤差値RSTを、着目画素*の周辺の画素であって誤差拡散マスクEDMに定める範囲に、予め定めた割合で分配する。具体的には、周辺の各画素に分配すべきものとして演算された誤差を、RAM35に用意された誤差バッファーEDBに記憶する。このとき、誤差バッファーEDBに既に値が入っていれば、これに加算する。着目画素*におけるドット形成の有無は、原画像ORGにおける各画素の階調値の大小に基本的には追従し、しかもドット形成の有無により生じた濃度誤差は、これを着目画素の周辺に分配していくことで、大域的には解消する。このため、誤差拡散法により処理された画像(図3、画像MRGG)は、解像度と濃淡の再現性とに優れた高品質の画像となる。
【0031】
以上説明したステップS220~S290の処理を、まず、主走査方向の位置を表わす座標xをインクリメントしつつ、ラスターの先頭から末尾まで繰り返す(ステップS210s~S210e)。着目画素*の位置xがラスターの末尾まで至ったら、次にラスター位置を表わす座標yを値1だけインクリメントし、着目画素*の位置xを値0にリセットして、上述した処理を行ない、これを先頭ラスター(y=0)から最後のラスター(y=yn)まで繰り返す(ステップS200s~S200e)。この結果、RAM35の所定の領域には、ドットデータがDD(x,y)が形成されるので、既に説明した併合処理(ステップS130)および印刷処理(ステップS140)を行なうと、原画像ORGに対応したハーフトーン画像である画像MRGGが、印刷媒体P上に形成される。
【0032】
本実施形態では、上述した様に、多階調の原画像ORGをドットデータDDに変換するハーフトーニングとして、誤差拡散法を用いる。誤差拡散法では、ドットデータDDへの変換は、着目画素の階調値を、閾値ThEと比較することにより行なう。この閾値ThEは、本実施形態では、画素位置に応じてその値を変動させている。こうした閾値ThEの演算(ステップS300)の詳細について説明する。
【0033】
閾値ThEの演算処理を図6に示す。この演算処理を開始すると、まず着目画素*の座標(x,y)を取得する処理を行なう(ステップS310)。この着目画素*の座標(x,y)に基づいて、閾値ThEの主走査方向の変動分thxの演算(ステップS320)と、副走査方向の変動分thyの演算(ステップS330)とを行なう。具体的な演算は、以下の式(3)(4)により行なわれる。
thx=tv・cos{mod(x,T)・2π/T} …(3)
thy=tv・cos{mod(y,T)・2π/T} …(4)
ここで、tvは、変動成分の振幅値であり、本実施形態では、画像データの大きさによらず、一定の値8とした。また、関数mod(x,T)は、主走査方向のx座標を、変動周期Tで除算した場合の余りを求める関数である。本実施形態では、変動周期Tは、図2のステップS120で求めたように、値4である。式(3)(4)によれば、主走査方向の座標xや副走査方向の座標yが値1ずつインクリメントするたびに、各式の成分(5)、つまり
cos{mod(x,4)・π/2} …(5)
は、周期的に値1→0→-1→0→、と変化する。したがって、振幅値tvを考慮すれば、閾値ThEの変動分は、周期的に、8→0→-8→0→、と変化する。
【0034】
この様子を、図7に例示した。図示左側は、第1ブロックDG1のラスター終端(x=xm)近くのx=94~98について、閾値ThEの変動分thxがどのように変化するかを示している。最上段は、mod(x,4)の値を示し、次段は、その場合の上記(5)として示した成分の値を示す。なお、閾値ThEの副走査方向の変動分thyも同様に画素の座標yに応じて変化する。
【0035】
図7の右側は、第2ブロックDG2のラスターの開始端(x=0)近くのx=0~4について、閾値ThEの変動分thxがどのように変化するかを示している。既に説明した様に、第1ブロックDG1の終端の画素の座標xmが値98であれば、変位量αは値3となるので、第2ブロックDG2については、上記式(3)をこの変位量αで修正した式(3a)により、変動分thxを求める。
thx=tv・cos{mod(x+α,T)・2π/T}
=tv・cos{mod(x+3,4)・π/2} …(3a)
このように、変位量αを用いることで、第1ブロックDG1とこれに隣接する第2ブロックDG2とに適用される変動分thxの位相は一致する。
【0036】
こうして閾値ThEの変動分thx,thyを求めた上で、次に両者を用いて、着目画素*(x,y)における閾値ThEの総変動分thを求める処理を行なう(ステップS340)。この総変動分thは、本実施形態では、主走査方向の変動分thxと副走査方向の変動分thyの相加平均として求める。もとより、相乗平均として求めてもよいし、方向毎に異なる重みを付けた、重み付き平均としても求めてもよい。次に、こうして求めた総変動分thに対して、固定的に設定される閾値ThEの固定分Tdを求める処理を行ない(ステップS350)、この固定分Tdと総変動分thとを合算して、閾値ThEを求める演算を行なう(ステップS360)。
【0037】
以上の処理により、既述した誤差拡散処理ルーチンで用いられる閾値ThEが求められる(図4、ステップS300)。本実施形態では、固定分Tdは、画像の階調値に対応する画像データDsに対して、
Td=16+Ds・7/8 …(6)
として設定した。閾値ThEを画像データの階調値と相関させると、誤差拡散法によるハーフトーン処理により生じることがある尾引などの現象を解消するために有効である。なお、固定分Tdは、画像データの値によらず、一律に値128としても差し支えない。
【0038】
以上説明した第1実施形態のプリンター20によれば、ハーフトーン処理に誤差拡散法を採用し、処理すべき原画像ORGを主走査方向に分割し、分割された第1ブロックDG1,第2ブロックDG2を、第1処理部51および第2処理部52が、それぞれ独立に処理している。つまり、本実施形態では、第1ブロックDG1の主査走査方向終端およびその近傍で生じた濃度誤差は、第2ブロックDG2には何ら拡散されていないが、ハーフトーン処理により得られた第1ドットデータDDT1と第2ドットデータDDT2とを併合した画像MRGGには、画像を分割した境界線での画質に劣化がほとんど生じない。具体的には、ドット配列の乱れによる擬似輪郭の発生が抑制されており、印刷された画像MRGGの画質は、原画像ORGを分割することなく誤差拡散法によるハーフトーン処理を行なった場合と比べて、ほとんど遜色がない。
【0039】
処理された画像の一例を、図8に示す。図において、C1は、プリンター20が扱う画像の階調範囲が0~255である場合に、原画像ORGが階調値64の均一な画像である場合を、C2は、同じく原画像ORGが階調値84の均一な画像である場合を、それぞれ示している。また、各画像は、左側が第1ブロックDG1の画像であり、右側がこれに隣接する第2ブロックDG2の画像である。更に、FIXとして示した欄は、閾値ThEの変動分thx,thyが値0であって、閾値ThEが固定分Tdのみである場合を示している。したがって、閾値ThEは、原画像ORGの画像データDsに対して、上述した式(6)により決定されることになる。具体的には、階調値64の画像C1に対する閾値ThEは、値72であり、階調値84の画像C2に対する閾値ThEは、値89である。図示するように、この場合、第1ブロックDG1と第2ブロックDG2との間には、ドットの並びに乱れがあり、擬似輪郭が感じられるなど、画質は劣化している。
【0040】
また、図において、Δθ=0とした欄は、第1実施形態による処理の例を示している。つまり、この欄は、閾値ThEの変動分thx,thyが、共に上述した式(3)または(3a)および式(4)で与えられており、かつその場合の変動周期Tの位相差Δθが、第1ブロックDG1と第2ブロックDG2とで値0、つまり位相差がない場合の処理結果に相当する。この場合、画像C1、C2のいずれでも、第1ブロックDG1と第2ブロックDG2との境界における擬似輪郭などの画質の劣化の発生は抑制され、ほとんど目につかない。図におけるΔθ=πとした欄は、比較例であり、閾値ThEの変動分thx,thyが、共に上述した式(3)または(3a)および式(4)で与えられており、かつその場合の変動周期Tの第1ブロックDG1における位相と第2ブロックDG2における位相とがπだけずれている場合の処理結果に相当する。この場合、画像C1、C2のいずれでも、第1ブロックDG1と第2ブロックDG2との境界においては擬似輪郭が発生し、画質の劣化の発生が認められる。
【0041】
以上説明したように、第1実施形態のプリンター20は、原画像ORGを複数、ここでは2つに分割した上で、分割した第1ブロックDG1,第2ブロックDG2に対して、誤差拡散法によるハーフトーン処理を独立かつ並列に行なうことができ、隣接するブロック間で誤差の配分処理などを必要としない。したがって、ハーフトーン処理に要する時間を短縮でき、しかも誤差拡散法による高い画質という利点を享受できる。なお、原画像ORGの分割は3以上であってもよい。この場合には、第1処理部51,第2処理部52と同様の処理部を、合計で、少なくとも画像の分割数に等しい数だけ用意すればよい。
【0042】
[3]変形例:
以上説明した第1実施形態では、第1ブロックDG1に対する閾値ThEの変動周期Tと第2ブロックDG2に対する閾値ThEの変動周期Tとは、同相となるように、変位量αを求めて、第2ブロックDG2については、式(3a)を用いて変動量thx、ひいては閾値ThEを演算した。これに対して、原画像ORGを分割する際、第1ブロックDG1の主走査方向の画素数を、変動周期Tを表わす画素数の倍数にしておき、第1ブロックDG1と第2ブロックDG2とに対して、ラスターの開始端から同じ位相で閾値ThEの変動分を求めるようにしてもよい。つまり、第1,第2ブロックDG1,DG2に対して同じ式(3)(4)により、変動分thx,thyを求めるようにしてもよい。こうした第1ブロックDG1の主走査方向の画素数は、予め所定の値に設定してもよいし、原画像ORGを等分に分割した画素数に対して、変動周期Tを表わす画素数の倍数に最も近い画素数として設定してもよい。第1処理部51と第2処理部52とは、並列に処理を行なうので、第1ブロックDG1と第2ブロックDG2とを近い大きさにすれば、原画像ORG全体のハーフトーン処理が完了するまでの時間を、主走査方向の画素数が大きく異なる場合より、短縮できる。
【0043】
また、上記実施形態では、変動周期Tを画素数4に対応するものとしたが、印刷する画像の解像度が例えば600dpiであれば、変動周期Tを画素数8に対応させることも可能である。この場合でも空間周波数は、およそ3/mmとなっている。この場合の画素の座標と変動分thxとの関係を、図9に例示した。図は、第1ブロックDG1のラスター終端(x=xm)近くのx=90~98について、閾値ThEの変動分thxがどのように変化するかを示している。最上段は、mod(x,8)の値を示し、次段は、その場合の上記(5)として示した成分の値を示す。なお、閾値ThEの副走査方向の変動分thyも同様である。
【0044】
この場合でも、隣接する第2ブロックDG2に対して適用される変動周期Tの位相は、第1ブロックDG1に対して適用される変動周期Tと連続するように設定される。こうすることで、変動周期Tの場合と同様に、ハーフトーン処理の高速化と画質劣化の抑制とを実現できる。しかも、この例では、印刷される画像の解像度が高く、印刷された画像の品質をより高くできる。なお、この例では、印刷画像の解像度が600dpiであるのに対して変動周期Tを8画素分としたので、変動の空間周波数は3/mm程度となったが、変動周期Tを6画素分、あるいは4画素分とすれば、変動の空間周波数を、更に高くすることができ、ブロック間の画質の劣化を更に目立たないものにできる。
【0045】
B.第2実施形態:
次に第2実施形態について説明する。図10は、第2実施形態の印刷システム120の概略構成図である。図示するように、この印刷システム120は、ネットワーク(LAN)180を介して接続されたコンピューター(PC)190とプリンター130とからなる。PC190は、原画像ORGを作成・編集するものであり、内部に制御部140を備える。なお、図示していないが、制御部140、第1実施形態同様、プログラムを記憶するROMや画像データなどを展開するRAMなどのメモリも備える。
【0046】
PC190は、制御部140内に、原画像ORGを分割する分割部141、閾値出力部143、第1処理部151、通信部147を備える。各部は、第1実施形態と同様、ROMに記憶されたプログラムをCPUが実行することにより、実現される。閾値出力部143は、誤差拡散法によるハーフトーン処理を行なう第1処理部151に、第1実施形態同様、変動周期Tで変動する閾値ThEを出力する。第1処理部151は、分割された一方のブロックである第1ブロックDG1をハーフトーン処理し、ドット形成の有無を表わす第1ドットデータDDT1として出力する。通信部147は、LAN180を介して、プリンター130と通信を行なうものであり、分割された他方のブロックである第2ブロックDG2の画像データと第1処理部151が処理した結果である第1ドットデータDDT1とを、プリンター130に出力する。分割部141は第1実施形態同様、原画像ORGを2つに分割する。第2実施形態では、原画像ORGの分割は、主走査方向の画素数が、閾値ThEの変動周期Tの倍数になるように行なわれる。本実施形態でも、原画像ORGは、2つに分割して処理するが、3つ以上であってもよいことは第1実施形態と同様である。
【0047】
このPC190と協働して印刷システム120を構成するプリンター130は、LAN180を介した通信を行なう通信部131、第1処理部151と同様の処理を行なう第2処理部132、第2処理部132に対して誤差拡散法によるハーフトーン処理のための閾値ThEを出力する閾値出力部133、分割された画像をドットデータにより併合する併合部135、印刷媒体に対して印刷を行なう印刷部160などを備える。印刷部160を除いて、各部は、プリンター130に備えられたCPUがROMに用意されたプログラムを実行することにより、実現される。印刷部160は、第1実施形態と同様、シリアル式インクジェットプリンターとして必要なハードウェアを備える。
【0048】
この印刷システム120を構成するPC190およびプリンター130における処理を対比させて、図11に示した。図示する処理のうち、「画像処理ルーチン」は、PC190において、画像の編集等が行なわれ、印刷の指示がなされたときに、デバイスドライバとして用意されたプリンタードライバが実行する処理である。また、「印刷処理ルーチン」は、PC190からの指示を受けて、プリンター130が実行する処理である。
【0049】
PC190のプリンタードライバは、印刷の指示を受けると、まず原画像ORGの画像データを入力する処理を行なう(ステップS400)。第2実施形態でも、第1実施形態と同様、入力した画像データに対して、解像度変換処理(図2、ステップS110)や変動周期Tの決定処理(ステップS120)、更には色変換処理(ステップS130)等を行なうが、それらについては図示および説明は省略する。なお、第2実施形態では、原画像ORGの分割は、第1ブロックDG1の主走査方向の画素数が、閾値ThEの変動周期Tの倍数になるように行なわれているので、変位量αは演算していない。
【0050】
プリンタードライバは、解像度変換や閾値ThEの変動周期Tの決定などの処理を行なった上で、次に原画像ORGを分割する処理を行なう(ステップS440)。この処理も第1実施形態と同様である。分割処理により、原画像ORGは、第1ブロックDG1と第2ブロックDG2とに分割される。そこで、この第2ブロックDG2の画像データを、パケットにし、通信部147を用いて、プリンター130宛てに送信する第2画像送信処理を行なう(ステップS450)。その後、PC190は、送信しなかった側、つまり第1ブロックDG1の画像データを第1処理部151を用いてハーフトーン処理し、ドット形成の有無を表わす第1ドットデータDDT1を生成する(ステップS510)。
【0051】
プリンター130は、通信部131によりLAN180を介した通信を監視しており、自分宛のパケットが送られてくると、これを受信する(ステップS500)。これが第2画像受信処理である。プリンター130は、PC190から送られてきた第2ブロックDG2を受信すると、これを第2処理部132を用いてハーフトーン処理し、ドット形成の有無を表わす第2ドットデータDDT2を生成する(ステップS520)。プリンター130側で第2ドットデータDDT2の生成が完了するまでの時間と、PC190側で第1ドットデータDDT1の生成が完了するまでの時間は、両者のCPU等の処理能力により異なる。いずれにせよ、所定の時間内にこれらの処理は完了する。
【0052】
PC190は、第1ドットデータDDT1の生成が完了すると、これをプリンター130に送信し(ステップS460)、送信が完了すれば、画像処理ルーチンを終了する。他方、プリンター130は、第2ドットデータDDT2の生成が完了すると(ステップS520)、PC190からの第1ドットデータDDT1を受信する(ステップS540)。なお、PC190による第1ドットデータDDT1生成の処理が短時間の内に完了した場合、プリンター130は、第2ドットデータDDT2の生成の完了を待たずに、第2処理部132を用いたハーフトーン処理と平行して、PC190からの第1ドットデータDDT1の送信を受けて、これを受信しても差し支えない。受信した第1ドットデータDDT1は、プリンター130のRAMの所定の領域に保存されたあと、第2処理部132により生成された第2ドットデータDDT2と同様、併合部135に出力される。
【0053】
プリンター130は、併合部135により、第1ドットデータDDT1と第2ドットデータDDT2とを併合する(ステップS550)。併合処理では、第1ドットデータDDT1と第2ドットデータDDT2とを、ラスターラインが一致する様に配列する。併合処理されたドットデータは、プリンター130のRAMに一旦保存され、続いて行なわれる印刷処理(ステップS560)において読み出され、順次印刷部160に送り出される。印刷部160は、ドットデータに基づき、印刷媒体に画像を形成する。印刷処理(ステップS560)の完了後、プリンター130は印刷処理ルーチンを終了する。
【0054】
以上説明した第2実施形態によれば、第1実施形態と同様に、原画像ORGを2つに分けて、ブロックごとに独立に誤差拡散法によるハーフトーン処理を行なうことができ、しかもブロック同士の接続箇所の画質の劣化を抑制できるという効果を奏する。しかも、第2実施形態では、ブロックごとに独立に誤差拡散法によるハーフトーン処理を行なうことができるという特徴を生かして、ハーフトーン処理を、PC190とプリンター130言う異なる装置で行なわせる。したがって、ネットワークなどで接続された機器を組み合わせて原画像ORGを処理することができ、複数の機器を組み合わせて高速な画像処理と高画質の維持という2つの要請を満たすことができる。
【0055】
上述した実施形態では、原画像ORGを2つに分けて、第1ブロックDG1は、PC190により処理し、第2ブロックDG2はプリンター130より処理した。したがって、両者の処理能力の差により、処理の終了時間が相違する場合があり得る。そこで、PC190とプリンター130のハーフトーン処理の能力差を勘案して、ハーフトーン処理がほぼ同時期に終了するように、原画像ORGを分割するようにしてもよい。例えば、PC190の方が処理能力が高ければ、第1ブロックDG1を第2ブロックDG2より大きくなるよう分割すればよい。こうすれば、両者の処理の完了のタイミングを近づけることができ、印刷システム120としての処理時間を一層短くできる。
【0056】
C.その他の構成例:
第1実施形態では第1処理部51と第2処理部52とは同じプリンター20内部に設け、第2実施形態では第1処理部151と第2処理部132とは異なる装置内に設けた。いずれにせよ、複数の処理部は、誤差拡散法によるハーフトーン処理を行なうことで生じる濃度誤差を、分割されたブロック同士の接続箇所およびその近傍においてもやり取りする必要がない。したがって、誤差拡散法によるハーフトーン処理を行なう処理部の数を増やしても、処理部の数に応じて原画像ORGを分割して提供すればよく、処理部の数を必要に応じていくらでも増減できる。つまり画像処理装置やこれを用いた印刷装置を、いわゆるスケーラブルに構成できる。このため、誤差拡散法によるハーフトーン処理を行なう処理部を、例えば印刷ヘッド毎に設ければ、印刷装置をスケーラブルに実現可能となる。例えば、A4横一枚分の印刷範囲を持つ印刷ヘッドに画像処理部を組み込んだユニットを作れば、印刷範囲をA2縦とするには、この印刷ユニットを2台並べて設ければよい。このとき、各印刷ユニット間では、濃度誤差のやり取りをする必要がない。また、印刷範囲をA0縦とするには、この印刷ユニットを4台並べて設ければよい。
【0057】
上記各実施形態では、閾値ThEの変動分は、式(3)(4)などに示したように、画素の座標に基づく余弦関数として与えたが、正弦関数によってもよい。また、三角波によってもよい。あるいは、変動周期Tに対応する画素数が少ない場合には、矩形波で近似しても差し支えない。上記実施形態では、閾値ThEを変動させたが、画像データに変動分を加えてから閾値と比較するようにしてもよい。また、上記各実施形態では、式(3)(4)に示すように、変動分thx,thyを求めるのに振幅値tvを乗じたが、この振幅値tvは、主走査方向の変動分thxと副走査方向の変動分thyとで、異なる値としてもよい。また、振幅値tvは、固定値としてもよいが、画像の階調値に応じて小中大といった複数の振幅値から選択するようにしてもよいし、階調値に比例する値としてもよい。後者場合、例えば、ハーフトーン処理される画素の階調値の5から50%程度の値としてもよい。
【0058】
更に、振幅値tvは、主走査方向の変動分thxと副走査方向の変動分thyとで、異なる値としてもよい。このほか、分割された各ブロックに関しては、誤差拡散法によるハーフトーン処理を行なう原点位置(0,0)における変動周期Tの位相は、主走査方向と副走査方向とでずれていてもよい。また、変動周期T自体も、主走査方向と副走査方向とで相違していてもよい。
【0059】
上記実施形態では、閾値ThEの変動分thx,thyは、式(3)(4)により与えたが、関数を用いる必要はなく、変動周期T内における変動分thx,thyを定めておき、着目画素の座標に応じて変動分thx,thyを選択するようにしてもよい。こうすれば、閾値ThEを求める際に関数を用いた演算を行なう必要がなく、演算処理を簡略化できる。また、閾値ThEの変動分thx,thyは、画像の全範囲に対して与える必要はなく、隣接する画像(ブロック)から所定の範囲にのみ与えるようにしてもよい。こうすれば閾値ThEを求める演算処理を一部省略できる。
【0060】
D.他の実施態様:
(1)本開示の画像処理装置は、次の態様で実施可能である。第1の態様は、2次元的に配列された複数の画素からなる画像を処理する画像処理装置としての態様である。この画像処理装置は、前記画像を複数のブロックに分割する分割部と、前記分割されたブロックのうちの1つのブロックである第1ブロックに含まれる前記画素の階調を表わす画像データを、予め用意した第1閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第1ドットデータに変換する第1処理部と、前記第1ブロックに隣り合ったブロックである第2ブロックに含まれる前記画素の階調を表わす画像データを、予め用意した第2閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第2ドットデータに変換する処理を、前記第1処理部とは独立に行なう第2処理部と、を備え、前記第1,第2処理部における前記第1閾値および第2閾値は、前記画素の2次元の配列方向のそれぞれに沿って周期的に変化する変動成分を含み、前記変動成分を、前記第1ブロックと前記第2ブロックとのつなぎ目で同一の位相とする。
【0061】
この画像処理装置によれば、第1閾値および第2閾値を、画素の2次元の配列方向のそれぞれに沿って周期的に変化する変動成分を含むものとし、この変動成分を、第1ブロックと第2ブロックとのつなぎ目で同一の位相としているので、複数のブロックにおいて、独立に誤差拡散法を用いてドットデータに変換しても、第1ブロックと第2ブロックとのつなぎ目で、擬似輪郭の発生などの画質劣化が生じることを抑制できる。複数のブロックに対する誤差拡散法による処理を独立にできるので、処理の並列化を図ることが容易であり、処理時間の短縮化と画質劣化の抑制とを両立できる。この結果、画像処理装置をスケーラブルに構成することも容易となる。
【0062】
(2)こうした画像処理装置において、前記変動成分は、正弦波または余弦波に基づいて求められる正負の値であり、前記第1閾値および前記第2閾値を定める固定値に付加されるものとしてもよい。こうすれば、周期的に変動する成分を容易に生成することができる。もとより変動成分としては三角波や矩形波に基づいて生成することも可能である。
【0063】
(3)こうした画像処理装置において、前記固定値は、前記画素の前記画像データの大きさによらない一定の値、または前記画像データの大きさに対応させて定めた値としてもよい。固定値を画像データの大きさによらない値とすれば、演算が容易となる。他方、固定値を画像データの大きさに対応させて定めれば、誤差拡散法において生じ得る尾引などの解消に役立つ。尾引とは、例えば階調値の高い領域から階調値がゼロに近い低い領域に切り換わるとき、蓄積された誤差が、領域の切り替わりの箇所から一定の間隔で尾を引くように発生する現象を言う。閾値を画像データの大きさに対応させると、蓄積された誤差によるドットの生成が早まり、尾引は生じ難くなる。画像データの大きさに対応させるとは、固定値を画像データの大きさに関数によって比例させるだけでなく、段階的に小中大のように切り替えるものや、マップを用いて任意の対応関係にする構成などが含まれる。
【0064】
(4)こうした画像処理装置において、前記変動成分の空間周波数fは、3/ミリメートル以上であるものとしてもよい。人の目の感度は、空間周波数が低い変化に対してはと敏感であり、特に画像に関しては、1/ミリメートル程度の変化に対しては鋭敏であることが知られている。したがって、変動成分空間周波数を3/ミリメートル以上とすれば、閾値の変動成分によるドットデータの変動が感知されにくい。もとより、これより低い空間周波数としても、第1ブロックと第2ブロックとのつなぎ目の画質劣化を抑制できるという効果は得られる。
【0065】
(5)こうした画像処理装置において、前記第1処理部と前記第2処理部とは、独立に動作する別個の装置に内蔵されているものとしてもよい。第1処理部と第2処理部は、誤差拡散法を用いて画像を処理するが、つなぎ目の誤差をやり取りする必要がない。このため、第1処理部と第2処理部とを、独立に動作する別個の装置に内蔵させても、拡散すべき誤差をやり取りするための共有メモリなどの仕組みを用意する必要がない。したがって、第1処理部と第2処理部は独立に動作させることができ、別個の装置に内蔵しても動作させることができる。これは、画像の分割数が3以上になり、第3処理部、第4処理部等を設ける場合でも同様である。つまり各処理部は、必要に応じて増設することが容易な、スケーラブルな構造を有する。独立に動作する別個の装置は、専用の回線で接続してもよいし、汎用の通信回線やLANなどで、有線・無線を問わず接続するものしてもよい。あるいは、印刷用のヘッド毎に処理部を設け、印刷装置の大きさに合わせて、処理部を増設して、画像処理を行なうようにしてもよい。
【0066】
(6)本開示の第2の態様は、印刷装置としての態様である。この印刷装置は、上記いずれかの画像処理装置と、前記変換して得られた前記第1,第2ドットデータに従って、印刷媒体上にドットを形成するドット形成部と、を備える。この印刷装置は、印刷しようとする画像を複数に分割して、処理できるので、印刷に要する時間を短くでき、また印刷された画像の品質、特に分割された画像のつなぎ目の画質劣化を抑制できる。
【0067】
(7)本開示の第3の態様は、印刷システムとしての態様である。この印刷システムは、2次元的に配列された複数の画素からなる原画像を複数のブロックに分割する分割部と、前記分割されたブロックのうちの1つのブロックである第1ブロックに含まれる前記画素の階調を表わす第1画像データを、予め用意した第1閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第1ドットデータに変換する第1処理部と、前記第1ブロックに隣り合ったブロックである第2ブロックに含まれる前記画素の階調を表わす第2画像データを、予め用意した第2閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第2ドットデータに変換する処理を行なう第2処理部と、前記受信した第1ドットデータと前記第2ドットデータとを結合して、前記原画像に対応した画像を印刷媒体に印刷する印刷部と、を備え、前記第1処理部と前記第2処理部とは、回線を介して接続された第1装置および第2装置内にそれぞれ設けられ、前記第1,第2処理部における前記第1閾値および第2閾値は、前記画素の2次元の配列方向のそれぞれに沿って周期的に変化する変動成分を含み、前記変動成分を、前記第1ブロックと前記第2ブロックとのつなぎ目で同一の位相とする。
【0068】
この印刷システムによれば、第1装置と第2装置とがそれぞれ誤差拡散法による画像処理を分担できるので、印刷完了までの時間の短縮と、印刷された画像の画質の劣化、特に分割された画像のつなぎ目の画質劣化の抑制とを実現できる。
【0069】
(8)こうした印刷システムにおいて、前記第1装置は、前記原画像を扱うコンピューターであり、前記分割部および前記第1処理部を含み、前記第2装置は、プリンターであり、前記第2処理部および前記印刷部を含み、前記コンピューターは、更に、前記第2画像データと、前記第1ドットデータとを、前記プリンターに送信する送信部を備え、前記プリンターは、更に、前記第2画像データと前記第1ドットデータとを受信する受信部を備えるものとしてもよい。この印刷システムによれば、コンビューターとプリンターという印刷における標準的な構成において、印刷時間の短縮と画質劣化の抑制とを両立しやすい。
【0070】
(9)本開示の第4の態様は、画像処理方法としての態様である。この画像処理方法は、2次元的に配列された複数の画素からなる画像を処理する画像処理方法であって、前記画像を複数のブロックに分割し、前記分割されたブロックのうちの1つのブロックである第1ブロックに含まれる前記画素の階調を表わす画像データを、予め用意した第1閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第1ドットデータに変換する第1処理を行ない、前記第1ブロックに隣り合ったブロックである第2ブロックに含まれる前記画素の階調を表わす画像データを、予め用意した第2閾値と比較して、誤差拡散法によって、ドット形成の有無を表わす第2ドットデータに変換する処理を、前記第1処理とは独立に行ない、前記第1閾値および第2閾値は、前記画素の2次元の配列方向のそれぞれに沿って周期的に変化する変動成分を含み、前記変動成分を、前記第1ブロックと前記第2ブロックとのつなぎ目で同一の位相とする。こうすれば、画像処理における処理時間の短縮と分割された画像のつなぎ目の画質劣化の抑制とを図ることができる。また、複数のブロックに対する誤差拡散法による処理を独立にできるので、処理の並列化を図ることが容易であり、処理時間の短縮化と画質劣化の抑制とを両立できる。この結果、画像処理装置をスケーラブルに構成することも容易となる。
【0071】
(10)上記各実施形態において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよい。ソフトウェアによって実現されていた構成の少なくとも一部は、ディスクリートな回路構成により実現することも可能である。また、本開示の機能の一部または全部がソフトウェアで実現される場合には、そのソフトウェア(コンピュータープログラム)は、コンピューター読み取り可能な記録媒体に格納された形で提供することができる。「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスクやCD-ROMのような携帯型の記録媒体に限らず、各種のRAMやROM等のコンピューター内の内部記憶装置や、ハードディスク等のコンピューターに固定されている外部記憶装置も含んでいる。すなわち、「コンピューター読み取り可能な記録媒体」とは、データパケットを一時的ではなく固定可能な任意の記録媒体を含む広い意味を有している。
【0072】
本開示は、上述の実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の構成で実現することができる。例えば、発明の概要の欄に記載した各形態中の技術的特徴に対応する実施形態中の技術的特徴は、上述の課題の一部又は全部を解決するために、あるいは、上述の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
【符号の説明】
【0073】
20…プリンター、30…制御ユニット、31…入力部、32…印刷制御部、35…RAM、40…CPU、41…分割部、43…閾値出力部、51…第1処理部、52…第2処理部、70…キャリッジモーター、71…駆動ベルト、73…摺動軸、74…紙送りモーター、75…プラテン、77…操作パネル、80…キャリッジ、81…印刷ヘッド、82~87…インクカートリッジ、90…コンビューター(PC)、120…印刷システム、130…プリンター、131…通信部、132…第2処理部、133…閾値出力部、135…併合部、140…制御部、141…分割部、143…閾値出力部、147…通信部、151…第1処理部、160…印刷部、180…LAN、190…コンピューター(PC)
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11