(57)【要約】【課題】  空間フィルタ処理に線検出機能を付加する。【解決手段】  線検出処理部１０３が所定領域の画像データに基づき、線を検出し、フィルタ処理部１０４が所定領域の画像データに対してフィルタ処理を行い、セレクタ１０７が線検出結果に応じて、フィルタ処理された画像データか、未処理の画像データの何れかを選択して出力する。【選択図】      図１
2005204263.tif 000002
【特許請求の範囲】
【請求項１】
所定領域の画像データに基づき、当該所定領域における注目画素が線を構成する画素か否かを検出する線検出手段と、
前記所定領域の画像データに対してフィルタ処理を行う処理手段と、
前記線検出手段での検出結果に応じて、前記フィルタ処理された画像データか、未処理の画像データの何れかを選択して出力する選択手段とを有することを特徴とする画像処理装置。
【請求項２】
入力された画像データを一時保持しておくメモリと、該メモリへの書き込み又はメモリからの読み出しを制御する制御手段とを更に有し、
前記制御手段は、前記メモリから画像データを読み出して前記線検出手段及び処理手段に出力することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
複数の処理手段を有し、前記制御手段は、前記メモリから画像データを読み出して前記複数の処理手段に出力することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記フィルタ処理された画像データを二値化する二値化手段と、前記フィルタ処理された画像データの値を制限する制限手段とを更に有することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
所定領域の画像データに基づき、当該所定領域における注目画素が線を構成する画素か否かを検出する線検出工程と、
前記所定領域の画像データに対してフィルタ処理を行う処理工程と、
前記線検出工程における検出結果に応じて、前記フィルタ処理された画像データか、未処理の画像データの何れかを選択して出力する選択工程とを有することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データをフィルタ処理する技術に関する。
【背景技術】
【０００２】
従来、原稿をスキャナ部によって読み取り、読み取った原稿の画像データに様々な画像処理を施し、プリンタ部から出力するデジタル複写機（複合機）が知られている。また、近年では、複写機の出力画像として、より高画質なものが求められるようになってきており、上述の画像処理の技術革新が進んでいる。
【０００３】
一方、製品の開発サイクルも短くなってきており、画像処理技術の開発に際しては、必要な追加機能に対応した画像処理機能を迅速に搭載していくことが望まれている。
【０００４】
ところで、上述の画像処理では、複数の処理を順次行っており、一つ一つの処理の組み合わせによって成り立っている。そして、これらの一連の画像処理の中でもフィルタ処理が多用されており、フィルタサイズ、フィルタ数、入出力信号のビット数、二値化処理等の違いによって多種類のフィルタが用いられている。
【０００５】
例えば、原稿を画素単位に文字領域と網点領域（イメージ・グラフィック領域）とに分離する像域分離処理においては、文字領域を検出する前処理としてフィルタ処理を行った後、二つの閾値により二値化し、二つのエッジ信号を生成する必要がある。また同様に、網点領域を検出する前処理としてフィルタ処理を行った後、二つの閾値により二値化し、二つのエッジ信号を生成する必要がある。また、網点画像内に存在する文字領域を検出する処理として、網点画像が黒線上にない場合にはフィルタ処理を行い、黒線上にある場合にはフィルタ処理を行わない「適応的スムージング処理」を行った後、更にフィルタ処理を行い、一つの閾値に対して二値化し、網点内文字判定信号を生成する処理を行う必要がある。また、これらの像域分離処理によって出力される像域信号からフィルタを選択する処理が行われている（例えば、特許文献１参照）。
【特許文献１】特開平８−４６８０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来技術に記載したように、像域分離処理の結果から得られた像域信号によってフィルタの選択を行う画像処理、網点画像内の文字領域検出等の画像処理を実行するために複数の異なる空間フィルタやその周辺処理をそれぞれ設けることになる。
特に、線検出機能と空間フィルタ処理が分離していることにより、線検出結果に応じたフィルタ切り替えを行い、高速な適応的スムージング処理を行うことが困難であった。
【０００７】
本発明は、上記課題を解決するためになされたもので、空間フィルタ処理に線検出機能を付加することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の画像処理装置は、所定領域の画像データに基づき、当該所定領域における注目画素が線を構成する画素か否かを検出する線検出手段と、前記所定領域の画像データに対してフィルタ処理を行う処理手段と、前記線検出手段での検出結果に応じて、前記フィルタ処理された画像データか、未処理の画像データの何れかを選択して出力する選択手段とを有することを特徴とする。
【０００９】
また、本発明の画像処理方法は、所定領域の画像データに基づき、当該所定領域における注目画素が線を構成する画素か否かを検出する線検出工程と、前記所定領域の画像データに対してフィルタ処理を行う処理工程と、前記線検出工程における検出結果に応じて、前記フィルタ処理された画像データか、未処理の画像データの何れかを選択して出力する選択工程とを有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、空間フィルタ処理に線検出機能を付加することにより、同一のモジュール構成で複数種類の画像処理に対応させることができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照しながら発明を実施するための最良の形態について詳細に説明する。まず、第１の実施形態として、所定領域内の画像信号に対して線検出を行い、注目画素が線上にある場合はフィルタ処理していない信号を出力し、線上にない場合はフィルタ処理した信号を出力する「適応的スムージング処理」を実現し、またフィルタ処理した信号を二値化する画像処理モジュールについて説明する。
【００１２】
［第１の実施形態］
図１は、第１の実施形態における画像処理モジュールの構成の一例を示すブロック図である。図１において、１０２はメモリであり、所定領域内の画像信号を一時的に保持する。１０１はメモリコントローラであり、メモリ１０２に対する画像信号の書き込み或いはメモリ１０２からの画像信号の読み出しを制御する。１０３は線検出処理部であり、所定領域内の縦方向、横方向の線を検出する。１０４はフィルタ処理部であり、所定領域内の画像信号に対して空間フィルタ処理を行う。１０５は二値化処理部であり、フィルタ処理部１０４でフィルタ処理された画像信号を二値化する。１０６はクリップ処理部であり、フィルタ処理部１０４でフィルタ処理された画像信号に対してオーバーフロー又はアンダーフロー処理を行う。１０７はセレクタであり、線検出処理部１０３での判定結果によりフィルタ処理部１０４でフィルタ処理され、クリップ処理部１０６でクリップ処理された信号か、フィルタ処理される前の信号の何れかを選択する。
【００１３】
以上の構成において、メモリコントローラ１０１は、画像処理モジュールへ１画素単位で順次入力されてくる１ライン分の画素信号と、メモリ１０２にすでに書き込まれている４ライン分の画素信号とを同期させて読み出し、計５ライン分の画素信号を線検出処理部１０３及びフィルタ処理部１０４へ出力すると共に、次のラインが入力されてきたときに使用する４ライン分の画素信号をメモリ１０２に書き込む。
【００１４】
このように、メモリコントローラ１０１によって読み出された５ライン分の画素信号は線検出処理部１０３へ入力され、線検出処理部１０３が、連続する５画素の画素信号の差が少なく平坦で、かつ、注目画素を含む５画素の画素信号レベルが低ければ、黒い線上に注目画素があると判定する。
【００１５】
図２は、線検出処理部１０３で処理される領域内の画素配置を示す図である。図２において、ｄ00〜ｄ44は５×５画素領域内の各画素の画素値を示し、以下の演算を行う。まず各列の画素値に対して演算を行う。
【００１６】
ここで、ｍａｘ（Ａ，Ｂ，Ｃ，Ｄ，Ｅ）は画素値Ａ，Ｂ，Ｃ，Ｄ，Ｅのうちの最大値を示し、またｍｉｎ（Ａ，Ｂ，Ｃ，Ｄ，Ｅ）は画素値Ａ，Ｂ，Ｃ，Ｄ，Ｅのうちの最小値を示す。
【００１７】
０列の５画素の画素値より
TL_MAX = max(d00, d10, d20, d30, d40)
TL_MIN = min(d00, d10, d20, d30, d40)
TL_ALL = d00 + d10 + d20 + d30 + d40 
２列の５画素の画素値より
TC_MAX = max(d02, d12, d22, d32, d42)
TC_MIN = min(d02, d12, d22, d32, d42)
TC_ALL = d02 + d12 + d22 + d32 + d42
４列の５画素の画素値より
TR_MAX = max(d04, d14, d24, d34, d44)
TR_MIN = min(d04, d14, d24, d34, d44)
TR_ALL = d04 + d14 + d24 + d34 + d44
１列の５画素の画素値より
TLC_MAX = max(d01, d11, d21, d31, d41)
TLC_MIN = min(d01, d11, d21, d31, d41)
３列の５画素の画素値より
TRC_MAX = max(d03, d13, d23, d33, d43)
TRC_MIN = min(d03, d13, d23, d33, d43)
以上の算出された値とあらかじめ設定された閾値TMML，TLMTとから、以下の条件１又は条件２が満たされた場合は縦線があると判定し、縦線検出信号TD＝１となる。また、条件１，２の何れも満たさない場合は縦線がないと判定し、縦線検出信号TD＝０となる。
【００１８】
条件１
TL_MAX -TL_MIN ≦ TMML  かつ
TLC_MAX -TLC_MIN ≦ TMML  かつ
TC_MAX -TC_MIN ≦ TMML  かつ
TL_ALL -TC_ALL ≧ TLMT*5
条件２
TR_MAX -TR_MIN ≦ TMML  かつ
TRC_MAX -TRC_MIN ≦ TMML  かつ
TC_MAX -TC_MIN ≦ TMML  かつ
TR_ALL -TC_ALL ≧ TLMT*5
次に、上述した各列の演算と同様に、各行の画素値に対して演算を行う。
【００１９】
０行の５画素の画素値より
YU_MAX = max(d00, d01, d02, d03, d04)
YU_MIN = min(d00, d01, d02, d03, d04)
YU_ALL = d00 + d01 + d02 + d03 + d04
２行の５画素の画素値より
YC_MAX = max(d20, d21, d22, d23, d24)
YC_MIN = min(d20, d21, d22, d23, d24)
YC_ALL = d20 + d21 + d22 + d23 + d24
４行の５画素の画素値より
YS_MAX = max(d40, d41, d42, d43, d44)
YS_MIN = min(d40, d41, d42, d43, d44)
YS_ALL = d40 + d41 + d42 + d43 + d44
１行の５画素の画素値より
YUC_MAX = max(d10, d11, d12, d13, d14)
YUC_MIN = min(d10, d11, d12, d13, d14)
３行の５画素の信号より
YSC_MAX = max(d30, d31, d32, d33, d34)
YSC_MIN = min(d30, d31, d32, d33, d34)
以上の算出された値とあらかじめ設定された閾値YMML，YLMTとから、以下の条件１又は条件２が満たされた場合は横線があると判定し、横線検出信号YD＝１となる。また、条件１，２の何れも満たさない場合は横線がないと判定し、横線検出信号YD＝０となる。
【００２０】
条件１
YU_MAX -YU_MIN ≦ YMML  かつ
YUC_MAX -YUC_MIN ≦ YMML  かつ
YC_MAX -YC_MIN ≦ YMML  かつ
YU_ALL -YC_ALL ≧ YLMT*5
条件２
YS_MAX -YS_MIN ≦ YMML  かつ
YSC_MAX -YSC_MIN ≦ YMML  かつ
YC_MAX -YC_MIN ≦ YMML  かつ
YS_ALL -YC_ALL ≧ YLMT*5
以上の演算により、線検出信号SELは、上記縦線検出信号TD、横線検出信号YDから、
SEL = TD or YD
となり、縦線又は横線がある場合、線検出信号SEL＝１となる。
【００２１】
次に、線検出処理部１０３と同様に、メモリコントローラ１０１によって読み出された５ライン分の画素信号を入力する、フィルタ処理部１０４において行われるフィルタ演算について説明する。
【００２２】
図３は、フィルタ処理部１０４のフィルタ演算において各画素に対応するフィルタ係数を示す図である。図３において、ｃ00〜ｃ44は５×５画素領域内の各画素のフィルタ係数を示し、以下の演算を行う。
【００２３】
ｆ22 = Σ cij * dij  (i,j=0〜4)
ここで、フィルタ係数ｃ00〜ｃ44は符号付きであり、負の数も取りうるので演算結果のｆ22も符号付きである。
【００２４】
次に、二値化処理部１０５において、フィルタ処理部１０４でフィルタ演算された信号ｆ22を入力し、第１の閾値THRES1及び第二の閾値THRES2と比較し、
ｆ22＜THRES1 ならば edge1＝１、そうでない場合はedge1＝０となり、
ｆ22＞THRES2 ならば edge2＝１、そうでない場合はedge2＝０となる。
【００２５】
また、クリップ処理部１０６では、符号付きのフィルタ処理された信号ｆ22のオーバーフロー又はアンダーフロー処理を行い、あらかじめ設定された値DMAXと比較し、
ｆ22＜０ ならば ０を、ｆ22＞DMAX ならばDMAXを、０≦f22≦DMAXならば、ｆ22を出力する。
【００２６】
次に、セレクタ１０７において、線検出信号SELを使用するか否かを示す値SEL_ACTIVEがあらかじめ設定されており、ここで、SEL_ACTIVE＝０のとき、常にｆ22が出力される。また、SEL_ACTIVE＝１のときは上述の線検出信号SELにより、SEL＝１のときｄ22を、SEL＝０のときｆ22を注目画素の出力信号として出力する。
【００２７】
つまり、注目画素が縦線又は横線上にあると判定されると、SEL＝１になり、フィルタ処理されていない信号を出力し、そうでない場合はSEL＝０となり、フィルタ処理された信号を出力する。
【００２８】
このような構成にすることにより、フィルタ処理された画素信号をクリップ処理する前に二値化処理を行え、また多ビット出力としては、フィルタ処理された画素信号を所定の閾値でオーバーフロー又はアンダーフロー処理した後、出力することができる。
【００２９】
［第２の実施形態］
次に、図面を参照しながら本発明に係る第２の実施形態を詳細に説明する。第２の実施形態では、１つのメモリを共用して線検出処理及び複数種類のフィルタ処理を行うものである。
【００３０】
図４は、第２の実施形態における画像処理モジュールの構成の一例を示すブロック図である。図４において、４０２はメモリであり、所定領域内の画像信号を一時的に保持する。４０１はメモリコントローラであり、メモリ４０２に対する画像信号の書き込み或いはメモリ４０２からの画像信号の読み出しを制御する。４０３は線検出処理部であり、所定領域内の縦方向、横方向の線を検出する。４０４はフィルタ処理部であり、所定領域内の画像信号に対して空間フィルタ処理を行う。４０５は二値化処理部であり、フィルタ処理部４０４でフィルタ処理された画像信号を二値化する。４０６はクリップ処理部であり、フィルタ処理部４０４でフィルタ処理された画像信号に対してオーバーフロー又はアンダーフロー処理を行う。４０７はセレクタであり、線検出処理部４０３での判定結果によりフィルタ処理部４０４でフィルタ処理され、クリップ処理部４０６でクリップ処理された信号か、フィルタ処理される前の信号の何れかを選択する。
【００３１】
また、４１４〜４１７及び４２４〜４２７はフィルタ処理部４０４〜セレクタ４０７に対応する処理部である。
【００３２】
以上の構成において、メモリコントローラ４０１は、画像処理モジュールへ１画素単位で順次入力されてくる１ライン分の画素信号と、メモリ４０２にすでに書き込まれている６ライン分の画素信号とを同期させて読み出し、計７ライン分の画素信号をフィルタ処理部４０４、４１４、４２４へ出力し、中央の５ライン分の画素信号を線検出処理部４０３へ出力すると共に、次のラインが入力されてきたときに使用する６ライン分の画素信号をメモリ４０２に書き込む。
【００３３】
線検出処理部４０３は第１の実施形態と同一の処理を行う部分であるが、線検出処理とフィルタ処理を行う画素領域が第１の実施形態と異なる。
【００３４】
図５は、線検出処理部４０３及びフィルタ処理部４０４、４１４、４２４で用いられる画素配置を示す図である。図５に示す領域内の画素配置のうち、線検出処理部４０３では５×５画素領域内の各画素d11〜d15、d21〜d25、d31〜d35、d41〜d45、d51〜d55を用いる。従って、第２の実施形態では、上述の５×５画素領域内の各画素の画素値に対して第１の実施形態と同様に、以下の演算を行う。
【００３５】
１列の５画素の画素値より
TL_MAX = max(d11, d21, d31, d41, d51)
TL_MIN = min(d11, d21, d31, d41, d51)
TL_ALL = d11 + d21 + d31 + d41 + d51 
３列の５画素の画素値より
TC_MAX = max(d13, d23, d33, d43, d53)
TC_MIN = min(d13, d23, d33, d43, d53)
TC_ALL = d13 + d23 + d33 + d43 + d53
５列の５画素の画素値より
TR_MAX = max(d15, d25, d35, d45, d55)
TR_MIN = min(d15, d25, d35, d45, d55)
TR_ALL = d15 + d25 + d35 + d45 + d55
２列の５画素の画素値より
TLC_MAX = max(d12, d22, d32, d42, d52)
TLC_MIN = min(d12, d22, d32, d42, d52)
４列の５画素の画素値より
TRC_MAX = max(d14, d24, d34, d44, d54)
TRC_MIN = min(d14, d24, d34, d44, d54)
以上の算出された値を用いて縦線があるか否かを判定する処理は第１の実施形態と同一であり、ここでの説明は省略する。
【００３６】
次に、上述した各列の演算と同様に、各行の画素値に対して演算を行い、横線があるか否かを判定する。
【００３７】
１行の５画素の画素値より
YU_MAX = max(d11, d12, d13, d14, d15)
YU_MIN = min(d11, d12, d13, d14, d15)
YU_ALL = d11 + d12 + d13 + d14 + d15
３行の５画素の画素値より
YC_MAX = max(d31, d32, d33, d34, d35)
YC_MIN = min(d31, d32, d33, d34, d35)
YC_ALL = d31 + d32 + d33 + d34 + d35
５行の５画素の画素値より
YS_MAX = max(d51, d52, d53, d54, d55)
YS_MIN = min(d51, d52, d53, d54, d55)
YS_ALL = d51 + d52 + d53 + d54 + d55
２行の５画素の画素値より
YUC_MAX = max(d21, d22, d23, d24, d25)
YUC_MIN = min(d21, d22, d23, d24, d25)
４行の５画素の画素値より
YSC_MAX = max(d41, d42, d43, d44, d45)
YSC_MIN = min(d41, d42, d43, d44, d45)
以上の算出された値を用いて横線があるか否かを判定する処理は第１の実施形態と同一であり、ここでの説明は省略する。
【００３８】
以上の演算により、線検出信号SELは、上記縦線検出信号TD、横線検出信号YDから、
SEL = TD or YD
となり、縦線又は横線がある場合、線検出信号SEL＝１となる。
【００３９】
次に、上述のメモリコントローラ４０１によって読み出された７ライン分の画素信号を入力する、フィルタ処理部４０４において行われるフィルタ演算について説明する。
【００４０】
図６は、フィルタ処理部４０４のフィルタ演算において各画素に対応するフィルタ係数を示す図である。図６において、c00'〜c66'は７×７画素領域内の各画素のフィルタ係数を示し、以下の演算を行う。
【００４１】
f33' = Σ cij' * dij  (i,j=0〜6)
ここで、フィルタ係数c00'〜c66'は符号付きであり、負の数も取りうるので演算結果のf33も符号付きである。また同様に、フィルタ処理部４１４では図７のフィルタ係数c00"〜c66"を用い、フィルタ処理部４２４では図８のフィルタ係数c00"'〜c66"'を用いて以下の演算を行う。
【００４２】
尚、フィルタ処理部４１４のフィルタ係数は、例えば網点領域を検出する前処理として行われるフィルタ処理のフィルタ係数であり、フィルタ処理部４２４のフィルタ係数は、例えば文字領域を検出する前処理として行われるフィルタ処理のフィルタ係数である。
【００４３】
f33" = Σ cij" * dij  (i,j=0〜6)
f33"' = Σ cij"' * dij  (i,j=0〜6)
次に、二値化処理部４０５、４１５、４２５では、フィルタ処理された信号f33'、f33"、f33"'をそれぞれ入力し、第１の実施形態と同一の処理を行う。
【００４４】
また、クリップ処理部４０６、４１６、４２６及びセレクタ４０７、４１７、４２７での処理内容も第１の実施形態と同一である。
【００４５】
このような構成にすることにより、１つのメモリを共用して線検出処理及び複数種類のフィルタ処理を行うことができる。
【００４６】
［第３の実施形態］
次に、図面を参照しながら本発明に係る第３の実施形態を詳細に説明する。第３の実施形態では、第２の実施形態における画像処理モジュールの第１のフィルタ出力に対応したセレクタ４０７の出力に、第１の実施形態における画像処理モジュールが縦列接続され、第２及び第３のフィルタ出力に対応した二値化処理部４１５及び４２５の二値信号に網点判定処理部及び文字判定処理部が縦列接続され、この構成により、文字判定、網点判定、網点内文字判定の各処理を行うものである。
【００４７】
図９は、第３の実施形態における画像処理モジュールの構成の一例を示すブロック図である。図９において、左側のブロック内の構成９０１〜９０７、９１４〜９１７、９２４〜９２７は第２の実施形態で説明した図４に示した構成４０１〜４０７、４１４〜４１７、４２４〜４２７に相当する。また右側のブロック内の構成９３１〜９３７は第１の実施形態で説明した図１に示した構成１０１〜１０７に相当する。
【００４８】
９０８は網点判定処理部であり、二値化処理部９１５から出力された２つの二値信号に基づいて網点判定を行う。９０９は文字判定処理部であり、二値化処理部９２５から出力された２つの二値信号に基づいて文字判定を行う。
【００４９】
以上の構成において、メモリコントローラ９０１は、画像処理モジュールへ１画素単位で順次入力されてくる１ライン分の画素信号と、メモリ９０２にすでに書き込まれている６ライン分の画素信号とを同期させて読み出し、計７ライン分の画素信号をフィルタ処理部９０４、９１４、９２４へ出力し、中央の５ライン分の画素信号を線検出処理部９０３へ出力すると共に、次のラインが入力されてきたときに使用する６ライン分の画素信号をメモリ９０２に書き込む。
【００５０】
また同様に、メモリコントローラ９３１は、セレクタ９０７より１画素単位で順次入力されてくる１ライン分の画素信号と、メモリ９３２にすでに書き込まれている６ライン分の画素信号とを同期させて読み出し、計７ライン分の画素信号をフィルタ処理部９３４へ出力し、中央の５ライン分の画素信号を線検出処理部９３３へ出力すると共に、次のラインが入力してきたときに使用する６ライン分の画素信号をメモリ９３２に書き込む。
【００５１】
線検出処理部９０３、９３３は、それぞれ第１、第２の実施形態と同一の処理を行う。２つの線検出信号SELを生成するが、後述するように、フィルタ処理部９０４に対応した線検出信号は使用しない。
【００５２】
フィルタ処理部９０４、９１４、９２４、９３４も第１、第２の実施形態と同様な処理を行う。ここで、cij""は図１０に示すフィルタ処理部９３４のフィルタ係数である。
【００５３】
尚、フィルタ処理部９３４のフィルタ係数は、例えば網点内文字領域を検出する前処理として行われるフィルタ処理のフィルタ係数である。
【００５４】
f33' = Σ cij' * dij  (i,j=0〜6)
f33" = Σ cij" * dij  (i,j=0〜6)
f33"' = Σ cij"' * dij  (i,j=0〜6)
f33"" = Σ cij"" * dij  (i,j=0〜6)
二値化処理部９０５、９１５、９２５、９３５はフィルタ処理された信号f33'、f33"、f33"'、f33""を入力し、第１、第２の実施形態と同一の処理を行うが、このうち、f33'に対応する二値化処理部９０５の出力信号は使用しない。またf33""に対応した二値化処理部９３５では一つの閾値に対する二値信号のみが使用される。
【００５５】
クリップ処理部９０６、９１６、９２６、９３６及びセレクタ９０７、９１７、９２７、９３７の処理内容も第１及び第２の実施形態と同一であるが、フィルタ処理された信号f33"、f33"'、f33""に対するクリップ処理、セレクタ後の多ビット信号は使用しない。
【００５６】
上述のような構成にすることにより、空間フィルタ処理に線検出機能を付加し、線検出結果に応じて空間フィルタのオン又はオフを制御できるようになり、適応的スムージング処理を行うことができる。また、クリップ処理前のフィルタ出力に複数の閾値に対応した二値化処理を付加することで、像域分離処理に使用する様々な二値信号を生成することができる。更に、像域分離処理で使用する４つの付加機能を持つ空間フィルタ及び画像信号に対する空間フィルタも全て同一構成で対応可能となり、画像処理モジュールの開発期間を大きく短縮化することができ、再利用性を向上させることができる。
【００５７】
尚、本発明は複数の機器（例えば、ホストコンピュータ，インターフェース機器，リーダ，プリンタなど）から構成されるシステムに適用しても、１つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用しても良い。
【００５８】
また、本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ若しくはＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【００５９】
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【００６０】
このプログラムコードを供給するための記録媒体としては、例えばフロッピー（登録商標）ディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００６１】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００６２】
更に、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００６３】
【図１】第１の実施形態における画像処理モジュールの構成の一例を示すブロック図である。
【図２】線検出処理部１０３で処理される領域内の画素配置を示す図である。
【図３】フィルタ処理部１０４のフィルタ演算において各画素に対応するフィルタ係数を示す図である。
【図４】第２の実施形態における画像処理モジュールの構成の一例を示すブロック図である。
【図５】線検出処理部４０３及びフィルタ処理部４０４、４１４、４２４で用いられる画素配置を示す図である。
【図６】フィルタ処理部４０４のフィルタ演算において各画素に対応するフィルタ係数を示す図である。
【図７】フィルタ処理部４１４のフィルタ演算において各画素に対応するフィルタ係数を示す図である。
【図８】フィルタ処理部４２４のフィルタ演算において各画素に対応するフィルタ係数を示す図である。
【図９】第３の実施形態における画像処理モジュールの構成の一例を示すブロック図である。
【図１０】フィルタ処理部９３４のフィルタ演算において各画素に対応するフィルタ係数を示す図である。
【符号の説明】
【００６４】
１０１  メモリコントローラ
１０２  メモリ
１０３  線検出処理部
１０４  フィルタ処理部
１０５  二値化処理部
１０６  クリップ処理部
１０７  セレクタ
【図１】
2005204263.tif 000003
【図２】
2005204263.tif 000004
【図３】
2005204263.tif 000005
【図４】
2005204263.tif 000006
【図５】
2005204263.tif 000007
【図６】
2005204263.tif 000008
【図７】
2005204263.tif 000009
【図８】
2005204263.tif 000010
【図９】
2005204263.tif 000011
【図１０】
2005204263.tif 000012