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

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

Info

Publication number
JP5927984B2
JP5927984B2 JP2012042224A JP2012042224A JP5927984B2 JP 5927984 B2 JP5927984 B2 JP 5927984B2 JP 2012042224 A JP2012042224 A JP 2012042224A JP 2012042224 A JP2012042224 A JP 2012042224A JP 5927984 B2 JP5927984 B2 JP 5927984B2
Authority
JP
Japan
Prior art keywords
pixel
image
pattern
specific
dot
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
JP2012042224A
Other languages
English (en)
Other versions
JP2013179474A (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 JP2012042224A priority Critical patent/JP5927984B2/ja
Priority to US13/763,983 priority patent/US8855445B2/en
Publication of JP2013179474A publication Critical patent/JP2013179474A/ja
Application granted granted Critical
Publication of JP5927984B2 publication Critical patent/JP5927984B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)

Description

本発明は、拡大処理を含む画像処理に関する。
画像処理装置は、元画像を表す元画像データを用いて、元画像の大きさを拡大する拡大処理を実行して、拡大画像データを生成することがある。例えば、印刷を行う際に、当該拡大処理を実行すれば、元画像が比較的小さい場合であっても、比較的大きな印刷画像を印刷することができる。
特開平8−258255号公報 特開2003−319182号公報
しかしながら、拡大処理を行うと、拡大画像において、エッジの見栄えが損なわれる場合があった。例えば、元画像を横方向に2倍に拡大した拡大画像では、元画像における横方向の1画素分の段差が、2画素分の段差になるので、当該段差を含むエッジは、がたつきが目立つ場合があった。
本発明の主な利点は、拡大処理後の拡大画像におけるエッジの見栄えを向上することである。
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。
[適用例1]第1種の画素と第2種の画素を含む元画像を表す元画像データであって、前記第1種の画素の色と前記第2種の画素の色との色差は特定基準値以上である、前記元画像データを取得する取得部と、元画像データに対して拡大処理を実行して、前記元画像を第1の方向に拡大した拡大画像を表す拡大画像データを生成する拡大処理部と、を備え、前記拡大処理部は、前記元画像内に前記第1種の画素と前記第2種の画素とによって構成される特定パターンが含まれる場合に、前記拡大画像内の前記第1の方向と交差する第2の方向に延びる画素群を選択する画素群選択部であって、前記拡大画像内の前記画素群は、前記元画像内の特定画素に対応する対応特定画素と、前記対応特定画素の前記第2の方向に位置する画素と、を含み、前記元画像内の前記特定画素は、前記特定パターンを構成する特定の前記第1種の画素に対応する画素であり、前記拡大画像内の前記画素群を構成する画素の数は、第1の連続数と第2の連続数とに応じた数であり、前記第1の連続数は、前記元画像において前記特定画素から前記第2の方向に向かって第1のパターンが連続する数であり、前記第2の連続数は、前記元画像において前記特定画素から前記第2の方向の反対方向に向かって第2のパターンが連続する数である、前記画素群選択部と、前記拡大画像内の前記画素群を構成する画素を、前記第2種の画素に設定する設定部と、を備える、画像処理装置。
上記構成によれば、元画像の特定パターンを構成する第1種の画素である特定画素に対応する画素を含む拡大画像の画素群を選択し、選択された画素群を第2種の画素に設定する。画素群を構成する画素の数は、第1の連続数と第2の連続数とに応じた数である。この結果、元画像の特定パターンの周囲の画像を考慮して、特定パターンに対応する拡大画像のエッジの見栄えを向上することができる。
[適用例2]適用例1に記載の画像処理装置であって、前記第1のパターンは、前記第1種の画素である第1の中央画素と、前記第1の中央画素に対して前記第1の方向に隣接する前記第1種の画素である第1隣接画素と、前記第1の中央画素に対して前記第1の方向の反対方向に隣接する前記第2種の画素である第2隣接画素と、を含むパターンであり、前記第2のパターンは、前記第2種の画素である第2の中央画素と、前記第2の中央画素に対して前記第1の方向に隣接する前記第1種の画素である第3隣接画素と、を含むパターンであり、前記第1の中央画素の前記第1の方向の位置と、前記第2の中央画素の前記第1の方向の位置とは、前記元画像内の前記特定画素の前記第1の方向の位置と同じである、画像処理装置。
上記構成によれば、画素群を構成する画素の数を適切に定めることができる。
[適用例3]適用例1または適用例2に記載の画像処理装置であって、前記第1のパターンは、前記特定パターンの一部である第1部分パターンであり、前記第2のパターンは、前記特定パターンの一部であり、前記第1部分パターンと異なる第2部分パターンである、画像処理装置。
上記構成によれば、見栄えを向上するべきエッジを適切に選んで、当該エッジの見栄えを向上することができる。
[適用例4]適用例1ないし適用例3のいずれかに記載の画像処理装置であって、前記特定パターンは、前記特定画素に対して前記第2の方向に隣接する第1部分パターンと、前記特定画素に対して前記第2の方向の反対方向に隣接する第2部分パターンと、を含み、前記第1部分パターンは、前記特定画素に対して前記第2の方向に隣接する中央画素と、前記中央画素に対して前記第1の方向に隣接する前記第1種の画素である第1周辺画素と、前記中央画素に対して前記第1の方向の反対方向に隣接する前記第2種の画素である第2周辺画素と、を含むパターンであり、前記第2部分パターンは、前記特定画素に対して前記第2の方向の反対方向に隣接する前記第2種の画素である第3周辺画素と、前記第3周辺画素に対して前記第1の方向に隣接する前記第1種の画素である第4周辺画素と、を含むパターンである、画像処理装置。
上記構成によれば、見栄えを向上するべきエッジを適切に選んで、当該エッジの見栄えを向上することができる。
[適用例5]適用例1ないし適用例4のいずれかに記載の画像処理装置であって、前記拡大処理部は、前記第1の連続数が前記第2の連続数より多い場合には、前記画素群を構成する画素の数を、前記第2の連続数を用いて決定し、前記第1の連続数が前記第2の連続数より小さい場合には、前記画素群を構成する画素の数を、前記第1の連続数を用いて決定する決定部を備える、画像処理装置。
上記構成によれば、画素群を構成する画素の数を適切に決定することができる。
[適用例6]適用例1ないし適用例5のいずれかに記載の画像処理装置であって、前記拡大処理部は、前記元画像を構成する複数の画素の中から順次に対象画素を選択する対象画素選択部を備え、前記拡大処理部は、前記対象画素が選択される度に、第1処理と第2処理とを含む複数の処理のうちのいずれかを実行することによって、前記拡大画像データを生成し、前記第1処理は、前記対象画素が前記特定画素を含む場合に実行される処理であって、前記画素群選択部による前記画素群の選択と、前記設定部による前記画素群を構成する画素の設定と、を含む処理であり、前記第2処理は、前記対象画素が前記特定画素を含まない場合に実行される処理であって、前記画素群選択部による前記画素群の選択と、前記設定部による前記画素群を構成する画素の設定と、を含まない処理である、画像処理装置。
上記構成によれば、エッジの見栄えを向上できる拡大画像データを容易に作成することができる。
[適用例7]適用例1ないし適用例6のいずれかに記載の画像処理装置であって、前記拡大処理部は、歪みのない前記元画像に対して前記拡大処理を実行して、歪みのある前記拡大画像を表す前記拡大画像データを生成し、前記画像処理装置は、ドット画像を印刷する印刷実行部のための装置であり、前記画像処理装置は、さらに、前記拡大処理部によって生成された歪みのある前記拡大画像を表す前記拡大画像データに対して、画素毎にドットの形成状態を表すドットデータを生成するハーフトーン処理を実行して、歪みのある歪ドット画像を表す歪ドットデータを生成するハーフトーン処理部と、前記歪ドットデータに対して前記拡大処理とは異なる処理を実行して、前記歪ドット画像を少なくとも前記第2の方向に拡大した歪みのない無歪ドット画像を表す無歪ドットデータを生成するドット画像拡大部と、を備える、画像処理装置。
上記構成によれば、無歪ドット画像を印刷するためのハーフトーン処理の処理量を低減できるとともに、印刷された無歪ドット画像において、エッジの見栄えを向上することができる。
[適用例8]適用例7に記載の画像処理装置であって、前記無歪ドット画像は、同一行の組を複数個含み、前記同一行の組は、前記無歪ドット画像を構成する前記第1の方向に沿った複数の行のうち、互いに隣接するとともに、各構成画素のドットの形成状態が互いに同一である2以上の行を含む組であり、前記無歪ドットデータは、前記同一行の組を表す圧縮データを含み、前記圧縮データは、1つの代表行を表す代表行データと、前記代表行データが繰り返されることを示すデータと、を含む、画像処理装置。
上記構成によれば、無歪ドットデータのデータ量を低減することができる。
[適用例9]適用例1ないし適用例8のいずれかに記載の画像処理装置であって、前記拡大処理部は、前記元画像において前記特定パターンを検出する検出部を備え、前記拡大処理部は、検出された前記特定パターンについて、前記画素群選択部による前記画素群の選択と、前記設定部による前記画素群を構成する画素の設定と、を実行する、画像処理装置。
[適用例10]適用例1ないし適用例8のいずれかに記載の画像処理装置であって、前記拡大処理部は、前記拡大画像において、前記元画像の前記特定パターンに対応する対応特定パターンを検出する検出部を備え、前記拡大処理部は、検出された前記対応特定パターンについて、前記画素群選択部による前記画素群の選択と、前記設定部による前記画素群を構成する画素の設定と、を実行する、画像処理装置。
本発明は、種々の形態で実現することが可能であり、例えば、上記装置の機能を実現する方法、上記装置の機能を実現するコンピュータプログラム、当該コンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
実施例の計算装置100と印刷装置200のブロック図。 画像処理のフローチャート。 画像処理を説明する概念図。 圧縮処理のフローチャート。 圧縮ドットデータ300を概念的に示す図。 ディザマトリクスDM1を示す図。 ディザマトリクスDM1のスクリーン角度について説明する図。 無歪ドット画像GD2に表れるスクリーン角度を説明する図。 横方向拡大処理(図2:S600)のフローチャート。 実施例の横方向拡大処理における特定パターンとカウント用パターンについて説明する図。 エッジ補完処理のフローチャート。 エッジ補完処理について説明する図。 拡大画像における補完画素の配置例を示す図。 拡大画像における補完画素の配置例を示す図。 実施例の印刷画像のエッジと比較例の印刷画像のエッジを示す図。 縦方向拡大処理における特定パターンとカウント用パターンについて説明する図。 変形例における横方向拡大処理のフローチャート。 変形例の横方向拡大処理における特定パターンとカウント用パターンについて説明する図。
A.実施例:
A−1:計算装置100と印刷装置200の構成
本発明の実施の形態を実施例に基づき説明する。図1は、実施例の画像処理装置としての計算装置100と、印刷装置200のブロック図である。
計算装置100は、印刷装置200と通信可能に接続されたコンピュータ(例えば、パーソナルコンピュータ)である。計算装置100は、CPU110と、ROMやRAMなどの内部記憶装置120と、ハードディスクなどの外部記憶装置130と、キーボードやマウスなどの操作部170と、液晶ディスプレイなどの表示部180と、外部装置(例えば、印刷装置200)との通信のためのインタフェースを含む通信部190とを備えている。
外部記憶装置130は、本実施例の画像処理プログラムとしてのドライバプログラム132と、図示しないアプリケーションプログラムによって作成された画像データ134とを格納している。
CPU110は、ドライバプログラム132を実行することによって、プリンタドライバM10の機能を実現する。プリンタドライバM10は、画像データ取得部M12と、拡大処理部M14と、ハーフトーン処理部M16と、ドット画像拡大部M18と、圧縮部M19とを備え、本実施例の画像処理(後述)を実行する。拡大処理部M14は、対象画素選択部M141と、パターン検出部M142と、連続数決定部M143と、画素群選択部M144と、画素データ設定部M145とを備える。
印刷装置200は、集積回路210と、プリンタエンジン250と、各種のボタンやタッチパネルなどの操作部270と、液晶パネルなどの表示部280と、外部機器(例えば、計算装置100)との通信のためのインタフェースを含む通信部290と、を備えている。
集積回路210は、例えば、ASIC(Application Specific Integrated Circuit)であり、制御回路212と、DRAMなどの揮発性メモリ214と、マスクROMやEEPROMなどの不揮発性メモリ216を含んでいる。揮発性メモリ214は、制御回路212が用いるバッファ領域を提供する。不揮発性メモリ216は、制御回路212が参照する制御データ、プログラムなどを格納している。制御回路212は、印刷装置200の全体を制御する装置制御部M20として機能する。なお、揮発性メモリ214や不揮発性メモリ216の全部または一部は、集積回路210の外部に設けられていても良い。
プリンタエンジン250は、装置制御部M20(集積回路210)の制御および装置制御部M20から供給される印刷データに従って、印刷を行う機構部である。プリンタエンジン250は、例えば、印刷材として黒色のトナーを用いて印刷媒体にドット画像を印刷するモノクロレーザープリンタとしての機能を実現する。すなわち、プリンタエンジン250は、レーザを用いて感光体を露光する露光工程と、露光によって感光体に形成された静電潜像にトナーを感光体に付着させる現像工程と、現像されたトナー像を感光体から印刷媒体に転写する転写工程と、転写されたトナー像を印刷媒体に定着させる定着工程と、を実現する。装置制御部M20とプリンタエンジン250との全体は、印刷実行部の例である。
プリンタドライバM10の機能を実現するドライバプログラム132や、装置制御部M20の機能を実現するプログラムは、コンピュータ読み取り可能な記録媒体に格納された形で提供され得る。
A−2:プリンタドライバM10の画像処理:
図2は、計算装置100のプリンタドライバM10によって実行される画像処理のフローチャートである。この画像処理は、画像データ134を用いて印刷装置200に供給する印刷データを生成する処理である。プリンタドライバM10は、例えば、ユーザの印刷指示に応じて、画像処理を開始する。
ステップS100では、プリンタドライバM10の画像データ取得部M12は、処理対象の画像データ(対象画像データ)を取得する。対象画像データは、例えば、上述した画像データ134(図1)であり、当該画像データ134を作成したアプリケーションプログラムから取得される。対象画像データは、当該画像データを作成したアプリケーションプログラムごとに異なるデータ形式を有している。
ステップS200では、画像データ取得部M12は、対象画像データを、RGB画素データで構成されたビットマップデータ(RGB画像データ)に変換するラスタライズ処理を実行する。RGB画素データは、RGBの各色成分の階調値(例えば、256階調)を含む。
ステップS300では、画像データ取得部M12は、RGB画像データを、黒(K)成分の濃度を表す単色画素データで構成されたビットマップデータ(単色画像データ)に変換する(モノクロ変換処理)。本実施例では、単色画素データは、0〜255の範囲の階調値であり、階調値「0」は白を表し、階調値「255」は黒を表し、中間階調値は階調数が大きいほど濃度が高いグレーを表す。具体的には、画像データ取得部M12は、例えば、RGB画素データの輝度値Yを算出する。画像データ取得部M12は、輝度値Yを、ルックアップテーブルを用いて単色画素データに変換する。
ステップS400では、画像データ取得部M12は、生成された単色画像データが表す単色画像が縦長の画像(ポートレイト)であるか否か、すなわち、縦方向の画素数に対する横方向の画素数比Sが1より小さい画像であるか否かを判断する。画像データ取得部M12は、単色画像が縦長の画像でない、すなわち、横長の画像(ランドスケープ)であると判断した場合には(ステップS400:NO)、単色画像を90度回転する回転処理を実行して、縦長の単色画像を表す単色画像データを生成する(ステップS500)。画像データ取得部M12は、単色画像が縦長の画像であると判断した場合には(ステップS400:YES)、ステップS600に処理を進める。
図3は、画像処理を説明する概念図である。図3(A)には、単色画像データによって表される単色画像PG1(90度回転処理が行われる場合には、回転処理後の単色画像PG1)が示されている。本実施例の単色画像PG1の大きさ(画素数)は、縦3407画素×横2380画素である。単色画像PG1の画素数比Sは、約0.70である。画素数比Sは、縦方向の画素数に対する横方向の画素数の比である。
ステップS600では、プリンタドライバM10の拡大処理部M14は、単色画像データに対して、単色画像PG1の横方向の大きさを2倍に拡大する(横方向の画素数を2倍に増やす)横方向拡大処理を実行する。横方向拡大処理によって、拡大単色画像PG2を表す拡大単色画像データが生成される。図3(B)には、拡大単色画像PG2が示されている。横方向拡大処理の具体的な処理内容については後述する。
拡大単色画像PG2の横方向の画素数は、単色画像PG1の横方向の画素数の2倍になり、図3(B)の例では、4760画素になる。拡大単色画像PG2の縦方向の画素数は、3407画素であり、単色画像PG1の縦方向の画素数と同じである。すなわち、拡大単色画像PG2の画素数比S2は、単色画像PG1の画素数比Sの2倍、図3(B)の例では、約1.40になる。ここで、図3(A)(B)に示すように、拡大単色画像PG2は、歪みのない単色画像PG1を歪ませた歪みのある画像となる。以下では、単色画像PG1を無歪画像PG1とも呼び、拡大単色画像PG2を歪画像PG2とも呼ぶ。また、無歪画像PG1を表す単色画像データを無歪画像データとも呼び、歪画像PG2を表す拡大単色画像データを歪画像データとも呼ぶ。
ステップS700では、プリンタドライバM10のハーフトーン処理部M16は、取得された歪画像データに対してハーフトーン処理を実行する。ハーフトーン処理は、ディザマトリクスDM1(図5:後述)を用いて、画素毎にドットの形成状態を表すドットデータを生成する処理である。具体的には、ドットデータを構成する各画素データは、対応する画素がドットを形成することを表す「1」と、対応する画素がドットを形成しないことを表す「0」と、のいずれかの値を取る二値データである。本ステップのハーフトーン処理によって、歪画像PG2(図3(B))に対応する歪みのある歪ドット画像GD1を表す歪ドットデータが生成される。図3(C)には、歪ドット画像GD1の一例が示されている。歪ドット画像GD1の縦方向の画素数および横方向の画素数は、歪画像PG2の縦方向の画素数および横方向の画素数と同じである。したがって、歪ドット画像GD1の画素数比も、歪画像PG2の画素数比S2と同じである。
ステップS800では、プリンタドライバM10のドット画像拡大部M18は、歪ドットデータに対してドット画像拡大処理を実行して、歪のない無歪ドット画像GD2を表す無歪ドットデータを生成する。図3(D)には、無歪ドット画像GD2の一例が示されている。
具体的には、ドット画像拡大部M18は、歪ドットデータを構成するn番目の行データと、(n+1)番目の行データとの間に、n番目の行データのコピーデータを挿入することによって、無歪ドットデータを生成する。したがって、無歪ドットデータにおいて、奇数行データと、当該奇数行データの次の偶数行データとは、同一のデータになる。したがって、図3(C)(D)に示すように、無歪ドットデータが表す無歪ドット画像GD2の(2n−1)番目の行の各画素PX2を表す各画素データと2n番目の行の各画素PX2を表す各画素データは、同じデータ(歪ドット画像GD1のn番目の行の各画素PX2を表す各画素データ)となる。また、無歪ドットデータが表す無歪ドット画像GD2の(2n+1)番目の行の各画素PX2を表す各画素データと(2n+2)番目の行の各画素PX2を表す各画素データは、同じデータ(歪ドット画像GD1の(n+1)番目の行の各画素PX2を表す各画素データ)となる。
無歪ドット画像GD2の縦方向の画素数は、歪ドット画像GD1および無歪画像PG1および歪画像PG2の縦方向の画素数の2倍である(例えば、6814画素)。無歪ドット画像GD2の横方向の画素数は、歪ドット画像GD1および歪画像PG2の横方向の画素数と同じであり、無歪画像PG1の横方向の画素数の2倍である(例えば、4760画素)。したがって、無歪ドット画像GD2の画素数比は、無歪画像PG1の画素数比Sと同じであり、歪画像PG2および歪ドット画像GD1の画素数比S2の1/2である。
ここで、無歪ドット画像GD2の(2n−1)番目の行と2n番目の行の組のように、無歪ドット画像を構成する複数の行のうち、互いに隣接するとともに、各構成画素のドットの形成状態(ドットデータを構成する画素データの画素値)が互いに同一である2以上の行の組を、同一行の組とも呼ぶ。また、無歪ドットデータに含まれる、同一行の組を表す行データの組を、同一行データの組とも呼ぶ。無歪ドット画像GD2の縦方向の画素数(行数)をNとすると、無歪ドット画像GD2は、(N/2)個の同一行の組を含む。
ステップS900では、プリンタドライバM10の圧縮部M19は、無歪ドットデータを圧縮する圧縮処理を実行して圧縮ドットデータ300を生成する。図4は、圧縮処理のフローチャートである。図5は、圧縮ドットデータ300を概念的に示す図である。
ステップS902では、圧縮部M19は、処理対象である無歪ドットデータが表す無歪ドット画像GD2を構成する行を順次に(具体的には、図3(D)の上から順に)処理対象行として選択する。ステップS904では、圧縮部M19は、処理対象行の行データ(処理対象行データ)が、前回の処理対象行データと同一か否かを判断する。この例では、奇数番目の行が処理対象行である場合には、処理対象行データと、前回の処理対象行データとは同一ではない。一方、偶数番目の行が処理対象行である場合には、処理対象行データと、前回の処理対象行データとは同一である。
圧縮部M19は、処理対象行データが、前回の処理対象行データと同一でないと判断すると(ステップS904:NO)、「OFF」の参照フラグを表す参照フラグデータを生成する(ステップS906)。ステップS908では、圧縮部M19は、圧縮行データと、圧縮行データのデータ量を表すデータ量データを生成する。圧縮部M19は、処理対象行データを、ランレングス圧縮によって圧縮して、圧縮行データを生成する。
圧縮部M19は、処理対象行データが、前回の処理対象行データと同一であると判断すると(ステップS904:YES)、「ON」の参照フラグを表す参照フラグデータを生成する(ステップS910)。
ステップS912では、圧縮部M19は、処理対象である無歪ドットデータが表す無歪ドット画像GD2を構成する全ての行を処理対象行として選択したか否かを判断する。圧縮部M19は、全ての行が処理対象行として選択されていない場合には(ステップS912:NO)、ステップS902に戻って、未選択の行を新たな処理選択行として、ステップS904〜S910の処理を繰り返す。圧縮部M19は、全ての行が処理対象行として選択されている場合には(ステップS912:YES)、圧縮処理を終了する。
図5に示すように、圧縮処理によって生成される圧縮ドットデータ300は、無歪ドット画像GD2の各行を表すデータを含む。奇数行を表すデータ(例えば、図5:1行目および3行目のデータ)は、「OFF」の参照フラグデータ310Aと、データ量データ320と、圧縮行データ330とを含む。偶数行を表すデータ(例えば、図5:2行目および4行目のデータ)は、「ON」の参照フラグデータ310Bを含む。「OFF」の参照フラグデータ310Aは、その後に、データ量データ320と、データ量データ320が表すデータ量の圧縮行データ330とが続くことを示すフラグである。「ON」の参照フラグデータ310Bは、直前の圧縮行データ330で表される行が繰り返されることを示すデータである。このように、同一のデータによって表される行が繰り返されるときには、繰り返される行のうち、2番目以降の行を表す行データを、直前の行データを参照することを示す情報(「ON」の参照フラグデータ310B)に置き換えることによって、ドットデータを圧縮する。この圧縮処理を「前参照圧縮処理」とも呼ぶ。
以上の説明から解るように、奇数行を表すデータ310A、320、330と、当該奇数行の次の偶数行を表すデータ310Bとの組は、上述した同一行の組を表す圧縮データであり、上述した同一行データの組を圧縮した圧縮データである。同一行の組を表す圧縮データは、1つの代表行を表す代表行データ(この例では、奇数行を表すデータ310A、320、330)と、代表行データが繰り返されることを表すデータ(この例では、偶数行を表すデータ310B)との組を含むデータであると言うことができる。
図2のステップS1000では、プリンタドライバM10は、生成された圧縮ドットデータ300に、各種のプリンタ制御コードや、データ識別コードを付加して、印刷装置200の装置制御部M20(図1)が解釈可能な印刷データを生成する。ステップS1100では、プリンタドライバM10は、生成された印刷データを、印刷装置200に対して送信して、処理を終了する。
印刷データを受信した印刷装置200の装置制御部M20(集積回路210)は、印刷データを揮発性メモリ214に格納する。装置制御部M20は、印刷データに含まれる圧縮ドットデータ300を所定量ずつ(例えば、特定行数分ずつ)復元しながら順次にプリンタエンジン250に供給することによって、無歪ドット画像GD2を印刷する。
A−3.ディザマトリクスDM1:
図6は、ディザマトリクスDM1を示す図である。ディザマトリクスDM1は、歪ドット画像GD1の各画素(図3(C))に対応する升PM1を縦8行×横16列(計128個)に並べて構成されている。ディザマトリクスDM1は、縦2個×横4個=8個のサブマトリクスCE1を含み、各サブマトリクスは、それぞれ縦4行×横4列の16個の升PM1を含んでいる。各升PM1には、閾値TH1が規定されている。図6の各升PM1の内部に示した番号は、各升PM1に設定されている閾値TH1を示している。この例では、128個の閾値TH1は、入力される階調値の取り得る範囲(例えば、0〜255)の全体に略均等に分布するように設定されている。この結果、このディザマトリクスDM1を用いて生成された歪ドットデータが表す歪ドット画像GD1は、縦8画素×横16画素の範囲で、128階調を表現することができる。
図7は、ディザマトリクスDM1のスクリーン角度について説明する図である。図7の模式図は、ディザマトリクスDM1の升PM1のうち、閾値TH1が112以下である升PM1に対応する領域にハッチングを付し、閾値TH1が112より大きい升PM1に対応する領域を白色とした図である。また、この図7は、ディザマトリクスDM1を用いて生成された歪ドットデータが表す歪ドット画像GD1に表れる部分歪ドット画像PGD1を示しているとも言える。すなわち、部分歪ドット画像PGD1は、階調値が122である単色画素データで構成された一定濃度の画像領域に対して、ハーフトーン処理を行ったドットデータに対応している。
図7に示す部分歪ドット画像PGD1から解るように、歪ドット画像GD1には、ディザマトリクスDM1におけるサブマトリクスCE1に対応するドットの集合DT1が表れる。図7に示す実線DL1から解るように、歪ドット画像GD1には、複数のドットDT1が繋がってできる複数のドットラインが表れる。このドットラインの角度は、ディザマトリクスDM1のスクリーン角度を表している。一般的に、スクリーン角度φは、反時計回りに、3時の方向(図6の右方向)からドットラインまでの角度で表される。この例では、スクリーン角度φは、約26.56度である。ドットラインは、スクリーン角度の方向に沿って、複数のドットによって形成されるラインである。
図8は、印刷される無歪ドット画像GD2に表れるスクリーン角度を説明する図である。図8は、図7に示す部分歪ドット画像PGD1に対応する無歪ドット画像GD2の領域(部分無歪ドット画像PGD2とも呼ぶ)を示している。
図8に示す部分無歪ドット画像PGD2から解るように、無歪ドット画像GD2に表れるドットの集合DT2は、歪ドット画像GD1に表れる対応するドットの集合DT1(図7)を縦方向に2倍に拡大した形状になる。図8に示す実線DL2から解るように、無歪ドット画像GD2には、複数のドットが繋がってできる複数のドットラインが表れる。このドットラインの角度、すなわち、印刷される無歪ドット画像GD2に表れるスクリーン角度をθとする。この例では、スクリーン角度θは、約45度である。
ところで、ディザマトリクスDM1のスクリーン角度φ(歪ドット画像GD1に表れるスクリーン角度)の正接(tanφ)は、TL1/YL1である。ここで、TL1は、歪ドット画像GD1の複数のドットラインの横方向の周期(図7の例では、4画素(4升)分の長さ)である。YL1は、歪ドット画像GD1の複数のドットラインの横方向の周期(図7の例では、8画素(8升)分の長さ)である。そして、無歪ドット画像GD2に表れるスクリーン角度θの正接(tanθ)=TL2/YL2である。ここで、TL2は、無歪ドット画像GD2の複数のドットラインの横方向の周期(図8の例では、8画素(8升)分の長さ)である。YL2は、無歪ドット画像GD2の複数のドットラインの横方向の周期(図8の例では、8画素(8升)分の長さ)である。そして、TL2=2×TL1であり、YL1=YL2であるから、tanφ=(tanθ)/2である。従って、ディザマトリクスDM1のスクリーン角度φは、約arctan((tanθ)/2)に設定されている、と言うことができる。
歪ドット画像GD1の複数のドットラインのライン間隔Lは、cosφ×TL1で表される。また、無歪ドット画像GD2の複数のドットラインのライン間隔Dは、cosθ×TL2で表される。したがって、歪ドット画像GD1の複数のドットラインのライン間隔Lは、L=(1/2)×D×cosφ/cosθに設定されている、と言うことができる。ここで、上述の通り、φ=arctan((tanθ)/2)である。本実施例では、ディザマトリクスDM1の1つの升PM1に対応するドット画像の画素を単位として、歪ドット画像GD1のライン間隔L=約3.16画素、無歪ドット画像GD2のライン間隔D=約5.66画素である。
印刷される無歪ドット画像GD2に表れるスクリーン角度θや、無歪ドット画像GD2の複数のドットラインのライン間隔Dに基づいて定まる線数(単位はLpi(line per inch))は、公知のスクリーンゲージを用いて、印刷された無歪ドット画像GD2を測定することによって、容易に認識することができる。
A−4.横方向拡大処理:
図9は、横方向拡大処理(図2:S600)のフローチャートである。上述したように、横方向拡大処理は、無歪画像PG1を表す無歪画像データに対して実行される処理である。横方向拡大処理の結果、無歪画像PG1の横方向の大きさを2倍に拡大した(横方向の画素数を2倍に増やした)歪画像PG2を表す歪画像データが生成される。横方向処理の説明では、無歪画像PG1を元画像とも呼び、無歪画像データを元画像データとも呼ぶ。また、歪画像PG2を拡大画像とも呼び、歪画像データを拡大画像データとも呼ぶ。この横方向拡大処理は、単純に、元画像の横方向の大きさを2倍に拡大するだけでなく、拡大画像のエッジの見栄えを向上するために、拡大画像に補完画素を追加する処理(エッジ補完処理)を含んでいる。
ステップS605では、拡大処理部M14の対象画素選択部M141は、元画像(無歪画像PG1)を構成する画素の中から処理対象とする対象画素SPを順次に1つずつ選択する。具体的には、本処理では、図3(A)に示す無歪画像PG1の上端の行(左右方向の画素行)から順に、下方に向かって処理対象とする。同じ行の中では、左端の画素から、右に向かって順次に処理対象とする。
ステップS610では、拡大処理部M14は、対象画素SPの画素値(画素データ)を用いて、対象画素SPは白画素であるか否かを判断する。上述したように、無歪画像PGAを構成する画素の画素値(単色画素データ)は、階調数が大きいほど濃度が高い(黒に近い)無彩色を表す。ここで、白画素は、例えば、画素値が、0または比較的0に近い値の画素値を有する画素、具体的には、画素値が白画素判定用基準値(例えば、5)以下の画素である。すなわち、白画素は、例えば、画素値が、0〜5のいずれかである画素である。なお、後述する黒画素は、例えば、画素値が、255または比較的255に近い値の画素値を有する画素、具体的には、画素値が黒画素判定用基準値(例えば、250)以上の画素である。すなわち、黒画素は、例えば、画素値が、250〜255のいずれかである画素である。なお、黒画素および白画素を除く画素(例えば、画素値が6以上249以下である画素)を灰色画素とも呼ぶ。
対象画素SPが白画素でないと判断すると(ステップS610:NO)、拡大処理部M14は、対象画素SPに対応する拡大画像内の画素(対応対象画素)TPは未設定であるか否かを判断する。元画像の対象画素SPの座標を(Xa、Ya)とすると、拡大画像の対応対象画素TPの座標は、(2Xa、Ya)と(2Xa+1、Ya)である。なお、元画像(無歪画像PG1(図3(A))の座標と、拡大画像(歪画像PG2(図3(B))の座標は、ともに、画像の左上を原点(0、0)とし、右方向をX軸の正方向、下方向をY軸の正方向とした座標(単位は画素)を用いる。
拡大処理部M14は、対応対象画素TPが未設定でない(設定済みである)と判断すると(ステップS615:NO)、ステップS635に処理を進める。拡大処理部M14は、対応対象画素TPが未設定であると判断すると(ステップS615:YES)、未設定である2つの対応対象画素TPの画素値を、それぞれ対象画素SPの画素値と同じ値に設定する(対応対象画素TPの画素データを生成する)。
上述したステップS610にて、拡大処理部M14は、対象画素SPが白画素であると判断すると(ステップS610:YES)、拡大処理部M14のパターン検出部M142は、元画像において、対象画素SPとその周辺画素とは、後述する4種類の特定パターン1〜4のいずれかを形成するか否かを判断する(ステップS625)。
図10は、本実施例の横方向拡大処理における特定パターンとカウント用パターンについて説明する図である。図10に示すように、4種類の特定パターン1〜4は、それぞれ縦3×横3の計9個の画素で構成される。
特定パターン1は、横方向に並んだ3つの画素で構成される中央部分パターンMP1と、中央部分パターンMP1の上方向に隣接する上部分パターンUP1と、中央部分パターンMP1の下方向に隣接する下部分パターンBP1とを含む。
中央部分パターンMP1は、白画素である中央画素と、この中央画素に対して右方向に隣接する白画素である右隣接画素と、この中央画素に対して左方向に隣接する黒画素である左隣接画素とを含む。上部分パターンUP1は、中央部分パターンMP1と同じく、白画素である中央画素と、この中央画素に対して右方向に隣接する白画素である右隣接画素と、この中央画素に対して左方向に隣接する黒画素である左隣接画素とを含む。下部分パターンBP1は、黒画素である中央画素と、この中央画素に対して右方向に隣接する白画素である右隣接画素とを含む。なお、下部分パターンBP1において、中央画素に対して左方向に隣接する画素(図10:「any」の文字が記された画素)は任意の画素(白画素または黒画素または灰色画素のいずれか)であって良い。
中央部分パターンMP1における中央画素(図10においてバツ印が付された白画素)を、特定パターン1の中心画素とも呼ぶ。パターン検出部M142は、対象画素SPを中心画素として、対象画素SPとその周辺画素が特定パターンに該当するか否かを判断する。なお、図10において、クロスハッチングされた画素は、黒画素を表し、ハッチングがされていない画素およびバツ印が付された画素(中心画素)は、白画素を表す。
特定パターン2、3、4は、それぞれ、中心画素を含む中央部分パターンMP2、MP3、MP4と、中央部分パターンMP2、MP3、MP4の上方向に隣接する上部分パターンUP2、UP3、UP4と、中央部分パターンMP2、MP3、MP4の下方向に隣接する下部分パターンBP2、BP3、BP4と、を含む。図10に示すように、特定パターン2は、特定パターン1を上下に反転したパターンであり、特定パターン3は、特定パターン1を左右に反転したパターンであり、特定パターン4は、特定パターン3を上下に反転したパターンである。
対象画素SPとその周辺画素が、特定パターン1〜4のいずれかを形成しない場合には(ステップS625:NO)、拡大処理部M14の画素データ設定部M145は、上述したステップS615、620の処理を行う。すなわち、画素データ設定部M145は、対象画素SPに対応する対応対象画素TPが未設定であれば、対応対象画素TPの画素値を、対象画素SPの画素値と同じ値に設定して、ステップS635に処理を進める。
対象画素SPとその周辺画素が、特定パターン1〜4のいずれかを形成する場合には(ステップS625:YES)、拡大処理部M14は、エッジ補完処理を実行する(ステップS630)。
図11は、エッジ補完処理のフローチャートである。ステップS6305では、連続数決定部M143は、対象画素SPとその周辺画素によって形成される特定パターンに応じて、連続数をカウントするためのカウント用パターンをそれぞれ設定する。図10には、特定パターン1〜4のそれぞれに対応するカウント用パターンが図示されている。カウント用パターンは、第1の連続数CLをカウントするための第1のパターンLCPと、第2の連続数CUをカウントするための第2のパターンUCPとを含んでいる。
第1のパターンLCPは、対応する特定パターンに含まれる3つの部分パターンのうち、中心画素に対して第1の連続数CLのカウント方向CD1(図10:後述)に隣接する部分パターンと同じパターンである。第2のパターンUCPは、対応する特定パターンに含まれる3つの部分パターンのうち、中心画素に対して第2の連続数CUのカウント方向CD2(図10:後述)に隣接する部分パターンと同じパターンである。例えば、図10に示すように、特定パターン1に対応する第1のパターンLCP1は、特定パターン1の上部分パターンUP1と同じであり、特定パターン1に対応する第2のパターンUCP1は、特定パターン1の下部分パターンBP1と同じである。特定パターン2に対応する第1のパターンLCP2は、特定パターン2の下部分パターンBP2と同じであり、特定パターン2に対応する第2のパターンUCP2は、特定パターン2の上部分パターンUP2と同じである。
より具体的には、特定パターン1に対応する第1のパターンLCP1は、特定パターン1の中心画素が位置する縦方向の画素列に位置する中央画素(白画素)と、この中央画素に対して右方向に隣接する右隣接画素(白画素)と、この中央画素に対して左方向に隣接する左隣接画素(黒画素)とを含む。すなわち、第1のパターンLCP1の中央画素(白画素)の左右方向の位置は、特定パターン1の中心画素の左右方向の位置と同じである。特定パターン1に対応する第2のパターンUCP1は、特定パターン1の中心画素が位置する縦方向の画素列に位置する中央画素(黒画素)と、この中央画素に対して右方向に隣接する右隣接画素(白画素)とを含む。すなわち、第2のパターンLCP2の中央画素(黒画素)の左右方向の位置は、特定パターン1の中心画素の左右方向の位置と同じである。なお、この第2のパターンUCP1において、中央画素に対して左方向に隣接する画素(図10:「any」の文字が記された画素)は任意の画素(白画素または黒画素または灰色画素のいずれか)であって良い。ここで、この例では、第1のパターンLCP1の画素数(3画素)と、第2のパターンLCP2の画素数(3画素)は、同じであるが、異なっていても良い。例えば、第2のパターンLCP2は、「any」の文字が記された画素を除いた2画素で構成されても良い。
ステップS6310では、連続数決定部M143は、カウント用パターン(第1のパターンLCPおよび第2のパターンUCP)を用いて、第1の連続数CLと第2の連続数CUとをカウントする。第1の連続数CLは、対象画素SPから、カウント方向CD1に向かって第1のパターンLCPが連続する数である。第2の連続数CUは、対象画素SPから、カウント方向CD2に向かって第2のパターンUCPが連続する数である。カウント方向CD1とカウント方向CD2との組み合わせは、4種類の特定パターンごとに、定められている。カウント方向CD1とカウント方向CD2とは互いに逆方向である。図10に示すように、特定パターン1の場合には、カウント方向CD1は、上向きであり、カウント方向CD2は、下向きである。特定パターン2の場合は、カウント方向CD1は、下向きであり、カウント方向CD2は、上向きである。
図12は、エッジ補完処理について説明する図である。図12(A)に示すように、対象画素SPを中心とする縦3画素×横3画素の領域ARが特定パターン2を形成している場合を例に説明する。この場合には、第1の連続数CL=3となり、第2の連続数CU=4である。
ステップS6315では、連続数決定部M143は、第1の連続数CLと第2の連続数CUの少なくとも一方は、1であるか否かを判断する。連続数決定部M143は、第1の連続数CLと第2の連続数CUの少なくとも一方が、1である場合には(ステップS6315:YES)、連続数決定部M143は、補完数SCを1に決定する。連続数決定部M143は、第1の連続数CLと第2の連続数CUの両方が、1でない場合には(ステップS6315:NO)、第1の連続数CLは、第2の連続数CUより大きいか否かを判断する(ステップS6325)。
連続数決定部M143は、第1の連続数CLが、第2の連続数CUより大きいと判断した場合には(ステップS6325:YES)、補完数SCを、(第2の連続数CU−1)個に決定する(ステップS6330)。連続数決定部M143は、第1の連続数CLが、第2の連続数CU以下であると判断した場合には(ステップS6325:NO)、補完数SCを、(第1の連続数CL/2(ただし、2で割り切れない場合は四捨五入によって整数値とする))に決定する(ステップS6335)。
図12(A)に示す例では、第1の連続数CL<第2の連続数CUである。この場合には、第1の連続数CL/2=3/2=1.5であるから、四捨五入されて、補完数SC=2に決定される。
補完数SCが決定されると、拡大処理部M14は、補完画素を含む画素の画素値を設定する(ステップS6340)。具体的には、拡大処理部M14の画素群選択部M144は、拡大画像において設定対象の画素群SCPを選択する。図12(B)には、画素群SCPの例が示されている。画素群SCPは、対象画素SP(座標(Xa、Ya))に対応する1組の対応対象画素TP(座標(2Xa、Ya)、(2Xa+1、Ya))を含む。さらに、補完数SCが2以上である場合には、画素群SCPは、一方の対応対象画素TP(座標(2Xa、Ya)から補完方向SDに連続する(SC−1)個の画素と、他方の対応対象画素TP(座標(2Xa+1、Ya)から補完方向SDに連続する(SC−1)個の画素とを含む。つまり、画素群SCPは、横方向に並ぶ2個の画素の組がSC個分、2×SC個の画素を含む。補完方向SDは、図10に示すように、4種類の特定パターンごとに、定められている。補完方向SDは、第1の連続数CLのカウント方向CD1と同じ方向であり、第2の連続数CUのカウント方向CD2の反対方向である。図12(B)の例では、補完数SC=2であり、画素群SCPは、座標(2Xa、Ya)、(2Xa+1、Ya)の画素の組と、座標(2Xa、Ya−1)、(2Xa+1、Ya−1)の画素の組と、を含む4つの画素を含む。
画素データ設定部M145は、選択された画素群SCPに含まれる横方向に並ぶ2個の画素の各組を、補完パターンSDPにそれぞれ設定する。補完パターンSDPは、4種類の特定パターンごとに、定められている(図10:SDP1〜SDP4)。この結果、図12に拡大画像において、画素群SCPに含まれる画素のうち、横方向に黒画素が隣接する画素群は、黒画素に設定される。また、拡大画像において、画素群SCPに含まれる画素のうち、横方向に白画素が隣接する画素群は、白画素に設定される。横方向に黒画素が隣接する画素群は、特定パターン1、2の場合には、画素群SCPのうち、X座標が2Xaである画素列の画素群であり、特定パターン3、4の場合には、画素群SCPのうち、X座標が(2Xa+1)である画素列の画素群である。ここで、黒画素に設定される画素は、例えば、その画素値が、255に設定されても良いし、その画素値が、元画像の対象画素SPの近傍の黒画素(例えば、右方向または左方向に隣接する黒画素)の画素値と同じ値に設定されても良い。また、白画素に設定される画素は、例えば、その画素値が0に設定されても良いし、その画素値が、元画像の対象画素SPの画素値と同じ値に設定されても良い。
図9に戻って説明を続ける。ステップS635では、拡大処理部M14は、元画像の全ての画素が対象画素SPとして選択済みであるか否かを判断する。拡大処理部M14は、未選択の画素があると判断すると(ステップS635:NO)、ステップS605に戻って、未選択の画素を新たな対象画素SPとして選択して、上述したステップS610〜S630の処理を繰り返す。拡大処理部M14は、全ての画素が選択済みであると判断すると(ステップS635:YES)、横方向拡大処理を終了する。
横方向拡大処理によって生成される拡大画像(歪画像PG2(図3(B)))は、単純拡大画像に、補完画素を付加した画像となる。ここで、単純拡大画像は、元画像を構成する縦方向に沿ったm番目の画素列と、(m+1)番目の画素列との間に、m番目の画素列と同じ画素列が配置された画像である。すなわち、単純拡大画像は、奇数番目の画素列と、当該画素列の次の偶数番目の画素列と、が同じになる。補完画素(上述のステップS6340(図11)で黒画素に設定される画素)を構成する画素群は、元画像において特定パターン1〜4を構成する9個の画素のうちの特定画素(特定パターンの中心に位置する白画素)に対応する拡大画像の画素(対応特定画素)を含み、縦方向に延びる補完数SC個の画素である。
図12(B)に示す拡大画像の例では、クロスハッチングされた画素は、単純拡大画像を構成する黒画素を示し、シングルハッチングされた画素は、補完画素である黒画素を示している。後述する図13に示す拡大画像の例でも同様とする。
図12(C)には、図12(B)に示す拡大画像(歪画像PG2)に対応する印刷画像(無歪ドット画像GD2)が示されている。図12(C)において、クロスハッチングされた画素は、拡大画像における単純拡大画像を構成する黒画素に対応するドット形成画素(画素値「1」の画素)を示す。また、シングルハッチングされた画素は、拡大画像における補完画素に対応するドット形成画素を示す。印刷画像は、図2を参照して説明したように、歪画像PG2を縦方向に2倍に拡大した画像であるので、印刷画像において、補完画素に対応するドット形成画素SCDの数は、拡大画像(図12(B))における補完画素の数の2倍になる。
以上説明した本実施例によれば、画素群選択部M144は、元画像において特定パターン1〜4(図10)のいずれかを構成する白画素である特定画素(本実施例では、各特定パターンを形成する9個の画素の中心に位置する画素)に対応する対応特定画素を含む拡大画像の画素群SCPを選択する(図12)。画素データ設定部M145は、2列の画素群SCPのうちの一列の画素群を黒画素に設定する、すなわち、画素群SCPに対応する領域に補完画素を配置する。黒画素に設定される画素の数(補完数SC)は、第1の連続数CLと第2の連続数CUとに応じた数である。この結果、元画像の特定パターンの特定画素から見て、上方向の画素と、下方向の画素の配置を考慮して、特定パターンに対応する拡大画像のエッジの見栄えを向上することができる。
より具体的には、例えば、特定パターン1は、図10に示す上部分パターンUP1と、中央部分パターンMP1と、下部分パターンBP1を含むパターンである。すなわち、特定パターン1は、黒画素によって形成される形状が、L字型となる(横方向に一画素分の段差がある形状)パターンである。他の特定パターン2〜3も同様である。
図13および図14は、拡大画像における補完画素の配置例を示す図である。図13(A)〜(F)および図14(A)、(B)のそれぞれにおいて、左側は、元画像の一部分の例を示し、右側は、左側の元画像の一部分に対応する拡大画像の一部分を示している。また、図13および図14に示す拡大画像における破線は、白画素と黒画素によって形成されるエッジの方向を大まかに示している。
これらの図から解るように、元画像における横方向に1画素分の段差が、単純拡大画像では、横方向に2画素分の段差になる。したがって、単純拡大画像では、斜め方向のエッジのがたつきが元画像と比較して大きくなる。この結果、単純拡大画像を用いて、最終的に印刷される無歪ドット画像GD2においても斜め方向のエッジのがたつきが目立ちやすくなる。
本実施例では、上述のように、L字型の特定パターンを検出して、補完画素の配置対象とするので、見栄えを向上するべきエッジを適切に選んで、当該エッジの見栄えを向上することができる。例えば、図13(A)〜(E)に示す例では、補完画素を配置するが、図13(F)に示す例では、補完画素を配置しない。この結果、補完画素を配置することによって、エッジの全体の形状(例えば、図13(F)の破線を参照)が損なわれる可能性がある箇所に、補完画素が配置されることを抑制することができる。なお、図13(A)〜(E)、図14(A)は、特定パターン2に対応する補完対象箇所の例を示し、図14(B)は、特定パターン2に対応する補完対象箇所(上側)と、特定パターン1に対応する補完対象箇所(下側)とが近接している例を示している。
さらに、連続数決定部M143は、特定パターン1〜4の部分パターンUP1、BP2、UP3、BP4と同じパターンである第1のパターンLCP1〜LCP4を用いて、第1の連続数CLをカウントする。連続数決定部M143は、特定パターン1〜4の部分パターンBP1、UP2、BP3、UP4と同じパターンである第2のパターンUCP1〜LCP4を用いて、第2の連続数CUをカウントする。この結果、補完数SCを定めるための第1の連続数CLと第2の連続数CUとを適切にカウントすることができる。
さらに、連続数決定部M143は、第1の連続数CLが第2の連続数CUより多い場合には、補完数SCを、第2の連続数CUを用いて、決定している(具体的には、SC=CU−1としている。図11:S6330)。
例えば、図13(A)は、第1の連続数CL=7、第2の連続数CU=4である補完対象箇所が、1つある例を示し、図14(B)は、第1の連続数CL=7、第2の連続数CU=4である補完対象箇所が、2つある例を示している。この例では、第2の連続数CUを用いて補完数SCが適切な数(3個)に定められることによって、破線で示す方向に延びるエッジの全体の形状を維持しつつ、エッジを滑らかにされている。また、図14(B)の例では、補完数SCが適切な数(上下3個ずつ)に定められることによって、図13に符号VPで示す画素が黒画素に設定されない。すなわち、上側の補完画素と下側の補完画素とが繋がってしまうことが抑制される。この結果、表現すべき段差が補完画素によって消失することなく、エッジを滑らかにすることができる。
さらに、連続数決定部M143は、第1の連続数CLが第2の連続数CU以下である場合には、補完数SCを、第1の連続数CLを用いて、決定している(具体的には、SC=CL/2としている。図11:S6335)。
例えば、図13(B)は、第1の連続数CL=4、第2の連続数CU=4である補完対象箇所の例を示し、図13(D)は、第1の連続数CL=2、第2の連続数CU=4である補完対象箇所がの例を示している。この例では、第1の連続数CLを用いて、補完数SCが適切な数(図13(B):2個、図13(D):1個)に定められることによって、破線で示す方向に延びるエッジの全体の形状を維持しつつ、エッジを滑らかにされている。
さらに、連続数決定部M143は、第1の連続数CLと第2の連続数CUとの少なくとも一方が1である場合には、補完数SCを、1に決定している(図11:S6320)。
例えば、図13(C)は、第1の連続数CL=1、第2の連続数CU=1である補完対象箇所の例を示し、図13(E)は、第1の連続数CL=1、第2の連続数CU=4である補完対象箇所の例を示し、図14(A)は、第1の連続数CL=4、第2の連続数CU=1である補完対象箇所の例を示している。これらの例では、補完数SCが適切な数(1個)に定められることによって、破線で示す方向に延びるエッジの全体の形状を維持しつつ、エッジを滑らかにされている。
このように、第1の連続数CLと第2の連続数CUを適切に用いて、補完数SCを決定する結果、拡大画像において、再現すべきエッジの全体の形状を維持しつつ、エッジのがたつきを抑制することができる。したがって、最終的な印刷画像(無歪ドット画像GD2)において、元画像のエッジの全体の形状を維持しつつ、エッジのがたつきを抑制することができる。
図15は、本実施例の印刷画像のエッジと、比較例の印刷画像のエッジを示す図である。図15(A)は、ステップS100(図2)において取得された対象画像データがポートレイトである場合の例を示している。図15(B)は、ステップS100(図2)において取得された対象画像データがランドスケープである場合の例を示している。図15(A)、(B)において、右側は、本実施例の画像処理が行われた場合、すなわち、補完画素が付加された場合を示し、左側は、単純拡大画像を用いた場合、すなわち、補完画素が付加されなかった場合を示している。
図15(A)、(B)ともに、右側の本実施例の印刷画像は、左側の単純拡大画像を用いた印刷画像と比較して、白画素と黒画素とで形成されるエッジの全体の形状は変化していないにも拘わらず、エッジのがたつきが抑制されていることが解る。本実施例の印刷画像は、特に、斜め方向に延びるエッジ(例えば、符号E1〜E6で示す部分)で、顕著にエッジのがたつきが抑制されていることが解る。
さらに、本実施例の拡大処理部M14は、元画像を構成する複数の画素の中から順次に対象画素SPを選択し(図9:S605、S635)、対象画素SPが選択される度に、エッジ補完処理を含む第1処理(図9:ステップS630)と、エッジ補完処理を含まない第2処理(例えば、図9:ステップS615、S620)のうちのいずれかを実行することによって、拡大画像データを生成している。第1処理は、対象画素SPが特定画素(特定パターンを形成する画素群の中心画素)を含む場合に実行される。第2処理は、対象画素SPが特定画素を含まない場合に実行される。この結果、補完画素が付加された拡大画像(無歪画像PG1)を容易に作成することができる。
また、本実施例によれば、ハーフトーン処理部M16は、ディザマトリクスを用いて、画素数比S2が無歪画像PG1の画素数比Sの2倍である歪ドット画像GD1を表す歪ドットデータを生成する(図2:S700)。そして、ドット画像拡大部M18は、歪ドットデータに対してドット画像拡大処理を実行して、無歪ドット画像GD2を表す無歪ドットデータを生成する(図2:S800)。この結果、ハーフトーン処理部M16は、無歪ドット画像GD2より小さい歪ドット画像GD1を表す歪ドットデータを生成すれば良いので、ハーフトーン処理の処理量を低減することができる。
また、上記実施例では、圧縮部M19は、同一行の組を含む無歪ドット画像GD2を表す無歪ドットデータを、前参照圧縮処理(図4)を用いて圧縮するので、無歪ドットデータのデータ量を低減できる。したがって、印刷装置200に送信する印刷データのデータ量を低減できる。この結果、印刷装置200に必要なメモリ容量(例えば、揮発性メモリ214の容量)を低減することができる。
さらに、印刷画像に表れるスクリーン角度、すなわち、本実施例では、無歪ドット画像GD2(部分無歪ドット画像PGD2(図8))に表れるスクリーン角度は、画質に影響を与える。例えば、人間の視覚特性において、縦方向および横方向の縞模様に対する分解能が高く、斜め方向の縞模様に対する分解能が低いことが知られている。このために、縦方向および横方向の縞模様は目立ちやすく、斜め方向の縞模様は目立ちにくい。このような人間の視覚特性を考慮して、モノクロ印刷では、印刷画像に表れるスクリーン角度は45度に設定されるのが一般的である。上記構成によれば、無歪ドット画像GD2(部分無歪ドット画像PGD2(図8))に表れるスクリーン角度が目標値θになるように、ディザマトリクスDM1のスクリーン角度φは、φ=arctan((tanθ)/2)に設定されている。具体的には、無歪ドット画像GD2(部分無歪ドット画像PGD2(図8))に表れるスクリーン角度θが約45度になるように、ディザマトリクスDM1のスクリーン角度φは、約26.56度に設定されている。この結果、印刷画像、すなわち、無歪ドット画像GD2に表れるスクリーン角度を適正化して、印刷画像の画質を向上することができる。
また、印刷画像における線数(単位は、line per inch)、すなわち、本実施例では、無歪ドット画像GD2(部分無歪ドット画像PGD2(図8))における線数は、画質に影響を与える。例えば、線数が小さい場合には、互いに隣接するドットの集合の大きさ(サブマトリクスCE1に対応(図6))が大きくなるので、トナーの安定性が向上して、バンディングなどの不具合が起こりにくくなる。一方、線数が小さい場合には、画像が粗くなり、エッジのがたつきが大きくなる。このような、利点と欠点を考慮して、適切な線数が定められる。無歪ドット画像GD2(部分無歪ドット画像PGD2(図8))における線数は、上述したライン間隔Dによって定まる。上記構成によれば、無歪ドット画像GD2(部分無歪ドット画像PGD2(図8))に表れるライン間隔が目標値Dになるように、ディザマトリクスDM1は、歪ドット画像GD1(部分歪ドット画像PGD1:図7)に表れるライン間隔Lが、およそ(1/2)×D×cosφ/cosθ、ただし、φ=arctan((tanθ)/2) となるように、設定されている。この結果、印刷画像、すなわち、無歪ドット画像GD2に表れるライン間隔D、および、ライン間隔Dによって定まる線数を適正化して、印刷画像の画質を向上することができる。
以上の説明から解るように、本実施例における上方向および下方向のいずれか一方は、第1の方向の例であり、右方向および左方向のいずれか一方が、第1の方向と交差する第2の方向の例である。また、本実施例における特定パターン1、3の上部分パターンUP1、UP3は、第1部分パターンの例であり、本実施例における特定パターン1、3の下部分パターンBP1、BP3は、第2部分パターンの例である。また、本実施例における特定パターン2、4の下部分パターンBP2、BP4は、第1部分パターンの例であり、本実施例における特定パターン2、4の上部分パターンUP2、UP4は、第2部分パターンの例である。
B.変形例:
(1)実施例では、拡大処理部M14は、元画像(無歪画像PG1)を拡大して、拡大画像(歪画像PG2)を生成する処理として、元画像を横方向に拡大する横方向拡大処理(図2:ステップS600)を実行しているが、元画像を縦方向に拡大する縦方向拡大処理を実行しても良い。例えば、ステップS100(図2)において取得された対象画像データがランドスケープである場合に、拡大処理部M14は、90度回転処理(図2:S500)を行うことなく、横方向拡大処理に代えて、縦方向拡大処理を実行しても良い。この場合には、縦方向拡大処理によって生成された拡大画像(歪画像)を表す拡大画像データに対して、ハーフトーン処理(図2:S700)を行う前に、90度回転処理を行うことが好ましい。
図16は、縦方向拡大処理における特定パターンとカウント用パターンについて説明する図である。縦方向拡大処理は、実施例における横方向拡大処理(図9、図11)と基本的に同じであるが、以下の点が異なる。
1)縦方向拡大処理では、元画像の対象画素SPの座標を(Xa、Ya)とすると、拡大画像の対応対象画素TPの座標は、(Xa、2Ya)と(Xa、2Ya+1)である。
2)図16に示すように、縦方向拡大処理の4種類の特定パターン1〜4は、横方向拡大処理の4種類の特定パターン1〜4(図10)を、それぞれ90度回転(図16の例では、反時計回りに90度)させたパターンである。
3)図16に示すように、縦方向拡大処理の特定パターン1〜4に対応する第1のパターンLCP1〜LCP4、第2のパターンUCP1〜UCP4、カウント方向CD1、CD2、補完方向SD、補完パターンSDP1〜SDP4は、横方向拡大処理におけるこれらの要素LCP1〜LCP4、UCP1〜UCP4、CD1、CD2、SD、SDP1〜SDP4を、それぞれ、90度回転(図16の例では、反時計回りに90度)させたものである。
例えば、縦方向拡大処理の特定パターン1〜4は、それぞれ、縦方向に並んだ3つの画素で構成される中央部分パターンMP1〜MP4と、中央部分パターンMP1〜MP4の左方向にそれぞれ隣接する左部分パターンLP1〜LP4と、中央部分パターンMP1の右方向にそれぞれ隣接する右部分パターンRP1〜RP4とを含む。
そして、縦方向拡大処理の第1のパターンLCP1〜LCP4は、対応する特定パターンに含まれる3つの部分パターンのうち、中心画素に対してカウント方向CD1に隣接する部分パターンと同じパターンである。縦方向拡大処理の第2のパターンUCP1〜UCP4は、対応する特定パターンに含まれる3つの部分パターンのうち、中心画素に対してカウント方向CD2に隣接する部分パターンと同じパターンである。
縦方向拡大処理を採用しても、実施例と同様の作用・効果を奏する。
また、以上の説明から解るように、本変形例における右方向および左方向のいずれか一方は、第1の方向の例であり、下方向および上方向のいずれか一方が、第1の方向と交差する第2の方向の例である。また、本変形例における特定パターン1、3の左部分パターンLP1、LP3は、第1部分パターンの例であり、本変形例における特定パターン1、3の右部分パターンRP1、RP3は、第2部分パターンの例である。また、本変形例における特定パターン2、4の右部分パターンRP2、RP4は、第1部分パターンの例であり、本変形例における特定パターン2、4の左部分パターンLP2、LP4は、第2部分パターンの例である。
(2)上記実施例における横方向拡大処理(図9)に代えて、先に、単純拡大画像を表す単純拡大画像データを生成し、単純拡大画像に補完画素を付加するように、単純拡大画像データを修正することによって、拡大画像データを生成しても良い。
図17は、本変形例における横方向拡大処理のフローチャートである。ステップS602Bでは、拡大処理部M14は、単純拡大画像データを生成する。ステップS605では、拡大処理部M14は、単純拡大画像を構成する画素の中から処理対象とする対象画素を順次に1つずつ選択する。具体的には、単純拡大画像の上端の行から順に、下方に向かって処理対象とする。同じ行の中では、左端の画素から、右に向かって順次に処理対象とする。
ステップS610Bでは、実施例のステップ610と同様に、拡大処理部M14は、対象画素は白画素であるか否かを判断する。対象画素が白画素であると判断されると(ステップS610B:YES)、拡大処理部M14のパターン検出部M142は、単純拡大画像において、対象画素とその周辺画素とは、後述する4種類の特定パターン1〜4のいずれかを形成するか否かを判断する(ステップS625B)。
図18は、本変形例の横方向拡大処理における特定パターンとカウント用パターンについて説明する図である。本変形例における特定パターンは、実施例における元画像の特定パターン1〜4(図10)にそれぞれ対応する、拡大画像の特定パターン1〜4(図18)である。本変形例における拡大画像の特定パターン1〜4を対応特定パターンとも呼ぶ。例えば、対応特定パターン1〜4は、4つの縦方向の列を含む、縦3画素×横4画素(計12画素)のパターンである(図18)。対応特定パターン1〜4の中央の2列(2列目と3列目)は、元画像の特定パターン1〜4(図10)を構成する3つの縦方向の列のうち、中央の列と同じである。パターン検出部M142は、このような拡大画像の対応特定パターン1〜4を、単純拡大画像において検出することによって、実施例において補完画素を付加すべき位置として検出される拡大画像上の位置と同じ位置を、単純拡大画像において検出することができる。
ステップS610Bにおいて、対象画素は白画素でないと判断された場合(ステップS610B:NO)、および、ステップS625Bにおいて、対象画素とその周辺画素とは、単純拡大画像において4種類の対応特定パターン1〜4のいずれも形成しないと判断された場合(ステップS625B:NO)には、拡大処理部M14は、ステップS635に処理を進める。
対象画素とその周辺画素とは、単純拡大画像において4種類の対応特定パターン1〜4のいずれかを形成すると判断された場合(ステップS625B:YES)には、拡大処理部M14は、エッジ補完処理を実行する(ステップS630B)。
本変形例のエッジ補完処理の処理フローは、実施例におけるエッジ補完処理(図11)と基本的に同じであるが、以下の点が異なる。
1)本変形例では、第1の連続数CLと第2の連続数CUのカウントは、単純拡大画像においてカウントされる。本変形例において、これらのカウントに用いられる第1のパターンLCP1〜LCP4および第2のパターンUCP1〜UCP4は、図18に示すように、対応特定パターン1〜4の一部分である横方向に並んだ4個の画素(上部分パターンUP1〜UP4および下部分パターンBP1〜BP4のいずれか)と同じパターンである。
このように、単純拡大画像において、第1の連続数CLおよび第2の連続数CUをカウントしても、実施例のように、元画像において第1の連続数CLおよび第2の連続数CUをカウントしても、結果的には、第1の連続数CLおよび第2の連続数CUは同じ値となる。この結果、いずれの場合であっても、連続数決定部M143は、補完数SCを、元画像における第1の連続数CLと第2の連続数CUに応じた数に、適切に決定することができる。
なお、本変形例においても、第1の連続数CLと第2の連続数CUのカウントは、実施例と同様に、元画像においてカウントされても良い。ただし、単純拡大画像においてカウントすれば、単純拡大画像データを生成した時点で、元画像データを消去しても良いので、処理に要するメモリ量を削減することができる。
本変形例の横方向拡大処理を採用しても、実施例と同様の作用・効果を奏する。
(3)上記実施例の横方向拡大処理では、元画像に白画素と黒画素とによって構成される特定パターンが含まれる場合に、拡大画像に、黒画素を補完画素として付加しているが、白画素と黒画素の組合せに限らず、互いの色の相違が比較的大きい(基準値より大きい)色をそれぞれ表す第1種の画素と第2種の画素との組合せであれば良い。例えば、黒以外の色成分(例えば、RGBや、CMYのいずれか)の階調値を表す画素のうち、最大値近傍の色の画素と、最小値近傍の色の画素との組合せであっても良い。第1種の画素は、特定の階調値(例えば、RGBのいずれかの階調値、CMYKのいずれかの階調値)が、当該階調値が取り得る値の最大値および最小値のうちの一方である画素を含むことが好ましく、第2種の画素は、当該特定の階調値が、当該階調値が取り得る値の最大値および最小値のうちの他方である画素を含むことが好ましい。
(4)上記実施例では、モノクロ印刷のための印刷データを生成しているが、これに代えて、カラー印刷のための印刷データを生成しても良い。例えば、RGB画像データや、カラー印刷に用いられる印刷材(具体的には、CMYKのトナー)に対応する色成分の階調値の組(具体的には、CMYKの階調値の組)を表すCMYK画素データで構成されたビットマップデータ(CMYK画像データ)に対して、上述した画像処理を行って良い。具体的には、プリンタドライバM10は、各色成分の画素値で表される各単色画像データに対して、それぞれ、上述した横方向拡大処理を含む処理(図2:S600〜S900)を実行して、CMYKの各色成分の圧縮ドットデータ300を生成しても良い。プリンタドライバM10は、圧縮ドットデータ300を用いて印刷データを生成して、印刷装置200に送信しても良い。
(5)上記実施例において、カウント用パターン(第1のパターンLCPと第2のパターンUCP)は、対応する特定パターンの一部である部分特定パターンと同じパターンであるが、部分特定パターンとは異なるパターンであっても良い。
(6)なお、上記実施例では、ドット画像拡大部M18が、圧縮されていない無歪ドットデータを生成した後に、圧縮部M19が該無歪ドットデータを圧縮して圧縮ドットデータ300(図5)を生成している。これに代えて、ドット画像拡大部M18が、歪ドットデータを用いて、圧縮されていない無歪ドットデータを生成することなく、圧縮ドットデータ300を生成しても良い。具体的には、ドット画像拡大部M18は、歪ドットデータに含まれる各行データを圧縮して、無歪ドットデータにおける奇数行データ310A、320、330を生成する度に、偶数行データ310B(ONの参照フラグデータ)を、奇数行データの直後に付加するしても良い。ドット画像拡大部M18は、この処理を、歪ドットデータに含まれる全ての行データについて繰り返すことによって、圧縮されていない無歪ドットデータを生成することなく、圧縮された無歪ドットデータである圧縮ドットデータ300を生成しても良い。すなわち、ドット画像拡大部M18は、同一行の組を表す圧縮データを含む無歪ドットデータ(圧縮ドットデータ300)を、歪ドットデータを用いて生成しても良い。
(7)上記実施例の画像処理において、ステップS800とS900(図2)の処理を省略して、S700において生成された歪ドットデータを印刷データとして、印刷装置200に供給しても良い。この場合には、印刷装置200の装置制御部M20が、歪ドットデータを用いて無歪ドットデータを生成し、生成した無歪ドットデータをプリンタエンジン250に供給しても良い。こうすれば、印刷装置200は、上記実施例と同様に、無歪ドットデータが表す無歪ドット画像GD2を印刷することができる。
(8)上記実施例におけるプリンタドライバM10の各機能部M12〜M19は、印刷装置200の制御回路212によって実現されても良い。すなわち、印刷装置200の制御回路212において、上述した画像処理が実行されても良い。この場合には、印刷装置200における画像処理によって、印刷画像におけるエッジの見栄えを向上することができる。
(9)上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
100...計算装置、110...CPU、120...内部記憶装置、130...外部記憶装置、132...ドライバプログラム、134...画像データ、170...操作部、180...表示部、190...通信部、200...印刷装置、210...集積回路、212...制御回路、214...揮発性メモリ、216...不揮発性メモリ、250...プリンタエンジン、270...操作部、280...表示部、290...通信部、M10...プリンタドライバ、M20...装置制御部、M12...画像データ取得部、M14...拡大処理部、M16...ハーフトーン処理部、M18...ドット画像拡大部、M19...圧縮部、M141...対象画素選択部、M142...パターン検出部、M143...連続数決定部、M144...画素群選択部、M145...画素データ設定部

Claims (11)

  1. 画像処理装置であって、
    第1種の画素と第2種の画素を含む元画像を表す元画像データを取得する取得部と、
    前記元画像データに対して拡大処理を実行して、前記元画像を第1の方向に拡大した拡大画像を表す拡大画像データを生成する拡大処理部と、
    を備え、
    前記拡大処理部は、
    前記元画像内に前記第1種の画素と前記第2種の画素とによって構成される特定パターンが含まれる場合に、前記拡大画像内の前記第1の方向と交差する第2の方向に延びる画素群を選択する画素群選択部であって、前記拡大画像内の前記画素群は、前記元画像内の特定画素に対応する対応特定画素と、前記対応特定画素の前記第2の方向に位置する画素と、を含み、前記元画像内の前記特定画素は、前記特定パターンを構成する特定の前記第1種の画素に対応する画素であり、前記拡大画像内の前記画素群を構成する画素の数は、第1の連続数と第2の連続数とに応じた数であり、前記第1の連続数は、前記元画像において前記特定画素から前記第2の方向に向かって第1のパターンが連続する数であり、前記第2の連続数は、前記元画像において前記特定画素から前記第2の方向の反対方向に向かって第2のパターンが連続する数であり、前記第1のパターンは、前記特定パターンのうち、前記第2の方向の側の一部に基づくパターンであり、前記第2のパターンは、前記特定パターンのうち、前記第2の方向の前記反対方向の側の一部に基づくパターンである、前記画素群選択部と、
    前記拡大画像内の前記画素群のうち、前記第1の方向において前記第2種の画素に隣接する画素を、前記第2種の画素に設定する設定部と、
    を備える、画像処理装置。
  2. 請求項1に記載の画像処理装置であって、
    前記第1のパターンは、前記第1種の画素である第1の中央画素と、前記第1の中央画素に対して前記第1の方向に隣接する前記第1種の画素である第1隣接画素と、前記第1の中央画素に対して前記第1の方向の反対方向に隣接する前記第2種の画素である第2隣接画素と、を含むパターンであり、
    前記第2のパターンは、前記第2種の画素である第2の中央画素と、前記第2の中央画素に対して前記第1の方向に隣接する前記第1種の画素である第3隣接画素と、を含むパターンであり、
    前記第1の中央画素の前記第1の方向の位置と、前記第2の中央画素の前記第1の方向の位置とは、前記元画像内の前記特定画素の前記第1の方向の位置と同じである、画像処理装置。
  3. 請求項1または請求項2に記載の画像処理装置であって、
    前記第1のパターンは、前記特定パターンの一部である第1部分パターンであり、
    前記第2のパターンは、前記特定パターンの一部であり、前記第1部分パターンと異なる第2部分パターンである、画像処理装置。
  4. 請求項1ないし請求項3のいずれかに記載の画像処理装置であって、
    前記特定パターンは、前記特定画素に対して前記第2の方向に隣接する第1部分パターンと、前記特定画素に対して前記第2の方向の反対方向に隣接する第2部分パターンと、を含み、
    前記第1部分パターンは、前記特定画素に対して前記第2の方向に隣接する中央画素と、前記中央画素に対して前記第1の方向に隣接する前記第1種の画素である第1周辺画素と、前記中央画素に対して前記第1の方向の反対方向に隣接する前記第2種の画素である第2周辺画素と、を含むパターンであり、
    前記第2部分パターンは、前記特定画素に対して前記第2の方向の反対方向に隣接する前記第2種の画素である第3周辺画素と、前記第3周辺画素に対して前記第1の方向に隣接する前記第1種の画素である第4周辺画素と、を含むパターンである、画像処理装置。
  5. 請求項1ないし請求項4のいずれかに記載の画像処理装置であって、
    前記拡大処理部は、
    前記第1の連続数が前記第2の連続数より多い場合には、前記画素群を構成する画素の数を、前記第2の連続数を用いて決定し、前記第1の連続数が前記第2の連続数より小さい場合には、前記画素群を構成する画素の数を、前記第1の連続数を用いて決定する決定部を備える、画像処理装置。
  6. 請求項1ないし請求項5のいずれかに記載の画像処理装置であって、
    前記拡大処理部は、前記元画像を構成する複数の画素の中から順次に対象画素を選択する対象画素選択部を備え、
    前記拡大処理部は、前記対象画素が選択される度に、第1処理と第2処理とを含む複数の処理のうちのいずれかを実行することによって、前記拡大画像データを生成し、
    前記第1処理は、前記対象画素が前記特定画素を含む場合に実行される処理であって、前記画素群選択部による前記画素群の選択と、前記設定部による前記画素群を構成する画素の設定と、を含む処理であり、
    前記第2処理は、前記対象画素が前記特定画素を含まない場合に実行される処理であって、前記画素群選択部による前記画素群の選択と、前記設定部による前記画素群を構成する画素の設定と、を含まない処理である、画像処理装置。
  7. 請求項1ないし請求項6のいずれかに記載の画像処理装置であって、
    前記拡大処理部は、歪みのない前記元画像に対して前記拡大処理を実行して、歪みのある前記拡大画像を表す前記拡大画像データを生成し、
    前記画像処理装置は、ドット画像を印刷する印刷実行部のための装置であり、
    前記画像処理装置は、さらに、
    前記拡大処理部によって生成された歪みのある前記拡大画像を表す前記拡大画像データに対して、画素毎にドットの形成状態を表すドットデータを生成するハーフトーン処理を実行して、歪みのある歪ドット画像を表す歪ドットデータを生成するハーフトーン処理部と、
    前記歪ドットデータに対して前記拡大処理とは異なる処理を実行して、前記歪ドット画像を少なくとも前記第2の方向に拡大した歪みのない無歪ドット画像を表す無歪ドットデータを生成するドット画像拡大部と、
    を備える、画像処理装置。
  8. 請求項7に記載の画像処理装置であって、
    前記無歪ドット画像は、同一行の組を複数個含み、
    前記同一行の組は、前記無歪ドット画像を構成する前記第1の方向に沿った複数の行のうち、互いに隣接するとともに、各構成画素のドットの形成状態が互いに同一である2以上の行を含む組であり、
    前記無歪ドットデータは、前記同一行の組を表す圧縮データを含み、
    前記圧縮データは、1つの代表行を表す代表行データと、前記代表行データが繰り返されることを示すデータと、を含む、画像処理装置。
  9. 請求項1ないし請求項8のいずれかに記載の画像処理装置であって、
    前記拡大処理部は、前記元画像において前記特定パターンを検出する検出部を備え、
    前記拡大処理部は、検出された前記特定パターンについて、前記画素群選択部による前記画素群の選択と、前記設定部による前記画素群を構成する画素の設定と、を実行する、画像処理装置。
  10. 請求項1ないし請求項8のいずれかに記載の画像処理装置であって、
    前記拡大処理部は、前記拡大画像において、前記元画像の前記特定パターンに対応する対応特定パターンを検出する検出部を備え、
    前記拡大処理部は、検出された前記対応特定パターンについて、前記画素群選択部による前記画素群の選択と、前記設定部による前記画素群を構成する画素の設定と、を実行する、画像処理装置。
  11. 画像処理プログラムであって、
    第1種の画素と第2種の画素を含む元画像を表す元画像データを取得する取得機能と、
    前記元画像データに対して拡大処理を実行して、前記元画像を第1の方向に拡大した拡大画像を表す拡大画像データを生成する拡大処理機能と、
    をコンピュータに実現させ、
    前記拡大処理機能は、
    前記元画像内に前記第1種の画素と前記第2種の画素とによって構成される特定パターンが含まれる場合に、前記拡大画像内の前記第1の方向と交差する第2の方向に延びる画素群を選択する画素群選択機能であって、前記拡大画像内の前記画素群は、前記元画像内の特定画素に対応する対応特定画素と、前記対応特定画素の前記第2の方向に位置する画素と、を含み、前記元画像内の前記特定画素は、前記特定パターンを構成する特定の前記第1種の画素に対応する画素であり、前記拡大画像内の前記画素群を構成する画素の数は、第1の連続数と第2の連続数とに応じた数であり、前記第1の連続数は、前記元画像において前記特定画素から前記第2の方向に向かって第1のパターンが連続する数であり、前記第2の連続数は、前記元画像において前記特定画素から前記第2の方向の反対方向に向かって第2のパターンが連続する数であり、前記第1のパターンは、前記特定パターンのうち、前記第2の方向の側の一部に基づくパターンであり、前記第2のパターンは、前記特定パターンのうち、前記第2の方向の前記反対方向の側の一部に基づくパターンである、前記画素群選択機能と、
    前記拡大画像内の前記画素群のうち、前記第1の方向において前記第2種の画素に隣接する画素を、前記第2種の画素に設定する設定機能と、
    を備える、画像処理プログラム。
JP2012042224A 2012-02-28 2012-02-28 画像処理装置および画像処理プログラム Active JP5927984B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012042224A JP5927984B2 (ja) 2012-02-28 2012-02-28 画像処理装置および画像処理プログラム
US13/763,983 US8855445B2 (en) 2012-02-28 2013-02-11 Image processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012042224A JP5927984B2 (ja) 2012-02-28 2012-02-28 画像処理装置および画像処理プログラム

Publications (2)

Publication Number Publication Date
JP2013179474A JP2013179474A (ja) 2013-09-09
JP5927984B2 true JP5927984B2 (ja) 2016-06-01

Family

ID=49002959

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012042224A Active JP5927984B2 (ja) 2012-02-28 2012-02-28 画像処理装置および画像処理プログラム

Country Status (2)

Country Link
US (1) US8855445B2 (ja)
JP (1) JP5927984B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2773508A4 (en) * 2011-10-31 2015-01-07 Hewlett Packard Development Co METHOD AND SYSTEM FOR HALF-TONE PRINTING

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08227456A (ja) * 1994-09-22 1996-09-03 Casio Comput Co Ltd ドットパターンスムージング装置及び方法
US5742300A (en) 1995-01-03 1998-04-21 Xerox Corporation Resolution enhancement and thinning method for printing pixel images
TW377431B (en) * 1995-04-14 1999-12-21 Hitachi Ltd Method and apparatus for changing resolution
JPH11175710A (ja) * 1997-12-16 1999-07-02 Sharp Corp 画像形成装置
JP2002024815A (ja) * 2000-06-13 2002-01-25 Internatl Business Mach Corp <Ibm> 拡大画像データに変換するための画像変換方法、画像処理装置、および画像表示装置
JP4057337B2 (ja) 2002-04-24 2008-03-05 東芝テック株式会社 画像処理装置と画像形成装置
JP4799009B2 (ja) * 2005-02-17 2011-10-19 キヤノン株式会社 画像処理装置及び方法
JP4510069B2 (ja) * 2007-12-10 2010-07-21 シャープ株式会社 画像処理装置、画像表示装置、画像形成装置、画像処理方法、コンピュータプログラム及び記憶媒体
US8472753B2 (en) * 2008-01-10 2013-06-25 Samsung Electronics Co., Ltd. Method and system of adaptive reformatting of digital image
JP2010003251A (ja) * 2008-06-23 2010-01-07 Panasonic Corp 画像リサイズ処理装置及び画像リサイズ処理方法
JP2010120329A (ja) * 2008-11-21 2010-06-03 Seiko Epson Corp 印刷画像のジャギーを低減する画像処理
US8400473B2 (en) * 2009-06-24 2013-03-19 Ariel Shamir Multi-operator media retargeting
US8483513B2 (en) * 2010-01-22 2013-07-09 Corel Corporation, Inc. Method of content aware image resizing
US8571309B2 (en) * 2011-11-15 2013-10-29 At&T Intellectual Property I, L.P. System and method of image upsampling
JP5966434B2 (ja) * 2012-02-28 2016-08-10 ブラザー工業株式会社 画像処理装置および画像処理プログラム

Also Published As

Publication number Publication date
US8855445B2 (en) 2014-10-07
JP2013179474A (ja) 2013-09-09
US20130223765A1 (en) 2013-08-29

Similar Documents

Publication Publication Date Title
US8098960B2 (en) Image processing apparatus, computer readable medium storing program, image processing method, and computer data signal
JP2010118927A (ja) プログラム、記録媒体、画像処理装置、画像処理方法および階調補正パラメータ生成用シート
JP5882713B2 (ja) 画像処理装置、画像処理方法、コンピュータプログラム
US7570807B2 (en) Image processing apparatus, image forming system, computer readable medium storing program and image processing method
JP5494641B2 (ja) 色変換テーブル作成装置、色変換テーブル作成方法及びプログラム
JP2008022153A (ja) 画像処理装置、および画像処理方法
JP5927984B2 (ja) 画像処理装置および画像処理プログラム
JP7381211B2 (ja) 画像処理装置および画像処理方法
JP2010278948A (ja) 画像処理装置
JP5103304B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP5966434B2 (ja) 画像処理装置および画像処理プログラム
US11423268B2 (en) Image processing apparatus, image processing apparatus control method, and storage medium
JP6758928B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP2019146037A (ja) 画像処理装置とその制御方法、及びプログラム
JP5649552B2 (ja) 画像処理装置および画像形成装置
JP7238485B2 (ja) 画像形成装置
US8787640B2 (en) Image processing system, method, program, and storage medium to implement universal color design
JP4983947B2 (ja) ハーフトーン画像生成装置およびハーフトーン画像生成方法
JP6750357B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP2004025621A (ja) 網点階調表現方法、コンピュータプログラムおよびコンピュータ読み取り可能な記憶媒体
JP2012000895A (ja) 画像形成装置および画像処理方法
JP2012253435A (ja) 画像処理システム、画像形成装置、及びコンピュータによる画像処理方法
JP2006243858A (ja) 用紙サイズに応じた印刷データの生成
JP2006179998A (ja) 画像処理装置、画像処理方法及びそのプログラム
JP2005348158A (ja) 画像処理装置および画像処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150123

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160105

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160303

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160411

R150 Certificate of patent or registration of utility model

Ref document number: 5927984

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150