(57)【特許請求の範囲】
【請求項１】
電子透かしが埋め込まれた印刷物が撮像装置により撮影されることで得られた画像を入力する入力手段と、
前記印刷物の撮影時における前記撮像装置の前記印刷物に対する移動方向に関する情報を取得する取得手段と、
前記取得手段により取得された情報と、前記入力手段により入力された画像の一部の領域における、方向性を有する画像特性に基づいて、当該一部の領域に埋め込まれた電子透かしに対応する符号を決定する決定手段とを有し、
前記印刷物には、所定の方向の前記画像特性により所定の符号が埋め込まれた印刷対象の画像が印刷され、
前記決定手段は、前記取得手段により取得された情報に基づき、前記一部の領域に埋め込まれた符号として前記所定の符号を決定するか否かが前記移動方向に応じて変更されるように、前記電子透かしに対応する符号を決定することを特徴とする画像処理装置。
【請求項２】
前記入力手段は、前記印刷物における異なる複数の領域が連続撮影されることで得られた複数の画像を入力し、前記決定手段は、当該複数の画像のそれぞれにおける一部の領域に対応する符号を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記取得手段は、前記撮像装置が備えるセンサによる検知結果に基づく、前記撮像装置の移動方向に関する情報を取得することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記方向性を有する画像特性は周波数特性であり、
前記決定手段は、前記一部の領域が所定の周波数より高い周波数成分を含む場合、当該周波数成分に基づく符号を決定し、当該一部の領域が当該所定の周波数よりも高い周波数成分を含まない場合、前記取得手段により取得された情報に基づく符号を決定することを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記方向性を有する画像特性は周波数特性であり、
前記電子透かしが埋め込まれる画像の高周波成分を変調させることにより、前記電子透かしとして情報が前記印刷物に埋め込まれていることを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記電子透かしとして第１の符号が埋め込まれる場合、画像の二次元の周波数領域における第１の方向の高周波成分が変調され、前記電子透かしとして第２の符号が埋め込まれる場合、前記周波数領域における第２の方向の高周波成分が変調されることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記決定手段は、
前記入力手段により入力された画像の一部の領域に含まれる高周波成分が前記第１の方向において変調されている場合、当該一部の領域に埋め込まれた電子透かしに対応する符号として前記第１の符号を決定し、当該一部の領域において前記第２の方向の周波数成分が変調されている場合、前記第２の符号を決定し、
前記一部の領域において、前記第１の方向に対応する高周波成分が含まれておらず、且つ、前記第２の方向に対応する高周波成分が変調されておらず、且つ、前記取得手段により取得された情報により前記撮像装置の移動方向として前記第１の方向に対応する第１の移動方向が特定された場合、前記第１の符号を決定し、
前記一部の領域において、前記第２の方向に対応する高周波成分が含まれておらず、且つ、前記第１の方向に対応する高周波成分が変調されておらず、且つ、前記取得手段により取得された情報により前記撮像装置の移動方向として前記第２の方向に対応する第２の移動方向が特定された場合、前記第２の符号を決定することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記入力手段により入力された画像に含まれる前記印刷物と前記撮像装置により撮影された画像との間の幾何学的ずれを検出する検出手段をさらに有することを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
前記決定手段は、前記検出手段により検出される幾何学的なずれと前記撮像装置に内蔵され前記撮像装置の動きを検出するセンサからの情報とに基づいて、前記入力手段により入力された画像の前記画像特性がどのように変化するかを予測し、当該予測に基づいて前記符号を決定することを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記決定手段は、画像特性に基づくフィルタを前記入力手段により入力された画像に対して適用することにより前記画像特性を取得することを特徴とする請求項１乃至９のいずれか１項に記載の画像処理装置。
【請求項１１】
前記取得手段は、前記画像のぶれに関する情報を取得することを特徴とする請求項１乃至１０のいずれか１項に記載の画像処理装置。
【請求項１２】
前記決定手段は、前記取得手段により取得された情報と、前記画像特性と、さらに前記撮像装置の撮影条件とに基づいて、前記符号を決定することを特徴とする請求項１乃至１１のいずれか１項に記載の画像処理装置。
【請求項１３】
前記決定手段は、特定の帯域ごとのパワーに関連した情報を前記画像特性として、当該情報に基づいて前記符号を決定することを特徴とする請求項１乃至１２のいずれか１項に記載の画像処理装置。
【請求項１４】
前記情報は、前記特定の帯域ごとのパワーの偏り度合いに関連した情報であることを特徴とする請求項１３に記載の画像処理装置。
【請求項１５】
前記情報は、前記特定の帯域ごとのパワーの減衰度合いに関連した情報であることを特徴とする請求項１３に記載の画像処理装置。
【請求項１６】
前記撮像装置を内蔵することを特徴とする請求項１乃至１５のいずれか１項に記載の画像処理装置。
【請求項１７】
請求項１乃至１６のいずれか１項に記載の画像処理装置の各手段としてコンピュータを機能させるプログラム。
【請求項１８】
請求項１乃至１６のいずれか１項に記載の画像処理装置を含む画像処理システムであって、
前記所定の方向の前記画像特性により電子透かしに対応する符号として前記所定の符号を印刷対象の画像に埋め込む埋め込み手段と、
前記埋め込み手段による前記所定の符号の埋め込みにより電子透かしを含む前記印刷対象の画像を印刷装置に印刷させる印刷制御手段と、をさらに有し、
前記入力手段は、前記印刷制御手段により前記印刷装置が印刷した印刷物が撮像装置により撮影されることで得られた画像を入力することを特徴とする画像処理システム。
【請求項１９】
前記画像処理装置とは異なる装置が、前記埋め込み手段と前記印刷制御手段を有することを特徴とする請求項１８に記載の画像処理システム。
【請求項２０】
電子透かしが埋め込まれた印刷物が撮像装置により撮影されることで得られた画像を入力する入力工程と、
前記印刷物の撮影時における前記撮像装置の前記印刷物に対する移動方向に関する情報を取得する取得工程と、
前記取得工程において取得された情報と、前記入力工程において入力された画像の一部の領域における、方向性を有する画像特性に基づいて、当該一部の領域に埋め込まれた電子透かしに対応する符号を決定する決定工程とを有し、
前記印刷物には、所定の方向の前記画像特性により所定の符号が埋め込まれた印刷対象の画像が印刷され、
前記決定工程では、前記取得工程において取得された情報に基づき、前記一部の領域に埋め込まれた符号として前記所定の符号を決定するか否かが前記移動方向に応じて変更されるように、前記電子透かしに対応する符号を決定することを特徴とする画像処理方法。
【請求項２１】
前記所定の方向の前記画像特性により電子透かしに対応する符号として前記所定の符号を印刷対象の画像に埋め込む埋め込み工程と、
前記埋め込み工程による符号の埋め込みにより電子透かしを含む前記印刷対象の画像を印刷装置に印刷させる印刷制御工程と、をさらに有し、
前記入力工程では、前記印刷制御工程により前記印刷装置が印刷した印刷物が撮像装置により撮影されることで得られた画像を入力することを特徴とする請求項２０に記載の画像処理方法。
【請求項２２】
前記埋め込み工程と前記印刷制御工程が第１の装置により実行され、前記入力工程と前記取得工程と前記決定工程が前記第１の装置とは異なる第２の装置により実行されることを特徴とする請求項２１に記載の画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置、プログラム、画像処理システム、及び、画像処理方法に関し、特に、画像にその画像情報とは別の情報、例えば、音声情報やテキスト文書情報、画像に関する諸情報などを付加情報として埋め込んだ印刷物からその付加情報を読出し処理する技術に関する。
【背景技術】
【０００２】
印刷物中に視覚的に目立たぬように（以下、不可視）情報を埋め込む技術が以前から提案されている。電子透かしやステガノグラフィと称されるこの技術は昨今急速に発展してきている。
【０００３】
特許文献１は、印刷物中に視覚的に見えている画像情報とは別の多重化情報を埋め込む方法と、この印刷物をスキャナ（イメージスキャナ）を用いて入力した情報から多重化されている付加情報を取り出す方法とを開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−３４８３２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１では以下のような問題がある。
【０００６】
カメラ付き携帯電話やスマートフォンを手持ちで撮影位置をずらしながら正確に複数回の撮影をすることは非常に困難である。ユーザが手軽に撮影するには、カメラを手で移動させながら自動的に所定時間毎にシャッタが下りる設定（連射モード）や、動画撮影モードを実行させるのが好ましい。ただ、この場合には手持ちしたカメラの移動と固定の印刷物との相対速度の影響で、取得した撮影画像がぶれてしまい、その為に埋め込まれた付加情報を取り出すことができなくなるという可能性がある。
【０００７】
本発明は上記従来例に鑑みてなされたもので、ユーザがカメラなどの撮像機器を手持ちで動かしながら撮影しても印刷物に埋め込まれた電子透かしを正確に読取ることが可能な画像処理装置、プログラム、画像処理システム、及び、画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために本発明の画像処理装置は次のような構成からなる。
【０００９】
即ち、電子透かしが埋め込まれた印刷物が撮像装置により撮影されることで得られた画像を入力する入力手段と、前記印刷物の撮影時における前記撮像装置の前記印刷物に対する移動方向に関する情報を取得する取得手段と、前記取得手段により取得された情報と、前記入力手段により入力された画像の一部の領域における、方向性を有する画像特性に基づいて、当該一部の領域に埋め込まれた電子透かしに対応する符号を決定する決定手段とを有し、前記印刷物には、所定の方向の前記画像特性により所定の符号が埋め込まれた印刷対象の画像が印刷され、前記決定手段は、前記取得手段により取得された情報に基づき、前記一部の領域に埋め込まれた符号として前記所定の符号を決定するか否かが前記移動方向に応じて変更されるように、前記電子透かしに対応する符号を決定することを特徴とする。
【発明の効果】
【００１０】
従って本発明によれば、ユーザがカメラなどの撮像機器を手持ちで移動させながら印刷物を撮影して得られる画像にぶれが生じても、印刷物に埋め込まれている電子透かしを正確に読み取ることができるという効果がある。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態である画像処理システムの構成を示すブロック図である。
【図２】図１に示す付加情報多重化装置１０２の詳細な構成を示すブロック図である。
【図３】誤差拡散部２００の詳細を表すブロック図である。
【図４】誤差拡散処理の処理全体概要を示すフローチャートである。
【図５】水平画素数がＷＩＤＴＨ、垂直画素数がＨＥＩＧＨＴから成る１つ画像を示す図である。
【図６】量子化条件Ａ、Ｂの例を示す図である。
【図７】第１の実施形態に従う付加情報分離装置の構成を示すブロック図である。
【図８】撮影画像に含まれる印刷物との関係を示した図である。
【図９】付加情報分離装置に用いられる空間フィルタの例を示す図である。
【図１０】第１の実施形態の処理概略を二次元の周波数領域で示した図である。
【図１１】間引き部Ａと間引き部Ｂと変換値加算部と分散値算出部と判定部とが実行する付加情報の復号化動作を示すフローチャートである。
【図１２】、
【図１３】ブロックサイズをＰ＝Ｑ＝１６とした時の間引き方法をテーブル形式で示した図である。
【図１４】連続撮影の様子を示す模式図である。
【図１５】連続撮影の処理を示すフローチャートである。
【図１６】水平方向の画像ぶれを周波数空間で表現した図である。
【図１７】理想状態から乖離した状態での間引き部、加算部、判定部の動作手順を示すフローチャートである。
【図１８】第２の実施形態に従う付加情報分離装置の構成を示すブロック図である。
【図１９】基準ブロックの例を示す図である。
【図２０】２つの特徴量算出部から出力される分散値に基づいて符号を決定する処理を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下添付図面を参照して本発明の実施形態について、さらに具体的かつ詳細に説明する。ただし、この実施形態に記載されている構成要素の相対配置等は、特定の記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１３】
なお、この明細書において、「記録」（「プリント」という場合もある）とは、文字、図形等有意の情報を形成する場合のみならず、有意無意を問わない。さらに人間が視覚で知覚し得るように顕在化したものであるか否かも問わず、広く記録媒体上に画像、模様、パターン等を形成する、または媒体の加工を行う場合も表すものとする。
【００１４】
また、「記録媒体」とは、一般的な記録装置で用いられる紙のみならず、広く、布、プラスチック・フィルム、金属板、ガラス、セラミックス、木材、皮革等、インクを受容可能なものも表すものとする。
【００１５】
さらに、以下説明する実施形態に従う画像処理装置には、付加情報を印刷物に埋め込む付加情報多重化装置と、その付加情報を印刷物から読取る付加情報分離装置とがある。付加情報多重化装置としては、プリンタエンジンへ出力すべき画像情報を生成するコンピュータ内のプリンタドライバソフト又はアプリケーションソフトとして内蔵することが効率的である。しかしながら、複写機、ファクシミリ、プリンタ本体等にハードウエア、及びソフトウエアとして内蔵することも効果がある。一方、付加情報分離装置としては、カメラ付携帯電話、カメラ付スマートフォンやタブレットＰＣなどが挙げられる。以下、こうした撮像機能が搭載されたデバイスをカメラ付携帯端末と呼ぶ。一方、付加情報分離装置としては、例えば、デジタルスチールカメラで撮影した画像をコンピュータ内のアプリケーションソフトで付加情報を分離する一連の装置でもよい。
【００１６】
＜第１の実施形態＞
図１は本発明の第１の実施形態に従う画像処理システムの構成を示すブロック図である。図１において、入力端子１００からは多階調の画像情報が、入力端子１０１からは画像情報の中に埋め込むべき必要な付加情報が入力される。この付加情報は、入力端子１００にて入力される画像情報とは別の情報、例えば、音声情報や動画情報、テキスト文書情報、入力端子１００にて入力される画像に関する著作権、撮影日時、撮影場所、撮影者等の諸情報、全く別の画像情報等が考えられる。
【００１７】
付加情報多重化装置１０２は、人間が視覚的に判別しづらいように、画像情報中に付加情報を埋め込む装置である。付加情報多重化装置１０２は、付加情報の多重化とともに入力した多階調の画像情報の量子化処理も実行する。プリンタ１０３は付加情報多重化装置１０２で生成された情報を入力し、これを内蔵するプリンタエンジンから付加情報が多重化された画像を出力する。プリンタ１０３は、インクジェット方式を採用するプリンタエンジンや電子写真方式を採用するプリンタエンジンなどを用いることができ、いずれのプリンタエンジンを用いても疑似階調処理ににより階調表現を実現している。
【００１８】
プリンタ１０３から出力された印刷物は、カメラ付携帯端末１０４の撮像センサ１０５を用いてその印刷物上の情報を読取り、付加情報分離装置１０６によりその印刷物中に埋め込まれた付加情報を分離し、出力端子１０７から出力する。出力端子１０７は取得した付加情報を出力するインタフェースであり、例えば、付加情報が音声情報であればカメラ付携帯端末１０４のスピーカ１０８への出力、画像情報であればディスプレイ１０９への出力とする。また、そのインタフェースは外部デバイスへデータを出力するインタフェースでも構わない。また、カメラ付携帯端末１０４に複数の撮像センサがある場合、印刷物の撮影は第２撮像センサ１１１で行ってもよい。
【００１９】
図２は図１に示す付加情報多重化装置１０２の詳細な構成を示すブロック図である。
【００２０】
付加情報多重化装置１０２の誤差拡散部２００は、入力端子１００より入力された画像情報を誤差拡散法を用いた疑似階調処理することによって、入力階調数よりも少ない量子化レベルに変換し、複数画素の量子化値によって面積的に階調性を表現する。誤差拡散処理についての詳細は後述する。
【００２１】
ブロック化部２０１は、入力された画像情報を所定領域単位に区分する。ブロック化部２０１により行われるブロック化は矩形でも良いし、矩形以外の領域に区分しても良い。量子化条件制御部２０２は、ブロック化部２０１にてブロック化した領域単位で量子化条件を変更、制御する。量子化条件制御部２０２は、入力端子１０１で入力された付加情報に基づき、ブロック単位で量子化条件を制御する。
【００２２】
制御部２１０は、ＣＰＵ２１１、ＲＯＭ２１２、ＲＡＭ２１３などから構成される。ＣＰＵ２１１は、ＲＯＭ２１２に保持された制御プログラムに従って、上述した各構成の動作や処理を制御する。ＲＡＭ２１３は、ＣＰＵ２１１の作業領域として使用される。
【００２３】
図３は誤差拡散部２００の詳細を表すブロック図である。なお、誤差拡散処理は公知なので、その説明は省略する。
【００２４】
ここで、量子化値が２値である誤差拡散処理を例にして説明する。
【００２５】
加算器３００では、入力された画像情報の注目画素値と既に２値化された周辺画素の分配された量子化誤差が加算される。量子化条件制御部２０２からの量子化閾値と誤差の加算された加算結果とを比較部３０１にて比較し、所定の閾値よりも大きい場合には“１”を、それ以外では“０”を出力する。例えば、８ビットの精度で画素の階調を表現する場合には、最大値“２５５”と最小値“０”で表現するのが一般的である。
【００２６】
いま、量子化値が“１”の時に、記録媒体上にドット（インク、トナー等）が記録されると仮定する。減算器３０２は量子化結果と前述した加算結果との誤差を算出し、誤差配分演算部３０３に基づいて、今後の量子化処理が施される周辺画素に誤差を配分する。
【００２７】
誤差の配分割合は注目画素との相対的な距離に基づいて実験的に設定された誤差の配分テーブル（誤差拡散マトリクス）３０４を予め備え、配分テーブル３０４に記された配分割合に基づいて誤差を分配する。図３に示す配分テーブル３０４は、周囲４画素分の配分テーブルを示しているが、これに限るものではない。
【００２８】
次に、量子化条件制御部２０２を含む誤差拡散処理全体の動作手順について、フローチャートを参照して説明する。
【００２９】
図４は誤差拡散処理の処理全体概要を示すフローチャートである。いま、量子化値は２値である例について説明する。
【００３０】
ステップＳ４０１では、変数ｉを“０”に初期化する。変数ｉは垂直方向のアドレスをカウントする変数である。ステップＳ４０２では、変数ｊを“０”に初期化する。変数ｊは水平方向のアドレスをカウントする変数である。続いて、ステップＳ４０３では、現在の処理アドレスである変数（ｉ、ｊ）示す座標が多重化処理を実行すべき領域に属しているか否かを判定する。
【００３１】
ここで、その多重化領域について図面を参照して説明する。
【００３２】
図５は水平画素数がＷＩＤＴＨ、垂直画素数がＨＥＩＧＨＴから成る１つ画像を示す図である。いま、この画像に付加情報を多重化すると仮定する。
【００３３】
図５に示す画像の左上を原点とし、横方向にＮ画素、縦方向にＭ画素の矩形を単位にしてブロック化する。この実施形態では、原点を基準点としてブロック化を行うが、原点から離れた点を基準点として設定しても良い。さて、この画像中に最大限の情報を多重化する場合に、Ｎ×Ｍ画素のブロックを基準点から配置していく。即ち、水平方向に配置可能なブロック数をＷ、垂直方向に配置可能なブロック数をＨとすると、以下の関係が得られる。即ち、
Ｗ＝ＩＮＴ（ＷＩＤＴＨ／Ｎ）    ……（１）
Ｈ＝ＩＮＴ（ＨＥＩＧＨＴ／Ｍ）  ……（２）
の関係である。ここで、ＩＮＴ（  ）は（   ）内の整数部分を示す。
【００３４】
式（１）、式（２）において割り切れない剰余画素数が、Ｎ×Ｍ画素のブロックを複数配置した時の端部に相当し、これが符号多重化領域外となる。
【００３５】
図４に戻って説明を続けると、ステップＳ４０３において、現在処理している注目画素が多重化領域外にあると判定された場合、処理はステップＳ４０４に進み、量子化条件Ｃが設定される。これに対して、その注目画素が多重化領域内にあると判定された場合、処理はステップＳ４０５に進み、多重化すべき付加情報を読み込む。ここでは、説明を容易にする為に、付加情報をｃｏｄｅ［  ］という配列を用いて、各１ビットずつ表現するものとする。例えば、付加情報を４８ビット分の情報と仮定すると、配列ｃｏｄｅ［  ］はｃｏｄｅ［０］からｃｏｄｅ［４７］まで、各１ビットずつが格納されている。
【００３６】
ステップＳ４０５では、変数ｂｉｔは、以下のように配列ｃｏｄｅ［  ］内の情報を代入する。即ち、
ｂｉｔ＝ｃｏｄｅ［ＩＮＴ（ｉ／Ｍ）×Ｗ＋ＩＮＴ（ｊ／Ｎ）］  ……（３）
である。
【００３７】
続いて、ステップＳ４０６では代入した変数ｂｉｔの値が“１”であるか否かを判定する。前述のように、配列ｃｏｄｅ［  ］内の情報は各１ビットずつ格納されている為、変数ｂｉｔの値も“０”か“１”かの何れかを示すことになる。ステップＳ４０６において、変数ｂｉｔの値が“０”と判定された場合、処理はステップＳ４０７に進み量子化条件Ａを設定し、“１”と判定された場合、処理はステップＳ４０８に進み量子化条件Ｂを設定する。
【００３８】
次にステップＳ４０９では、設定された量子化条件に基づいて量子化処理を実行する。この量子化処理は、図３を参照して説明した誤差拡散法に基づく量子化処理である。続いて、ステップＳ４１０では水平方向の変数ｊを＋１カウントアップし、ステップＳ４１１では、変数ｊの値が画像の水平画素数であるＷＩＤＴＨ未満か否かを判定し、処理画素数がＷＩＤＴＨになるまで前述の処理を繰り返す。また、ｊ≧ＷＩＤＴＨとなり、水平方向の処理がＷＩＤＴＨ画素数分終了したと判定すると、処理はステップＳ４１２に進み、垂直方向の変数ｉを＋１カウントアップする。
【００３９】
ステップＳ４１３ては変数ｉの値が画像の垂直画素数であるＨＥＩＧＨＴ未満か否かを判定し、処理画素数がＨＥＩＧＨＴになるまで前述の処理を繰り返す。また、ｉ≧ＨＥＩＧＨＴと判定されれば処理を終了する。
【００４０】
以上の処理により、Ｎ×Ｍ画素よりなるブロック単位で、量子化条件を変更することが可能になる。
【００４１】
続いて、量子化条件Ａ、Ｂ、Ｃの例について説明する。
【００４２】
誤差拡散法における量子化条件は様々な因子があるが、第１の実施形態では量子化条件は、量子化閾値とする。量子化条件Ｃの使用は、多重化領域外である為に、量子化閾値は何でも良い。前述のように、１画素８ビットによる階調表現で、量子化レベルが２値の場合には、最大値“２５５”と最小値“０”が量子化代表値となるが、その中間値“１２８”を量子化閾値として設定することが多い。即ち、量子化条件Ｃでは、量子化閾値を“１２８”に固定する条件にする。
【００４３】
量子化条件Ａ、量子化条件Ｂの使用は多重化領域内のブロックである為、量子化条件の違いによる画質の違いを生じさせなければならない。但し、画質の違いは視覚的には判別しにくいように表現し、かつ、記録媒体上から容易に識別できなくてはならない。
【００４４】
図６は量子化条件Ａ、Ｂの例を示す図である。
【００４５】
図６（ａ）は量子化条件Ａにおける量子化閾値の変化の周期を示した図である。図６（ａ）において、１つのマスを１画素分とし、白いマスは固定閾値、灰色のマスを変動閾値とする。即ち、図６（ａ）に示す例では、横方向に８画素、縦方向に４画素のマトリクスを構成し、灰色のマスの閾値のみ突出した値を閾値として設定する。
【００４６】
これに対して、図６（ｂ）は量子化条件Ｂにおける量子化閾値の変化の周期を示した図である。図６（ｂ）に示す例では、図６（ａ）とは異なり、横方向に４画素、縦方向に８画素のマトリクスを構成し、灰色のマスの閾値のみ突出した値を閾値として設定する。
【００４７】
前述のように１画素が８ビットの階調値の場合に、一例として、固定閾値として“１２８”、突出した閾値を“１０”と設定する。量子化閾値が低くなると、注目画素の量子化値が“１”（量子化代表値“２５５”）になりやすくなる。即ち、図６（ａ）と図６（ｂ）ともに、図中の灰色のマスの並びで量子化値“１”が並びやすくなる。言い換えると、Ｎ×Ｍ画素のブロック毎に、図６（ａ）の灰色のマスの並びでドットが発生するブロックと、図６（ｂ）の灰色のマスの並びでドットが発生するブロックとが混在することになる。
【００４８】
誤差拡散法においては量子化閾値の多少の変更は画質に大きな影響を及ぼさない。組織的ディザ法においては、使用するディザパターンによって、階調表現の画質が大きく左右される。しかし、前述したように、規則的に量子化閾値の変化を与えた誤差拡散法では、あくまでも画質を決定する階調表現は誤差拡散である。そのため、ドットの並びが多少変化したり、テクスチャの発生が変化したりするなどの微小な変化があっても、階調表現の画質にはほとんど影響を与えない。それは、量子化閾値が変化した場合でも、あくまでも画像信号値と量子化値との差分となる誤差は周囲画素に拡散される為、入力された画像信号値はマクロ的に保存される。即ち、誤差拡散法を用いた場合には、ドットの並び、テクスチャの発生に関しては冗長性が非常に大きいことになる。
【００４９】
ところで、上記の例では、誤差拡散法の量子化閾値に符号を表す所定の周期性を重畳することにより多重化を実現してきたが、以下の方式も考えられる。即ち、
・直接ＲＧＢの輝度情報に周期性を重畳する方式
・ＲＧＢの輝度情報を輝度−色差情報（例えば、ＹＣｒＣｂ信号）に分離して周期性を多重化する方式
・ＲＧＢの輝度情報をインク色（例えば、ＣＭＹＫ信号）に分離して周期性を多重化する方式
などである。
【００５０】
以上のようにこの実施形態では、ステップＳ４０６〜Ｓ４０８における処理により、付加情報を示すビットデータ（「ビット＝０」または「ビット＝１」）が量子化条件Ａ、Ｂに対応づけられる。そしてステップＳ４０９において、ビットデータに対応付けられた量子化処理が行われることで、画像情報がプリンタにより印刷される。即ち、上記の量子化処理において量子化条件Ａ、Ｂのどちらが使用されているかにより、ビットが「０」であるか、「１」であるか表現することができる。よって付加情報を示すビットデータ「０」または「１」に従って量子化条件Ａ、Ｂを切り替えて量子化を行い、画像情報を印刷することで、当該付加情報を多重化することができる。
【００５１】
カメラ付携帯端末１０４は、上記の画像情報が印刷されている印刷用紙を撮影し、撮影画像を解析する。その解析により、その上記の画像情報で使用された量子化条件が量子化条件Ａであるのか、量子化条件Ｂであるのか判断する。この判断を繰り返すことで決定された量子化条件ＡまたはＢを示す情報をビット列に変換することにより、上記の付加情報を再現することができる。
【００５２】
以下、カメラ付携帯端末１０４による、撮影画像の解析、量子化条件の判断、及び付加情報の再現について説明する。
【００５３】
次に、図１に示した画像処理システムにおける付加情報分離装置１０６について説明する。
【００５４】
図７は付加情報分離装置１０６の構成を示すブロック図である。
【００５５】
なお、説明を容易にする為に、前述した付加情報多重化装置１０２の例と同様、分割したブロック内に各１ビットずつの付加情報が多重化されている印刷物から、付加情報を分離する例について説明する。当然、付加情報多重化装置における１ブロックあたりの付加情報量と、付加情報分離装置における１ブロックあたりの分離情報量は等しくなる。
【００５６】
図７に示すように、入力端子７００からは、カメラ付携帯端末１０４で読み込まれた画像情報が入力される。使用するカメラ付携帯端末１０４の撮像センサ１０５の解像度は、印刷物を記録するプリンタ１０３の解像度と同等以上が好ましい。当然、正確に印刷物のドットの点在情報を読み込む為には、サンプリング定理により、撮像センサ側はプリンタ側よりも２倍以上の解像度が必要になる。しかし、同等以上であれば、正確でなくとも、ある程度ドットが点在しているのを判別することは可能である。従って、第１の実施形態では、説明を容易にするためにプリンタの解像度と撮像センサ１０５の解像度が同一解像度と想定する。
【００５７】
幾何学的ずれ検出部７０１は、カメラ付携帯端末１０４で撮影した画像の幾何学的ずれ（撮影画像における印刷物の傾き等）を検出する。当然、プリンタ１０３の出力とカメラ付携帯端末１０４の撮影を経ている為に、入力端子７００から入力される画像情報は、プリンタ１０３による出力以前の画像情報とは幾何学的に大きくずれている場合がある。そこで、幾何学的ずれ検出部７０１では印刷物と印刷物以外の境界線をエッジ検出する。
【００５８】
図８は撮影画像に含まれる印刷物との関係を示した図である。
【００５９】
いま、プリンタ解像度と撮像センサ解像度が同一であれば、プリンタが記録媒体に記録する時に生じた記録媒体の斜行やカメラ付携帯端末１０４を印刷物にかざす時のずれ等による画像の回転（傾き）が補正すべき大きな要因となる。そのため、この印刷物の境界線を検出することにより、どの程度印刷物が回転してずれが生じているかが判断できる。
【００６０】
さて、入力端子７２０はカメラ付携帯端末１０４に搭載されているセンサ（ジャイロセンサ（角速度センサ）や加速度センサ）からのカメラの移動に関する情報を入力する。動きベクトル推測部７３０では、入力端子７２０からのカメラ付携帯端末１０４の機器本体の移動ベクトルと、幾何学的ずれ検出部７０１からの印刷物を撮影して得られた画像のずれを入力して、撮影画像と印刷物との相対的なずれ量とずれ方向を推測する。
【００６１】
ブロック化部７０２は入力した画像を横方向にＰ画素、縦方向にＱ画素単位にブロック化する。このブロックは、電子透かしの重畳時にブロック化したＮ×Ｍ画素よりも小さくなければならない。即ち、
Ｐ≦Ｎ、かつ  Ｑ≦Ｍ  ……（４）
の関係が成り立つ。
【００６２】
また、Ｐ×Ｑ画素単位のブロック化はある一定間隔毎にスキップして実行する。即ち、図８に示されるように多重化時のＮ×Ｍ画素よりなるブロックと想定される領域内に、Ｐ×Ｑ画素単位のブロックがひとつ内包するようにブロック化する。スキップ画素数は、水平方向にＮ画素分、垂直方向にＭ画素分が基本となるが、幾何学的ずれ検出部７０１より検出したずれ量をブロック数で割り出し、１ブロックあたりのずれ量を演算して、スキップ画素数に加算して補正する必要がある。
【００６３】
ブロック化されたＰ×Ｑ画素の情報は、特徴量算出部７４０に送られ、ブロック内の特徴を解析する。一方、特徴量変化予測部７５０は、動きベクトル推測部７３０からの情報に基づいて、撮像デバイスと印刷物との位置関係が相対的に静止している状態（以下、理想状態）からの特徴量の変化を予測する。そして、判定部７１０は、特徴量算出部７４０と特徴量変化予測部７５０からの算出結果と予測とに基づいてブロック内の符号を判定する。
【００６４】
上記のように、この実施形態では、カメラ付き携帯端末１０４が撮影画像を解析することで、印刷用紙に印刷されている画像情報に多重化された付加情報を読み取る。ただし、カメラ付き携帯端末１０４がユーザにより移動しながら撮影が行われたことにより撮影画像にぶれが生じ、撮影画像における解析対象の領域がビット「０」であるのかビット「１」であるのか判別しにくい場合がある。
【００６５】
しかしながら、上記のように撮影画像の画像ぶれにより解析対象の領域の特徴量が劣化する場合、その劣化の仕方には、撮像デバイスが動いた方向に応じた傾向がある。そこで本実施形態では、撮像デバイスが動いた方向に応じて画像劣化の傾向を予測し、その傾向と特徴量の算出結果から、解析対象の領域が本来どのような特徴量を有していたのか推定する。このように推定された特徴量に対応するビットを、当該領域が示す符号として判定する。この実施形態によれば、撮像デバイスと印刷物との位置関係が理想状態からのずれが大きい場合でも復号性能が低下しない。以下、詳細に説明する。
【００６６】
次に、説明を容易にする為に、理想状態における特徴量算出部７４０と判定部７１０の処理手順を説明する。
【００６７】
特性の異なる空間フィルタＡ、Ｂ７０３、７０４はそれぞれ、周辺画素との積和を演算する専用のディジタルフィルタリング部７０５に接続されている。この空間フィルタの各係数は、多重化時の量子化条件の変動閾値の周期に適応して作成される。ここでは、多重化装置における量子化条件の変更を図６（ａ）、図６（ｂ）の２種の周期性を用いることにより付加情報を多重化したと仮定する。
【００６８】
図９は付加情報分離装置に用いられる空間フィルタの例を示す図である。
【００６９】
図９（ａ）と図９（ｂ）とは、図６（ａ）、図６（ｂ）の２種の周期性を用いることにより付加情報が多重化された画像を入力した場合における付加情報分離装置が使用する空間フィルタＡ７０３、空間フィルタＢ７０４の例をそれぞれ示している。これらの図において、５×５画素の中央部が注目画素になり、それ以外の２４画素分が周辺画素になる。図中、空白部の画素は、フィルタ係数が“０”であることを表している。これらの図から明らかな様に、図９（ａ）、（ｂ）はエッジ強調のフィルタになっている。加えて、その強調するエッジの方向性と多重化した時の変動閾値の方向性とが一致している。つまり、図９（ａ）は図６（ａ）に、また図９（ｂ）は図６（ｂ）に一致するように空間フィルタが作成されているのである。
【００７０】
間引き部Ａ７０６と間引き部Ｂ７０７はそれぞれ、Ｐ×Ｑ画素より成るブロック内のフィルタリング後の信号（以下、変換値）を、ある規則性に基づいて間引き処理する。第１の実施形態では、この間引きの規則性を周期性と位相とに分離して処理する。即ち、間引き部Ａ７０６と間引き部Ｂ７０７とでは間引きの周期性が異なっていて、各々、位相を変化させた複数の間引き処理を実行する。その間引き方法については後述する。
【００７１】
間引き部Ａ７０６と間引き部Ｂ７０７でそれぞれ間引きされた変換値は、対応する２つの変換値加算部７０８に入力され、位相毎にそれぞれ加算する。この間引き処理と変換値の加算処理は空間フィルタで強調した所定周波数ベクトルのパワーを抽出することに相当する。２つの分散値算出部７０９では、位相毎に加算した複数の加算値の分散をそれぞれの周期性において算出する。判定部７１０は、それぞれの周期性における分散値に基づいて、多重化された符号を判定する。
【００７２】
図１０は第１の実施形態の処理概略を二次元の周波数領域で示した図である。図１０において、横軸ｆｘは水平方向の周波数、縦軸ｆｙは垂直方向の周波数を示している。中心となる原点は画像の直流成分を示し、原点から遠ざかるにつれて、高周波域成分となる。図１０中の円は、誤差拡散によるカットオフ周波数を示している。誤差拡散法のフィルタ特性は、低周波域がカットオフされたＨＰＦ（ハイパスフィルタ）の特性を示し、そのカットオフされる周波数は、対象画像の濃度に応じて変化する。
【００７３】
量子化閾値の変更により、量子化後に発生する周波数特性が変化する。図６（ａ）による量子化閾値の変更では、図１０に示す周波数ベクトルＡ上に、また、図６（ｂ）による量子化閾値の変更では、図１０に示す周波数ベクトルＢ上に大きなパワースペクトルが生じる。付加情報の分離時には、この大きなパワースペクトルが発生する周波数ベクトルを検出することが多重化信号の判定につながる。即ち、分散値算出部７０９が解析対象のブロックにおける周波数の分散を算出する。そして判定部７１０は、分散値算出部７０９により算出された分散が図１０におけるＡ、Ｂのどちらに対応するか判定する。これにより印刷時に当該領域に用いられた量子化条件が、図６（ａ）、（ｂ）のどちらに対応することが判定することができ、つまり、当該領域が付加情報のビットとして「０」「１」のどちらの符号に対応するか判定することができる。そこで、各々の周波数ベクトルを個別に強調、抽出することが必要になる。
【００７４】
図９（ａ）と図９（ｂ）に示す空間フィルタは、特定の周波数ベクトルの方向性を有するＨＰＦに相当する。即ち、図９（ａ）に示す空間フィルタでは直線Ａ上の周波数ベクトルを強調することが可能になり、図９（ｂ）に示す空間フィルタでは直線Ｂ上の周波数ベクトルを強調することが可能になる。
【００７５】
例えば、図６（ａ）による量子化条件の変更により、図１０に示す直線Ａの周波数ベクトル上に大きなパワースペクトルが発生したと仮定する。その時に、図９（ａ）の空間フィルタではパワースペクトルの変化量が増幅するが、図９（ｂ）の空間フィルタでは、ほとんど増幅されない。即ち、複数の空間フィルタを並列にフィルタリングした場合には、周波数ベクトルが一致した空間フィルタ時のみ増幅し、それ以外のフィルタでは増幅がほとんど無い為、どのような周波数ベクトル上に大きなパワースペクトルが発生しているかが容易にわかる。
【００７６】
即ち、判定部７１０は、空間フィルタＡ７０３、空間フィルタＢ７０４のそれぞれによる処理結果を比較することで、当該解析対象のブロックにおける周波数の分散が、図１０のＡ、Ｂのどちらに該当するか判定する。そして、周波数の分散の傾向である図１０Ａ、Ｂは、図６に示した量子化条件に対応し、また当該量子化条件は付加情報であるビット（「０」または「１」）に対応する。そのため、判定部７１０は、当該解析対象のブロックが、付加情報のビットである「０」「１」のどちらの符号を示すか判定することができる。以下詳細に説明する。
【００７７】
図１１は間引き部Ａ７０６と間引き部Ｂ７０７と変換値加算部７０８と分散値算出部７０９と判定部７１０とが実行する動作を示すフローチャートである。
【００７８】
ステップＳ１１０１とステップＳ１１０２はそれぞれ、変数ｉ、ｊの値を“０”に初期化する。ステップＳ１１０３では間引き部Ａ７０６と間引き部Ｂ７０７とによる間引きの規則性の因子、即ち、“周期性”と“位相”の２因子を決定する。ここでは、周期性に関する変数をｉ、位相に関する変数をｊとする。この周期性と位相の条件は、番号（ナンバー）により管理されていて、いま、周期性ナンバー（以下、Ｎｏ．）がｉ、位相Ｎｏ．がｊである間引き方法の因子を設定する。
【００７９】
ステップＳ１１０４ではブロック内で間引きをした変換値を加算し、加算した加算値を変数の配列ＴＯＴＡＬ［ｉ］［ｊ］として記憶する。
【００８０】
ステップＳ１１０５では変数ｊを＋１カウントアップし、ステップＳ１１０６では固定値Ｊと比較する。ここで、Ｊは位相を変化させて間引き処理をする回数であり、メモリ或いはレジスタに格納されているものである。ここで、変数ｊがＪ未満であれば（ｊ＜Ｊ）、処理はステップＳ１１０３に戻り、カウントアップ後のｊによる新たな位相Ｎｏ．により、間引き処理と間引き画素の加算処理が繰り返される。
【００８１】
これに対して、ｊ≧Ｊであり、位相をずらした間引き処理及び加算処理が設定回数分終了したと判断された場合、処理はステップＳ１１０７に進み、加算結果ＴＯＴＡＬ［ｉ］［ｊ］の分散値を算出する。即ち、各加算結果が位相の差により、どの程度ばらついているかを評価する。ここでは、ｉの値を固定し、Ｊ個のＴＯＴＡＬ［ｉ］［ｊ］の分散値を求める。分散値はＢ［ｉ］とする。
【００８２】
ステップＳ１１０８では変数ｉを＋１カウントアップし、さらにステップＳ１１０９では変数ｉと固定値Ｉとを比較する。固定値Ｉは周期性を変化させて間引き処理をする回数であり、メモリやレジスタに格納されるものである。ここで、変数ｉがＩ未満（ｉ＜Ｉ）であれば、処理はステップＳ１１０２に戻り、カウントアップ後の変数ｉの値による新たな周期性Ｎｏ．の条件を用いて、再び、間引き処理と変換値の加算処理を繰り返す。これに対して、ｉ≧Ｉであり、設定回数終了したと判断されると、処理はステップＳ１１１０に進む。この時点で、分散値Ｂ［ｉ］はＩ個算出できたことになる。
【００８３】
ステップＳ１１１０では、Ｉ個の分散値の集合から分散値の最大値を検出し、その時の変数ｉの値を変数ｉｍａｘに代入する。最後にステップＳ１１１１では、周期性Ｎｏ．がｉｍａｘである符号を多重化された符号であると判定して処理を終了する。
【００８４】
ここで、Ｉ＝２、Ｊ＝４の例を示す。
【００８５】
図１２〜図１３はブロックサイズをＰ＝Ｑ＝１６とした時の間引き方法をテーブル形式で示した図である。図１２〜図１３において、ブロック内のひとマスが１画素分を表している。図１２〜図１３ではブロック形状をＰ＝Ｑの正方形としているが、当然正方形には限らないし、Ｐ≠Ｑとなる矩形でも良い。
【００８６】
図１２は周期性Ｎｏ．＝０の時の間引き方法（図７の間引き部Ａ７０６に相当）を、図１３は周期性Ｎｏ．＝１の時の間引き方法（図７の間引き部Ｂ７０７に相当）を示している。これらの図において、ブロック内の各画素に示している値は、位相Ｎｏ．であるｊの間引き画素を示している。例えば、“０”と表示している画素は、ｊ＝０の時の間引き画素に対応する。即ち、図１２〜図１３ともに位相は４種であり、位相Ｎｏ．がｊ＝０〜３の時の間引き方法に相当する。
【００８７】
図１２と図１３に示した周期性に関し、図１２は図６（ａ）の周期性に、図１３は図６（ｂ）の周期性に一致している。前述のように、図６（ａ）と図６（ｂ）ともに図中の灰色のマスの並びで量子化値“１”（但し、“０”、“１”の２値の場合）が並びやすくなる。その為、例えば、多重化時に量子化条件Ａであったブロックの場合には、図６（ａ）の周期性で量子化値“１”が並びやすくなり、適合した空間フィルタ時には更にその周波数成分が増幅される。そして、図１２に示す周期性で変換値を間引きして加算すると、その加算結果の分散は大きくなる。
【００８８】
それに比べて、量子化条件Ａであったブロックを、適合しない空間フィルタを用いてフィルタリングし、なおかつ、図１３に示す周期性により間引きを実行した場合、変換値の加算結果の分散値は小さくなる。即ち、量子化値の周期性と間引きの周期性が異なる為、間引きの位相の違いによる変換値の加算値は平均的になり、ばらつきは小さくなる。これとは反対に、多重化時に量子化条件Ｂであったブロックでは、図１２に示す間引きでは分散値は小さくなり、図１３に示す間引きでは分散値は大きくなる。
【００８９】
図４に示したフローチャートの処理に適用すると、ｂｉｔ＝０を量子化条件Ａ、ｂｉｔ＝１を量子化条件Ｂに設定している為、周期性Ｎｏ．＝０の分散値が大きいときにはｂｉｔ＝０、逆に周期性Ｎｏ．＝１の分散値が大きいときにはｂｉｔ＝１と判断できる。
【００９０】
即ち、量子化条件と空間フィルタ特性、及び間引き条件の周期性を関連づけることで、容易に付加情報の多重化とその付加情報の分離が実現できる。
【００９１】
この実施形態では、周期性Ｎｏ．は０と１の２種であり、ブロック内の多重化符号は１ビットであったが、多重化符号はこれ以上でも良いのは勿論である。当然、量子化条件の種類と空間フィルタの種類と間引き条件の周期性Ｎｏ．の種類（Ｉの値）とは一致する。
【００９２】
この実施形態では、直交変換による量子化条件の規則性に対応した周波数のパワー値の比較をしなくても、容易に符号を分離でき、加えて、実空間領域の処理の為、非常に高速に付加情報の分離処理が実現できる。
【００９３】
以上、この実施形態を説明してきたが、量子化条件Ａ、Ｂ、及び、空間フィルタＡ、Ｂ、間引き部Ａ、Ｂは一例であり、本発明はこれに限るものではない。他の周期性を持たせても良いし、空間フィルタのタップ数、間引きのブロックサイズ等は前述した例よりも大きくても小さくても構わない。
【００９４】
また、図１１に示したフローチャートでは本発明の概念を容易に説明するために、周期性Ｎｏ．である変数ｉと、位相Ｎｏ．である変数ｊの繰り返し処理を用いている。しかしながら、実際には、Ｐ×Ｑ画素よりなるブロック内の画素アドレスによる繰り返し処理の方法が実現が容易である。即ち、図１２〜図１３に示したように、ブロック内の各画素アドレスに対して周期性Ｎｏ．と位相Ｎｏ．の２種の情報をテーブルとして予め格納し、これに対応した周期性Ｎｏ．と位相Ｎｏ．の各々の変数に対して変換値を加算していく方法である。この方法によれば、Ｐ×Ｑ画素分を処理するだけで並列に周期性Ｎｏ．と位相Ｎｏ．との各集合の加算値を算出することができる。
【００９５】
さらに、図１１に示したフローチャートの手順では、空間フィルタ後の間引きした変換値の加算結果の分散を算出して、分散値の大小比較により、符号を判定していたが、本発明はこれにより限定されるものではない。分散値を用いない評価関数の比較による方法も考えられる。間引きした変換値の加算結果の偏りは、位相をずらした際に、ひとつの位相の時だけ値が突出しやすいため、“ばらつき度合い”が評価できれば良い。
【００９６】
例えば、ばらつき度合いを評価するには、分散値以外に次の評価関数が考えられる。即ち、
１．間引きした変換値を加算した加算値の最大値と最小値の差分
２．間引きした変換値を加算した加算値の最大値と２番目に大きな値との差分、
もしくは、最小値と２番目に小さな値との差分のどちらか
３．間引きした変換値を加算した加算値によるヒストグラム作成時における、
前後の順番の差分の最大値
などである。
【００９７】
理想状態では以上のように復号することができる。
【００９８】
次に、理想状態とは乖離している実際の状況について、カメラ付き携帯端末１０４により付加情報が多重化された印刷物の連続撮影を例について説明する。この実施形態では、音声データや動画データなど大容量のデータを印刷物に付加する場合を考える。そのため、印刷物全体に情報を埋め込むことを想定して以下に説明する。
【００９９】
カメラ付携帯端末１０４で印刷物の多重化情報を読み取る際、変調による周期パターン（以下、多重化パターン）が解析できる距離までカメラ付携帯端末１０４を印刷物に近づけなければならない。ところが、印刷物全体に多重化情報が埋め込まれていると、読取解像度などの関係で一度の撮影で印刷物全範囲の多重化情報を撮影することはできない。そのため、カメラ付携帯端末１０４を印刷物上で移動させながら、全範囲を複数枚に分けて撮影する必要がある。この実施形態ではこれを「連続撮影」という。
【０１００】
以下に連続撮影の詳細を図を参照して説明する。
【０１０１】
図１４は連続撮影の様子を示す模式図である。また、図１５は連続撮影の処理を示すフローチャートである。
【０１０２】
ユーザはまず、カメラ付携帯端末１０４の多重化デコード用アプリケーション（以下、アプリ）を起動する。このアプリは、図１５に示すように処理順に４つの機能を備える。即ち、ステップＳ１５０１では印刷物を撮影する撮影機能を実行し、ステップＳ１５０２では複数の画像を合成する画像合成機能を実行する。さらに、ステップＳ１５０３では合成された画像から多重化パターンを読取ってデコードする多重化デコード機能を実行する。最後には、ステップＳ１５０４では、デコード結果をカメラ付携帯端末１０４のスピーカ１０８で再生したり、ディスプレイ１０９に表示するコンテンツ再生機能を実行する。
【０１０３】
次に、ユーザはカメラ付携帯端末１０４を印刷物の左上部に位置させ、多重化パターンが読み取れる高さに調整する。
【０１０４】
ここで、ステップＳ１５０１における撮影機能によって撮影を開始し、図１４に示すようにカメラ付携帯端末１０４を右方向へ移動させながら連続撮影を行う。なお、１枚１枚が撮影する範囲は、ステップＳ１５０２における画像合成機能で複数の画像を１枚の画像に合成するために前の画像と撮影領域を重複させる。このようにして連続撮影を行う。
【０１０５】
この連続撮影において、カメラ付携帯端末１０４の移動速度が速すぎると、連続撮影開始時に設定されたシャッター速度では追い付かず、印刷物の撮影領域に抜けが生じることがある。その場合、例えば、カメラ付携帯端末１０４のディスプレイ１０９上で移動速度を落とすようユーザに指示する表示をしたり、カメラ付携帯端末１０４の加速度センサ１１０から移動速度を算出し、それに応じたシャッター速度を自動設定するようにする。また、撮影された画像を合成しながら、印刷物の中で未撮影の領域を算出して、ユーザに表示してもよい。
【０１０６】
いずれにしても、図１４に示すように印刷物の１ライン分を撮影し終えると、１ライン分下へ移動して、次に左方向へ移動させながら、同様に連続撮影を行う。こうして、付加情報が多重化された印刷物の全範囲を操作しながら、抜ける範囲なく最後まで連続撮影する。ただし、カメラ付携帯端末１０４の移動方向は図１４に示すものに限定されるものではない。多重化情報が埋め込まれた範囲を網羅できれば、カメラ付携帯端末１０４の移動方向や重複領域の大きさは問わない。
【０１０７】
次に、ステップＳ１５０２における画像合成機能を実行し、撮影された複数の画像を合成する。画像が撮影された順番と、連続する画像内での重複領域を検知することで、撮影した複数の画像を合成する。ここで行う合成処理は、例えば、一般に知られたパノラマ合成処理などが挙げられる。もしくは、カメラ付携帯端末１０４の加速度センサ１１０により、移動方向と移動距離を算出し、その結果から複数の画像を合成してもよい。
【０１０８】
続いて、ステップＳ１５０３における多重化デコード機能を実行し、合成された画像から埋め込まれた多重化情報をデコードする。このデコード処理の詳細は、図７を参照して既に説明したのでここではその説明は割愛する。ところで、ステップＳ１５０２において複数の画像の合成されても、ステップＳ１５０３において、多重化情報が正しく読み取れないこともあり得る。その場合、カメラ付携帯端末１０４のディスプレイ１０９にステップＳ１５０１における撮影機能を再度実行して連続撮影を行うようメッセージを表示し、ユーザに再撮影を促す。
【０１０９】
最後に、ステップＳ１５０４においてコンテンツ再生機能を実行し、デコードされた付加情報をカメラ付携帯端末１０４で再生する。コンテンツとは、音声データ、動画データ、画像データ、インターネットのリンク先、テキストデータなど、カメラ付携帯端末１０４がオープン可能なファイルであるが、そのファイルの種類は問わない。例えば、印刷物に埋め込まれていた多重化情報が動画データであれば、ステップＳ１５０４ではその動画データを再生するか、又は、カメラ付携帯端末１０４に格納されている他の動画再生アプリケーションにリンクして、その動画データを再生する。
【０１１０】
なお、この連続撮影は静止画の連写モードで撮影してもよいし、動画モードで撮影後、そのフレームを１コマずつ切り出して、画像データとして分割してもよい。ステップＳ１５０１では、アプリが加速度センサ１１０から算出結果を取得し、その結果から撮像センサ１０５に撮影条件を指示し、撮影した複数の画像を取得する場合について説明した。しかしながら、カメラ付携帯端末１０４のカメラ機能ではなくデジタルスチールカメラ（撮像装置）で撮影しても良い。その場合は、連続撮影した複数の画像をパソコンなどに取り込み、パソコンのＯＳ上で多重化デコードアプリケーションを起動し、取りこんだ複数の画像を合成してデコードするとよい。
【０１１１】
上記のように撮像デバイスを操作する時には、水平方向への画像ぶれが大きくなり、理想状態からは大きく乖離する。すると、撮影画像においてブレが生じ、図１１における処理により付加情報の符号を判定しようとしたとしても、適切な判定が行えない場合がある。
【０１１２】
しかしながら、上記のように撮影画像の画像ぶれにより解析対象の領域の特徴量が劣化する場合、その劣化の仕方には、撮像デバイスが動いた方向に応じた傾向がある。そこで本実施形態では、撮像デバイスが動いた方向に応じて画像劣化の傾向を予測し、その傾向と特徴量の算出結果から、解析対象の領域が本来どのような特徴量を有していたのか推定する。このように推定された特徴量に対応するビットを、当該領域が示す符号として判定する。
【０１１３】
ここで再び図７を参照して、理想状態から乖離した場合における処理を説明する。図７に示されるように、特徴量変化予測部７５０は、帯域Ａ変化予測部７５１と帯域Ｂ変化予測部７５２とを含む。特徴量変化予測部７５０は、撮像デバイスが撮影時に動いた方向に基づき、当該方向に対応する特徴量の劣化の傾向を予測する。例えば水平方向（図１４における左右方向）に画像がぶれた場合、水平方向の高周波成分が劣化し、垂直方向（図１４における上下方向）に画像がぶれた場合、垂直方向の高周波成分が劣化する。よって帯域Ａ変化予測部７５１と帯域Ｂ変化予測部７５２はそれぞれ、垂直方向、水平方向において特徴量が変化（遮断）されるか否かを予測する。なお、その予測は、動きベクトル推測部７３０により推測される動きベクトル（撮像デバイスの移動方向に相当）に基づき行われる。以下図１６を用いて詳細に説明する。
【０１１４】
図１６は水平方向の画像ぶれを周波数空間で表現した図である。図１６（ａ）、（ｂ）において、横軸は水平方向の周波数ｆｘ、縦軸は垂直方向の周波数ｆｙを示しており、中心となる原点は画像の直流成分を示し、原点から遠ざかるにつれて高周波域成分を示すものとなる。
【０１１５】
量子化閾値を変更すると、量子化後に発生する周波数特性も変化する。その為、図６（ａ）による量子化閾値の変更では図１６（ａ）の黒丸で示した帯域（帯域Ａ）に、また、図６（ｂ）による量子化閾値の変更では図１６（ａ）の白丸で示した帯域（帯域Ｂ）に大きなパワーが生じる。
【０１１６】
図１６（ｂ）は水平方向に画像がぶれた場合の周波数分布を示している。図１６（ｂ）において、灰色で示した、左右両端の帯域が水平ぶれにより遮断されると想定される高周波域を示している。図１６（ｂ）の例から明らかなように、白丸（帯域Ｂ）が遮断される高周波域に含まれている。どの程度の帯域が遮断されるかは動きベクトル推測部７３０からの信号で判断することができる。このように白丸で示した帯域が遮断された場合、図６（ｂ）による量子化閾値の変更により変調した信号は失われる。一方、水平方向でのぶれの場合には垂直方向の周波数帯域の再現性は維持できる。
【０１１７】
帯域Ａ変化予測部７５１と帯域Ｂ変化予測部７５２は、動きベクトル推測部７３０からの移動情報の信号を受信し、各帯域の影響度を予測する。
【０１１８】
図１６に示す例の場合は、水平方向の移動であり、図１６（ｂ）の灰色の帯域が遮断されると想定される。その為、帯域Ａ変化予測部７５１からは「変化せず」、帯域Ｂ変化予測部７５２からは「遮断」という信号が判定部７１０に送信される。
【０１１９】
上記の信号が判定部７１０に送信された場合、当該解析対象のブロックの特徴量が図１０のＢに対応するものであれば、特徴量算出部７４０による算出結果において特徴量として大きな値は算出されない。一方、当該特徴量が図１０のＡに対応するものであれば、その特徴量に変化はないはずであるため、特徴量算出部７４０により図１０のＡに対応する、所定の特徴量よりも大きな特徴量が適切に算出されるはずである。そこで、特徴量算出部７４０により水平方向、垂直方向のいずれにも特徴量として大きな値が算出されなかった場合を考える。この場合、当該ブロックの特徴量が本来図１０のＢに対応するものであったが、水平方向の画像ブレの影響が大きく、特徴量が遮断されたものと推測することができる。
【０１２０】
よってこの場合、判定部７１０は、本来当該ブロックの特徴量は図１０のＢに対応するものであり、当該ブロックに対応する量子化条件は、図１０のＢに対応する量子化条件であったと判定することができる。即ち当該ブロックが示す付加情報の符号（０または１）は、図１０のＢに対応する対応する符号であると判定することができる。
【０１２１】
このように判定部７１０は、帯域Ａ変化予測部７５１、帯域Ｂ変化予測部７５２により予測された、本来の特徴量から変化（劣化）の傾向と、特徴量算出部７４０による特徴量の算出結果から、本来の特徴量を推測する。この推測によれば、画像ブレにより水平方向、垂直方向のいずれにも所定の特徴量より大きな特徴量が算出されなかった場合であっても、解析対象のブロックに対応する符号を判定することができる。
【０１２２】
このように、この実施形態では２つの変化予測部からの出力が示す偏りに着目し、信号が失われた場合でも容易に復号することを可能にしている。
【０１２３】
図１７は間引き部７０６及び７０７、変換値加算部７０８、分散値算出部７０９、判定部７１０の理想状態からの乖離時の動作手順を示すフローチャートである。なお、図１７において既に図１１を参照して説明したのと同じ処理ステップには同じステップ参照番号を付し、その説明は省略する。
【０１２４】
図１７によれば、ステップＳ１１０９においてｉ≧Ｉであると判定された場合、処理はステップＳ１１０９Ａに進み、算出した各周期性での分散値を予め設定した所定の閾値と比較する。ここで、閾値をこえる分散値を有する周期性があると判定された場合、処理はステップＳ１１１０に進み、図１１で説明したように、Ｉ個の分散値の集合から分散値の最大値を検出し、その時のｉの値を変数ｉｍａｘに代入する。さらに、ステップＳ１１１１では、周期性Ｎｏ．がｉｍａｘである符号を多重化された符号であると判定する。その後、処理は終了する。
【０１２５】
これに対して、全ての分散値が所定閾値以下であると判断された場合、処理はステップＳ１１０９Ｂに進み、遮断された周期性Ｎｏ．である可能性が高いと判断し、遮断帯域の符号と判定する。その後、処理は終了する。
【０１２６】
以上のように、この実施形態では全ての分散値が低いという情報を積極的に利用して符号判定を行う。例えば、変調（つまり事象）が２通りの場合、変調帯域の一方は再現され、一方は遮断されたとする。再現帯域に変調信号が入っている場合、ほぼ問題なく信号は再現できる。しかしながら、遮断帯域に変調信号が入っている場合には、これだけでは変調信号が入っていたのか否かの判別されつかない。変調帯域自体が遮断されているために、例え劣化特性が推測できたとしても、劣化特性の逆変換により画像補正を施すことによる変調信号の復元は不可能である。
【０１２７】
しかし、もしこのブロックに他の帯域の変調信号が存在していないのであれば、「変調信号が何も存在しない」という情報を基に復号することが可能になる。即ち、事象が２通りの場合には、「再現されていない」という現象が起きると「何かが再現されている」という事象とは逆の符号を表していると推測することができる。理想状態では、単純に特徴量の相対比較により符号を判定していたが、理想から乖離した状態では、単純な相対比較は意味を持たない。符号の再現性に偏りが発生した場合には符号の判定方法や判定条件を動的に変更していく必要がある。
【０１２８】
従って以上説明した実施形態に従えば、２つの変化予測部からの出力が示す偏りに着目し、信号が失われた場合でも容易に復号することができるので、カメラ移動によるぶれの耐性が大きく改善することが可能になる。図１６に示した例では、水平ぶれの場合と垂直ぶれの場合では遮断帯域が逆転するために、「変調信号が何も存在しない」と判断された場合には移動方向により符号は逆転する。このようにして、動きベクトルに応じて符号の判定条件を変更することができるのである。
【０１２９】
＜第２の実施形態＞
図１８は第２の実施形態に従う付加情報分離装置の構成を示すブロック図である。図１８において、既に図７で説明したのと同じ構成要素には同じ参照番号を付し、その説明は省略する。
【０１３０】
図１８と図７とを比較すると分かるように、この実施形態に従う付加情報分離装置１０６は、図７で説明した特徴量算出部７４０を２つ備えている。その内の１つの特徴量算出部７４０はブロック化部７０２からブロック化された画像を入力し、もう１つの特徴量算出部７４０は基準ブロック変化予測部１８００からの予測結果を入力する構成となっている。そして、判定部１８１０では２つの特徴量算出部７４０からの算出結果を入力して符号の判定を行う。
【０１３１】
基準ブロック変化予測部１８００は、基準ブロックＡ変化予測部１８０１と基準ブロックＢ変化予測部１８０２とを備えた構成になっている。基準ブロックＡ変化予測部１８０１と基準ブロックＢ変化予測部１８０２は、予め設定した基準ブロックが動きベクトルによっていかに変化するかを予測する。
【０１３２】
図１９に基準ブロックの例を示す図である。
【０１３３】
図１９（ａ）は基準ブロックＡを、図１９（ｂ）は基準ブロックＢを示している。これは共に図６（ａ）と図６（ｂ）でそれぞれ与えた周期性をＰ×Ｑ画素単位にブロック化にしたものである。なお、基準ブロックは実際に濃度を均一にした仮想ブロックに対して量子化閾値を変動させて生成するのが好ましい。本来、理想状態であるならばこの基準ブロックのように所定の周期性が表れるのであるが、基準ブロックＡ変化予測部１８０１と基準ブロックＢ変化予測部１８０２とは、ぶれによってどのように基準ブロックの画素値が変化するかを予想する。即ち、カメラ付き携帯端末１０４が所定方向にぶれたことによるぶれフィルタ特性を予測し画像を作成する。各基準ブロック変化予測部で予測されたブロック内の画像は特徴量算出部７４０に送られ、前述した実施形態と同様に分散値が算出される。
【０１３４】
判定部１８１０では、２つの特徴量算出部から送信される分散値に基づいて符号を決定する。
【０１３５】
図２０は２つの特徴量算出部から出力される分散値に基づいて符号を決定する処理を示すフローチャートである。
【０１３６】
まずステップＳ２００１では入力画像の１ブロックの分散値Ｂ［ｉ］と基準ブロック変化予測後の分散値（以下、Ｂ’［ｉ］）を入力する。分散値の算出方法は図１１で示した方法と同じである。次にステップＳ２００２では、Ｂ［ｉ］とＢ’［ｉ］の差分を算出することによって、入力画像と基準ブロック変化予測後との類似度を判定する。
【０１３７】
ステップＳ２００３では、算出した類似度の中で最も類似度が高かった（即ち、差分が小さかった）周期性Ｎｏ．を多重化されていた符号と判定し、処理を終了する。
【０１３８】
この実施形態の特徴は類似度を用いて評価している点にある。即ち、この実施形態では、入力画像はカメラぶれによって予測したぶれフィルタにより劣化し、ぶれ画像ができあがる。この実際に入力したぶれ画像と、予測で作成した疑似的なぶれ画像がどの程度類似しているのかを判断するのである。
【０１３９】
例えば、図１６に示した水平方向ぶれによる水平方向の高周波成分を遮断する例を考える。この場合には基準ブロックＡの画像では変化せず、基準ブロックＢの画像では周期性が大きく失われる。基準ブロック変化予測の分散値においても、基準ブロックＡの分散値は高いが、基準ブロックＢの分散値は小さくなる。実際の入力画像においてもカメラぶれにより多重化された変調帯域のパワーの減衰度合いに偏りが生じるために、分散値も理想状態からは大きく異なる。このパワーの減衰度合いの偏りさえ予測できれば復号性能を低下させずに復号することが可能になる。
【０１４０】
なお、この実施形態によれば、水平方向と垂直方向以外の移動ぶれにも移動角度が推測できれば対処することができる。
【０１４１】
従って以上説明した実施形態に従えば、実際に入力したぶれ画像と予測で作成した疑似的なぶれ画像との間の類似度を求め、その類似度から符号を決定することができる。
【０１４２】
なお、第２の実施形態の変形例として、基準ブロック変化予測部１８００とこれに接続される特徴量算出部７４０の結果のみをＬＵＴ（ルックアップテーブル）としても良い。即ち、動きベクトル毎に基準ブロックの予測分離値を予め演算させておき、テーブルとしてメモリに格納しておき、実際の符号判定時には動きベクトルに対応した基準ブロックの各分離値をテーブルから読み出して判定を行うのである。このような構成をとることにより非常に容易に復号処理が実現できる。
【０１４３】
以上いくつかの実施形態を例にして本発明を説明したが、動きベクトル推測は撮像デバイスのセンサを用いずに入力した複数画像を画像解析することによりカメラの移動方向を検出しても良い。本発明では撮影対象は静止した印刷物であるので、複数の撮影画像の印刷物の空間的位置を判定できれば、カメラの移動方向は容易に検出できる。また、動きベクトル推測に加えシャッター速度等の撮影条件に基づき、ぶれ特性予測を行っても良い。シャッター速度が速くなると取得光量は低下するが、ぶれに対しては有利になる。
【０１４４】
また以上説明した実施形態では、付加情報分離装置１０６はカメラ付き携帯端末１０４に内蔵している例について説明したが、本発明はこれによって限定されるものではない。例えば、撮像装置により印刷物を撮影した複数の撮影画像もしくは動画像を、他のコンピュータに転送し、これを受信したコンピュータ内で分離処理をすることも有効である。また、分離処理した情報（例えば、音声情報）を再生させる再生装置も、分離処理を実行した装置と同一デバイスであっても異なっていても良い。
【０１４５】
また、図１８に示した基準ブロック変化予測部は、ぶれ特性以外の他の撮影画質特性、例えば、カメラのレンズ特性によるぼけ、フォーカスぼけ、撮影時のカメラのあおり等、様々な理想状態からの乖離にも応用可能である。これらの撮影画質特性を予測できれば、予測結果と実際の入力画像から求めた双方の特徴量の類似度を用いることにより、復号性能を理想状態に近づけることができる。これらの撮影画質特性予測に関しても、カメラ内蔵のセンサ、カメラの撮影条件（シャッター速度、露光量、感度、ホワイトバランス等）、画像解析の各種情報を利用できる。
【０１４６】
また、複数の撮影画像もしくは動画像において、前述のカメラの撮影条件（シャッター速度、露光量、感度、ホワイトバランス等）を変動させながら撮影し、最適な画像を選択する方法と組み合わせることも考えられる。所謂、ブラケット撮影を施すことにより、少しでも復号しやすい画像を選択することは復号性能の向上に寄与する。この場合、撮影画質特性は各ブラケットに対して予め予測しておくのが好ましい。
【０１４７】
またさらに、付加情報を多重化する方法については図４を参照して例示したが、本発明はこれによって限定されるものではない。ただ、複数の角度が異なる帯域に変調させ、変調させた帯域の違いを符号に関連させる多重化方法、即ち、撮像デバイスを移動する際の移動角度によって、変調帯域の角度による影響の度合いが異なり符号再現性の偏りが大きくなるのであれば他の方法でも良い。
【０１４８】
また、本発明は、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワークまたは各種記憶媒体を介してシステムあるいは装置に供給し、そのシステムあるいは装置のコンピュータがプログラムを読み出して実行することでも実現される。この場合、そのプログラム、および該プログラムを記憶した記憶媒体は本発明を構成する。
【符号の説明】
【０１４９】
１０２  付加情報多重化装置、１０３  プリンタ、１０４  カメラ付き携帯端末、
１０５  撮像センサ、１０６  付加情報分離装置、１０８  スピーカ、
１０９  ディスプレイ、１１０  加速度センサ、２００  誤差拡散部
２０１  ブロック化部、２０２  量子化条件制御部、３００  加算器、３０１  比較部、
３０２  減算部、３０３  誤差配分演算部、
３０４  配分テーブル（誤差拡散マトリクス）、
７０１  幾何学的ずれ検出部、７０２  ブロック化部、７１０  判定部
７３０  動きベクトル推測部、７４０  特徴量算出部、７５０  特徴量変化予測部、
１８００  基準ブロック変化予測部
【図１】
0006386841.tif 000002
【図２】
0006386841.tif 000003
【図３】
0006386841.tif 000004
【図４】
0006386841.tif 000005
【図５】
0006386841.tif 000006
【図６】
0006386841.tif 000007
【図７】
0006386841.tif 000008
【図８】
0006386841.tif 000009
【図９】
0006386841.tif 000010
【図１０】
0006386841.tif 000011
【図１１】
0006386841.tif 000012
【図１２】
0006386841.tif 000013
【図１３】
0006386841.tif 000014
【図１４】
0006386841.tif 000015
【図１５】
0006386841.tif 000016
【図１６】
0006386841.tif 000017
【図１７】
0006386841.tif 000018
【図１８】
0006386841.tif 000019
【図１９】
0006386841.tif 000020
【図２０】
0006386841.tif 000021