(57)【特許請求の範囲】
【請求項１】
多値画像を構成する各画素の輝度値を入力する輝度値入力手段と、
前記多値画像をブロックに分割するブロック分割手段と、
前記輝度値入力手段により入力された輝度値に基づいて、二値化すべき画素を含んだ局所的な平均輝度値を算出する平均輝度値算出手段と、
前記平均輝度値算出手段によりブ算出された局所的な平均輝度値の大きさに応じて二値化閾値を当該局所的な平均輝度値より低く設定する二値化閾値設定手段と、
前記二値化閾値設定手段により設定された二値化閾値により前記二値化すべき画素を二値化する二値化手段とを備え、
前記二値化閾値設定手段は、
前記平均輝度値算出手段により算出された局所的な平均輝度値に対して、当該平均輝度値に応じた係数を乗算して、ブロックニ値化閾値を前記ブロック毎に設定するブロック二値化閾値設定手段と、
前記ブロック二値化閾値を補間して、画素毎の二値化閾値を設定する補間手段とを有する
ことを特徴とする画像二値化装置。
【請求項２】
前記二値化閾値設定手段は、前記平均輝度値算出手段により算出された局所的な平均輝度値に応じた補正量であって、平均輝度値が所定の中間レンジにある場合には当該中間レンジ外にある場合よりも大きな値である補正量を当該局所的な平均輝度値から減算することにより二値化閾値を設定することを特徴とする請求項１に記載の画像二値化装置。
【請求項３】
前記二値化閾値設定手段は、前記平均輝度値算出手段により算出された局所的な平均輝度値に対して、平均輝度値が大きな値となるほどに大きな値の補正量を用いて乗算することにより二値化閾値を設定することを特徴とする請求項１に記載の画像二値化装置。
【請求項４】
前記平均輝度値算出手段により算出された局所的な平均輝度値に第１の補正量を減算して第１の二値化閾値を算出する減算閾値算出手段と、
前記平均輝度値算出手段により算出された局所的な平均輝度値に１未満の値である第２の補正量を乗じて第２の二値化閾値を算出する乗算閾値算出手段と、
前記平均輝度値算出手段により算出された局所的な平均輝度値の大きさが、所定の比較値より大であるか小であるかを判定する比較判定手段とを備え、
前記二値化閾値設定手段は、
前記比較判定手段により前記局所的な平均輝度値の大きさが前記比較値より大であると判定された場合には、前記減算閾値算出手段により算出される前記第１の二値化閾値を採用することを決定し、前記比較判定手段により前記局所的な平均輝度値の大きさが前記比較値より小であると判定された場合には、前記乗算閾値算出手段により算出される前記第２の二値化閾値を採用することを決定する二値化閾値決定手段を有し、
前記二値化手段は、前記二値化閾値決定手段により決定された二値化閾値により前記二値化すべき画素を二値化する
を備えたことを特徴とする請求項１乃至３のいずれか一項に記載の画像二値化装置。
【請求項５】
前記減算閾値算出手段は、前記平均輝度値算出手段により算出された局所的な平均輝度値に対して、当該輝度値の大きさに応じた補正量を減算することにより前記第１の二値化閾値を算出することを特徴とする請求項４に記載の画像二値化装置。
【請求項６】
前記乗算閾値設定手段は、前記平均輝度値算出手段により算出された局所的な平均輝度値に対して、当該輝度値の大きさに応じた補正量で乗算することにより前記第２の二値化閾値を算出することを特徴とする請求項４にまたは５に記載の画像二値化装置。
【請求項７】
前記局所的な平均輝度値を算出するブロックに隣接するブロックの平均輝度値に基づいて前記比較値を決定する比較値決定手段を備えたことを特徴とする請求項６に記載の画像二値化装置。
【請求項８】
多値画像を構成する各画素の濃度値を入力する濃度値入力手段と、
前記多値画像をブロックに分割するブロック分割手段と、
前記濃度値入力手段により入力された濃度値に基づいて、二値化すべき画素を含んだ局所的な平均濃度値を算出する平均濃度値算出手段と、
前記平均濃度値算出手段により算出された局所的な平均濃度値の大きさに応じて二値化閾値を当該局所的な平均濃度値より高く設定する二値化閾値設定手段と、
前記二値化閾値設定手段により設定された二値化閾値により前記二値化すべき画素を二値化する二値化手段とを備え、
前記二値化閾値設定手段は、
前記平均輝度値算出手段により算出された局所的な平均濃度値に対して、当該平均濃度値に応じた係数を乗算して、ブロックニ値化閾値を前記ブロック毎に設定するブロック二値化閾値設定手段と、
前記ブロック二値化閾値を補間して、画素毎の二値化閾値を設定する補間手段とを有する
ことを特徴とする画像二値化装置。
【請求項９】
前記二値化閾値設定手段は、前記平均濃度値算出手段により算出された局所的な平均濃度値に応じた補正量であって、平均濃度値が所定の中間レンジにある場合には当該中間レンジ外にある場合よりも大きな値である補正量を当該局所的な平均濃度値に加算することにより二値化閾値を設定することを特徴とする請求項８に記載の画像二値化装置。
【請求項１０】
前記二値化閾値設定手段は、前記平均濃度値算出手段により算出された局所的な平均濃度値に対して、平均濃度値が大きな値となるほどに小さな値の補正量を用いて乗算することにより二値化閾値を設定することを特徴とする請求項８に記載の画像二値化装置。
【請求項１１】
前記平均濃度値算出手段により算出された局所的な平均濃度値に第１の補正量を加算して第１の二値化閾値を算出する加算閾値算出手段と、
前記平均濃度値算出手段により算出された局所的な平均濃度値に１以上の値である第２の補正量を乗じて第２の二値化閾値を算出する乗算閾値算出手段と、
前記平均濃度値算出手段により算出された局所的な平均濃度値の大きさが、所定の比較値より大であるか小であるかを判定する比較判定手段とを備え、
前記二値化閾値設定手段は、
前記比較判定手段により前記局所的な平均濃度値の大きさが前記比較値より小であると判定された場合には、前記加算閾値算出手段により算出される前記第１の二値化閾値を採用することを決定し、前記比較判定手段により前記局所的な平均濃度値の大きさが前記比較値より大であると判定された場合には、前記乗算閾値算出手段により算出される前記第２の二値化閾値を採用することを決定する二値化閾値決定手段を有し、
前記二値化手段は、前記二値化閾値決定手段により決定された二値化閾値により前記二値化すべき画素を二値化する
を備えたことを特徴とする請求項８乃至１０のいずれか一項に記載の画像二値化装置。
【請求項１２】
前記加算閾値算出手段は、前記平均濃度値算出手段により算出された局所的な平均濃度値に対して、当該濃度値の大きさに応じた補正量を加算することにより前記第１の二値化閾値を算出することを特徴とする請求項１１に記載の画像二値化装置。
【請求項１３】
前記乗算閾値設定手段は、前記平均濃度値算出手段により算出された局所的な平均濃度値に対して、当該濃度値の大きさに応じた補正量で乗算することにより前記第２の二値化閾値を算出することを特徴とする請求項１１または１２に記載の画像二値化装置。
【請求項１４】
前記局所的な平均濃度値を算出するブロックに隣接するブロックの平均濃度値に基づいて前記比較値を決定する比較値決定手段を備えたことを特徴とする請求項８に記載の画像二値化装置。
【請求項１５】
多値画像を構成する画素の輝度値を入力し、前記多値画像をブロックに分割し、二値化すべき画素を含んだ局所的な画素集合の平均輝度値より低い値の二値化閾値であって白飛びしている画素集合に対しては白飛びしていない画素集合に対してよりも平均輝度値との差が小さな二値化閾値を決定する場合、当該局所的な画素集合の平均輝度値に対して、当該平均輝度値に応じた係数を乗算して、ブロックニ値化閾値をブロック毎に設定しこれを補間して、画素毎の二値化閾値を設定し、当該局所的な画素集合の画像を前記二値化閾値を用いて二値化して出力することを特徴とする画像二値化方法。
【請求項１６】
多値画像を構成する画素の濃度値を入力し、前記多値画像をブロックに分割し、二値化すべき画素を含んだ局所的な画素集合の平均濃度値より高い値の二値化閾値であって白飛びしている画素集合に対しては白飛びしていない画素集合に対してよりも平均濃度値との差が小さな二値化閾値を決定する場合、当該局所的な画素集合の平均濃度値に対して、当該平均濃度値に応じた係数を乗算して、ブロックニ値化閾値をブロック毎に設定しこれを補間して、画素毎の二値化閾値を設定し、当該局所的な画素集合の画像を前記二値化閾値を用いて二値化して出力することを特徴とする画像二値化方法。
【請求項１７】
コンピュータに、請求項１５又は請求項１６に記載の画像二値化方法を実行させることを特徴とする画像二値化プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像二値化装置、画像二値化方法および画像二値化プログラムに関し、特に、光源の一定しない画像入力装置等で入力された多値画像から表面反射によるコントラスト低下の影響や輝度ムラを取り除いて二値化する画像二値化装置、画像二値化方法および画像二値化プログラムに関する。
【０００２】
【従来の技術】
従来、文書を電子化して保存する場合、専ら画像入力装置としてスキャナ、または、複写機もしくはファクシミリ装置のスキャナ部を使用していた。この様なスキャナ（スキャナ部）は、光源を装置内に備え、光源から出た光の文書（原稿）による反射光をＣＣＤなどで読み取るものであった。また、読み取られた画像は必要に応じて二値化して保存されていた。このようにして読み取られた画像については、光源および光学系が一定であるので、輝度ムラや影の発生は一定したものとなり、容易に補正を行うことができた。従って、高品質の画像を出力することができ、デジタル画像を高品質、かつ、容易に二値化することができた。
【０００３】
一方、近年は、ビデオカメラやデジタルカメラが発達し、この様な機器から入力した画像を文字認識したいという要求も高まっている。特にデジタルカメラは、高画素化と小型化が著しく、携帯情報収集ツールとして様々な用途に使用され始めている。たとえば文書、看板、広告などの文字情報は二値画像で十分な情報が得られ、しかも保存に必要な記憶容量も多値画像に比して小さいので、二値画像として保存することが有利である。また、二値化した画像をファクシミリ送信したり、文字認識をして再利用することもできる。
【０００４】
なお、この様な、デジタル画像を適切に二値化する従来技術としては、特開平３−２３７５７１号公報の「画像の２値化しきい値算出装置」や、特開平７−２１２５９１号公報の「画像二値化装置」が知られている。
【０００５】
【発明が解決しようとする課題】
しかしながら、従来の技術では以下の問題点があった。デジタルカメラで撮影した画像は、光源の数、位置、強さ等が様々であり、影や輝度ムラが発生しやすい。しかも影や輝度ムラが一定しないため、複写機等のスキャナ部のように一定の補正を適用することができない。従って、デジタルカメラで撮像した画像は、高品質に二値化出来ないという問題点があった。
【０００６】
特に、フラッシュを使用した場合には、光源からの光のあたり具合によっては、原稿表面で正反射が起こり、この表面反射により文字と背景の間のコントラストが低下してしまう。すなわち、表面反射が発生した領域は、表面反射が発生しない領域と比較して平均輝度が高くなり（もしくは平均濃度が低くなり）、いわゆる白飛びが生じてしまう。
【０００７】
従って、従来技術のように、二値化閾値が平均輝度（もしくは平均濃度）に関係なく常に同じ演算である場合には、表面反射の起こっている領域では文字が正しく二値化できなくなるという問題点があった。換言すると表面反射が発生している画像を高品質に二値化できないという問題点があった。
【０００８】
本発明は上記に鑑みてなされたものであって、多値画像を高品質に二値化することを目的とする。
【０００９】
【課題を解決するための手段】
上記の目的を達成するために、請求項１に記載の画像二値化装置は、多値画像を構成する各画素の輝度値を入力する輝度値入力手段と、前記多値画像をブロックに分割するブロック分割手段と、前記輝度値入力手段により入力された輝度値に基づいて、二値化すべき画素を含んだ局所的な平均輝度値を算出する平均輝度値算出手段と、前記平均輝度値算出手段によりブ算出された局所的な平均輝度値の大きさに応じて二値化閾値を当該局所的な平均輝度値より低く設定する二値化閾値設定手段と、前記二値化閾値設定手段により設定された二値化閾値により前記二値化すべき画素を二値化する二値化手段とを備え、前記二値化閾値設定手段は、前記平均輝度値算出手段により算出された局所的な平均輝度値に対して、当該平均輝度値に応じた係数を乗算して、ブロックニ値化閾値を前記ブロック毎に設定するブロック二値化閾値設定手段と、前記ブロック二値化閾値を補間して、画素毎の二値化閾値を設定する補間手段とを有することを特徴とする。
【００１０】
すなわち、請求項１にかかる発明は、平均輝度値に応じて値の異なる二値化閾値を用い、表面反射が発生しているような領域に対して適切な二値化閾値を採用する。また、局所的な平均輝度値に対して、当該平均輝度値に応じた係数を乗算してブロック二値化閾値を設定することにより、高輝度領域でのブロック二値化閾値を平均濃度値から大きくずれないようにすることができ、白飛びが発生しているような領域でも、より高品質な二値化が可能となる。
【００１１】
また、請求項２に記載の画像二値化装置は、請求項１に記載の画像二値化装置において、前記二値化閾値設定手段が、前記平均輝度値算出手段により算出された局所的な平均輝度値に応じた補正量であって、平均輝度値が所定の中間レンジにある場合には当該中間レンジ外にある場合よりも大きな値である補正量を当該局所的な平均輝度値から減算することにより二値化閾値を設定することを特徴とする。
【００１２】
すなわち、請求項２にかかる発明は、表面反射が生じる輝度レンジでは平均輝度値と二値化閾値との差を小さくするような補正量により適切な二値化閾値を採用しつつ、中間レンジではある程度大きな補正量により適切な二値化閾値を採用する。また、低輝度側での平均輝度値と二値化閾値との差を大きくしないようにして、低輝度側でのノイズの発生を抑制する。
【００１３】
また、請求項３に記載の画像二値化装置は、請求項１に記載の画像二値化装置において、前記二値化閾値設定手段が、前記平均輝度値算出手段により算出された局所的な平均輝度値に対して、平均輝度値が大きな値となるほどに大きな値の補正量を用いて乗算することにより二値化閾値を設定することを特徴とする。
【００１４】
すなわち、請求項３にかかる発明は、表面反射が生じる輝度レンジにおいて、平均輝度値と二値化閾値との差を小さくするような補正量により適切な二値化閾値を採用する。
【００１５】
また、請求項４に記載の画像二値化装置は、多値画像を構成する各画素の輝度値を入力する輝度値入力手段と、前記輝度値入力手段により入力された輝度値に基づいて、二値化すべき画素を含んだ局所的な平均輝度値を算出する平均輝度値算出手段と、前記平均輝度値算出手段により算出された局所的な平均輝度値に第１の補正量を減算して第１の二値化閾値を算出する減算閾値算出手段と、前記平均輝度値算出手段により算出された局所的な平均輝度値に１未満の値である第２の補正量を乗じて第２の二値化閾値を算出する乗算閾値算出手段と、前記平均輝度値算出手段により算出された局所的な平均輝度値の大きさが、所定の比較値より大であるか小であるかを判定する比較判定手段とを備え、前記二値化閾値設定手段は、前記比較判定手段により前記局所的な平均輝度値の大きさが前記比較値より大であると判定された場合には、前記減算閾値算出手段により算出される前記第１の二値化閾値を採用することを決定し、前記比較判定手段により前記局所的な平均輝度値の大きさが前記比較値より小であると判定された場合には、前記乗算閾値算出手段により算出される前記第２の二値化閾値を採用することを決定する二値化閾値決定手段を有し、前記二値化手段は、前記二値化閾値決定手段により決定された二値化閾値により前記二値化すべき画素を二値化することを特徴とする。
【００１６】
すなわち、請求項４にかかる発明は、表面反射が生じている様な領域に対する二値化閾値と、通常の領域に対する二値化閾値を使い分け、表面反射が生じている様な領域に対しては、平均輝度値が大きくなるにつれて平均輝度値との差が相対的に小さくなる二値化閾値を採用し、通常の領域に対しては、二値化後の全体的な調子が滑らかとなる二値化閾値を採用する。
【００１７】
また、請求項５に記載の画像二値化装置は、請求項４に記載の画像二値化装置において、前記減算閾値算出手段が、前記平均輝度値算出手段により算出された局所的な平均輝度値に対して、当該輝度値の大きさに応じた補正量を減算することにより前記第１の二値化閾値を算出することを特徴とする。
【００１８】
すなわち、請求項５にかかる発明は、表面反射が生じる輝度レンジでより適切な二値化閾値を採用できる。
【００１９】
また、請求項６に記載の画像二値化装置は、請求項４または５に記載の画像二値化装置において、前記乗算閾値設定手段が、前記平均輝度値算出手段により算出された局所的な平均輝度値に対して、当該輝度値の大きさに応じた補正量で乗算することにより前記第２の二値化閾値を算出することを特徴とする。
【００２０】
すなわち、請求項６にかかる発明は、表面反射が生じていない領域において、境界が発生せず滑らかな二値画像が得られる二値化閾値を採用する。
【００２３】
また、請求項７に記載の画像二値化装置は、請求項７に記載の画像二値化装置において、前記局所的な平均輝度値を算出するブロックに隣接するブロックの平均輝度値に基づいて前記比較値を決定する比較値決定手段を備えたことを特徴とする。
【００２４】
すなわち、請求項７にかかる発明は、多値画像の白飛びをより的確に判断して二値化閾値を設定する。
【００２５】
また、請求項８に記載の画像二値化装置は、多多値画像を構成する各画素の濃度値を入力する濃度値入力手段と、前記多値画像をブロックに分割するブロック分割手段と、前記濃度値入力手段により入力された濃度値に基づいて、二値化すべき画素を含んだ局所的な平均濃度値を算出する平均濃度値算出手段と、前記平均濃度値算出手段により算出された局所的な平均濃度値の大きさに応じて二値化閾値を当該局所的な平均濃度値より高く設定する二値化閾値設定手段と、前記二値化閾値設定手段により設定された二値化閾値により前記二値化すべき画素を二値化する二値化手段とを備え、前記二値化閾値設定手段は、前記平均輝度値算出手段により算出された局所的な平均濃度値に対して、当該平均濃度値に応じた係数を乗算して、ブロックニ値化閾値を前記ブロック毎に設定するブロック二値化閾値設定手段と、前記ブロック二値化閾値を補間して、画素毎の二値化閾値を設定する補間手段とを有することを特徴とする。
【００２６】
すなわち、請求項８にかかる発明は、平均濃度値に応じて値の異なる二値化閾値を用い、表面反射が発生しているような領域に対して適切な二値化閾値を採用する。局所的な平均濃度値に対して、当該平均濃度値に応じた係数を乗算してブロック二値化閾値を設定することにより、低濃度領域でのブロック二値化閾値を平均濃度値から大きくずれないようにすることができ、白飛びが発生しているような領域でも、より高品質な二値化が可能となる。
【００２７】
また、請求項９に記載の画像二値化装置は、請求項８に記載の画像二値化装置において、前記二値化閾値設定手段が、前記平均濃度値算出手段により算出された局所的な平均濃度値に応じた補正量であって、平均濃度値が所定の中間レンジにある場合には当該中間レンジ外にある場合よりも大きな値である補正量を当該局所的な平均濃度値に加算することにより二値化閾値を設定することを特徴とする。
【００２８】
すなわち、請求項９にかかる発明は、表面反射が生じる濃度レンジでは平均濃度値と二値化閾値との差を小さくするような補正量により適切な二値化閾値を採用しつつ、中間レンジではある程度大きな補正量により適切な二値化閾値を採用する。また、高濃度側での平均濃度値と二値化閾値との差を大きくしないようにして、高濃度側でのノイズの発生を抑制する。
【００２９】
また、請求項１０に記載の画像二値化装置は、請求項８に記載の画像二値化装置において、前記二値化閾値設定手段が、前記平均濃度値算出手段により算出された局所的な平均濃度値に対して、平均濃度値が大きな値となるほどに小さな値の補正量を用いて乗算することにより二値化閾値を設定することを特徴とする。
【００３０】
すなわち、請求項１０にかかる発明は、表面反射が生じている濃度レンジにおいて、平均濃度値と二値化閾値との差を小さくするような補正量により適切な二値化閾値を採用する。
【００３１】
また、請求項１１に記載の画像二値化装置は、多値画像を構成する各画素の濃度値を入力する濃度値入力手段と、前記濃度値入力手段により入力された濃度値に基づいて、二値化すべき画素を含んだ局所的な平均濃度値を算出する平均濃度値算出手段と、前記平均濃度値算出手段により算出された局所的な平均濃度値に第１の補正量を加算して第１の二値化閾値を算出する加算閾値算出手段と、前記平均濃度値算出手段により算出された局所的な平均濃度値に１以上の値である第２の補正量を乗じて第２の二値化閾値を算出する乗算閾値算出手段と、前記平均濃度値算出手段により算出された局所的な平均濃度値の大きさが、所定の比較値より大であるか小であるかを判定する比較判定手段とを備え、前記二値化閾値設定手段は、前記比較判定手段により前記局所的な平均濃度値の大きさが前記比較値より小であると判定された場合には、前記加算閾値算出手段により算出される前記第１の二値化閾値を採用することを決定し、前記比較判定手段により前記局所的な平均濃度値の大きさが前記比較値より大であると判定された場合には、前記乗算閾値算出手段により算出される前記第２の二値化閾値を採用することを決定する二値化閾値決定手段を有し、前記二値化手段は、前記二値化閾値決定手段により決定された二値化閾値により前記二値化すべき画素を二値化することを特徴とする。
【００３２】
すなわち、請求項１１にかかる発明は、表面反射が生じている様な領域に対する二値化閾値と、通常の領域に対する二値化閾値を使い分け、表面反射が生じている様な領域に対しては、平均濃度値が小さくなるにつれて平均濃度値との差が相対的に小さくなる二値化閾値を採用し、通常の領域に対しては、二値化後の全体的な調子が滑らかとなる二値化閾値を採用する。
【００３３】
また、請求項１２に記載の画像二値化装置は、請求項１１に記載の画像二値化装置において、前記加算閾値算出手段が、前記平均濃度値算出手段により算出された局所的な平均濃度値に対して、当該濃度値の大きさに応じた補正量を加算することにより前記第１の二値化閾値を算出することを特徴とする。
【００３４】
すなわち、請求項１２にかかる発明は、表面反射が生じている濃度レンジでより適切な二値化閾値を採用できる。
【００３５】
また、請求項１３に記載の画像二値化装置は、請求項１１または１２に記載の画像二値化装置において、前記乗算閾値設定手段が、前記平均濃度値算出手段により算出された局所的な平均濃度値に対して、当該濃度値の大きさに応じた補正量で乗算することにより前記第２の二値化閾値を算出することを特徴とする。
【００３６】
すなわち、請求項１３にかかる発明は、表面反射が生じていない領域において、境界が発生せず滑らかな二値画像が得られる二値化閾値を採用する。
【００３９】
また、請求項１４に記載の画像二値化装置は、請求項１３に記載の画像二値化装置において、前記局所的な平均濃度値を算出するブロックに隣接するブロックの平均濃度値に基づいて前記比較値を決定する比較値決定手段を備えたことを特徴とする。
【００４０】
すなわち、請求項１４にかかる発明は、多値画像の白飛びをより的確に判断して二値化閾値を設定する。
【００４１】
また、請求項１５に記載の画像二値化方法は、多値画像を構成する画素の輝度値を入力し、前記多値画像をブロックに分割し、二値化すべき画素を含んだ局所的な画素集合の平均輝度値より低い値の二値化閾値であって白飛びしている画素集合に対しては白飛びしていない画素集合に対してよりも平均輝度値との差が小さな二値化閾値を決定する場合、当該局所的な画素集合の平均輝度値に対して、当該平均輝度値に応じた係数を乗算して、ブロックニ値化閾値をブロック毎に設定しこれを補間して、画素毎の二値化閾値を設定し、当該局所的な画素集合の画像を前記二値化閾値を用いて二値化して出力することを特徴とする。
【００４２】
すなわち、請求項１５にかかる発明は、表面反射が生じている画像に対しても適正な二値化閾値を設定する。また、高輝度領域でのブロック二値化閾値を平均輝度値から大きくずれないようにすることができ、白飛びが発生しているような領域でも、より高品質な二値化が可能となる。
【００４３】
また、請求項１６に記載の画像二値化方法は、多値画像を構成する画素の濃度値を入力し、前記多値画像をブロックに分割し、二値化すべき画素を含んだ局所的な画素集合の平均濃度値より高い値の二値化閾値であって白飛びしている画素集合に対しては白飛びしていない画素集合に対してよりも平均濃度値との差が小さな二値化閾値を決定する場合、当該局所的な画素集合の平均濃度値に対して、当該平均濃度値に応じた係数を乗算して、ブロックニ値化閾値をブロック毎に設定しこれを補間して、画素毎の二値化閾値を設定し、当該局所的な画素集合の画像を前記二値化閾値を用いて二値化して出力することを特徴とする。
【００４４】
すなわち、請求項１６にかかる発明は、表面反射が生じている画像に対しても適正な二値化閾値を設定する。また、低濃度領域でのブロック二値化閾値を平均濃度値から大きくずれないようにすることができ、白飛びが発生しているような領域でも、より高品質な二値化が可能となる。
【００４５】
また、請求項１７に記載の画像二値化プログラムは、請求項１５又は請求項１６に記載の画像二値化方法を実行させることを特徴とする。
【００４６】
すなわち、請求項１７にかかる発明は、表面反射が生じている画像に対しても適正な二値化閾値を設定する。また、高輝度領域でのブロック二値化閾値を平均輝度値から大きくずれないようにすることができ又は低濃度領域でのブロック二値化閾値を平均濃度値から大きくずれないようにすることができ、白飛びが発生しているような領域でも、より高品質な二値化が可能となる。
【００４９】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照しながら詳細に説明する。
（実施の形態１）
実施の形態１では、本発明の画像二値化装置をデジタルカメラに適用した場合について説明する。図１は本発明の画像二値化装置をデジタルカメラに適用した場合の、画像データの入力から、二値化処理した画像（二値化データ）を記録するまでの装置構成の一例を示したブロック図である。なお、本実施例を含めて以降の実施例では主として輝度値に基づいて二値化閾値を設定する例を説明するが、濃度値に基づいて二値化閾値を設定してもよい。濃度値に基づいて二値化閾値を設定する場合については適宜説明する。
【００５０】
デジタルカメラ１００は、ＣＣＤ１０１と、Ａ／Ｄ変換器１０２と、ホワイトバランス調整器１０３と、画素補間器１０４と、輝度生成器１０５と、アパーチャ補正器１０６と、フレームメモリ１０７と、ＣＰＵ１０８と、ブロックバッファ１０９と、後述する平均輝度値算出器１２０、低輝度閾値設定器１２１および二値化閾値設定回路１２２と、二値化器１２３と、圧縮器１２４と、画像記憶メモリ１２５と、から構成される。
【００５１】
ＣＣＤ１０１は、デジタルカメラ１００の光学系（図示せず）により集光された光を電気信号に変換し、画像データとして多値画像を構成する各画素のＲＧＢアナログ信号を出力する。出力されたアナログ信号は、Ａ／Ｄ変換器１０２でデジタル信号に変換される。デジタル信号は、ホワイトバランス調整器１０３でホワイトバランスが調整される。ホワイトバランスが調整された画像データは画素補間器１０４において各画素で情報のないＲ、ＧまたはＢ信号の補間を行う。以降においてＲ、Ｇ、Ｂはそれぞれ赤色、緑色、青色または赤色の信号値、緑色の信号値、青色の信号値をそれぞれ示すものとする。
【００５２】
ここで、ＣＣＤ１０１のフィルタと画素補間器１０４の補間との関係について説明する。図２は、ＣＣＤ１０１の受光部の概念を示した概念図である。受光部には一定のパタンでＲ、ＧおよびＢのフィルタがかけられており、このフィルタによって色の違いが識別される。なお、人間の目の感度が高い緑色Ｇの画素については、他の色のフィルタより多く配置する構成とすることが通常である。添え字は位置（フィルタ番号）を識別する識別子として使用している。なお、図では中心部分のみフィルタ番号を付している。
【００５３】
図２において、Ｇ０の位置における赤色Ｒの補間信号値Ｒ（Ｇ０）および青色Ｂの補間信号値Ｂ（Ｇ０）は次式（１）のように算出される。
Ｒ（Ｇ０）＝（Ｒ０＋Ｒ２）／２
Ｂ（Ｇ０）＝（Ｂ０＋Ｂ１）／２ ‥‥（１）
【００５４】
また、Ｒ０、Ｂ０の位置における緑色Ｇの補間信号値Ｇ（Ｒ０）、Ｂ（Ｒ０）、Ｇ（Ｂ０）、Ｒ（Ｂ０）は次式（２）のように算出される。
Ｇ（Ｒ０）＝（Ｇ０＋Ｇ１＋Ｇ２＋Ｇ５）／４
Ｂ（Ｒ０）＝（Ｂ０＋Ｂ１＋Ｂ４＋Ｂ５）／４
Ｇ（Ｂ０）＝（Ｇ０＋Ｇ１＋Ｇ３＋Ｇ６）／４
Ｒ（Ｂ０）＝（Ｒ０＋Ｒ２＋Ｒ４＋Ｒ５）／４‥‥（２）
画素補間器１０４は以上に表される補間を全画素位置で行い、各画素について補間されたＲＧＢ信号値を出力する。
【００５５】
輝度生成器１０５は、補間された各画素から輝度信号値Ｙを次式（３）により生成する。
Ｙ＝０．３４Ｒ＋０．５５Ｇ＋０．１１Ｂ ‥‥（３）
式（３）を用いてデジタル値である輝度信号値を計算するには乗算器および加算器を必要とするが、式（３）を次式（４）で近似することにより、輝度生成器１０５は、加算器のみで構成することが可能となる。
Ｙ＝（２／８）Ｒ＋（５／８）Ｇ＋（１／８）Ｂ ‥‥（４）
従って、近似式（４）を用い輝度信号値を算出する場合は、簡易な回路構成で輝度値Ｙを算出することが可能となり、回路コスト、演算速度、および消費電力において優れたデジタルカメラの提供が可能となる。
【００５６】
なお、濃度値に基づいて二値化閾値を設定する場合は、輝度信号の反転値（すなわち、階調レンジ数−輝度値）を採用することができる。たとえば、Ａ／Ｄ変換器１０２で２５６値（０〜２５５）を出力する場合に輝度信号値が２００である場合には、濃度値は５５（２５５−２００）となる。なお、この様な反転値を用いることなく、別途ＲＧＢ信号から濃度値を算出してもよい。
【００５７】
輝度信号値Ｙは、アパーチャ補正器１０６により、画像データの高域部分が強調される。アパーチャ補正は公知の５×５サイズの高域強調フィルタを使用することにより行う。高域強調された輝度値信号はフレームメモリ１０７に一時記憶される。
【００５８】
ＣＰＵ１０８は、ブロックサイズとサンプリング間隔（サンプリング周期）を計算し、また、以下に説明するブロックバッファ１０９、平均輝度値算出器１２０、その他のデジタルカメラ１００の各回路、各部位を制御する。多値画像はＣＣＤの大きさ（画素数）により画像サイズが決まるので、ＣＰＵ１０８は、画像サイズを基に多値画像を二値化するのに必要なブロックサイズと、サンプリング間隔（サンプリング周期）を計算する。
【００５９】
デジタルカメラ１００のレンズ等の光学系に起因する輝度値ムラは、光源の位置や強さにより異なるが、概して画像の中心付近が明るく、周辺にいくに従って暗くなる傾向がある。従って、ＣＰＵ１０８は、光学系の周辺減光を考慮して画像の分割パタンを計算する。なお、記憶部（図示せず）などに設定されている一定のブロック分割パタンから分割パタンを選択することもできる。
【００６０】
図３は、多値画像をブロックに分割する分割例を示した図である。通常の正方形分割に加え、図３（ａ）は、正方形、長方形、三角形の組み合わせにより画像の中心（レンズの中心）を点対称として多値画像を分割した例を示している。一方、図３（ｂ）は、画像の中心から同心円に基づいて多値画像を分割した例である。光学系を考慮してブロック分割することにより、ブロック内の明るさが、より均一なものとなり、後述するようにブロック単位で二値化閾値を設定するので、高画質な多値画像の二値化が可能となる。
【００６１】
なお、以下では説明の簡単のため正方形に分割されたブロックを用いることとするが、あるブロックの平均輝度値が隣接ブロックに比して異常に高い場合には、白飛びが発生している可能性があるので、隣接ブロックも含めて、ブロックの細分化を図り、白飛びの発生している領域を適切に切り分けてブロックの再構築を行ってもよい。以上のようなブロックを用いて画像を局所的な画素集合に分割することにより高品質な二値画像を得ることが可能となる。
【００６２】
ブロックバッファ１０９は、ＣＰＵ１０８により決定されたブロックの分割パタンに基づいてブロック単位で画像をフレームメモリ１０７から読み出し、一時記憶する。なお、ブロックバッファ１０９に蓄えられたブロックを処理対象ブロックと称することとする。
【００６３】
平均輝度値算出器１２０は、ブロックバッファ１０９に蓄えられた画像から、予め設定されたサンプリング周期で画素をサンプリングして、平均輝度値を算出する。図４は、ブロック内の画素をサンプリングするサンプリング間隔の例を示した図である。図４（ａ）は、ＣＰＵ１０８が、画像サイズが１２８０×９６０画素の画像に対して、ブロックサイズを６４×６４画素と設定し、サンプリング周期を２とした様子を示す（図では１ブロック中の９×８画素のみを表示している）。一方、図４（ｂ）は、ＣＰＵ１０８が、画像サイズが２５６０×１９２０画素の画像に対して、ブロックサイズを１２８×１２８画素と設定し、サンプリング周期を４とした様子を示す（図では１ブロック中の９×８画素のみを表示している）。
【００６４】
ＣＰＵ１０８は、消費電力を考慮した処理能力に応じて、二値化する画像サイズに対するブロックの総数あるいはブロック内のサンプリング間隔を一定に設定することが可能である。従って、画像サイズが大きくなっても（全画素数が多くなっても）、サンプリング数を一定とすることができ、二値化閾値の決定までの処理時間が短縮され、低消費電力で二値化処理が可能となる。なお、ＣＰＵ１０８は、ブロック毎にサンプリング間隔を設定してもよい。また、白飛びが発生しているようなブロックに対しては、細かくサンプリングし直すようにしてもよい。
【００６５】
図５は、平均輝度値算出器１２０の構成の一例を示したブロック図である。ＣＰＵ１０８によりサンプリングされた画素の輝度値（ｖとする）は、比較器５０１において、後述する低輝度閾値（低輝度閾値ｔｈｌ（ｉ，ｊ）とする（（ｉ，ｊ）はブロックの番号を表すインデックス、このブロックをＢ（ｉ，ｊ）とする））と比較される。比較器５０１は、サンプリングされた画素の輝度値ｖが低輝度閾値ｔｈｌ（ｉ，ｊ）より大きい場合は信号値１を、小さい場合は信号値０を出力する。
【００６６】
信号値１が出力された場合は、ゲート５０７が開き輝度値ｖが加算器５０６に入力する。加算器５０６は、加算結果レジスタ５０２の値（ｓｕｍｖとする）と、入力した画素の輝度値ｖとを加算し、加算結果レジスタ５０２は新たな加算結果を記憶する。一方、比較器５０１の信号１はカウンタ５０３へも伝達され、ゲート５０７を通過した輝度値ｖの数（ｎｕｍとする）を計数する。
【００６７】
以上に述べた処理をアルゴリズムとして数式で表すと次式（５）のようになる。
ｉｆ ｖ＞ｔｈｌ（ｉ，ｊ）
ｔｈｅｎ ｓｕｍｖ＝ｓｕｍｖ＋ｖ
ｎｕｍ＝ｎｕｍ＋１
ｅｌｓｅ ｓｕｍｖ＝ｓｕｍｖ
ｎｕｍ＝ｎｕｍ ・・・・（５）
【００６８】
ここで、カウンタ５０３が、インクリメントの結果、ケタが繰り上がる状態（カウンタが２のべき乗を示す状態）になると、ゲート５０８が開き、加算結果レジスタ５０２に保持されている輝度値ｖの和（ｓｕｍｖ）をシフトレジスタ５０４に伝達し、カウンタ５０３において‘１’がたっているビット位置−１だけ右にシフトする。ブロック内の全画素について処理した後、シフトレジスタ５０４に記憶された値が平均輝度値ａｖｅ（ｉ，ｊ）として出力される。すなわち、平均輝度値は次式（６）で計算される。
ａｖｅ（ｉ，ｊ）＝ｓｕｍｖ’／ｎｕｍ’ ‥‥（６）
【００６９】
ここで、ｎｕｍ’はブロックＢ（ｉ，ｊ）でサンプリングされたサンプル数以下の数値であって、２のべき乗で表される数で最も大きな値を表し、ｓｕｍｖ’はｎｕｍ’が計数されたときの加算結果レジスタ５０２に保持されている値を表す。
【００７０】
低輝度閾値設定器１２１は、隣接する前のブロック（現ブロックがＢ（ｉ，ｊ）であれば、たとえば、Ｂ（ｉ−１，ｊ））の平均輝度値ａｖｅ（ｉ−１，ｊ）に所定の係数を乗算して平均輝度値算出器１２０で使用する低輝度閾値ｔｈｌ（ｉ，ｊ）を算出する。所定の係数をＣａ＝１／４（２のべき乗分の１）とすると、低輝度閾値設定器１２１は、ａｖｅ（ｉ，ｊ）の下位２ビットを除いた値となるので特別な回路が不要となり、回路構成が単純となり、高速、低消費電力で処理を行うことが可能となる。以上に述べた計算式は次式（７）で表すことができる。
ｔｈｌ（ｉ，ｊ）＝ａｖｅ（ｉ−１，ｊ）＊Ｃａ ‥‥（７）
【００７１】
ここでは、低輝度閾値ｔｈｌを算出する際に、隣接する１ブロックのみの平均輝度値ａｖｅを使用したが、ブロック分割の仕方によっては、隣接するすべて（たとえば上下左右）のブロックの平均輝度値ａｖｅを使用する態様であってもよい。
【００７２】
二値化閾値設定回路１２２は、平均輝度値算出器１２０で算出された平均輝度値ａｖｅ（ｉ，ｊ）を用いて、多値画像の二値化に使用する二値化閾値ＴＨ（ｉ，ｊ）を設定する。図６は、二値化閾値設定回路の一構成例を示した説明図である。二値化閾値設定回路１２２は、加算減算器６０１と、乗算除算器６０２と、比較器６０３と、セレクタ６０４とを有する。
【００７３】
加算減算器６０１は、ａｖｅ（ｉ，ｊ）から定数Ｃｍ（但しＣｍは正の値とする）を減算する。ここでは、Ｃｍ＞０としたので減算を行うが、使用の態様によっては定数Ｃｍを負の値として加算減算器６０１で加算を行ってもよい。
【００７４】
乗算除算器６０２は、ａｖｅ（ｉ，ｊ）と定数Ｃｂ（但しＣｂは正の値であって１未満とする）の乗算が行われる。ここでは１＞Ｃｂ＞０としたので乗算を行うが、使用の態様によっては定数Ｃｂ＞１として乗算除算器６０２で除算を行ってもよい。
【００７５】
比較器６０３は、ａｖｅ（ｉ，ｊ）と所定の値（比較値）Ａｔｈとの比較を行い、ａｖｅ（ｉ，ｊ）がＡｔｈより大きければ、セレクタ６０４が加算減算器６０１の結果を選択しＴＨ（ｉ，ｊ）を出力する。反対に、ａｖｅ（ｉ，ｊ）がＡｔｈより小さければ、セレクタ６０４が乗算除算器６０２の結果を選択しＴＨ（ｉ，ｊ）を出力する。
【００７６】
比較値Ａｔｈは定数としてもよいが、周囲のブロックに基づいて決定してもよい。たとえば、隣接するブロックＢの輝度値の平均の１．５倍をＡｔｈに設定してもよい。この様に周囲のブロックの輝度値に基づいてＡｔｈを決定することにより、着目しているブロックＢの輝度値が突出しているか、すなわち、着目しているブロックＢに白飛びが発生しているか否かの判定が容易となり、高品質な二値化が可能となる。
【００７７】
以上説明したように、二値化閾値設定回路１２２では、白飛びしているような領域に対しては定数Ｃｍをもちいてａｖｅ（ｉ，ｊ）を減算してＴＨが算出され、白飛びのない通常の領域に対してはＣｂが乗算されてＴＨが算出される。この様な２つの処理を切り替える理由は白飛びのコントラストが変化することに基づく。すなわち、通常の画像では文字と背景のコントラストの比は、信号レベルによらず略一定である。従って、通常の画像に対しては乗算除算器６０２だけで二値化閾値設定回路１２２を構成することができる。
【００７８】
一方、白飛びが起こっているような画像では文字と背景のコントラストの比が小さくなると同時に平均輝度値ａｖｅが大きくなるという特徴がある。従って、このような領域では、適切に二値化するためには平均輝度値ａｖｅに近い二値化閾値ＴＨを採用ないし設定する必要がある。しかしながら、ａｖｅにＣｂを単に乗算するだけでは、平均輝度値ａｖｅが大きくなるにしたがって、二値化閾値ＴＨと平均輝度値ａｖｅとの差が広がってしまうこととなる。すなわち、乗算除算器６０２のみでは、表面反射がある場合には、画像が正しく二値化されなくなるという結果になる。
【００７９】
これを避けるために、実施の形態１の二値化閾値設定回路１２２では、表面反射がある場合（つまり、平均輝度値ａｖｅが大きい場合）に対応すべく、二値化閾値ＴＨと平均輝度値ａｖｅの差が相対的に小さくなるように加算減算器６０１を備え、平均輝度値ａｖｅの大きさにより閾値ＴＨを選択できるようにしているのである。
【００８０】
なお、画像信号の属性が濃度信号の場合には、平均濃度値（便宜上ａｖｅと表記する）が所定の比較値（便宜上Ａｔｈとする）より大きければ、加算減算器６０１が選択される。ここでは、ａｖｅに所定係数Ｃｍが加算されて二値化閾値（便宜上ＴＨとする）が決定される。反対に、ａｖｅがＡｔｈより小さければ、乗算除算器６０２が選択され、ａｖｅに所定係数Ｃｂ（１＞Ｃｂ）が乗算された二値化閾値ＴＨが決定される。
【００８１】
なお、所定の係数ＣｂをＣｂ＝ｘ／１６、あるいはＣｂ＝ｘ／８（ｘは分母を超えない自然数を表す既定値）とすれば、乗算除算器６０２の回路構成が単純となり、高速、低消費電力で処理を行うことが可能となる。
【００８２】
二値化器１２３は、ブロックバッファ１０９の各画素を二値化閾値ＴＨと比較し二値化する。二値化された画像は、圧縮器１２４でＭＨ、ＭＲ等の二値画像に適した画像圧縮がなされる。圧縮された画像は、画像記憶メモリ１２５に記憶される。
【００８３】
次に、多値画像が二値化されるまでの処理の流れを説明する。図７は、多値画像が二値化されるまでの画像データの処理流れを示したフローチャートである。ＣＰＵ１０８は、フレームメモリ１０７に格納されている多値画像のサイズを読み出す（ステップＳ７０１）。なお、フレームメモリ１０７からでなく、デジタルカメラ１００で予め設定された画素数もしくはＣＣＤ１０１からの情報等を用いてもよい。続いて、ＣＰＵ１０８は画像サイズに従って、サンプリング周期を設定する（ステップＳ７０２）。
【００８４】
ステップＳ７０１で読み出した画像サイズやステップＳ７０２で設定したサンプリング周期をもとに、ＣＰＵ１０８はブロックサイズ、形状、分割パタンを設定する（ステップＳ７０３）。ＣＣＤ１０１で出力される画素数は通常一定であるか、モード切替により指定される６４０×４８０画素や８００×６００画素等の定格画素数であるので、ＣＰＵ１０８は、サンプリング周期やブロック形状を予め決定しておいたものを選択することもできる。
【００８５】
続いて、複数に分割されたブロックから一つのブロックＢ（ｉ，ｊ）を設定し、ブロックバッファ１０９に画像情報を転写する（ステップＳ７０４）。ブロックＢ（ｉ，ｊ）のなかから、ステップＳ７０２で設定したサンプリング周期に従って、画素（輝度値）をサンプリングする（ステップＳ７０５）。続いて、以前のルーチンで算出されている隣接するブロックＢ（ｉ−１，ｊ）の平均輝度値ａｖｅ（ｉ−１，ｊ）に基づいて、ブロックＢ（ｉ，ｊ）についての低輝度閾値ｔｈｌ（ｉ，ｊ）を算出し、サンプリングした画素の輝度値のうち低輝度閾値ｔｈｌ（ｉ，ｊ）に満たない輝度値を除外する（ステップＳ７０６）。ステップＳ７０６で低輝度値を除外することは、高品質な二値化処理に資することになる。
【００８６】
低輝度値が除外された輝度値を用いて、ブロックＢ（ｉ，ｊ）の平均輝度値ａｖｅ（ｉ，ｊ）を算出する（ステップＳ７０７）。この平均輝度値ａｖｅ（ｉ，ｊ）に基づいてブロックＢ（ｉ，ｊ）に対する二値化閾値ＴＨ（ｉ，ｊ）を算出するルーチンに移行する（ステップＳ７０８）。このルーチンの内容については後述する。ステップＳ７０８で算出された二値化閾値ＴＨ（ｉ，ｊ）を用いて、ブロックバッファ１０９に格納されているブロックＢ（ｉ，ｊ）の全画素（ｇ（ｘ，ｙ）とする）を二値化する（ステップＳ７０９）。なお、ｘ、ｙはブロック内の各画素の位置を表す自然数である。
【００８７】
最後に、すべてのブロックについて二値化処理を行ったか否かを判定し（ステップＳ７１０）、すべてのブロックの二値化が終了した場合（ステップＳ７１０：ＹＥＳ）は処理を終了し、すべてのブロックの二値化が終了していない場合（ステップＳ７１０：ＮＯ）は、Ｂ（ｉ，ｊ）に隣接するブロックを設定し（たとえばＢ（ｉ＋１，ｊ））、ステップＳ７０４からステップＳ７１０までを繰り返す。
【００８８】
ここで、ステップＳ７０８の二値化閾値算出ルーチンについて説明する。図８は、二値化閾値算出ルーチンの処理流れの一例を示したフローチャートである。まず、比較器６０３は、平均輝度値ａｖｅ（ｉ，ｊ）を比較値Ａｔｈと比較する（ステップＳ８０１）。平均輝度値ａｖｅ（ｉ，ｊ）が比較値Ａｔｈより大きければ（ステップＳ８０１：ＹＥＳ）、加算減算器６０１で二値化閾値ＴＨ（ｉ，ｊ）＝ａｖｅ（ｉ，ｊ）−Ｃｍを計算する（ステップＳ８０２）。
【００８９】
一方、平均輝度値ａｖｅ（ｉ，ｊ）がＡｔｈより大きくなければ（ステップＳ８０１：ＮＯ）、乗算除算器６０２で二値化閾値ＴＨ（ｉ，ｊ）＝ａｖｅ（ｉ，ｊ）＊Ｃｂを計算する（ステップＳ８０３）。なお、ここでは、画像信号の属性が輝度信号であることを前提としたので−Ｃｍ（Ｃｍ＞０）、Ｃｂは１未満としたが、画像信号の属性が濃度信号である場合には＋Ｃｍ（Ｃｍ＞０）、Ｃｂは１より大きな値とする。
【００９０】
なお、以上の例では主として輝度値を用いて説明したが、輝度値と相関の強い物理量も輝度値と同様に扱うことができる。この様な物理量として、たとえば、光量、測光値、露出値、明度、彩度等が挙げられる。
【００９１】
実施の形態１では、本発明の画像二値化装置をデジタルカメラに適用した例について説明した。このデジタルカメラは、白飛びのない領域では通常の二値化閾値設定処理を行い、白飛びが起こる高輝度領域では、輝度が高くなるにしたがって相対的に平均輝度値との差が小さくなるような二値化閾値を設定するので、高品質に画像を二値化することが可能となる。また、二値化閾値ＴＨを算出する際に使用する平均輝度値算出器の処理を高速かつ低消費電力でできるので、実施の形態１のデジタルカメラは、高速・低消費電力で高品質な二値化処理が可能となる。
【００９２】
（実施の形態２）
実施の形態２では、ＣＭＯＳセンサを使用した画像二値化装置をデジタルカメラに適用した場合について説明する。図９は、画像入力部分にＣＭＯＳセンサを使用したデジタルカメラにおいて、画像入力から二値化処理をした画像を記録するまでの装置構成の一例を示したブロック図である。なお、本実施の形態では、実施の形態１と同様な部分については同一の符号を付してその詳細な説明を省略するものとし、実施の形態１と異なる部分を主として説明する。
【００９３】
デジタルカメラ９００は画像入力部にＣＭＯＳセンサ９０１を有する。従って、ラスター走査しかできないＣＣＤ１０１（図１参照）と異なり、ＣＭＯＳセンサ９０１はランダムアクセスが可能で、ブロック単位での読み出しができるので、フレームメモリ１０７が不要となり、回路構成が簡単となる。さらに、ＣＣＤ１０１はデジタルカメラ９００の他の回路を成すＣＭＯＳ集積回路とは別の電源を必要とするのに対し、ＣＭＯＳセンサ９０１はＣＭＯＳ集積回路と同じ電源を使用でき、消費電力も小さくなる。従って、デジタルカメラ９００としての回路規模も小さくなるため、消費電力、処理速度、コストなどにおいて、ＣＣＤを使用したシステムより利便性が高い。なお、本実施の形態ではＣＭＯＳセンサを用いたが、その他のブロックアクセス可能な画像入力部を有する画像二値化装置であってもよい。
【００９４】
（実施の形態３）
実施の形態３では、所定ブロック内の画素毎に適用される二値化閾値を算出し、画素毎に画像データの二値化を行う画像二値化装置をデジタルカメラに適用した場合について説明する。図１０は、画素毎に適用される二値化閾値を算出し、画素毎に画像データの二値化を行うデジタルカメラの装置構成の一例を示したブロック図である。なお、本実施の形態では、実施の形態１と同一の構成部分については同一の符合を付してその説明を省略し、実施の形態１と異なる部分を主として説明する。
【００９５】
デジタルカメラ１０００は、平均輝度値算出器１２０から出力された平均輝度値を入力し、ブロック毎に適用する二値化閾値（以降においてブロック二値化閾値と称する）を出力するブロック二値化閾値設定回路１００１と、ブロック二値化閾値を格納するメモリ１００２と、ブロック二値化閾値に基づいて、所定ブロック内の個々の画素に適用する二値化閾値を設定する二値化閾値補間器１００３と、を備え、それ以外の構成部分については、実施の形態１のデジタルカメラ１００と、同様の構成を有する。なお、色差信号を生成する部分は省略してある。
【００９６】
図１１は、ブロック二値化閾値設定回路１００１の一構成例を示した説明図である。ブロック二値化閾値設定回路１００１は、乗算除算器１０１１と、係数メモリ１０１２とを有する。ブロック二値化閾値設定回路１００１は、処理対象ブロックのブロック二値化閾値をメモリ１００２に出力する。
【００９７】
乗算除算器１０１１は、平均輝度値ａｖｅ（ｉ，ｊ）に係数Ｃｂを乗算する。係数メモリ１０１２は、乗算除算器１０１１で使用する係数を格納する。この係数Ｃｂは、平均輝度値ａｖｅの大きさに従って値が異なっている。図１２（ａ）は、係数メモリ１０１２に格納されている係数例を示した説明図である。図示したように、Ｃｂは、平均輝度値ａｖｅが大きくなるにしたがって１に近づくように大きくなっている。
【００９８】
この様な係数Ｃｂを用いることにより、高輝度領域でのブロック二値化閾値ＴＨを平均輝度値ａｖｅから大きくずれないようにすることができ、白飛びが発生しているような領域でも、高品質な二値化が可能となる。なお、ここでは１＞Ｃｂ＞０としたので乗算を行うが、使用の態様によっては定数Ｃｂを＞１として乗算除算器１０１１で除算を行ってもよい。
【００９９】
なお、ブロック二値化閾値の設定に際し、濃度値を用いる場合には、図１２（ｂ）に示したような係数Ｃｂテーブルを用いればよい。図示したように、係数Ｃｂは、濃度値（便宜的にａｖｅとする）が小さなほど１以上の大きな値となっている。この係数Ｃｂを用いることにより、低濃度領域でのブロック二値化閾値ＴＨを平均濃度値ａｖｅから大きくずれないようにすることができ、白飛びが発生しているような領域でも、高品質な二値化が可能となる。
【０１００】
なお、ブロック二値化閾値設定回路１００１では、加算減算器を設けていないため、回路構成が単純となるが、使用の態様によっては、ブロック二値化閾値設定回路１００１として実施の形態１に示した二値化閾値設定回路１２２（図１参照）を採用してもよい。また、後述する実施の形態（たとえば、実施の形態７）ようにブロック二値化閾値設定回路１００１として加算減算器のみを採用し、乗算除算器を用いないような構成としてもよい。
【０１０１】
メモリ１００２は、ブロック二値化閾値設定回路１００１から出力されたすべてのブロック二値化閾値を順次格納する。
【０１０２】
二値化閾値補間器１００３は、メモリ１００２に格納された全ブロックのブロック二値化閾値をもちいて、所定領域の各画素毎に適用する二値化閾値を設定する。なお、以降の説明では、補間ブロックとは、その構成画素それぞれに二値化閾値を設定する所定領域をいうものとする。ここで、補間ブロック内の各画素に適用する二値化閾値の算出の概要を説明する。図１３は、補間ブロック内の各画素に適用する二値化閾値を算出する概要を説明する説明図であり、同図（ａ）は、処理対象ブロックと補間ブロックとの関係を示した図であり、同図（ｂ）は、補間ブロック内の各画素に適用する二値化閾値を算出する説明図である。
【０１０３】
図１３（ａ）から明らかなように、補間ブロックＢＨは、隣接する４つの処理対象ブロックＢａ、Ｂｂ、ＢｃおよびＢｄにまたがっている。処理対象ブロックＢａ、Ｂｂ、Ｂｃ、Ｂｄのブロック二値化閾値をそれぞれａ、ｂ、ｃ、ｄとする。二値化閾値補間器１００３は、ブロック二値化閾値ａ、ｂ、ｃおよびｄをもちいて、補間ブロックＢＨ内の各画素に適用する二値化閾値を計算する。
【０１０４】
図１３（ｂ）を参照して、補間ブロックＢＨ内の画素ｂｐに適用する二値化閾値の算出方法を説明する。補間ブロックＢＨは長方形であるとして、その大きさ（画素数）を水平方向にｘｂｎｕｍ、垂直方向にｙｂｎｕｍとする。また、画素ｂｐの位置を（ｍ，ｌ）とする。このとき、補間ブロックＢＨの（０，０）点に値ａ、（ｘｂｎｕｍ，０）点に値ｂ、（０，ｙｂｎｕｍ）点に値ｃ、（ｘｂｎｕｍ，ｙｂｎｕｍ）点に値ｄがあると考え、この間を線形に近似する。
【０１０５】
まず、補間ブロックＢＨの左側の境界線上の暫定的な閾値をｌｅｆｔｔｈ、右側の境界線上の暫定的な閾値をｒｉｇｈｔｔｈとすると、下式（９）
ｌｅｆｔｔｈ  ＝（ａ（ｙｂｎｕｍ−ｌ）＋ｃｌ）／ｙｂｎｕｍ
ｒｉｇｈｔｔｈ＝（ｂ（ｙｂｎｕｍ−ｌ）＋ｄｌ）／ｙｂｎｕｍ‥‥（９）
と計算される。
次に、（０，ｌ）点に値ｌｅｆｔｔｈ、（ｘｂｎｕｍ，ｌ）点に値ｒｉｇｈｔｔｈがあると考え、画素ｂｐに適用する二値化閾値ｔｈ（ｍ，ｌ）を下式（１０）の様に線形に近似する。
ｔｈ（ｍ，ｌ）＝（ｌｅｆｔｔｈ（ｘｂｎｕｍ−ｍ）
＋ｒｉｇｈｔｔｈ×ｍ）／ｘｂｎｕｍ    ‥‥（１０）
【０１０６】
なお、補間ブロックＢＨが画像全体の端部にある場合には、隣接する処理対象ブロックが２つもしくは１つであるので、この場合は、得られたブロック二値化閾値を足りないブロック二値化閾値に代入して使用することにより、式（９）および（１０）が使用できる。たとえば、画像の左上端では、得られるブロック二値化閾値はｄのみで、ａ、ｂ、ｃに該当するブロック二値化閾値は得られない。従って、この場合は、ａ、ｂ、ｃの値をｄで代用する。
【０１０７】
二値化器１２３では、フレームメモリ１０７もしくはブロックバッファ１０９から補間ブロックにおける画素ｂｐの輝度値と、二値化閾値補間器１００３で算出した画素ｂｐに対する二値化閾値とを比較して、補間ブロックＢＨの輝度値の二値化を行う。二値化された画像データは、実施の形態１と同様に、圧縮器１２４でＭＨ、ＭＭＲなどの二値化画像に適した画像圧縮がほどこされる。
【０１０８】
次に、本実施の形態において、多値画像が二値化されるまでの処理の流れについて説明する。図１４は、多値画像が二値化されるまでの画像データの処理流れを示したフローチャートである。ＣＰＵ１０８は、フレームメモリ１０７に格納されている多値画像のサイズを読み出す（ステップＳ１４０１）。なお、フレームメモリ１０７からでなく、デジタルカメラ１０００で予め設定された画素数もしくはＣＣＤ１０１からの情報等を用いてもよい。続いて、ＣＰＵ１０８は画像サイズに従って、サンプリング周期を設定する（ステップＳ１４０２）。
【０１０９】
ステップＳ１４０１で読み出した画像サイズやステップＳ１４０２で設定したサンプリング周期をもとに、ＣＰＵ１０８はブロックサイズ、形状、分割パタンを設定する（ステップＳ１４０３）。ＣＣＤ１０１で出力される画素数は通常一定であるか、モード切替により指定される６４０×４８０画素や８００×６００画素等の定格画素数であるので、ＣＰＵ１０８は、サンプリング周期やブロック形状を予め決定しておいたものを選択することもできる。
【０１１０】
続いて、複数に分割されたブロックから一つのブロックＢ（ｉ，ｊ）を設定し、ブロックバッファ１０９に画像情報を転写する（ステップＳ１４０４）。ブロックＢ（ｉ，ｊ）のなかから、ステップＳ１４０２で設定したサンプリング周期に従って、画素（輝度値）をサンプリングする（ステップＳ１４０５）。続いて、以前のルーチンで算出されている隣接するブロックＢ（ｉ−１，ｊ）の平均輝度値ａｖｅ（ｉ−１，ｊ）に基づいて、ブロックＢ（ｉ，ｊ）についての低輝度閾値ｔｈｌ（ｉ，ｊ）を算出し、サンプリングした画素の輝度値のうち低輝度閾値ｔｈｌ（ｉ，ｊ）に満たない輝度値を除外する（ステップＳ１４０６）。ステップＳ１４０６で低輝度値を除外することは、高品質な二値化処理に資することになる。
【０１１１】
低輝度値が除外された輝度値を用いて、ブロックＢ（ｉ，ｊ）の平均輝度値ａｖｅ（ｉ，ｊ）を算出する（ステップＳ１４０７）。この平均輝度値ａｖｅ（ｉ，ｊ）に基づいてブロックＢ（ｉ，ｊ）のブロック二値化閾値ＴＨ（ｉ，ｊ）を算出するルーチンに移行する（ステップＳ１４０８）。
【０１１２】
図１５は、ブロック二値化閾値算出ルーチンの処理流れの一例を示したフローチャートである。ブロック二値化閾値設定回路１００１は、まず、入力した平均輝度値ａｖｅ（ｉ，ｊ）の値に応じて、使用する係数Ｃｂを決定する（ステップＳ１５０１）。続いて、乗算除算器１０１１は、平均輝度値ａｖｅ（ｉ，ｊ）にステップＳ１５０１で決定された係数を乗算しブロック二値化閾値ＴＨ（ｉ，ｊ）を出力する（ステップＳ１５０２）。
【０１１３】
図１４に戻り、ステップＳ１５０２で算出されたブロック二値化閾値ＴＨをメモリ１００２に格納する（ステップＳ１４０９）。すべてのブロックについてブロック二値化閾値が計算されたか否かを判定し（ステップＳ１４１０）、計算が終了していない場合（ステップＳ１４１０：ＮＯ）は、Ｂ（ｉ，ｊ）に隣接するブロックを設定し（たとえばＢ（ｉ＋１，ｊ））、ステップＳ１４０４からステップＳ１４１０までを繰り返す。
【０１１４】
すべてのブロックについてブロック二値化閾値が計算された場合（ステップＳ１４１０：ＹＥＳ）、補間ブロックを設定する（ステップＳ１４１１）。この補間ブロックは、部分的に高品質な二値化を行う場合などに適しており、ユーザが予め設定しておいてもよいし、適当なモード切替により、画像中心部分を設定する態様であってもよい。二値化閾値補間器１００３は、ステップＳ１４１１で設定された補間ブロックがまたがる処理対象ブロックのブロック二値化閾値ＴＨを用いて、補間ブロック内の画素単位の二値化閾値ｔｈ（ｘ，ｙ）を設定する（ステップＳ１４１２）。なお、図１４における関数ｆは、式（９）および（１０）を概念的に示したものであり、ｘ、ｙは画像の各画素の位置を表す自然数である。
【０１１５】
二値化器１２３でフレームメモリ１０７から読み出した画素（ｇ（ｘ，ｙ）とする）を、ステップＳ１４１２で算出した二値化閾値を用いて二値化する（ステップＳ１４１３）。次に、すべての画素について二値化処理を行ったか否かを判定し（ステップＳ１４１４）、すべての画素の二値化が終了していない場合（ステップＳ１４１４：ＮＯ）は、ｇ（ｘ，ｙ）に隣接する画素を設定し（たとえば，ｇ（ｘ＋１，ｙ））、ステップＳ１４１２からステップＳ１４１４までを繰り返す。すべての画素に対して二値化が終了した場合は（ステップＳ１４１４：ＹＥＳ）、すべての補間ブロックに対して二値化が終了したか否かを判定し（ステップＳ１４１５）、終了していなければ（ステップＳ１４１５：ＮＯ）、ステップＳ１４１１からステップＳ１４１５までを繰り返し、終了していれば（ステップＳ１４１５：ＹＥＳ）、処理を終了する。
【０１１６】
実施の形態３のデジタルカメラでは、画像サイズおよび光学系に対応させたブロック分割を行い、当該ブロックから輝度値をサンプリング抽出するとともに、周囲のブロックを考慮して低輝度閾値を設定し、これに基づいてブロック二値化閾値を行い、さらに、このブロック二値化閾値を用いて、補間ブロック内の個々の画素に適用する二値化閾値を設定して二値化するので、実施の形態１のデジタルカメラより、高品質な画像処理が可能となる。特に、掲示板を撮影する場合など、個々の文字が小さい場合や、一部の領域の文字が小さい場合などに、当該箇所を部分的に高品質に二値化することが可能となる。
【０１１７】
また、実施の形態３のデジタルカメラは、ブロック二値化閾値設定回路を乗算除算器のみで構成したので、回路構成が単純となり高速な二値化が可能となる。また、分母と分子を２のべき乗を用いた係数Ｃｂで調整しておくことにより、シフトレジスタのみで回路を構築することができ、高速省電力のデジタルカメラを提供可能となる。
【０１１８】
（実施の形態４）
実施の形態４では、所定ブロック内の画素毎に適用される二値化閾値を算出し、画素毎に画像データの二値化を行うＣＭＯＳセンサを使用した画像二値化装置をデジタルカメラに適用した場合について説明する。図１６は、画像入力部分にＣＭＯＳセンサを使用し、画素毎に適用される二値化閾値を算出して画素毎に画像データの二値化を行うデジタルカメラの装置構成の一例を示したブロック図である。なお、本実施の形態では、実施の形態３と同一な構成部分については同一の符号を付して詳細な説明を省略するものとし、実施の形態３と異なる部分を主として説明する。
【０１１９】
デジタルカメラ１６００は画像入力部にＣＭＯＳセンサ１６０１を有する。従って、ラスター走査しかできないＣＣＤ１０１（図１０参照）と異なり、ＣＭＯＳセンサ１６０１はランダムアクセスが可能で、ブロック単位での読み出しができ、ブロック毎に画素値を読み出し、ブロック二値化閾値を算出し、メモリ１００２に記憶することができるので、ブロックバッファ１０９（図１０参照）が不要となり、回路構成が簡単となる。
【０１２０】
同時に、ブロック毎に読み出した画素値は輝度信号に変換されアパーチャ補正されてフレームメモリ１０７に記憶される。さらに、ＣＣＤ１０１はデジタルカメラ１０００の他の回路を成すＣＭＯＳ集積回路とは別の電源を必要とするのに対し、ＣＭＯＳセンサ１６０１はＣＭＯＳ集積回路と同じ電源を使用でき、消費電力も小さくなる。従って、デジタルカメラ１６００としての回路規模も小さくなるため、消費電力、処理速度、コストなどにおいて、ＣＣＤを使用したシステムより利便性が高い。なお、本実施の形態ではＣＭＯＳセンサを用いたが、その他のブロックアクセス可能な画像入力部を有する画像二値化装置であってもよい。
【０１２１】
（実施の形態５）
実施の形態５では、平均輝度値を所定レンジ内の値に収まるように範囲制限する画像二値化装置をデジタルカメラに適用した場合について説明する。図１７は、平均輝度値を所定レンジ内の値に収まるように範囲制限するデジタルカメラの装置構成の一例を示したブロック図である。なお、本実施の形態では、実施の形態１と同一の構成部分については同一の符合を付し、その説明を省略する。
【０１２２】
デジタルカメラ１７００は、平均輝度値算出器１２０から出力される平均輝度値を予め設定した下限値で制限して、低すぎる平均輝度値が出力されるのを防ぐ制限器１７０１を有する。たとえば、暗い画像のなかの相対的に明るい文字、より具体的には黒板に描かれた白墨の描画像を考える。黒板面積に比して、白墨の字の面積は非常に少ないが、この場合に重要な情報は白墨の描画像である。ここで通常の二値化を行うと、白墨の描画像以外の黒板の画像データが支配的になるので、黒板の黒い部分の濃淡の境目に二値化閾値が設定されてしまう。従って、白墨像は当然に白と判断されるが、白墨カス（たとえば、黒板消しの軌跡）も、白と判断され、結果として、ノイズが多くなる。
【０１２３】
制限器１７０１は、この様なノイズが再現されないように平均輝度値を調整するものである。具体的には、予め定められた所定レンジ内に平均輝度値があるかないかを判断し、ない場合は当該レンジ幅の下限値に平均値を置き換える。この制限器１７０１により平均輝度値の下限を設定し、コントラストの高い二値化画像を得ることが可能となる。
【０１２４】
使用の態様によっては、平均輝度値を予め設定した上限値で制限して、高すぎる平均輝度値が出力されないようにすることもできる。たとえば、ホワイトボードにマーカー書きした画像に適用することができる。この場合は、平均輝度値が高くなるので、上述した例とは反対に、制限器１７０１により高すぎる平均輝度値が出力されないようにする。
【０１２５】
なお、本実施の形態においては、ＣＣＤ１０１を用いたが、使用の態様によっては、実施の形態２で示したごとく、ＣＭＯＳセンサ９０１（図９参照）を用いてもよい。
【０１２６】
（実施の形態６）
実施の形態６では、平均輝度値を所定レンジ内の値に収まるように範囲制限しつつ、所定ブロック内の画素毎に適用される二値化閾値を算出し、画素毎に画像データの二値化を行う画像二値化装置をデジタルカメラに適用した場合について説明する。図１８は、本実施の形態にかかるデジタルカメラの構成の一例を示したブロック図である。なお、本実施の形態では、実施の形態５と同一の構成部分については同一の符合を付し、その説明を省略する。
【０１２７】
デジタルカメラ１８００は、平均輝度値算出器１２０から出力される平均輝度値を予め設定した下限値で制限して、低すぎる平均輝度値が出力されるのを防ぐ制限器１８０１を有する。制限器１８０１から出力された平均輝度値は所定の範囲内にある。たとえば、暗い画像のなかの相対的に明るい文字、より具体的には黒板に描かれた白墨の描画像に適用できる。
【０１２８】
特に、本実施の形態では二値化閾値補間器１００３で、補間ブロック内の個々の画素に適用する二値化閾値を周囲の処理対象ブロックのブロック二値化閾値により算出する。このとき、制限器１８０１により、突出した平均輝度値を除外するので、個々の二値化閾値をより適切に設定することができ、これにより、さらに高品質な二値化処理が可能となる。使用の態様によっては、平均輝度値を予め設定した上限値で制限して、白飛びが発生していないのに高すぎる平均輝度値が出力されないようにすることもできる。また、制限器１８０１は、所定範囲をブロック二値化閾値より設定してもよい。
【０１２９】
なお、本実施の形態においては、ＣＣＤ１０１を用いたが、使用の態様によっては、実施の形態４で示したごとく、ＣＭＯＳセンサ１６０１（図１６参照）を用いてもよい。
【０１３０】
（実施の形態７）
実施の形態７では、測光手段を有する画像撮像装置について説明する。図１９は、測光器を備える画像撮像装置をデジタルカメラに適用した場合について、画像入力から二値化処理をした画像を記録するまでの装置構成の一例を示したブロック図である。なお、本実施の形態では、実施の形態１の構成要素が近似するため、実施の形態１と同様の構成要素については同一の符合を付して詳細な説明を省略し、実施の形態１と異なる部分を主として説明するものとする。
【０１３１】
デジタルカメラ１９００は、ＣＣＤ１０１と、Ａ／Ｄ変換器１０２と、ホワイトバランス調整器１０３と、画素補間器１０４と、輝度生成器１０５と、アパーチャ補正器１０６と、フレームメモリ１０７と、ＣＰＵ１０８と、測光器１９０１と、平滑化器１９０２と、メモリ１９０３と、ブロック読出制御器１９０４と、二値化閾値設定回路１９０５と、二値化器１２３と、圧縮器１２４と、画像記憶メモリ１２５と、から構成される。
【０１３２】
ＣＣＤ１０１は、デジタルカメラ１９００の光学系（図示せず）により集光された光を電気信号に変換する部位であり、多値画像を構成する各画素のＲＧＢアナログ信号を出力する部位である。出力されたアナログ信号は、Ａ／Ｄ変換器１０２でデジタル信号に変換される。デジタル信号は、ホワイトバランス調整器１０３、画素補間器１０４、輝度生成器１０５、アパーチャ補正器１０６を通じて、輝度値の補間、抽出などの処理を受け、フレームメモリ１０７に一時記憶される。
【０１３３】
ＣＰＵ１０８は、後述する測光器１９０１からの輝度情報（輝度値）を基に、後述するブロック読出制御器１９０４を制御し、測光器１９０１が測光に用いる画面分割と同様にフレームメモリ１０７に格納されている画像を分割する。測光器１９０１が測光に用いる画面分割は、固定のものを用いてもよいし、ＣＰＵ１０８の制御を受け図３に示したごとく分割する態様であってもよい。ＣＰＵ１０８は、その他のデジタルカメラ１９００の各回路、各部位を制御する。
【０１３４】
測光器１９０１は、画像撮影前に被写体の測光を行う自動露出検知機構（ＡＥ）を有し、Ａ／Ｄ変換器１０２から出力されるデジタル信号に基づき、各画面の明るさを測定する。測光の方法は、たとえば、画素の輝度値の加算により測定する。このときＣＰＵ１０８は、測光器１９０１で加算に使用する測光値をサンプリングすることも可能である。なお、使用の態様によっては、ＣＣＤ１０１により光電変換される光量を用いてもよい。
【０１３５】
平滑化器１９０２は、測光器１９０１で得られた各画面の測光値を平滑化し、ａｖｅ（ｉ，ｊ）としてメモリ１９０３に出力する。平滑化の一例として、次の処理が挙げられる。すなわち、測光器１９０１内の一つの画面（Ｇ（ｉ，ｊ）とする）に含まれる全画素数の測光値の平均値ａｖｅ（ｉ，ｊ）（もしくは画面Ｇ（ｉ，ｊ）のなかからサンプリングされた測光値の平均値）が周囲の画面の測光値の平均値から突出した値である場合に、画面Ｇ（ｉ，ｊ）の各画素の測光値を補正して、周囲の画面の測光値の平均値に比して突出した値にならないようにする。
【０１３６】
この処理を実現するアルゴリズムとしての一例を以下に示す。画面Ｇ（ｉ，ｊ）に隣接する４画面の平均測光値をａｖｅ４（ｉ，ｊ）として、画面Ｇ（ｉ，ｊ）の平均測光値ａｖｅ（ｉ，ｊ）がａｖｅ４（ｉ，ｊ）の３倍以上である場合に画面Ｇ（ｉ，ｊ）内の各画素の測光値（ｓ（ｘ，ｙ）とする）を次式（１１）のように変換する。
0004132725.tif 000002
【０１３７】
平滑化器１９０２では、変換された測光値を用いて、画面Ｇ（ｉ，ｊ）の平均測光値ａｖｅ（ｉ，ｊ）を計算し直して、メモリ１９０３に平均測光値を出力する。なお、メモリ１９０３は、この平均測光値を格納する。
【０１３８】
ブロック読出制御器１９０４は、測光器１９０１が測光に用いる画面分割と同様にフレームメモリ１０７に格納されている画像を分割する。これにより、二値化による閾値がより自然なものとなる。
【０１３９】
二値化閾値設定回路１９０５は、ａｖｅ（ｉ，ｊ）に基づいて二値化閾値ＴＨ（ｉ，ｊ）を設定する。図２０は、二値化閾値設定回路１９０５の一構成例を示した説明図である。二値化閾値設定回路１９０５は、加算減算器２００１と、係数メモリ２００２とを有する。二値化閾値設定回路１９０５は、処理対象ブロックの二値化閾値を二値化器１２３へ出力する。
【０１４０】
加算減算器２００１は、平均測光値ａｖｅ（ｉ，ｊ）から係数Ｃｍを減算する。係数メモリ２００２は、加算減算器２００１で使用する係数を格納する。この係数Ｃｍは、平均測光値ａｖｅの大きさに従って値が異なっている。図２１（ａ）は、係数メモリ２００２に格納されている係数例を示した説明図である。図示したように、Ｃｍは、平均測光値ａｖｅが中間レンジで最も大きく、測光値が非常に高い場合もしくは測光値が非常に小さな場合には、小さな値となっている。
【０１４１】
この様な係数Ｃｍを用いることにより、測光値の大きな領域（高輝度領域）での二値化閾値ＴＨを平均測光値ａｖｅから大きくずれないようにすることができ、白飛びが発生しているような領域でも、高品質な二値化が可能となる。なお、図示した例では、上述したように、中間調の平均測光値に対して係数Ｃｍが大きい。これは、測光値の大半が中間的な値であり、この領域で二値化を高品質に行うことを考慮して設定されたものである。また、ここではＣｍを正として減算を行うが、使用の態様によってはＣｍを負の値として加算減算器２００１で加算を行ってもよい。
【０１４２】
なお、本実施の形態では、平滑化器１９０２を用いて測光値が突出している白飛び領域における測光値が平滑化される。従って、白飛び領域に対する二値化閾値と平滑化される前の測光値との差が大きくなってしまう可能性がある。従って、測光値が平滑化された場合のＣｍを０に、場合によっては、負の値として減算してもよい（図２１参照）。このような係数の正負の転換発生するような場合には、乗算除算器を用いると処理アルゴリズムが複雑となる。この点で、本実施の形態では処理アルゴリズムが簡単な加算減算器２００１が採用され、利便性が高いといえる。なお、Ｃｍを０にする場合は、平滑化値をそのまま二値化閾値ＴＨとすることができるので、回路構成が単純になり、高速低消費電力のデジタルカメラ１９００が得られることになる。
【０１４３】
また、二値化閾値の設定に際し、濃度値を用いる場合には、図２１（ｂ）に示したような係数Ｃｍテーブルを用いて加算すればよい。図示したように、係数Ｃｍテーブルは、濃度値（便宜的にａｖｅとする）が小さな領域では中間領域に対する係数Ｃｍより小さな係数Ｃｍとなっている。この係数Ｃｍを用いることにより、低濃度領域での二値化閾値ＴＨを平均濃度値ａｖｅから大きくずれないようにすることができ、白飛びが発生しているような領域でも、高品質な二値化が可能となる。
【０１４４】
なお、この例では二値化閾値設定回路１９０５は、加算減算器２００１を有し、乗算除算器を備えないが、使用の態様によっては、乗算減算器を有し、加算減算器を備えないブロック二値化閾値設定回路１００１（図１１参照）を採用しても良く、また、いずれの演算器も備えた二値化閾値設定回路１２２（図６参照）を採用してもよい。
【０１４５】
二値化器１２３は二値化閾値ＴＨ（ｉ，ｊ）に基づいて、画面Ｇ（ｉ，ｊ）に対応したブロックＢ（ｉ，ｊ）の各画素を二値化する。なお、平滑化されたブロックに対しては、変換後の測光値を用いて当該ブロックを適宜処理して二値化する。圧縮器１２４はＭＨ、ＭＲ等により二値画像に適した圧縮を行う。画像記憶メモリ１２５は、圧縮された画像を記憶する。
【０１４６】
次に、多値画像が二値化されるまでの画像データの流れを説明する。図２２は、多値画像が二値化されるまでの画像データの処理流れを示したフローチャートである。まず、ＣＰＵ１０８は、ＣＣＤ１０１から画像サイズを読み出す（ステップＳ２２０１）。続いて、ＣＰＵ１０８は、測光器１９０１から出力される測光値のなかから１画面Ｇ（ｉ，ｊ）を設定し（ステップＳ２２０２）、当該画面の測光値の平均値を算出する（ステップＳ２２０３）。平均を求める際はすべての測光値を用いてもよいし、適宜サンプリングを行ってもよい。
【０１４７】
次に、画面の測光値の平均値が隣接する画面の測光値の平均値から突出していないかどうか判定する（ステップＳ２２０４）。突出している場合は（ステップＳ２２０４：ＹＥＳ）、当該測光値の平均値を平滑化器１９０２で平滑化する（ステップＳ２２０５）。突出していない場合（ステップＳ２２０４：ＮＯ）もしくはステップＳ２２０５で平滑化処理が行われた場合は、フレームメモリ１０７から画面Ｇ（ｉ，ｊ）に対応するブロックＢ（ｉ，ｊ）をブロック読出制御器１９０４が読み出し（ステップＳ２２０６）、画面Ｇ（ｉ，ｊ）の測光値に基づいて二値化閾値を算出するルーチンに移行する（ステップＳ２２０７）。
【０１４８】
ここで、ステップＳ２２０７の二値化閾値算出ルーチンについて説明する。図２３は、二値化閾値算出ルーチンの処理流れの一例を示したフローチャートである。二値化閾値設定回路１９０５は、まず、入力した平均測光値ａｖｅ（ｉ，ｊ）の値に応じて、使用する係数Ｃｍを決定する（ステップＳ２３０１）。続いて、加算減算器２００１は、平均輝度値ａｖｅ（ｉ，ｊ）にステップＳ２３０１で決定された係数を減算し二値化閾値ＴＨ（ｉ，ｊ）を出力する（ステップＳ２３０２）。
【０１４９】
図２２に戻り、ステップＳ２２０７で算出された二値化閾値を用いてブロック内の多値画像を二値化する（ステップＳ２２０８）。すべてのブロックについて二値化が終了したか否かを判定し（ステップＳ２２０９）、終了したならば（ステップＳ２２０９：ＹＥＳ）、二値化処理を終了し、終了していないならば（ステップＳ２２０９：ＮＯ）、ステップＳ２２０２に移行し、次の画面（たとえばＧ（ｉ＋１，ｊ））を設定し、以降ステップＳ２２０２からステップＳ２２０９を繰り返す。
【０１５０】
実施の形態７では、デジタルカメラに備わっている自動測光部から得られる情報（測光値）を利用して二値化閾値を設定するので、別途二値化閾値を設定するための処理を不要とする。従って、回路構成が簡単になりコストの低減を図ることができるとともに、二値化閾値の計算処理アルゴリズムが簡易となり、消費電力を低減することができる。また、二値化閾値設定回路が所定の係数を平均測光値に応じて減算するので、光源によるピンポイント的な写り込みがある画像であっても高品質に多値画像を二値化することが可能となる。
【０１５１】
（実施の形態８）
実施の形態８では、ＣＭＯＳセンサを使用した画像撮像装置について説明する。図２４は、画像入力部分にＣＭＯＳセンサが使用されたデジタルカメラにおいて、入力した画像を二値化処理して記録するまでの装置構成の一例を示したブロック図である。なお、本実施の形態では、実施の形態７と同様の部分については同一の符合を付して説明を省略するものとし、実施の形態７と異なる部分について説明する。
【０１５２】
デジタルカメラ２４００は画像入力部にＣＭＯＳセンサ２４０１を有する。従って、ラスター走査しかできないＣＣＤ１０１（図１９参照）と異なり、ＣＭＯＳセンサ２４０１はランダムアクセスが可能で、ブロック単位での読み出しができるので、フレームメモリ１０７およびブロック読出制御器１９０４が不要となり、回路構成が簡単となる。この場合はＣＰＵ１０８が、ブロック読出制御器の役割を持つことになる。
【０１５３】
さらに、ＣＣＤ１０１はＣＭＯＳ集積回路とは別の電源を必要とするのに対し、ＣＭＯＳセンサ２４０１はＣＭＯＳ集積回路と同じ電源を使用でき、消費電力も小さくなる。従って、デジタルカメラ２４００としての回路規模も小さくなるため、消費電力、処理速度、コストなどにおいて、ＣＣＤを使用したシステムより利便性が高い。なお、本実施の形態ではＣＭＯＳセンサを用いたが、その他のブロックアクセス可能な画像入力部を有する画像撮像装置であってもよい。
【０１５４】
（実施の形態９）
実施の形態９では、測光手段を有し、所定ブロック内の画素毎に適用される二値化閾値を算出し、画素毎に画像データの二値化を行う画像撮像装置をデジタルカメラに適用した場合について説明する。図２５は、測光器を備え、各画素毎に二値化閾値を設定する画像撮像装置をデジタルカメラに適用した一例を示した構成図である。なお、本実施の形態では、実施の形態７の構成要素が近似するため、実施の形態７と同様の構成要素については同一の符合を付して説明を省略するものとし、実施の形態７と異なる部分について説明するものとする。
【０１５５】
デジタルカメラ２５００は、平滑化器１９０２から出力されメモリ１９０３に格納された測光値の平均値を入力し、画面毎に所定係数を乗じた値（以降画面二値化閾値と称することとする）を出力する画面二値化閾値設定回路２５０１と、画面二値化閾値を格納するメモリ２５０２と、画面二値化閾値に基づいて、所定ブロック内の個々の画素毎に適用する二値化閾値を設定する二値化閾値補間器２５０３と、を備える。なお、色差信号を生成する部分は省略してある。
【０１５６】
画面二値化閾値設定回路２５０１は、平滑化された測光値に当該画面に応じた係数を乗じる。以降では説明の便宜のために、平滑化された測光値ａを有する画面をＧａと表示し、この所定係数をＣｂ（Ｇａ）と表示するものとする。画面二値化閾値設定回路２５０１は、すべての画面について、画面二値化閾値を算出し、順次メモリ２５０２に格納する。画面二値化閾値設定回路２５０１は、たとえば、図１１に示したブロック二値化閾値設定回路１００１と同様の回路構成とし、係数メモリにＣｂ（Ｇａ）を格納しておく。
【０１５７】
二値化閾値補間器２５０３は、メモリ２５０２に格納された全画面の画面二値化閾値をもちいて、補間ブロックＢＨの各画素毎に適用する二値化閾値を設定する。なお、以降の説明では各画素毎に適用する二値化閾値を設定する。補間ブロックＢＨはブロック読出制御器１９０４により設定される。なお、使用の態様によってはＣＰＵ１０８が設定してもよい。
【０１５８】
ここで、補間ブロック内の各画素に適用する二値化閾値の算出の概要を説明する。図２６は、補間ブロックと画面との関係を示した図である。同図から明らかなように、補間ブロックＢＨは、隣接する４つの画面Ｇａ、Ｇｂ、ＧｃおよびＧｄにまたがっている。なお、画面Ｇａ、Ｇｂ、Ｇｃ、Ｇｄの平滑化された測光値の平均値をそれぞれａ、ｂ、ｃ、ｄとする。二値化閾値補間器２５０３は、平滑化された測光値の平均値ａ、ｂ、ｃおよびｄを用いて、補間ブロックＢＨ内の各画素に適用する二値化閾値を計算する。
【０１５９】
補間ブロックＢＨ内の画素ｂｐに適用する二値化閾値の算出方法を説明する。補間ブロックＢＨは長方形であるとして、その大きさ（画素数）を水平方向にｘｂｎｕｍ、垂直方向にｙｂｎｕｍとする。また、画素ｂｐの位置を（ｍ，ｌ）とする。このとき、補間ブロックＢＨの（０，０）点に値ａ×Ｃｂ（Ｇａ）、（ｘｂｎｕｍ，０）点に値ｂ×Ｃｂ（Ｇｂ）、（０，ｙｂｎｕｍ）点に値ｃ×Ｃｂ（Ｇｃ）、（ｘｂｎｕｍ，ｙｂｎｕｍ）点に値ｄ×Ｃｂ（Ｇｄ）があり、この間を線形に近似する。
【０１６０】
本実施の形態では、各画面毎に異なる係数Ｃｂをとる。これは、各画面の測光値の平均値を用いてより品質の高い二値化を可能とするために必要であり、特に、ブロック分割と画面分割が異なるときに、品質の高い画面二値化閾値が設定されることとなる。
【０１６１】
画素ｂｐに適用する二値化閾値ｔｈは、前述した式（１０）を用いることにより算出する。なお、式（９）および（１０）においては、ａ、ｂ、ｃ、ｄをそれぞれａ×Ｃｂ（Ｇａ）、ｂ×Ｃｂ（Ｇｂ）、ｃ×Ｃｂ（Ｇｃ）、ｄ×Ｃｂ（Ｇｄ）に置き換える。
【０１６２】
二値化器１２３では、フレームメモリ１０７もしくはブロック読出制御器１９０４から補間ブロックにおける画素ｂｐの輝度値と、二値化閾値補間器２５０３で算出した画素ｂｐに対する二値化閾値とを比較して、補間ブロックＢＨの輝度値の二値化を行う。二値化された画像データは、実施の形態７と同様に、圧縮器１２４でＭＨ、ＭＭＲなどの二値化画像に適した画像圧縮がほどこされる。
【０１６３】
図２７は、多値画像が二値化されるまでの画像データの処理流れを表すフローチャートである。まず、ＣＰＵ１０８は、ＣＣＤ１０１から画像サイズを読み出す（ステップＳ２７０１）。続いて、ＣＰＵ１０８は、測光器１９０１から出力される測光器のなかから１画面Ｇ（ｉ，ｊ）を設定し（ステップＳ２７０２）、当該画面の平均値を算出する（ステップＳ２７０３）。平均を求める際はすべての測光値を用いてもよいが適宜サンプリングを行ってもよい。
【０１６４】
次に、画面の測光値の平均値が隣接する画面の測光値の平均値から突出していないかどうか判定する（ステップＳ２７０４）。突出している場合は（ステップＳ２７０４：ＹＥＳ）、当該測光値の平均値を平滑化器１９０２で平滑化する（ステップＳ２７０５）。突出していない場合（ステップＳ２７０４：ＮＯ）もしくはステップＳ２７０５で平滑化処理が行われた場合は、その測光値の平均値に基づいて画面二値化閾値を算出し（ステップＳ２７０６）、この画面二値化閾値をメモリ１７０２に格納する（ステップＳ２７０７）。
【０１６５】
続いて、すべてのブロックに対する画面二値化閾値の算出が終了したかを判定し（ステップＳ２７０８）、終了していないならば（ステップＳ２７０８：ＮＯ）、ステップＳ２７０２に移行し、次の画面（たとえばＧ（ｉ＋１，ｊ））を設定し、ステップＳ２７０２からステップＳ２７０８までを繰り返す。すべての画面で画面二値化閾値の算出が終了したならば（ステップＳ２７０８：ＹＥＳ）、補間ブロックを設定する（ステップＳ２７０９）。この補間ブロックは、部分的に高品質な二値化を行う場合などに適しており、ユーザが予め設定しておいてもよいし、適当なモード切替により、画像中心部分を設定する態様であってもよい。
【０１６６】
二値化閾値補間器２５０３は、ステップＳ２７０９で設定された補間ブロックがまたがる画面の画面二値化閾値（たとえば、ａ×Ｃｂ（Ｇａ）など）を用いて、補間ブロック内の画素単位の二値化閾値ｔｈ（ｘ，ｙ）を設定する（ステップＳ２７１０）。
【０１６７】
二値化器１２３でフレームメモリ１０７から読み出した画素（ｇ（ｘ，ｙ）とする）を、ステップＳ２７１０で算出した二値化閾値を用いて二値化する（ステップＳ２７１１）。次に、すべての画素について二値化処理を行ったか否かを判定し（ステップＳ２７１２）、すべての画素の二値化が終了していない場合（ステップＳ２７１２：ＮＯ）は、ｇ（ｘ，ｙ）に隣接する補間ブロック内の画素を設定し（たとえば，ｇ（ｘ＋１，ｙ））、ステップＳ２７１０からステップＳ２７１２までを繰り返す。すべての画素に対して二値化が終了した場合は（ステップＳ２７１２：ＹＥＳ）、すべての補間ブロックに対して二値化が終了したか否かを判定し（ステップＳ２７１３）、終了していなければ（ステップＳ２７１３：ＮＯ）、ステップＳ２７０９からステップＳ２７１３までを繰り返し、終了していれば（ステップＳ２７１３：ＹＥＳ）、処理を終了する。
【０１６８】
実施の形態９では、デジタルカメラに備わっている自動測光部から得られる情報（測光値）を利用して二値化閾値を設定するので、別途二値化閾値を設定するための処理を不要とする。従って、回路構成が簡単になりコストの低減を図ることができるとともに、別途の二値化閾値の計算処理が不要であるため消費電力を低減することができる。また、光源によるピンポイント的な写り込みがある画像であっても高品質に多値画像を二値化することが可能となる。さらに、測光値をもとに補間ブロック内の個々の画素に適用する二値化閾値を設定して、二値化するので、実施の形態７のデジタルカメラより、高品質な画像処理が可能となる。特に、掲示板を撮影する場合など、個々の文字が小さい場合や、一部の領域の文字が小さい場合などに、当該箇所を部分的に高品質に二値化することが可能となる。
【０１６９】
（実施の形態１０）
実施の形態１０では、ＣＭＯＳセンサと測光器を用いて、所定ブロック内の画素毎に適用される二値化閾値を算出し、画素毎に画像データの二値化を行う画像撮像装置をデジタルカメラに適用した場合について説明する。図２８は、ＣＭＯＳセンサと測光器を用いて、所定ブロック内の画素毎に適用される二値化閾値を算出し、画素毎に画像データの二値化を行う画像撮像装置をデジタルカメラに適用した一例を示した構成図である。なお、本実施の形態では、実施の形態９と同様の部分については同一の符合を付してその詳細な説明を省略するものとし、実施の形態９と異なる部分を主として説明する。
【０１７０】
デジタルカメラ２８００は画像入力部にＣＭＯＳセンサ２８０１を有する。従って、ラスター走査しかできないＣＣＤ１０１（図２５参照）と異なり、ＣＭＯＳセンサ２８０１はランダムアクセスが可能で、ブロック単位での読み出しができるので、フレームメモリ１０７およびブロック読出制御器１９０４が不要となり、回路構成が簡単となる。この場合はＣＰＵ１０８が、ブロック読出制御器の役割を持つことになる。
【０１７１】
さらに、ＣＣＤ１０１はＣＭＯＳ集積回路とは別の電源を必要とするのに対し、ＣＭＯＳセンサ２８０１はＣＭＯＳ集積回路と同じ電源を使用でき、消費電力も小さくなる。従って、デジタルカメラ２８００としての回路規模も小さくなるため、消費電力、処理速度、コストなどにおいて、ＣＣＤを使用したシステムより利便性が高い。なお、本実施の形態ではＣＭＯＳセンサを用いたが、その他のブロックアクセス可能な画像入力部を有する画像撮像装置であってもよい。
【０１７２】
（実施の形態１１）
実施の形態１１では、測光手段から出力される測光値に基づき、その測光値を所定レンジ内に収まる調整を行った後、各処理対象ブロックに対する二値化閾値を設定する画像撮像装置をデジタルカメラに適用した場合について説明する。図２９は、測光手段から出力される測光値に基づき、その測光値を所定レンジ内に収まる調整を行った後、各処理対象ブロックに対する二値化閾値を設定する画像撮像装置をデジタルカメラに適用した場合について、画像入力から二値化処理をした画像を記録するまでの装置構成の一例を示したブロック図である。
【０１７３】
デジタルカメラ２９００は、ＣＣＤ１０１と、Ａ／Ｄ変換器１０２と、ホワイトバランス調整器１０３と、画素補間器１０４と、輝度生成器１０５と、アパーチャ補正器１０６と、フレームメモリ１０７と、ＣＰＵ１０８と、測光器２９０１と、平滑化器２９０２と、制限器２９０５と、メモリ２９０３と、ブロック読出制御器２９０４と、二値化閾値設定回路１２２と、二値化器１２３と、圧縮器１２４と、画像記憶メモリ１２５と、からなる。色差信号を生成する部分は省略している。
【０１７４】
測光器２９０１は、画像撮影前に被写体の測光を行う自動露出検知機構（ＡＥ）を有し、Ａ／Ｄ変換器１０２から出力されるデジタル信号に基づき、各画面の明るさを測定する。測光の方法は、画素の輝度値の加算により測定する。このときＣＰＵ１０８は、測光器２９０１で加算に使用する測光値をサンプリングすることも可能である。
【０１７５】
平滑化器２９０２は、測光器２９０１で得られた各画面の測光値を平滑化し、ａｖｅ（ｉ，ｊ）として制限器２９０５に出力する。平滑化の一例として、次の処理が挙げられる。すなわち、測光器２９０１内の一つの画面（Ｇ（ｉ，ｊ）とする）に含まれる全画素数の測光値の平均値ａｖｅ（ｉ，ｊ）（もしくは画面Ｇ（ｉ，ｊ）のなかからサンプリングされた測光値の平均値）が周囲の画面の測光値の平均値から突出した値である場合に、画面Ｇ（ｉ，ｊ）の各画素の測光値を補正して、周囲の画面の測光値の平均値に比して突出した値にならないようにする。
【０１７６】
この処理を実現するアルゴリズムとしての一例を以下に示す。画面Ｇ（ｉ，ｊ）に隣接する４画面の平均測光値をａｖｅ４（ｉ，ｊ）として、画面Ｇ（ｉ，ｊ）の平均測光値ａｖｅ（ｉ，ｊ）がａｖｅ４（ｉ，ｊ）の３倍以上である場合に画面Ｇ（ｉ，ｊ）の平均測光値ａｖｅ（ｉ，ｊ）を次式（１２）のように変換する。
0004132725.tif 000003
【０１７７】
平滑化器２９０２では、上記のように、画面Ｇ（ｉ，ｊ）の平均測光値ａｖｅ（ｉ，ｊ）を計算する。さらに、制限器２９０５においてａｖｅ（ｉ，ｊ）を予め設定した下限値に制限して低すぎる平均測光値が出力されるのを防ぐ。その後、メモリ２９０３に平均測光値を出力する。なお、使用の態様によっては平滑化器２９０２を設けることなく制限器２９０５で範囲制限した測光値を出力してもよい。
【０１７８】
二値化閾値設定回路１２２は、ａｖｅ（ｉ，ｊ）に基づいて二値化閾値ＴＨ（ｉ，ｊ）を設定する。設定手段は、所定の係数Ｃｂをａｖｅ（ｉ，ｊ）に乗ずる乗算器であるが、Ｃｂ＝ｘ／１６、あるいはＣｂ＝ｘ／８（ｘは分母を超えない自然数を表す既定値）とすれば、二値化閾値設定回路１２２は加算器のみで構成できるので、コスト、スピードの点で有利になる。なお、測光値が大きなブロックに対してはＣｂの値を１に近づくように大きくし、白飛びが発生している領域に対して二値化閾値と平均測光値との差を小さくする。なお、本実施の形態では平滑化器２９０２があるので、平滑化器２９０２により平滑化された領域に関しては、実施の形態７を用いて示したようにＣｍ＝０もしくはＣｍ＜０として減算を行って二値化閾値ＴＨを算出してもよい。
【０１７９】
二値化器１２３は二値化閾値ＴＨ（ｉ，ｊ）に基づいて、画面Ｇ（ｉ，ｊ）に対応したブロックＢ（ｉ，ｊ）の各画素を二値化する。圧縮器１２４はＭＨ、ＭＭＲ等により二値画像に適した圧縮を行う。画像記憶メモリ１２５は、圧縮された画像を記憶する。
【０１８０】
次に、多値画像が二値化されるまでの処理の流れを説明する。図３０は、多値画像が二値化されるまでの画像データの処理流れを表すフローチャートである。まず、ＣＰＵ１０８は、ＣＣＤ１０１から画像サイズを読み出す（ステップＳ３００１）。続いて、ＣＰＵ１０８は、測光器２９０１から出力される測光値のなかから１画面Ｇ（ｉ，ｊ）を設定し（ステップＳ３００２）、当該画面の平均値を算出する（ステップＳ３００３）。平均を求める際はすべての測光値を用いてもよいが適宜サンプリングを行ってもよい。
【０１８１】
次に、画面の測光値の平均値が隣接する画面の測光値の平均値から突出していないかどうか判定する（ステップＳ３００４）。突出している場合は（ステップＳ３００４：ＹＥＳ）、当該測光値の平均値を平滑化器２９０２で平滑化する（ステップＳ３００５）。突出していない場合（ステップＳ３００４：ＮＯ）もしくはステップＳ３００５で平滑化処理が行われた場合、出力された測光値が低すぎる値かどうかを判定する（ステップＳ３００６）。低すぎる場合は（ステップＳ３００６：ＹＥＳ）、その測光値の値を所定の値に置き換える（ステップＳ３００７）。低すぎる値でない場合（ステップＳ３００６：ＮＯ）もしくはステップＳ３００７で置き換え処理が行われた場合、画面Ｇ（ｉ，ｊ）の測光値に基づいて二値化閾値を算出する（ステップＳ３００８）。
【０１８２】
次に、フレームメモリ１０７から画面Ｇ（ｉ，ｊ）に対応するブロックＢ（ｉ，ｊ）をブロック読出制御器２９０４が読み出し（ステップＳ３００９）、この二値化閾値を用いてブロック内の多値画像を二値化する（ステップＳ３０１０）。すべてのブロックについて二値化が終了したならば（ステップＳ３０１１：ＹＥＳ）、二値化処理を終了し、終了していないならば（ステップＳ３０１１：ＮＯ）、ステップＳ３００２に移行し、次の画面（たとえばＧ（ｉ＋１，ｊ））を設定し、以降ステップＳ３００２からステップＳ３０１１を繰り返す。
【０１８３】
実施の形態１１は、デジタルカメラに備わっている自動測光部から得られる情報（測光値）を利用して二値化閾値を設定するので、別途二値化閾値を設定するための処理を不要とする。従って、回路構成が簡単になりコストの低減を図ることができるとともに、別途の二値化閾値の計算処理が不要であるため消費電力を低減することができる。また、光源によるピンポイント的な写り込みがある画像であっても高品質に多値画像を二値化することができる。また、平滑化器と制限器の併用により、効率的に二値化閾値が設定される。
【０１８４】
なお、デジタルカメラ２９００では、ＣＣＤ１０１を用いたが、使用の態様によっては、図３１に示したように、ＣＭＯＳセンサ３１０１を用いたデジタルカメラ３１００の構成とすることもできる。この様な構成にすることによりデジタルカメラ２９００に比し、フレームメモリやブロック読出制御器が不要となり、回路構成が簡単になる。また、ＣＭＯＳセンサ３１０１はＣＭＯＳ集積回路と同じ電源を使用でき、消費電力も小さくなる。従ってデジタルカメラ３１００は、デジタルカメラ２９００よりも回路規模を小さくすることができ、消費電力も小さくなる。従って、デジタルカメラ２９００より消費電力、処理速度、コストなどにおいて利便性の高いデジタルカメラを提供することが可能となる。
【０１８５】
（実施の形態１２）
実施の形態１２では、所定レンジ内に範囲制限した測光値をもとに、所定のブロック内の個々の画素に適用する二値化閾値を算出する画像撮像装置をデジタルカメラに適用した場合について説明する。図３２は、所定レンジ内に範囲制限した測光値をもとに、所定のブロック内の個々の画素に適用する二値化閾値を算出する画像撮像装置をデジタルカメラに適用した一例を示した構成図である。
【０１８６】
デジタルカメラ３２００は、ＣＣＤ１０１と、Ａ／Ｄ変換器１０２と、ホワイトバランス調整器１０３と、画素補間器１０４と、輝度生成器１０５と、アパーチャ補正器１０６と、フレームメモリ１０７と、ＣＰＵ１０８と、測光器２９０１と、平滑化器２９０２と、制限器３２０１と、ブロック二値化閾値設定回路１００１と、メモリ１００２と、二値化閾値補間器１００３と、二値化器１２３と、圧縮器１２４と、画像記憶メモリ１２５と、からなる。色差信号を生成する部分は省略している。
【０１８７】
ＣＣＤ１０１は、デジタルカメラ３２００の光学系（図示せず）により集光された光を電気信号に変換する部位であり、多値画像を構成する各画素のＲＧＢアナログ信号を出力する部位である。出力されたアナログ信号は、Ａ／Ｄ変換器１０２でデジタル信号に変換される。デジタル信号は、ホワイトバランス調整器１０３、画素補間器１０４、輝度生成器１０５、アパーチャ補正器１０６を通じて、輝度値の補間、抽出などの処理を受け、フレームメモリ１０７に一時記憶される。
【０１８８】
ＣＰＵ１０８は、デジタルカメラ３２００の各回路、各部位を制御する。測光器２９０１は、画像撮影前に被写体の測光を行う自動露出検知機構（ＡＥ）を有し、Ａ／Ｄ変換器１０２から出力されるデジタル信号に基づき、各画面の明るさを測定する。測光の方法は、画素の輝度値の加算により測定する。このときＣＰＵ１０８は、測光器２９０１で加算に使用する測光値をサンプリングすることも可能である。
【０１８９】
平滑化器２９０２は、測光器２９０１で得られた各画面の測光値を平滑化し、ａｖｅ（ｉ，ｊ）として制限器３２０１に出力する。さらに、制限器３２０１においてａｖｅ（ｉ，ｊ）を予め設定した下限値に制限して低すぎる平均測光値が出力されるのを防ぐ。
【０１９０】
ブロック二値化閾値設定回路１００１は、ａｖｅ（ｉ，ｊ）に基づいて二値化閾値ＴＨ（ｉ，ｊ）を設定する。すべてのブロックのブロック二値化閾値はメモリ１００２に記憶される。次に、全ブロックのブロック二値化閾値を用いて、二値化閾値補間器１００３で画素単位の二値化閾値を算出する。画素毎に二値化閾値を算出しながら当該画素の輝度値をフレームメモリ１０７から同時に読み出し、輝度値と二値化閾値を二値化器１２３に入力する。二値化器１２３では二値化閾値と輝度値を比較して輝度値の二値化を行う。二値化された画像は、圧縮器１２４でＭＨ、ＭＭＲ等の二値画像に適した画像圧縮がなされる。圧縮された画像は、画像記憶メモリ１２５に記憶される。また、ＣＣＤ１０１の代わりにＣＭＯＳセンサを用いても同様の構成でデジタルカメラが実現できる。
【０１９１】
次に、多値画像が二値化されるまでの処理の流れを説明する。図３３は、多値画像が二値化されるまでの画像データの処理流れを表すフローチャートである。まず、ＣＰＵ１０８は、ＣＣＤ１０１から画像サイズを読み出す（ステップＳ３３０１）。続いて、ＣＰＵ１０８は、測光器２９０１から出力される測光値のなかから１画面Ｇ（ｉ，ｊ）を設定し（ステップＳ３３０２）、当該画面の平均値を算出する（ステップＳ３３０３）。平均を求める際はすべての測光値を用いてもよいが適宜サンプリングを行ってもよい。
【０１９２】
次に、画面の測光値の平均値が隣接する画面の測光値の平均値から突出していないかどうか判定する（ステップＳ３３０４）。突出している場合は（ステップＳ３３０４：ＹＥＳ）、当該測光値の平均値を平滑化器２９０２で平滑化する（ステップＳ３３０５）。突出していない場合（ステップＳ３３０４：ＮＯ）もしくはステップＳ３３０５で平滑化処理が行われた場合、次に測光値が低すぎる値かどうかを判定する（ステップＳ３３０６）。低すぎる場合は（ステップＳ３３０６：ＹＥＳ）、その測光値を所定の値に置き換える（ステップＳ３３０７）。低すぎる値でない場合（ステップＳ３３０６：ＮＯ）もしくはステップＳ３３０７で置き換え処理が行われた場合、画面Ｇ（ｉ，ｊ）の測光値に基づいて画面に対応するブロックのブロック二値化閾値ＴＨ（ｉ，ｊ）を算出する（ステップＳ３３０８）。
【０１９３】
次にすべてのブロックについてブロック二値化閾値が計算されたか否かを判定し（ステップＳ３３０９）、すべてのブロックのブロック二値化閾値が計算された場合（ステップＳ３３０９：ＹＥＳ）は処理を次ステップに移し、計算されていない場合（ステップＳ３３０９：ＮＯ）はＧ（ｉ，ｊ）に隣接するブロックを設定し（たとえばＧ（ｉ＋１，ｊ））、ステップＳ３３０２からステップＳ３３０９までを繰り返す。
【０１９４】
すべてのブロックについてブロック二値化閾値が計算された場合（ステップＳ３３０９：ＹＥＳ）、補間ブロックを設定する（ステップＳ３３１０）。二値化閾値補間器１００３は、二値化閾値を用いて補間により画素単位の二値化閾値ｔｈ（ｘ，ｙ）を算出する（ステップＳ３３１１）。なお、ｘ、ｙは画像の各画素の位置を表す自然数である。さらにこの二値化閾値ｔｈ（ｘ，ｙ）を用いてフレームメモリ１０７から読み出した画素（ｇ（ｘ，ｙ）とする）を二値化する（ステップＳ３３１２）。すべての画素について二値化処理を行ったか否かを判定し（ステップＳ３３１３）、すべての画素の二値化が終了しない場合（ステップＳ３３１３：ＮＯ）はｇ（ｘ，ｙ）に隣接する画素を設定し（たとえば、ｇ（ｘ＋１，ｙ））、ステップＳ３３１１からステップＳ３３１３までを繰り返す。
【０１９５】
また、すべての画素で二値化が終了した場合は（ステップＳ３３１３：ＹＥＳ）、すべての補間ブロックで二値化が終了したかを判定し（ステップＳ３３１４）、終了していないならば（ステップＳ３３１４：ＮＯ）、ステップＳ３３１０からステップＳ３３１４までを繰り返し、すべての補間ブロックで二値化が終了したならば（ステップＳ３３１４：ＹＥＳ）、処理を終了する。
【０１９６】
実施の形態１２では、デジタルカメラに備わっている自動測光部から得られる情報（測光値）を利用して二値化閾値を設定するので、別途二値化閾値を設定するための処理を不要とする。従って、回路構成が簡単になりコストの低減を図ることができるとともに、別途の二値化閾値の計算処理が不要であるため消費電力を低減することができる。また、光源によるピンポイント的な写り込みがある画像であっても高品質に多値画像を二値化することが可能となる。また、平滑化器と制限器の併用により、効率的に二値化閾値が設定される。さらに、測光値をもとに補間ブロック内の個々の画素に適用する二値化閾値を設定して、二値化するので、高品質な画像処理が可能となる。特に、掲示板を撮影する場合など、個々の文字が小さい場合や、一部の領域の文字が小さい場合などに、当該箇所を部分的に高品質に二値化することが可能となる。
【０１９７】
（実施の形態１３）
実施の形態１３では、画像二値化をＣＰＵにおいてソフトウェア処理で行う画像撮像装置について説明する。図３４は、画像二値化をＣＰＵにおいてソフトウェア処理で行う画像撮像装置をデジタルカメラに適用した場合について、画像入力から二値化処理をした画像を記録するまでの装置構成の一例を示したブロック図である。なお、本実施の形態では、前述した各実施の形態と同様の構成要素については同一の符合を付してその詳細な説明を省略するものとし、異なる部分を主として説明するものとする。
【０１９８】
デジタルカメラ３４００は、ＣＣＤ１０１と、Ａ／Ｄ変換器１０２と、ホワイトバランス調整器１０３と、画素補間器１０４と、輝度生成器１０５と、アパーチャ補正器１０６と、フレームメモリ１０７と、ＣＰＵ３４０１と、ＲＯＭ３４０２、ＲＡＭ３４０３と、画像記憶メモリ１２５と、からなる。色差信号を生成する部分は省略している。
【０１９９】
ＣＣＤ１０１は、デジタルカメラ３４００の光学系（図示せず）により集光された光を電気信号に変換する部位であり、多値画像を構成する各画素のＲＧＢアナログ信号を出力する部位である。出力されたアナログ信号は、Ａ／Ｄ変換器１０２でデジタル信号に変換される。デジタル信号は、ホワイトバランス調整器１０３、画素補間器１０４、輝度生成器１０５、アパーチャ補正器１０６を通じて、輝度値の補間、抽出などの処理を受け、フレームメモリ１０７に一時記憶される。
【０２００】
ＣＰＵ３４０１は、デジタルカメラ３４００の各回路、各部位を制御するとともに、画像二値化の処理機能を有する。ＣＰＵ３４０１に接続されたＲＯＭ３４０２には、二値化の機能を実現するソフトウェアプログラムが格納されている。また、係数ＣｂもしくはＣｍも格納されている。また、ＲＡＭ３４０３は、二値化処理を行うためのワークエリアとして画像データなどのデータを格納する。
【０２０１】
ＲＯＭ３４０２には、これまで説明した、実施の形態における平均輝度算出器、低輝度閾値設定器、二値化閾値設定回路、二値化閾値補間器、二値化器、圧縮器などの機能を実現するソフトウェアプログラムが格納されており、平均輝度算出、二値化閾値設定、二値化、二値画像の圧縮などの機能がＣＰＵ３４０１においてプログラムが実行されることにより実現できる。ＣＰＵ３４０１で二値化、圧縮された画像は画像記憶メモリ１２５に記憶される。
【０２０２】
デジタルカメラ３４００は、使用の態様によっては、ＲＯＭ３４０２には、測光器、平滑化器、制限器、ブロック二値化閾値設定回路、二値化閾値補間器、二値化器、圧縮器などの機能を実現するソフトウェアプログラムが格納されており、二値化閾値設定、二値化、二値画像の圧縮などの機能がＣＰＵ３４０１においてプログラムが実行されることにより実現できる。ＣＰＵ３４０１で二値化、圧縮された画像は画像記憶メモリ１２５に記憶される。また、ＣＣＤ１０１の代わりにＣＭＯＳセンサを使用してもよい。
【０２０３】
実施の形態１３では、ＣＰＵ３４０１およびＲＯＭ３４０２により各機能を実現するので、個々の機能部をつくり分けなくてすみ、開発費を削減することが可能となるとともに、安価なデジタルカメラを提供することが可能となる。また、ソフトウェアをアップグレードすることにより、常に最新のアルゴリズムを提供することが可能となる。
【０２０４】
（実施の形態１４）
実施の形態１４では、画像二値化をＣＰＵにおいてソフトウェア処理で行う測光器を有する画像撮像装置について説明する。図３５は、画像二値化をＣＰＵにおいてソフトウェア処理で行う画像撮像装置をデジタルカメラに適用した場合について、画像入力から二値化処理をした画像を記録するまでの装置構成を表すブロック図である。なお、本実施の形態では、前述した実施の形態１３と同様の構成要素については詳細な説明を省略するものとし、異なる部分を主として説明するものとする。
【０２０５】
デジタルカメラ３５００は、ＣＣＤ１０１と、Ａ／Ｄ変換器１０２と、ホワイトバランス調整器１０３と、画素補間器１０４と、輝度生成器１０５と、アパーチャ補正器１０６と、フレームメモリ１０７と、ＣＰＵ３５０１と、ＲＯＭ３５０２、ＲＡＭ３５０３、測光器３５０４と、メモリ３５０５と、画像記憶メモリ１２５と、からなる。色差信号を生成する部分は省略している。
【０２０６】
ＣＣＤ１０１は、デジタルカメラ３５００の図示しない光学系により集光された光を電気信号に変換する部位であり、多値画像を構成する各画素のＲＧＢアナログ信号を出力する部位である。出力されたアナログ信号は、Ａ／Ｄ変換器１０２でデジタル信号に変換される。デジタル信号は、ホワイトバランス調整器１０３、画素補間器１０４、輝度生成器１０５、アパーチャ補正器１０６を通じて、輝度値の補間、抽出などの処理を受け、フレームメモリ１０７に一時記憶される。
【０２０７】
測光器３５０４は、画像撮影前に被写体の測光を行う自動露出検知機構（ＡＥ）を有し、Ａ／Ｄ変換器１０２から出力されるデジタル信号に基づき、各画面の明るさを測定する。測光の方法は、画素の輝度値の加算により測定する。このときＣＰＵ３５０１は、測光器３５０４で加算に使用する測光値をサンプリングすることも可能である。本測光器３５０４において輝度信号生成と同時に平均輝度を算出することができるので、ＣＰＵ３５０１における演算量が削減され画像の撮像から二値画像の記憶まで実施の形態１３と比較してより高速に実行できる。
【０２０８】
ＣＰＵ３５０１は、デジタルカメラ３５００の各回路、各部位を制御するとともに、画像二値化のための機能を有する。ＣＰＵ３５０１に接続されたＲＯＭ３５０２には、二値化の機能を実現するソフトウェアプログラムが格納されている。また、ＲＡＭ３５０３は、二値化処理を行うためのワークエリアとして画像データなどのデータを格納する。
【０２０９】
ＲＯＭ３５０２には、前述の実施の形態における平滑化器、制限器、ブロック二値化閾値設定回路、二値化閾値補間器、二値化器、圧縮器などの機能を実現するソフトウェアプログラムが格納されており、二値化閾値設定、二値化、二値画像の圧縮などの機能がＣＰＵ３５０１においてプログラムが実行されることにより実現できる。また、係数ＣｂもしくはＣｍも格納されている。ＣＰＵ３５０１で二値化、圧縮された画像は画像記憶メモリ１２５に記憶される。使用の態様によってはＣＣＤ１０１の代わりにＣＭＯＳセンサを使用してもよい。
【０２１０】
実施の形態１４では、実施の形態１３と同様に、ＣＰＵ３５０１およびＲＯＭ３５０２により各機能を実現するので、個々の機能部をつくり分けなくてすみ、開発費を削減することが可能となるとともに、安価なデジタルカメラを提供することが可能となる。また、ソフトウェアをアップグレードすることにより、常に最新のアルゴリズムを提供することが可能となる。
【０２１１】
（実施の形態１５）
本発明は、上述した実施の形態の他にソフトウェアプログラムによっても実現することができる。図３６は、本発明をソフトウェアによって実現する場合におけるコンピュータシステムの構成例を表す図である。
【０２１２】
図において、３６０１は制御プログラムに基づいて装置全体を制御するＣＰＵを、３６０２は制御プログラムが格納されているＲＯＭを、３６０３はＲＡＭを、３６０４はコンピュータの入力・出力状態などを表示する表示装置を、３６０５はハードディスクを、３６０６は文字列などを入力するために用いられるキーボードを、３６０７はＣＤ−ＲＯＭドライブを、３６０８はコンピュータ読み取り可能な記録媒体としてのＣＤ−ＲＯＭを表し、本発明の画像二値化方法を実現するプログラムが記録されている。
【０２１３】
以上のように構成されたコンピュータシステムにおいて、ＣＤ−ＲＯＭ３６０８に本発明の画像二値化方法を実現するプログラムを記録しておく。ＣＰＵ３６０１の制御および処理により、上記プログラムが読み込まれ、プログラムが起動することにより、画像二値化処理が実行され、二値化された情報がハードディスク３６０５等に出力される。
【０２１４】
【発明の効果】
以上説明したように、本発明の画像二値化装置（請求項１）は、平均輝度値に応じて値の異なる二値化閾値を用い、表面反射が発生しているような領域に対して適切な二値化閾値を採用することができ、これにより、多値画像を高品質に二値化することが可能となる。また、高輝度領域でのブロック二値化閾値を平均輝度値から大きくずれないようにすることができ、白飛びが発生しているような領域でも、より高品質な二値化が可能となる。
【０２１５】
また、本発明の画像二値化装置（請求項２）は、請求項１に記載の画像二値化装置において、前記二値化閾値設定手段が、前記平均輝度値算出手段により算出された局所的な平均輝度値に応じた補正量であって、平均輝度値が所定の中間レンジにある場合には当該中間レンジ外にある場合よりも大きな値である補正量を当該局所的な平均輝度値から減算することにより二値化閾値を設定するので、表面反射が生じる輝度レンジでは平均輝度値と二値化閾値との差を小さくするような補正量により適切な二値化閾値を採用しつつ、中間レンジではある程度大きな補正量により適切な二値化閾値を採用することができ、これにより、多値画像を高品質に二値化することが可能となる。また、低輝度側での平均輝度値と二値化閾値との差を大きくしないようにして、低輝度側でのノイズの発生を抑制することができ、これにより、多値画像を高品質に二値化することが可能となる。
【０２１６】
また、本発明の画像二値化装置（請求項３）は、請求項１に記載の画像二値化装置において、前記二値化閾値設定手段が、前記平均輝度値算出手段により算出された局所的な平均輝度値に対して、平均輝度値が大きな値となるほどに大きな値の補正量を用いて乗算することにより二値化閾値を設定するので、表面反射が生じる輝度レンジにおいて、平均輝度値と二値化閾値との差を小さくするような補正量により適切な二値化閾値を採用することができ、これにより、多値画像を高品質に二値化することが可能となる。
【０２１７】
また、本発明の画像二値化装置（請求項４）は、輝度値入力手段が、多値画像を構成する各画素の輝度値を入力し、平均輝度値算出手段が、前記輝度値入力手段により入力された輝度値に基づいて、二値化すべき画素を含んだ局所的な平均輝度値を算出し、減算閾値算出手段が、前記平均輝度値算出手段により算出された局所的な平均輝度値に第１の補正量を減算して第１の二値化閾値を算出し、乗算閾値算出手段が、前記平均輝度値算出手段により算出された局所的な平均輝度値に１未満の値である第２の補正量を乗じて第２の二値化閾値を算出し、比較判定手段が、前記平均輝度値算出手段により算出された局所的な平均輝度値の大きさが所定の比較値より大であるか小であるかを判定し、二値化閾値決定手段が、前記比較判定手段により前記局所的な平均輝度値の大きさが前記比較値より大であると判定された場合には、前記減算閾値算出手段により算出される前記第１の二値化閾値を採用することを決定し、前記比較判定手段により前記局所的な平均輝度値の大きさが前記比較値より小であると判定された場合には、前記乗算閾値算出手段により算出される前記第２の二値化閾値を採用することを決定し、二値化手段が、前記二値化閾値決定手段により決定された二値化閾値により前記二値化すべき画素を二値化するので、表面反射が生じている様な領域に対する二値化閾値と、通常の領域に対する二値化閾値を使い分け、表面反射が生じている様な領域に対しては、平均輝度値が大きくなるにつれて平均輝度値との差が相対的に小さくなる二値化閾値を採用し、通常の領域に対しては、二値化後の全体的な調子が滑らかとなる二値化閾値を採用することができ、これにより、多値画像を高品質に二値化することが可能となる。
【０２１８】
また、本発明の画像二値化装置（請求項５）は、請求項４に記載の画像二値化装置において、前記減算閾値算出手段が、前記平均輝度値算出手段により算出された局所的な平均輝度値に対して、当該輝度値の大きさに応じた補正量を減算することにより前記第１の二値化閾値を算出するので、表面反射が生じる輝度レンジでより適切な二値化閾値を採用でき、これにより、多値画像を高品質に二値化することが可能となる。
【０２１９】
また、本発明の画像二値化装置（請求項６）は、請求項４または５に記載の画像二値化装置において、前記乗算閾値設定手段が、前記平均輝度値算出手段により算出された局所的な平均輝度値に対して、当該輝度値の大きさに応じた補正量で乗算することにより前記第２の二値化閾値を算出するので、表面反射が生じていない領域において、境界が発生せず滑らかな二値画像が得られる二値化閾値を採用することができ、これにより、多値画像を高品質に二値化することが可能となる。
【０２２１】
また、本発明の画像二値化装置（請求項７）は、多値画像の白飛びをより的確に判断して二値化閾値を設定することができ、これにより、多値画像を高品質に二値化することが可能となる。
【０２２２】
また、本発明の画像二値化装置（請求項８）は、平均濃度値に応じて値の異なる二値化閾値を用い、表面反射が発生しているような領域に対して適切な二値化閾値を採用することができ、これにより、多値画像を高品質に二値化することが可能となる。また、低濃度領域でのブロック二値化閾値を平均濃度値から大きくずれないようにすることができ、白飛びが発生しているような領域でも、より高品質な二値化が可能となる。
【０２２３】
また、本発明の画像二値化装置（請求項９）は、表面反射が生じる濃度レンジでは平均濃度値と二値化閾値との差を小さくするような補正量により適切な二値化閾値を採用しつつ、中間レンジではある程度大きな補正量により適切な二値化閾値を採用することができ、これにより、多値画像を高品質に二値化することが可能となる。また、高濃度側での平均濃度値と二値化閾値との差を大きくしないようにして、高濃度側でのノイズの発生を抑制することができ、これにより、多値画像を高品質に二値化することが可能となる。
【０２２４】
また、本発明の画像二値化装置（請求項１０）は、表面反射が生じている濃度レンジにおいて、平均濃度値と二値化閾値との差を小さくするような補正量により適切な二値化閾値を採用することができ、これにより、多値画像を高品質に二値化することが可能となる。
【０２２５】
また、本発明の画像二値化装置（請求項１１）は、表面反射が生じている様な領域に対する二値化閾値と、通常の領域に対する二値化閾値を使い分け、表面反射が生じている様な領域に対しては、平均濃度値が小さくなるにつれて平均濃度値との差が相対的に小さくなる二値化閾値を採用し、通常の領域に対しては、二値化後の全体的な調子が滑らかとなる二値化閾値を採用することができ、これにより、多値画像を高品質に二値化することが可能となる。
【０２２６】
また、本発明の画像二値化装置（請求項１２）は、表面反射が生じている濃度レンジでより適切な二値化閾値を採用でき、これにより、多値画像を高品質に二値化することが可能となる。
【０２２７】
また、本発明の画像二値化装置（請求項１３）は、表面反射が生じていない領域において、境界が発生せず滑らかな二値画像が得られる二値化閾値を採用することができ、これにより、多値画像を高品質に二値化することが可能となる。
【０２２９】
また、本発明の画像二値化装置（請求項１４）は、多値画像の白飛びをより的確に判断して二値化閾値を設定することができ、これにより、多値画像を高品質に二値化することが可能となる。
【０２３０】
また、本発明の画像二値化方法（請求項１５）は、表面反射が生じている画像に対しても適正な二値化閾値を設定することができ、これにより、多値画像を高品質に二値化することが可能となる。また、高輝度領域でのブロック二値化閾値を平均輝度値から大きくずれないようにすることができ、白飛びが発生しているような領域でも、より高品質な二値化が可能となる。
【０２３１】
また、本発明の画像二値化方法（請求項１６）は、表面反射が生じている画像に対しても適正な二値化閾値を設定することができ、これにより、多値画像を高品質に二値化することが可能となる。また、低濃度領域でのブロック二値化閾値を平均濃度値から大きくずれないようにすることができ、白飛びが発生しているような領域でも、より高品質な二値化が可能となる。
【０２３２】
また、本発明の画像二値化プログラム（請求項１７）は、表面反射が生じている画像に対しても適正な二値化閾値を設定することができ、これにより、多値画像を高品質に二値化することが可能となる。また、高輝度領域でのブロック二値化閾値を平均輝度値から大きくずれないようにすることができ又は低濃度領域でのブロック二値化閾値を平均濃度値から大きくずれないようにすることができ、白飛びが発生しているような領域でも、より高品質な二値化が可能となる。
【図面の簡単な説明】
【図１】実施の形態１の画像二値化装置をデジタルカメラに適用した場合の、画像データの入力から、二値化処理した画像を記録するまでの装置構成の一例を示したブロック図である。
【図２】実施の形態１のデジタルカメラにおけるＣＣＤの受光部の概念を示した概念図である。
【図３】実施の形態１のデジタルカメラが撮影した多値画像をブロックに分割する分割例を示した図である。
【図４】ブロック内の画素をサンプリングするサンプリング間隔の例を示した図である。
【図５】実施の形態１のデジタルカメラの平均輝度値算出器の構成の一例を示したブロック図である。
【図６】実施の形態１のデジタルカメラの二値化閾値設定回路の一構成例を示した説明図である。
【図７】実施の形態１のデジタルカメラにおいて、多値画像が二値化されるまでの画像データの処理流れを示したフローチャートである。
【図８】図７に示したフローチャート中の二値化閾値算出ルーチンの処理流れの一例を示したフローチャートである。
【図９】実施の形態２の画像二値化装置をデジタルカメラに適用した場合の装置構成の一例を示したブロック図である。
【図１０】実施の形態３の画像二値化装置をデジタルカメラに適用した場合の装置構成の一例を示したブロック図である。
【図１１】実施の形態３のデジタルカメラのブロック二値化閾値設定回路の一構成例を示した説明図である。
【図１２】係数メモリに格納されている係数例を示した説明図である。
【図１３】実施の形態３のデジタルカメラの補間ブロック内の各画素に適用する二値化閾値を算出する概要を説明する説明図である。
【図１４】実施の形態３のデジタルカメラにおいて、多値画像が二値化されるまでの画像データの処理流れを示したフローチャートである。
【図１５】図１４に示したフローチャート中のブロック二値化閾値算出ルーチンの処理流れの一例を示したフローチャートである。
【図１６】画像入力部分にＣＭＯＳセンサを使用し、画素毎に適用される二値化閾値を算出して画素毎に画像データの二値化を行うデジタルカメラの装置構成の一例を示したブロック図である。
【図１７】実施の形態５の画像二値化装置をデジタルカメラに適用した場合の装置構成の一例を示したブロック図である。
【図１８】実施の形態６の画像二値化装置をデジタルカメラに適用した場合の装置構成の一例を示したブロック図である。
【図１９】実施の形態７の画像撮像装置をデジタルカメラに適用した場合について、画像入力から二値化処理をした画像を記録するまでの装置構成の一例を示したブロック図である。
【図２０】実施の形態７のデジタルカメラの二値化閾値設定回路の一構成例を示した説明図である。
【図２１】係数メモリに格納されている係数例を示した説明図である。
【図２２】実施の形態７のデジタルカメラにおいて、多値画像が二値化されるまでの画像データの処理流れを示したフローチャートである。
【図２３】図２２に示した二値化閾値算出ルーチンの処理流れの一例を示したフローチャートである。
【図２４】画像入力部分にＣＭＯＳセンサが使用されたデジタルカメラにおいて、入力した画像を二値化処理して記録するまでの装置構成の一例を示したブロック図である。
【図２５】実施の形態９の画像撮像装置をデジタルカメラに適用した場合の装置構成の一例を示したブロック図である。
【図２６】実施の形態９のデジタルカメラにおいて、補間ブロックと画面との関係を示した図である。
【図２７】実施の形態９のデジタルカメラにおいて、多値画像が二値化されるまでの画像データの処理流れを表すフローチャートである。
【図２８】ＣＭＯＳセンサと測光器を用いて、所定ブロック内の画素毎に適用される二値化閾値を算出し、画素毎に画像データの二値化を行う画像撮像装置をデジタルカメラに適用した一例を示した構成図である。
【図２９】実施の形態１１の画像撮像装置をデジタルカメラに適用した場合の装置構成の一例を示したブロック図である。
【図３０】実施の形態１１のデジタルカメラにおいて、多値画像が二値化されるまでの画像データの処理流れを表すフローチャートである。
【図３１】実施の形態１１のデジタルカメラの他の装置構成の一例を示したブロック図である。
【図３２】実施の形態１２の画像撮像装置をデジタルカメラに適用した場合の装置構成の一例を示したブロック図である。
【図３３】実施の形態１２のデジタルカメラにおいて、多値画像が二値化されるまでの画像データの処理流れを表すフローチャートである。
【図３４】画像二値化をＣＰＵにおいてソフトウェア処理で行う画像撮像装置をデジタルカメラに適用した場合について、画像入力から二値化処理をした画像を記録するまでの装置構成の一例を示したブロック図である。
【図３５】画像二値化をＣＰＵにおいてソフトウェア処理で行う画像撮像装置をデジタルカメラに適用した場合について、画像入力から二値化処理をした画像を記録するまでの装置構成を表すブロック図である。
【図３６】本発明をソフトウェアによって実現する場合におけるコンピュータシステムの構成例を表す図である。
【符号の説明】
１００，９００，１０００，１６００，１７００，１８００，１９００，２４００，２５００，２８００，２９００，３１００，３２００，３４００，３５００  デジタルカメラ
１０１  ＣＣＤ
１０２  Ａ／Ｄ変換器
１０３  ホワイトバランス調整器
１０４  画素補間器
１０５  輝度生成器
１０６  アパーチャ補正器
１０７  フレームメモリ
１０９  ブロックバッファ
１２０  平均輝度値算出器
１２１  低輝度閾値設定器
１２２，１９０５  二値化閾値設定回路
１２３  二値化器
１２４  圧縮器
１２５  画像記憶メモリ
５０１  比較器
５０２  加算結果レジスタ
５０３  カウンタ
５０４  シフトレジスタ
５０６  加算器
６０１，２００１  加算減算器
６０２，１０１１  乗算除算器
６０３  比較器
６０４  セレクタ
１００１  ブロック二値化閾値設定回路
１００３，２５０３  二値化閾値補間器
１０１２  係数メモリ（Ｃｂ）
１９０１，２９０１，３５０４  測光器
１９０２，２９０２  平滑化器
１９０４，２９０４  ブロック読出制御器
２００２  係数メモリ（Ｃｍ）
２５０１  画面二値化閾値設定回路
Ｃｂ  係数，定数
Ｃｍ  係数，定数
ＴＨ  二値化閾値（ブロック二値化閾値）
ａｖｅ  平均値（平均輝度値、平均濃度値）
Ｙ  輝度信号値（輝度値）
ｔｈ  二値化閾値
ｔｈｌ  低輝度閾値
ｖ  輝度値
【図１】
0004132725.tif 000004
【図２】
0004132725.tif 000005
【図３】
0004132725.tif 000006
【図４】
0004132725.tif 000007
【図５】
0004132725.tif 000008
【図６】
0004132725.tif 000009
【図７】
0004132725.tif 000010
【図８】
0004132725.tif 000011
【図９】
0004132725.tif 000012
【図１０】
0004132725.tif 000013
【図１１】
0004132725.tif 000014
【図１２】
0004132725.tif 000015
【図１３】
0004132725.tif 000016
【図１４】
0004132725.tif 000017
【図１５】
0004132725.tif 000018
【図１６】
0004132725.tif 000019
【図１７】
0004132725.tif 000020
【図１８】
0004132725.tif 000021
【図１９】
0004132725.tif 000022
【図２０】
0004132725.tif 000023
【図２１】
0004132725.tif 000024
【図２２】
0004132725.tif 000025
【図２３】
0004132725.tif 000026
【図２４】
0004132725.tif 000027
【図２５】
0004132725.tif 000028
【図２６】
0004132725.tif 000029
【図２７】
0004132725.tif 000030
【図２８】
0004132725.tif 000031
【図２９】
0004132725.tif 000032
【図３０】
0004132725.tif 000033
【図３１】
0004132725.tif 000034
【図３２】
0004132725.tif 000035
【図３３】
0004132725.tif 000036
【図３４】
0004132725.tif 000037
【図３５】
0004132725.tif 000038
【図３６】
0004132725.tif 000039