(57)【要約】【課題】第１の階調数からなる画像データを、より小さい第２の階調数からなる画像データに変換する際に、階調変換の処理負荷を低減させるために複数画素を平均化すると、該複数画素間の濃度差が大きいと元画像の情報が失われてしまう。そのため、階調変換後の出力画像において画質劣化が発生してしまう。【解決手段】入力画像解析部１００で、第１の階調数からなる入力画像の副走査方向に隣接する２画素の差分値を解析しておき、縦方向解像度変換部１０１で、該２画素の平均化による平均画像データを生成する。そして多値誤差拡散処理部１０３で、該平均画像データに階調変換を施して低階調画像データを生成する。出力画素選択部１０４では、該低階調画像データの各画素に対し、入力画像解析部１００での解析結果に基づいて２個の出力画素値を選択することによって、第２の階調数からなる出力画像データを作成する。【選択図】  図１
2010103861.tif 000002
【特許請求の範囲】
【請求項１】
第１の階調数からなる画像データを、該第１の階調数よりも小さい第２の階調数からなる画像データに変換する画像処理装置であって、
前記第１の階調数からなる入力画像の副走査方向に隣接する複数個の画素について、その差分値を解析する入力画像解析手段と、
該解析された複数個の画素に対する平均化を行って画素数を低減した平均画像データを生成する平均化手段と、
前記平均画像データに対して階調数を低減するように階調変換を施して低階調画像データを生成する階調変換手段と、
前記低階調画像データの各画素に対し、前記入力画像解析手段における解析結果に基づいて、複数個の出力画素値を選択することによって、前記第２の階調数からなる出力画像データを作成する出力画素選択手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記出力画素選択手段は、前記入力画像解析手段における解析結果に基づいて、
前記差分値が予め定めれた閾値以下である場合には、前記低階調画像データの画素値に対して予め定められた出力画素値の組を選択し、
前記差分値が前記閾値を超えている場合には、該差分値に対して予め定められた出力画素値の組を選択する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記階調変換手段は、前記平均画像データに対して多値誤差拡散処理による階調変換を行って、前記低階調画像データを生成することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
第１の階調数からなる画像データを、該第１の階調数よりも小さい第２の階調数からなる画像データに変換する画像処理装置であって、
前記第１の階調数からなる入力画像の副走査方向に隣接する複数個の画素について、その差分値を解析する入力画像解析手段と、
該解析された複数個の画素に対する平均化を行って画素数を低減した平均画像データを生成する平均化手段と、
前記平均画像データに対し、階調数を低減するような階調変換を、前記入力画像解析手段における解析結果に基づいて施すことによって低階調画像データを生成する階調変換手段と、
前記低階調画像データの各画素に対し、複数個の出力画素値を選択することによって前記第２の階調数からなる出力画像データを作成する出力画素選択手段と、
を有することを特徴とする画像処理装置。
【請求項５】
前記階調変換手段は、前記入力画像解析手段における解析結果に基づき、多値誤差拡散処理における量子化値を切り替えて階調変換を行うことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記入力画像解析手段は、入力画像の副走査方向に隣接する２画素について、その差分値が予め定められた閾値以上であるか否かを判断することを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記出力画素選択手段は、前記平均化手段における平均化対象の画素数と同数の前記出力画素値を選択することを特徴とする請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項８】
前記出力画素選択手段は、前記複数個の出力画素値の選択対象となる画素値群を予め保持していることを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
さらに、前記出力画像データに対する記録ドットを形成するために、前記入力画像解析手段における解析結果に基づいてドットの成長方向を制御したパルス幅変調を行うＰＷＭ処理手段を有することを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１０】
前記階調変換手段は、前記低階調画像データを、前記第１の階調数よりも小さく、かつ前記第２の階調数以上の階調数となるように生成することを特徴とする請求項１乃至９のいずれか１項に記載の画像処理装置。
【請求項１１】
第１の階調数からなる画像データを、該第１の階調数よりも小さい第２の階調数からなる画像データに変換する画像処理方法であって、
前記第１の階調数からなる入力画像の副走査方向に隣接する複数個の画素について、その差分値を解析する入力画像解析ステップと、
該解析された複数個の画素に対する平均化を行って画素数を低減した平均画像データを生成する平均化ステップと、
前記平均画像データに対して階調数を低減するように階調変換を施して低階調画像データを生成する階調変換ステップと、
前記低階調画像データの各画素に対し、前記入力画像解析ステップにおける解析結果に基づいて、複数個の出力画素値を選択することによって、前記第２の階調数からなる出力画像データを作成する出力画素選択ステップと、
を有することを特徴とする画像処理方法。
【請求項１２】
第１の階調数からなる画像データを、該第１の階調数よりも小さい第２の階調数からなる画像データに変換する画像処理方法であって、
前記第１の階調数からなる入力画像の副走査方向に隣接する複数個の画素について、その差分値を解析する入力画像解析ステップと、
該解析された複数個の画素に対する平均化を行って画素数を低減した平均画像データを生成する平均化ステップと、
前記平均画像データに対し、階調数を低減するような階調変換を、前記入力画像解析ステップにおける解析結果に基づいて施すことによって低階調画像データを生成する階調変換ステップと、
前記低階調画像データの各画素に対し、複数個の出力画素値を選択することによって前記第２の階調数からなる出力画像データを作成する出力画素選択ステップと、
を有することを特徴とする画像処理方法。
【請求項１３】
コンピュータを請求項１乃至１０のいずれか１項に記載の画像処理装置における各手段として機能させるためのプログラム。
【請求項１４】
請求項１３に記載のプログラムを記録したコンピュータ可読な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置および画像処理方法に関し、特に誤差拡散法による階調変換を行う画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
一般に画像をデジタル表現する場合、例えば２５６レベルの濃淡といった多階調による表現を行う場合が多い。特にカラー画像においては、ＲＧＢやＣＭＹＫといった色成分毎に、多階調による表現がなされる。
【０００３】
しかしながら、一般的なプリンタにおいては、上記のような２５６レベルでの濃淡表現を行うことは実質的に困難である。そこで、ハーフトーニングという手法を用いて、２５６レベル等の多階調を、プリンタで表現することのできる少ない階調数（例えば２階調や４階調）に変換する方法が採用されてきた。このような階調変換方法としては、例えば、２５６階調の画像を２〜４階調で表現可能とする多値誤差拡散方法が知られている（例えば、特許文献１参照）。なお、この多値誤差拡散方法においては、例えば２５６階調を４値化する場合、２５６階調と４値の対応付けを図るしきい値テーブルを用いて、誤差拡散により算出された注目画素の濃度値が４値化される。そして、該４値化後の誤差（残差）は保持され、次の画素の４値化時において、その周辺画素に対して保持されている上記誤差が重みを付して加算され、４値化が繰り返される。
【０００４】
しかしながら、上記多値誤差拡散方法を適用する場合、プリンタの画像形成方式によっては、周囲に打点が存在しない、すなわち孤立画素の打点が不安定になる場合がある。この対策として、なるべく孤立画素を少なくするために、隣接する画素をブロック化して扱い、該ブロック内において画素を集積させる方法が採用されてきた。
【０００５】
しかしながら、ブロック内において画素を集積させた場合、処理が複雑であるために処理負荷がかかってしまう。このような処理負荷を軽減させる方法として、以下のように複数画素を平均化した上で誤差拡散を施す方法が提案されている。すなわち、まず入力されてくる画像の互いに隣接するｎ個（ｎは自然数）の画素に対応する画像データを平均化し、平均画像データに対して多値誤差拡散処理を施す。そして、該誤差拡散処理によって得られる画像データに基づいて、各色毎に定められたパターンによりＮ階調（Ｎは自然数）で表現されるｎ個の画像データを生成し、ｎ個の画素に対応する画像データを生成する（例えば、特許文献２参照）。
【特許文献１】特開平９−７４４８８号公報
【特許文献２】特開２００１−３０９１８８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来の、隣接するｎ画素を平均化して誤差拡散処理を行う方法では、該ｎ個の画素の濃度差が大きいと、平均化によって元の画像の情報が失われてしまう可能性があった。そのような場合、例えばエッジ部分がぼやけてしまう等、誤差拡散処理後の出力画像が劣化してしまうという問題があった。
【０００７】
本発明は上述した問題を解決するためになされたものであり、複数画素を平均化して階調変換の処理負荷を低減した場合に、画質劣化を抑制した高画質画像を出力する画像処理装置および画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するための一手段として、本発明の画像処理装置は以下の構成を備える。
【０００９】
すなわち、第１の階調数からなる画像データを、該第１の階調数よりも小さい第２の階調数からなる画像データに変換する画像処理装置であって、前記第１の階調数からなる入力画像の副走査方向に隣接する複数個の画素について、その差分値を解析する入力画像解析手段と、該解析された複数個の画素に対する平均化を行って画素数を低減した平均画像データを生成する平均化手段と、前記平均画像データに対して階調数を低減するように階調変換を施して低階調画像データを生成する階調変換手段と、前記低階調画像データの各画素に対し、前記入力画像解析手段における解析結果に基づいて、複数個の出力画素値を選択することによって、前記第２の階調数からなる出力画像データを作成する出力画素選択手段と、を有することを特徴とする。
【発明の効果】
【００１０】
上記構成からなる本発明によれば、複数画素を平均化して階調変換の処理負荷を低減した場合に、画質劣化を抑制した高画質画像を出力することが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１２】
＜第１実施形態＞
図１は、本実施形態に係る画像処理装置１の構成を示すブロック図である。同図に示されるように、本実施形態の画像処理装置１は、入力画像解析部１００、縦方向解像度変換部１０１、入力γ補正部１０２、多値誤差拡散処理部１０３、出力画素選択部１０４、およびＰＷＭ処理部１０５、を備える。入力画像解析部１００は、縦方向解像度変換部１０１と出力画素選択部１０４に接続される。縦方向解像度変換部１０１は入力γ補正部１０２に接続され、入力γ補正部１０２は多値誤差拡散処理部１０３に接続され、多値誤差拡散処理部１０３は出力画素選択部１０４に接続され、出力画素選択部１０４はＰＷＭ処理部１０５に接続される。以上の構成により、入力画像解析部１００に供給された画像データに対して以下に説明する画像処理が施され、ＰＷＭ処理部１０５から出力される。以下、入力画像解析部１００に供給される画像データを元画像データ、ＰＷＭ処理部１０５から出力される画像データを出力画像データと称する。
【００１３】
なお、本実施形態における元画像データとしては、入力画像解析部１００に入力される際にある一定の尺度に基づいて（例えば濃度に対して）直線的な比例関係にあることが望ましい。しかしながら、そのような比例関係になっていない場合であっても、入力γ補正部１０２でガンマ補正が施されることにより、理想的な特性が得られる。
【００１４】
以下、図１に示す構成からなる本実施形態に係る画像処理装置１の動作を、図２のフローチャートを用いて説明する。なお、以下の説明において元画像データはＣＭＹＫのカラー画像であって、各色の階調数Ｌは２５６であるとする。また、出力画像データは元画像データと同じ解像度を有し、階調数Ｎが９となるように、階調変換が施されるものとする。また、本実施形態では画素ブロック単位に処理が行われるが、その画素ブロックにおいて副走査方向に隣接する画素の個数を示す変数ｎを２と仮定し、副走査方向に２画素単位での処理を行う例を示す。
【００１５】
まずステップＳ１では、入力画像解析部１００において、副走査方向に隣接する２つの画素の画素値の差分を順次演算し、閾値比較を行う。この処理を、図３を用いて詳細に説明する。図３は、元画像データの一部（主走査方向に１〜７画素目、副走査方向に１〜２画素目まで）を示しており、各画素（四角ブロックに対応）内の数字は画素値である。入力画像解析部１００はまず、主走査方向の１画素、副走査方向の２画素からなる画素ブロックにおける差分値を、下式に従って主走査方向に順次算出していく。
【００１６】
差分値＝｜上の画素の画素値−下の画素の画素値｜      ・・・(1)
図３において、主走査方向の１画素目における副走査方向に２画素分からなる画素ブロックについて、画素値の差分は、(1)式を適用すると｜１００−５０｜＝５０である。
【００１７】
次に入力画像解析部１００は、上記のように算出した差分値が所定の閾値以上であるか否かを判断し、該判断結果を示す２ビットの判定信号と、処理対象の２画素の差分値を、出力画素選択部１０４へ出力する。なお、この出力のタイミングは、現在処理中の２画素が出力画素選択部１０４にて処理されるタイミングで行われる。
【００１８】
なお、上記２ビットの判定信号には、処理対象の２画素の内、どちらの画素値が大きいかを示す情報も含まれている。具体的には、判定信号の第０ビットにおいてどちらの画素値が大きいかを示し、１であれば上の画素値の方が大きく、０であれば下の画素値の方が大きい旨を示す。また、判定信号の第１ビットにおいて差分値が閾値を超えているか否かを示し、１であれば閾値を超えており、０であれば閾値を超えていない旨を示す。
【００１９】
以下、入力画像解析部１００における差分値出力及び判定信号生成について、具体的な数値を用いて説明を行う。例えば図３において、主走査方向５画素目の副走査方向２画素からなる画素ブロックにおける差分値は、(1)式により｜１２０−５０｜＝７０である。ここで閾値を６０とした場合、差分値７０は該閾値を超えているため、閾値を超えている旨を示す判定信号を、該差分値７０と共に出力画素選択部１０４へ出力する。この場合、上の画素値の方が下の画素値よりも大きいことから、判定信号は第０ビット、第１ビットともに１となる。
【００２０】
図３に示す例の場合、主走査方向に１〜４画素目までの副走査方向２画素からなる画素ブロックにおける差分は｜１００−５０｜＝５０であり、同様に主走査方向５〜７画素目についての差分は｜１２０−５０｜＝７０である。よって、主走査方向の１〜４画素目までは、差分値が閾値（６０）を超えていないため、それぞれ、第０ビットが１で第１ビットが０である判定信号が、差分値５０と共に出力画素選択部１０４へ出力される。また、主走査方向５〜７画素目までは、差分値が閾値（６０）を超えているため、それぞれ、第０ビットが１で第１ビットが１である判定信号が、差分値７０と共に出力画素選択部１０４へ出力される。
【００２１】
このように入力画像解析部１００においては、副走査方向に隣接する画素の画素値の差分が大きい場合、これをエッジ部分と判断し、その情報を判定信号として出力画素選択部１０４へ送ることによって、出力画像データにおいてもエッジ特性が保存される。
【００２２】
なお、入力画像解析部１００において、元画像データの全てに対して上記差分値の算出および判定信号の出力が終了すると、元画像データはそのまま縦方向解像度変換部１０１へ出力される。
【００２３】
そしてステップＳ２において、縦方向解像度変換部１０１では、元画像データに対して縦方向（副走査方向）にｎ画素単位での平均化処理を施す。本実施形態ではｎ＝２の場合を例とするため、ここでは縦２画素平均化処理が行われる。すなわち、副走査方向において連続する２つの画素の値を下式のように平均化して、新たな１画素の値（平均画像データ）を生成する。
【００２４】
平均画像データ＝（上の画素の画素値＋下の画素の画素値）/２      ・・・(2)
ここで図４Ａおよび図４Ｂを用いて、縦２画素平均化処理について詳細に説明する。図４Ａおよび図４Ｂはそれぞれ、縦２画素平均化処理への入力および出力の画像データ例を示している。図４Ａにおいて、主走査方向に１画素目の副走査方向に２画素からなる画素ブロックは、該上下２画素の画素値がそれぞれ１００と５０である。この画素ブロックに対して縦２画素平均化処理を施すと、図４Ｂに示すように、対応する画素値が(2)式より７５として算出される。このように、主走査方向に１〜４画素目までは平均値が７５として算出され、同様に５〜７画素目までは平均値が８５として算出される。このように算出された平均値からなる図４Ｂに示す画像データは、入力γ補正部１０２へ順次出力される。図４Ｂからも分かるように、元画像データは縦２画素平均化処理によって副走査方向の画素数が半分に圧縮されるが、後述するステップＳ５において２倍に拡大されるため、最終的に得られる出力画像データは、元画像データのサイズに一致する。
【００２５】
次にステップＳ３において、解像度変換後の画像データに対し、入力γ補正部１０２におけるγ補正処理が行われる。
【００２６】
そしてステップＳ４では、多値誤差拡散処理部１０３において例えば９値の誤差拡散処理を行う。具体的には、２５６階調を９値に量子化する場合、２５６階調と９値の対応付けを図る閾値テーブルを用いることによって、誤差拡散により算出された注目画素の濃度値が９値化される。そして、該９値化後の誤差（残差）は保持され、次の画素の９値化時において、その周辺画素に対して保持されている上記誤差が重み付きで加算され、上記９値化が繰り返される。
【００２７】
次にステップＳ５では、出力画素選択部１０４において、多値誤差拡散処理部１０３から供給される９値の入力レベル（階調レベル）に対応させる２画素（画素ブロック）の画像データを選択する。出力画素選択部１０４において選択される画素数はすなわち、縦方向解像度変換部１０１において平均化対象となった画素数と同数である。すなわち、入力される１画素に対して出力する２画素を選択することにより、出力画像データの解像度が、平均化前の元画像データの解像度と同等となる。
【００２８】
以下、９値の入力レベルを０，１，２，３，４，５，６，７，８とし、図５に、本実施形態において各入力レベルに対応させる２画素（入力レベル対応画素値）の例を示す。この入力レベル対応画素値群は、出力画素の選択対象として、出力画素選択部１０４の内部メモリ（不図示）に予め保持されている。図５に示すように本実施形態では、入力レベルが０の場合、対応させる２画素の両方の画素値を０にする。そして、入力レベルが１つ上がるたびに、対応させる２画素の両方の画素値を、例えば３２ずつ大きくする。もちろん、入力レベル対応画素値は、図５に示す例に限定されない。
【００２９】
出力画素選択部１０４にはまた、上述したように、入力画像解析部１００から画素ブロックにおける差分値およびその判定信号が入力されている。出力画素選択部１０４において、例えば入力レベル４が入力され、対応する判定信号の第１ビットが０である（差分値が閾値を超えていない）場合、図６Ａに示すように、図５において画素値１２８に対応する２画素が選択され、ＰＷＭ処理部１０５へ出力される。
【００３０】
ここで、判定信号の第１ビットが１である（差分値が閾値を超えている）場合の出力画素選択処理について、説明する。多値誤差拡散処理部１０３から供給される入力レベルが４であり、入力画素解析部１００から画素ブロックにおける差分値１２８で、判定信号の第０ビット、第１ビット共に１であるとする。この場合、選択される２画素は、図５に示す入力レベル対応画素値には従わない。
【００３１】
出力画素選択部１０４には予め、差分値が閾値を超えていた場合に参照される、各差分値に対応した２画素の画像データ（差分値対応画素値）が、出力画素の選択対象としてやはり内部メモリに保持されている。判定信号の第１ビットが１である場合、まずこの差分値対応画素値が参照される。この場合、差分値１２８であるから、それに対応する２画素の値として、例えば１９２と６４が該メモリより選択される。次に、判定信号における第０ビットを参照して、上下どちらの画素値を大きい値にすべきかを決定する。この場合、第０ビットが１であることから、図６Ｂに示すように、上の画素値が下の画素値より大きくなるように、すなわち上の画素値を１９２、下の画素値を６４に決定する。このように画素値が決定した２画素は、ＰＷＭ処理部１０５に出力される。
【００３２】
ここで図６Ａと図６Ｂとを比較すると、出力する２画素の平均画素値はいずれも１２８と同じであるが、元画像データにおける差分値が大きかった図６Ｂの方が、より画像のエッジ特性を再現するように、出力画素値が選択されていることが分かる。
【００３３】
このように、出力画素選択部１０４では入力画像解析部１００からの判定信号に基づき、元画像データにおけるエッジ特性を再現するように、出力画像を生成することができる。
【００３４】
次に、ステップＳ６では、ＰＷＭ処理部１０５において、記録ドットを安定して出力させるためのパルス幅変調（ＰＷＭ）処理を行う。図７は、本実施形態のＰＷＭ処理によるパルス幅変調例を示す図である。本実施形態では図７に示すように、出力画素選択部１０４から入力される画素データのうち、主走査方向の奇数番目についてはドットを右側から成長させ、偶数番目については左側から成長させる。ドットの成長をこのように制御することにより、隣接したドットを固めるように表現でき、より安定したドット形成が可能となる。ステップＳ６のＰＷＭ処理が終了することにより、本実施形態の画像処理装置１における出力画像データが完成する。
【００３５】
以上説明したように本実施形態によれば、隣接する画素を平均化するに先立って、元画像データにおける誤差等の解析情報を保持しておき、平均化によって低減された画素数に対する誤差拡散処理の終了後に、該解析情報に基づいて出力画素値を制御する。これにより、元画像データのエッジ特性を失うことなく、高画質な出力画像を高速に得ることができる。
【００３６】
さらに、該解析情報に基づいてドットの成長方向を制御したＰＷＭ処理を施すことにより、さらに安定したドットを記録紙上に形成することができる。
【００３７】
なお、上述したように本実施形態では、元画像データの階調数が２５６、出力画像データは元画像データと同解像度で階調数が９、平均化の単位である画素ブロックの副走査方向の画素数が２である例について説明を行った。本発明はもちろんこの例に限定されず、第１の階調数からなる画像データを、より小さい第２の階調数からなる画像データに変換する画像処理装置および画像処理方法に対して適用可能である。この際に、入力画像の副走査方向に隣接する複数個の画素について、その差分値を解析した上で平均化し、該解析結果に基づいて、複数個の出力画素値を選択するものであれば良い。すなわち、階調数や平均化対象単位となる画素数として、他の数を設定可能であることは言うまでもない。
【００３８】
また、本実施形態では元画像データにおける２５６階調を、多値誤差拡散処理によって出力画像データ相当の９階調に低減する例を示した。本発明における多値誤差拡散処理後の階調数は、元画像データよりも低階調であればよく、出力画像データの階調数に等しくなくても構わない。例えば、まずＬ階調の元画像データに対して多値誤差拡散処理を施すことによって、Ｍ階調（Ｍ＜Ｌ）の低階調画像データを得る。そして、該Ｍ階調の画像データに対する出力画素選択時に、Ｎ階調（Ｎ≦Ｍ）を実現するように画素値を割り当てて、出力画像データを作成しても良い。すなわち、まず上記第１の階調数Ｌからなる画像データを、多値誤差拡散処理によって、上記第２の階調数以上であるＭ階調の低階調画像データに変換する。そしてさらに出力画素選択時に、該Ｍ階調画像データを上記第２の階調数Ｎからなる出力画像データに変換する。
【００３９】
＜第２実施形態＞
以下、本発明に係る第２実施形態について説明する。
【００４０】
図８は、第２実施形態に係る画像処理装置２の構成を示すブロック図である。図８に示されるように、第２実施形態の画像処理装置２は、上述した第１実施形態に示す画像処理装置１とほぼ同様の構成からなるが、入力画像解析部２００、多値誤差拡散処理部２０３、および出力画素選択部２０４における動作が、第１実施形態とは異なる。
【００４１】
入力画像解析部２００においては、第１実施形態と同様に画素ブロックにおける差分値に基づく２ビットの判定信号を生成し、この判定信号のみを、多値誤差拡散処理部２０３と出力画素選択部２０４へ出力することを特徴とする。なお、判定信号の構成については上述した第１実施形態と同様である。第２実施形態では、多値誤差拡散処理部２０３において、判定信号に応じて多値誤差拡散の量子化値を切り替えることを特徴とする。
【００４２】
以下、図８に示す構成からなる第２実施形態における画像処理装置２の動作について、詳細に説明する。第２実施形態における画像処理は、基本的に上述した第１実施形態で図２に示したフローチャートと同様である。以下、元画像データはＣＭＹＫのカラー画像で各色の階調数Ｌは２５６であり、また、出力画像データは元画像データと同解像度で階調数Ｎが９もしくは３であるとする。また、処理単位となる画素ブロックにおいて副走査方向に隣接する画素の個数ｎを２と仮定し、以下説明する。
【００４３】
まずステップＳ１で、入力画像解析部１００における入力画像解析処理が行われるが、該解析により得られた２ビットの判定信号が、多値誤差拡散処理部２０３及び出力画素選択部２０４に出力される点が、第１実施形態と異なる。
【００４４】
なお、次のステップＳ２における縦２画素平均化処理、およびステップＳ３における入力γ補正処理については、第１実施形態と同様である。
【００４５】
次に、ステップＳ４における多値誤差拡散処理部２０３の動作について説明する。第２実施形態における多値誤差拡散処理としては、３値誤差拡散処理と９値誤差拡散処理を行うことを特徴とする。３値誤差拡散処理は、第１実施形態で説明した９値誤差拡散処理と量子化値が異なるだけで、同様の方法によって実現される。すなわち、２５６階調を３値化する場合、２５６階調と３値の対応付けを図るしきい値テーブルを用いれば良い。多値誤差拡散処理部２０３においては、入力画像解析部１００から出力された判定信号により、３値誤差拡散処理と９値誤差拡散処理のいずれを適用するかを切り替える。例えば、判定信号の第１ビットが１である、すなわち差分値が閾値を超えている旨が示された場合には、エッジ部分であるとみなされるため、エッジを強調するために３値誤差拡散処理が実行される。一方、該第１ビットが０であり、すなわち差分値が閾値を超えていない旨が示された場合には、エッジ部分ではないとみなされ、より滑らかな階調表現を行うために９値誤差拡散処理が実行される。
【００４６】
次に、ステップＳ５における出力画素選択部２０４の動作について説明する。出力画素選択部２０４には、多値誤差拡散処理部２０３で行われた誤差拡散処理の種類（３値／９値）によって、入力される画像データのレベル数が異なる。９値誤差拡散処理が行われた場合には９値の入力レベル（階調レベル）０，１，２，３，４，５，６，７，８が入力され、３値誤差拡散処理が行われた場合には３値の入力レベル（階調レベル）０，１，２が入力される。出力画素選択部２０４には、入力画像解析部１００からの判定信号も入力されているため、差分値が閾値を超えているか否かを示す第１ビットに基づいて、実施された誤差拡散処理の種類を判別することができる。すなわち、判定信号の第１ビットが１であれば３値、０であれば９値の誤差拡散処理が施されたものと判定する。
【００４７】
ここで図９に、３値誤差拡散処理に対応する、それぞれの入力レベルに対応させる２画素の例を示す。図９によれば、３値誤差拡散処理後の入力レベルが０の場合、対応させる２画素の両方の画素値を０にする。また入力レベルが１の場合は、２画素のうちの一方の画素値を２５５にし、他方の画素値を０にする。また入力レベルが２の場合は、対応させる２画素の両方の画素値を２５５にする。したがって、例えば３値誤差拡散処理による入力レベルが１で、判定信号の第１ビットが１で第０ビットが１であった場合には、ＰＷＭ処理部１０５へ出力する２画素のうち、上の画素の画素値を２５５、下の画素の画素値を０に設定する。
【００４８】
このように３値誤差拡散処理を行う場合、出力画素選択部２０４には、上述した第１実施形態の出力画素選択部１０４のように各差分値に対応した２画素の画像データ（差分値対応画素値）を内部メモリに保持することなく、適切な出力画素選択を可能とする。なお、９値誤差拡散処理が実行された場合（第２実施形態では差分値が閾値以下の場合）における出力画素選択処理については、上述した第１実施形態と同様であるため説明を省略する。
【００４９】
そして、次のステップＳ６におけるＰＷＭ処理は、第１実施形態と同様である。
【００５０】
なお第２実施形態では、元画像データのエッジ特性を示す判定信号に応じて３値／９値の誤差拡散処理を切り替える例を示したが、もちろん本発明はこの例に限定されず、多値誤差拡散処理の量子化値を、エッジ特性に応じて適宜切り替えるものであれば良い。
【００５１】
以上説明したように第２実施形態によれば、隣接する画素を平均化するに先立って、元画像データの解析情報を保持しておき、平均化によって低減された画素数に対する誤差拡散処理の終了後に、該解析情報に基づいて多値誤差拡散処理を切り替える。これにより、特に低階調（第２実施形態では３値）の多値誤差拡散処理を行う場合には、出力画素選択部２０４に差分値に応じた画素値を保持することなく、よりエッジを強調した、高画質な出力画像を高速に得ることができる。
【００５２】
なお、上述した第１実施形態と第２実施形態とを、同時に実現することも有効である。すなわち、処理対象の色毎に、第１実施形態と第２実施形態を切り替える。例えば、ＣＭＹＫのうち、ＣとＹには第１実施形態を適用し、ＭとＫには第２実施形態を適用する。これにより、色に応じた誤差拡散処理が可能となり、さらなる画質の向上が望める。
【００５３】
＜他の実施形態＞
本発明は例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能である。具体的には、複数の機器（例えば、ホストコンピュータ、インタフェース機器、撮影装置、webアプリケーション等）から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００５４】
本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。なお、この場合のプログラムとは、実施形態において図に示したフローチャートに対応したコンピュータ可読のプログラムである。
【００５５】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００５６】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
【００５７】
プログラムを供給するための記録媒体としては、以下に示す媒体がある。例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD-ROM，DVD-R)などである。
【００５８】
プログラムの供給方法としては、以下に示す方法も可能である。すなわち、クライアントコンピュータのブラウザからインターネットのホームページに接続し、そこから本発明のコンピュータプログラムそのもの(又は圧縮され自動インストール機能を含むファイル)をハードディスク等の記録媒体にダウンロードする。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【００５９】
また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせることも可能である。すなわち該ユーザは、その鍵情報を使用することによって暗号化されたプログラムを実行し、コンピュータにインストールさせることができる。
【００６０】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００６１】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、実行されることによっても、前述した実施形態の機能が実現される。すなわち、該プログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行うことが可能である。
【図面の簡単な説明】
【００６２】
【図１】本発明の第１実施形態における画像処理装置の構成を示すブロック図である。
【図２】第１実施形態における画像処理動作を示すフローチャートである。
【図３】第１実施形態における元画像データ例を示す図である。
【図４Ａ】第１実施形態における縦方向解像度変換前の画像データ例を示す図である。
【図４Ｂ】第１実施形態における縦方向解像度変換後の画像データ例を示す図である。
【図５】第１実施形態における、入力レベル対応画素値例を示す図である。
【図６Ａ】第１実施形態において差分値が閾値以下の場合の出力２画素の選択例を示す図である。
【図６Ｂ】第１実施形態において差分値が閾値を超えている場合の出力２画素の選択例を示す図である。
【図７】第１実施形態におけるＰＷＭ処理例を示す図である。
【図８】第２実施形態における画像処理装置の構成を示すブロック図である。
【図９】第２実施形態における、３値の入力レベルと出力する２画素の対応例を示す図である。
【図１】
2010103861.tif 000003
【図２】
2010103861.tif 000004
【図３】
2010103861.tif 000005
【図４Ａ】
2010103861.tif 000006
【図４Ｂ】
2010103861.tif 000007
【図５】
2010103861.tif 000008
【図６Ａ】
2010103861.tif 000009
【図６Ｂ】
2010103861.tif 000010
【図７】
2010103861.tif 000011
【図８】
2010103861.tif 000012
【図９】
2010103861.tif 000013