(57)【要約】【課題】電子透かしとして埋め込まれたデータを正確に検出することが可能な画像処理装置、画像処理方法及びそのプログラムを提供する。【解決手段】埋め込まれたデータパターン及び基準パターンを検出して、それぞれ所定のデータ画素値または基準画素値に置き換えた上で、前記基準画素値の位置を基準として定まる所定の範囲内から、前記データ画素値を取得し、データを取り出す。これにより、プリントアウトされた画像に延び縮みや傾きがある場合でも、基準画素値の位置に基づき、各データ画素値を取得することが可能となり、したがって電子透かしとして埋め込まれたデータを正しく検出することが可能となる。【選択図】図９
2008211299.tif 000002
【特許請求の範囲】
【請求項１】
画像に埋め込まれたデータを検出する画像処理装置であって、
前記画像から、埋め込まれたデータパターン及び基準パターンを検出して、それぞれ所定のデータ画素値または基準画素値に置き換える検出手段と、
前記検出手段により置き換えられた前記基準画素値の位置を基準として定まる所定の範囲内から、前記データ画素値を検索し、該データ画素値からデータを取り出す取出手段と、を含む
ことを特徴とする画像処理装置。
【請求項２】
前記基準パターンは、前記画像上に等間隔に配置される
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記取出手段は、前記基準画素値の位置を基準として所定数のデータを取り出す
ことを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記検出手段により置き換えられた前記基準画素値が存在する位置範囲を狭める縮小処理を行う縮小手段を含み、
前記取出手段は、前記縮小手段によって縮小処理された後の前記基準画素値の位置を基準として定まる所定の範囲内から、前記データ画素値を検索し、該データ画素値からデータを取り出す
ことを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記縮小手段は、前記検出手段により置き換えられた前記データ画素値が存在する位置範囲を狭める縮小処理を行い、
前記取出手段は、前記基準画素値の位置を基準として定まる所定の範囲内から、前記縮小手段によって縮小処理された後の前記データ画素値を検索し、該データ画素値からデータを取り出す
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
画像に埋め込まれたデータを検出する画像処理方法であって、
前記画像から、埋め込まれたデータパターン及び基準パターンを検出して、それぞれ所定のデータ画素値または基準画素値に置き換える検出工程と、
前記検出工程において置き換えられた前記基準画素値の位置を基準として定まる所定の範囲内から、前記データ画素値を検索し、該データ画素値からデータを取り出す取出工程と、を含む
ことを特徴とする画像処理方法。
【請求項７】
前記検出工程において置き換えられた前記基準画素値が存在する位置範囲を狭める縮小処理を行う縮小工程を含み、
前記取出工程は、前記縮小工程において縮小処理された後に実行される
ことを特徴とする請求項６に記載の画像処理方法。
【請求項８】
前記縮小工程では、前記検出工程において置き換えられた前記データ画素値が存在する位置範囲を狭める縮小処理を行い、
前記取出工程は、前記縮小工程において縮小処理された後に実行される
ことを特徴とする請求項７に記載の画像処理方法。
【請求項９】
コンピュータに、画像に埋め込まれたデータを検出させるプログラムであって、
前記画像から、埋め込まれたデータパターン及び基準パターンを検出して、それぞれ所定のデータ画素値または基準画素値に置き換える検出工程と、
前記検出工程において置き換えられた前記基準画素値の位置を基準として定まる所定の範囲内から、前記データ画素値を検索し、該データ画素値からデータを取り出す取出工程と、をコンピュータに実行させる
ことを特徴とするプログラム。
【請求項１０】
前記取出工程を実行させる前に、
前記検出工程において置き換えられた前記基準画素値が存在する位置範囲を狭める縮小処理を行う縮小工程をコンピュータに実行させる
ことを特徴とする請求項９に記載のプログラム。
【請求項１１】
前記取出工程を実行させる前に、
前記検出工程において置き換えられた前記データ画素値が存在する位置範囲を狭める縮小処理を行う縮小工程をコンピュータに実行させる
ことを特徴とする請求項１０に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリントアウトされる画像データに電子透かしとしてデータを埋め込む技術に関し、特に、プリントアウトされた画像に延び縮みや傾きがある場合でも、電子透かしとして埋め込まれたデータを正しく検出することが可能な画像処理装置、画像処理方法及びそのプログラムに関する。
【背景技術】
【０００２】
近年、画像データに電子透かしとしてデータを埋め込む技術が開発されている。これに関連する技術として、下記の特許文献１に開示された発明がある。
【０００３】
特許文献１に開示された透かし情報埋め込み方法においては、ドットパターンが少なくとも第１、第２、第３のドット（始点ドット、水平基準ドット、変調ドット）を含んで構成されており、第１、第２、第３のドットの相対的な位置関係によって定まる固有値に応じてドットパターンに値を設定する。固有値は、第３のドットを始点として第１のドットを終点とするベクトルと、第３のドットを始点として第２のドットを終点とするベクトルとの内積である。
【特許文献１】特開２００４−１２８８４５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
画像データに電子透かしとしてデータを埋め込んでプリントアウトし、そのプリントアウトをスキャナなどでスキャンして埋め込んだデータを検出する場合、プリントアウトに伸び縮みや傾きがある場合には、埋め込まれているデータを正しく検出することができないという問題点がある。
【０００５】
また、上述した特許文献１に開示された情報埋め込み方法においては、入力画像に歪みがある場合でも信号の復元を行うことができるが、透かし情報を埋め込むときに、１つのデータ信号を一定のエリアに繰返し埋めたユニットパターンを作成して埋め込む必要があり、埋め込み量が制限される。埋め込み量を増やすために、一定エリアに繰返すことをせずに埋め込むと、プリントアウトに伸び縮みや傾きがあると検出できなくなる。また、プリントアウトをスキャンして埋め込まれたデータを検出するときに、ユニットパターンを検出して判定する必要があり、処理が複雑となる。また、ハードウェア化を容易に行うことができない。
【０００６】
本発明は、上記問題点を解決するためになされたものであり、その目的は、電子透かしとして埋め込まれたデータを正確に検出することが可能な画像処理装置、画像処理方法及びそのプログラムを提供することである。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、本発明は以下の特徴を有するものである。
【０００８】
１．  画像に埋め込まれたデータを検出する画像処理装置であって、前記画像から、埋め込まれたデータパターン及び基準パターンを検出して、それぞれ所定のデータ画素値または基準画素値に置き換える検出手段と、前記検出手段により置き換えられた前記基準画素値の位置を基準として定まる所定の範囲内から、前記データ画素値を検索し、該データ画素値からデータを取り出す取出手段と、を含むことを特徴とする画像処理装置。
【０００９】
２．  前記基準パターンは、前記画像上に等間隔に配置されることを特徴とする１に記載の画像処理装置。
【００１０】
３．  前記取出手段は、前記基準画素値の位置を基準として所定数のデータを取り出すことを特徴とする１または２に記載の画像処理装置。
【００１１】
４．  前記検出手段により置き換えられた前記基準画素値が存在する位置範囲を狭める縮小処理を行う縮小手段を含み、前記取出手段は、前記縮小手段によって縮小処理された後の前記基準画素値の位置を基準として定まる所定の範囲内から、前記データ画素値を検索し、該データ画素値からデータを取り出すことを特徴とする１乃至３の何れか１項に記載の画像処理装置。
【００１２】
５．  前記縮小手段は、前記検出手段により置き換えられた前記データ画素値が存在する位置範囲を狭める縮小処理を行い、前記取出手段は、前記基準画素値の位置を基準として定まる所定の範囲内から、前記縮小手段によって縮小処理された後の前記データ画素値を検索し、該データ画素値からデータを取り出すことを特徴とする４に記載の画像処理装置。
【００１３】
６．  画像に埋め込まれたデータを検出する画像処理方法であって、前記画像から、埋め込まれたデータパターン及び基準パターンを検出して、それぞれ所定のデータ画素値または基準画素値に置き換える検出工程と、前記検出工程において置き換えられた前記基準画素値の位置を基準として定まる所定の範囲内から、前記データ画素値を検索し、該データ画素値からデータを取り出す取出工程と、を含むことを特徴とする画像処理方法。
【００１４】
７．  前記検出工程において置き換えられた前記基準画素値が存在する位置範囲を狭める縮小処理を行う縮小工程を含み、前記取出工程は、前記縮小工程において縮小処理された後に実行されることを特徴とする６に記載の画像処理方法。
【００１５】
８．  前記縮小工程では、前記検出工程において置き換えられた前記データ画素値が存在する位置範囲を狭める縮小処理を行い、前記取出工程は、前記縮小工程において縮小処理された後に実行されることを特徴とする７に記載の画像処理方法。
【００１６】
９．  コンピュータに、画像に埋め込まれたデータを検出させるプログラムであって、前記画像から、埋め込まれたデータパターン及び基準パターンを検出して、それぞれ所定のデータ画素値または基準画素値に置き換える検出工程と、前記検出工程において置き換えられた前記基準画素値の位置を基準として定まる所定の範囲内から、前記データ画素値を検索し、該データ画素値からデータを取り出す取出工程と、をコンピュータに実行させることを特徴とするプログラム。
【００１７】
１０．  前記取出工程を実行させる前に、前記検出工程において置き換えられた前記基準画素値が存在する位置範囲を狭める縮小処理を行う縮小工程をコンピュータに実行させることを特徴とする９に記載のプログラム。
【００１８】
１１．  前記取出工程を実行させる前に、前記検出工程において置き換えられた前記データ画素値が存在する位置範囲を狭める縮小処理を行う縮小工程をコンピュータに実行させることを特徴とする１０に記載のプログラム。
【発明の効果】
【００１９】
本発明によれば、埋め込まれたデータパターン及び基準パターンを検出して、それぞれ所定のデータ画素値または基準画素値に置き換えた上で、前記基準画素値の位置を基準として定まる所定の範囲内から、前記データ画素値を検索し、該データ画素値からデータを取り出す。
【００２０】
これにより、プリントアウトされた画像に延び縮みや傾きがある場合でも、基準画素値の位置に基づき、所定範囲内から各データ画素値を検索することが可能となり、したがって電子透かしとして埋め込まれたデータを正しく検出することが可能となる。
【発明を実施するための最良の形態】
【００２１】
（第１の実施の形態）
図１は、本発明の第１の実施の形態における画像処理装置のシステム構成の一例を示す図である。図１を用いて本実施形態に係る画像処理装置の概略構成を説明する。
【００２２】
（画像処理装置の概略構成）
図１は、パーソナルコンピュータ（以下、ＰＣと呼ぶ）を用いて画像処理装置を構成する場合を示しており、マウス１１と、キーボード１２と、モニタ１３と、外部記憶装置１４と、スキャナ１５と、ＰＣ１６とを含む。
【００２３】
ＰＣ１６は、一般的なコンピュータのハードウェアと同様の構成を有しており、図示しないＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が画像処理プログラム１７を実行することによって、後述する画像処理装置の機能が実現される。
【００２４】
画像処理プログラム１７は、一般にＣＤ、ＤＶＤ、等の外部記録媒体に記録されたものをＰＣ１６にイントールして用いる。インストールされた画像処理プログラムは、ＰＣ１６内部のメモリなどに記憶される。
【００２５】
マウス１１及びキーボード１２は、それぞれ入力デバイスとして用いられ、ユーザが画像処理プログラム１７の起動、画像処理プログラム１７の実行時における各種指示などを行う際に用いられる。
【００２６】
モニタ１３は、スキャナ１５によって読み取られた画像データなどを表示するのに用いられ、ユーザはモニタ１３に表示された内容を参照しながら、画像処理プログラム１７に指示を与えることによって画像処理が進められる。
【００２７】
外部記憶装置１４は、スキャナ１５によって読み取られた画像データなどを記憶するのに用いられる。画像処理プログラム１７がこの外部記憶装置１４に記憶され、ＰＣ１６が外部記憶装置１４から内部のＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）に画像処理プログラム１７をロードして実行するようにしてもよい。
【００２８】
スキャナ１５は、データが埋め込まれた画像データを読み取り、読み取った画像データをＰＣ１６に出力する。ＰＣ１６は、スキャナ１５から受けた画像データに対して後述する処理を行うことによって、画像処理が行われる。
【００２９】
図２は、図１に示す画像処理装置をより機能的に説明するための図である。ＰＣ１６は、入出力インタフェース２４と、ＣＰＵ／メモリ２５と、記憶装置２６とを含む。また、記憶装置２６は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）２７と、画像処理プログラム１７によって実現される画像処理部２８とを含む。画像処理プログラム１７はＯＳ２７上で動作し、画像処理部２８の機能を実現する。
【００３０】
画像処理部２８は、ＯＳ２７及び入出力インタフェース２４を介してデータを入出力することによって、キーボード１１、マウス１２、モニタ１３及びスキャナ１５を制御する。画像処理部２８は、キーボード１１またはマウス１２によるユーザ指示２１を受け、スキャナ１５からのスキャン画像２３を受けたり、モニタ１３に画像データ表示２２を行ったりして、後述する画像処理を行う。
【００３１】
図３は、本発明の第１の実施の形態における画像処理装置のシステム構成の他の一例を示す図である。図３は、ＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）を用いて画像処理装置を構成する場合を示しており、操作パネル部３１と、スキャナ部３２と、プリンタ部３３と、ＭＦＰ本体３４とを含む。
【００３２】
ＭＦＰ本体３４は、画像処理回路３５などによって構成される。画像処理回路３５は、操作パネル３１からのユーザの指示を受け、スキャナ部３２及びプリンタ部３３を制御しながら後述する画像処理を行う。
【００３３】
（画像処理の概略フロー）
図４は、本発明の第１の実施の形態における画像処理装置の処理の概略を説明するためのフローチャートである。図４を用いてデータ埋め込みからデータ検出に至る画像処理方法の概略フローを説明する。
【００３４】
まず、ステップＳ１１はデータ埋め込み処理のステップである。画像データ４１に埋め込む埋め込みデータ４２を取得し、画像データ４１の背景にドットパターンとして埋め込む。
【００３５】
埋め込みデータ４２をドットパターンとして埋め込んだ埋め込み画像はプリントアウトされ、印刷物４３が作成される。
【００３６】
図５は、埋め込みデータ４２を埋め込むときのドットパターンを示す図である。図５（ａ）は、ビットデータ“０”を表すデータパターンとしてのドットパターンであり、１６×１６画素のうち図５（ａ）に示す位置に黒のドットを配置することにより、データ“０”を表現する。
【００３７】
また、図５（ｂ）は、ビットデータ“１”を表すデータパターンとしてのドットパターンであり、１６×１６画素のうち図５（ｂ）に示す位置に黒のドットを配置することにより、データ“１”を表現する。
【００３８】
また、図５（ｃ）は、データ取り出し用の基準位置を表す基準パターンとしてのドットパターンであり、１６×１６画素のうち図５（ｃ）に示す位置に黒のドットを配置することにより、データ取り出し用の基準位置を表現する。
【００３９】
図６は、埋め込みデータの一例を示す図である。図６に示すように、８０×８０画素の領域に、２４ビット分のデータと、データ取り出し用基準パターンとが配置される。データ取り出し用基準パターンは、２４ビット分のデータの中央に位置する。
【００４０】
図７は、図６に示す埋め込みデータが実際にプリントアウトされるときのドットパターンを示す図である。図７に示すように、８０×８０画素のうち中央の１６×１６画素の領域にデータ取り出し用基準パターンとしてのドットパターンが配置され、それ以外の領域には図６に示す埋め込みデータに対応したデータパターン、すなわちデータ“０”またはデータ“１”を示すドットパターンが配置される。
【００４１】
図８は、画像データの背景にデータを埋め込んで印刷したときのプリントアウト（印刷物４３）の一例を示す図である。図７に示すドットパターンが紙一面に繰返し配置され、実際にプリントアウトしようとする文字などの画像データと合成されて、プリントアウトされる。このドットパターンを、たとえば６００ｄｐｉで埋め込む場合、このデータセルは一辺が０．０６８ｃｍ（１６／６００インチ）とかなり小さなドットとなる。そのため、ユーザにはプリントアウトの背景にグレーの画像６１が追加されているように見える。
【００４２】
ステップＳ１２はデータ検出処理としての検出工程、取出工程を含むステップであり、このステップの詳細は図１０を参照して後述する。
【００４３】
（画像処理の機能構成）
図９は、図１または図３に示す画像処理装置の機能的構成を示すブロック図である。
【００４４】
この画像処理装置は、印刷物４３をスキャンすることにより画像を読み取る画像読取部５１と、読み取られた画像に対してパターンマッチングを行う検出手段としてのパターン検出部５２と、パターン検出部５２によって検出されたデータに対してドット縮小処理を行う縮小手段としての縮小処理部５３と、ドット縮小処理されたデータから埋め込まれたデータを取出す取出手段としてのデータ取出部５４とを含む。
【００４５】
各処理手段の機能については、以下に画像処理の処理手順とともに合わせて説明する。
【００４６】
（画像処理の詳細フロー）
図１０は、図４に示すステップＳ１２の詳細な処理手順を説明するためのフローチャートである。図１０を用いて本実施形態に係る埋め込みデータ検出の画像処理方法の処理手順を説明する。
【００４７】
まず、ステップＳ２０では、画像読取部５１が、スキャナ１５またはスキャナ部３２によって印刷物４３をスキャンしてスキャン画像４４を取得する。
【００４８】
データ埋め込み画像の取得には、必ずしもスキャナ１５またはスキャナ部３２等の読み取り装置を用いる必要はなく、入出力インタフェイス２４を介して接続された外部装置や、外部記憶媒体から読み取り済みの電子データとして取得するような形態であってもかまわない。
【００４９】
検出工程としてのステップＳ２１では、パターン検出部５２が、画像読取部５１により、あるいは他の手段によって得られた画像データ４４をスキャンして１７×１７画素のパターン（以下、入力パターンと呼ぶ）を抽出し、入力パターンに対してパターンマッチングを行う。
【００５０】
＜検出工程＞
パターンマッチング処理の一例として、単純類似度を用いてデータを検出する場合について以下に説明するが、埋め込まれたデータを検出できる方法であれば、これに限定されるものではない。
【００５１】
単純類似度とは、標準パターンをｃ＝（ｃ１，ｃ２，．．．，ｃ２８９）とし、入力パターンをｘ＝（ｘ１，ｘ２，．．．，ｘ２８９）とすると、次式（１）によって２つのベクトルのなす角度を求め、小さいほど類似していると判断する方法である。なお、“・”はベクトルの内積を示し、“｜｜”はベクトルの大きさを示すものとする。
【００５２】
ｃ・ｘ／（｜ｃ｜×｜ｘ｜）  ・・・（１）
パターン検出部５２は、式（１）によって計算された角度のｃｏｓを計算し、“１”に近いほど標準パターンと入力パターンとが近似していると判定する。
【００５３】
図１１は、標準パターンを説明するための図である。図１１（ａ）は、データ“０”の標準パターンを示している。また、図１１（ｂ）は、データ“１”の標準パターンを示している。また、図１１（ｃ）は、データ取り出し用基準パターンの標準パターンを示している。
【００５４】
パターン検出部５２は、標準パターンとして図１１（ａ）に示すデータ“０”を用いたときのｃｏｓ値が所定のしきい値以上であれば、１７×１７画素の中央の画素の画素値を“０”（以下、この画素をデータ“０”に対応するデータ画素として、データ０画素と呼ぶ）とする。以下、図面では濃いグレーのドット０で表わす。
【００５５】
また、パターン検出部５２は、標準パターンとして図１１（ｂ）に示すデータ“１”を用いたときのｃｏｓ値が所定のしきい値以上であれば、１７×１７画素の中央の画素の画素値を“１”（以下、この画素をデータ“１”に対応するデータ画素として、データ１画素と呼ぶ）とする。以下、図面では薄いグレーのドット１で表わす。
【００５６】
また、パターン検出部５２は、標準パターンとして図１１（ｃ）に示すデータ取り出し用基準パターンを用いたときのｃｏｓ値が所定のしきい値以上であれば、１７×１７画素の中央の画素の画素値を“２”（以下、この画素を基準パターンに対応する画素として、データ取り出し用の基準画素と呼ぶ）とする。以下、図面では黒のドット２で表わす。
【００５７】
また、パターン検出部５２は、標準パターンのいずれを用いてもｃｏｓ値が所定のしきい値未満であれば、１７×１７画素の中央の画素の画素値を“３”とする。以下、図面では白で表わす。
【００５８】
パターン検出部５２は、印刷物４３のスキャン画像を１画素ずつ左右方向及び上下方向にずらしながら、１７×１７画素の入力パターンを抽出してパターンマッチングを行うことにより、画像データを上述の画素値に置き換える。
【００５９】
図１２は、パターン検出部５２によって画素値に置き換えられた後の画像データの一例を模式的に示す図である。図１２に示すように、画像データに埋め込まれたデータが画素値“０”〜“３”に置き換えられる。
【００６０】
図１２において、符号０はデータ０画素からなるドットを、符号１はデータ１画素からなるドットの例を示す。また符号２は基準画素からなるドットであり、図に示すように縦横方向に一定周期で格子状に反復している。これは図６で示した８０×８０画素の埋め込みパターン（その中央部が基準パターンであり基準画素に置き換えられている）が、用紙いっぱいに繰り返し配置されていることに相当する。またデータ０画素とデータ１画素も、図６のパターンに従ってそれぞれ配置されていることになる。それら以外の白地部分の画素はすべて画素値“３”である。
【００６１】
また図１２において、０から２の各符号のドットについて述べたが、実際は各ドットは複数の画素を含んでいる。例えばドット２は複数の基準画素から構成される。図１３（ｂ）にその様子を示す。
【００６２】
図１３（ｂ）は、図１２におけるドット２の一例を示す部分拡大図である。各桝目は画素を示し、斜線の画素は基準画素、すなわち基準画素値２を有する画素であり、白地の画素は基準画素でもデータ画素でもない画素値３を有する画素である。この図の場合であれば、ドット２は１３個の基準画素から構成されており、基準画素値の位置範囲は、斜線で示した領域となる。
【００６３】
この基準画素値の位置範囲の広がりは、一般に、以下に述べるような理由によって生じている。
【００６４】
ａ．データを埋め込んだ画像がプリントアウトされ印刷物４３になる時点で、基準パターンを形成する各ドットがプリントにより膨張して、太ったドット状態となっており、それらに基づいて検出した基準画素の位置も太ったドットとなってしまう。
【００６５】
ｂ．印刷物４３をスキャナなどで読み取り、スキャン画像データ４４とする際に、印刷物のスキャナ面からの浮きなどにより、基準パターンを構成する各ドットの間隔に局部的に伸びや縮みが生じ、相対的な位置関係のずれが生ずる。これによりパターン検出時に基準画素位置の範囲に広がりが生じてしまう。
【００６６】
これらの結果、パターン検出において基準画素値に置き換えられた後のドット、すなわち基準画素値の位置範囲は、上記のような影響がなかったとしたときの基準画素値の位置範囲と比べて、広がりを持った状態で再現されることになる。
【００６７】
なお、上で基準画素を例に述べたことはデータ画素にも当てはまる。すなわち、同様にドットは複数のデータ画素から構成され、同様の理由により各ドット、つまり各データ画素値の位置範囲は広がりを生じてくる。
【００６８】
このことは、例えば基準画素の場合であれば、ドットが太っているため基準の画素位置を特定できず、後述するデータ取り出しのフィルタ処理を複数の基準画素位置で繰り返すことになり、処理の効率を落とすことになる。またデータ画素の場合であれば、読み取り時の位置ずれにドットの太りが加わって、後述するデータ取り出しのフィルタ処理時に隣接するデータセルにはみ出し、誤ったデータ取り出しを起こさせる危険性がある。
【００６９】
そういった点に対処するため、各画素値が存在する位置範囲を狭めるべく縮小処理を行ってもよい。縮小処理について、詳細を以下に述べる。
【００７０】
＜縮小工程＞
次に、縮小工程としてのステップＳ２２では、縮小処理部５３が、パターン検出部５２によって置き換えられた画素値が存在する位置範囲を狭める縮小処理を行う。但し、この縮小処理は省略して、次の取り出し工程に移ることもできる。
【００７１】
図１３（ａ）は、縮小処理に用いられるフィルタの一例を示す図である。この縮小処理は、データ画素とデータ取り出し用基準画素の両方について行ってもよいし、あるいはどちらか一方について行ってもよい。
【００７２】
例えば基準画素について縮小処理を行う場合、この縮小処理フィルタは、図１３（ａ）の黒画素６２（注目画素）が基準画素（画素値２）であっても、他の斜線で示す画素６３の何れかが基準画素でなければ、その注目画素６２を基準画素でないと判定する。すなわち、注目画素の画素値をその他画素（画素値３）に置き換える。データ画素について縮小処理する場合も同様である。
【００７３】
この縮小フィルタ処理により、例えば基準画素のドットであれば、ドット領域の周囲外縁部の画素が基準画素ではないと見なされてドット領域から外れ、ドットは縮小し、基準画素の位置範囲が中央部へ向けて狭められることになる。またデータ画素についても同様である。
【００７４】
縮小処理部５３はこの縮小処理フィルタを用いて、パターン検出部５２によって画素値に置き換えられた後の画像データの全画素に対して縮小処理を行う。すなわち、画素値に置き換えられた後の画像データに対して縮小処理フィルタを適用する領域を１画素ずつ左右方向及び上下方向にずらしながら、全領域に対してフィルタ処理を行う。
【００７５】
なお、縮小処理フィルタは、図１３（ａ）に示す３×３のサイズの９画素のフィルタに限られるものではなく、縮小量によって、たとえば５×５のサイズの２５画素のフィルタなどに変更することも可能である。
【００７６】
図１４は、縮小処理を行った後の画像データを示す図である。図１４に示すように、データ取り出し用基準画素も、データ０画素及びデータ１画素も、縮小処理によってドットが縮小されている。縮小されていることを除けば、各符号で示すドットの位置は図１２と同様である。
【００７７】
このように、縮小処理を行うことにより、データ取り出し用基準画素が存在する位置範囲を狭めるようにすれば、その基準画素位置を基準として後述するデータ取り出しのフィルタ処理を繰り返す回数を、基準画素の位置範囲を狭めた分だけ減らすことができ、データ取り出しの処理を高速に行うことが可能となる。
【００７８】
またデータ画素についても、縮小処理を行うことにより、各データ画素が存在する位置範囲を狭めるようにようにすれば、各データ画素のドットに位置ずれが生じていても、後述するデータ取り出しの処理において、隣接するデータ取り出し範囲にはみ出して誤ったデータ取り出しを起こさせる危険を抑制することができる。
【００７９】
＜取出工程＞
次に、ステップＳ２３からステップＳ２６は、取出工程として機能する。取出工程においても、データ取り出し用のフィルタを用いたフィルタ処理を行う。
【００８０】
ステップＳ２３では、データ取出部５４が、画像データを１画素ずつ左右方向及び上下方向にずらしながら、注目画素がデータ取り出し用基準画素であるか否かを判定する。
【００８１】
注目画素がデータ取り出し用基準画素であれば（ステップＳ２３：Ｙｅｓ）、ステップＳ２４を実行し、その注目画素の周辺からフィルタ処理によりデータを取り出す。また、注目画素がデータ取り出し用基準画素でなければ（ステップＳ２３：Ｎｏ）、何もせず（ステップＳ２５）にステップＳ２６に進む。
【００８２】
図１５は、データ取出部５４がデータを取り出す際に用いるフィルタの一例を示す図である。このフィルタは、中央の画素（白丸６５）を注目画素とし、注目画素を中心として１６画素ずつ離れた２４ヶ所の画素（黒丸６６）について、その近傍の所定範囲６７内でデータを検索するものである。
【００８３】
このように所定範囲６７内を検索することにより、画像読み取り時に紙が少し浮いているなどの理由により、読み取り画像データにおいて画素の間隔が若干変動したりしている場合であっても、適当な範囲内からデータを探しだし、正しく検出することができる。
【００８４】
すなわち、データ取出部５４は、画像データに対して図１５に示すフィルタを１画素ずつ左右方向及び上下方向にずらし、注目画素６５がデータ取り出し用基準画素のときに、黒丸で示す位置にある２４ヶ所の画素６６を中心とした所定範囲６７を検索する。そして、その範囲内の最小値を取得することでデータを取り出す。
【００８５】
最小値をデータとして取得するのは、データ画素や基準画素に対する画素値の与え方によるものである。すなわち、本実施形態ではデータ０画素またはデータ１画素に対しては、それぞれデータ画素値“０”またはデータ画素値“１”を、基準画素に対しては基準画素値“２”を、その他画素には画素値“３”を与えている。したがって取り出すデータは０または１であり、あり得る画素値０から３のうち最小値を取得すれば、その範囲内にどちらかがあるはずのデータ０または１の一方を取得することができる。
【００８６】
図１６は、図１５に示すフィルタによってデータを取り出すときの処理を説明するための図である。図１６の左上に示すように、データ取り出し用フィルタ７１の中央の注目画素がデータ取り出し用基準画素のときに、その周辺の２４ヶ所のデータが取り出される。
【００８７】
また、図１６の左上の丸で示す箇所７２（図１７（ａ）に拡大図を示す）において、読み取りミスが発生しており、本来データ画素が存在すべき位置において、誤って画素値が“３”となっている。このように、一部のデータに読み取りミスがある場合でも、図１５に示すフィルタを用いることによってその箇所のデータが不明であると判定することができる。
【００８８】
また、図１６の右下の丸で示す箇所７３（図１７（ｂ）に拡大図を示す）において、間違ってデータが判定されたことを示している。すなわち、本来データ画素が存在しないはずの位置にデータ画素が生じている。このように、一部のデータが間違って判定された場合でも、図１５に示すフィルタを用いることによってその箇所のデータを読み飛ばすことができる。
【００８９】
なお図１７（ａ）と（ｂ）の拡大図は、データ取り出し用フィルタ７１の中央の注目画素が、一定周期で存在するデータ取り出し用の基準画素（符号２で示す）に該当するときに、データ取り出し処理を行うことも示している。
【００９０】
図１８は、データ取出部５４がデータを取り出す際に用いるフィルタの他の一例を示す図である。図１５は、５×５のデータを抽出するものであったが、図１８は、６×６のデータを抽出するものである。６×６のデータを抽出する場合には、中央の画素が存在しないため、図１８に示すように中央の４つの白丸６８のいずれか１つを注目画素としてデータ取り出し用基準画素を配置し、それ以外の画素からデータを取り出す。
【００９１】
再び、図１０に示すフローチャートの説明に戻る。最後に、ステップＳ２６で、データ取出部５４は、処理すべき次の画素があるか否かを判定する。次の画素があれば（ステップＳ２６：Ｙｅｓ）、ステップＳ２３に戻って以降の処理を繰返す。また、次の画素がなければ（ステップＳ２６：Ｎｏ）、処理を終了する。
【００９２】
以上説明したように、本実施の形態における画像処理装置によれば、パターンマッチング処理によって画像データを所定の画素値に置き換え、データ取り出しのフィルタ処理によってデータ画素位置に対して所定の範囲内から検索して埋め込まれたデータを取り出すようにしたので、画像をスキャンするときに紙が少し浮いているなどの理由により、画素の間隔が若干変動する場合であっても、データを正しく検出することが可能となった。
【００９３】
また、パターンマッチングによる検出処理、縮小フィルタによる縮小処理、データ取り出し処理は何れもフィルタ処理が可能であり、フィルタサイズに応じたライン分のラインバッファを設けるだけで処理が行えるようになり、少ない回路規模でハードウェア化を行うことが可能となった。
【００９４】
また、データ取り出しのフィルタ処理をソフトウェアで実現する場合でも、注目画素がデータ取り出し用基準画素の場合にのみデータ取り出し処理を行えばよいため、データ取り出しのための位置決めなどが不要となり、埋め込まれたデータの検出を高速に行うことが可能となった。
【００９５】
（第２の実施の形態）
本発明の第２の実施の形態における画像処理装置は、第１の実施の形態における画像処理装置と比較して、画像データが傾いてスキャンされた場合の処理である点が異なる。したがって、重複する構成及び機能の詳細な説明は繰返さない。
【００９６】
なお、本実施の形態においては、スキャン画像の傾きが既知の方法、たとえば傾き検知用基準マークを利用した方法などによって、予め判っているものとして説明する。
【００９７】
図１９は、スキャン画像が傾いているときに用いられる標準パターンの一例を示す図である。図１９（ａ）は、データ“０”の標準パターンを示している。また、図１９（ｂ）は、データ“１”の標準パターンを示している。また、図１９（ｃ）は、データ取り出し用基準パターンの標準パターンを示している。
【００９８】
図１９に示すように，スキャン画像の傾きにより、標準パターンの画素数が２１×２１となっている。パターン検出部５２は、印刷物４３のスキャン画像を１画素ずつ左右方向及び上下方向にずらしながら、２１×２１画素の入力パターンを抽出して、図２１に示す標準パターンとのパターンマッチングを行うことにより、画像データを上述の画素値に置き換える。
【００９９】
なお、スキャン画像の傾きに応じた複数の標準パターンが予め用意されており、検出されたスキャン画像の傾きに応じて、複数の標準パターンの中から最適なものが選択されて利用される。
【０１００】
図２０は、スキャン画像が傾いている場合において、パターン検出部５２によって画素値に置き換えられた後の画像データの一例を示す図である。図２０に示すように、画像データに埋め込まれたデータが全体的に傾いて画素値“０”〜“３”に置き換えられる。
【０１０１】
なお、縮小処理部５３による縮小フィルタ処理を行っても、図２０は、データ０画素及びデータ１画素がフィルタ処理によって全体的に傾いたまま縮小される。
【０１０２】
図２１は、スキャン画像が傾いている場合において、データを取り出すときの処理を説明するための図である。図２１の左上に示すように、スキャン画像の傾きに応じて傾いたデータ取り出し用フィルタ７４が用いられ、フィルタの中央の注目画素がデータ取り出し用基準画素のときに、その周辺の２４ヶ所をそれぞれ中心とする所定範囲内からデータが取り出される（図２２参照）。
【０１０３】
図２２は図１５に示したデータ取り出し用フィルタを傾けた例である。
【０１０４】
（画像処理のＨ／Ｗ化）
図２３は、フィルタ処理のハードウェア構成の一例を示す図である。このフィルタは、図２２に示すデータ取り出し用フィルタに対応しており、１０４のラインバッファ１〜１０４と、１０５のシフトレジスタ群と、フィルタ処理演算回路とを含む。
【０１０５】
ラインバッファ１〜１０４は、それぞれ画像データの１ライン分のデータを保持する。このデータ取り出し用フィルタは、１０５×１０５画素のデータに対してフィルタ処理を行うものであるが、１番上のラインのデータは直接シフトレジスタ群に入力されるため、そのラインに対応するラインバッファは設けられていない。
【０１０６】
シフトレジスタ群は、それぞれ横方向の１０５画素分のデータを順次シフトするものであり、図示しないクロックに同期して１画素ずつデータがシフトされる。
【０１０７】
フィルタ処理演算回路は、シフトレジスタ群に保持される１０５×１０５画素分のデータに対して、図１０における取出工程で説明したデータ取り出しの処理を行う。
【０１０８】
このように、画像メモリとしてフィルタサイズ分のラインバッファを設けるだけでフィルタ処理が行えるため、ハードウェア化を容易に行うことが可能となる。
【０１０９】
また、パターン検出部５２のフィルタも同様の構成で実現でき、２５×２５画素のデータを保持するために画像データとして２４ライン分のラインバッファを設けるだけでマターンマッチング処理が行えるようになる。また、縮小処理部５３の縮小フィルタも同様の構成で実現でき、画像データとして２ライン分のラインバッファを設けるだけで縮小処理が行えるようになる。
【０１１０】
図２４は、本発明の第２の実施の形態における画像処理装置をハードウェアで構成した場合におけるパイプライン処理を説明するための図である。スキャン画像の傾き角度が最大の場合には、パターン検出部５２のフィルタは２５×２５のサイズとなり２４ライン分のラインバッファによって構成されるため、２４ライン分の遅延が発生する。
【０１１１】
したがって、データ取出部５４がデータの取り出し処理を開始するまでに２４ライン分の遅延が発生する（但し、図１３（ａ）の縮小フィルタ処理を行う場合にはさらに２ライン分の遅延が加わる）。
【０１１２】
このように、遅延分のラインバッファを設ける形で、パイプライン処理に対応したハードウェア化を行うことができる。
【０１１３】
以上説明したように、本実施の形態における画像処理装置によれば、スキャン画像の傾きに対応して傾けたフィルタを用いるようにしたので、フィルタ処理を高速に行うことが可能となった。
【０１１４】
また、パターン検出部５２、縮小処理部５３及びデータ取出部５４をハードウェアで構成した場合には、パイプライン処理が行えるようになるため、処理速度を大幅に向上させることが可能となった。
【０１１５】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【０１１６】
【図１】本発明の第１の実施の形態における画像処理装置のシステム構成の一例を示す図である。
【図２】図１に示す画像処理装置をより機能的に説明するための図である。
【図３】本発明の第１の実施の形態における画像処理装置のシステム構成の他の一例を示す図である。
【図４】本発明の第１の実施の形態における画像処理装置の処理の概略を説明するためのフローチャートである。
【図５】ビットデータを埋め込むときのドットパターンを示す図である。
【図６】埋め込みデータの一例を示す図である。
【図７】図６に示す埋め込みデータが実際にプリントアウトされるときのドットパターンを示す図である。
【図８】画像データの背景にデータを埋め込んで印刷したときのプリントアウトの一例を示す図である。
【図９】図１または図３に示す画像処理装置の機能的構成を示すブロック図である。
【図１０】図４に示すステップＳ１２の詳細な処理手順を説明するためのフローチャートである。
【図１１】標準パターンを説明するための図である。
【図１２】パターン検出部５２によって画素値に置き換えられた後の画像データの一例を示す図である。
【図１３】縮小処理に用いられるフィルタの一例（ａ）、及び基準パターンを基準画素値に置き換えた後の基準画素の位置範囲の一例（ｂ）を示す図である。
【図１４】縮小処理を行った後の画像データを示す図である。
【図１５】データ取出部５４がデータを取り出す際に用いるフィルタの一例を示す図である。
【図１６】図１５に示すフィルタによってデータを取り出すときの処理を説明するための図である。
【図１７】図１６の一部の拡大図である。
【図１８】データ取出部５４がデータを取り出す際に用いるフィルタの他の一例を示す図である。
【図１９】スキャン画像が傾いているときに用いられる標準パターンの一例を示す図である。
【図２０】スキャン画像が傾いている場合において、パターン検出部５２によって画素値に置き換えられた後の画像データの一例を示す図である。
【図２１】スキャン画像が傾いている場合において、データを取り出すときの処理を説明するための図である。
【図２２】スキャン画像が傾いているときに用いられるデータ取り出し用フィルタの一例を示す図である。
【図２３】縮小処理部５３のハードウェア構成の一例を示す図である。
【図２４】本実施形態に係る画像処理装置をハードウェアで構成した場合におけるパイプライン処理を説明するための図である。
【符号の説明】
【０１１７】
１１  マウス
１２  キーボード
１３  モニタ
１４  外部記憶装置
１５  スキャナ
１６  ＰＣ
１７  画像処理プログラム
２１  ユーザ指示
２２  画像データ表示
２３  スキャン画像
２４  入出力インタフェース
２５  ＣＰＵ／メモリ
２６  記憶装置
２７  ＯＳ
２８  画像処理部
３１  操作パネル部
３２  スキャナ部
３３  プリンタ部
３４  ＭＦＰ本体
４１  画像データ
４２  埋め込みデータ
４３  印刷物
４４  スキャン画像データ
５１  画像読取部
５２  パターン検出部
５３  縮小処理部
５４  データ取出部
【図１】
2008211299.tif 000003
【図２】
2008211299.tif 000004
【図３】
2008211299.tif 000005
【図４】
2008211299.tif 000006
【図５】
2008211299.tif 000007
【図６】
2008211299.tif 000008
【図７】
2008211299.tif 000009
【図８】
2008211299.tif 000010
【図９】
2008211299.tif 000011
【図１０】
2008211299.tif 000012
【図１１】
2008211299.tif 000013
【図１３】
2008211299.tif 000014
【図１５】
2008211299.tif 000015
【図１８】
2008211299.tif 000016
【図１９】
2008211299.tif 000017
【図２２】
2008211299.tif 000018
【図２３】
2008211299.tif 000019
【図２４】
2008211299.tif 000020
【図１２】
2008211299.tif 000021
【図１４】
2008211299.tif 000022
【図１６】
2008211299.tif 000023
【図１７】
2008211299.tif 000024
【図２０】
2008211299.tif 000025
【図２１】
2008211299.tif 000026