(57)【要約】【課題】  画像とその背景に埋込まれたドットを精度良く分離した検出をする。【解決手段】  画像処理装置５０では、収縮処理部４３は文書画像とその背景においてドットとを含む多値画像データ２１の各画素の値を、当該画素および周囲の画素からなる複数画素の値の中央値よりも背景画素側の値で置換して、収縮画像データ２３を出力する。膨張処理部４４は、収縮画像データ２３の各画素の値を、当該画素および周囲の画素からなる複数画素の値の中央値よりも文書画像の画素側の値で置換して、膨張画像データ２５を出力する。収縮画像データ２３では背景ドットは背景と同じ値となり消える。膨張処理したとしても消えてしまったドットは戻らないから、文書画像と背景のドットを明らかに分離した検出が可能となる。【選択図】        図１
2006324896.tif 000002
【特許請求の範囲】
【請求項１】
文書画像とその背景においてドットとを含む多値画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第１所定順番である値で置換して、第１置換画像データを出力する第１置換手段と、
前記第１置換手段により出力された前記第１置換画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第２所定順番である値で置換して、第２置換画像データを出力する第２置換手段と、を備え、
前記第１所定順番である値は、前記複数画素の値の中央の値よりも前記背景の画素側の値を示し、前記第２所定順番である値は、前記複数画素の値の中央の値よりも前記文書画像の画素側の値を示す、画像処理装置。
【請求項２】
前記第１置換手段および前記第２置換手段の前記周囲の画素の位置は任意に変更される、請求項１に記載の画像処理装置。
【請求項３】
前記第１置換手段および前記第２置換手段の前記周囲の画素の個数は任意に変更される、請求項１に記載の画像処理装置。
【請求項４】
前記第１置換手段は、
前記多値画像データの各画素の値を、第１ドットパターンを用いて読出した当該画素および前記周囲の画素の値のうち大きさが前記第１所定順番である値で置換し、
前記第２置換手段は、
前記第１置換画像データの各画素の値を、第２ドットパターンを用いて読出した当該画素および前記周囲の画素の値のうち大きさが前記第２所定順番である値で置換する、請求項１に記載の画像処理装置。
【請求項５】
前記第１ドットパターンおよび前記第２ドットパターンは、予め準備された複数種類のドットパターンから選択される、請求項４に記載の画像処理装置。
【請求項６】
前記多値画像データと前記第２置換手段から出力された前記第２置換画像データとの差分を示す差分画像データを出力する差分作成手段をさらに備える、請求項１に記載の画像処理装置。
【請求項７】
前記差分作成手段から出力された前記差分画像データを所定閾値で２値化処理して、２値化画像データを出力する２値化手段をさらに備える、請求項６に記載の画像処理装置。
【請求項８】
前記背景におけるドットは、所定の埋込パターンに従い配置された電子透かし情報を示す、請求項１から７のいずれか１項に記載の画像処理装置。
【請求項９】
前記第１ドットパターンは、画素マトリックスであり、
前記第１置換手段は、
前記多値画像データの各画素の値を、前記画素マトリックスの一部画素と前記多値画像データの対応画素とのマッチングにより読出した当該画素および前記周囲の画素の値のうち大きさが前記第１所定順番である値で置換する、請求項４に記載の画像処理装置。
【請求項１０】
前記第２ドットパターンは、画素マトリックスであり、
前記第２置換手段は、
前記第１置換画像データの各画素の値を、前記画素マトリックスの一部画素と前記第１置換画像データの対応画素とのマッチングにより読出した当該画素および前記周囲の画素の値のうち大きさが前記第２所定順番である値で置換する、請求項４に記載の画像処理装置。
【請求項１１】
前記画素マトリックスにおいて前記一部画素は、値が置換される画素と、当該画素を中心に対称関係に従い配置される画素からなる、請求項９または１０に記載の画像処理装置。
【請求項１２】
前記多値画像データは、前記文書画像の文書が印刷された紙面をスキャンして取得されて、
前記周囲の画素の、個数と位置は、前記印刷の解像度または前記スキャンの解像度に従い決定される、請求項１に記載の画像処理装置。
【請求項１３】
第１置換手段と第２置換手段を備える装置における画像処理方法であって、
前記第１置換手段が、文書画像とその背景においてドットとを含む多値画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第１所定順番である値で置換して、第１置換画像データを出力する第１置換ステップと、
前記第２置換手段が、前記第１置換ステップにより出力された前記第１置換画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第２所定順番である値で置換して、第２置換画像データを出力する第２置換ステップと、を備え、
前記第１所定順番である値は前記複数画素の値の中央の値よりも前記背景の画素側の値を示し、前記第２所定順番である値は前記複数画素の値の中央の値よりも前記文書画像の画素側の値を示す、画像処理方法。
【請求項１４】
コンピュータを、
文書画像とその背景においてドットとを含む多値画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第１所定順番である値で置換して、第１置換画像データを出力する第１置換手段と、
前記第１置換手段により出力された前記第１置換画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第２所定順番である値で置換して、第２置換画像データを出力する第２置換手段と、して機能させるためのプログラムであって、
前記第１所定順番である値は前記複数画素の値の中央の値よりも前記背景の画素側の値を示し、前記第２所定順番である値は前記複数画素の値の中央の値よりも前記文書画像の画素側の値を示す、プログラム。
【請求項１５】
請求項１４に記載のプログラムを記録したコンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は画像処理方法、装置、プログラムおよびコンピュータ読取り可能な記録媒体に関し、特に、文書画像と背景のドットとを分離機能を有する画像処理方法、装置、プログラムおよびコンピュータ読取り可能な記録媒体に関する。
【背景技術】
【０００２】
ＭＦＰ（Multi Function Peripherals）/ＬＢＰ（Laser Beam Printer）に関連して、文書画像にドットパターンとしてデータを埋め込む「文書用電子透かし」技術が提案されている。つまり、データをドットパターンとして画像に埋込んだ後に、当該画像を紙面にプリントアウトして、その後、紙面をスキャナでスキャンし、画像データを読取り、読取った画像データを２値化処理して２値化後の画像から埋込まれているデータを検出する技術である。この際には、埋込んだデータ（ドットパターン部分）と、文字やグラフや画像などの埋込まれたデータとは無関係な本来の文書の情報とを、適切に分離して速やかに埋込情報を検出する技術の提供が望まれていた。
【０００３】
また、ＭＦＰの実機内に当該機能をハードウェアとして搭載するためには、消費されるメモリ容量を少なくするために、精度良く２値化する必要があった。
【０００４】
このような要求を満たすように、たとえば、特許文献１と２の技術が提案されている。特許文献１では、高解像度と低解像度の２種類の画像をそれぞれ２値化し、その２値化画像同士の差分を示す差分画像に基づきノイズ（微小なドットなど）があるかどうか判断している。また、特許文献２では、電子透かしとしての情報が検出される際には、２値化のための閾値をさまざまに変更して検出処理を行うことで、検出精度を向上させている。
【特許文献１】特開２００１−１１１８１６号公報
【特許文献２】特開２００３−３３８９２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１によれば、低解像度の画像を用いるので、処理対象の画像には解像度が低いことに起因したノイズが多く存在する。そのため、ノイズの有無の判断は可能であっても、検出したドットに基づき埋込まれた情報を抽出するような電子透かし処理では、抽出される情報の精度を高めることは困難である。また、電子透かし検出のために、予め高解像度と低解像度の２種類の画像をそれぞれ２値化処理する必要があるので、２値化処理に係る負荷は大きく、また必要とされるメモリ容量も大きくなる。
【０００６】
また、特許文献２は、２値化処理の閾値を変更しながら変更後の閾値で画像の２値化処理を実行する手順が繰返された後に、電子透かしが検出される。したがって、２値化処理を含む埋込まれたデータの検出処理が繰返されるので処理速度を向上させるのは困難である。このように、いずれの特許文献の技術でも、上述の要望を満たすことはできなかった。
【０００７】
それゆえに、この発明の目的は、画像とその背景に埋込まれたドットを精度良く分離した検出動作をする画像処理装置、方法、プログラムおよびコンピュータ読取り可能な記録媒体を提供することである。
【０００８】
この発明の他の目的は、画像の背景に埋込まれたドットを速く検出する画像処理装置、方法、プログラムおよびコンピュータ読取り可能な記録媒体を提供することである。
【課題を解決するための手段】
【０００９】
この発明のある局面に従う画像処理装置は、文書画像とその背景においてドットとを含む多値画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第１所定順番である値で置換して、第１置換画像データを出力する第１置換手段と、第１置換手段により出力された前記第１置換画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第２所定順番である値で置換して、第２置換画像データを出力する第２置換手段と、を備え、第１所定順番である値は、複数画素の値の中央の値よりも背景の画素側の値を示し、第２所定順番である値は、複数画素の値の中央の値よりも文書画像の画素側の値を示す。
【００１０】
この発明によれば、第１置換手段は、文書画像の背景のドットを、その周囲の画素の値である背景の画素の値よりの値で置換するので、当該ドットは背景から消される。また、文書画像の背景との境目の輪郭の画素（ドット）も、その周囲の背景の画素の値よりの値と置換するので、その分、文書画像は文字のストロークなどが収縮して細る。このような第１置換画像データは、第２置換手段により第１置換手段とは相反する値の置換がされて第２置換画像データに変換されるので、第２置換データでは文書画像の背景との境目の輪郭の画素（ドット）は、その周囲の文書画像の画素の値よりの値と置換されて元の状態に戻るよう膨張するが、第１置換手段で消えてしまった背景のドットは元に戻らず消えたままとなる。
【００１１】
したがって、第２置換データは、背景のドットが削除されている文書画像のみのデータとなり、文書画像と背景のドットとを効果的に分離した文書画像の検出ができる。また、背景ドットが雑音であるとすれば文書画像はそのままで雑音のみ削除することができる。
【００１２】
また、置換対象の画素の値の置換は、その周囲に限定された画素の値を用いているので、参照する画素値は限定されたものとなり、処理を速くできる。
【００１３】
好ましくは、第１置換手段および第２置換手段の周囲の画素の位置は任意に変更される。また、周囲の画素の個数は任意に変更される。
【００１４】
したがって、処理の対象とするドットのサイズなどに応じて、検出精度を良くするように、第１置換手段および第２置換手段の周囲の画素の個数と位置とを変更できる。
【００１５】
好ましくは、第１置換手段は、多値画像データの各画素の値を、第１ドットパターンを用いて読出した当該画素および周囲の画素の値のうち大きさが第１所定順番である値で置換し、第２置換手段は、第１置換画像データの各画素の値を、第２ドットパターンを用いて読出した当該画素および周囲の画素の値のうち大きさが第２所定順番である値で置換する。
【００１６】
したがって、第１および第２ドットパターンを準備し、これらパターンを用いて値置換のために値が読出される画素を一意に特定できる。
【００１７】
好ましくは、第１ドットパターンおよび前記第２ドットパターンは、予め準備された複数種類のドットパターンから選択される。
【００１８】
したがって、ドットのサイズなど処理対象の画像に関する条件に応じて、検出精度を良くするように、適用するドットパターンを選択的に変更できる。
【００１９】
好ましくは、多値画像データと第２置換手段から出力された第２置換画像データとの差分を示す差分画像データを出力する差分作成手段をさらに備える。
【００２０】
したがって、差分画像データの画像において、背景のドットを文書画像から分離して示すことができる。
【００２１】
好ましくは、差分作成手段から出力された差分画像データを所定閾値で２値化処理して、２値化画像データを出力する２値化手段をさらに備える。
【００２２】
したがって、２値化処理対象の差分画像データでは、背景のドットが文書画像から分離して示されているから、閾値の設定は容易であり、文書画像に影響されることなく背景のドットを精度良く２値化できる。
【００２３】
好ましくは、背景におけるドットは、所定の埋込パターンに従い配置された電子透かし情報を示す。
【００２４】
好ましくは、第１ドットパターンは、画素マトリックスであり、第１置換手段は、多値画像データの各画素の値を、画素マトリックスの一部画素と多値画像データの対応画素とのマッチングにより読出した当該画素および周囲の画素の値のうち大きさが第１所定順番である値で置換する。
【００２５】
好ましくは、第２ドットパターンは、画素マトリックスであり、第２置換手段は第１置換画像データの各画素の値を、画素マトリックスの一部画素と第１置換画像データの対応画素とのマッチングにより読出した当該画素および周囲の画素の値のうち大きさが第２所定順番である値で置換する。
【００２６】
したがって、マッチングに用いれられるのは、画素マトリックスの一部画素であるから、画素マトリックスの大きさにかかわらずマッチングに係る時間を短くできる。
【００２７】
好ましくは、画素マトリックスにおいて一部画素は、値が置換される画素と、当該画素を中心に対称関係に従い配置される画素からなる。
【００２８】
したがって、値置換結果の第１および第２画像置換データに関して、周囲画素の配置の仕方に依存する要因を排除できて、より正確な置換が可能となる。
【００２９】
好ましくは、多値画像データは、文書画像の文書が印刷された紙面をスキャンして取得されて、周囲の画素の、個数と位置は、印刷の解像度またはスキャンの解像度に従い決定される。
【発明の効果】
【００３０】
発明によれば、第１および第２置換手段の置換結果である第２置換データは、背景のドットが削除されている文書画像のみのデータとなり、文書画像と背景のドットとを効果的に分離して検出できる。また、背景ドットが雑音であるとすれば文書画像はそのままで雑音のみ削除することができる。
【００３１】
また、置換対象の画素の値の置換は、その周囲に限定された画素の値を用いているので、参照する画素値は限定されたものとなり、処理を速くできる。
【発明を実施するための最良の形態】
【００３２】
以下、この発明の実施の形態について図面を参照し詳細に説明する。実施の形態では、収縮と膨張効果を伴う画像処理を印刷された文書の画像に対して行うことで、文字、図形、記号などの文書画像による本来の情報は抽出することなく、当該文書画像の背景においてと文書画像と合成された微小のドットの部分だけを抽出する。当該ドット部分は、所定の埋込パターンに従い複数ドットが配置されてプリントされた電子透かし情報を示すものである。
【００３３】
実施の形態に係る画像処理装置５０の機能構成の一例が図１に、概略の処理手順が図２にまた、実施の形態に係る画像処理装置５０が搭載されるコンピュータ６０の構成が図４に示される。
【００３４】
図３を参照して、画像処理装置５０の機能が搭載されるコンピュータ６０は、コンピュータ自体を集中的に制御するためのＭＰＵ（Micro Processing Unit）６１、各種情報またはプログラム等を格納するためのメモリ６２、ＨＤＤ（Hard Disk Drive）６３、ＦＤ（Flexible Disk）６５が着脱自在に装着されて装着されたＦＤ６５をアクセスするためのＦＤＤ（ＦＤ Driver）６４、およびＤＶＤ６７が着脱自在に装着されて装着されたＤＶＤ６７をアクセスするためのＤＶＤドライバ６６を含む。さらに、コンピュータ６０は、各種情報を外部から入力するためのキーボード６８、およびＩ／Ｆ（インターフェイスの略）６９を介して接続されるスキャナ７０を備える。また、各種情報を出力するための表示部７１、およびプリンタドライバ７２により制御されるプリンタ７３を接続する。さらに、コンピュータ６０は、外部の各種通信回線（インターネットを含む）７５とコンピュータ６０との間で情報の送受信をするための通信Ｉ／Ｆ７４を備える。
【００３５】
図１の各部の動作について図２を参照して簡単に説明する、まず、画像入力部４１は印刷文書（紙）２０を入力処理する（ステップＳ（以下、単にＳと略す）１）。この入力処理は、たとえばスキャナ７０などの入力部を用いて印刷文書２０の紙面をスキャンすることにより、文書を読取り、読取ったデータを画像入力部４１により多値画像データ２１に変換して出力する。出力された多値画像データ２１はメモリ６２などに格納された後、収縮処理部４３により収縮処理（Ｓ３）が実行される。
【００３６】
なお、印刷文書２０は、電子透かし情報が埋込まれている。つまり、印刷文書２０には、文字部分などの文書画像による本来の情報の他に、当該文書画像の背景などにおいてと文書画像と合成されたドット部分がプリントされている。当該ドット部分は、所定のドットパターンに従いプリントされた電子透かし情報を示すものである。このように、電子透かし情報のドットパターンは一見すると何の情報であるかを確認することはできない。
【００３７】
収縮処理Ｓ３においては、メモリ６２に予め格納された複数種類のフィルタ２２のうちから選択的に読出されたフィルタ２２と、メモリ６２から読出した多値画像データ２１とを用いて収縮処理が実行されて、実行結果である収縮画像データ２３が出力される。収縮画像データ２３はメモリ６２に格納される。次に、メモリ６２から読出した収縮画像データ２３とメモリ６２に予め格納された複数種類のフィルタ２４のうちから選択的に読出した１つのフィルタ２４を用いて膨張処理部４４により膨張処理（Ｓ５）が実行されて、膨張画像データ２５が出力される。膨張画像データ２５はメモリ６２に格納される。この収縮処理（Ｓ３）と膨張処理（Ｓ５）の詳細は後述する。
【００３８】
次に、差分画像作成部４５により差分画像作成処理（Ｓ７）が実行される。差分画像作成処理においては、メモリ６２から読出した膨張画像データ２５と多値画像データ２１とを用いて、両画像データの差分を示す画像データである差分画像データ２６が作成される。差分画像データ２６はメモリ６２に格納される。
【００３９】
次に、２値化部４６により２値化処理（Ｓ９）が出力される。２値化処理においては、メモリ６２から読出した差分画像データ２６について２値化処理を実行して、処理結果である２値画像データ２７が出力される。出力された２値画像データ２７はメモリ６２に格納される。
【００４０】
その後、埋込情報抽出部４７により埋込情報抽出処理（Ｓ１１）が実行される。埋込情報抽出処理においては、メモリ６２から読出した２値画像データ２７に基づき、当該画像データの画像に埋込まれていた情報２８が抽出されて出力される。埋込情報２８はメモリ６２に格納される、または出力部４８に相当の表示部７１を介して表示される、または通信Ｉ／Ｆ７４および各種通信回線７５を介して外部の装置に伝送される。当該外部装置は、たとえば該埋込情報２８により制御される。
【００４１】
図１の入力部４９は外部から情報を入力して、入力情報を他の各部に与える。入力部４９は、たとえばキーボード６８のユーザ操作により与えられる情報、または各種通信回線７５と通信Ｉ／Ｆ７４を介して外部から受信するデータを入力する。
【００４２】
図１の各部の動作は、ＭＰＵ６１に対応する制御部４０により集中的に管理・制御される。
【００４３】
図１と図２に示す各部の処理手順は、予めプログラムとしてメモリ６２、ＨＤＤ６３、ＦＤ６５およびＤＶＤ６７などに格納されている。ＭＰＵ６１が、これら記録媒体から各プログラムを読出し、読出したプログラムを実行することにより、画像処理手順が実現される。また、図３のコンピュータ６０は、通信回線７５を介して外部と通信可能であることから、これら記録媒体には、通信回線７５を介して外部からプログラムがダウンロードされるとしてもよい。
【００４４】
（収縮処理および膨張処理）
多値画像データ２１について収縮処理および膨張処理を行いドットを抽出する手順について説明する。
【００４５】
図４には６００ｄｐｉの解像度でドットを印字することにより出力された印刷文書２０を、６００ｄｐｉの解像度を有するスキャナ７０でスキャンすることにより出力された読取画像データ、すなわち多値画像データ２１の画像の一例が示される。ここでは、各画素について白は２５５の値を、かつ黒は０の値を有する２５６階調の多値画像（グレースケール画像：８bit画像）とする。
【００４６】
（収縮処理）
収縮処理では、最初に、図４の多値画像データ２１に対して、収縮のためのフィルタ２２を用いて収縮効果をもつフィルタ処理が行なわれる。これにより、多値画像データ２１の文書画像（‘used -own[2]…’の文字の画像）の背景のドット部分が消去されて、図４の画像は図５（Ａ）の収縮画像データ２３のようになる。ここでは、収縮効果をもつフィルタ処理として、図６のフィルタ２２が適用される。収縮処理では、フィルタ２２の黒とグレー（斜線部）の５個の画素の値のうち、２番目に大きい値を用いて、多値画像データ２１の画素（ｉ，ｊ）で示される処理対象の黒画素の値を置換える処理が行なわれる。このフィルタ処理によって、文字などの大きな領域をもつ成分は、たとえば文字のストロークの線幅が収縮され細ることになる。
【００４７】
図７と図８には、収縮処理の詳細が示される。収縮処理においてはまず、フィルタ条件データが入力される（Ｓ１５）。続いて収縮選択値条件データが入力される（Ｓ１７）。これらの条件データは収縮処理のプログラム内部で固定に設定されていてもよく、ユーザのキーボード６８の操作により外部から入力されるとしてもよい。
【００４８】
そして、多値画像データ２１の画像の各画素を指定するための一時変数ｊとｉにそれぞれ１が設定される（Ｓ１９、Ｓ２１）。多値画像データ２１は矩形の２次元画像と想定し、変数ｉは画像のＸ（水平）方向の画素をカウントするのに用いられて、同様に、変数ｊはＹ（垂直）方向の画素をカウントするのに用いられる。
【００４９】
続いて多値画像データ２１の画像の画素（ｉ，ｊ）の値の置換えがなされる（Ｓ２３）。この置換えの処理については後述する。
【００５０】
続いて変数ｉの値が所定の変数Ｍの値以上であるか否かが判定される。変数Ｍは多値画像データ２１の画像のＸ方向の画素数を示す。変数Ｍの値以上となっていなければ（Ｓ２５でＮＯ）、変数ｉの値が１インクリメントされて（Ｓ２９）、Ｓ２３の処理に移行し、以下同様に処理が行なわれる。
【００５１】
一方、変数ｉの値が変数Ｍの値以上である場合には（Ｓ２５でＹＥＳ）、変数ｊの値が所定の変数Ｎの値以上であるか否かが判定される（Ｓ２７）。変数Ｎは多値画像データ２１の画像のＹ方向の画素数を示す。変数Ｎ以上であれば（Ｓ２７でＹＥＳ）、一連の収縮処理は終了するが、変数Ｎ以上でなければ、変数ｊの値を１インクリメントして、Ｓ２１以降の処理が同様に繰返される。図７の収縮処理においては、変数ｉとｊの値を１ずつインクリメントしながら画素（ｉ，ｊ）の値の置換処理（Ｓ２３）がなされることにより、多値画像データ２１の画像のすべての画素（ｉ，ｊ）の値について置換処理（Ｓ２３）が実行されることになる。
【００５２】
次に、図８を参照して画素（ｉ，ｊ）の値の置換処理（Ｓ２３）について説明する。
まず、Ｓ１５で入力されたフィルタ条件に基づき、メモリ６２の複数のフィルタ２２のうちから１個のフィルタ２２が選択（読出）される（Ｓ３１）。ここでは、図６のフィルタ２２が選択されたと想定する。
【００５３】
そして、当該フィルタ２２の黒またはグレーの５個の画素のそれぞれに対応した一時変数Ａ１〜Ａ５のそれぞれについて、多値画像データ２１から画素（ｉ，ｊ）、画素（ｉ＋２，ｊ）、画素（ｉ−２，ｊ）、画素（ｉ，ｊ＋２）および画素（ｉ，ｊ−２）の値が読出（走査）されて、読出された値がそれぞれ代入される（Ｓ３５〜Ｓ４３）。この場合に、多値画像データ２１において該当する画素が存在しなければ、対応する変数には値０が代入される。このようにフィルタ２２を用いた値読出しがされる。
【００５４】
その後、変数Ａ１〜Ａ５の値のうちから、Ｓ１７で入力された収縮選択値条件（たとえば、２番目に大きい値を選択という条件）に基づき１個の変数の値を選択する（Ｓ４５）。そして、多値画像データ２１の画素（ｉ，ｊ）の値はＳ４５で選択された値を用いて更新される（Ｓ４７）。その後、元の処理に戻る。したがって、ドット部分の各ドットは周囲の画素値のうちから選択された２番目に大きい値に、すなわち背景の画素値に相当する値に変換されるので、ドットは背景から消えることになる。
【００５５】
このような収縮処理が多値画像データ２１の全ての画素（ｉ，ｊ）についてフィルタ２２を用いて走査（値読出）をしながら繰返される結果、図４の多値画像データ２１は文字のストロークが細くなって、かつ背景のドット部分が消去されている図５（Ａ）の収縮画像データ２３に変換される。
【００５６】
（膨張処理）
次に、収縮処理後の収縮画像データ２３（図５（Ａ）参照）に対して、選択された所定ドットパターンのフィルタ２４を用いて膨張効果をもつフィルタ処理を行い、文字などの細った成分を元の太さに戻す処理を行う。ここでは、膨張効果をもつフィルタ処理として、図６のフィルタ２４を用いて収縮画像データ２３の全ての画素（ｉ，ｊ）の値を走査（値読出）しながら当該画素（Ｘ，Ｙ）の値を置換える。図６のフィルタ２４は黒とグレーの５個の画素の値のうち、２番目に小さい値で、収縮画像データ２３の全ての画素（ｉ，ｊ）の値を置換える。そうすると図５（Ａ）の収縮画像データ２３は図５（Ｂ）の膨張画像データ２５に変換される。膨張画像データ２５では、文字などの細っていた箇所はおおよそ多値画像データ２１の元の太さに戻るが、収縮処理で消えてしまったドット部分は元には戻っていないことがわかる。
【００５７】
図９と図１０には、膨張処理の手順が示される。膨張処理は図９の膨張選択値条件入力のＳ１７ａおよび値置換のＳ２３ａならびに図１０のＳ３１ａおよびＳ４５ａの処理を除いては、図７と図８に示されたものと同様なので、詳細説明は略す。Ｓ４５ａでは、Ｓ３１ａで選択された膨張処理のためのフィルタを用いて、かつＳ１７ａの入力に従い選択された周囲の画素の値のうちから選択された２番目に小さい値で、収縮画像データ２３の全ての画素（ｉ、ｊ）の値を置換える処理が行なわれる。したがって、文書画像の文字のストロークの輪郭を構成する画素の周辺の（背景の）画素の値は、文書画像の画素に相当の値（黒に相当の画素の値）に変換される。この結果、ストロークの線幅や長さは膨張（太る）ことになる。
【００５８】
変数Ａ１〜Ａ５に対応の画素値を読出し代入する場合に、収縮画像データ２３において該当する画素が存在しなければ、２５５を出力する。このように膨張処理においてもフィルタ２４を用いた画素値の読出しがされる。
【００５９】
なお、ここでは、膨張処理のフィルタ２４として収縮処理と同様に図６のフィルタが選択されて用いられている。
【００６０】
この収縮と膨張のそれぞれのフィルタ処理は、ちょうど相反する処理を行っているため、収縮処理で文字などの一度細ったものは膨張処理で太らせるとおおよそ元に戻り、収縮処理の細らせる過程で消えてしまったドット部分は、膨張処理で太らせても元に戻らないという結果が得られる。
【００６１】
したがって、縮小処理で消えるドットであって、膨張処理でも復元しないドットは、微小の孤立ドットといえる。そして、このような微小のドットであって、他のドットから孤立したドットはプリント時のノイズである可能性も高いので、縮小・膨張の処理は背景のドット部分をノイズと想定すれば、多値画像データ２１の雑音（ノイズ）除去機能として動作するといえる。
【００６２】
また、それぞれのフィルタ処理とも図６の５画素×５画素（計２５個の画素）サイズの画素マトリックスのフィルタ２２、２４を適用して収縮・膨張の処理をしているが、処理のために実際に値が参照（読出）される画素は、そのうちの５個の画素でしかないため、非常に高速に処理することができる。
【００６３】
（差分画像作成）
差分画像作成処理について説明する。この処理では、元の多値画像データ２１（図４参照）とこれと同サイズの膨張処理後の膨張画像データ２５（図５（Ｂ）参照）との差分を示す差分画像データ２６（図１１参照）を作成する。ここで差分としては、図５（Ｂ）の各画素の値から図４の対応する画素の値を引き算して、引き算結果の値で図５（Ｂ）の対応画素の値を更新することにより、膨張画像データ２５を差分画像データ２６に変換している。
【００６４】
なお、引き算結果がマイナスになる画素の値は０で更新される。これは、ドット（黒画素）の部分では図５（Ｂ）の画素値から図４の画素値を引いたときに、引き算結果はプラスの数値でしか表れてこないからである（図５（Ｂ）では背景は白っぽく画素値は大きく、図４では背景は黒っぽいため画素値は小さい。）。
【００６５】
図１１の差分画像データ２６を見て分かるとおり、文書画像の背景において非常に精度良く、ドット部分だけが抽出できていることが分かる。
【００６６】
このように、差分画像データ２６は、高解像度の２種類の画像（多値画像データ２１と膨張画像データ２５）の差分を示しているため、解像度変換による低解像度化に伴った精度の低下を防止できて、埋込情報２８を示す背景のドット部分と文書画像とを分離する性能を高くすることができる。
【００６７】
また、２値化処理後の２値化データからでなく、２値化されていない多値画像データからドット成分を抽出できるので、２値化処理に際して閾値の選択ミスにより、ノイズ成分が抽出されるドット成分に混入するのを未然に防止できる。
【００６８】
（２値化処理）
２値化処理では、差分画像データ２６（図１１参照）を、埋込情報２８のドットを抽出するための抽出しやすい所定閾値、たとえば閾値１５で２値化すると、図１２のような２値画像データ２７が得られる。図１２を見て分かるとおり、非常に精度良く、背景のドット部分を抽出できていることがわかる。ここでは閾値を値１５としたが、黒画素のドットを抽出できる閾値であればよく、値はこれに限定されない。また、閾値はユーザのキーボード６８の操作による外部指示に従い任意に変更されるようにしてもよい。
【００６９】
この２値化処理では、各画素の値について閾値以下の場合には０に変換されて、閾値より大きい場合には１に変換される。
【００７０】
このように差分画像データ２６の段階で既に、背景のドット部分を効果的に抽出できているので、２値化処理のための閾値の設定は容易である、すなわち試行錯誤的に何回も閾値を変更しながら２値化処理を繰返す必要はなく、１個の閾値を用いた１回の２値化処理で済ませることが可能となる。したがって、高速に画像処理できる。
【００７１】
（埋込情報抽出）
埋込情報抽出（Ｓ１１）では、２値画像データ２７に基づき、ドット部分を所定の情報埋込パターンに従う抽出パターンを用いて、いわゆるパターンマッチング処理などにより、埋込情報２８を抽出する。この抽出手順は周知の手順に従うので詳細は略す。
【００７２】
このように埋込情報２８を抽出（検出）するときに、２値画像データ２７は、元の文書画像の部分と埋込んだドット部分とが明確に分離されているので、分離が不明確による誤差やノイズはなく効率的にかつ正確に埋込情報２８を抽出できる。
【００７３】
ここでは２値化画像データ２７に対してフィルタ処理がされるので、フィルタ処理のために使用するメモリ容量を少なくすることもできる。
【００７４】
（他の処理例）
収縮処理と膨張処理の他の例を説明する。
【００７５】
上述した例とは異なった解像度（印刷分解能）に従いプリントしたり、異なった解像度（読取精度）でスキャンした場合には、異なった種類のフィルタ２２または２４を用いた方が、値置換対象の画素の周囲画素の位置または個数を任意に変更できて、精度良くドットを検出することができる。
【００７６】
例えば、２００ｄｐｉのドットをプリントして得られる印刷文書２０を、２００ｄｐｉに従いスキャナ７０でスキャンした場合を想定する。２００ｄｐｉの印刷文書２０は、６００ｄｐｉの印刷文書２０に比較して同じポイント数でもスキャン画像上に占める文字のサイズが小さくなる。そのため、適用するフィルタ２２と２４は、図１３のように図６に較べてサイズの小さいものとすることが望ましい。
【００７７】
この場合には、収縮処理として、図１３のフィルタの黒とグレー（斜線部）の５個の画素の値のうち、２番目に大きい画素の値で、多値画像データ２１の黒画素（画素（ｉ，ｊ））の値を置換える。そして、膨張処理として、図１３のフィルタの黒とグレーの５個の画素の値のうち、２番目に小さい値で、収縮画像データ２３の黒画素（画素（ｉ，ｊ））の値を置換える。こうすることにより、２００ｄｐｉの場合でも、６００ｄｐｉの上述の例と同様に良好な結果を得ることができる。ユーザは適用するフィルタの選択をするが、選択の基準は印刷文書２０を印刷したプリンタの解像度と画像入力部４１のスキャナ７０の解像度に基づくものである。
【００７８】
これは、解像度が低い分、同じポイント数の文字であっても有する画素数が少ないので、収縮処理では、上述の６００ｄｐｉの例よりも小さなドットしか消えないようにする必要があるからである。小さなドットしか消えないようにするためには、処理に適用するフィルタに従い値が参照される（読出される）画素（フィルタのグレー（斜線）の画素）を値置換え対象の黒画素（画素（ｉ，ｊ））周囲の近くに配置する必要がある。そのため、図１３のようなフィルタを用いている。
【００７９】
６００ｄｐｉを超える解像度でプリントした場合またはスキャンした場合のフィルタとしては、図１３のようにサイズの大きなフィルタを適用しても良い。
【００８０】
あるいは、図６と同サイズのフィルタを使うものの、収縮処理として、黒とグレーの５個の画素の値のうち、１番目に大きい数値で、黒画素（画素（ｉ，ｊ））の値を置換え、膨張処理として、図１３の黒とグレーの５個の画素の値のうち、１番目に小さい値で、値置換対象の黒画素（画素（ｉ，ｊ））の値を置換えるように、何番目の値を選択するかの条件を変更しても良い。このように１番目の数値で置換えると、上述の６００ｄｐｉのように２番目の数値で置換える場合に比較し、収縮・膨張によりドットや小さい文字などを検出しやすくなり、結果として、文字の背景に埋込まれたドットを検出しやすくなる。
【００８１】
この図６、１３、１４などのフィルタを用いると、５個の画素の値の何番目かで値置換対象の黒画素（画素（ｉ，ｊ））の値が置換えられる。たとえば、中央の３番目の値で置換えると、ドットを含めて画像の状態はほとんど変化せず、２番目、１番目の値にしていくにつれて、ドットをより検出しやすいように収縮・膨張が作用する。
【００８２】
また、上述のような５つの画素値では、適切な処理レベルを選択しづらかった場合には、図１４のフィルタの代わりとして、図１５のフィルタを用いても良い。図１５の場合、９個の画素値のうち、選択対象は４〜１番目の画素値となるから、適切な選択値条件を見つけやすい。
【００８３】
なお、フィルタ処理として値が参照（読出）される画素（グレー（斜線）の画素）の位置は、値置換対象の黒画素（画素（ｉ，ｊ））からおおよそ同じ距離にあり、画素（ｉ，ｊ）を中心に対称に配置されている方が、処理結果に参照画素の配置の仕方による依存性をなくすことができ、より望ましい結果が得られる。
【００８４】
（装置構成例）
図１６には、画像処理装置５０が搭載されるパーソナルコンピュータ（ＰＣ）の概略構成が示される。ＰＣ８０には、表示部７１に対応のモニタ８１、マウス８２、キーボード６８、ＨＤＤ６３、ＦＤ６５およびＤＶＤ６７に対応の外部記憶装置８４およびスキャナ７０を接続する。ＰＣ８０は、内部のメモリ６２に上述の画像処理手順を示すプログラムである画像処理ソフトウェアが格納される。当該ソフトウェアは、ＰＣ８０内部の図示のないＣＰＵ（Central Processing Unit）またはＭＰＵ６１により読出されて実行される。
【００８５】
図１７には、画像処理装置５０が搭載されるＭＦＰの概略構成が示される。ＭＦＰ本体９０には、スキャナ７０を含むスキャナ部９１、キーボード６８を含む操作パネル部９２およびプリンタ７３を含むプリンタ部９３が接続される。ＭＦＰ本体９０は内部に、上述の画像処理手順をハードウェア（Ｈ／Ｗ）にて実現するための画像処理Ｈ／Ｗ９４を有する。画像処理Ｈ／Ｗ９４は、たとえばＡＳＩＣ（Application Specific Integrated Circuit）を含んで構成される。
【００８６】
図１８には、図１６のＰＣ８０についてデータの入出力関係が示される。ＰＣ８０の内部には、ＭＰＵ６１と外部（キーボード６８、マウス８２、モニタ８１、スキャナ７０および外部記憶装置８４を含む）との入出力を制御する入出力インターフェース８５を有する。キーボード６８およびマウス８２は、ユーザにより操作されてユーザからの指示を入力する。モニタ８１は与えられる画像データなど各種情報を表示する。スキャナ７０は指示により印刷文書２０などをスキャンして多値画像データ２１に相当のスキャン画像データを出力する。ＭＰＵ６１の内部には、ＯＳ（Operating System）８７およびＯＳにより制御される処理演算部８６を有する。入出力インターフェース８５を介して外部とデータを入出力しながら、メモリ６２から読出されるプログラムが、処理演算部８６を用いて実行されるが、このプログラムの実行状態はＯＳ８７により制御・監視される。
【００８７】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【００８８】
【図１】実施の形態に係る画像処理装置の機能構成図である。
【図２】実施の形態に係る画像処理手順を示す図である。
【図３】実施の形態に係る画像処理装置が搭載されるコンピュータの構成図である。
【図４】実施の形態に係る多値画像データの一例を示す図である。
【図５】（Ａ）と（Ｂ）は実施の形態に係る収縮画像データと膨張画像データの一例を示す図である。
【図６】実施の形態に係る処理用のフィルタの一例を示す図である。
【図７】実施の形態に係る収縮処理のフローチャートである。
【図８】実施の形態に係る収縮処理のフローチャートである。
【図９】実施の形態に係る膨張処理のフローチャートである。
【図１０】実施の形態に係る膨張処理のフローチャートである。
【図１１】実施の形態に係る差分画像データの一例を示す図である。
【図１２】実施の形態に係る２値画像データの一例を示す図である。
【図１３】実施の形態に係る処理用のフィルタの他の例を示す図である。
【図１４】実施の形態に係る処理用のフィルタのさらなる他の例を示す図である。
【図１５】実施の形態に係る処理用のフィルタのさらなる他の例を示す図である。
【図１６】実施形態に係る画像処理装置が搭載されるパーソナルコンピュータの構成図である。
【図１７】実施形態に係る画像処理装置が搭載されるＭＦＰの構成図である。
【図１８】実施形態に係る画像処理装置が搭載されるパーソナルコンピュータの構成を入出力データとともに示す図である。
【符号の説明】
【００８９】
２０  印刷文書、２１  多値画像データ、２３  収縮画像データ、２５  膨張画像データ、２６  差分画像データ、２７  ２値化画像データ、２８  埋込情報、２２，２４  フィルタ、６２  メモリ。
【図１】
2006324896.tif 000003
【図２】
2006324896.tif 000004
【図３】
2006324896.tif 000005
【図６】
2006324896.tif 000006
【図７】
2006324896.tif 000007
【図８】
2006324896.tif 000008
【図９】
2006324896.tif 000009
【図１０】
2006324896.tif 000010
【図１３】
2006324896.tif 000011
【図１４】
2006324896.tif 000012
【図１５】
2006324896.tif 000013
【図１６】
2006324896.tif 000014
【図１７】
2006324896.tif 000015
【図１８】
2006324896.tif 000016
【図４】
2006324896.tif 000017
【図５】
2006324896.tif 000018
【図１１】
2006324896.tif 000019
【図１２】
2006324896.tif 000020