(57)【特許請求の範囲】
【請求項１】
画像データを取得する第１の取得手段と、
前記画像データに多重化する第１データ形式の付加情報を取得する第２の取得手段と、
前記第２の取得手段により取得された前記付加情報の種別を解析する解析手段と、
前記付加情報を前記画像データに多重化する前に、前記解析手段により解析された結果に応じた処理を前記付加情報に実行することにより前記第１データ形式とは異なる第２データ形式の付加情報を生成する生成手段と、
前記生成手段により生成された前記第２データ形式の付加情報を、前記第１の取得手段により取得された前記画像データに多重化する多重化手段と、を備え、
前記多重化手段による多重化が実行された画像データから前記第２データ形式の付加情報が取得される、
ことを特徴とする情報処理装置。
【請求項２】
前記画像データに多重化する前記第１データ形式の付加情報は文字データであり、
前記多重化手段による多重化が実行された画像データから取得される前記第２データ形式の付加情報は暗号化された文字データであることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記画像データに多重化する前記第１データ形式の付加情報は音声データであり、
前記多重化手段による多重化が実行された画像データから取得される前記第２データ形式の付加情報は前記音声データの格納先を示すリンク情報であることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記画像データに多重化する前記第１データ形式の付加情報は動画データであり、
前記多重化手段による多重化が実行された画像データから取得される前記第２データ形式の付加情報は前記動画データの格納先を示すリンク情報であることを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記解析手段は、前記第１データ形式の付加情報の種別を判定し、
前記生成手段は、当該判定された種別に応じた処理を前記付加情報に実行することにより前記第１データ形式とは異なる前記第２データ形式の付加情報を生成する、
ことを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記生成手段は、前記音声データの容量が閾値以上である場合に、前記音声データが記憶された場所を示すリンク情報を生成することを特徴とする請求項３に記載の情報処理装置。
【請求項７】
前記音声データの容量が前記閾値以上である場合に、前記音声データを前記格納先に格納することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記生成手段は、前記動画データの容量が閾値以上である場合に、前記動画データが記憶された場所を示すリンク情報を生成することを特徴とする請求項４に記載の情報処理装置。
【請求項９】
前記動画データの容量が前記閾値以上である場合に、前記動画データを前記格納先に格納することを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記格納先は、ネットワーク上の装置であることを特徴とする請求項３又は４に記載の情報処理装置。
【請求項１１】
前記生成手段は、前記第１データ形式の付加情報を圧縮し、当該圧縮された付加情報を前記格納先に格納することを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
前記解析手段により前記付加情報の種別が音声データであると判定された場合に、
前記音声データの変化量に基づいて、前記音声データが前記画像データへの多重化の対象であるか否かを判定する判定手段、をさらに備えることを特徴とする請求項３に記載の情報処理装置。
【請求項１３】
前記解析手段により前記付加情報の種別が文字データであると判定された場合に、
前記生成手段は、個人情報に該当する前記文字データから暗号化された文字データを生成することを特徴とする請求項２に記載の情報処理装置。
【請求項１４】
前記第２データ形式の付加情報をプレビューするプレビュー手段、をさらに備えることを特徴とする請求項１に記載の情報処理装置。
【請求項１５】
前記多重化手段により前記第２データ形式の付加情報が多重化された画像データをプリント部に印刷させる制御手段、をさらに備えることを特徴とする請求項１乃至１４のいずれか１項に記載の情報処理装置。
【請求項１６】
前記情報処理装置は印刷装置であることを特徴とする請求項１乃至１５のいずれか１項に記載の情報処理装置。
【請求項１７】
情報処理装置において実行される情報処理方法であって、
画像データを取得する第１の取得工程と、
前記画像データに多重化する第１データ形式の付加情報を取得する第２の取得工程と、
前記第２の取得工程において取得された前記付加情報の種別を解析する解析工程と、
前記付加情報を前記画像データに多重化する前に、前記解析工程において解析された結果に応じた処理を前記付加情報に実行することにより前記第１データ形式とは異なる第２データ形式の付加情報を生成する生成工程と、
前記生成工程において生成された前記第２データ形式の付加情報を、前記第１の取得工程において取得された前記画像データに多重化する多重化工程と、を有し、
前記多重化が実行された画像データから前記第２データ形式の付加情報が取得される、
ことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、付加情報を多重化する情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
画像情報に対して、画像に関連のある他の情報を多重化することが知られている。電子透かし技術では、例えば、写真、絵画等の画像情報中に、その著作者名や、使用許可の可否等の付加情報が視覚的に判別しづらい様に多重化される。また、応用分野として、複写機、プリンタ等の画像出力装置の高画質化に伴い、紙幣、印紙、有価証券等の偽造を防止する目的で、紙上に出力された画像から出力機器及びその機体番号を特定する為に、画像中に付加情報を埋め込む技術が知られている。
【０００３】
特許文献１には、情報を埋め込んだ画像や印刷物から情報抽出が可能であることを保証するために、埋め込み処理側で埋め込むための画像上の領域に基づいて埋め込みが可能か否かの検査を行うことが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３４５０１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
画像に埋め込む付加情報は多種多様なものがあり、多重化を行う際、付加情報に応じた前処理を適用しないと効果的な多重化を行うことができない。例えば、付加情報が音声情報である場合に、画像に埋め込むことができる容量とするために、人間の聴覚特性を利用して、高周波領域をカットすることで圧縮を行うことが考えられる。しかしながら、付加情報が文字情報である場合に、文字情報を音声情報とみなして同じ圧縮処理を行うと、情報が欠落して元の文字情報に復元できなくなってしまう。このようなことを防ぐために、付加情報の内容に応じた前処理を行う必要がある。
【０００６】
本発明の目的は、このような従来の問題点を解決することにある。上記の点に鑑み、本発明は、付加情報に応じた前処理を行って多重化を行う情報処理装置、情報処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明に係る情報処理装置は、画像データを取得する第１の取得手段と、前記画像データに多重化する第１データ形式の付加情報を取得する第２の取得手段と、前記第２の取得手段により取得された前記付加情報の種別を解析する解析手段と、前記付加情報を前記画像データに多重化する前に、前記解析手段により解析された結果に応じた処理を前記付加情報に実行することにより前記第１データ形式とは異なる第２データ形式の付加情報を生成する生成手段と、前記生成手段により生成された前記第２データ形式の付加情報を、前記第１の取得手段により取得された前記画像データに多重化する多重化手段と、を備え、前記多重化手段による多重化が実行された画像データから前記第２データ形式の付加情報が取得される、ことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、付加情報に応じた前処理を行って多重化を行うことができる。
【図面の簡単な説明】
【０００９】
【図１】画像処理システムの構成を示すブロック図である。
【図２】付加情報多重化部の構成を示すブロック図である。
【図３】付加情報前処理装置の処理を示すフローチャートである。
【図４】付加情報前処理装置の処理を示すフローチャートである。
【図５】付加情報多重化部に含まれる埋込みを行う構成を示すブロック図である。
【図６】量子化条件制御部の処理を示すフローチャートである。
【図７】多重化領域を説明するための図である。
【図８】量子化条件Ａ、Ｂを説明するための図である。
【図９】付加情報分離部の構成を示すブロック図である。
【図１０】撮影画像を示す図である。
【図１１】空間フィルタを示す図である。
【図１２】二次元の周波数領域を示す図である。
【図１３】間引き部から判定部までの処理を示すフローチャートである。
【図１４】間引き方法を説明するための図である。
【図１５】画像処理装置とカメラ付携帯端末のブロック構成を示す図である。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。
【００１１】
図１は、画像処理システムの構成を示すブロック図である。本実施形態における画像処理システムは、画像処理装置１１５とカメラ付携帯端末１０４とを含む。画像処理装置１１５は、印刷機能を有する印刷装置であり、例えば、ＭＦＰ（多機能型周辺装置）である。カメラ付携帯端末１０４は、例えば、カメラ付携帯電話、カメラ付スマートフォンやタブレットＰＣである。
【００１２】
本実施形態では、画像処理装置１１５は、付加情報が多重化された印刷物１１２を印刷する。そして、カメラ付携帯端末１０４は、撮像センサ１０５（カメラ）により、印刷物１１２を撮像する。そのため、本実施形態では、画像処理装置１１５とカメラ付携帯端末１０４との間は、有線ネットワークや無線ネットワークで相互に通信可能であっても良いし、ネットワーク等を介して通信可能に接続されていなくても良い。
【００１３】
画像処理装置１１５は、付加情報を印刷物１１２に埋め込む付加情報多重化部１０２を含み、カメラ付携帯端末１０４は、多重化された付加情報を印刷物から読み取る付加情報分離部１０６を含む。付加情報多重化部１０２は、例えば、プリント部１０３（プリンタエンジン）へ出力すべき画像情報を作成するプリンタドライバソフトウエア、もしくは、アプリケーションソフトウエアとして実現される。また、複写機、ファクシミリ、プリンタ本体等にハードウエアやソフトウエアとして内蔵される形態で実現されても良い。また、付加情報分離部１０６は、例えば、デジタルスチールカメラで撮影した画像から付加情報を分離する内部のアプリケーションソフトウエアやハードウエアで実現されても良い。なお、本実施形態では、付加情報多重化部１０２とプリント部１０３が画像処理装置１１５に含まれるものとして説明するが、付加情報多重化部１０２とプリント部１０３が、別々の装置に分けられても良い。例えば、ＰＣやスマートフォン等の情報処理装置が付加情報多重化部１０２を含み、上記の情報処理装置とは異なる画像処理装置がプリント部１０３を含む形態でも良い。
【００１４】
本実施形態において、付加情報多重化部１０２は、図２で後述するように、入力された付加情報を解析し、多重化の前処理を行う付加情報前処理部２００と、多重化処理部２０１と、それらを制御する付加情報多重化制御部２１０とを含んで構成されている。
【００１５】
［付加情報の埋込みのための構成］
入力端子１００から多階調の画像情報が入力され、入力端子１０１から画像情報の中に埋め込むべき付加情報が入力される。この付加情報は、画像情報とは別の情報、例えば音声情報や動画情報、文字情報、画像に関する著作権、撮影日時、撮影場所、撮影者の諸情報、若しくは、全く別の画像情報等、である。さらに、付加情報は、画像ファイルとして構成された画像情報の一部として内包されていても良い。
【００１６】
付加情報多重化部１０２は、視覚的に判別しづらいように、画像情報中に付加情報を埋め込む（多重化する）。付加情報多重化部１０２は、付加情報の多重化とともに、入力した多階調の画像情報の量子化や、図２を用いて後述する多重化の前処理を行う。
【００１７】
プリント部１０３は、付加情報多重化部１０２で作成された情報に基づいて印刷処理を実行する。プリント部１０３は、例えば、インクジェットプリンタ、レーザプリンタ等、疑似階調処理を用いることにより階調表現を印刷物１１２上に実現するプリンタである。
【００１８】
図１５（ａ）は、画像処理装置１１５のブロック構成を示す図である。ＣＰＵ２１１は、画像処理装置１１５の内部を統括的に制御するプロセッサである。図１の付加情報多重化部１０２は、例えば、ＣＰＵ２１１により実現される。ＲＯＭ２１２やＨＤＤ１５０１は、画像処理装置１１５の基本プログラムや制御プログラム、各種アプリケーションやデータ等を記憶する。例えば、ＣＰＵ２１１は、ＲＯＭ２１２に記憶されたプログラムをＲＡＭ２１３に読み出して実行することにより、各実施形態の動作を実現する。ＲＡＭ２１３は、ＣＰＵ２１１のワーキングメモリとしても用いられる。
【００１９】
ネットワークインタフェース（ＮＷ  Ｉ／Ｆ）１５０２は、例えば、有線や無線等、ネットワークの形態に応じた構成を有する。また、通信範囲が異なる複数種類の無線ネットワークにも対応可能であり、例えば、通信距離が数ｃｍといった近距離無線通信（ＮＦＣ：Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）により、カメラ付携帯端末１０４と通信することも可能である。
【００２０】
ディスプレイ１１４は、ユーザに各設定画面やプレビュー画面等を表示する。操作部１５０３は、例えば、キーボードやタッチパネル等を有し、ユーザからの操作指示を受付可能である。
【００２１】
デバイスＩ／Ｆ１５０４は、プリント部１５０５（プリントエンジン）やスキャン部１５０６と、システムバス１５０８とを接続する。プリント部１５０５は、図１のプリント部１０３に対応する。図１では、プリント部１５０５とスキャン部１５０６が示されているが、画像処理装置１１５の実行可能な機能に応じて、ＦＡＸ等、他のブロックがデバイスＩ／Ｆ１５０４に接続されても良い。
【００２２】
画像処理部１５０７は、外部やスキャン部１５０６等から取得したデータに対して、用途に応じた画像処理を実行する。例えば、画像処理部１５０７は、プリント部１５０５の記録方式に応じた色空間変換や二値化処理、画像の拡大／縮小／回転、といった処理を実行する。
【００２３】
図１に示す各ブロックは、システムバス１５０８を介して相互に通信可能に接続される。図１に示す構成以外の構成であっても良く、例えば、システムバス１５０８とイメージデータバスとがバスブリッジを介して接続される。その場合には、例えば、デバイスＩ／Ｆ１５０４がイメージデータバスに接続される。
【００２４】
図１の入力端子１００は、例えば、ネットワークＩ／Ｆ１５０２から入力される構成を示し、また、入力端子１０１は、例えば、ネットワークＩ／Ｆ１５０２や操作部１５０３から入力される構成を示す。
【００２５】
［付加情報の読取りのための構成］
図１のカメラ付携帯端末１０４上で実行される読取アプリケーションは、撮像センサ１０５を用いて印刷物１１２上の情報を読み取り、付加情報分離部１０６によって、印刷物１１２中に埋め込まれた付加情報を分離し、出力端子１０７に出力する。この出力端子１０７は、取得した付加情報を出力するインタフェースであり、例えば音声情報であれば、カメラ付携帯端末１０４のスピーカー１０８へ出力し、画像情報や文字情報であれば、ディスプレイ１０９へ出力する。また、外部デバイスへデータを出力するインタフェースに出力しても良い。また、カメラ付携帯端末１０４に複数の撮像センサがある場合、印刷物１１２の撮影は、第二撮像センサ１１１により行われても良い。
【００２６】
図１５（ｂ）は、カメラ付携帯端末１０４のブロック構成を示す図である。カメラ付携帯端末１０４は、ＣＰＵやＲＯＭやＲＡＭといった、汎用的な情報処理装置の構成を含む。ＣＰＵ１５１０は、カメラ付携帯端末１０４の内部を統括的に制御するプロセッサである。図１の付加情報分離部１０６は、例えば、ＣＰＵ１５１０により実現される。ＲＯＭ１５１１は、カメラ付携帯端末１０４の基本プログラムや制御プログラム、各種アプリケーションやデータ等を記憶する。例えば、ＣＰＵ１５１０は、ＲＯＭ１５１１に記憶されたプログラムをＲＡＭ１５１２に読み出して実行することにより、各実施形態の動作を実現する。ＲＡＭ１５１２は、ＣＰＵ１５１０のワーキングメモリとしても用いられる。
【００２７】
ネットワーク通信部１１３は、例えば、有線や無線等、ネットワークの形態に応じた構成を有する。また、通信範囲が異なる複数種類の無線ネットワークにも対応可能であり、例えば、通信距離が数ｃｍといった近距離無線通信（ＮＦＣ：Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）により、画像処理装置１１５と通信することも可能である。
【００２８】
ディスプレイ１０９は、ユーザに各設定画面やプレビュー画面等を表示する。操作部１５１３は、例えば、ハードキー等を有し、ユーザからの操作指示を受付可能である。加速度センサ１１０は、カメラ付携帯端末１０４の姿勢を検出する。図１５（ｂ）に示す各ブロックは、システムバス１５１４を介して相互に通信可能に接続されている。
【００２９】
図２は、付加情報多重化部１０２の構成を示すブロック図である。付加情報前処理部２００は、入力端子１０１に入力された付加情報に対して、多重化処理部２０１による多重化前に、後述する所定の前処理を行う。多重化処理部２０１は、入力端子１００に入力された画像情報に対して、付加情報前処理部２００により前処理が行われた付加情報を埋め込み、プリント部１０３へ出力する。
【００３０】
図２に示す付加情報多重化制御部２１０は、ＣＰＵ２１１、ＲＯＭ２１２、ＲＡＭ２１３を含む。付加情報前処理部２００および多重化処理部２０１の処理結果がエラーとなった場合には、付加情報多重化制御部２１０は、付加情報多重化部１０２の処理を中止し、その旨を操作者にディスプレイ１１４等に通知する。なお、上述したがＣＰＵ２１１は、画像処理装置１１５の内部を統括的に制御するプロセッサである。
【００３１】
図２に示すユーザインタフェース部２２０は、ディスプレイ２２１、スピーカー２２２、キーボード２２３などを含んで構成される。ディスプレイ２２１は、図１５（ａ）のディスプレイ１１４に対応し、ユーザへの通知を表示するだけでなく、付加情報である文字情報や動画情報のプレビューにも使用される。スピーカー２２２は、付加情報である音声情報や動画情報の音声を出力する。キーボード２２３は、図１５（ａ）の操作部１５０３に対応し、ユーザからの指示や選択、および、付加情報である文字情報のユーザ入力に使用される。
【００３２】
次に、付加情報前処理部２００の動作について、図３のフローチャートを参照しながら説明する。本実施形態における付加情報多重化部１０２は、付加情報として、文字データ、音声データ、動画データ、それ以外の４種類の情報を区別して画像データに埋め込む。
【００３３】
Ｓ３００において、ＣＰＵ２１１は、入力端子１０１に入力された付加情報のデータ種別を判定する。その判定は、例えば、付加情報のヘッダ情報を参照して行われても良いし、ユーザから指定を受け付けて行われても良い。本実施形態では、文字データ、音声データ、動画データ、その他の種別のデータ、の４種類のデータ種別を判定する。また、付加情報の実体が特定できない場合には、エラーとして、図３の処理を終了する。
【００３４】
図３（ａ）は、付加情報前処理部２００の全体の処理を示すフローチャートである。Ｓ３０１〜Ｓ３０３は、データ種別がそれぞれ文字データ、音声データ、動画データである場合の前処理を示す。Ｓ３００で付加情報のデータ種別が文字データであると判定された場合には、Ｓ３０１に進み、文字用前処理が行われる。Ｓ３００で付加情報のデータ種別が音声データであると判定された場合には、Ｓ３０２に進み、音声用前処理が行われる。Ｓ３００で付加情報のデータ種別が動画データであると判定された場合には、Ｓ３０３に進み、動画用前処理が行われる。Ｓ３００で付加情報のデータ種別がその他の種別のデータであると判定された場合には、Ｓ３０４に進み、所定の汎用前処理が行われる。
【００３５】
Ｓ３０５において、ＣＰＵ２１１は、Ｓ３０１〜Ｓ３０３における前処理後の付加情報のプレビューまたは、音声データである場合は試聴を行う。このプレビューまたは試聴は、操作者（ユーザ）に、後述の付加情報分離部１０６によって画像から分離された付加情報と等価の内容として提供される。従って、ユーザは、このプレビューまたは試聴に基づいて、付加情報前処理部２００から多重化処理部２０１へ処理を移行するか否か、即ち、多重化処理を中止するか否かを選択することができる。なお、後述する図４のＳ４１１においてＮｏと判定された場合、Ｓ３０５の処理がスキップされても良い。
【００３６】
Ｓ３０１〜Ｓ３０４それぞれの処理が正常終了した場合には、後続する多重化処理部２０１に処理を移行するが、エラーであった場合には、付加情報前処理部２００の処理結果がエラーであるので、付加情報多重化部１０２の処理は中止される。
【００３７】
図３（ｂ）は、付加情報が文字データである場合のＳ３０１の処理を示すフローチャートである。Ｓ３１０において、ＣＰＵ２１１は、付加情報に含まれる情報を解析し、Ｓ３１１において、付加情報に含まれる情報が文字データのみか否かを判定する。ここで、文字データのみであると判定された場合にはＳ３１２に進み、文字データ以外の情報が含まれると判定された場合には、エラーとして、Ｓ３０１の処理を終了する。
【００３８】
Ｓ３１２において、ＣＰＵ２１１は、文字データに個人情報が含まれるか否かを判定する。ここで、個人情報が含まれると判定された場合にはＳ３１３に進み、含まれないと判定された場合には、図３（ｂ）の処理を終了する。その場合は正常終了として、Ｓ３０５の処理に進む。Ｓ３１２では、ＣＰＵ２１１は、一般的なパターンマッチングにより個人情報であるか否かを判定しても良いし、ユーザによる明示的な指定により個人情報であるか否かを判定しても良い。
【００３９】
Ｓ３１３において、ＣＰＵ２１１は、文字データの暗号化を行う。ＣＰＵ２１１は、例えば、一般的な暗号化方法により文字データの暗号化を行う。その後、図３（ｂ）の処理を終了する。その場合は正常終了として、Ｓ３０５の処理に進む。
【００４０】
図４（ａ）は、付加情報が音声データである場合のＳ３０２の処理を示すフローチャートである。Ｓ４１０において、ＣＰＵ２１１は、音声データの変化量を解析する。Ｓ４１０の処理は、無音もしくはノイズのみといった、付加情報として有効でないデータを検出することを目的としている。本実施形態では、単純に出力値が時系列に沿って所定範囲内を維持するレベルであれば変化量ゼロと判定される。しかしながら、その他にも、音声データであれば、フーリエ変換を行ったパワースペクトルから、周波数毎の出力強度の変化を求めるといった方法で判定が行われても良い。
【００４１】
Ｓ４１１において、ＣＰＵ２１１は、Ｓ４１０で解析されたデータ変化量が閾値以上であるか否かを判定する。ここで、閾値以上であると判定された場合には、付加情報は有効なデータであると判断してＳ４１２へ進む。一方、閾値未満であると判定された場合には、有効なデータではないと判断し、エラーとして、図４（ａ）の処理を終了する。本実施形態では、例えば、１０ｄｂを閾値とし、１０ｄｂ以上の変化があるか否かを判定している。閾値は、これに限られるものではなく、付加情報が有効なデータであるか否かを判定可能であれば他の値であっても良い。
【００４２】
Ｓ４１２において、ＣＰＵ２１１は、付加情報を多重化用の設定で圧縮する。本実施形態では、例えば、圧縮のアルゴリズムにＲＦＣ５５７４で定義されているＳｐｅｅｘを使用し、品質設定を１（ＶＢＲ）に固定して圧縮が行われる。Ｓ４１３において、ＣＰＵ２１１は、Ｓ４１２で圧縮した音声データのデータ容量を算出する。
【００４３】
Ｓ４１４において、ＣＰＵ２１１は、Ｓ４１３で算出したデータ容量が閾値以上であるか否かを判定する。本実施形態では、例えば、圧縮後のデータ容量が４ｋｂｙｔｅ以上であるか否かを判定している。これは、データ容量が大きくなるに従って、後述の多重化処理部２０１による多重化処理に必要な面積が増加するためである。判定の結果、データ容量が４ｋｂｙｔｅ以上なければ、付加情報を画像に埋め込むことができるので、Ｓ３０２の処理を終了し、圧縮した付加情報を前処理済み付加情報として多重化処理部２０１に送る。一方、４ｋｂｙｔｅ以上である場合には、Ｓ４１５に進む。
【００４４】
本実施形態では、付加情報が４ｋｂｙｔｅ以上であると判定された場合には、付加情報の実体を画像に埋め込むことができないと判断し、ネットワーク上にある所定のクラウドサーバに付加情報の実体をアップロードする。その際、画像情報には付加情報の代わりに格納先情報としてリンク情報が埋め込まれる。
【００４５】
Ｓ４１５において、ＣＰＵ２１１は、クラウドサーバにアップロードするための圧縮処理を行う。本実施形態では、ＩＳＯ／ＩＥＣで定義されているＡＡＣの１２８ｋｂｐｓで圧縮が行われる。
【００４６】
Ｓ４１６において、ＣＰＵ２１１は、Ｓ４１５で圧縮を行った付加情報を所定のサーバにアップロードする。アップロードするサーバは、予め設定されていても良いし、このタイミングで操作者に指定させても良い。アップロードが完了すると、ＣＰＵ２１１は、そのリンク情報を取得し、Ｓ３０２の処理を終了して、リンク情報を前処理済み付加情報として多重化処理部２０１に送る。本実施形態では、音声圧縮にＳｐｅｅｘならびにＡＡＣを用いているが、他の圧縮方式のアルゴリズムが用いられても良い。
【００４７】
Ｓ４１６の処理後、図４（ａ）の処理を終了する。その場合は正常終了として、Ｓ３０５の処理に進む。
【００４８】
図４（ｂ）は、付加情報が動画データもしくは汎用データである場合のＳ３０３またはＳ３０４の処理を示すフローチャートである。本実施形態では、Ｓ３０３とＳ３０４の処理は後述するアップロード先の選択肢が異なるが、他の動作は同じであるので、併せて説明する。
【００４９】
Ｓ４２０において、ＣＰＵ２１１は、付加情報のデータ容量を算出する。Ｓ４２１において、Ｓ４２０で算出したデータ容量が閾値以上であるか否かを判定する。ここで、判定の閾値は、例えば、４ｋｂｙｔｅである。データ容量が４ｋｂｙｔｅ以上でないと判定された場合には、付加情報を画像に埋め込むことができると判断し、Ｓ３０３もしくはＳ３０４の処理を終了し、付加情報を前処理済み付加情報として多重化処理部２０１に送る。一方、４ｋｂｙｔｅ以上であると判定された場合には、Ｓ４２２に進む。
【００５０】
Ｓ４２２において、Ｓ４１６と同様に、付加情報を所定のサーバにアップロードして、格納先情報としてリンク情報を取得する。その際に、Ｓ３０３の処理の場合には、サーバの選択肢として、動画専用の共有サーバも加えて選択することができる。アップロードが完了すると、ＣＰＵ２１１は、そのリンク情報を取得した後にＳ３０３もしくはＳ３０４の処理を終了し、リンク情報を前処理済み付加情報として多重化処理部２０１に送る。
【００５１】
Ｓ４２２の処理後、図４（ｂ）の処理を終了する。その場合は正常終了であり、図４（ｂ）の処理がＳ３０３に対応する場合には、Ｓ３０５の処理に進む。また、図４（ｂ）の処理がＳ３０４に対応する場合には、図３の処理を終了し、多重化処理部２０１に処理が移行する。
【００５２】
図５は、図１の付加情報多重化部１０２に含まれる埋込みを行う構成を示すブロック図である。誤差拡散処理部５００は、入力端子１００に入力された画像情報に、一般的な誤差拡散法を用いた疑似階調処理を行うことによって、入力階調数よりも少ない量子化レベルに変換し、複数画素の量子化値により、面積的に階調性を表現する。
【００５３】
ブロック化部５０１は、入力端子１００に入力された画像情報を所定領域（ブロック）単位に区分する。ブロック化部５０１により行われるブロック化は、矩形に区分されても良いし、矩形以外の領域に区分されても良い。
【００５４】
量子化条件制御部５０２は、入力端子５０３で入力された付加情報前処理部２００で前処理後の付加情報に基づいて、ブロック化部５０１にてブロック化された領域単位で、量子化条件を変更するように制御する。また、量子化条件制御部５０２は、入力端子１０１に入力された付加情報に基づき、ブロック単位で量子化条件を変更する。
【００５５】
次に、量子化条件制御部５０２を含む全体の処理について、図６のフローチャートを参照しながら説明する。量子化値は二値である例について説明する。図６の処理は、例えば、画像処理装置１１５のＣＰＵ２１１がＲＯＭ２１２に記憶されているプログラムをＲＡＭ２１３に読み出して実行することにより実現される。
【００５６】
Ｓ６０１では、ＣＰＵ２１１は、ＲＡＭ２１３に確保された変数ｉを初期化する。ここで、変数ｉは、垂直方向のアドレスをカウントする変数である。Ｓ６０２では、ＣＰＵ２１１は、ＲＡＭ２１３に確保された変数ｊを初期化する。ここで、変数ｊは、水平方向のアドレスをカウントする変数である。続いて、Ｓ６０３では、ＣＰＵ２１１は、現在の処理アドレスである座標（ｉ，ｊ）が多重化処理を実行すべき領域に属しているか否かを判定する。
【００５７】
図７を参照しながら、多重化領域について説明する。図７は、水平画素数がWIDTH、垂直画素数がHEIGHTから成る、一つの画像を示している。本実施形態では、この画像中に付加情報が多重化される例を想定する。画像の左上を原点として、横Ｎ画素、縦Ｍ画素でブロック化が行われる。本実施形態では、原点を基準点としてブロック化が行われるが、原点から離れた点を基準点として設定するようにしても良い。この画像中に最大限の情報を多重化するために、Ｎ×Ｍのブロックを基準点から配置していく。即ち、水平方向に配置可能なブロック数をＷ、垂直方向に配置可能なブロック数をＨとすると、ＷとＨは、式（１）及び（２）から算出される。
【００５８】
Ｗ  ＝  ＩＮＴ（ＷＩＤＴＨ／Ｎ）  ・・・（１）
Ｈ  ＝  ＩＮＴ（ＨＥＩＧＨＴ／Ｍ）  ・・・（２）
但し、ＩＮＴ（）は（）内の整数部分を示す。
【００５９】
式（１）、式（２）において割り切れない剰余画素数が、Ｎ×Ｍのブロックを複数配置した時の端部に相当し、本実施形態では、その部分を符号多重化領域外とする。
【００６０】
図６のＳ６０３では、現在処理している注目画素が多重化領域内でない、即ち、多重化領域外であると判定された場合には、Ｓ６０４において、ＣＰＵ２１１は、量子化条件Ｃを設定する。一方、多重化領域内であると判定された場合には、Ｓ６０５において、ＣＰＵ２１１は、多重化すべき付加情報を読み込む。ここで、説明を容易にする為に、付加情報は、ｃｏｄｅ［］という配列を用いて、各１ビットずつ表現されるものとする。例えば、付加情報を４８ビット分の情報と仮定すると、配列ｃｏｄｅ［］には、ｃｏｄｅ［０］からｃｏｄｅ［４７］まで、各１ビットずつが格納されている。
【００６１】
Ｓ６０５において、ＣＰＵ２１１は、ＲＡＭ２１３に確保された変数ｂｉｔに、式（３）のように、配列ｃｏｄｅ［］内の情報を代入する。
【００６２】
ｂｉｔ  ＝  ｃｏｄｅ［ＩＮＴ（ｉ／Ｍ）×Ｗ＋ＩＮＴ（ｊ／Ｎ）］・・・（３）
Ｓ６０６では、ＣＰＵ２１１は、代入された変数ｂｉｔが"１"であるか否かを判定する。前述したように、配列ｃｏｄｅ［］内の情報は各１ビットずつ格納されている為、変数ｂｉｔの値も"０"か"１"かの何れかを示すことになる。
【００６３】
ここで、"０"であると判定された場合には、Ｓ６０７において、ＣＰＵ２１１は、量子化条件Ａを設定し、"１"であると判定された場合には、Ｓ６０８において、ＣＰＵ２１１は、量子化条件Ｂを設定する。
【００６４】
次に、Ｓ６０９では、ＣＰＵ２１１は、Ｓ６０４、Ｓ６０７、Ｓ６０８で設定された量子化条件に基づいて量子化処理を行う。この量子化処理は、誤差拡散法により行われる。
【００６５】
Ｓ６１０では、ＣＰＵ２１１は、水平方向変数ｊをカウントアップして、Ｓ６１１において、カウントアップされた変数ｊが画像の水平画素数であるWIDTH未満か否かを判定する。ここで、変数ｊがWIDTH未満であると判定された場合、Ｓ６０３からの処理を繰り返す。一方、変数ｊがWIDTH未満でないと判定された場合、即ち、水平方向の処理がWIDTH画素数分終了した場合、Ｓ６１２において、ＣＰＵ２１１は、垂直方向変数ｉをカウントアップする。そして、Ｓ６１３において、ＣＰＵ２１１は、カウントアップされた変数ｉが画像の垂直画素数であるHEIGHT未満か否かを判定する。ここで、変数ｉがHEIGHT未満であると判定された場合、Ｓ６０２からの処理を繰り返す。一方、変数ｉがHEIGHT未満でないと判定された場合、即ち、垂直方向の処理がHEIGHT画素数分終了した場合、図６の処理を終了する。以上の処理により、Ｎ×Ｍ画素よりなるブロック単位で、量子化条件を変更する。
【００６６】
次に、量子化条件Ａ、Ｂ、Ｃの例について説明する。誤差拡散法における量子化条件には様々な因子があるが、本実施形態において量子化条件の因子は、量子化閾値である。Ｓ６０４で設定される量子化条件Ｃは、多重化領域外で用いられる為に、量子化閾値はどのような条件でも良い。前述したように、１画素が８ビットによる階調表現で、量子化レベルが２値の場合には、最大値である"２５５"、及び、最小値である"０"が量子化代表値となるが、その中間値となる"１２８"が量子化閾値として設定されることが多い。よって、本実施形態では、量子化条件Ｃは、量子化閾値を"１２８"固定値とする条件とする。
【００６７】
Ｓ６０７で設定される量子化条件Ａと、Ｓ６０８で設定される量子化条件Ｂは、多重化領域内のブロックで用いられる為、量子化条件の違いによる画質の違いを生じさせる必要がある。但し、画質の違いは視覚的には判別しにくいように表現し、かつ、紙上から容易に識別可能である必要がある。
【００６８】
図８（ａ）及び（ｂ）は、量子化条件Ａ、Ｂを説明するための図である。図８（ａ）は、量子化条件Ａにおける量子化閾値の変化の周期を示す図である。図中、一つのマスを１画素分と想定し、白いマスは固定閾値、灰色のマスを変動閾値とする。即ち、図８（ａ）の例では、横８画素、縦４画素のマトリクスを組み、灰色のマスについてのみ突出した値を閾値として設定する。
【００６９】
図８（ｂ）は、同様に、量子化条件Ｂにおける量子化閾値の変化の周期を示した図である。図８（ｂ）の例では、図８（ａ）とは異なり、横４画素、縦８画素のマトリクスを組み、灰色のマスについてのみ突出した値を閾値として設定する。
【００７０】
前述したように１画素が８ビットの階調値の場合に、例えば、固定閾値として"１２８"、突出した閾値を"１０"と設定する。量子化閾値が低くなると、注目画素の量子化値が"１"（量子化代表値"２５５"）になりやすくなる。即ち、図８（ａ）、（ｂ）ともに、図中の灰色のマスの並びで量子化値"１"が並びやすくなる。言い換えると、Ｎ×Ｍ画素のブロック毎に、図８（ａ）の灰色のマスの並びでドットが発生するブロックと、図８（ｂ）の灰色のマスの並びでドットが発生するブロックとが混在することになる。
【００７１】
誤差拡散法における量子化閾値の多少の変更は、画質的には大きな影響を及ぼさない。組織的ディザ法においては、使用するディザパターンによって、階調表現の画質が大きく左右される。しかしながら、前述したような、規則的に量子化閾値の変化を与えた誤差拡散法では、あくまでも画質を決定する階調表現は誤差拡散法であるので、ドットの並びが多少変化したり、テクスチャの発生が変化したり等は、階調表現の画質には殆ど影響を与えない。量子化閾値が変化した場合でも、あくまでも信号値と量子化値との差分となる誤差は周囲画素に拡散されるので、入力された信号値は、マクロ的に保存される。即ち、誤差拡散法におけるドットの並び、テクスチャの発生に関しては、冗長性が極めて大きいといえる。
【００７２】
上記の説明のように、本実施形態では、誤差拡散法の量子化閾値に、符号を表す所定の周期性を重畳することにより、多重化を実現している。しかしながら、他の重畳方式により多重化を実現しても良い。例えば、直接ＲＧＢの値（輝度情報）に、周期性を重畳する方式により多重化を実現しても良い。または、ＲＧＢの値を、輝度−色差情報など、他の色空間情報（例えばＣＩＥ  Ｌ＊ａ＊ｂ、ＹＣｒＣｂ信号）に分離して周期性を重畳する方式により多重化を実現しても良い。または、ＲＧＢの値をインク色（例えばＣＭＹＫ信号）に分離して周期性を重畳する方式により多重化を実現しても良い。
【００７３】
［付加情報の読取処理］
次に、図１の画像処理システムにおける付加情報分離部１０６の処理について説明する。図９は、付加情報分離部１０６の構成を示すブロック図である。説明を容易にする為に、前述の付加情報多重化部１０２の場合と同様、分割したブロック内に各１ビットずつの付加情報が多重化されている印刷物１１２から、付加情報を分離する例について説明する。当然のことながら、付加情報多重化部１０２における１ブロックあたりの付加情報量と、付加情報分離部１０６における１ブロックあたりの分離情報量とは等しくなる。
【００７４】
入力端子９００には、カメラ付携帯端末１０４で読み込まれた画像情報が入力される。ここで、カメラ付携帯端末１０４の撮像センサ１０５の解像度（撮像解像度）は、印刷物１１２を作成する際の印刷解像度以上が好ましい。勿論のことながら、正確に印刷物１１２のドットの点在情報を読み込む為には、サンプリング定理により、撮像センサ１０５側は、プリンタ側よりも２倍以上の解像度が必要になる。しかしながら、同等以上であれば、正確でなくとも、ある程度ドットが点在しているのを判別することが可能である。本実施形態では、説明を容易にするためにプリンタ解像度と撮像センサ１０５の解像度とは同一解像度であるとする。
【００７５】
幾何学的ずれ検出部９０１は、カメラ付携帯端末１０４で撮影した画像の幾何学的ずれを検出する。入力端子９００から送信される画像情報は、プリント部１０３による出力、カメラ付携帯端末１０４による撮影を経ている為に、プリンタ出力以前の画像情報とは幾何学的にずれている場合がある。そこで、幾何学的ずれ検出部９０１は、印刷物１１２と、印刷物１１２以外との境界線をエッジ検出にて検出する。
【００７６】
図１０は、撮影画像の一例を示す図である。印刷解像度と撮像センサ１０５の解像度とが同一解像度であれば、プリント部１０３の紙上記録時の斜行、及び、カメラ付携帯端末１０４を印刷物１１２にかざす時のずれ等により、画像の回転方向（傾き）が補正すべき大きな要因となる。そのため、印刷物１１２の境界線を検出することにより、どの程度、回転方向でずれが生じているかを判定する。
【００７７】
ブロック化部９０２は、横Ｐ画素、縦Ｑ画素単位にブロック化を行う。ここで、各ブロックは、電子透かしの重畳時にブロック化したＮ×Ｍ画素よりも小さい。即ち、式（４）の関係が成り立つ。
【００７８】
Ｐ≦Ｎ、かつ  Ｑ≦Ｍ …（４）
また、Ｐ×Ｑ画素単位のブロック化は、ある一定間隔毎にスキップして行われる。即ち、多重化時のＮ×Ｍ画素より成るブロックと想定される領域内に、Ｐ×Ｑ画素単位のブロックが一つ内包されるようにブロック化が行われる。スキップ画素数は、水平Ｎ画素分、垂直Ｍ画素分が基本となるが、幾何学的ずれ検出部９０１により検出されたずれ量をブロック数で割り出された１ブロックあたりのずれ量とスキップ画素数とに基づいて補正が行われる。
【００７９】
空間フィルタ９０３、９０４は、それぞれ特性の異なる空間フィルタＡ、Ｂを示し、フィルタリング部９０５は、周辺画素との積和を演算するディジタルフィルタリング部を示す。この空間フィルタの各係数は、多重化時の量子化条件の変動閾値の周期に対応して設定される。ここで、付加情報多重化部１０２における量子化条件の変更が図８（ａ）及び（ｂ）の２種類の周期性を用いて行われることにより、付加情報が多重化されたとする。その場合の付加情報分離部１０６に用いる空間フィルタＡ９０３、空間フィルタＢ９０４の例を、図１１（ａ）及び（ｂ）に示す。図１１（ａ）及び（ｂ）中、５×５画素の中央部が注目画素になり、それ以外の２４画素分が周辺画素になる。図１１（ａ）及び（ｂ）中、空白部の画素は、フィルタ係数が"０"であることを表す。図１１から明らかなように、図１１（ａ）及び（ｂ）は、エッジ強調フィルタになっている。しかも、その強調するエッジの方向性と多重化した時の変動閾値の方向性とが図１１（ａ）及び（ｂ）と図８（ａ）及び（ｂ）とで一致している。つまり、図１１（ａ）は図８（ａ）に一致し、また、図１１（ｂ）は図８（ｂ）に一致するように、空間フィルタが作成される。
【００８０】
間引き部９０６、９０７は、それぞれ、Ｐ×Ｑ画素により成るブロック内のフィルタリング後の信号（以下、変換値という）を、ある規則性に基づいて間引き処理する。本実施形態では、周期性と位相のそれぞれの規則性に分離して間引き処理を行う。即ち、間引き部９０６及び９０７では間引きの周期性が互いに異なっていて、それぞれにおいて、位相を変化させた複数の間引き処理を実行する。間引き方法については後述する。
【００８１】
変換値加算部９０８は、間引き部９０６及び９０７により間引きされた変換値を、位相毎にそれぞれ加算する。この間引き処理及び間引き画素の変換値の加算処理は、空間フィルタで強調した所定周波数ベクトルの電力（パワー）を抽出することに相当する。
【００８２】
分散値算出部９０９は、それぞれの周期性において、位相毎に加算した複数の加算値の分散値を算出する。判定部９１０は、それぞれの周期性における分散値に基づいて、多重化された符号を判定する。
【００８３】
図１２は、二次元の周波数領域を示す図である。横軸は水平方向の周波数、縦軸は垂直方向の周波数を示している。中心となる原点は直流成分を示し、原点から遠ざかるにつれて、高周波域となる。図１２中の円は、誤差拡散によるカットオフ周波数を示している。誤差拡散法のフィルタ特性は、低周波域がカットオフされたＨＰＦ（ハイパスフィルタ）の特性を示し、そのカットオフされる周波数は、対象画像の濃度に応じて変化する。
【００８４】
本実施形態では、量子化閾値の変更により量子化後に発生する周波数特性が変化するが、図８（ａ）による量子化閾値の変更では、図１２の周波数ベクトルＡ上に大きなパワースペクトルが生じる。また、図８（ｂ）による量子化閾値の変更では、図１２の周波数ベクトルＢ上に大きなパワースペクトルが生じる。付加情報分離時には、この大きなパワースペクトルが発生する周波数ベクトルを検出することに基づいて、多重化信号の判定が行われる。本実施形態では、各々の周波数ベクトルを個別に強調、抽出することが行われる。
【００８５】
図１１（ａ）及び（ｂ）は、特定の周波数ベクトルの方向性を有するＨＰＦに相当する。即ち、図１１（ａ）の空間フィルタでは、図１２の直線Ａ上の周波数ベクトルを強調することが可能になり、また、図１１（ｂ）の空間フィルタでは、図１２の直線Ｂ上の周波数ベクトルを強調することが可能になる。例えば、図８（ａ）に示すような量子化条件の変更により、図１２の直線Ａの周波数ベクトル上に大きなパワースペクトルが発生したとする。その時に、図１１（ａ）の空間フィルタではパワースペクトルの変化量が増幅するが、図１１（ｂ）の空間フィルタでは、ほとんど増幅されない。つまり、複数の空間フィルタを並列にフィルタリングした場合に、周波数ベクトルが一致した空間フィルタ時のみ増幅し、それ以外のフィルタによるフィルタリングの場合には増幅がほとんどない。従って、いかなる周波数ベクトル上に大きなパワースペクトルが発生しているかを容易に判定することができる。
【００８６】
図１３は、図９の間引き部９０６及び９０７、変換値加算部９０８、分散値算出部９０９、判定部９１０の処理を示すフローチャートである。図１３の処理は、例えば、カメラ付携帯端末１０４のＣＰＵ１５１０がＲＯＭ１５１１に記憶されているプログラムをＲＡＭ１５１２に読み出して実行することにより実現される。
【００８７】
図１３中、Ｓ１３０１及びＳ１３０２は、変数の初期化を示し、ＣＰＵ１５１０は、ＲＡＭ１５１２内に確保された変数ｉ、ｊの値を０に初期化する。
【００８８】
Ｓ１３０３では、ＣＰＵ１５１０は、間引き部９０６及び９０７による間引きの規則性の因子、即ち、"周期性"及び"位相"の２因子を決定する。本フローチャートでは、周期性に関する変数をｉ、位相に関する変数をｊとする。この周期性及び位相の条件は、番号（ナンバー）により管理され、ここでは、周期性ナンバー（以下Ｎｏ．と略す）がｉ、位相Ｎｏ．がｊである間引き方法の因子を設定する。
【００８９】
Ｓ１３０４では、ＣＰＵ１５１０は、ブロック内で間引きをした変換値を加算し、その加算値を変数の配列ＴＯＴＡＬ［ｉ］［ｊ］として記憶する。
【００９０】
Ｓ１３０５では、ＣＰＵ１５１０は、変数ｊをカウントアップし、Ｓ１３０６において、固定値Ｊと比較する。Ｊには、位相を変化させて間引き処理をする回数が格納されている。ここで、変数ｊがＪ未満であれば、Ｓ１３０３に戻り、カウントアップ後のｊによる新たな位相Ｎｏ．により、間引き処理及び間引き画素の変換値の加算処理が繰り返される。
【００９１】
位相をずらした間引き処理及び間引き画素の変換値の加算処理が設定回数終了した場合、Ｓ１３０７において、ＣＰＵ１５１０は、加算結果ＴＯＴＡＬ［ｉ］［ｊ］の分散値を算出する。即ち、各加算結果が位相の差によりどの程度ばらついているかが評価される。ここでは、ｉを固定して、Ｊ個のＴＯＴＡＬ［ｉ］［ｊ］の分散値を求める。ここで、分散値をＢ［ｉ］とする。
【００９２】
Ｓ１３０８において、ＣＰＵ１５１０は、変数ｉをカウントアップし、Ｓ１３０９において、固定値Ｉと比較する。Ｉには、周期性を変化させて間引き処理をする回数が格納されている。ここで、変数ｉがＩ未満であれば、Ｓ１３０２に戻り、カウントアップ後のｉによる新たな周期性Ｎｏ．の条件を用いて、再び、間引き処理及び間引き画素の変換値の加算処理が繰り返される。
【００９３】
Ｓ１３０９において、ＣＰＵ１５１０は、ｉが設定回数終了したと判定されると、分散値Ｂ［ｉ］は、Ｉ個算出できたことになる。Ｓ１３１０にて、Ｉ個の分散値の集合から、分散値の最大値を検出し、その時のｉの値を変数ｉｍａｘに代入する。Ｓ１３１１において、ＣＰＵ１５１０は、周期性Ｎｏ．がｉｍａｘである符号を、多重化された符号であると判定する。その後、図１３の処理を終了する。
【００９４】
以下、Ｉ＝２、Ｊ＝４の例を説明する。図１４は、ブロックサイズをＰ＝Ｑ＝１６とした時の間引き方法を説明するための図であり、テーブル形式で示している。図１４においては、ブロック内の一マスが一画素分を表している。図１４では、ブロック形状をＰ＝Ｑの正方形としているが、正方形に限られず、また、矩形以外でも良い。
【００９５】
図１４（ａ）は、周期性Ｎｏ．＝０の場合の間引き方法（図９の間引き部Ａ９０６に相当）を示し、図１４（ｂ）は、周期性Ｎｏ．＝１の場合の間引き方法（図９の間引き部Ｂ９０７に相当）を示している。図中、ブロック内の各画素に示している値は、位相Ｎｏ．であるｊの間引き画素を示している。例えば"０"と表示している画素は、ｊ＝０の時の間引き画素に対応する。即ち、図１４（ａ）及び（ｂ）ともに、位相は４種類であり、位相Ｎｏ．ｊが０〜３の場合の間引き方法に相当する。
【００９６】
図１４（ａ）の周期性は図８（ａ）の周期性に一致し、図１４（ｂ）の周期性は図８（ｂ）の周期性に一致している。前述したように、図８（ａ）及び（ｂ）ともに、図中の灰色のマスの並びで量子化値"１"（但し、"０"、"１"の２値の場合）が並びやすくなる。その為、例えば、多重化時に量子化条件Ａであったブロックの場合には、図８（ａ）の周期性で量子化値"１"が並びやすくなる。適合した空間フィルタを適用してフィルタリングが行われた場合には、更にその周波数成分が増幅され、図１４（ａ）の周期性で変換値の間引き処理及び間引き画素の変換値の加算処理が行われると、その加算結果の分散値は大きくなる。
【００９７】
それに比べて、量子化条件Ａであったブロックを、適合しない空間フィルタを適用してフィルタリングし、なおかつ、図１４（ｂ）の周期性により間引き処理及び間引き画素の変換値の加算処理が行われると、変換値の加算結果の分散値は小さくなる。これは、量子化値の周期性と間引きの周期性とが異なることから、間引きの位相の違いによる変換値の加算値は平均的になり、ばらつきが小さくなるからである。同様に、多重化時に量子化条件Ｂであったブロックについて、図１４（ａ）の周期性で変換値の間引き処理及び間引き画素の変換値の加算処理が行われると、その加算結果の分散値は小さくなる。一方、その場合に、図１４（ｂ）の周期性で変換値の間引き処理及び間引き画素の変換値の加算処理が行われると、その加算結果の分散値は大きくなる。
【００９８】
図６で説明したように、ｂｉｔ＝０を量子化条件Ａに設定し、ｂｉｔ＝１を量子化条件Ｂに設定している。その為、周期性Ｎｏ．＝０の分散値が大きいときには、ｂｉｔ＝０と判定することができ、周期性Ｎｏ．＝１の分散値が大きいときには、ｂｉｔ＝１と判定することができる。
【００９９】
このように、量子化条件と、空間フィルタ特性と、間引き条件の周期性とを関連付けることで、多重化及び分離が容易に実現できる。本実施形態では、周期性Ｎｏ．は０と１の２種類であり、ブロック内の多重化符号は１ビットであった。しかしながら、多重化符号は、１ビットより多くても良い。当然に、量子化条件の種類と、空間フィルタの種類と、間引き条件の周期性Ｎｏ．の種類（Ｉの値）とは一致する。
【０１００】
本実施形態によれば、直交変換による量子化条件の規則性に対応した周波数のパワーの比較をしなくても、多重化された符号を容易に分離できる。しかも、実空間領域の処理であるので、極めて高速に分離処理が実現できる。
【０１０１】
以上、本実施形態を説明してきたが、量子化条件Ａ及びＢ、空間フィルタＡ及びＢ、間引き部Ａ及びＢは一例であり、これに限られるものではない。他の周期性について行われても良いし、空間フィルタのタップ数、間引きのブロックサイズ等は、本実施形態での例よりも大きくても小さくても良い。
【０１０２】
また、図１３の処理では、説明上、周期性Ｎｏ．である変数ｉ、及び、位相Ｎｏ．である変数ｊの繰り返し処理を説明した。しかしながら、Ｐ×Ｑ画素よりなるブロック内の画素アドレスによる繰り返し処理により実現しても良い。即ち、図１４（ａ）（ｂ）に示したように、ブロック内の各画素アドレスに対して周期性Ｎｏ．及び位相Ｎｏ．の２種の情報をテーブルとして予め格納しておき、対応した周期性Ｎｏ．及び位相Ｎｏ．の各々の変数に対して変換値を加算していく方法である。この方法では、Ｐ×Ｑ画素分を処理するだけで、周期性Ｎｏ．及び位相Ｎｏ．の各集合の加算値を並列に算出することができる。
【０１０３】
また、図１３の処理では、空間フィルタによるフィルタリング後の間引き画素の変換値の加算結果の分散値を算出して、分散値の大小比較により、符号を判定していたが、これに限られない。分散値を用いない評価関数の比較により判定されても良い。間引きした変換値の加算結果の偏りは、位相をずらした際に、一つの位相の時だけ値が突出しやすいため、"ばらつき度合い"が評価できれば良い。
【０１０４】
例えば、ばらつき度合いを評価するには、例えば、分散値以外に以下のような評価関数が用いられても良い。
【０１０５】
１．間引きした変換値を加算した加算値の最大値と最小値の差分。
【０１０６】
２．間引きした変換値を加算した加算値の最大値と２番目に大きな値との差分、もしくは、最小値と２番目に小さな値との差分のいずれか。
【０１０７】
３．間引きした変換値を加算した加算値によるヒストグラムを作成した時の、前後の順番の差分の最大値。
【０１０８】
また、上記３つの評価関数は絶対的な差分値であるが、これらの差分値と変換値、もしくは、画素値や変換値の総和等との相対的な比率を評価関数として用いても良い。また、量子化値は二値化を例にして説明したが、これに限られない。
【０１０９】
以上のように、本実施形態によれば、画像に埋め込む付加情報の内容を解析し、その解析結果に応じて前処理の内容を切り替えることで、付加情報に適した前処理を実行することができる。
【０１１０】
［その他の実施例］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１１１】
１０２  付加情報多重化部：  １０４  カメラ付携帯端末：  １０６  付加情報分離部：  １１５  画像処理装置
【図１】
0006664179.tif 000002
【図２】
0006664179.tif 000003
【図３】
0006664179.tif 000004
【図４】
0006664179.tif 000005
【図５】
0006664179.tif 000006
【図６】
0006664179.tif 000007
【図７】
0006664179.tif 000008
【図８】
0006664179.tif 000009
【図９】
0006664179.tif 000010
【図１０】
0006664179.tif 000011
【図１１】
0006664179.tif 000012
【図１２】
0006664179.tif 000013
【図１３】
0006664179.tif 000014
【図１４】
0006664179.tif 000015
【図１５】
0006664179.tif 000016