JP4650539B2 - 画像処理装置および画像処理プログラム - Google Patents

画像処理装置および画像処理プログラム Download PDF

Info

Publication number
JP4650539B2
JP4650539B2 JP2008221505A JP2008221505A JP4650539B2 JP 4650539 B2 JP4650539 B2 JP 4650539B2 JP 2008221505 A JP2008221505 A JP 2008221505A JP 2008221505 A JP2008221505 A JP 2008221505A JP 4650539 B2 JP4650539 B2 JP 4650539B2
Authority
JP
Japan
Prior art keywords
start position
row direction
dither pattern
halftone
dither
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.)
Active
Application number
JP2008221505A
Other languages
English (en)
Other versions
JP2010057036A (ja
Inventor
信晴 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2008221505A priority Critical patent/JP4650539B2/ja
Publication of JP2010057036A publication Critical patent/JP2010057036A/ja
Application granted granted Critical
Publication of JP4650539B2 publication Critical patent/JP4650539B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)

Description

本発明は画像処理装置および画像処理プログラムに関するものである。
ハーフトーン処理の一手法として知られているディザ法は、ディザパターンに定められる閾値を、入力画像中の画素の階調を表すデータと比較し、当該データが閾値より大であればドットオン(すなわち、インクやトナーなどを載せて着色する)に変換し、当該データが閾値以下であればドットオフ(すなわち、着色しない)に変換することにより、例えば256階調で表現されている入力画像データを、プリンタにより擬似的に表現することが可能な階調数のデータに変換するための処理である。
ハーフトーン処理後のデータが、ドットオンまたはドットオフの2値で表現される場合、1画素は1ビットで表すことができるから、ハーフトーン処理は、CPUが一度に扱えることのできるデータの単位容量に合わせ、例えば、8画素(8ビット)分ずつ実行される。
特許文献1には、ディザパターンの幅(すなわち行方向の閾値数)がwであって、ハーフトーン処理の実行単位がmの場合、wとmの最小公倍数まで拡大したディザテーブルを生成し、そのディザテーブルを用いてハーフトーン処理を行う技術が開示されている。このようにすれば、m画素ずつ処理を進めていく中で、ディザパターンの行方向末尾端に到達したか否かの判断処理は、m画素毎に行えば良い。したがって、1画素毎にディザパターンの行方向末尾端か否かを判断する場合に比べて、処理速度を向上することができる。
特開2006−50299号公報
しかしながら、特許文献1の方法では、ディザパターンの幅wと処理単位mとの組み合わせによっては最小公倍数が極めて大きな値となって、ディザテーブルのサイズが非常に大きくなってしまい、メモリ容量を圧迫するという問題点があった。
本発明は、上記問題点を解決するためになされたものであり、メモリ使用量を節約しつつ、高速処理を実現可能な画像処理装置および画像処理プログラムを提供することを目的としている。
この目的を達成するために、請求項1記載の画像処理装置は、ディザテーブルに格納される閾値を用いたハーフトーン処理を実行することにより、入力画像を構成する画素毎の階調を表す多階調データを、その多階調データよりも低い階調数の疑似中間調データに変換するものであって、前記ディザテーブルは、n列以上の閾値が行列状に配置されるサイクルディザパターンと、そのサイクルディザパターンの行方向先頭からn列分の閾値であって前記サイクルディザパターンの行方向末尾に配置される付加パターンと、からなる閾値群を格納するものであり、前記サイクルディザパターンの行方向に並ぶ閾値の個数を表すサイクルディザパターン長を取得するサイクルディザパターン長取得手段と、前記ディザテーブルに格納される閾値群のうち、行方向に連続するn個分の閾値を用いて、n画素分の多階調データについて前記ハーフトーン処理を実行するハーフトーン実行手段と、そのハーフトーン実行手段によるハーフトーン処理の実行に用いられたn個分の閾値のうち行方向末尾端に位置する閾値の行方向末尾側に隣接する閾値の位置を次開始位置候補とする場合、その次開始位置候補が前記サイクルディザパターンと前記付加パターンとのいずれに含まれるかを判断する判断手段と、その判断手段により前記次開始位置候補が前記サイクルディザパターンに含まれると判断される場合、その次開始位置候補を、次に実行するハーフトーン処理の開始位置として決定する第1開始位置決定手段と、前記判断手段により前記次開始位置候補が前記付加パターンに含まれると判断される場合、その次開始位置候補から行方向先頭側に、サイクルディザパターン長分シフトした位置を、次に実行するハーフトーン処理の開始位置として決定する第2開始位置決定手段と、前記第1開始位置決定手段または前記第2開始位置決定手段のいずれかにより開始位置が決定されると、その開始位置から行方向に連続するn個分の閾値を用いて、前記ハーフトーン実行手段によるハーフトーン処理の実行と、前記判断手段による判断と、前記第1開始位置決定手段または前記第2開始位置決定手段のいずれかによる開始位置の決定と、を繰り返す繰返手段とを備えることを特徴とする。
請求項2記載の画像処理装置は、請求項1記載の画像処理装置において、前記サイクルディザパターンの列数は、nの倍数以外の値であることを特徴とする。
請求項3記載の画像処理装置は、請求項1または2に記載の画像処理装置において、前記サイクルディザパターンは、n列未満の閾値が行列状に配置される基本ディザパターンを、行方向に繰り返し配置した構成であることを特徴とする。
請求項4記載の画像処理装置は、請求項3記載の画像処理装置において、前記サイクルディザパターンの列数は、前記基本ディザパターンの列数の整数倍であって且つn以上の整数のうち、最小の値に等しいことを特徴とする。
請求項5記載の画像処理装置は、請求項3または4に記載の画像処理装置において、行数または列数が互いに異なる複数種類の基本ディザパターンの中から、いずれかを選択する選択手段と、その選択手段により選択された基本ディザパターンにおいて行方向に並ぶ閾値の個数がn個未満である場合、基本ディザパターンを構成する閾値を、行毎に、行方向に繰り返し配置し、行方向の閾値数がn個以上となると、行方向先頭からn個分の閾値を、各行の行方向末尾に付加することにより、前記ディザテーブルを生成するディザテーブル生成手段とを備えることを特徴とする。
請求項6記載の画像処理プログラムは、ディザテーブルに格納される閾値を用いたハーフトーン処理を処理装置に実行させることにより、入力画像を構成する画素毎の階調を表す多階調データを、その多階調データよりも低い階調数の疑似中間調データに変換させるプログラムであって、前記ディザテーブルは、n列以上の閾値が行列状に配置されるサイクルディザパターンと、そのサイクルディザパターンの行方向先頭からn列分の閾値であって前記サイクルディザパターンの行方向末尾に配置される付加パターンと、からなる閾値群を格納するものであり、前記サイクルディザパターンの行方向に並ぶ閾値の個数を表すサイクルディザパターン長を取得するサイクルディザパターン長取得手段と、前記ディザテーブルに格納される閾値群のうち、行方向に連続するn個分の閾値を用いて、n画素分の多階調データについて前記ハーフトーン処理を実行するハーフトーン実行手段と、そのハーフトーン実行手段によるハーフトーン処理の実行に用いられたn個分の閾値のうち行方向末尾端に位置する閾値の行方向末尾側に隣接する閾値の位置を次開始位置候補とする場合、その次開始位置候補が前記サイクルディザパターンと前記付加パターンとのいずれに含まれるかを判断する判断手段と、その判断手段により前記次開始位置候補が前記サイクルディザパターンに含まれると判断される場合、その次開始位置候補を、次に実行するハーフトーン処理の開始位置として決定する第1開始位置決定手段と、前記判断手段により前記次開始位置候補が前記付加パターンに含まれると判断される場合、その次開始位置候補から行方向先頭側に、サイクルディザパターン長分シフトした位置を、次に実行するハーフトーン処理の開始位置として決定する第2開始位置決定手段と、前記第1開始位置決定手段または前記第2開始位置決定手段のいずれかにより開始位置が決定されると、その開始位置から行方向に連続するn個分の閾値を用いて、前記ハーフトーン実行手段によるハーフトーン処理の実行と、前記判断手段による判断と、前記第1開始位置決定手段または前記第2開始位置決定手段のいずれかによる開始位置の決定と、を繰り返す繰返手段として、前記処理装置を機能させることを特徴とする。
請求項1記載の画像処理装置によれば、ハーフトーン処理の実行に用いられたn個分の閾値のうち行方向末尾端に位置する閾値の行方向末尾側に隣接する閾値の位置を次開始位置候補とする場合、その次開始位置候補がサイクルディザパターンと付加パターンとのいずれに含まれるかが判断される。
ここで、次開始位置候補がサイクルディザパターンに含まれると判断される場合、その次開始位置候補が、次に実行するハーフトーン処理の開始位置として決定される。サイクルディザパターンの各行の行方向末尾には、付加パターンに由来するn個分の閾値が配置されているから、次に実行するハーフトーン処理に用いるn個分の閾値は、ディザテーブルから取得することができる。
一方、次開始位置候補が付加パターンに含まれると判断される場合、その次開始位置候補から行方向先頭側に、サイクルディザパターン長分シフトした位置が、次に実行するハーフトーン処理の開始位置として決定される。サイクルディザパターン長は、n以上であるため、サイクルディザパターン長分、行方向先頭側にシフトした位置を開始位置として決定することにより、次に実行するハーフトーン処理に用いるn個分の閾値を、ディザテーブルから取得することができる。
したがって、ディザテーブルに格納される閾値群の行方向末尾端に到達したか否かを画素毎に判断しなくても、ハーフトーン処理を繰り返すことができ、高速処理を実現できるという効果がある。
また、サイクルディザパターンの行方向末尾に付加される付加パターンは、サイクルディザパターンの行方向先頭からn列分の閾値からなる。したがって、ディザテーブルに格納される閾値群は、行方向において、サイクルディザパターン長を1単位とする周期的な配列をなしている。
よって、次開始位置候補が付加パターンに由来すると判断される場合に、その次開始位置候補から行方向先頭側にサイクルディザパターン長分シフトした位置を開始位置として決定することにより、周期的な閾値配列における1周期内の進行段階が次開始位置候補と同一の位置、すなわち、次開始位置候補と同一位相にある位置を、次のハーフトーン処理の開始位置とすることができるので、閾値の適用順序を壊すおそれがない。
さらに、ディザテーブルは、サイクルディザパターンと、そのサイクルディザパターンの行方向先頭からn列分の閾値からなる付加パターンとからなるので、そのサイズが大となることを抑制でき、メモリ使用量を節約できるという効果を奏する。
請求項2記載の画像処理装置によれば、ディザパターンの列数がnの倍数以外の値であっても、請求項1記載の画像処理装置と同様に、メモリ使用量を節約しつつ高速処理を実現することができるという効果を奏する。
請求項3記載の画像処理装置によれば、請求項1または2に記載の画像処理装置の奏する効果に加え、サイクルディザパターンは、n列未満の閾値が行列状に配置される基本ディザパターンを、行方向に繰り返し配置した構成であるため、n列未満の基本ディザパターンであっても、これを用いてサイクルディザパターンを生成し、適用可能であるという効果がある。
請求項4記載の画像処理装置によれば、請求項3記載の画像処理装置の奏する効果に加え、前記サイクルディザパターンの列数は、前記基本ディザパターンの列数の整数倍であって且つn以上の整数のうち、最小の値に等しいので、サイクルディザパターン、ひいてはディザテーブルに格納される閾値群の列数が大となることを抑制でき、メモリ使用量を節約できるという効果がある。
請求項5記載の画像処理装置によれば、請求項3または4に記載の画像処理装置の奏する効果に加え、選択された基本ディザパターンにおいて行方向に並ぶ閾値の個数がn個未満である場合、基本ディザパターンを構成する閾値を、行毎に、行方向に繰り返し配置し、行方向の閾値数がn個以上となると、行方向先頭からn個分の閾値を、各行の行方向末尾に付加するので、多種多様な基本ディザパターンに基づいて、ディザテーブルを生成することができるという効果がある。
請求項6記載の画像処理プログラムによれば、コンピュータで実行されることにより、請求項1記載の画像処理装置と同様の作用効果を奏する。
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図1は、本発明の一実施形態であるPC10と、ケーブル40を介してPC10に接続される画像形成装置30との電気的構成を示すブロック図である。
PC10は、入力画像を構成する画素毎の階調を表す多階調データを、その多階調データよりも低い階調数の疑似中間調データに変換するハーフトーン処理(図6参照)を実行する。そして、その疑似中間調データを画像形成装置30に出力することにより、画像形成装置30に、入力画像の階調が擬似的に表現された画像を形成させる。特に、本実施形態のPC10は、メモリ使用量を節約しつつ、ハーフトーン処理を高速で実行できるように構成されている。
PC10は、CPU11、ROM12、ハードディスクドライブ13(以下、HDD13と称す)、RAM14、インターフェイス16(以下、I/Fと称す)、入力装置17、表示装置18とを主に有し、これらはバスライン20を介してお互いに接続されている。
CPU11は、ROM12やHDD13やRAM14に記憶される固定値やプログラムに従って、バスライン20により接続された各部を制御する。なお、本実施形態では、CPU11は、8ビットのデータを一度に扱うことができる8ビットCPUで構成されているものとして説明する。ROM12は、PC10の動作を制御するためのプログラムなどが格納されたメモリである。
HDD13は、書換可能な不揮発性のメモリであり、プリンタドライバ131、基本ディザパターンメモリ132、ディザテーブルメモリ133、サイクルディザパターン長メモリ134が設けられる。
プリンタドライバ131は、図3を参照して後述するディザテーブル生成処理、図5を参照して説明する疑似中間調データ生成処理、図6を参照して後述するハーフトーン処理を実行するためのプログラムである。基本ディザパターンメモリ132は、基本ディザパターン50(図2(a)参照)を記憶するメモリであり、ディザテーブルメモリ133は、ディザテーブル52(図2(b)参照)を格納するメモリである。
図2を参照して、基本ディザパターン50とディザテーブル52について説明する。なお、図2においては、マトリクス状に配置された要素内の値が閾値を表しており、紙面に向かって左側が行方向先頭側、紙面に向かって右側が行方向末尾側として、閾値の配列を図示している。
図2(a)は、基本ディザパターン50の一例を示す図である。図2(a)に示すように、基本ディザパターン50は、行列状に配置される閾値から構成される。ここで、基本ディザパターン50の最適な行数や列数は、入力画像の種類(ドキュメント、写真、グラフィック、テキスト)や入力画像の解像度によって異なる。したがって、入力画像の種類と解像度との組み合わせのそれぞれについて、行数または列数が互いに異なる複数種類の基本ディザパターン50が予め準備され、基本ディザパターンメモリ132(図1参照)に格納されている。本実施形態のPC10は、基本ディザパターンメモリ132に格納されている複数種類の基本ディザパターン50のうち、ユーザにより指定された基本ディザパターン50に基づいてディザテーブル52を生成し、ディザテーブルメモリ133に格納する。
図2(b)は、ディザテーブル52に格納される閾値群を模式的に示す図である。図2(b)に示すように、ディザテーブル52は、サイクルディザパターン54と、付加パターン56とからなる閾値群を格納する。
サイクルディザパターン54は、その列数が、CPU11の処理単位のビット数n以上となるように構成されている。本実施形態では、CPU11が8ビットCPUであるものとして説明するから、サイクルディザパターン54の列数は、8以上となるように構成される。図2(b)に示す例では、サイクルディザパターン54は、2個の基本ディザパターン50を行方向に繰り返し配置した構成を有する。なお、基本ディザパターン50の列数がCPU11の処理単位のビット数n以上である場合には、1のサイクルディザパターン54が、1つの基本ディザパターン50から構成されても良い。
ここで、サイクルディザパターン54の行方向に並ぶ閾値の個数(すなわちサイクルディザパターン54の列数)をサイクルディザパターン長と称する。図2(b)に示す例では、サイクルディザパターン長は10である。サイクルディザパターン長は、基本ディザパターン50の列数の整数倍であって、且つ、CPU11の処理単位ビット数n以上の整数という2つの条件を満たす値であるが、さらに、これら2つの条件を満たす整数のうち、最小の値であることが好ましい。このようにすれば、サイクルディザパターン54、ひいてはディザテーブル52に格納される閾値群の列数が大となることを抑制でき、メモリ使用量を節約できる。
付加パターン56は、サイクルディザパターン54の行方向先頭から8列分の閾値で構成されるパターンであって、サイクルディザパターン54の行方向末尾に付加される。すなわち、ディザテーブル52に格納される閾値群は、行方向において、サイクルディザパターン長(図2に示す例では10)を1単位とする周期的な配列をなしている。
なお、説明の都合上、サイクルディザパターン54と付加パターン56との境界を、ボーダライン58と称することとする。
図1に戻り説明する。サイクルディザパターン長メモリ134は、ディザテーブルメモリ133に記憶されたディザテーブル52の各々について、サイクルディザパターン長を記憶するメモリである。
RAM14は、CPU11の処理に必要なデータなどを一時的に記憶するための読み書き可能なメモリであり、入力画像読み出し位置メモリ141、ディザテーブル読み出し位置メモリ142が設けられる。図6を参照して後述するハーフトーン処理では、入力画像読み出し位置141に記憶される位置情報に基づいて、処理対象画素を特定する。そして、処理対象画素の多階調データを、ディザテーブル読み出し位置メモリ142に記憶される位置情報で特定される閾値と比較することにより、1画素ずつ処理を進行する。
入力装置17は、ユーザ指示を入力するためのものであり、例えば、キーボードやマウスなどで構成される。表示装置18は、例えば、CRTディスプレイや液晶ディスプレイなどにより構成され、各種処理内容や入力されたデータなどを視覚的に表示するものである。
画像形成装置30は、演算装置であるCPU31と、そのCPU31により実行される各種の制御プログラムやデータを記憶したROM32と、RAM33とを備えている。また、これらのCPU31、ROM32、RAM33は、バスライン38を介して互いに接続されており、かかるバスライン38は、入出力インターフェイス39に接続されている。
この入出力ポート39は、インターフェイス34(以下、I/F34と称す)と、操作キー35と、LCD36と、印刷部37とに接続されており、CPU31には各部を制御することができる。
I/F16,34を介して、PC10から画像形成装置30にデータが入力されると、画像形成装置30は、CPU31により印刷部37を駆動させて、記録用紙へ画像の形成を行う。なお、本実施形態の画像形成装置30は、帯電させた感光体にレーザー光などを照射してトナーを付着させ、用紙に転写し定着させて画像を形成する、いわゆるレーザプリンタとして構成される。
図3は、PC10において実行されるディザテーブル生成処理(S100)を示すフローチャートであり、図4は、ディザテーブル52の生成の過程を模式的に示す図である。図4においては、紙面に向かって左側が行方向先頭側、紙面に向かって右側が行方向末尾側として、閾値の配列を図示している。
図3に示すディザテーブル生成処理(S100)を、図4を適宜参照しつつ説明する。このディザテーブル生成処理(S100)は、ディザテーブル52の生成がユーザから指示された場合に実行される処理であり、基本ディザパターン50に基づいてディザテーブル52を生成する。
まず、行数または列数が互いに異なる複数種類の基本ディザパターン50の中から、ユーザにより指定された基本ディザパターン50(図2(a)参照)を選択する(S102)。次に、選択した基本ディザパターン50に基づいてディザテーブル52(図2(b)参照)が既に生成されており、ディザテーブルメモリ133(図1参照)に記憶されているか否かを判断する(S104)。S104の判断が肯定される場合(S104:Yes)、ディザテーブル生成処理(S100)を終了する。
一方、S104の判断が否定される場合(S104:No)、選択した基本ディザパターン50の第1行目を処理対象行として選択し(S106)、その処理対象行の閾値数が、CPU11の処理単位ビット数n以上であるか否かを判断する(S108)。なお、本実施形態においては、n=8であるものとして説明を行う。
S108の判断が否定される場合(S108:No)、行方向末尾に処理対象行を付加し、処理対象行を繰り返し配置する(S110)。次に、行方向の閾値数が、n以上となったか否かを判断する(S112)。S112の判断が否定される場合(S112:No)、S110に戻り、処理を繰り返す。
図4(a)は、S110の処理により、処理対象行が付加された状態を示す図である。図4(a)に示すように、行方向閾値数がn(図4(a)に示す例では8)以上となるまで、処理対象行を繰り返し配置する。
図3に戻り説明する。処理対象行の付加により閾値数がn以上となったと判断される場合(S112:Yes)、または、処理対象行の閾値数が最初からn以上であると判断される場合(S108:Yes)、行方向先頭からn個分の閾値を取得し(S114)、その取得したn個分の閾値を、行方向末尾に付加する(S116)。
図4(b)は、S114の処理で取得される、行方向先頭から8個分の閾値を示す図である。そして、図4(c)は、その取得された8個分の閾値が行方向末尾に付加された状態を示す図である。図4(c)に示すように、処理対象行を繰り返し配置することにより、ディザテーブル52の1行分を構成する閾値の配列を生成することができる。
図3に戻り説明する。次に、基本ディザパターン50の全行を処理したか否かを判断する(S118)。S118の判断が否定される場合(S118:No)、S106に戻り、次の行を処理対象行とし、処理を繰り返す。そして、処理を繰り返すことにより、全行分の処理を終了すると図4(d)に示すように、基本ディザパターン50に基づくディザテーブル52を生成することができる。
全行分の処理が終了すると、S118の判断が肯定されるので(S118:Yes)、生成されたディザテーブル52をディザテーブルメモリ133(図1参照)に記憶し(S120)、そのディザテーブル52のサイクルディザパターン長を取得して、サイクルディザパターン長メモリ134に記憶し(S122)、ディザテーブル生成処理(S100)を終了する。
上述したように、基本ディザパターンメモリ132(図1参照)には、入力画像の種類と解像度の組み合わせの各々について、専用の基本ディザパターン50が予め準備されているが、ユーザは必ずしも全ての組み合わせを必要とするわけではない。よって、本実施形態で説明したように、ユーザが指定した基本ディザパターン50について、ディザテーブル作成処理(S100)によりディザテーブル52を生成し、記憶するようにすれば、不必要なディザテーブル52の保持によるメモリ容量の圧迫を防止できる。また、一度生成したディザテーブル52は、ディザテーブルメモリ133に保存されるので、ディザテーブル52を生成する処理を、無駄に繰り返す必要がない。
また、ディザテーブル生成処理(S100)によれば、選択された基本ディザパターン50において行方向に並ぶ閾値の個数がn個未満である場合であっても、n個以上であってもディザテーブル52を生成することができるので、多種多様な基本ディザパターン50に基づいて、ディザテーブル52を生成することができる。
また、ディザテーブル52は、サイクルディザパターン54と、そのサイクルディザパターンの行方向先頭からn列分の閾値からなる付加パターン56とからなるので、そのサイズが大となることを抑制でき、メモリ使用量を節約できる。
図5は、PC10において実行される疑似中間調データ生成処理(S200)を示すフローチャートである。PC10において、印刷対象の入力画像が指定され、その印刷の実行がユーザにより指示されると、PC10は、疑似中間調データ生成処理(S200)を実行して入力画像の多階調データを疑似中間調データに変換し、画像形成装置30へ送信する。
まず、入力画像の種類と解像度との組み合わせに対応した基本ディザパターン50に基づいて生成されたディザテーブル52を、ディザテーブルメモリ133(図1参照)から呼び出す(S201)。なお、適切なディザテーブル52がディザテーブルメモリ133に記憶されていない場合には、新たに生成する必要があるので、図3に示すディザテーブル生成処理(S100)の実行をユーザに促し、適切なディザテーブル52を生成してから、このハーフトーン処理(S200)が実行される。
次に、入力画像読み出し位置メモリ141およびディザテーブル読み出し位置メモリ142(図1参照)を初期化する(S202)。入力画像読み出し位置メモリ141は、処理対象の画素を特定するための位置情報として、入力画像の横方向をX軸方向、縦方向をY軸方向として設定される直交座標系に基づく座標(Ix,Iy)を記憶する。一方、ディザテーブル読み出し位置メモリ142は、処理対象画素と比較すべき閾値を特定するための位置情報として、ディザテーブル52の行方向をX軸方向、列方向をY軸方向として設定される直交座標系に基づく座標(Dx,Dy)を記憶する。
次に、ハーフトーン処理を実行する(S203)。このハーフトーン処理(S203)は、ディザテーブル52に格納される閾値群のうち、行方向に並ぶn個分の閾値を用いて、n画素分の多階調データを疑似中間調データに変換する処理である。
図6は、ハーフトーン処理(S203)を示すフローチャートである。入力画像読み出し位置メモリ141に記憶された座標(Ix,Iy)で特定される画素の多階調データが、ディザテーブル読み出し位置メモリ142に記憶された座標(Dx,Dy)で特定される位置に格納された閾値よりも大であるか否かを判断する(S2030)。
S2030の判断が肯定される場合(S2030:Yes)、RAM14に設けられた書き込みメモリ(S2030)のビットを立てる(S2032)。すなわち、トナーやインクを定着することにより着色する画素であること(ドットオン)を表す値「1」を記憶する。一方、S2030の判断が否定される場合(S2030:No)、S2032の処理をスキップする。すなわち、着しない画素であること(ドットオフ)を表す値「0」を記憶する。
次に、入力画像読み出し位置メモリ141に記憶されたX座標に「1」を加算し(S2034)、ディザテーブル読み出し位置メモリ142に記憶されたX座標に「1」を加算する(S2036)。そして、書き込みメモリを1ビットシフトし(S2038)、n画素分、処理を繰り返したか否かを判断する(S2040)。
S2040の判断が否定される場合(S2040:No)、S2030に戻り処理を繰り返す。一方、8画素分の処理が終了し、S2040の判断が肯定される場合(S2040:Yes)、書き込みメモリに格納されたn画素分の処理結果を疑似中間調データとしてメモリに書き込み(S2042)、この処理を終了する。本実施形態では、n=8であるから、ハーフトーン処理(S203)を1回実行する毎に、1バイト分の疑似中間調データが生成される。
次に、入力画像の横方向における最後の画素まで処理を終了したか否かを判断する(S204)。S204の判断が否定される場合(S204:No)、S205,S206の処理によって、次に実行するハーフトーン処理(S207)の開始位置を決定する。
図7は、ハーフトーン処理(S207)の開始位置の決定について説明する図である。図7においては、図面の理解を容易とするため、サイクルディザパターン54および付加パターン56はそれぞれ1行分のみ図示している。また、n=8の場合におけるハーフトーン処理を図示している。なお、図7においては、紙面に向かって左側が行方向先頭側、紙面に向かって右側が行方向末尾側として、閾値の配列を図示している。
図7に示すように、n=8とする場合、1回目のハーフトーン処理は、行方向先頭を開始位置とし、先頭から8個目の閾値の位置を終了位置として実行される。この1回目のハーフトーン処理の終了位置の閾値(特許請求の範囲に記載の「n個分の閾値のうち行方向末尾端に位置する閾値」)の行方向末尾側に隣接する閾値の位置を、次開始位置候補62とする。
図7に示すように、1回目のハーフトーン処理は、行方向先頭の閾値から開始されているから、1回目のハーフトーン処理後の次開始位置候補62は、サイクルディザパターン54に含まれる。換言すれば、次開始位置候補62は、ボーダライン58を超えない。このような場合は、次開始位置候補62を、次に実行するハーフトーン処理(2回目のハーフトーン処理)の開始位置として決定する。
上述したように、サイクルディザパターン54の各行の行方向末尾には、付加パターン56に由来するn個分(本実施形態では8個分)の閾値が配置されているから、次開始位置候補62をそのまま、2回目のハーフトーン処理の開始位置として決定することにより、2回目のハーフトーン処理の途中で、ディザテーブル52の行方向末尾端に到達してしまうことがなく、ディザテーブル52から閾値を確実に取得できる。
図7に示すように、2回目のハーフトーン処理の実行後の次開始位置候補62は、付加パターン56に含まれる。換言すれば、次開始位置候補62が、ボーダライン58を超える。このような場合は、次開始位置候補62から行方向先頭側に、サイクルディザパターン長(本実施形態では10)分シフトした位置を、3回目のハーフトーン処理の開始位置として決定する。このようにすれば、3回目のハーフトーン処理の途中で、ディザテーブル52の行方向末尾端に到達してしまうことがなく、ディザテーブル52から閾値を確実に取得できる。
また、上述したように、ディザテーブル52に格納される閾値群は、行方向において、サイクルディザパターン長を1単位とする周期的な配列をなしている。よって、次開始位置候補62から行方向先頭側にサイクルディザパターン長分シフトした位置、換言すれば、次開始位置候補62と同一位相にある位置を、3回目のハーフトーン処理の開始位置とすることができる。同一位相にある位置には、同一の閾値(図7に示す例では「2」)が格納され、その後に連続する閾値の配列も共通しているので、閾値の適用順序を壊すおそれがない。
図5に戻り説明する。図7を参照して説明したように、次開始位置候補62が、付加パターン56に由来するか否か、すなわち、次開始位置候補62がボーダライン58(図7参照)を超えるか否かを判断する(S205)。
S205の判断が肯定される場合(S205:Yes)、すなわち、次開始位置候補62が付加パターン56に含まれると判断される場合、ディザテーブル読み出し位置メモリ142に記憶されるX座標(Dx)から、サイクルディザパターン長を減算する。換言すれば、次のハーフトーン処理(S207)の開始位置を、サイクルディザパターン長だけ元に戻す(S206)。このS206の処理が、「次開始位置候補62から行方向先頭側に、サイクルディザパターン長分シフトした位置を、次に実行するハーフトーン処理(S207)の開始位置として決定する」処理に該当する。
一方、S205の判断が否定される場合(S205:No)、S206の処理をスキップする。S205の判断結果に従い、S206の処理をスキップする処理が、「次開始位置候補62を、次に実行するハーフトーン処理(S207)の開始位置として決定する」処理に該当する。
このようにして開始位置が決定されると、その開始位置から行方向に連続する8個分の閾値を用いて、ハーフトーン処理の実行を繰り返す(S207)。なお、ハーフトーン処理(S207)は、図6を参照して説明したハーフトーン処理(S203)と同一の処理であるため、説明を省略する。
入力画像の横方向における最後の画素まで処理を終了したか否かを判断する(S208)。S208の判断が否定される場合(S208:No)、S205からS208の処理を繰り返す。
一方、S208の判断が肯定されると(S208:Yes)、次に、入力画像を構成する全画素を処理したか否かを判断する(S209)。S209の判断が否定される場合(S209:No)、入力画像読み出し位置メモリ141に記憶されたY座標(Iy)、ディザテーブル読み出し位置メモリ142に記憶されたY座標(Dy)の各々に「1」加算し、S203に戻る。
一方、S209の判断が肯定されると(S209:Yes)、疑似中間調データ生成処理(S200)を終了する。PC10は、疑似中間調データを画像形成装置30へ送信し、画像形成装置30に画像を形成させる。
本実施形態の疑似中間調データ生成処理によれば、ディザテーブル52に格納される閾値群の行方向末尾端に到達したか否かを画素毎に判断しなくても、ハーフトーン処理(S207)を繰り返すことができ、高速処理を実現できる。
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
例えば、本実施形態では、CPU11が8ビットCPUで構成されているものとして説明したが、16ビットCPU、32ビットCPU、64ビットCPUなどが用いられても良い。その場合、本実施形態中のnには、16,32,64など、CPUの処理単位のビット数に応じた値が代入される。
また、上記実施形態のディザテーブル生成処理(S100)によって、ディザテーブル52を生成する際には、サイクルディザパターン54の列数がnの倍数となるか否かに応じて、生成処理を異ならせても良い。例えば、サイクルディザパターン54の列数がnの倍数以外の値となった場合、上記実施形態で説明したディザテーブル生成処理(S100)に従って、ディザテーブル52を生成する一方で、サイクルディザパターン54の列数がnの倍数となる場合には、付加パターン56無しで、すなわちサイクルディザパターン54のみからなる閾値群を、ディザテーブル52に格納することとしても良い。サイクルディザパターン54の列数がnの倍数であれば、本実施形態の疑似中間調データ生成処理(S200)のように、次開始位置候補62を判断するのではなく、n画素分のハーフトーン処理を行う毎に、ディザテーブルの行方向末尾まで到達したか否かを判断し、行方向末尾に到達した場合、開始位置を行方向先頭に戻すこととすれば良いからである。このようにしても、メモリ使用量を節約しつつ高速処理を実現することができる。
また、上記実施形態では、ディザテーブル生成処理(S100)および疑似中間調生成処理(S200)を、PC10で実行するものとして説明したが、画像形成装置30で実行するように構成されても良い。その場合、画像形成装置30のCPU31(図1参照)が、特許請求の範囲に記載の処理装置に相当し、画像形成装置30のROM32に格納されるプログラムが、特許請求の範囲に記載の画像処理プログラムに相当する。なお、画像形成装置30は、レーザプリンタと異なる他の印字方式(例えばインクジェット方式)により、画像を形成するように構成されても良い。
また、上記実施形態では、基本ディザパターン50の行方向先頭から行方向末尾までを1単位とし、それを繰り返すことによりサイクルディザパターン54を構成することとしていたが、これに代えて、基本ディザパターンの行方向先頭からm番目の閾値を、サイクルディザパターンの行方向先頭閾値とし、そのm番目の閾値から基本ディザパターン50の行方向末尾までの閾値の行方向末尾に、基本ディザパターン50の行方向先頭からm−1番目の閾値までを付加したものを1単位とし、それを繰り返すことによりサイクルディザパターン54を構成しても良い。このようにしても、基本ディザパターン50と同じ閾値配列でサイクルディザパターン54を構成することができ、本実施形態と同様の効果が得られる。
本発明の一実施形態であるPCと、PCに接続される画像形成装置との電気的構成を示すブロック図である。 (a)は、基本ディザパターンの一例を示す図であり、(b)は、ディザテーブルに格納される閾値群を模式的に示す図である。 PCにおいて実行されるディザテーブル生成処理を示すフローチャートである。 ディザテーブル生成の過程を模式的に示す図である。 PCにおいて実行される疑似中間調データ生成処理を示すフローチャートである。 ハーフトーン処理を示すフローチャートである。 ハーフトーン処理の開始位置の決定について説明する図である。
符号の説明
10 PC(画像処理装置の一例)
11 処理装置の一例
131 プリンタドライバ(画像処理プログラムの一例)
50 基本ディザパターン
52 ディザテーブル
54 サイクルディザパターン
56 付加パターン
62 次開始位置候補
S100 ディザテーブル生成手段
S102 選択手段
S122 サイクルディザパターン長取得手段の一例
S203 ハーフトーン実行手段の一例
S205 判断手段の一例、第1開始位置決定手段の一例
S206 第2開始位置決定手段の一例
S205〜S208 繰返手段の一例


Claims (6)

  1. ディザテーブルに格納される閾値を用いたハーフトーン処理を実行することにより、入力画像を構成する画素毎の階調を表す多階調データを、その多階調データよりも低い階調数の疑似中間調データに変換する画像処理装置であって、
    前記ディザテーブルは、n列以上の閾値が行列状に配置されるサイクルディザパターンと、そのサイクルディザパターンの行方向先頭からn列分の閾値であって前記サイクルディザパターンの行方向末尾に配置される付加パターンと、からなる閾値群を格納するものであり、
    前記サイクルディザパターンの行方向に並ぶ閾値の個数を表すサイクルディザパターン長を取得するサイクルディザパターン長取得手段と、
    前記ディザテーブルに格納される閾値群のうち、行方向に連続するn個分の閾値を用いて、n画素分の多階調データについて前記ハーフトーン処理を繰り返し実行するハーフトーン実行手段と、
    そのハーフトーン実行手段によるハーフトーン処理の実行に用いられたn個分の閾値のうち行方向末尾端に位置する閾値の行方向末尾側に隣接する閾値の位置を次開始位置候補とする場合、その次開始位置候補が前記サイクルディザパターンと前記付加パターンとのいずれに含まれるかを判断する判断手段と、
    その判断手段により前記次開始位置候補が前記サイクルディザパターンに含まれると判断される場合、その次開始位置候補を、次に実行するハーフトーン処理の開始位置として決定する第1開始位置決定手段と、
    前記判断手段により前記次開始位置候補が前記付加パターンに含まれると判断される場合、その次開始位置候補から行方向先頭側に、サイクルディザパターン長分シフトした位置を、次に実行するハーフトーン処理の開始位置として決定する第2開始位置決定手段と、
    前記第1開始位置決定手段または前記第2開始位置決定手段のいずれかにより開始位置が決定されると、その開始位置から行方向に連続するn個分の閾値を用いて、前記ハーフトーン実行手段によるハーフトーン処理の実行と、前記判断手段による判断と、前記第1開始位置決定手段または前記第2開始位置決定手段のいずれかによる開始位置の決定と、を繰り返す繰返手段とを備えることを特徴とする画像処理装置。
  2. 前記サイクルディザパターンの列数は、nの倍数以外の値であることを特徴とする請求項1記載の画像処理装置。
  3. 前記サイクルディザパターンは、n列未満の閾値が行列状に配置される基本ディザパターンを、行方向に繰り返し配置した構成であることを特徴とする請求項1または2に記載の画像処理装置。
  4. 前記サイクルディザパターンの列数は、前記基本ディザパターンの列数の整数倍であって且つn以上の整数のうち、最小の値に等しいことを特徴とする請求項3記載の画像処理装置。
  5. 行数または列数が互いに異なる複数種類の基本ディザパターンの中から、いずれかを選択する選択手段と、
    その選択手段により選択された基本ディザパターンにおいて行方向に並ぶ閾値の個数がn個未満である場合、基本ディザパターンを構成する閾値を、行毎に、行方向に繰り返し配置し、行方向の閾値数がn個以上となると、行方向先頭からn個分の閾値を、各行の行方向末尾に付加することにより、前記ディザテーブルを生成するディザテーブル生成手段とを備えることを特徴とする請求項3または4に記載の画像処理装置。
  6. ディザテーブルに格納される閾値を用いたハーフトーン処理を処理装置に実行させることにより、入力画像を構成する画素毎の階調を表す多階調データを、その多階調データよりも低い階調数の疑似中間調データに変換させる画像処理プログラムであって、
    前記ディザテーブルは、n列以上の閾値が行列状に配置されるサイクルディザパターンと、そのサイクルディザパターンの行方向先頭からn列分の閾値であって前記サイクルディザパターンの行方向末尾に配置される付加パターンと、からなる閾値群を格納するものであり、
    前記サイクルディザパターンの行方向に並ぶ閾値の個数を表すサイクルディザパターン長を取得するサイクルディザパターン長取得手段と、
    前記ディザテーブルに格納される閾値群のうち、行方向に連続するn個分の閾値を用いて、n画素分の多階調データについて前記ハーフトーン処理を実行するハーフトーン実行手段と、
    そのハーフトーン実行手段によるハーフトーン処理の実行に用いられたn個分の閾値のうち行方向末尾端に位置する閾値の行方向末尾側に隣接する閾値の位置を次開始位置候補とする場合、その次開始位置候補が前記サイクルディザパターンと前記付加パターンとのいずれに含まれるかを判断する判断手段と、
    その判断手段により前記次開始位置候補が前記サイクルディザパターンに含まれると判断される場合、その次開始位置候補を、次に実行するハーフトーン処理の開始位置として決定する第1開始位置決定手段と、
    前記判断手段により前記次開始位置候補が前記付加パターンに含まれると判断される場合、その次開始位置候補から行方向先頭側に、サイクルディザパターン長分シフトした位置を、次に実行するハーフトーン処理の開始位置として決定する第2開始位置決定手段と、
    前記第1開始位置決定手段または前記第2開始位置決定手段のいずれかにより開始位置が決定されると、その開始位置から行方向に連続するn個分の閾値を用いて、前記ハーフトーン実行手段によるハーフトーン処理の実行と、前記判断手段による判断と、前記第1開始位置決定手段または前記第2開始位置決定手段のいずれかによる開始位置の決定と、を繰り返す繰返手段として、前記処理装置を機能させることを特徴とする画像処理プログラム。
JP2008221505A 2008-08-29 2008-08-29 画像処理装置および画像処理プログラム Active JP4650539B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008221505A JP4650539B2 (ja) 2008-08-29 2008-08-29 画像処理装置および画像処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008221505A JP4650539B2 (ja) 2008-08-29 2008-08-29 画像処理装置および画像処理プログラム

Publications (2)

Publication Number Publication Date
JP2010057036A JP2010057036A (ja) 2010-03-11
JP4650539B2 true JP4650539B2 (ja) 2011-03-16

Family

ID=42072449

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008221505A Active JP4650539B2 (ja) 2008-08-29 2008-08-29 画像処理装置および画像処理プログラム

Country Status (1)

Country Link
JP (1) JP4650539B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11917115B1 (en) 2023-03-10 2024-02-27 Ricoh Company, Ltd. Shift compensation mechanism

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07262349A (ja) * 1994-03-18 1995-10-13 Japan Radio Co Ltd ディザ変調方法及び回路、ディザテーブル用アドレス発生方法及び回路並びにこれらを用いたハードコピー回路
JP2000184197A (ja) * 1998-12-14 2000-06-30 Ricoh Co Ltd 画像処理装置
JP2006050299A (ja) * 2004-08-05 2006-02-16 Canon Inc ディザリング装置
JP2007013623A (ja) * 2005-06-30 2007-01-18 Brother Ind Ltd 画像処理装置および画像処理プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07262349A (ja) * 1994-03-18 1995-10-13 Japan Radio Co Ltd ディザ変調方法及び回路、ディザテーブル用アドレス発生方法及び回路並びにこれらを用いたハードコピー回路
JP2000184197A (ja) * 1998-12-14 2000-06-30 Ricoh Co Ltd 画像処理装置
JP2006050299A (ja) * 2004-08-05 2006-02-16 Canon Inc ディザリング装置
JP2007013623A (ja) * 2005-06-30 2007-01-18 Brother Ind Ltd 画像処理装置および画像処理プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11917115B1 (en) 2023-03-10 2024-02-27 Ricoh Company, Ltd. Shift compensation mechanism

Also Published As

Publication number Publication date
JP2010057036A (ja) 2010-03-11

Similar Documents

Publication Publication Date Title
KR101062107B1 (ko) 컴퓨터에서 프린터로 전송된 페이지-설명 코드를 포함하는 디지털 표현을 압축하기 위한 방법
JP6119280B2 (ja) ディザマトリクス生成方法、画像処理方法、画像処理装置およびプログラム
US7286266B2 (en) Printer and image processing device for the same
JP4650539B2 (ja) 画像処理装置および画像処理プログラム
JP4697316B2 (ja) 画像処理装置及び画像処理プログラム
JP4564986B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP4479663B2 (ja) 固定セルによるハーフトーン処理を行う画像処理装置,画像処理方法,及び画像処理プログラム
JP4075913B2 (ja) 画像処理装置および画像処理プログラム
US7369277B2 (en) Image processing apparatus, drawing processing method, and computer program
JP4720123B2 (ja) 印刷制御装置、印刷制御方法及び印刷制御プログラム
JP4067004B2 (ja) 画像形成システム、画像形成装置、及びコンピュータ読取可能なプログラム
JP4803063B2 (ja) 画像処理回路およびこれを搭載したプリンタコントローラ
JP2020015303A5 (ja)
JP3951953B2 (ja) 印刷装置、画像処理装置、印刷方法、画像処理方法及びプログラム
JP2006115369A (ja) 画像処理装置、画像処理方法、画像処理プログラムおよびそのプログラムを記録した記録媒体
JP2010118811A (ja) 印刷装置、ディザマトリクス生成方法
JP4454831B2 (ja) 画像形成装置、画像形成方法
JP5573706B2 (ja) 画像処理装置及び画像処理プログラム
JP4661704B2 (ja) 画像処理装置、画像形成装置およびプログラム
JP5691611B2 (ja) 画像処理装置及び画像処理プログラム
JP2020080039A (ja) インクジェット印刷システム
KR19990029606A (ko) 다계조 문자의 패턴을 생성하는 방법과 장치 및, 기록 매체
JP2006340128A (ja) 画像処理装置、画像処理方法、画像処理プログラムおよびそのプログラムを記録した記録媒体
JP2008205705A (ja) 画像処理装置及び画像処理方法
JP2010130374A (ja) 画像形成装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100819

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100914

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101027

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: 20101116

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: 20101129

R150 Certificate of patent or registration of utility model

Ref document number: 4650539

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20131224

Year of fee payment: 3