(57)【要約】【課題】画像処理の速度が速く、かつ細線などの再現性に優れる画像処理を実現する。【解決手段】画像処理装置は、画素群階調値ごとに、画素群階調値とドットの配置との対応関係であって、画素群内にエッジがある場合に適用する対応関係である第１対応関係と、画素群内にエッジがない場合に適用する第２対応関係とを記憶する。ここで、第１対応関係は、第２対応関係より、少なくとも所定の階調値より高い領域で、画素群階調値に対して、階調値の低い側のいずれかのドットの形成割合が高い対応関係である。画像処理装置は、画素群毎に、画素群内の各画素の階調値に従って、画素群内にエッジが存在するか否かを判断し、画素群内にエッジが存在する場合には、第１対応関係を用いて、ドットの配置を特定し、エッジが存在しない場合には、画素群内のドットの配置を、第２対応関係を参照することにより特定する。【選択図】図３
2018142781.tif 000002
【特許請求の範囲】
【請求項１】
多階調の画像を、当該画像を構成する画素を複数個ずつまとめた画素群を単位として処理する画像処理装置であって、
前記画素群の取り得る階調値である画素群階調値ごとに、前記画素群階調値に対応して前記画素群内の複数の画素の各々に形成すべきドットであって表現可能な階調値の異なる複数種類のドットの配置を、前記ドットを形成しない場合を含めて予め決定し、前記画素群階調値と前記ドットの配置との対応関係として記憶する記憶部と、
前記画像から順次取り出した画素群の前記画素群階調値により前記対応関係を参照することで、前記画素群階調値に対応したドット配置を特定する特定部と、
を備え、
前記記憶部は、前記対応関係を、前記画素群内にエッジがある場合に適用する対応関係である第１対応関係と、前記画素群内にエッジがない場合に適用する第２対応関係として記憶し、前記第１対応関係は、前記第２対応関係より、少なくとも所定の階調値より高い領域で、前記画素群階調値に対して、前記階調値の異なる複数種類のドットのうち階調値の低い側のいずれかのドットの形成割合が高い対応関係であり、
前記特定部は、
前記取り出した画素群毎に、当該画素群内の各画素の階調値に従って、前記画素群内にエッジが存在するか否かを判断する画素群内エッジ判断部と、
前記画素群内にエッジが存在すると判断した場合には、前記第１対応関係を用いて、前記画素群内に形成すべきドットの配置を特定し、該特定したドットの配置を出力する第１特定部と、
前記画素群内にエッジが存在しないと判断した場合には、前記画素群に対応する前記ドットの配置を前記画素群階調値に従って、前記第２対応関係を参照することにより特定し、該特定したドットの配置を出力する第２特定部と、
を備えた画像処理装置。
【請求項２】
請求項１記載の画像処理装置であって、
前記画素群内エッジ判断部は、前記取り出した画素群毎に、当該画素群内に存在する高階調画素の階調値と前記高階調画素より階調値が低い低階調画素の階調値との隔たりに応じて、前記画素群内にエッジが存在するか否かを判断する
画像処理装置。
【請求項３】
請求項２記載の画像処理装置であって、
前記第１特定部は、前記高階調画素に対応した前記ドットの配置を前記高階調画素の階調値に従って、前記低階調画素に対応した前記ドットの配置を前記低階調画素の階調値に従って、それぞれ前記第１対応関係を参照することにより特定し、前記高階調画素の階調値および前記低階調画素の階調値によりそれぞれ特定したドットの配置を合成して出力する
画像処理装置。
【請求項４】
請求項２記載の画像処理装置であって、
前記第１特定部は、
前記画素群内における少なくとも前記高階調画素の配置を記憶すると共に、
前記第１対応関係を参照することにより、前記高階調画素に対応した前記ドットの配置を前記画素群全体に対して特定し、
前記第１対応関係を参照することにより、前記低階調画素に対応した前記ドットの配置を前記画素群全体に対して特定し、
前記特定した前記高階調画素に対応した前記ドットの配置と、前記特定した前記低階調画素に対応した前記ドットの配置とを、前記高階調画素の配置に従って合成して出力する
画像処理装置。
【請求項５】
請求項１から請求項４のいずれか一項に記載の画像処理装置であって、
前記画素群について、隣接する画素群との間で前記画素群階調値に所定以上の隔たりがあるか否かを判断し、所定以上の隔たりがあると判断した場合には、当該画素群に対して、前記第１特定部による前記ドットの配置の特定と前記出力とを行なわせる画像処理装置。
【請求項６】
前記第１対応関係および前記第２対応関係は、前記画素群階調値に応じて前記画素群に形成するドットの種類と個数とを特定する多値化対応値と、前記画素群内のドット形成の順序を示す順序値との組み合わせからなる請求項１から請求項５のいずれか一項に記載の画像処理装置。
【請求項７】
前記多値化対応値と前記順序値とは、少なくとも１０００画素に対応した大域ディザマスクから前記画素群の大きさに応じて取り出す局所ディザマスクに含まれる閾値の大小関係を反映して定めた請求項６に記載の画像処理装置。
【請求項８】
請求項１から請求項５のいずれか一項に記載の画像処理装置であって、
前記第１対応関係および前記第２対応関係は、少なくとも１０００画素に対応した大域ディザマスクから前記画素群の大きさに応じて取り出す局所ディザマスクに含まれる複数の閾値に基づき、前記各局所ディザマスク毎に定められ、前記画素群階調値に応じて前記画素群に形成されるドットの種類と個数とが異なる階調範囲を示すドット切替階調値を特定する切替階調エンコードテーブル、および前記各局所ディザマスク毎に定められ、前記ドット切替階調値から前記複数種類のドットの配置を特定する切替階調デコードテーブルとして用意される画像処理装置。
【請求項９】
多階調の画像を、当該画像を構成する画素を複数個ずつまとめた画素群を単位として処理する画像処理装置と、該画像処理装置からのデータを受け取って画像を形成する画像出力装置とを備えた画像処理システムであって、
前記画像処理装置は、
前記画素群の取り得る階調値である画素群階調値ごとに、前記画素群階調値に対応して前記画素群内の複数の画素の各々に形成すべきドットであって表現可能な階調値の異なる複数種類のドットの配置を、前記ドットを形成しない場合を含めて予め決定し、前記画素群階調値と前記ドットの配置との対応関係として記憶する記憶部と、
前記画像から順次取り出した画素群の前記画素群階調値により前記対応関係を参照することで、前記画素群階調値に対応したドット配置を特定する特定部と、
を備え、
前記記憶部は、前記対応関係を、前記画素群内にエッジがある場合に適用する対応関係である第１対応関係と、前記画素群内にエッジがない場合に適用する第２対応関係として記憶し、前記第１対応関係は、前記第２対応関係より、少なくとも所定の階調値より高い領域で、前記画素群階調値に対して、前記階調値の異なる複数種類のドットのうち階調値の低い側のいずれかのドットの形成割合が高い対応関係であり、
前記特定部は、
前記取り出した画素群毎に、当該画素群内の各画素の階調値に従って、前記画素群内にエッジが存在するか否かを判断する画素群内エッジ判断部と、
前記画素群内にエッジが存在すると判断した場合には、前記第１対応関係を用いて、前記画素群内に形成すべきドットの配置を特定する第１特定部と、
前記画素群内にエッジが存在しないと判断した場合には、前記画素群に対応する前記ドットの配置を前記画素群階調値に従って、前記第２対応関係を参照することにより特定する第２特定部と、
を備え、
前記画像出力装置は、前記画像処理装置の第１，第２特定部が特定した前記ドットの配置を受け取って、該特定されたドットの配置に従って複数種類のドットを形成するドット形成部を備えた
画像処理システム。
【請求項１０】
多階調の画像を、当該画像を構成する画素を複数個ずつまとめた画素群を単位として処理する画像処理方法であって、
前記画素群の取り得る階調値である画素群階調値ごとに、前記画素群階調値に対応して前記画素群内の複数の画素の各々に形成すべきドットであって表現可能な階調値の異なる複数種類のドットの配置を、前記ドットを形成しない場合を含めて予め決定し、前記画素群階調値と前記ドットの配置との対応関係であって、前記画素群内にエッジがある場合に適用する対応関係である第１対応関係と、前記画素群内にエッジがない場合に適用する第２対応関係とを記憶し、前記第１対応関係は、前記第２対応関係より、少なくとも所定の階調値より高い領域で、前記画素群階調値に対して、前記階調値の異なる複数種類のドットのうち階調値の低い側のいずれかのドットの形成割合が高い対応関係であり、
前記画像から取り出した画素群毎に、当該画素群内の各画素の階調値に従って、前記画素群内にエッジが存在するか否かを判断し、
前記画素群内にエッジが存在すると判断した場合には、前記第１対応関係を用いて、前記画素群内に形成すべきドットの配置を特定し、
前記画素群内にエッジが存在しないと判断した場合には、前記画素群に対応する前記ドットの配置を前記画素群階調値に従って、前記第２対応関係を参照することにより特定する
画像処理方法。
【請求項１１】
多階調の画像を、当該画像を構成する画素を複数個ずつまとめた画素群を単位として処理するコンピュータープログラムであって、
前記画素群の取り得る階調値である画素群階調値ごとに、前記画素群階調値に対応して前記画素群内の複数の画素の各々に形成すべきドットであって表現可能な階調値の異なる複数種類のドットの配置を、前記ドットを形成しない場合を含めて予め決定し、前記画素群階調値と前記ドットの配置との対応関係であって、前記画素群内にエッジがある場合に適用する対応関係である第１対応関係と、前記画素群内にエッジがない場合に適用する第２対応関係とを記憶し、前記第１対応関係は、前記第２対応関係より、少なくとも所定の階調値より高い領域で、前記画素群階調値に対して、前記階調値の異なる複数種類のドットのうち階調値の低い側のいずれかのドットの形成割合が高い対応関係として記憶部に予め記憶しておき、
前記コンピュータープログラムは、コンピューターにより読み込まれて実行され、
前記画像から取り出した画素群毎に、当該画素群内の各画素の階調値に従って、前記画素群内にエッジが存在するか否かを判断する機能と、
前記画素群内にエッジが存在すると判断した場合には、前記第１対応関係を用いて、前記画素群内に形成すべきドットの配置を特定する機能と、
前記画素群内にエッジが存在しないと判断した場合には、前記画素群に対応する前記ドットの配置を前記画素群階調値に従って、前記第２対応関係を参照することにより特定する機能と
をコンピューターにより実現するコンピュータープログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理と画像処理結果を利用して印刷を行なう技術とに関する。
【背景技術】
【０００２】
多階調、例えば三原色の各色２５６階調の原画像を、大中小ドットや濃淡ドットなど、階調数の少ない手段で再現する画像処理技術と、この技術を用いて、印刷媒体に画像を形成する印刷技術が広く用いられている。表現できる階調数の少ない手段で多階調の画像を高品質に再現しようとする場合、いくつかの解決しなければならない問題がある。その多くは、トレードオフの関係になっている。
【０００３】
＜粒状性の改善＞
ドットを用いた画像形成では、特に低階調領域を中心として、ドットが形成されていることが視認されるいわゆる粒状性が感じられないことが求められる。
＜ムラやバンディングの抑制＞
ドットの形成位置は、ハード的な誤差が存在する。このため、例えば低い階調値を表現するドット（以下、代表的なドットであるとして「小ドット」と称する）で所定の面積を埋めた場合、ドット形成位置のズレなどに起因する濃度や色のむら、あるいはバンディングなどが生じやすくなる。こうしたムラやバンディングの発生を抑制することが求められる。
【０００４】
＜処理速度の確保＞
画像処理は、一般にかなりの時間を要するため、処理速度を高める工夫が要求される。処理速度は、原画像から解像度を低下させて処理すれば、一般に高められる。複数の画素をまとめて、同じ階調値の画素として扱う場合には、通常は解像度は低下することになる。複数画素をまとめて処理するこうした手法の一つに、複数画素をまとめたブロックの階調値に基づいて、各画素へのドットの配置を予めエンコードしておき、画像を形成する側でデコードして画像を形成する手法がある（特許文献１参照）。また、一般に、ディザ法による処理の方が、誤差拡散処理よりも、処理速度の点では有利である。
【０００５】
＜解像度の確保＞
人の目は、一定の解像度以下の解像度においては、かなり敏感に画質の低下を感得する。例えば、階調値の変化が大きいエッジ部などについては、原画像から解像度を下げると、画質の低下として認識され得る。このため、エッジ部については、解像度を低下させずに処理する手法が種々提案されている（例えば、特許文献２参照）。また、細線のように、周りの画素と併せて考えると階調値は低いものの、線としては際立った部分は、解像度を低下させると、十分に再現できなくなってしまう。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−５８９９号公報
【特許文献２】特開２００５−４１０４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、階調数の高い原画像を、階調数の表現の少ない手段で再現していることから、上記の要請は、多くはトレードオフの関係になっており、全てを一律に解決することは困難であった。例えば、粒状性を改善するためには、小ドットをできるだけ多く用いることが考えられるが、この場合、ドットの形成位置のズレが生じるといわゆるムラやバンディングなどが生じやすく、画質が劣化しやすくなる。
【０００８】
かといって、両者の要求を満足させるために、低階調領域では小ドットを用い、階調値が高まるにつれて、小ドット共に中または大ドットを早い段階から形成すると、同一の階調値を再現する場合のドットの形成個数が減るので、白地を背景とした低濃度の細線などが切れやすくなってしまう。これに対して、特許文献２のように、画素単位でエッジ検出を行ない、エッジ画素では小ドットの使用率を高める手法も考えられるが、画素単位でエッジを検出する処理が複雑になるため、処理速度を重視する場合には、採用しにくいケースも想定される。
【０００９】
また、処理速度を高めるために複数の画素をまとめて処理するものとすると、まとめた画素の中にエッジ画素と非エッジ画素が混在することになる。まとめたことにより生じる解像度の低下とこれに伴うエッジ部の画質の低下を抑制するために、画素単位でエッジ部を検出して、エッジ部だけに異なる処理を施すとすると、エッジ部の検出等に時間がかかってしまい、画素をまとめたことによる処理速度の向上という利点を十分に享受することができない。
【課題を解決するための手段】
【００１０】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の態様又は適用例として実現することが可能である。
【００１１】
（１）本発明の第１の態様として、多階調の画像を、当該画像を構成する画素を複数個ずつまとめた画素群を単位として処理する画像処理装置が提供される。この画像処理装置は、前記画素群の取り得る階調値である画素群階調値ごとに、前記画素群階調値に対応して前記画素群内の複数の画素の各々に形成すべきドットであって表現可能な階調値の異なる少なくとも複数種類のドットの配置を、前記ドットを形成しない場合を含めて予め決定し、前記画素群階調値と前記ドットの配置との対応関係として記憶する記憶部と、前記画像から順次取り出した画素群の前記画素群階調値により前記対応関係を参照することで、前記画素群階調値に対応したドット配置を特定する特定部と、を備える。ここで、前記記憶部は、前記対応関係を、前記画素群内にエッジがある場合に適用する対応関係である第１対応関係と、前記画素群内にエッジがない場合に適用する第２対応関係として記憶してよい。前記第１対応関係は、前記第２対応関係より、少なくとも所定の階調値より高い領域で、前記画素群階調値に対して、前記階調値の異なる複数種類のドットのうち階調値の低い側のいずれかのドットの形成割合が高い対応関係であってよい。前記特定部は、前記取り出した画素群毎に、当該画素群内の各画素の階調値に従って、前記画素群内にエッジが存在するか否かを判断する画素群内エッジ判断部と、前記画素群内にエッジが存在すると判断した場合には、前記第１対応関係を用いて、前記画素群内に形成すべきドットの配置を特定し、該特定したドットの配置を出力する第１特定部と、前記画素群内にエッジが存在しないと判断した場合には、前記画素群に対応する前記ドットの配置を前記画素群階調値に従って、前記第２対応関係を参照することにより特定し、該特定したドットの配置を出力する第２特定部と、を備えてよい。
【００１２】
この画像処理装置によれば、画素群内エッジ判断部が、取り出した画素群毎に、画素群内の各画素の階調値に従って、画素群内にエッジが存在するか否かを判断し、その画素群内にエッジが存在すると判断した場合には、第１対応関係を用いて、前記画素群内に形成すべきドットの配置を特定し、該特定したドットの配置を出力する。このとき、第１対応関係を、第２対応関係より、少なくとも所定の階調値より高い領域で、画素群階調値に対して、前記階調値の異なる複数種類のドットのうち階調値の低い側のいずれかのドットの形成割合が高い対応関係としておけば、画素群内にエッジが存在しないと判断した場合に、第２特定部が、第２対応関係を参照することにより特定するドットの配置より、階調値の低い側のいずれかのドットの形成割合を高めることができるので、低階調領域の画質を改善できる。階調値の異なる複数種類のドットのうち階調値の低い側のいずれかのドットの形成割合が高い対応関係として、画素群として再現する階調値が同一またはほぼ同等で画素群内に発生するドット数を増やす対応関係を採用すれば、低濃度の細線などが途切れるといった不具合を改善できるなど、低階調領域の画質を改善できる。階調値の異なる複数種類のドットのうち階調値の低い側のいずれかのドットの形成割合が高い対応関係として、画素群内に発生するドット数を同一またはほぼ同等で画素群内に発生するドットを、よりドットサイズの小さい低階調のドットにする対応関係を採用すれば、形成されるドットの滲みが抑制されるので、表現される画像の鮮鋭度が高まり、特に高濃度の文字などの再現に優れる。
【００１３】
（２）こうした画像処理装置において、前記画素群内エッジ判断部は、前記取り出した画素群毎に、当該画素群内に存在する高階調画素の階調値と前記高階調画素より階調値が低い低階調画素の階調値との隔たりに応じて、前記画素群内にエッジが存在するか否かを判断するものとしてもよい。こうすれば、画素群内にエッジが存在するか否かを容易に判断することができる。エッジが存在するかのこうした判断は、例えば、画素群内に存在する高階調画素の階調値として画素群内の最大階調値を用い、この高階調画素より階調値が低い低階調画素の階調値として画素群内の最小階調値を用い、両者の差を、隔たりとして、エッジの判定を行なうものが考えられる。あるいは、前者を、所定の階調値より高い階調の画素の階調値あるいはそれらの平均値とし、後者を、所定の階調値未満の階調値の画素の階調値あるいはそれらの平均値とし、両者の差を、隔たりとしてエッジの判定を行なってもよい。
【００１４】
（３）こうした画像処理装置において、前記第１特定部は、前記高階調画素に対応した前記ドットの配置を前記高階調画素の階調値に従って、前記低階調画素に対応した前記ドットの配置を前記低階調画素の階調値に従って、それぞれ前記第１対応関係を参照することにより特定し、前記高階調画素の階調値および前記低階調画素の階調値によりそれぞれ特定したドットの配置を合成して出力するものとしてよい。こうすれば、高階調画素のドットの配置も低階調画素のドットの配置も、同じように、第１対応関係を同じように参照するだけで特定でき、構成を簡略化することができる。もとより、第１対応関係を参照するのは、高階調画素に限り、低階調画素については、第１対応関係以外の関係、例えば第２対応関係を参照して、ドット配置を決定するようにしてもよい。文字や線などの構成要素となりやすい高階調画素について、第１対応関係を参照してドットの配置が決定されれば、合成した場合でも、文字や線などが再現されやすくなる、という利点が得られる。
【００１５】
（４）こうした画像処理装置において、前記第１特定部は、前記画素群内における少なくとも前記高階調画素の配置を記憶すると共に、前記第１対応関係を参照することにより、前記高階調画素に対応した前記ドットの配置を前記画素群全体に対して特定し、前記第１対応関係を参照することにより、前記低階調画素に対応した前記ドットの配置を前記画素群全体に対して特定し、前記特定した前記高階調画素に対応した前記ドットの配置と、前記特定した前記低階調画素に対応した前記ドットの配置とを、前記高階調画素の配置に従って合成して出力するものとしてよい。こうすれば、前記高階調画素の階調値および前記低階調画素の階調値によりそれぞれ特定したドットの配置の合成を、容易に行なうことができる。
【００１６】
（５）上記の各画像処理装置において、前記画素群について、隣接する画素群との間で前記画素群階調値に所定以上の隔たりがあるか否かを判断し、所定以上の隔たりがあると判断した場合には、当該画素群に対して、前記第１特定部による前記ドットの配置の特定と前記出力とを行なわせるものとしてもよい。こうすれば、画像上のエッジが、画素群内にあっても画素群の間にあっても、同じように扱うことができる。
【００１７】
（６）上記の各画像処理装置において、第１対応関係および第２対応関係は、前記画素群階調値に応じて前記画素群に形成するドットの種類と個数とを特定する多値化対応値と、前記画素群内のドット形成の順序を示す順序値との組み合わせからなるものとしてよい。こうすれば、画素群階調値に応じて第１，第２対応関係を参照して、多値化対応値と順序値の組み合わせにより、画素群に形成するドットの種類と個数を特定し、更にこれを順序値により並べることで、画素群内のドットの配置を容易に特定することができる。
【００１８】
（７）こうした画像処理装置において、前記多値化対応値と前記順序値とは、少なくとも１０００画素に対応した大域ディザマスクから前記画素群の大きさに応じて取り出す局所ディザマスクに含まれる閾値の大小関係を反映して定めるものとしてよい。こうすれば、ドットの配置に、大域ディザマスクの特性を反映させることができる。
【００１９】
（８）こうした画像処理装置において、第１対応関係および第２対応関係は、少なくとも１０００画素に対応した大域ディザマスクから前記画素群の大きさに応じて取り出す局所ディザマスクに含まれる複数の閾値に基づき、前記各局所ディザマスク毎に定められ、前記画素群階調値に応じて前記画素群に形成されるドットの種類と個数とが異なる階調範囲を示すドット切替階調値を特定する切替階調エンコードテーブル、および前記各局所ディザマスク毎に定められ、前記ドット切替階調値から前記複数種類のドットの配置を特定する切替階調デコードテーブルとして用意してもよい。こうすれば、第１，第２対応関係として用意された切替階調エンコードテーブルおよび切替階調デコードテーブルを、それぞれ１回参照するだけで、ドットの配置を特定することができる。
【００２０】
（９）本発明の第２の態様として、上記のいずれかの画像処理装置と、この画像処理装置からのデータを受け取って画像を形成する画像出力装置とを備える画像処理システムが提供される。この画像処理システムでは、前記画像出力装置は、前記画像処理装置の第１，第２特定部が特定した前記ドットの配置を受け取って、該特定されたドットの配置に従って複数種類のドットを形成するドット形成部を備えてよい。この画像処理システムによれば、画像処理装置と画像出力装置を分離でき、画像処理装置から画像出力装置に出力するデータ量を低減できる。
【００２１】
（１０）本発明は以上の構成の他、画像処理方法やその画像処理方法をコンピューターを用いて実現するコンピュータープログラムとしても実施することができる。あるいは、画像形成装置や画像処理装置の製造方法などの態様でも実施することができる。
【図面の簡単な説明】
【００２２】
【図１】実施形態の画像処理システムの概略構成を示す概略構成図。
【図２】実施形態における画像印刷処理を示すフローチャート。
【図３】実施形態における動作の概要を示す説明図。
【図４】第１対応関係を導くための入力階調値と大中小ドット密度との関係を例示するグラフ。
【図５】第２対応関係を導くための入力階調値と大中小ドット密度との関係を例示するグラフ。
【図６】第１，第２対応関係を求める手法を示す説明図。
【図７】ディザマスクの一例を示す説明図。
【図８】多値化対応値を求める手順を示す説明図。
【図９】大中小ドットと多値化対応値との対応を示す説明図。
【図１０】閾値群番号と順序値との関係を例示する説明図。
【図１１】多値化テーブルを例示する説明図。
【図１２】画素群Ｐ（ｘ，ｙ）からドット配置を求めるまでの処理の流れを示す説明図。
【図１３】ドット配置特定処理ルーチンの詳細を示すフローチャート。
【図１４】画素群内の画素値を演算する処理を示すフローチャート。
【図１５】非エッジ画素群ドット配置決定処理を示すフローチャート。
【図１６】エッジ画素群ドット配置決定処理を示すフローチャート。
【図１７】エッジ画素群ドット配置決定処理によりドットが形成される様子を示す説明図。
【図１８】画素群間エッジ処理ルーチンを示すフローチャート。
【図１９】第２実施形態におけるドット配置特定処理ルーチンの要部を示すフローチャート。
【図２０】特定の閾値群番号の閾値に対して、大中小ドットの形成がどのように変化するかを例示する説明図。
【図２１】入力階調値に対するドット切替階調値の関係を例示する説明図。
【図２２】ドット切替階調値に対するドット形成の配置を例示する説明図。
【図２３】第3実施形態の処理の概要を示す説明図。
【発明を実施するための形態】
【００２３】
Ａ．第１実施形態：
Ａ１）ハードウェア構成：
図１は、実施形態の画像処理システム１０としてのコンピューター８０とカラープリンター２０の構成を示す説明図である。コンピューター８０は、ＣＰＵ８１とメモリー８２を備える。もとよりコンピューター８０は、カラープリンター２０と接続するためのインタフェースやディスプレイなどの出力機器、キーボードなどの入力機器なども備えるが、図示は省略した。
【００２４】
カラープリンター２０はシアン，マゼンタ，イエロ，ブラックの４色インクのドットを形成可能なインクジェットプリンターである。もちろん、これら４色のインクに加えて、染料または顔料濃度の低いシアン（淡シアン）インクと、染料または顔料濃度の低いマゼンタ（淡マゼンタ）インクとを含めた合計６色のインクドットを形成可能なインクジェットプリンターを用いることもできる。あるいは、赤や緑、黄色、青などの特色インクを搭載することも差し支えない。更には、ブラックの明度を高くしたグレーインクなどを、１または複数種類搭載したプリンターを用いることも可能である。
【００２５】
カラープリンター２０は、図示するように、キャリッジ４０に搭載された印字ヘッド４１を駆動してインクの吐出およびドット形成を行なう機構と、このキャリッジ４０をキャリッジモーター３０によってプラテン３６の軸方向に往復動させる機構と、紙送りモーター３５によって印刷用紙Ｐを搬送する機構と、ドットの形成やキャリッジ４０の移動および印刷用紙の搬送を制御する制御回路６０などから構成されている。キャリッジモーター３０の回転は、プリー３２との間に架設された無端ベルト３１を介して、キャリッジ４０に伝えられる。キャリッジ４０は、シャフト３３に対して摺動可能に取り付けられ、キャリッジモーター３０の正転・逆転に伴い、シャフト３３に沿って、印刷用紙Ｐの幅方向に往復動する。
【００２６】
キャリッジ４０には、Ｋインクを収納するインクカートリッジ４２と、Ｃインク，Ｍインク，Ｙインクの各種インクを収納するインクカートリッジ４３とが装着されている。インクカートリッジ４２，４３をキャリッジ４０に装着すると、カートリッジ内の各インクは図示しない導入管を通じて、印字ヘッド４１の下面に設けられた各色毎のインク吐出用ヘッド４４ないし４７に供給される。
【００２７】
制御回路６０は、ＣＰＵや、ＲＯＭ、ＲＡＭ、ＰＩＦ（周辺機器インターフェース）等がバスで相互に接続されて構成されている。制御回路６０は、キャリッジモーター３０および紙送りモーター３５の動作を制御することによってキャリッジ４０の主走査動作および副走査動作を制御するとともに、コンピューター８０から供給される印刷データに基づいて、各ノズルから適切なタイミングでインク滴を吐出する制御を行なう。こうして、制御回路６０の制御の下、印刷媒体上の適切な位置に各色のインクドットを形成することによって、カラープリンター２０はカラー画像を印刷することができる。
【００２８】
各色のインク吐出ヘッドからインク滴を吐出する方法には、種々の方法を適用することができる。すなわち、ピエゾ素子を用いてインク滴を吐出する方式や、インク通路に配置したヒータでインク通路内に泡（バブル）を発生させてインク滴を吐出する方法などを用いることができる。また、インク滴を吐出する代わりに、熱転写などの現象を利用して印刷用紙上にインクドットを形成する方式や、静電気を利用して各色のトナー粉を印刷媒体上に付着させる方式のプリンターを使用することも可能である。
【００２９】
以下では、インクを吐出するシリアルタイプのカラープリンター２０を例にとって説明するが、ラインプリンターやページブリンターの形式を採用することも差し支えない。画像の形成を、インク滴と同じように、単位面積当りの濃度が異なる複数種類のドットを単位として行なうのであれば、インク溶融型プリンターであれ、トナーを転写するタイプのプリンターであれ、用いることができる。
【００３０】
以上のハードウェア構成を有するカラープリンター２０は、キャリッジモーター３０を駆動することによって、各色のインク吐出用ヘッド４４ないし４７を印刷用紙Ｐに対して主走査方向に移動させ、また紙送りモーター３５を駆動することによって、印刷用紙Ｐを主走査方向と交差する方法である副走査方向に移動させる。制御回路６０は、キャリッジ４０の主走査および副走査の動きに同期させながら、適切なタイミングでノズルを駆動してインク滴を吐出することによって、カラープリンター２０は印刷用紙Ｐ上にカラー画像を印刷している。
【００３１】
カラープリンター２０の制御回路６０内にはＣＰＵ，ＲＡＭ，ＲＯＭなどが搭載されていることから、コンピューター８０が行なう処理をカラープリンター２０内で実施することも可能である。このような場合は、デジタルカメラや携帯電話などで撮影した画像の画像データをカラープリンター２０に直接供給して、インタフェースパネル５９から指示することで、制御回路６０内で必要な画像処理を実施することにより、カラープリンター２０から直接画像を印刷することも可能となる。画像から印刷用のドットの形成の有無を指定したドットデータを形成する場合、コンピューター８０内のプリンタードライバーなどが画像処理装置に相当し、カラープリンター２０が画像形成装置に相当する。他方、デジタルカメラなどから直接データを受け取って印刷する場合は、カラープリンター２０内に画像処理装置と画像形成装置とが内蔵されていることになる。以下の説明では、コンピューター８０内のプリンタードライバーが画像処理装置として動作する。
【００３２】
Ａ２）画像処理の概要：
画像処理システム１０が行なう画像印刷処理について、図２に基づいて簡単に説明する。図２に示した処理は、コンピューター８０およびカラープリンター２０により、実行される。この処理は、ユーザーがコンピューター８０を操作して、特定の画像をカラープリンター２０で印刷させようとする場合に実行される。
【００３３】
図２に示した画像印刷処理が開始されると、まず画像データを読み込む処理を開始する（ステップＳ１００）。ここでは、画像データはＲＧＢカラー画像データであるものとして説明するが、カラー画像データに限らず、モノクロ画像データについても同様に適用することができる。また、カラープリンターに限らず単色プリンターについても同様に適用することが可能である。
【００３４】
カラー画像データの読み込みに続いて、色変換処理を行なう（ステップＳ１０２）。色変換処理とは、Ｒ，Ｇ，Ｂの階調値の組合せによって表現されているＲＧＢカラー画像データを、印刷のために使用されるインク各色についての階調値の組合せによって表現された画像データに変換する処理である。前述したように、カラープリンター２０はＣ，Ｍ，Ｙ，Ｋの４色のインクを用いて画像を印刷している。そこで、第１実施例の色変換処理ではＲＧＢ各色によって表現された画像データを、Ｃ，Ｍ，Ｙ，Ｋの各色の階調値によって表現されたデータに変換する。色変換処理は、色変換テーブル（ＬＵＴ）と呼ばれる３次元の数表を参照することで行なう。ＬＵＴには、ＲＧＢカラー画像データに対して、色変換によって得られるＣ，Ｍ，Ｙ，Ｋ各色の階調値が予め記憶されている。ステップＳ１０２の処理では、このＬＵＴを参照することにより、ＲＧＢカラー画像データをＣ，Ｍ，Ｙ，Ｋ各色の画像データに迅速に色変換することが可能である。
【００３５】
色変換処理を終了すると、続いて解像度変換処理を開始する（ステップＳ１０４）。解像度変換処理とは、画像データの解像度を、プリンター２０が画像を印刷する解像度（印刷解像度）に変換する処理である。画像データの解像度が印刷解像度よりも低い場合は、画素間に新たな画像データを生成し、逆に画像データの解像度が印刷解像度よりも高い場合には、一定の割合でデータを間引くことによって、画像データの解像度を印刷解像度に一致させる処理を行なう。両者の解像度が一致していれば、この処理は省略することができる。
【００３６】
画像の解像度を印刷解像度に変換したら、コンピューター８０は、ドット配置特定処理を実行する（ステップＳ１０６）。ドット配置特定処理の詳細な内容は後述するが、図３を用いて、この処理の概要について説明する。ドット配置特定処理では、互いに所定の位置関係にある画素を所定個数ずつ画素群としてまとめることにより、１つ画像を複数の画素群に分割する。画素群としてまとめられ画素数は、必ずしも全ての画素群が同数である必要はなく、例えば、複数の画素数を規則的に切り換えたり、あるいは画像中での位置に応じて画素群にまとめられる画素数を切り換えることも可能である。図３では、理解の便を図って、最も単純な場合として全画素群が同数の画素（２×２）を有するものとして説明する。
【００３７】
画像の縦横をｘ，ｙとして表記する。この例では、ｘ方向は、プリンター２０副走査方向（図１）であり、ｙ方向は、プリンター２０の主走査方向である。画素群は、Ｐ（ｘ，ｙ）として特定することができる。ドット配置特定処理では、まずこの画素群Ｐ（ｘ，ｙ）を取り込み、この画素群Ｐ（ｘ，ｙ）内にエッジがあるか否かの判断を行なう。エッジがあるか無いかは、種々の手法が考えられるが、例えば、画素群Ｐ（ｘ，ｙ）内の複数の画素のうちの最も階調値の高い画素と低い画素との階調値の差が所定以上であれば、エッジがあると判定することができる。エッジがあると判断した場合には、第１特定処理を行ない、エッジがないと判断した場合には、第２特定処理を行なう。この処理は特定部の処理に対応している。
【００３８】
第１特定処理では、記憶部に記憶された第１対応関係を参照することにより、ドットの配置を特定する。エッジが存在するということは、画素群内に比較的階調値の高い画素と相対的に低い画素とが存在するということを意味する。そこで、比較的階調値の高い画素を高階調値画素ＨＤに分類し、相対的に階調値の低い画素を低階調値画素ＬＤに分類する。分類の手法は後で説明する。その上で、第１特定処理では、全画素が高階調値画素ＨＤであるとして、第１対応関係を参照してドット配置を求め、もう一度、今度は、全画素が低階調値画素ＬＤであるとして、第１対応関係を参照してドット配置を求め、その上で、高階調値画素ＨＤと低階調値画素ＬＤとの配置に応じて、求めたドット配置を合成して、出力する。図３では、高階調画素ＨＤをハッチした画素として示し、低階調画素ＬＤを空白の画素として示した。
【００３９】
他方、第２特定処理は、エッジがない場合に行なわれる処理なので、画素群内の画素の階調値を一つの値（例えば全画素の階調値の平均値）により代表させ、この代表値に基づいて、記憶部に記憶された第２対応関係を参照することにより、ドットの配置を特定し、出力する。
【００４０】
第１対応関係と第２対応関係は、それぞれ図３の最下段に例示したように、入力階調値とドット形成の割合との関係から導かれている。図３最下段に示した入力階調値とドット形成の割合との関係を、図４、図５に示した。図４は、エッジがあると判断された場合に参照される第１対応関係を求める際に用いられた入力階調値とドット形成の割合との関係の一例を示す。他方、図５は、エッジがないと判断された場合に参照される第２対応関係を求める際に用いられた入力階調値とドット形成の割合との関係の一例を示す。両図において、ＬＳ１，ＬＳ２は小ドットの形成の割合を示し、ＬＭ１，ＬＭ２は中ドットの形成の割合を示し、ＬＬ１，ＬＬ２は大ドットの形成の割合を示す。また、入力階調値は大ドットに換算した時のドットの形成の割合に対応し、小ドットは大ドットの１／４、中ドットは大ドットの１／２に相当するとしている。そのため図４のＬＳ１／４＋ＬＭ１／２＋ＬＬ１は入力階調値と一致しており、図５も同様である。
【００４１】
ここで、エッジがある場合に参照される第１対応関係は、第２対応関係と比較すると、次の特徴を有する。
（Ａ）小ドットの形成の割合の最大値が大きい。
（Ｂ）中ドットの形成の割合の最大値が大きい。
（Ｃ）大ドットが形成されにくい。大ドットの形成が開始される入力階調値が高い。
（Ｄ）中間入力階調域において、大中小ドットの形成の割合の合計値が大きい。
これらの特徴のうち、少なくとも一つを満たした関係であれば、第２対応関係に対する第１対応関係として扱うことができる。なお、形成するドットが２種類の場合（大小ドット）には、（Ａ）（Ｃ）（Ｄ）の少なくともいずれか一つの特徴を有する関係を第１対応関係とすることができる。
【００４２】
以上が、ドット配置特定処理（ステップＳ１０６）の概要である。図３に示した手法によりドットの配置を特定すると、上記特徴から、画素群内にエッジがあると判断された場合には、単位面積当りの濃度が相対的に低いドットが、単位面積当りの濃度が相対的に高いドットよりも、高い割合で形成される。このことは、エッジの再現性や細線の連続性を確保する上で、第１対応関係が望ましいということを意味する。
【００４３】
こうしてドット配置を特定した後、ドット形成の処理を行なう（ステップＳ１１０）。この処理は、コンピューター８０のプリンタードライバーが、ドットの形成をプリンター２０に指示する処理である。もとより、この指示を受けて、カラープリンター２０の制御回路６０に内蔵されたＣＰＵが、具体的なドット形成の制御を実施する。その意味では、図２に示したステップＳ１００〜Ｓ１０６までがコンピュータ−８０のブリンタドライバにより行なう処理、ステップＳ１１０がカラープリンター２０により実行される処理、とみなすことも可能である。いずれにせよ、ドット配置特定処理によるドット形成位置の特定を受けて、カラープリンター２０によるドットの形成が行なわれる。
【００４４】
Ａ３）第１，第２対応関係の用意：
上述したように、特定部、詳しくは第１特定処理、第２特定処理では、第１，第２対応関係を参照することで、形成するドットの配置を決定している。このため、画像印刷処理（図２）に先立って、第１，第２対応関係が予め求められている必要がある。そこで、次に、第１，第２対応関係を用意する方法について説明する。この方法は、例えば特開２００６−１４０３６号公報などに詳しく説明されているので、ここでは簡略に説明する。
【００４５】
図６は、第１，第２対応関係を求める手法を示す説明図である。この例では、図４および図５に示した入力階調値とドット形成の割合から、６４画素×６４画素分の大きさを持つディザマスクを利用して、第１多値化テーブルと第２多値化テーブルおよび共通の順序値テーブルを求める。ここで、ディザマスクは、図７に一例を示すように、縦（副走査方向）に６４画素分、横（主走査方向）に６４画素分、の大きさを有する大域的ディザマスクである。このディザマスクは、画像の階調値と比較される値１〜２５５の閾値が、４０９６箇所に万遍なく、かつこの閾値を利用して形成されたドットの配置がブルーノイズ特性を備えるように、記憶されている。またはここで、閾値の階調値が１〜２５５の範囲から選択されているのは、本実施例では、大ドット、中ドット、小ドットの形成の割合を示すデータが階調値０〜２５５の値を取り得る１バイトデータとしていることに加えて、階調値と閾値とが等しい場合には、その画素にはドットを形成するものと判断していることによる。但し、階調値、閾値ともに更にビット数が大きな整数データや実数データであっても差し支えない。
【００４６】
利用するディザマスクの特性は問わない。ドットの分散性をよくする場合には、ブルーノイズ特性またはグリーンノイズ特性を有するディザマスクを用いれば良い。この他、ランダムな特性（ホワイトノイズ特性）を有するものや、低周波側にある程度の特性値を有するピンクノイズ特性のディザマスクなども用いることができる。ドット集中型の特性を有するディザマスクも利用可能である。対象となる画像の画素数がディザマスクの大きさより大きければ、ディザマスクを繰り返し使用すればよい。繰り返し使用する際には、そのまま繰り返しても良いし、数画素分ズラしながら繰り返し使用しても良い。繰り返し使用する場合に、ディザマスクを構成する閾値の数が１０００個より更に大きなサイズのディザマスクを用いれば、使用されるディザマスクの繰り返し周期が更に視認されにくくなり、望ましい。例えば６４×６４，６４×１２８，１２８×１２８や更にこれより大きなサイズのディザマスクを用いることが望ましい。なお、二進数でデータを扱っている場合には、ディザマスクの縦横の大きさを２の累乗にしておけば、ある画素に適用すべき閾値の位置を容易に特定できる。もとより２の累乗以外の大きさであっても差し支えない。
【００４７】
図７に示したディザマスクは、２×２の１つずつひとまとまりにされ、閾値群を形成する。副走査方向をｍ、主走査方向をｎで表すものとすれば、閾値群は、
Ｂ（ｍ，ｎ）    ｍ：１〜３２、ｎ：１〜３２
として表すことができる。このＢ（ｍ，ｎ）を、以下、閾値群番号と呼ぶ。３２×３２＝１０２４個の閾値群は、４つの閾値の組み合わせになっている。この一つの閾値群番号Ｂ（ｍ，ｎ）から、第１，第２多値化テーブルを構成する対応関係の一つが作られる。以下、その手法について説明する。
【００４８】
図８は、図４に示した入力階調値とドット形成の割合との関係と、ディザマスクの一つの閾値群番号Ｂ（１，３）とから、多値化対応値を求める手順を示している。この処理は、入力階調値の範囲０〜２５５について順次行なわれる。画像を画素群Ｐ（ｘ，ｙ）に分け、そのうちの一つの画素群を代表する階調値がＤＳ１であるとする。図５において、入力階調値が値ＤＳ１であれば、この入力階調値ＤＳ１に対する小ドットの形成の割合ＬＳ１が値４１、中ドットの形成の割合ＬＭ１が値１９０、大ドットの形成の割合ＬＬ１が値１２となる。各値は、図７の閾値が１〜２５５の範囲の値をとることから、これに合わせて、０〜２５５の値をとるものとしてある。従って、大ドットの形成の割合ＬＬ１が値１２であるとは、１２／２５５≒０．０５、つまり入力階調値がＤＳ１であるときの大ドットの形成の割合は、全体の約５％となるべきことを意味している。そこで、この各ドットの形成の割合を以下ドット密度と呼ぶ。
【００４９】
閾値群番号Ｂ（１，３）は、図７に示されている様に、左上から右下にかけて順番に「７０，１８６，２４２，５」の４つの閾値を有している。そこで、まず画素群Ｐ（ｘ，ｙ）における大ドットのドット密度ＬＬ１＝１２と、閾値群番号Ｂ（１，３）の各閾値とを比較する。この結果、右下の画素については、１２≧５なので、右下の画素にのみ大ドットが形成されることになる。次に、画素群Ｐ（ｘ，ｙ）における中ドットのドット密度を取り出し、これに大ドットのドット密度を加えて、ドット密度の合計値ＴＴ１を求める。つまり、ＴＴ１＝ＬＬ１＋ＬＭ１＝１２＋１９０＝２０２、となる。この合計値ＴＴ１を用いて、閾値群番号Ｂ（１，３）内の各閾値との比較を再度行なう。そうすると、右下の画素（対応する閾値＝５）と右上の画素（対応する閾値＝１８６）と左上の画素（対応する閾値＝７０）とにおいて、ドット密度の合計値ＴＴ１が、対応する閾値より大きくなる。右下の画素には既に大ドットが配置されているので、この結果左上の画素と右上の画素とに中ドットが配置される。
【００５０】
最後に、画素群Ｐ（ｘ，ｙ）における小ドットのドット密度を取り出し、これに既に求めたドット密度の合計値ＴＴ１を加えて、ドット密度の合計値ＴＴ１を更新する。つまり、ＴＴ１＝ＬＬ１＋ＬＭ１＋ＬＳ１＝１２＋１９０＋４１＝２４３、となる。この合計値ＴＴ１を用いて、閾値群番号Ｂ（１，３）内の各閾値との比較を再度行なう。そうすると、全ての画素において、更新したドット密度の合計値ＴＴ１が、対応する閾値より大きくなる。右下の画素には大ドットが、左上と右上の画素には中ドットが、それぞれ既に配置されているので、この結果左下の画素に小ドットが配置される。このように、各ドット密度を順次加えて、閾値群内の各閾値との比較を行なうのは、特開２００６−１４０３６号公報に示された手法による。閾値群番号Ｂ（１，３）を用いると、画素群Ｐ（ｘ，ｙ）には、結果的に、大ドット１、中ドット２、小ドット１が配置された。
【００５１】
今、２×２、つまり４つの画素からなる画素群に大中小のドットを配置する場合を考えると、大中小各ドットの個数は、図９に示したように、大中小全てが配置されない場合から全ての画素に大ドットが形成される場合まで、全部で３５通りの組合せがあることが分かる。この３５通りの組合せを区別するために、多値化対応値として０〜３４を割り当てた。多値化対応値は、ドットの種類と個数の組合わせに対応するもので、対応関係が一意に定まれば、どのような順序で割り当てても差し支えなく、ランダムに割り当てても良いが、ここでは、小ドット相当個数の順とすることで、画素群としての階調順に並ぶようにした。小ドットの相当個数とは、画素群に大中小ドットが適宜割り当てられたとき、画素群として、小ドット何個分のドットが配置された状態に相当するかを示す数値である。本実施形態では、大ドット１個が中ドット２個分に相当し、中ドット１個が小ドット２個分に相当するものとした。この関係は大、中、小ドットのインク液滴の重量比とほぼ同じになるように決定した。この関係に従って、形成されるドットの種類と個数から、画素群当り、小ドット何個分の階調表現に相当するかを求めたのが、図９である。図９は、小ドット相当個数の小さい方から順に配列し、この順序に多値化対応値（０〜３４）を割り当てている。つまり、最も小ドット相当個数が小さくなる場合（一つもドットが形成されない場合）を多値化対応値０とし、最も小ドット相当個数が大きくなる場合（４つの画素全てに大ドットが形成される場合）を多値化対応値３４として、多値化対応値を割り当てた。このようにしたため、本実施形態では、図８に示した閾値群番号Ｂ（１，３）では、大中小ドットがそれぞれ１、２、１個形成されており、図９の対応関係では、多値化対応値は値２５となる。閾値群番号Ｂ（ｍ，ｎ）が４つの閾値から構成されている場合には、多値化対応値は、０〜３４までの３５種類しか存在しないので、６ビット有れば全ての多値化対応値を表現することができる。
【００５２】
他方、画素群Ｐ（ｘ，ｙ）に含まれる４つの画素にどの順序でドットが形成されるかは、その画素群Ｐ（ｘ，ｙ）に対応する閾値群番号Ｂ（ｍ，ｎ）の閾値の大小の組み合わせにより決まる。図８に示したＢ（１，３）では、ドットは、右下→左上→右上→左下の順序で形成される。この順序を順序値Ｏｄ（ｍ，ｎ）と呼ぶ。図７に示したディザマスクを例にとれば、図１０に示したように、閾値群が異なれば、順序値も異なるが、閾値群番号Ｂ（１，２）と閾値群番号Ｂ（１，３）のように、順序値が同じになる場合も存在する。画素群Ｐ（ｘ，ｙ）が４つの画素から構成されている場合には、この順序値は、４！＝２４通りしか存在しない。従って、５ビットあれば、全ての順序値Ｏｄ（ｍ，ｎ）を表現することができる。
【００５３】
閾値群番号Ｂ（ｍ，ｎ）は、本実施形態では、Ｂ（１，１）〜Ｂ（３２，３２）まで、１０２４個存在する。一つの閾値群番号Ｂ（ｍ，ｎ）について、入力階調値を値０〜最大値２５５まで変化させたとき、大中小のドットがどのように現れるかを調べると、図９に示した全ての場合が生じる訳ではなく、閾値の組み合わせによって、３５種類の多値化対応値のうち、１０程度の多値化対応値が現れる。この様子を図１１に示した。全ての閾値群番号Ｂ（ｍ，ｎ）について、入力階調値の増加に従って、変化する多値化対応値を並べた図１１のデータを、多値化テーブルと呼ぶ。この多値化テーブルは、元になったディザマスクの内容（閾値の配列）によっても変わるが、入力階調値とドット形成の割合が異なれば（例えば図４、図５）、同様に変化する。この結果、いずれの多値化テーブルを用いるかにより、再現される画像も変化する。
【００５４】
以上説明した各要素、つまり画素群Ｐ（ｘ，ｙ）、これを多値化するための閾値群番号Ｂ（ｍ，ｎ）、各閾値群番号Ｂ（ｍ，ｎ）から求められた多値化テーブル、および順序値Ｏｄ（ｍ，ｎ）を用いて、画素群Ｐ（ｘ，ｙ）からドットの配置を求める流れについてまとめる。図１２は、画素群Ｐ（ｘ，ｙ）からドット配置を求めるまでの処理の流れを示す説明図である。図１２に示すように、まず画素群Ｐ（ｘ，ｙ）が特定されると、この画素群Ｐ（ｘ，ｙ）に含まれる４つの画素の階調値ｄａ，ｄｂ，ｄｃ，ｄｄの平均値ＰＡ（ｘ，ｙ）を求める。他方、この画素群に適用する閾値群番号Ｂ（ｍ，ｎ）を求める。ディザマスクは、３２×３２の画素群に対応する大きさを有するので、次式（１）により求めることができる。
ｍ＝（（ｘ−１） ｍｏｄ ３２）／２＋１
ｎ＝（（ｙ−１） ｍｏｄ ３２）／２＋１        …  （１）
従って、画素群Ｐ（ｘ，ｙ）が与えられれば、この画素群Ｐ（ｘ，ｙ）に適用すべき閾値群番号Ｂ（ｍ，ｎ）を知ることができる。なお、ここで「Ａ  ｍｏｄ  Ｂ」とは、値Ａを値Ｂで除した場合の剰余を意味している。
【００５５】
こうして求めた画素群Ｐ（ｘ，ｙ）に含まれる画素の階調値の平均値ＰＡ（ｘ，ｙ）と閾値群番号Ｂ（ｍ，ｎ）とを用いたエンコード処理を行なう。エンコード処理とは、図１１に例示した多値化テーブルを参照して、平均値ＰＡ（ｘ，ｙ）に対応する多値化対応値を取得することを言う。こうして得られた多値化対応値と閾値群番号Ｂ（ｍ，ｎ）の順序値Ｏｄ（ｍ，ｎ）とを用いたデコード処理を行なう。デコード処理とは、上記のエンコード処理で得られた多値化対応値と、閾値群番号に対応した順序値Ｏｄ（ｍ，ｎ）とにより、ドットの配置を決定する処理である。エンコード処理により、図１１の多値化テーブルを参照することで、多値化対応値として、例えば値２５が得られれば、大ドット１、中ドット２、小ドット１形成することになる。閾値群番号Ｂ（ｍ，ｎ）に対応する順序値が、左上→右上→左下→右下であれば、図１２の最下段に示したように、この順に、大ドット、中ドット、中ドット、小ドットが形成される。
【００５６】
以上説明したように、本実施形態の画像処理システム１０では、画像処理を行なう画像処理装置、つまり本実施形態のコンピュータ−８０のメモリー８２には、予め、こうした多値化テーブルが用意されている。多値化テーブルは、図４に示したエッジ画素群に対する入力階調値−ドット密度の関係から作られた第１多値化テーブルと、図５に示した非エッジ画素群に対する入力階調値−ドット密度の関係から作られた第２多値化テーブルとが用意されている。コンピュータ−８０は、図２に示したドット配置特定処理を行なうことで、上記のエンコード処理を行ない、各画素群Ｐ（ｘ，ｙ）に対応する多値化対応値を出力する。本実施形態では、同じコンピューター８０が、この画素群Ｐ（ｘ，ｙ）の多値化対応値と、この画素群Ｐ（ｘ，ｙ）に適用すべき順序値とから、デコード処理を行なって、大中小のドットを形成する配置を決定する。なお、第１，第２多値化テーブルは同じディザマスクを基にして作られているので、順序値テーブルは共通である。
【００５７】
上記の説明では、エンコード処理もデコード処理も、同じコンピューター８０で行なうものとしたが、エンコード処理はコンピュータ−８０で行ない、デコード処理はこの多値化対応値を受け取ったカラープリンター２０で行なうものとしてもよい。カラープリンター２０は、現在扱っている画素群Ｐ（ｘ，ｙ）の位置が分かれば、画素群Ｐ（ｘ，ｙ）に適用する閾値群番号Ｂ（ｍ，ｎ）が分かり、順序値も分かるので、デコード処理をカラープリンター２０側で行なうことは容易である。この場合は、カラープリンター２０側は、全ての順序値を順序値テープルに記憶しておけばよい。
【００５８】
Ａ４）ドット配置特定処理：
そこで、上述したように、第１，第２多値化テーブルおよび順序値テーブルが用意されている、という前提で、図２に示したステップ１０６の処理、つまりドット配置特定処理について、以下説明する。図１３は、ドット配置特定処理ルーチンの詳細を示すフローチャートである。この処理は、解像度変換処理を終えた画像に対して、その原点位置（通常は画像の左上）から順に画素値を読み込みながら行なわれる。この処理が開始されると、まず画素群Ｐ（ｘ，ｙ）を特定する処理を行なう（ステップＳ２００）。ドット配置特定処理が開始された直後は、原点位置の画素群、つまりＰ（１，１）が特定される。
【００５９】
次に、この画素群内の画素値を演算する処理を行なう（ステップＳ２１０）。この処理の内容を図１４に示した。本実施形態では、一つの画素群Ｐ（ｘ，ｙ）内には４つの画素が含まれる。そこで、この４つの画素の階調値を用いて、
最大値Ｄmax の演算：４つの画素のうちの最大階調値を求める処理（ステップＳ２１２）
最小値Ｄmin の演算：４つの画素のうちの最小階調値を求める処理（ステップＳ２１４）
大小差ΔＤの演算：最大値Ｄmax −最小値Ｄmin   を求める処理（ステップＳ２１６）
中間値Ｄmed の演算：（最大値Ｄmax ＋最小値Ｄmin ）／２を求める処理
を求める処理（ステップＳ２１８）、
を行なうのである。
【００６０】
以上の処理を行なった後、求めた大小差ΔＤが、予め定めたエッジ判定閾値Ｅthより大きいか否かの判断を行なう（図１３、ステップＳ２２０）。画素群の中の画素値に大きな隔たりがあれば、画素群内にエッジがあると判断できるからである。大小差ΔＤがエッジ判断閾値以下であれば（ステップＳ２２０：「ＮＯ」）、非エッジ画素群ドット配置決定処理（ステップＳ３００）を実行し、他方大小差ΔＤがエッジ判断閾値より大きければ、エッジ画素群ドット配置決定処理（ステップＳ４００）を行なう。これらの各処理については、後で詳しく説明する。
【００６１】
画素群内にエッジが存在するエッジ画素群であるか否かにより、ステップＳ３００またはＳ４００のいずれかのドット配置決定処理を実行した後、画素群の位置を設定する変数ｙを値１だけインクリメントし（ステップＳ２３０）、１ラスタ分（正確には２ラスタ分）の処理が完了したかを判断する（ステップＳ２４０）。変数ｙをインクリメントしても、画素群Ｐ（ｘ，ｙ）が画像の端まで到達していなければ、ステップＳ２４０での判断は「ＮＯ」となって、処理は上記ステップＳ２００に戻り、画素群を一つ主走査方向に進めて、上記の処理（ステップＳ２００ないしＳ２４０）を繰り返す。
【００６２】
変数ｙをインクリメントしていった結果、画素群Ｐ（ｘ，ｙ）が画像の端まで到達していていれば、ステップＳ２４０での判断は「ＹＥＳ」となるので、変数ｙを値１にリセットする処理と変数ｘを値１だけインクリメントする処理とを行ない（ステップＳ２５０）、全ての画素群についての処理が完了したかを判断する（ステップＳ２６０）。変数ｘを値１だけインクリメントすることで、処理する画素群は副走査方向に１だけ移行する。画像の端まで到達していなければ、ステップＳ２６０での判断は「ＮＯ」となって、処理は上記ステップＳ２００に戻り、画素群を一つ副走査方向に移行した状態で、上記の処理（ステップＳ２００ないしＳ２６０）を繰り返す。変数ｘをインクリメントしていった結果、処理が画像の端まで完了すれば、「ＮＥＸＴ」に抜けて、本処理ルーチンを終了する。
【００６３】
次に、図１３においてステップＳ３００として示した非エッジ画素群ドット配置決定処理について説明する。図１５は、非エッジ画素群ドット配置決定処理を示すフローチャートである。この処理を開始すると、まず画素群Ｐ（ｘ，ｙ）内の各画素の階調値の平均値Ｄave を求める処理を行なう（ステップＳ３１０）。図１２に示したように、４つの画素の階調値がそれぞれｄａ，ｄｂ，ｄｃ，ｄｄであれば、平均値Ｄave は、（ｄａ＋ｄｂ＋ｄｃ＋ｄｄ）／４として求めることができる。次に、この画素群Ｐ（ｘ，ｙ）に適用する閾値群番号Ｂ（ｍ，ｎ）を求める処理を行なう（ステップＳ３２０）。適用すべき閾値群番号Ｂ（ｍ，ｎ）は、既述した式（１）により求めることができる。
【００６４】
続いて、先に求めた平均値Ｄ ave によるエンコード処理を行なう（ステップＳ３３０）。エンコード処理とは、平均値Ｄave で、第２多値化テーブルの閾値群番号Ｂ（ｍ，ｎ）をルックアップすることを意味する。このときの用いられる第２多値化テーブルＴＢ２は、図５に示した入力階調値−ドット形成の割合の関係を元に生成されメモリー８２に記憶されていたテーブルである。この第２多値化テーブルＴＢ２は、後で説明するエッジ画素群ドット配置決定処理（図１６）で用いられる第１多値化テーブルＴＢ１と比べると、低階調領域での小ドットの形成の割合および所定階調値以上での中ドットの形成の割合が、低いということができる。つまり、同じ階調値の画像を形成する上で、低階調領域では、中ドットがより多く形成され、所定階調値以上では、大ドットがより多く形成されることになる。
【００６５】
上記のエンコード処理を終えた後、次に得られた多値化対応値を順序値Ｏｄ（ｍ，ｎ）を用いてデコードする処理を行なう（ステップＳ３４０）。この処理は、順序値テーブルに登録された順序値Ｏｄ（ｍ，ｎ）から処理している画素群Ｐ（ｘ，ｙ）に適用する順序値を特定し、この順序値に従って、得られた多値化対応値が示す大中小ドットの割り当てを行なう処理である。多値化対応値が、例えば値２５であれば、図９に示したように、この多値化対応値は、大ドット１、中ドット２、小ドット１を形成することを意味しているから、これらの大中小ドットを順序値が示す順序で、各画素に配置する。その後、「ＮＥＸＴ」に抜けて、本処理ルーチンを終了する。
【００６６】
次に、図１３においてステップＳ４００として示したエッジ画素群ドット配置決定処理について説明する。図１６は、エッジ画素群ドット配置決定処理を示すフローチャートである。この処理を開始すると、まず画素群Ｐ（ｘ，ｙ）内の各画素を、高階調画素ＨＤと低階調画素ＬＤとに分け、それぞれの平均値ＨＤave とＬＤave とを求める処理を行なう（ステップＳ４０５）。ここで高階調画素ＨＤとは、その画素の階調値が、図１４に示したステップＳ２１８で求めた中間値Ｄmed より大きい値を有する画素であり、低階調画素ＬＤとは、その画素の階調値が、中間値Ｄmed より小さい値を有する画素である。画素群Ｐ（ｘ，ｙ）に含まれる４つの画素を高階調画素ＨＤか低階調画素ＬＤかのいずれかに分類した後、それぞれの画素の階調値の平均値を求め、これを高階調画素平均値ＨＤave および低階調画素平均値ＬＤ ave とする。なお、高階調画素か低階調画素かの判断を行なう基準は、こうした中間値Ｄmed の他に、全画素の階調値の平均値でも良いし、４つの画素の階調値の中央値でも良い。あるいは単純に最大入力階調値の１／２、つまりこの例では値１２７としても良い。
【００６７】
続いて、高低マスクを決定する処理を行なう（ステップＳ４１０）。この高低マスクとは、ステップＳ４０５の処理において、高階調画素ＨＤと判断した全画素の位置を示す高用マスクと、低階調画素ＬＤと判断した画素の位置を示す低用マスクである。高用マスクと低用マスクとは、排他的なので、例えば４つの画素のうち最初と最後の画素が高階調画素ＨＤであることを、「１００１」の４ビットで表すとすれば、低用マスクは、各ビットを反転させた「０１１０」の４ビットで表すことができる。本実施形態では、大ドットを「１１」で、中ドットを「１０」で、小ドットを「０１」で、ドットなしを「００」で、それぞれ表すことから、ビット演算の容易さを考慮して、高用マスクを「１１００００１１」のように各画素２ビット「１１」で表現するものとしている。
【００６８】
高低マスクの決定処理を行なった後、画素群Ｐ（ｘ，ｙ）に適用する閾値群番号Ｂ（ｍ，ｎ）を求める処理を行ない（ステップＳ４２０）。この処理は、既に説明した式（１）により、（ｘ，ｙ）から、（ｍ，ｎ）を求める処理である。閾値群番号Ｂ（ｍ，ｎ）が求められれば、この閾値群における順序値Ｏｄ（ｍ，ｎ）も求められる。
【００６９】
こうして高低マスクと閾値群番号Ｂ（ｍ，ｎ）とを特定した後、高階調画素ＨＤに対する処理（ステップＳ４３０〜Ｓ４５０）と低階調画素ＬＤに対する処理（ステップＳ４３５〜Ｓ４５５）とを行なう。これらの処理は、ほぼ同じなので、図１６では、処理を左右に並べて示した。これは、ステップＳ４２０において、高階調画素ＨＤか低階調画素ＬＤかの判断を行なっていることを意味するのではない。高階調画素ＨＤに対する処理であるステップＳ４３０〜Ｓ４５０、低階調画素ＬＤに対する処理であるステップＳ４３５〜Ｓ４５５は、共に実施される。これらの処理の実施のタイミングは、その前後を問わない。
【００７０】
ステップＳ４３０から説明する。まず高階調画素ＨＤについて、その平均値ＨＤave でエンコードする処理を行なう（ステップＳ４３０）。エンコードとは、既に説明したように、高階調画素平均値ＨＤave により、第１多値化テーブルＴＢ１の閾値群番号Ｂ（ｍ，ｎ）をルックアップし、多値化対応値を取得する処理である。
【００７１】
続いて、得られた多値化対応値を、順序値Ｏｄ（ｍ，ｎ）を用いてデコードする（ステップＳ４４０）。多値化対応値から、高階調画素平均値ＨＤave により形成されるべき大中小ドットそれぞれの数が分かるので、大ドットから順に、順序値Ｏｄ（ｍ，ｎ）に従って、ドットを形成する配置を決定していくのである。こうすることで、元のディザマスクの閾値群において最もドットが形成され易い位置から順に大ドット、中ドット、小ドットの順で、ドットが形成されるよう配置されることになる。図１６において、この様子を、高階調画素用ドット配置ＨＡとして示した。もとより多値化対応値から、大中小の全てのドットが形成されない場合も存在するが、その場合は形成されない種類のドットは飛ばして、順序値Ｏｄ（ｍ，ｎ）に従って、各種のドットが形成位置が定められる。
【００７２】
その後、このドット配置に高用マスクを適用し、高用マスクにおいてドットが形成されるとされた位置を残して、他の位置のドットは取り除く処理を行なう（ステップＳ４５０）。図の高階調画素用ドット配置ＨＡにおいて、高用マスクによりドットが形成される位置をハッチで示した。
【００７３】
上記の処理と同様の処理を、低階調画素ＬＤについても行なう。低階調画素ＬＤについて、その平均値ＬＤave でエンコードする処理を行なう（ステップＳ４３５）。このエンコードとは、低階調画素平均値ＬＤave により、第１多値化テーブルＴＢ１の閾値群番号Ｂ（ｍ，ｎ）をルックアップし、多値化対応値を取得する処理である。
【００７４】
続いて、得られた多値化対応値を、順序値Ｏｄ（ｍ，ｎ）を用いてデコードする（ステップＳ４４５）。多値化対応値から、低階調画素平均値ＬＤave により形成されるべき大中小ドットそれぞれの数が分かるので、大ドットから順に、順序値Ｏｄ（ｍ，ｎ）に従って、ドットを形成する配置を決定していくのである。こうすることで、元のディザマスクの閾値群において最もドットが形成され易い位置から順に大ドット、中ドット、小ドットの順で、ドットが形成されるよう配置されることになる。図１６において、この様子を、低階調画素用ドット配置ＬＡとして示した。
【００７５】
その後、このドット配置に低用マスクを適用し、低用マスクにおいてドットが形成されるとされた位置を残して、他の位置のドットは取り除く処理を行なう（ステップＳ４５５）。図の低階調画素用ドット配置ＬＡにおいて、低用マスクによりドットが形成される位置をハッチで示した。
【００７６】
以上の処理を行なった後、ステップＳ４５０により得られた高階調画素ＨＤ用のドットの配置と、ステップＳ４５５により低階調画素ＬＤ用のドットの配置とを合成する処理を行なう（ステップＳ４６０）。ステップＳ４５０，Ｓ４５５により既に不要な位置のドットは取り除かれているので、単純に両者を足し合わせるだけで、元の画素群Ｐ（ｘ，ｙ）の４つの画素位置において形成すべきドットの配置ＤＡが決定される。なお、高低マスクの適用は、合成処理（ステップＳ４６０）で行なうものとしても良い。こうして得られたドットの形成位置の情報は、図２に示したドット形成処理（ステップＳ１１０）で用いられ、カラープリンター２０によって各色のドットが形成される。
【００７７】
図１６の処理によりドットが形成される様子を図１７に示した。処理を行なう画素群Ｐ（ｘ，ｙ）が、図示するように、左上の画素の階調値が値２０５、他の３つの画素の階調値が、値１２、値１０，値１４であるとする。この場合、高低分離の処理と平均化の処理とを行なうと（図１６，ステップＳ４０５）、高階調画素平均値ＨＤave は値２０５となり、低階調画素平均値ＬＤave は値１２となる。
【００７８】
高低マスク決定処理（ステップＳ４１０）により、高用マスクＨＭと低用マスクＬＭとが作成される。他方、画素群Ｐ（ｘ，ｙ）に適用すべき閾値群番号Ｂ（ｍ，ｎ）を決定した後、エンコード処理を行なうことにより、高階調画素平均値ＨＤave に基づいて多値化対応値として値２５が得られる（図９参照）。他方、低階調画素平均値ＬＤave に基づいて多値化対応値として値１が得られる。順序値Ｏｄ（ｍ，ｎ）としては、前者は、大ドット１、中ドット２、小ドット１に対応し、後者は、小ドット１に対応している。これを、得られた順序値Ｏｄ（ｍ，ｎ）に従って配置すると、図１７に例示したように、高階調画素用ドット配置ＨＡと低階調画素用ドット配置ＬＡとが得られる。これに、既に結滞した高用マスクＨＭ、低用マスクＬＭを適用して両者を足し合わせることで、この画素群Ｐ（ｘ，ｙ）に形成すべきドットの配置ＤＡが得られる。
【００７９】
Ａ５）第１実施形態の効果：
以上説明した第１実施形態の画像処理システム１０によれば、画素群Ｐ（ｘ，ｙ）内にエッジがある場合とエッジがない場合とで、第１多値化テーブルＴＢ１と第２多値化テーブルＴＢ２とを別々に参照してドットの形成を行なうことができる。実施形態の第１多値化テーブルＴＢ１と第２多値化テーブルＴＢ２とは、入力階調値とドット形成の割合との対応関係が異なる。第１多値化テーブルＴＢ１は第１対応関係（図４）に相当し、第２多値化テーブルＴＢ２は第２対応関係（図５）に相当する。図４、図５は、例示に過ぎないが、第１対応関係は、第２対応関係と比べると、より小さいサイズのドットの比率を増やすことで、同じ入力階調値に対して、形成されるドットの個数が多くなるように設定されている。このため、画素群Ｐ（ｘ，ｙ）内にエッジがあると判断すると、その画素群Ｐ（ｘ，ｙ）の階調値が同じであっても、形成されるドットの数は増える。この結果、エッジが再現されやすくなるだけでなく、例えば細線などが途切れにくくなる。
【００８０】
本実施形態では、エッジの有無を各画素毎に判断するのではなく、画素群を単位としてエッジ検出を行なっている。このため、エッジの有無を検出する処理が簡略化でき、この点で処理の高速化、処理時間の短縮を図ることができる。しかも、本実施形態によれば、画素群Ｐ（ｘ，ｙ）内にエッジがあると判断した場合、画素群Ｐ（ｘ，ｙ）内の画素が高階調画素ＨＤであるとして、更には低階調画素であるとして、それぞれ処理を行なうことで、高階調画素に対応したドット配置、低階調画素に対応したドット配置を求め、これを合成している。従って、多値化における閾値との大小比較などは原則として行なわないので、処理を簡略なものにできる。このため、処理全体あるいは処理の一部をハードウェアにより実現することも容易である。また、本実施形態では、データの圧縮も実現している。本実施形態では、８ビットの階調表現を有する画素４つ分、つまり８×４＝３２ビットのデータを、多値化の途中で、６ビットの多値化対応値にエンコードしている。従って、元の階調データと比較すれば、非エッジブロックではデータを６／３２に圧縮できる。エッジブロックでは、多値化対応値が２つと高低マスク、更にエッジブロックか非エッジブロックかを示すフラグが必要だが、通常の画像や文書データでは非エッジブロックが大部分を占めるので、例えばコンピュータ−８０からカラープリンター２０にデータを転送する際に、多値化対応値にして送れば、送信するデータを低減できる。コンピュータ−８０で大中小ドットのデータに変換した上で、カラープリンター２０に送信する場合には、各画素当り２ビット必要となるので、画素群当り、２ビット×４画素＝８ビット必要となる。これと比べても、本実施形態では、データを圧縮できる。
【００８１】
更に、本実施形態では、印刷される画像におけるドット配置に、ディザマスクの特性を反映させることができる。つまりディザマスク（図７）がブルーノイズ特性を有していれば、印刷される画像におけるドット配置もブルーノイズ特性を備えたものにすることができる。他の特性でも同様である。なお、本実施形態では、エッジがある場合には低階調画素ＬＤと高階調画素ＨＤの両方に第１対応関係を用いたエンコード処理およびデコード処理を行ったが、細線等を構成するのは主に高階調画素ＨＤであるため、少なくとも高階調画素ＨＤに第１対応関係を適用すれば十分に大きな効果が得られる。このため、主に背景を構成する低階調画素ＬＤには、第２の対応関係を用いたエンコード処理およびデコード処理を適用しても差し支えない。
【００８２】
Ｂ．第２実施形態：
本発明の第２実施形態について説明する。第２実施形態の画像処理システム１０は、第１実施形態の画像処理システム１０と同様のハードウェア構成を備え、画素群Ｐ（ｘ，ｙ）内にエッジがあるか否かにより、異なる多値化テーブルＴＢ１，ＴＢ２を参照して多値化を行なう点は同様である。第２実施形態では、この処理に加えて、画素群Ｐ（ｘ，ｙ）と他の画素群、例えば画素群Ｐ（±ｘ，±ｙ）との間にエッジが存在するか否かを判断し、その結果により処理を異ならせる点で、第１実施形態と異なる。
【００８３】
図１８は、画像処理システム１０において、画素群間にエッジがあるか否かの判断を行なう画素群間エッジ処理ルーチンを示すフローチャートである。この処理は、ある画素群Ｐ（ｘ，ｙ）についてのドット配置特定処理（図１３）が実行される直前に実行される。図１８に示した処理が開始されると、まず画素群Ｐ（ｘ，ｙ）の各画素の階調値の平均値Ｐ０を演算する処理を行ない（ステップＳ５００）。平均値Ｐ０は、平均値を求める関数ＡＶＥを用いて、
Ｐ０＝ＡＶＥ（Ｐ（ｘ，ｙ））
と表すものとする。
【００８４】
続いて、これからドット配置特定処理を行なおうとしているこの画素群Ｐ（ｘ，ｙ）に隣接する画素群について、同様に、隣接する画素群に含まれる各画素の階調値の平均値を求める処理を行なう（ステップＳ５１０）。具体的には、
Ｐａ＝ＡＶＥ（Ｐ（ｘ−１，ｙ））
Ｐｂ＝ＡＶＥ（Ｐ（ｘ，ｙ−１））
Ｐｃ＝ＡＶＥ（Ｐ（ｘ，ｙ＋１））
Ｐｄ＝ＡＶＥ（Ｐ（ｘ＋１，ｙ））
を演算する。この演算は、処理対象となっている画素群Ｐ（ｘ，ｙ）の真上、左側、右側、真下の画素群について平均値を求めることに相当する。なお、隣接画素群としては、この４つに限らず、例えば既に処理が終っている真上と左側に限っても良いし、斜め配置になる画素群についても行なうものとしても良い。
【００８５】
次に、これら４つの隣接画素群の中から、画素群最大値Ｐmax と画素群最小値Ｐmin とを演算する処理を行なう（ステップＳ５２０）。この演算は、最大値を求める関数ｍａｘと最初値を求める関数ｍｉｎとを用いて、それぞれ、
Ｐmax ＝ｍａｘ（Ｐａ，Ｐｂ，Ｐｃ，Ｐｄ）
Ｐmin ＝ｍｉｎ（Ｐａ，Ｐｂ，Ｐｃ，Ｐｄ）
として行なうことができる。
【００８６】
こうして得られた画素群最大値Ｐmax と画素群最小値Ｐmin と処理しようとしている画素群Ｐ（ｘ，ｙ）の平均値ＰＯとを比較し、
Ｐmax −Ｐ０  または  Ｐ０−Ｐmin
のいずれかが閾値Ｔｂより大きいかの判断を行なう（ステップＳ５３０）。この処理は、結局、処理しようとしている画素群Ｐ（ｘ，ｙ）の周辺の４つの画素群のうちいずれか一つの画素群との間で画素群全体の平均値に大きな隔たりがあれば、何らかのエッジが、その隣接する画素群との間で存在すると判断することに相当する。かかる判断を、画素群間エッジ判定と呼ぶ。
【００８７】
上記の画素群間エッジ判定により画素群間にエッジがあると判定した場合には、フラグＦｅに値１を設定し（ステップＳ５４０）、画素群間エッジ判定においてエッジがないと判定した場合には、フラグＦｅに値０を設定し（ステップＳ５５０）、本処理ルーチンを終了する。
【００８８】
図１８に示した画素群間エッジ処理に引き続いて、ドット配置特定処理ルーチンが実行される。第２実施形態におけるドット配置決定処理ルーチンは、第１実施形態におけるドット配置決定処理ルーチンとほぼ同一であるが、図１９に示すように、ステップＳ２２０の判断が「ＮＯ」であった場合に、第１実施形態とは異なり、フラグＦｅが値１かという判断（ステップＳ２２５）がまず実行される。この判断の結果、フラグＦｅが値１であれば、つまり画素群間にエッジが存在すると判定した場合には（ステップＳ２２５：「ＹＥＳ」）、エッジ画素群ドット配置決定処理（ステップＳ４００）が実行される。ステップＳ２２５での判断が「ＮＯ」の場合は、第１実施形態と同様に、非エッジ画素群ドット配置決定処理（ステップＳ３００）が実行される。
【００８９】
つまり、第２実施形態では、画素群内にエッジがないと判断された場合（ステップＳ２２０：「ＮＯ」）でも、画素群間にエッジがあると判定されれば（ステップＳ２２５：「ＹＥＳ」）、画素群内にエッジがあると判断された場合と同様に、エッジ画素群ドット配置決定処理（ステップＳ４００）が実行され、画素群Ｐ（ｘ，ｙ）内では、エッジがないと判断された場合より、ドットの形成される割合（個数）が多いドット形成がなされる。この結果、画素群内、画素群間を問わず、エッジのある部分では、ドットの形成個数が増え、エッジが再現されやすくなるだけでなく、例えば細線などが途切れにくくなる。また、第１実施形態の処理はそのまま行なわれるので、第１実施形態が奏する効果も同様に得ることができる。
【００９０】
Ｃ．第３実施形態：
Ｃ１）第３実施形態におけるドット配置決定の手法：
次に第３実施形態の画像処理システム１０について説明する。第１，第２実施形態の画像処理システム１０では、２×２画素内のドットの形成について、６４×６４の大きなディザマスク（図７参照）から切り出した２×２の局所的ディザマスクを用いて、画素群内のドット配置を決定している。このとき、非エッジ画素群では、画素群内の階調値の平均値Ｄave を用いて多値化階調を求め、これと順序値とから、画素群内における大中小のドットの形成位置を決定した。これに対して、第３実施形態では、ドット切替階調値を用いて、エンコードとデコードを行なう。この手法では、２×２の４つの画素からなる画素群についてのドット形成の処理を、更に少ないビットで表現に変換し、かつテーブルを参照するだけの単純な処理で実現する。
【００９１】
まず、第３実施形態において参照するテーブルについて説明する。説明は、第１実施形態の非エッジ画素群の場合の多値化の特性（図５）を例に行なう。第３実施形態でも、入力階調値と大中小ドットの形成密度との関係は、第１実施形態と同様に、エッジ画素群については図４に示した第１対応関係を、非エッジ画素群については、図５に示した第２対応関係を用いる。図５に示した入力階調値と大中小ドットの形成の割合との関係から、入力階調値が０〜２５５までの値となった場合、大中小ドットがどのように形成されるかを検討する。図２０は、閾値群番号Ｂ（１，３）を用いた場合の大中小ドットの形成の様子を、入力階調値の範囲に応じて示す説明図である。この例では、大ドットによる階調表現は入力階調値に対応しており、大ドット１個は中ドット約２個分の階調表現に対応しており、中ドット１個は小ドット約２個分の階調表現に対応しているものとした。つまり、入力階調値が値１であるとは、大ドットであれば２５５画素に１つのドットが形成される場合に相当するのに対して、小ドットであれば２５５画素に４つのドットが形成される場合に相当する。このため、図５において、小ドットしか形成されないとされている入力階調値が値０から３２の範囲では、小ドットの形成の割合は、入力階調値に対して４倍の傾きを持った特性として設定されている。
【００９２】
閾値群番号Ｂ（１，３）の４つの閾値は小さい方から順に、５，７０，１８６，２４２となっている。従って、入力階調値が値０〜１の間では、一つのドットも形成されないが、入力階調値が値２となると、この入力階調値２は、小ドットの形成を判断する場合には、値８相当となるので、小ドットが１つ形成されることを意味する。図２０では、４つの画素の閾値に応じて、どの画素に大中小のいずれの画素が形成されるかを符号ＬＭＳより示し、更に大中小ドットが画素群内に何個形成されるかも示した。
【００９３】
図２０によれば、閾値群番号Ｂ（１，３）を用いた場合、入力階調値が値０〜２５５の範囲で順次増加していくと、階調値１、１７、４６、・・・・・２４７の１０箇所でドットの形成の組合せが変化することがわかる。つまり、閾値群番号Ｂ（１，３）を用いた場合、画像のどの部分と対比したとしても、大中小ドットの取り得る組合せは１１通りしか存在しないことになる。この組合せを、入力階調値の小さい方から順に０、１、２、・・・１０と番号を付け、ドット形成の切替が生じる階調値という意味で、ドット切替階調値と呼ぶものとする。閾値群番号Ｂ（１，３）では、ドット切替階調値は、値０から１０の計１１個しか取り得ない。この大中小ドットの形成個数が切り替わる階調値は、閾値群が変われば異なる。また、ドットの形成個数の組合わせも、常に１１ではなく、閾値群における閾値の組合せや、図４、図５に示した入力階調値に対する大中小ドットの形成密度の特性によっても異なる。しかし、いずれの閾値群を用いても、ドットの形成個数が切り替わる回数は、２×２画素を画素群とし、大中小ドットの形成密度として一般的な特性を用いる場合、値１５を越えることはなかった。即ち、ドット切替階調値は最大で４ビットあれば表現可能であった。なお、２×４画素を画素群として、大中小ドットを用いる場合には、このドット切替階調値は、大中小ドットの形成密度として一般的な特性を用いれば、値３１を越えることはなく、５ビットあれば表現可能である。
【００９４】
図２１は、閾値群番号Ｂ（１，３）について、入力階調値とドット切替階調値との関係を例示した説明図である。他方、図２２は、閾値群番号Ｂ（１，３）について、ドット切替階調値とドット配置との関係を示した説明図である。図２１，図２２は、一つの閾値群番号Ｂ（１，３）についての関係を示しているに過ぎないが、全ての閾値群番号Ｂ（ｍ，ｎ）についても、この関係を予め求めておくことができる。閾値群に含まれる各閾値の値の組合わせにより、これらの関係は一意に定まる。図２１に示した入力階調値とドット切替階調値との関係を、各閾値群番号Ｂ（ｍ，ｎ）について、予め求めてテープルにしたものを切替階調エンコードテーブルと呼ぶ。他方、図２２に示したドット切替階調値とドット配置との関係を、各閾値群番号Ｂ（ｍ，ｎ）について、予め求めてテーブルにしたものを切替階調デコードテーブルと呼ぶ。第３実施形態では、この切替階調エンコードテーブルおよび切替階調デコードテーブルを用いて、画素群内のドット形成の判断を行なう。以下、この手法について説明する。
【００９５】
第３実施形態では、第１実施形態と同様、処理する画像を２×２画素の画素群に分け、これを順に処理する。処理のフローチャートは、図１３に示した処理と同様である。第３実施形態では、エッジ画素群ドット配置決定処理および非エッジ画素群ドット配置決定処理の手法が、第１実施形態とは異なる。但し、両処理におけるドット配置は、図４、図５に示した特性および図７に示したディザマスクが同一なので、両者において差はない。異なるのは、画素群内のドット配置を決定する手法である。第３実施形態では、画素群内のドット配置の決定に、切替階調エンコードテーブルと切替階調デコードテーブルとを参照する、という手法を用いるが、その切替階調エンコードテーブルおよび切替階調デコードテーブルは、その元になった入力階調値と大中小ドットの形成の割合との関係が、図４、図５であることから、エッジ画素群の場合に参照するテーブルと、非エッジ画素群において参照するテーブルとは、異なる。
【００９６】
図２３は、第３実施形態において、エッジ画素群におけるドット形成の手順を示す説明図である。この図は、第１実施形態における図１７に相当する。まず画像から取り出した２×２画素の画素群Ｐ（ｘ，ｙ）から階調値の大きさに従い、高階調値の画素と低階調値の画素とを分離し、それぞれの平均値を取得する。図２３に示した例では、高低分離の処理と平均化の処理とを行なった結果、高階調画素平均値ＨＤave は値２０５となり、低階調画素平均値ＬＤave は値１２となる。併せて、高用マスクＨＭと低用マスクＬＭとが作成される。
【００９７】
次に、画素群Ｐ（ｘ，ｙ）に適用すべき閾値群番号Ｂ（ｍ，ｎ）に対応する切替階調エンコードテーブルを参照する処理を行なう。画素群Ｐ（ｘ，ｙ）に適用すべき閾値群番号Ｂ（ｍ，ｎ）は、既に説明したように、画像における画素群の位置から決定される。切替階調エンコードテーブルは、図２１に一例を示したが、ここでは、図４に示した第１対応関係を用いて、画素群Ｐ（ｘ，ｙ）に適用すべき閾値群番号Ｂ（ｍ，ｎ）について予め作成された切替階調エンコードテーブルを参照する。この切替階調エンコードテーブルを参照することにより、高階調画素平均値ＨＤave に対応したドット切替階調値が取得される。続いて、このドット切替階調値に基づいて、適用すべき閾値群番号Ｂ（ｍ，ｎ）についての、図２２に一例を示した切替階調デコードテーブルを参照する処理を行なう。この処理を行なうことにより、ドット切替階調値に対応したドット配置が得られる。
【００９８】
他方、非エッジ画素群の場合は、画像から取り出した２×２画素の画素群Ｐ（ｘ，ｙ）の階調値の平均値Ｄaveを求め、図５に示した第２対応関係を用いて作成した切替階調エンコードテーブルを参照する処理（エンコード処理）と、切替階調デコードテーブルを参照する処理（デコード処理）とを行なうことで、この画素群Ｐ（ｘ，ｙ）に形成すべきドットの配置ＤＡが得られる。
【００９９】
上記の切替階調エンコードテーブルを参照する処理（エンコード処理）と切替階調デコードテーブルを参照する処理（デコード処理）とを行なうことにより、２×２画素が全て高階調画素平均値ＨＤave である場合のドット配置ＨＡが得られる。なお、図２２では、理解の便を図って、大中小のドット配置を直接図示したが、実際の切替階調デコードテーブルでは、各画素に形成されるドットの種類を２ビットで表現するものとし、大ドットを「１１」で、中ドットを「１０」で、小ドットを「０１」で、ドットなしを「００」で表わしている。従って、図２２に示した例では、ドット切替階調値６の場合、切替階調デコードテーブルを参照することで得られる８ビットの値は「１００１００１１」となる。この値から、画素群における右上、左上、右下、左下の順に、大中小ドットおよびドットなしのいずれになるかを知ることができる。
【０１００】
上記のエンコード処理およびデコード処理を、低階調画素平均値ＬＤave についても同様に行なう。この結果、２×２画素が全て低階調画素平均値ＬＤave である場合のドット配置ＬＡが得られる。これに、作成済の高用マスクＨＭ、低用マスクＬＭを適用して両者を足し合わせることで、この画素群Ｐ（ｘ，ｙ）に形成すべきドットの配置ＤＡが得られる。
【０１０１】
Ｃ２）第３実施形態の効果：
以上説明した第３実施形態の画像処理システム１０によれば、エッジが再現されやすくなり、例えば細線などが途切れにくくなるといった第１実施形態の効果と同様の効果を奏する上、第１実施形態よりも更に処理を簡略化でき、処理に要する時間を更に短縮することができるという効果を奏する。これは、入力階調値から大中小ドットの形成の配置を決定する処理において、切替階調エンコードテーブルと切替階調デコードテーブルをそれぞれ１回参照するだけでよいからである。また順序値などを用いる必要がない。
【０１０２】
更に、第３実施形態では、エンコード処理により、ドット形成の処理に必要なデータを一旦４ビットのデータ（ドット切替階調値）に変換するので、元の画素群のデータ（４画素×階調値８ビット）と比べて、４／３２、即ち１／８に圧縮したデータとして扱うことが可能となる。従って、例えばこの圧縮されたデータを用いて、コンピュータ−８０からカラープリンター２０へのデータ転送を行なうものとすれば、データ転送に要する時間を大幅に短縮することができる。また、プリンタードライバーやスプーラーなどがデータを一時的に記憶する場合、記憶すべきデータ量を低減することができる。
【０１０３】
Ｄ．その他の実施形態：
Ｄ１）低階調値のみで第１対応関係を用いる実施形態：
上記各実施形態では、エッジが存在すると判断すると、第１対応関係に基づいてドットの形成を行なっているが、第１対応関係を利用するのは、エッジが存在しかつ画素群Ｐ（ｘ，ｙ）の階調値の平均値Ｄaveや高階調画素平均値ＨＤave が一定値以下の低階調値の画素群に限っても差し支えない。高階調値の画素群の場合は第２対応関係を用いても細線が途切れる心配はほとんどないため、階調値が低い画素群に、第１対応関係を利用するだけでも、細線の途切れなどは生じにくくなるからである。
【０１０４】
Ｄ２）画素群の大きさが異なる実施形態：
上記第１，第２実施形態では、それぞれ画素群Ｐ（ｘ，ｙ）として、２×２画素の画素群を用い、対応する閾値群番号Ｂ（ｍ，ｎ）も、２×２の、いわば局所的ディザマスクを用いたが、画素群Ｐ（ｘ，ｙ）は、他の大きさ、例えば２×４や、４×４の大きさであっても差し支えない。また、画像を埋め尽くせるのであれば、例えば十字形の５画素からなる画素群を用いても良い。画像の途中で画素群の大きさを代えても良い。閾値群は、画素群の大きさに合わせて設定すればよい。なお、閾値群の元となるディザマスクは、６４×６４より大きなものであっても良く、また６４×１６や４８×９６のように、縦横の閾値数が異なるものであってもよい。また、方形以外の形状でもかまわない。例えば上半分が２４×１６、下半分が４０×１６の２段の階段形状のディザマスクも使用可能である。こうしたディザマスクは、適当なずらし量で配置してゆくことで、隙間なく配置できる。
【０１０５】
Ｄ３）入力階調とドット形成の割合が異なる実施形態：
上記実施形態では、図４、図５に示したように、入力階調値の全範囲で大中小ドットの形成の割合を異ならせた特性を利用して、第１，第２多値化テーブルを作成して用いたが、これらの特性は、第１多値化テーブルを利用してドットを形成する場合、第２多値化テーブルを用いた場合より、ドット形成の割合（個数）が増える特性であれば、どのような特性でも差し支えない。また、ドットの形成も大中小の３種類のドットに限るものではなく、大小の２種類のドットを形成する場合にも適用できる。あるいは濃淡ドットにも適用できる。更には同じ濃度のドットを同じ画素に吐出する回数を変えて濃度を変更する場合の吐出回数にも適用することができる。
【０１０６】
図４、図５に示した特性は、同じ入力階調に対するドット形成の割合、つまり大中小ドットの形成個数は異なっても、吐出されるインク量の期待値はおおむね同一となるようにした。これに対して、エッジ画素ブロック適用される第１多値化テーブルを生成する元となる特性（上記実施形態では図４に示した特性）と、非エッジ画素ブロック適用される第２多値化テーブルを生成する元となる特性（上記実施形態では図５に示した特性）とは、同じ入力階調に対して異なるインク量となるように設定しても差し支えない。この場合、エッジ画素群に適用される特性の方が非エッジ画素群に適用される特性より、実現されるインク量が少ないものとすれば、エッジ部における滲みによって線などが必要以上に太くなるといった不具合を抑制できる。
【０１０７】
これは次の理由による。一般に、ドットの大きさは、方形の画素に対して概ね丸いドットを形成することから、１画素の面積より大きく設定されている。こうしておくことで、全ての画素に大ドットを形成した場合に、方形の画素の四隅に白地が露出しないようにでき、特に紙送り誤差などに起因して着弾位置のずれが発生した時でも、ドットが十分な大きさを持っていれば、白地が筋状に繋がって目立つバンディングが発生しにくい。こうした理由から、大ドットの大きさは、方形の画素の面積より大きく設定されるのが一般的である。これに対して、エッジ部では、全ての画素に大ドットが形成されることはなく、目立つバンディングも発生しにくい。従って、エッジ画素群ではインク量を減らしておいても画像形成上の問題とならず、ドットのはみ出しが抑制されることによる画質の向上が期待できる。また複数のインク滴を形成する場合、インク重なりによるインクの滲みも低減できるので、この点でも画質の向上に寄与し得る。
【０１０８】
この他、入力階調が所定値以上の場合にドット形成の割合が異なるようにして第１，第２多値化テーブルを用意しても良い。この場合、第１，第２多値化テーブルの入力階調値の一部の領域を共用するものとしても良い。こうしたエッジ画素群に用いる第１多値化テーブルの極端な例として、入力階調値が最大値（８ビットで２５５）の時のみ、第２多値化テーブルと異なる特性とすることが考えられる。文字や線は最大階調値で描画されることが多いため、このように入力階調値が最大の時にのみエッジ画素群に適した特性とするだけでも、十分に有効だからである。これは、にじみ対策のために入力階調値が最大の場合の大ドット発生率を１００％未満にする必要がある場合などで、特に有効である。こうした特性の一例を図４、図５に戻って説明する。図５では、入力階調値が値２５５の時の大ドットの形成の割合であるＬＬ２は２５５／２５５であった。エッジ画素群でかつ高階調画素平均値ＨＤaveが２５５の時のみ、この大ドット形成の割合ＬＬ２を図５における２００／２５５（中、小ドットの形成の割合ＬＭ２、ＬＳ２は０のまま）相当であるとし、これを、図４の入力階調値であるとして、大中小ドットの形成の割合をもとめる。このとき大中小ドットの形成の割合は、ＬＬ２＝１４５、ＬＭ２＝１１０、ＬＳ２＝０となる。そこで、エッジ画素群でかつ高階調画素平均値ＨＤaveが２５５という条件が成立していなければ、図５に基づく第２多値化テーブルを用い、エッジ画素群でかつ高階調画素平均値ＨＤaveが２５５の時のみ、この特性（ＬＬ２＝１４５、ＬＭ２＝１１０、ＬＳ２＝０）に対応させてドットの形成を判断するのである。
【０１０９】
Ｄ４）処理の対象となるインク色がブラックである実施形態：
エッジ画素群において、ＣＭＹＫの４色全てのドット形成の割合を異ならせるのでなく、ブラックＫについてのみ、ドット形成率の異なる関係を用意し、第１，第２多値化テーブルを用意するものとしても良い。この場合、エッジが、画素群Ｐ（ｘ，ｙ）の中に、あるいは画素群間にあると判断した場合には、より多数のドットが形成されるような特性となるように第１多値化テーブルを用意する。従って、エッジ部分では、ブラックのドットの形成される個数が増えることになり、文字などの線が途切れることなく形成され易くなる。一般に、文字はブラックで表現されることが多く、かつ細い線分から構成されていることから、ブラックについてのみこうした構成を採用することでも、解像度の確保と細線の再現という二つの要請を、従来より満たすことが可能となる。
【０１１０】
Ｄ５）エッジ画素群における多値化の手法が異なる実施形態：
上記の実施形態では、エッジ画素群ドット配置特定処理（図１３、ステップＳ４００）は、全画素を高階調画素ＨＤとして多値化テーブルＴＢ１をルックアップする処理と、全画素を低階調画素ＬＤとして多値化テーブルＴＢ１をルックアップする処理とを行なって、その後、高低マスクを利用して両者を合成した。こうした処理に代えて、各画素の階調値を利用して画素数分だけ多値化テーブルＴＢ１をルックアップし、それから各画素に配置するドットを決定するようにしてもよい。また、非エッヂ画素群ドット配置決定処理（ステップＳ３００）が、エンコード処理およびデコード処理によりドットの配置を決定していれば、エッジ画素群ドット配置特定処理（ステップＳ４００）におけるドット配置の決定は、必ずしもエンコード処理およびデコード処理による手法を用いなくても差し支えない。要は、非エッジ画素群ドット配置特定処理と比べて、所定の階調範囲、特に高階調領域で、ドット形成の割合が高くなる手法であれば、単純なディザ法や、誤差拡散法によってドット配置を決定するものとしてもよい。
【０１１１】
Ｄ６）処理の全部または一部をハードウェアにより実施する実施形態：
上記の各実施形態は、ドット配置の決定をソフトウェアにより実現したが、ハードウェアにより実現することも可能である。特に、エッジ画素群ドット配置特定処理および非エッジ画素群ドット配置特定処理は、参照に用いる平均値ＨＤave ，ＬＤave ，Ｐ０を計算した後は、多値化テーブルをルックアップするだけなので、ディスクリートな回路構成により実現することは容易である。ハードウェアにより実現した場合は、この画像処理システムをプリンターや複合機などに組み込むことができる。
【０１１２】
Ｄ７）エッジ判断の手法が異なる実施形態：
画素群内にエッジか存在するか否かの判断（図１３、ステップＳ２２０）は、他の手法により行なっても差し支えない。例えば、所定階調値（例えば値１２７）以上の画素の階調値平均値、所定階調値未満の画素の階調値の平均との差をΔＥとして判断を行なっても良い。あるいは、画素群内の最大階調値Ｄmax が上限値（例えば値１９２）以上で、画素群内の最小階調値Ｄmin が下限値（例えば値９６）以下であれば、エッジがあると判断するなどの手法によっても良い。同様に、画素群間にエッジか存在するか否かの判断（図１８，ステップＳ５３０）も、他の手法により行なっても差し支えない。
【０１１３】
Ｄ８）低階調のドットの形成割合の増加の仕方が異なる実施形態：
上記各実施形態では、図４、図５に示したように、エッジが存在するブロックでは、低階調のドットの形成個数が増加するような対応関係（第１対応関係）を採用した。このため、画素群内に形成されるドットによる画素群としての階調値はほぼ同一となる。これに対して、画素群内に発生するドット数を同一またはほぼ同等とし、画素群内に発生するドットを、より低階調のドットにする対応関係を採用してもよい。この場合、形成されるドットの滲みが抑制されるので、表現される画像の鮮鋭度が高まり、特に文字などの再現に優れた画像形成を行なうことができる。
【０１１４】
Ｄ９）その他の実施形態：
本発明は、ソフトウェアによる実施かハードウェアによる実施かを問わず、上記のような画像処理システムとしての実施の他、画像処理装置単独での実施、あるいは画像処理方法としての実施なども可能である。更には、プリンターや複合機としての実施も可能である。また、本明細書において必須の構成であると特定していない構成については、適宜省略可能である。
【符号の説明】
【０１１５】
１０…画像処理システム、    ２０…カラープリンター
３０…キャリッジモーター、  ３１…無端ベルト
３２…プリー、    ３３…シャフト、    ３５…紙送りモーター
３６…プラテン、  ４０…キャリッジ、  ４１…印字ヘッド
４２、４３…インクカートリッジ、      ４４〜４７…インク吐出用ヘッド
５９…インタフェースパネル、          ６０…制御回路
８０…コンピューター、    ８１…ＣＰＵ、    ８２…メモリー
【図１】
2018142781.tif 000003
【図２】
2018142781.tif 000004
【図３】
2018142781.tif 000005
【図４】
2018142781.tif 000006
【図５】
2018142781.tif 000007
【図６】
2018142781.tif 000008
【図７】
2018142781.tif 000009
【図８】
2018142781.tif 000010
【図９】
2018142781.tif 000011
【図１０】
2018142781.tif 000012
【図１１】
2018142781.tif 000013
【図１２】
2018142781.tif 000014
【図１３】
2018142781.tif 000015
【図１４】
2018142781.tif 000016
【図１５】
2018142781.tif 000017
【図１６】
2018142781.tif 000018
【図１７】
2018142781.tif 000019
【図１８】
2018142781.tif 000020
【図１９】
2018142781.tif 000021
【図２０】
2018142781.tif 000022
【図２１】
2018142781.tif 000023
【図２２】
2018142781.tif 000024
【図２３】
2018142781.tif 000025