説明

画像処理方法、装置、プログラムおよびコンピュータ読取り可能な記録媒体

【課題】 画像とその背景に埋込まれたドットを精度良く分離した検出をする。
【解決手段】 画像処理装置50では、収縮処理部43は文書画像とその背景においてドットとを含む多値画像データ21の各画素の値を、当該画素および周囲の画素からなる複数画素の値の中央値よりも背景画素側の値で置換して、収縮画像データ23を出力する。膨張処理部44は、収縮画像データ23の各画素の値を、当該画素および周囲の画素からなる複数画素の値の中央値よりも文書画像の画素側の値で置換して、膨張画像データ25を出力する。収縮画像データ23では背景ドットは背景と同じ値となり消える。膨張処理したとしても消えてしまったドットは戻らないから、文書画像と背景のドットを明らかに分離した検出が可能となる。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は画像処理方法、装置、プログラムおよびコンピュータ読取り可能な記録媒体に関し、特に、文書画像と背景のドットとを分離機能を有する画像処理方法、装置、プログラムおよびコンピュータ読取り可能な記録媒体に関する。
【背景技術】
【0002】
MFP(Multi Function Peripherals)/LBP(Laser Beam Printer)に関連して、文書画像にドットパターンとしてデータを埋め込む「文書用電子透かし」技術が提案されている。つまり、データをドットパターンとして画像に埋込んだ後に、当該画像を紙面にプリントアウトして、その後、紙面をスキャナでスキャンし、画像データを読取り、読取った画像データを2値化処理して2値化後の画像から埋込まれているデータを検出する技術である。この際には、埋込んだデータ(ドットパターン部分)と、文字やグラフや画像などの埋込まれたデータとは無関係な本来の文書の情報とを、適切に分離して速やかに埋込情報を検出する技術の提供が望まれていた。
【0003】
また、MFPの実機内に当該機能をハードウェアとして搭載するためには、消費されるメモリ容量を少なくするために、精度良く2値化する必要があった。
【0004】
このような要求を満たすように、たとえば、特許文献1と2の技術が提案されている。特許文献1では、高解像度と低解像度の2種類の画像をそれぞれ2値化し、その2値化画像同士の差分を示す差分画像に基づきノイズ(微小なドットなど)があるかどうか判断している。また、特許文献2では、電子透かしとしての情報が検出される際には、2値化のための閾値をさまざまに変更して検出処理を行うことで、検出精度を向上させている。
【特許文献1】特開2001−111816号公報
【特許文献2】特開2003−338924号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
特許文献1によれば、低解像度の画像を用いるので、処理対象の画像には解像度が低いことに起因したノイズが多く存在する。そのため、ノイズの有無の判断は可能であっても、検出したドットに基づき埋込まれた情報を抽出するような電子透かし処理では、抽出される情報の精度を高めることは困難である。また、電子透かし検出のために、予め高解像度と低解像度の2種類の画像をそれぞれ2値化処理する必要があるので、2値化処理に係る負荷は大きく、また必要とされるメモリ容量も大きくなる。
【0006】
また、特許文献2は、2値化処理の閾値を変更しながら変更後の閾値で画像の2値化処理を実行する手順が繰返された後に、電子透かしが検出される。したがって、2値化処理を含む埋込まれたデータの検出処理が繰返されるので処理速度を向上させるのは困難である。このように、いずれの特許文献の技術でも、上述の要望を満たすことはできなかった。
【0007】
それゆえに、この発明の目的は、画像とその背景に埋込まれたドットを精度良く分離した検出動作をする画像処理装置、方法、プログラムおよびコンピュータ読取り可能な記録媒体を提供することである。
【0008】
この発明の他の目的は、画像の背景に埋込まれたドットを速く検出する画像処理装置、方法、プログラムおよびコンピュータ読取り可能な記録媒体を提供することである。
【課題を解決するための手段】
【0009】
この発明のある局面に従う画像処理装置は、文書画像とその背景においてドットとを含む多値画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第1所定順番である値で置換して、第1置換画像データを出力する第1置換手段と、第1置換手段により出力された前記第1置換画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第2所定順番である値で置換して、第2置換画像データを出力する第2置換手段と、を備え、第1所定順番である値は、複数画素の値の中央の値よりも背景の画素側の値を示し、第2所定順番である値は、複数画素の値の中央の値よりも文書画像の画素側の値を示す。
【0010】
この発明によれば、第1置換手段は、文書画像の背景のドットを、その周囲の画素の値である背景の画素の値よりの値で置換するので、当該ドットは背景から消される。また、文書画像の背景との境目の輪郭の画素(ドット)も、その周囲の背景の画素の値よりの値と置換するので、その分、文書画像は文字のストロークなどが収縮して細る。このような第1置換画像データは、第2置換手段により第1置換手段とは相反する値の置換がされて第2置換画像データに変換されるので、第2置換データでは文書画像の背景との境目の輪郭の画素(ドット)は、その周囲の文書画像の画素の値よりの値と置換されて元の状態に戻るよう膨張するが、第1置換手段で消えてしまった背景のドットは元に戻らず消えたままとなる。
【0011】
したがって、第2置換データは、背景のドットが削除されている文書画像のみのデータとなり、文書画像と背景のドットとを効果的に分離した文書画像の検出ができる。また、背景ドットが雑音であるとすれば文書画像はそのままで雑音のみ削除することができる。
【0012】
また、置換対象の画素の値の置換は、その周囲に限定された画素の値を用いているので、参照する画素値は限定されたものとなり、処理を速くできる。
【0013】
好ましくは、第1置換手段および第2置換手段の周囲の画素の位置は任意に変更される。また、周囲の画素の個数は任意に変更される。
【0014】
したがって、処理の対象とするドットのサイズなどに応じて、検出精度を良くするように、第1置換手段および第2置換手段の周囲の画素の個数と位置とを変更できる。
【0015】
好ましくは、第1置換手段は、多値画像データの各画素の値を、第1ドットパターンを用いて読出した当該画素および周囲の画素の値のうち大きさが第1所定順番である値で置換し、第2置換手段は、第1置換画像データの各画素の値を、第2ドットパターンを用いて読出した当該画素および周囲の画素の値のうち大きさが第2所定順番である値で置換する。
【0016】
したがって、第1および第2ドットパターンを準備し、これらパターンを用いて値置換のために値が読出される画素を一意に特定できる。
【0017】
好ましくは、第1ドットパターンおよび前記第2ドットパターンは、予め準備された複数種類のドットパターンから選択される。
【0018】
したがって、ドットのサイズなど処理対象の画像に関する条件に応じて、検出精度を良くするように、適用するドットパターンを選択的に変更できる。
【0019】
好ましくは、多値画像データと第2置換手段から出力された第2置換画像データとの差分を示す差分画像データを出力する差分作成手段をさらに備える。
【0020】
したがって、差分画像データの画像において、背景のドットを文書画像から分離して示すことができる。
【0021】
好ましくは、差分作成手段から出力された差分画像データを所定閾値で2値化処理して、2値化画像データを出力する2値化手段をさらに備える。
【0022】
したがって、2値化処理対象の差分画像データでは、背景のドットが文書画像から分離して示されているから、閾値の設定は容易であり、文書画像に影響されることなく背景のドットを精度良く2値化できる。
【0023】
好ましくは、背景におけるドットは、所定の埋込パターンに従い配置された電子透かし情報を示す。
【0024】
好ましくは、第1ドットパターンは、画素マトリックスであり、第1置換手段は、多値画像データの各画素の値を、画素マトリックスの一部画素と多値画像データの対応画素とのマッチングにより読出した当該画素および周囲の画素の値のうち大きさが第1所定順番である値で置換する。
【0025】
好ましくは、第2ドットパターンは、画素マトリックスであり、第2置換手段は第1置換画像データの各画素の値を、画素マトリックスの一部画素と第1置換画像データの対応画素とのマッチングにより読出した当該画素および周囲の画素の値のうち大きさが第2所定順番である値で置換する。
【0026】
したがって、マッチングに用いれられるのは、画素マトリックスの一部画素であるから、画素マトリックスの大きさにかかわらずマッチングに係る時間を短くできる。
【0027】
好ましくは、画素マトリックスにおいて一部画素は、値が置換される画素と、当該画素を中心に対称関係に従い配置される画素からなる。
【0028】
したがって、値置換結果の第1および第2画像置換データに関して、周囲画素の配置の仕方に依存する要因を排除できて、より正確な置換が可能となる。
【0029】
好ましくは、多値画像データは、文書画像の文書が印刷された紙面をスキャンして取得されて、周囲の画素の、個数と位置は、印刷の解像度またはスキャンの解像度に従い決定される。
【発明の効果】
【0030】
発明によれば、第1および第2置換手段の置換結果である第2置換データは、背景のドットが削除されている文書画像のみのデータとなり、文書画像と背景のドットとを効果的に分離して検出できる。また、背景ドットが雑音であるとすれば文書画像はそのままで雑音のみ削除することができる。
【0031】
また、置換対象の画素の値の置換は、その周囲に限定された画素の値を用いているので、参照する画素値は限定されたものとなり、処理を速くできる。
【発明を実施するための最良の形態】
【0032】
以下、この発明の実施の形態について図面を参照し詳細に説明する。実施の形態では、収縮と膨張効果を伴う画像処理を印刷された文書の画像に対して行うことで、文字、図形、記号などの文書画像による本来の情報は抽出することなく、当該文書画像の背景においてと文書画像と合成された微小のドットの部分だけを抽出する。当該ドット部分は、所定の埋込パターンに従い複数ドットが配置されてプリントされた電子透かし情報を示すものである。
【0033】
実施の形態に係る画像処理装置50の機能構成の一例が図1に、概略の処理手順が図2にまた、実施の形態に係る画像処理装置50が搭載されるコンピュータ60の構成が図4に示される。
【0034】
図3を参照して、画像処理装置50の機能が搭載されるコンピュータ60は、コンピュータ自体を集中的に制御するためのMPU(Micro Processing Unit)61、各種情報またはプログラム等を格納するためのメモリ62、HDD(Hard Disk Drive)63、FD(Flexible Disk)65が着脱自在に装着されて装着されたFD65をアクセスするためのFDD(FD Driver)64、およびDVD67が着脱自在に装着されて装着されたDVD67をアクセスするためのDVDドライバ66を含む。さらに、コンピュータ60は、各種情報を外部から入力するためのキーボード68、およびI/F(インターフェイスの略)69を介して接続されるスキャナ70を備える。また、各種情報を出力するための表示部71、およびプリンタドライバ72により制御されるプリンタ73を接続する。さらに、コンピュータ60は、外部の各種通信回線(インターネットを含む)75とコンピュータ60との間で情報の送受信をするための通信I/F74を備える。
【0035】
図1の各部の動作について図2を参照して簡単に説明する、まず、画像入力部41は印刷文書(紙)20を入力処理する(ステップS(以下、単にSと略す)1)。この入力処理は、たとえばスキャナ70などの入力部を用いて印刷文書20の紙面をスキャンすることにより、文書を読取り、読取ったデータを画像入力部41により多値画像データ21に変換して出力する。出力された多値画像データ21はメモリ62などに格納された後、収縮処理部43により収縮処理(S3)が実行される。
【0036】
なお、印刷文書20は、電子透かし情報が埋込まれている。つまり、印刷文書20には、文字部分などの文書画像による本来の情報の他に、当該文書画像の背景などにおいてと文書画像と合成されたドット部分がプリントされている。当該ドット部分は、所定のドットパターンに従いプリントされた電子透かし情報を示すものである。このように、電子透かし情報のドットパターンは一見すると何の情報であるかを確認することはできない。
【0037】
収縮処理S3においては、メモリ62に予め格納された複数種類のフィルタ22のうちから選択的に読出されたフィルタ22と、メモリ62から読出した多値画像データ21とを用いて収縮処理が実行されて、実行結果である収縮画像データ23が出力される。収縮画像データ23はメモリ62に格納される。次に、メモリ62から読出した収縮画像データ23とメモリ62に予め格納された複数種類のフィルタ24のうちから選択的に読出した1つのフィルタ24を用いて膨張処理部44により膨張処理(S5)が実行されて、膨張画像データ25が出力される。膨張画像データ25はメモリ62に格納される。この収縮処理(S3)と膨張処理(S5)の詳細は後述する。
【0038】
次に、差分画像作成部45により差分画像作成処理(S7)が実行される。差分画像作成処理においては、メモリ62から読出した膨張画像データ25と多値画像データ21とを用いて、両画像データの差分を示す画像データである差分画像データ26が作成される。差分画像データ26はメモリ62に格納される。
【0039】
次に、2値化部46により2値化処理(S9)が出力される。2値化処理においては、メモリ62から読出した差分画像データ26について2値化処理を実行して、処理結果である2値画像データ27が出力される。出力された2値画像データ27はメモリ62に格納される。
【0040】
その後、埋込情報抽出部47により埋込情報抽出処理(S11)が実行される。埋込情報抽出処理においては、メモリ62から読出した2値画像データ27に基づき、当該画像データの画像に埋込まれていた情報28が抽出されて出力される。埋込情報28はメモリ62に格納される、または出力部48に相当の表示部71を介して表示される、または通信I/F74および各種通信回線75を介して外部の装置に伝送される。当該外部装置は、たとえば該埋込情報28により制御される。
【0041】
図1の入力部49は外部から情報を入力して、入力情報を他の各部に与える。入力部49は、たとえばキーボード68のユーザ操作により与えられる情報、または各種通信回線75と通信I/F74を介して外部から受信するデータを入力する。
【0042】
図1の各部の動作は、MPU61に対応する制御部40により集中的に管理・制御される。
【0043】
図1と図2に示す各部の処理手順は、予めプログラムとしてメモリ62、HDD63、FD65およびDVD67などに格納されている。MPU61が、これら記録媒体から各プログラムを読出し、読出したプログラムを実行することにより、画像処理手順が実現される。また、図3のコンピュータ60は、通信回線75を介して外部と通信可能であることから、これら記録媒体には、通信回線75を介して外部からプログラムがダウンロードされるとしてもよい。
【0044】
(収縮処理および膨張処理)
多値画像データ21について収縮処理および膨張処理を行いドットを抽出する手順について説明する。
【0045】
図4には600dpiの解像度でドットを印字することにより出力された印刷文書20を、600dpiの解像度を有するスキャナ70でスキャンすることにより出力された読取画像データ、すなわち多値画像データ21の画像の一例が示される。ここでは、各画素について白は255の値を、かつ黒は0の値を有する256階調の多値画像(グレースケール画像:8bit画像)とする。
【0046】
(収縮処理)
収縮処理では、最初に、図4の多値画像データ21に対して、収縮のためのフィルタ22を用いて収縮効果をもつフィルタ処理が行なわれる。これにより、多値画像データ21の文書画像(‘used -own[2]…’の文字の画像)の背景のドット部分が消去されて、図4の画像は図5(A)の収縮画像データ23のようになる。ここでは、収縮効果をもつフィルタ処理として、図6のフィルタ22が適用される。収縮処理では、フィルタ22の黒とグレー(斜線部)の5個の画素の値のうち、2番目に大きい値を用いて、多値画像データ21の画素(i,j)で示される処理対象の黒画素の値を置換える処理が行なわれる。このフィルタ処理によって、文字などの大きな領域をもつ成分は、たとえば文字のストロークの線幅が収縮され細ることになる。
【0047】
図7と図8には、収縮処理の詳細が示される。収縮処理においてはまず、フィルタ条件データが入力される(S15)。続いて収縮選択値条件データが入力される(S17)。これらの条件データは収縮処理のプログラム内部で固定に設定されていてもよく、ユーザのキーボード68の操作により外部から入力されるとしてもよい。
【0048】
そして、多値画像データ21の画像の各画素を指定するための一時変数jとiにそれぞれ1が設定される(S19、S21)。多値画像データ21は矩形の2次元画像と想定し、変数iは画像のX(水平)方向の画素をカウントするのに用いられて、同様に、変数jはY(垂直)方向の画素をカウントするのに用いられる。
【0049】
続いて多値画像データ21の画像の画素(i,j)の値の置換えがなされる(S23)。この置換えの処理については後述する。
【0050】
続いて変数iの値が所定の変数Mの値以上であるか否かが判定される。変数Mは多値画像データ21の画像のX方向の画素数を示す。変数Mの値以上となっていなければ(S25でNO)、変数iの値が1インクリメントされて(S29)、S23の処理に移行し、以下同様に処理が行なわれる。
【0051】
一方、変数iの値が変数Mの値以上である場合には(S25でYES)、変数jの値が所定の変数Nの値以上であるか否かが判定される(S27)。変数Nは多値画像データ21の画像のY方向の画素数を示す。変数N以上であれば(S27でYES)、一連の収縮処理は終了するが、変数N以上でなければ、変数jの値を1インクリメントして、S21以降の処理が同様に繰返される。図7の収縮処理においては、変数iとjの値を1ずつインクリメントしながら画素(i,j)の値の置換処理(S23)がなされることにより、多値画像データ21の画像のすべての画素(i,j)の値について置換処理(S23)が実行されることになる。
【0052】
次に、図8を参照して画素(i,j)の値の置換処理(S23)について説明する。
まず、S15で入力されたフィルタ条件に基づき、メモリ62の複数のフィルタ22のうちから1個のフィルタ22が選択(読出)される(S31)。ここでは、図6のフィルタ22が選択されたと想定する。
【0053】
そして、当該フィルタ22の黒またはグレーの5個の画素のそれぞれに対応した一時変数A1〜A5のそれぞれについて、多値画像データ21から画素(i,j)、画素(i+2,j)、画素(i−2,j)、画素(i,j+2)および画素(i,j−2)の値が読出(走査)されて、読出された値がそれぞれ代入される(S35〜S43)。この場合に、多値画像データ21において該当する画素が存在しなければ、対応する変数には値0が代入される。このようにフィルタ22を用いた値読出しがされる。
【0054】
その後、変数A1〜A5の値のうちから、S17で入力された収縮選択値条件(たとえば、2番目に大きい値を選択という条件)に基づき1個の変数の値を選択する(S45)。そして、多値画像データ21の画素(i,j)の値はS45で選択された値を用いて更新される(S47)。その後、元の処理に戻る。したがって、ドット部分の各ドットは周囲の画素値のうちから選択された2番目に大きい値に、すなわち背景の画素値に相当する値に変換されるので、ドットは背景から消えることになる。
【0055】
このような収縮処理が多値画像データ21の全ての画素(i,j)についてフィルタ22を用いて走査(値読出)をしながら繰返される結果、図4の多値画像データ21は文字のストロークが細くなって、かつ背景のドット部分が消去されている図5(A)の収縮画像データ23に変換される。
【0056】
(膨張処理)
次に、収縮処理後の収縮画像データ23(図5(A)参照)に対して、選択された所定ドットパターンのフィルタ24を用いて膨張効果をもつフィルタ処理を行い、文字などの細った成分を元の太さに戻す処理を行う。ここでは、膨張効果をもつフィルタ処理として、図6のフィルタ24を用いて収縮画像データ23の全ての画素(i,j)の値を走査(値読出)しながら当該画素(X,Y)の値を置換える。図6のフィルタ24は黒とグレーの5個の画素の値のうち、2番目に小さい値で、収縮画像データ23の全ての画素(i,j)の値を置換える。そうすると図5(A)の収縮画像データ23は図5(B)の膨張画像データ25に変換される。膨張画像データ25では、文字などの細っていた箇所はおおよそ多値画像データ21の元の太さに戻るが、収縮処理で消えてしまったドット部分は元には戻っていないことがわかる。
【0057】
図9と図10には、膨張処理の手順が示される。膨張処理は図9の膨張選択値条件入力のS17aおよび値置換のS23aならびに図10のS31aおよびS45aの処理を除いては、図7と図8に示されたものと同様なので、詳細説明は略す。S45aでは、S31aで選択された膨張処理のためのフィルタを用いて、かつS17aの入力に従い選択された周囲の画素の値のうちから選択された2番目に小さい値で、収縮画像データ23の全ての画素(i、j)の値を置換える処理が行なわれる。したがって、文書画像の文字のストロークの輪郭を構成する画素の周辺の(背景の)画素の値は、文書画像の画素に相当の値(黒に相当の画素の値)に変換される。この結果、ストロークの線幅や長さは膨張(太る)ことになる。
【0058】
変数A1〜A5に対応の画素値を読出し代入する場合に、収縮画像データ23において該当する画素が存在しなければ、255を出力する。このように膨張処理においてもフィルタ24を用いた画素値の読出しがされる。
【0059】
なお、ここでは、膨張処理のフィルタ24として収縮処理と同様に図6のフィルタが選択されて用いられている。
【0060】
この収縮と膨張のそれぞれのフィルタ処理は、ちょうど相反する処理を行っているため、収縮処理で文字などの一度細ったものは膨張処理で太らせるとおおよそ元に戻り、収縮処理の細らせる過程で消えてしまったドット部分は、膨張処理で太らせても元に戻らないという結果が得られる。
【0061】
したがって、縮小処理で消えるドットであって、膨張処理でも復元しないドットは、微小の孤立ドットといえる。そして、このような微小のドットであって、他のドットから孤立したドットはプリント時のノイズである可能性も高いので、縮小・膨張の処理は背景のドット部分をノイズと想定すれば、多値画像データ21の雑音(ノイズ)除去機能として動作するといえる。
【0062】
また、それぞれのフィルタ処理とも図6の5画素×5画素(計25個の画素)サイズの画素マトリックスのフィルタ22、24を適用して収縮・膨張の処理をしているが、処理のために実際に値が参照(読出)される画素は、そのうちの5個の画素でしかないため、非常に高速に処理することができる。
【0063】
(差分画像作成)
差分画像作成処理について説明する。この処理では、元の多値画像データ21(図4参照)とこれと同サイズの膨張処理後の膨張画像データ25(図5(B)参照)との差分を示す差分画像データ26(図11参照)を作成する。ここで差分としては、図5(B)の各画素の値から図4の対応する画素の値を引き算して、引き算結果の値で図5(B)の対応画素の値を更新することにより、膨張画像データ25を差分画像データ26に変換している。
【0064】
なお、引き算結果がマイナスになる画素の値は0で更新される。これは、ドット(黒画素)の部分では図5(B)の画素値から図4の画素値を引いたときに、引き算結果はプラスの数値でしか表れてこないからである(図5(B)では背景は白っぽく画素値は大きく、図4では背景は黒っぽいため画素値は小さい。)。
【0065】
図11の差分画像データ26を見て分かるとおり、文書画像の背景において非常に精度良く、ドット部分だけが抽出できていることが分かる。
【0066】
このように、差分画像データ26は、高解像度の2種類の画像(多値画像データ21と膨張画像データ25)の差分を示しているため、解像度変換による低解像度化に伴った精度の低下を防止できて、埋込情報28を示す背景のドット部分と文書画像とを分離する性能を高くすることができる。
【0067】
また、2値化処理後の2値化データからでなく、2値化されていない多値画像データからドット成分を抽出できるので、2値化処理に際して閾値の選択ミスにより、ノイズ成分が抽出されるドット成分に混入するのを未然に防止できる。
【0068】
(2値化処理)
2値化処理では、差分画像データ26(図11参照)を、埋込情報28のドットを抽出するための抽出しやすい所定閾値、たとえば閾値15で2値化すると、図12のような2値画像データ27が得られる。図12を見て分かるとおり、非常に精度良く、背景のドット部分を抽出できていることがわかる。ここでは閾値を値15としたが、黒画素のドットを抽出できる閾値であればよく、値はこれに限定されない。また、閾値はユーザのキーボード68の操作による外部指示に従い任意に変更されるようにしてもよい。
【0069】
この2値化処理では、各画素の値について閾値以下の場合には0に変換されて、閾値より大きい場合には1に変換される。
【0070】
このように差分画像データ26の段階で既に、背景のドット部分を効果的に抽出できているので、2値化処理のための閾値の設定は容易である、すなわち試行錯誤的に何回も閾値を変更しながら2値化処理を繰返す必要はなく、1個の閾値を用いた1回の2値化処理で済ませることが可能となる。したがって、高速に画像処理できる。
【0071】
(埋込情報抽出)
埋込情報抽出(S11)では、2値画像データ27に基づき、ドット部分を所定の情報埋込パターンに従う抽出パターンを用いて、いわゆるパターンマッチング処理などにより、埋込情報28を抽出する。この抽出手順は周知の手順に従うので詳細は略す。
【0072】
このように埋込情報28を抽出(検出)するときに、2値画像データ27は、元の文書画像の部分と埋込んだドット部分とが明確に分離されているので、分離が不明確による誤差やノイズはなく効率的にかつ正確に埋込情報28を抽出できる。
【0073】
ここでは2値化画像データ27に対してフィルタ処理がされるので、フィルタ処理のために使用するメモリ容量を少なくすることもできる。
【0074】
(他の処理例)
収縮処理と膨張処理の他の例を説明する。
【0075】
上述した例とは異なった解像度(印刷分解能)に従いプリントしたり、異なった解像度(読取精度)でスキャンした場合には、異なった種類のフィルタ22または24を用いた方が、値置換対象の画素の周囲画素の位置または個数を任意に変更できて、精度良くドットを検出することができる。
【0076】
例えば、200dpiのドットをプリントして得られる印刷文書20を、200dpiに従いスキャナ70でスキャンした場合を想定する。200dpiの印刷文書20は、600dpiの印刷文書20に比較して同じポイント数でもスキャン画像上に占める文字のサイズが小さくなる。そのため、適用するフィルタ22と24は、図13のように図6に較べてサイズの小さいものとすることが望ましい。
【0077】
この場合には、収縮処理として、図13のフィルタの黒とグレー(斜線部)の5個の画素の値のうち、2番目に大きい画素の値で、多値画像データ21の黒画素(画素(i,j))の値を置換える。そして、膨張処理として、図13のフィルタの黒とグレーの5個の画素の値のうち、2番目に小さい値で、収縮画像データ23の黒画素(画素(i,j))の値を置換える。こうすることにより、200dpiの場合でも、600dpiの上述の例と同様に良好な結果を得ることができる。ユーザは適用するフィルタの選択をするが、選択の基準は印刷文書20を印刷したプリンタの解像度と画像入力部41のスキャナ70の解像度に基づくものである。
【0078】
これは、解像度が低い分、同じポイント数の文字であっても有する画素数が少ないので、収縮処理では、上述の600dpiの例よりも小さなドットしか消えないようにする必要があるからである。小さなドットしか消えないようにするためには、処理に適用するフィルタに従い値が参照される(読出される)画素(フィルタのグレー(斜線)の画素)を値置換え対象の黒画素(画素(i,j))周囲の近くに配置する必要がある。そのため、図13のようなフィルタを用いている。
【0079】
600dpiを超える解像度でプリントした場合またはスキャンした場合のフィルタとしては、図13のようにサイズの大きなフィルタを適用しても良い。
【0080】
あるいは、図6と同サイズのフィルタを使うものの、収縮処理として、黒とグレーの5個の画素の値のうち、1番目に大きい数値で、黒画素(画素(i,j))の値を置換え、膨張処理として、図13の黒とグレーの5個の画素の値のうち、1番目に小さい値で、値置換対象の黒画素(画素(i,j))の値を置換えるように、何番目の値を選択するかの条件を変更しても良い。このように1番目の数値で置換えると、上述の600dpiのように2番目の数値で置換える場合に比較し、収縮・膨張によりドットや小さい文字などを検出しやすくなり、結果として、文字の背景に埋込まれたドットを検出しやすくなる。
【0081】
この図6、13、14などのフィルタを用いると、5個の画素の値の何番目かで値置換対象の黒画素(画素(i,j))の値が置換えられる。たとえば、中央の3番目の値で置換えると、ドットを含めて画像の状態はほとんど変化せず、2番目、1番目の値にしていくにつれて、ドットをより検出しやすいように収縮・膨張が作用する。
【0082】
また、上述のような5つの画素値では、適切な処理レベルを選択しづらかった場合には、図14のフィルタの代わりとして、図15のフィルタを用いても良い。図15の場合、9個の画素値のうち、選択対象は4〜1番目の画素値となるから、適切な選択値条件を見つけやすい。
【0083】
なお、フィルタ処理として値が参照(読出)される画素(グレー(斜線)の画素)の位置は、値置換対象の黒画素(画素(i,j))からおおよそ同じ距離にあり、画素(i,j)を中心に対称に配置されている方が、処理結果に参照画素の配置の仕方による依存性をなくすことができ、より望ましい結果が得られる。
【0084】
(装置構成例)
図16には、画像処理装置50が搭載されるパーソナルコンピュータ(PC)の概略構成が示される。PC80には、表示部71に対応のモニタ81、マウス82、キーボード68、HDD63、FD65およびDVD67に対応の外部記憶装置84およびスキャナ70を接続する。PC80は、内部のメモリ62に上述の画像処理手順を示すプログラムである画像処理ソフトウェアが格納される。当該ソフトウェアは、PC80内部の図示のないCPU(Central Processing Unit)またはMPU61により読出されて実行される。
【0085】
図17には、画像処理装置50が搭載されるMFPの概略構成が示される。MFP本体90には、スキャナ70を含むスキャナ部91、キーボード68を含む操作パネル部92およびプリンタ73を含むプリンタ部93が接続される。MFP本体90は内部に、上述の画像処理手順をハードウェア(H/W)にて実現するための画像処理H/W94を有する。画像処理H/W94は、たとえばASIC(Application Specific Integrated Circuit)を含んで構成される。
【0086】
図18には、図16のPC80についてデータの入出力関係が示される。PC80の内部には、MPU61と外部(キーボード68、マウス82、モニタ81、スキャナ70および外部記憶装置84を含む)との入出力を制御する入出力インターフェース85を有する。キーボード68およびマウス82は、ユーザにより操作されてユーザからの指示を入力する。モニタ81は与えられる画像データなど各種情報を表示する。スキャナ70は指示により印刷文書20などをスキャンして多値画像データ21に相当のスキャン画像データを出力する。MPU61の内部には、OS(Operating System)87およびOSにより制御される処理演算部86を有する。入出力インターフェース85を介して外部とデータを入出力しながら、メモリ62から読出されるプログラムが、処理演算部86を用いて実行されるが、このプログラムの実行状態はOS87により制御・監視される。
【0087】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【0088】
【図1】実施の形態に係る画像処理装置の機能構成図である。
【図2】実施の形態に係る画像処理手順を示す図である。
【図3】実施の形態に係る画像処理装置が搭載されるコンピュータの構成図である。
【図4】実施の形態に係る多値画像データの一例を示す図である。
【図5】(A)と(B)は実施の形態に係る収縮画像データと膨張画像データの一例を示す図である。
【図6】実施の形態に係る処理用のフィルタの一例を示す図である。
【図7】実施の形態に係る収縮処理のフローチャートである。
【図8】実施の形態に係る収縮処理のフローチャートである。
【図9】実施の形態に係る膨張処理のフローチャートである。
【図10】実施の形態に係る膨張処理のフローチャートである。
【図11】実施の形態に係る差分画像データの一例を示す図である。
【図12】実施の形態に係る2値画像データの一例を示す図である。
【図13】実施の形態に係る処理用のフィルタの他の例を示す図である。
【図14】実施の形態に係る処理用のフィルタのさらなる他の例を示す図である。
【図15】実施の形態に係る処理用のフィルタのさらなる他の例を示す図である。
【図16】実施形態に係る画像処理装置が搭載されるパーソナルコンピュータの構成図である。
【図17】実施形態に係る画像処理装置が搭載されるMFPの構成図である。
【図18】実施形態に係る画像処理装置が搭載されるパーソナルコンピュータの構成を入出力データとともに示す図である。
【符号の説明】
【0089】
20 印刷文書、21 多値画像データ、23 収縮画像データ、25 膨張画像データ、26 差分画像データ、27 2値化画像データ、28 埋込情報、22,24 フィルタ、62 メモリ。

【特許請求の範囲】
【請求項1】
文書画像とその背景においてドットとを含む多値画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第1所定順番である値で置換して、第1置換画像データを出力する第1置換手段と、
前記第1置換手段により出力された前記第1置換画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第2所定順番である値で置換して、第2置換画像データを出力する第2置換手段と、を備え、
前記第1所定順番である値は、前記複数画素の値の中央の値よりも前記背景の画素側の値を示し、前記第2所定順番である値は、前記複数画素の値の中央の値よりも前記文書画像の画素側の値を示す、画像処理装置。
【請求項2】
前記第1置換手段および前記第2置換手段の前記周囲の画素の位置は任意に変更される、請求項1に記載の画像処理装置。
【請求項3】
前記第1置換手段および前記第2置換手段の前記周囲の画素の個数は任意に変更される、請求項1に記載の画像処理装置。
【請求項4】
前記第1置換手段は、
前記多値画像データの各画素の値を、第1ドットパターンを用いて読出した当該画素および前記周囲の画素の値のうち大きさが前記第1所定順番である値で置換し、
前記第2置換手段は、
前記第1置換画像データの各画素の値を、第2ドットパターンを用いて読出した当該画素および前記周囲の画素の値のうち大きさが前記第2所定順番である値で置換する、請求項1に記載の画像処理装置。
【請求項5】
前記第1ドットパターンおよび前記第2ドットパターンは、予め準備された複数種類のドットパターンから選択される、請求項4に記載の画像処理装置。
【請求項6】
前記多値画像データと前記第2置換手段から出力された前記第2置換画像データとの差分を示す差分画像データを出力する差分作成手段をさらに備える、請求項1に記載の画像処理装置。
【請求項7】
前記差分作成手段から出力された前記差分画像データを所定閾値で2値化処理して、2値化画像データを出力する2値化手段をさらに備える、請求項6に記載の画像処理装置。
【請求項8】
前記背景におけるドットは、所定の埋込パターンに従い配置された電子透かし情報を示す、請求項1から7のいずれか1項に記載の画像処理装置。
【請求項9】
前記第1ドットパターンは、画素マトリックスであり、
前記第1置換手段は、
前記多値画像データの各画素の値を、前記画素マトリックスの一部画素と前記多値画像データの対応画素とのマッチングにより読出した当該画素および前記周囲の画素の値のうち大きさが前記第1所定順番である値で置換する、請求項4に記載の画像処理装置。
【請求項10】
前記第2ドットパターンは、画素マトリックスであり、
前記第2置換手段は、
前記第1置換画像データの各画素の値を、前記画素マトリックスの一部画素と前記第1置換画像データの対応画素とのマッチングにより読出した当該画素および前記周囲の画素の値のうち大きさが前記第2所定順番である値で置換する、請求項4に記載の画像処理装置。
【請求項11】
前記画素マトリックスにおいて前記一部画素は、値が置換される画素と、当該画素を中心に対称関係に従い配置される画素からなる、請求項9または10に記載の画像処理装置。
【請求項12】
前記多値画像データは、前記文書画像の文書が印刷された紙面をスキャンして取得されて、
前記周囲の画素の、個数と位置は、前記印刷の解像度または前記スキャンの解像度に従い決定される、請求項1に記載の画像処理装置。
【請求項13】
第1置換手段と第2置換手段を備える装置における画像処理方法であって、
前記第1置換手段が、文書画像とその背景においてドットとを含む多値画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第1所定順番である値で置換して、第1置換画像データを出力する第1置換ステップと、
前記第2置換手段が、前記第1置換ステップにより出力された前記第1置換画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第2所定順番である値で置換して、第2置換画像データを出力する第2置換ステップと、を備え、
前記第1所定順番である値は前記複数画素の値の中央の値よりも前記背景の画素側の値を示し、前記第2所定順番である値は前記複数画素の値の中央の値よりも前記文書画像の画素側の値を示す、画像処理方法。
【請求項14】
コンピュータを、
文書画像とその背景においてドットとを含む多値画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第1所定順番である値で置換して、第1置換画像データを出力する第1置換手段と、
前記第1置換手段により出力された前記第1置換画像データの各画素の値を、当該画素および周囲の画素からなる複数画素の値のうち大きさが第2所定順番である値で置換して、第2置換画像データを出力する第2置換手段と、して機能させるためのプログラムであって、
前記第1所定順番である値は前記複数画素の値の中央の値よりも前記背景の画素側の値を示し、前記第2所定順番である値は前記複数画素の値の中央の値よりも前記文書画像の画素側の値を示す、プログラム。
【請求項15】
請求項14に記載のプログラムを記録したコンピュータ読取り可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図4】
image rotate

【図5】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2006−324896(P2006−324896A)
【公開日】平成18年11月30日(2006.11.30)
【国際特許分類】
【出願番号】特願2005−145701(P2005−145701)
【出願日】平成17年5月18日(2005.5.18)
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】