(57)【要約】【課題】印刷物を撮像した画像から適切に情報を抽出する。【解決手段】画像処理装置は、透かし情報が多重化された印刷物の撮像に用いられる撮像条件を設定する設定手段と、設定された撮像条件に従って撮像することで得られた画像から、透かし情報の分離可能性を示す評価値を算出する算出手段と、評価値が所定の閾値未満の場合、設定されている撮像条件を、第一の撮像条件から、第一の撮像条件とは異なる第二の撮像条件に変更する変更手段と、第二の撮像条件に従って撮像することで得られた画像を含む画像から透かし情報を分離する分離手段とを備える。【選択図】図１
2019004337.tif 000002
【特許請求の範囲】
【請求項１】
透かし情報が多重化された印刷物の撮像に用いられる撮像条件を設定する設定手段と、
前記設定された撮像条件に従って撮像することで得られた画像から、前記透かし情報の分離可能性を示す評価値を算出する算出手段と、
前記評価値が所定の閾値未満の場合、前記設定されている撮像条件を、第一の撮像条件から、前記第一の撮像条件とは異なる第二の撮像条件に変更する変更手段と、
前記第二の撮像条件に従って撮像することで得られた画像を含む画像から前記透かし情報を分離する分離手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記評価値は、前記透かし情報を構成する要素のうち、分離に成功した要素の割合を示す分離効率であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記分離効率は、前記第一の撮像条件に従って撮像することで得られた画像において分離に成功した要素の割合を示すことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記分離効率は、前記第一の撮像条件に従って撮像することで得られた画像において分離に成功した要素にさらに、前記第二の撮像条件に従って撮像することで得られた画像において分離に成功した要素を積算した要素の割合を示すことを特徴とする請求項２に記載の画像処理装置。
【請求項５】
前記評価値は、前記設定された撮像条件に従って撮像することで得られた画像の特徴量である請求項１に記載の画像処理装置。
【請求項６】
前記特徴量は、鮮鋭度であることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記特徴量は、ジャギーの発生度合いであることを特徴とする請求項５に記載の画像処理装置。
【請求項８】
前記分離手段は、前記設定された撮像条件に従って撮像された画像から前記透かし情報を分離する処理を繰り返し行い、後の処理においては、前のいずれの処理においても分離に成功していない要素に対する分離を行なうことを特徴とする請求項１から７のいずれか一項に記載の画像処理装置。
【請求項９】
前記透かし情報の分離が成功していない要素がない場合、前記要素から構成される前記透かし情報を出力する出力手段をさらに備えることを特徴とする請求項１から８のいずれか一項に記載の画像処理装置。
【請求項１０】
前記透かし情報を構成する各要素は、所定のブロック単位で多重化されていることを特徴とする請求項１から９のいずれか一項に記載の画像処理装置。
【請求項１１】
前記第二の撮像条件は、前記第一の撮像条件よりも高画質の画像が得られる撮像条件であることを特徴とする請求項１から１０のいずれか一項に記載の画像処理装置。
【請求項１２】
前記第二の撮像条件は、前記第一の撮像条件よりも高い解像度の画像が得られる撮像条件であることを特徴とする請求項１１に記載の画像処理装置。
【請求項１３】
前記第二の撮像条件は、前記第一の撮像条件よりも圧縮率が低い画像が得られる撮像条件であることを特徴とする請求項１１に記載の画像処理装置。
【請求項１４】
前記第一の撮像条件は、動画撮像モードであり、前記第二の撮像条件は、静止画撮像モードであることを特徴とする請求項１１に記載の画像処理装置。
【請求項１５】
前記第一の撮像条件は、ＪＰＥＧ撮像モードであり、前記第二の撮像条件は、ＲＡＷ画像撮像モードであることを特徴とする請求項１１に記載の画像処理装置。
【請求項１６】
前記第二の撮像条件は、前記第一の撮像条件よりもシャッタースピードが速い撮像条件であることを特徴とする請求項１から１０のいずれか一項に記載の画像処理装置。
【請求項１７】
前記所定の閾値は、分離処理の回数に応じて値が高くなることを特徴とする請求項１から１６のいずれか一項に記載の画像処理装置。
【請求項１８】
前記所定の閾値は、分離処理の時間に応じて値が高くなることを特徴とする請求項１から１７のいずれか一項に記載の画像処理装置。
【請求項１９】
撮像手段をさらに備え、
前記設定手段は、前記撮像手段での撮像に用いられる撮像条件を設定することを特徴とする請求項１から１８のいずれか一項に記載の画像処理装置。
【請求項２０】
前記評価値が前記所定の閾値未満の場合、前記撮像条件を変更するための画面を表示する表示手段をさらに備えることを特徴とする請求項１から１９のいずれか一項に記載の画像処理装置。
【請求項２１】
前記変更手段は、前記画面を通じて撮像条件の変更が指示された場合、前記変更を行なうことを特徴とする請求項２０に記載の画像処理装置。
【請求項２２】
透かし情報が多重化された印刷物の撮像に用いられる撮像条件を設定するステップと、
前記設定された撮像条件に従って撮像することで得られた画像から、前記透かし情報の分離可能性を示す評価値を算出するステップと、
前記評価値が所定の閾値未満の場合、前記設定されている撮像条件を、第一の撮像条件から、前記第一の撮像条件とは異なる第二の撮像条件に変更するステップと、
前記第二の撮像条件に従って撮像することで得られた画像を含む画像から前記透かし情報を分離するステップと
を備えることを特徴とする画像処理方法。
【請求項２３】
コンピュータを、請求項１から２１のいずれか一項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷物に埋め込まれた情報を扱う技術に関する。
【背景技術】
【０００２】
電子透かしやステガノグラフィと称される、視覚的に目立たないように印刷物中に情報を埋め込む技術が提案されている。印刷物に埋め込まれた情報を抽出する場合、印刷物の画像を読み取り、読み取った画像から情報を抽出することが行なわれている。
【０００３】
特許文献１には、カメラ付き通信機器を用いて連写撮像機能で撮像した画像から電子透かしを読み取り、読み取った結果に基づいて、予め設定されたアプリケーションプログラムを実行する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１５０８４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、カメラ付き携帯電話やスマートフォンに搭載したカメラでは、情報が埋め込まれた印刷物（以下、「多重化印刷物」という）とカメラとの相対的な位置関係が、固定的とはならない場合が多い。特許文献１に記載の技術では、一律の撮像設定の連写モードで撮像が行なわれているので、例えば多重化印刷物とカメラとの距離が適切でない場合には、不十分な解像度の画像から検出処理を繰り返すことになり、情報の取り出しに失敗してしまう。
【０００６】
本発明は、上記課題に鑑み、印刷物を撮像した画像から適切に情報を抽出することを可能とする画像処理装置、画像処理方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様に係る画像処理装置は、透かし情報が多重化された印刷物の撮像に用いられる撮像条件を設定する設定手段と、前記設定された撮像条件に従って撮像することで得られた画像から、前記透かし情報の分離可能性を示す評価値を算出する算出手段と、前記評価値が所定の閾値未満の場合、前記設定されている撮像条件を、第一の撮像条件から、前記第一の撮像条件とは異なる第二の撮像条件に変更する変更手段と、前記第二の撮像条件に従って撮像することで得られた画像を含む画像から前記透かし情報を分離する分離手段とを備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、印刷物を撮像した画像から適切に情報を抽出することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】画像処理システムを示すブロック図である。
【図２】付加情報多重化装置を示すブロック図である。
【図３】誤差拡散部を示すブロック図である。
【図４】多重化処理を示すフローチャートである。
【図５】ブロック化の一例と割り当てられる符号を説明する図である。
【図６】量子化閾値の一例を示す図である。
【図７】付加情報分離部を示すブロック図である。
【図８】画像の傾きの説明する図である。
【図９】空間フィルタの一例を示す図である。
【図１０】二次元周波数領域での周波数ベクトルを説明する図である。
【図１１】間引き部、変換値加算部、判定部の処理を示すフローチャートである。
【図１２】間引き処理の一例を示す図である。
【図１３】間引き処理の一例を示す図である。
【図１４】カメラ付携帯端末の処理を示すフローチャートである。
【図１５】多重化印刷物と撮像画像の一例である。
【図１６】分離効率を説明する図である。
【図１７】分離効率を説明する図である。
【図１８】カメラ付携帯端末の処理を示すフローチャートである。
【図１９】カメラ付携帯端末の処理を示すフローチャートである。
【図２０】カメラ付携帯端末の表示画面を示す図である。
【図２１】画像処理システムを示すブロック図である。
【図２２】カメラ付携帯端末の処理を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下に、添付図面を参照して、本発明の好適な実施の形態を例示的に詳しく説明する。ただし、以下の実施形態に記載されている構成要素はあくまで例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。
【００１１】
なお、本明細書において、「記録」（「プリント」という場合もある）とは、文字、図形等有意の情報を形成するのみならず、有意無意を問わずに情報を形成することを表すものである。さらに人間が視覚で知覚し得るように顕在化したものであるか否かも問わず、広く記録媒体上に画像、模様、パターン等を形成する、または媒体の加工を行う場合も表すものとする。
【００１２】
また、「記録媒体」とは、一般的な記録装置で用いられる紙のみならず、布、プラスチック・フィルム、金属板、ガラス、セラミックス、木材、皮革等のようにインクを受容可能なものを広く表すものとする。
【００１３】
また、「付加情報」とは、これから印刷物に埋め込まれる情報、あるいは既に印刷物に埋め込まれた情報のことである。付加情報は、視覚的に目立たないように印刷物に埋め込まれている（付加されている、あるいは多重化されている、という場合もある）。付加情報のことを透かし情報ともいう。
【００１４】
また、「多重化印刷物」とは、付加情報が埋め込まれた（多重化された）印刷物のことである。
【００１５】
＜＜実施形態１＞＞
＜システム構成＞
本実施形態の画像処理システムは、付加情報を印刷物に埋め込む付加情報多重化装置と、その付加情報を印刷物から分離（抽出）する付加情報分離装置とを備えている。付加情報多重化装置としては、プリンタエンジンへ出力すべき画像データを生成するコンピュータ、およびスマートフォンなどの多機能端末装置などが挙げられる。これらの装置内部に実装されているプリンタドライバソフト、またはアプリケーションソフトが実行されることで、付加情報多重化装置として機能する。あるいは、付加情報多重化装置は、複写機、ファクシミリ、プリンタ本体等でもよい。そして、これらの装置に実装されているハードウエア、及びソフトウエアによって、これらの装置が、付加情報多重化装置として機能してもよい。付加情報分離装置としては、カメラ付携帯電話、カメラ付スマートフォンやタブレットＰＣなどの多機能端末装置が挙げられる。以下では撮像機能が搭載されたデバイスをカメラ付携帯端末という。以下の実施形態では、付加情報分離装置は、このようなカメラ付携帯端末を例に挙げて説明するが、これに限られるものではない。撮像された画像を扱う画像処理装置であればよく、撮像機能を備えていなくてもよい。例えば、デジタルスチールカメラで撮像された画像を取得し、その画像から付加情報を分離するアプリケーションソフトを備えているコンピュータなどの装置を付加情報分離装置として用いてもよい。
【００１６】
図１は、本実施形態の画像処理システムの構成を示すブロック図である。画像処理システムは、付加情報多重化装置１０２、プリンタ１０３、およびカメラ付携帯端末１０４（付加情報分離装置）を備えている。以下、画像処理システムの概要を説明する。
【００１７】
付加情報多重化装置１０２には、入力端子１００から多階調の画像データが入力される。また、付加情報多重化装置１０２には、入力端子１０１から付加情報が入力される。付加情報は、入力端子１００から入力された画像データで表される画像に埋め込むべき情報である。付加情報は、入力端子１００から入力された画像データが示す画像とは別個の情報である。付加情報は、どのような種別の情報であってもよい。例えば、音声情報、動画情報、テキスト文書情報、入力端子１００にて入力される画像に関する著作権、撮像日時、撮像場所、撮像者等の諸情報、または全く別の画像等が挙げられる。また、これらの情報が格納されているネットワーク上のサーバー等を特定するためのＵＲＬ等の格納場所情報でもよい。
【００１８】
付加情報多重化装置１０２は、視覚的に判別され難いように、画像に付加情報を埋め込む（多重化する）装置である。本実施形態において付加情報多重化装置１０２は、多階調の画像データの量子化処理を行う際に、付加情報を多重化する処理を併せて行う。詳細については後述する。
【００１９】
プリンタ１０３は、付加情報多重化装置１０２からの印刷指示に従って、付加情報が埋め込まれた画像が印刷された印刷物を出力する。プリンタ１０３は、疑似階調処理を用いることにより階調表現を実現するプリンタ（例えばインクジェットプリンタ、レーザープリンタ等）を用いることができる。印刷物に埋め込まれた付加情報は、カメラ付携帯端末１０４（付加情報分離装置）で分離される。
【００２０】
カメラ付携帯端末１０４は、撮像部１０５、付加情報分離部１０６、分離情報積算部１０７、第一の判定部１０８、撮像条件設定部１０９、スピーカー１１１、ディスプレイ１１２、および第二撮像センサ１１３を備える。
【００２１】
カメラ付携帯端末１０４は、撮像部１０５によって印刷物を撮像することで得られた画像を取得する。撮像部１０５は、オートフォーカスやシャッタースピード等の撮像条件を設定することができる。また、撮像部１０５は、公知のカメラ信号処理部を含む。カメラ信号処理部では、ＣＣＤやＣＭＯＳセンサ等の撮像素子から得られたデジタル信号のデモザイギング、ノイズ除去、顔等の画像認識、ＪＰＥＧやＭＰＥＧ−４  ＡＶＣ／Ｈ．２６４等の圧縮処理などが行われる。
【００２２】
付加情報分離部１０６は、撮像部１０５による撮像で得られた画像から付加情報を分離する処理を行う。本実施形態では、付加情報は、複数のビットから構成されているものとする。また、個々のビット（０か１を示す情報）は、画像の中の所定領域にそれぞれ埋め込まれているものとする。以下では、画像から分離されることで得られる情報であり、このような埋め込まれたビットのそれぞれのことを分離情報という。つまり、分離情報は、付加情報を構成する要素ともいえる。
【００２３】
分離情報積算部１０７は、画像の中の複数の個所において分離に成功した分離情報の数（ビットの数）を積算する。本実施形態では、撮像した画像を切り替えながら付加情報の分離を繰り返す。分離情報積算部１０７は、このような繰り返しの分離処理において分離に成功した分離情報の数を積算する。詳細は後述する。
【００２４】
第一の判定部１０８は、分離情報積算部１０７で積算された分離情報の数に基づいて、撮像条件の設定を変更すべきか否かを判定する。すなわち、第一の判定部１０８は、分離情報積算部１０７で積算された分離情報が、どの程度分離に成功して、どの程度分離に失敗しているかの指標となる評価値（分離効率）を算出する。そして、その分離効率に基づいて、このままの撮像条件での設定を継続するか否かを判定する。詳細については後述する。
【００２５】
撮像条件設定部１０９は、第一の判定部１０８の判定結果に基づいて、撮像部１０５の撮像条件を制御する。例えば、分離効率が高くないような場合には、撮像条件設定部１０９は、撮像部１０５の撮像条件を、第一の撮像条件から第二の撮像条件に変更する。詳細については後述する。
【００２６】
分離情報積算部１０７は、所望の情報量の分離情報が得られた場合、その所望の情報量の分離情報で構成されている付加情報を出力端子１１０に出力する。出力端子１１０は、取得した付加情報を出力するインターフェイスであり、例えば付加情報が音声情報であれば、カメラ付携帯端末１０４のスピーカー１１１へ音声を出力する。付加情報が画像情報であれば、ディスプレイ１１２へ画像を出力する。出力端子１１０は、外部デバイスへデータを出力するインターフェイスでも構わない。また、カメラ付携帯端末１０４に複数の撮像センサがある場合、印刷物の撮像は、第二撮像センサ１１３で行ってもよい。
【００２７】
カメラ付携帯端末１０４の付加情報分離部１０６、分離情報積算部１０７、第一の判定部１０８、および撮像条件設定部１０９は、不図示のＣＰＵが、不図示のメモリなどに格納されたプログラムを実行することによって実現することができる。
【００２８】
本実施形態では、付加情報分離装置としてカメラ付携帯端末１０４（画像処理装置）を用いている。一般に、付加情報を分離する装置として、複合機などに備えられているスキャナ（イメージスキャナ）を用いる形態もあるが、カメラ付携帯端末１０４は可搬性に富んでいるので、使用者が手軽に付加情報を得ることができる。また、多重化印刷物が例えば写真アルバムのような厚みを有する形状の場合にも、カメラ付携帯端末１０４を用いると、アルバムに折り目などが生じさせることなく付加情報を得ることができる。ただし、カメラ付携帯端末１０４は、スキャナと異なり、多重化印刷物とカメラとの相対的な位置関係（以下、「カメラ姿勢」という）が、固定的ではない。例えば、多重化印刷物とカメラとの相対的な距離、あおり、または回転が、固定的にはならない。このため、カメラ姿勢によっては多重化印刷物から付加情報を抽出するに適していない画像が撮像される場合がある。例えば、多重化印刷物を近距離で接写撮像した場合には一度の撮像での有効面積は小さくなる一方で、印刷物を表す画像の解像度は高くなる。逆に、距離を離して撮像した場合には、有効面積は大きくなる一方で印刷物を表す画像の解像度は低下する。適切なカメラ姿勢でない場合には、使用者にとっては付加情報の抽出に時間を要してしまったり、同じ撮像条件での画像を元に付加情報を抽出する処理が繰り返されることになどにより、付加情報の抽出ができない状態が継続されてしまったりする場合がある。特に、付加情報の情報量が多い場合には、このような傾向が顕著となる。また、多重化印刷物とカメラとの距離に限らず、例えば相対的な回転方向のずれが生じた場合でも、同じ撮像条件での画像からでは、付加情報が抽出できない状態が継続されてしまう可能性がある。
【００２９】
そこで、本実施形態では、カメラ付携帯端末１０４の撮像条件を、多重化印刷物を撮像して得られた画像からの分離効率に応じて切り替える処理を行う。カメラ付携帯端末１０４の撮像条件の制御の詳細については後述する。以下では、まず付加情報の多重化処理と、付加情報の分離処理の説明を行う。その後に、撮像条件の制御について説明する。なお、本実施形態では、画像処理装置の一例として、カメラ付携帯端末１０４を例に挙げて説明するが、撮像装置において撮像された画像を取得して処理し、かつ撮像装置の撮像条件を設定する情報を撮像装置に送信する画像処理装置であってもよい。
【００３０】
＜付加情報多重化装置の説明＞
図２は、付加情報多重化装置１０２の構成を示すブロック図である。付加情報多重化装置１０２は、誤差拡散部２００、ブロック化部２０１、量子化条件制御部２０２、および制御部２１０を備える。
【００３１】
誤差拡散部２００は、入力端子１００より入力された画像データに対して誤差拡散法を用いた疑似階調処理（誤差拡散処理）を行う。誤差拡散処理によって、入力階調数よりも少ない量子化レベルに画像データが変換される。複数画素の量子化値によって面積的に階調性が表現される。誤差拡散部２００は、量子化条件制御部２０２で制御される量子化条件に従った誤差拡散処理を行う。詳細は後述する。
【００３２】
ブロック化部２０１は、入力された画像データを所定の領域単位にブロック化する（区分する）。ブロック化部２０１は、矩形の領域にブロック化してもよいし、矩形以外の領域にブロック化してもよい。本実施形態では、１つのブロックに対して１つの単位情報（ビット）が埋め込まれる。
【００３３】
量子化条件制御部２０２は、入力端子１０１で入力された付加情報に基づき、ブロック単位で量子化条件を変更する制御を行う。本実施形態では、量子化条件を変更しながら量子化処理を行うことで、付加情報が埋め込まれることになる。
【００３４】
制御部２１０は、ＣＰＵ２１１、ＲＯＭ２１２、ＲＡＭ２１３などから構成される制御部である。ＣＰＵ２１１は、ＲＯＭ２１２に保持された制御プログラムに従って、上述した各構成の動作及び処理を制御する。ＲＡＭ２１３は、ＣＰＵ２１１の作業領域として使用される。
【００３５】
図３は、誤差拡散部２００の詳細を示すブロック図である。本実施形態では、多値の階調値が２値に量子化される誤差拡散処理を例にして説明する。加算器３００では、入力された画像データの注目画素値と、既に２値化されている周辺画素から分配された量子化誤差とが加算される。
【００３６】
比較部３０１は、量子化条件制御部２０２から得られる量子化閾値と、誤差が加算された加算結果と、を比較する。比較部３０１は、加算結果が量子化閾値よりも大きい場合には"１"を、それ以外では"０"を量子化値として出力する。例えば、８ビットの精度で画素の階調を表現する場合には、最大値である"２５５"と最小値である"０"で表現するのが一般的である。本実施形態では、量子化値が"１"の場合に、紙上にドット（インク、トナー等）が印刷されるものとする。
【００３７】
減算器３０２は、量子化結果と前述した加算結果との誤差を算出する。誤差配分演算部３０３は、誤差に基づいて、今後の量子化処理が施される周辺画素に誤差を配分する。誤差の配分割合は注目画素との相対的な距離に基づいて実験的に設定された誤差の配分テーブル３０４を予め用意しておき、配分テーブルに記された配分割合に基づいて誤差を分配する。図３の配分テーブル３０４は、注目画素の周囲４画素分の配分テーブルを示しているが、これに限るものではない。
【００３８】
図４は、量子化条件制御部２０２の処理を含む付加情報多重化装置１０２全体の処理の一例を示すフローチャートである。量子化値は２値である場合を例に説明する。
【００３９】
ステップＳ４０１において量子化条件制御部２０２は、変数iの初期化を行なう。変数iは垂直方向のアドレスをカウントする変数である。ステップＳ４０２において量子化条件制御部２０２は、変数jの初期化を行なう。変数jは水平方向のアドレスをカウントする変数である。
【００４０】
ステップＳ４０３において量子化条件制御部２０２は、i、jのアドレス値が示す座標が、多重化処理（付加情報の埋め込み処理）を実行すべき領域（以下、「多重化領域」という）内か否かを判定する。図５を用いて多重化領域について説明する。
【００４１】
図５（ａ）は、水平画素数がWIDTH、垂直画素数がHEIGHTから成る、１つの画像を示している。この１つの画像全体に対して１つの付加情報を多重化すると想定する。図５（ａ）の画像の左上を原点とし、横Ｎ画素、縦Ｍ画素でブロック化をする。本実施形態では、原点を基準点としてブロック化を行うが、原点から離れた点を基準点として設定しても良い。この画像に対して最大限の情報を多重化する場合、Ｎ×Ｍのブロックを基準点から配置していく。すなわち、水平方向に配置可能なブロック数をＷ、垂直方向に配置可能なブロック数をＨとすると、以下の関係になる。
W = INT(WIDTH / N) …式１
H = INT(HEIGHT / M) …式２
但し、INT( )は( )内の整数部分を示す。
【００４２】
式１、式２において割り切れない剰余画素数が、Ｎ×Ｍのブロックを複数配置した時の端部に相当し、これらのアドレス値が示す座標が多重化領域ではない領域（多重化領域外）となる。
【００４３】
ステップＳ４０３にて、現在処理している注目画素が多重化領域外である判定された場合に、ステップＳ４０４に進み、量子化条件制御部２０２は、量子化条件Ｃを設定する。その後、ステップＳ４０９に進む。量子化条件Ｃについては後述する。一方、ステップＳ４０３において現在処理している注目画素が多重化領域内であると判定された場合には、ステップＳ４０５に進む。
【００４４】
ステップＳ４０５において量子化条件制御部２０２は、多重化すべき付加情報に基づいて、現在処理している注目画素が含まれるブロックに割り振る変数ｂｉｔを決定する。説明を容易にする為に、付加情報をcode[ ]という配列を用いて、各１ビットずつ表現するものとする。例えば付加情報を４８ビット分の情報と仮定すると、配列code[ ]はcode[0]からcode[47]まで、各１ビットずつが格納されていることになる。
【００４５】
ステップＳ４０５において、変数bitには、以下のように配列code[ ]内の情報が代入される。
bit = code[INT(i / M)×W + INT(j / N)] …式３
【００４６】
具体例として、以下の条件を適用した場合を例に挙げる。
WIDTH = 70
HEIGHT = 120
N = 8
M = 11
式１より、W= INT(70/8) = 8
式２より、H = INT(120/11) = 10
となる。このため、式３が参照する配列code[ ]は、図５（ｂ）に示すように設定されることになる。例えば(i,j)=(11, 5)の座標の注目画素に対する変数bitには、code[8]に格納されているビットが代入されることになる。
【００４７】
ステップＳ４０６において量子化条件制御部２０２は、ステップＳ４０５で決定された変数bitが"１"か否かを判定する。前述したように、配列code[ ]内の情報は各１ビットずつ格納されているので、変数bitの値も"０"か"１"かの何れかを示すことになる。
【００４８】
ステップＳ４０６において"０"と判定された場合には、ステップＳ４０７に進み、量子化条件制御部２０２は、量子化条件Ａを設定する。一方、"１"と判定された場合には、Ｓ４０８に進み、量子化条件制御部２０２は、量子化条件Ｂを設定する。量子化条件については後述する。
【００４９】
ステップＳ４０９において誤差拡散部２００は、ステップＳ４０４、ステップＳ４０７、またはステップＳ４０８のいずれかで設定された量子化条件に基づいて、量子化処理（誤差拡散処理）を行う。
【００５０】
ステップＳ４１０において量子化条件制御部２０２は、水平方向変数jをカウントアップする。ステップＳ４１１に量子化条件制御部２０２は、水平方向変数jが画像の水平画素数であるWIDTH未満か否かを判定し、処理画素数がWIDTHになるまで前述の処理を繰り返す。また、水平方向の処理がWIDTH画素数分終了すると、ステップＳ４１２に進み、量子化条件制御部２０２は、垂直方向変数iをカウントアップする。そして、ステップＳ４１３にて量子化条件制御部２０２は、画像の垂直画素数であるHEIGHT未満か否かを判定し、処理画素数がHEIGHTになるまで前述の処理を繰り返す。以上の動作手順により、Ｎ×Ｍ画素よりなるブロック単位で、量子化条件を変更することが可能になる。
【００５１】
続いて、量子化条件Ａ、Ｂ、Ｃの例について説明する。誤差拡散法における量子化条件は様々な因子があるが、本実施形態では量子化条件は、量子化閾値とする。量子化条件Ｃは、多重化領域外の画素に適用される条件であるので、量子化閾値は何でもよい。前述したように、１画素が８ビットによる階調表現で、量子化レベルが２値の場合には、最大値である"２５５"、及び、最小値である"０"が量子化代表値となる。一般に量子化閾値としては、その中間値となる"１２８"を設定することが多い。このため、本実施形態では、量子化条件Ｃでは、量子化閾値を"１２８"に固定とする条件であるものとする。
【００５２】
一方、量子化条件Ａおよび量子化条件Ｂは、多重化領域内の画素に適用される条件である。このため、付加情報を表すために、量子化条件の違いによる画質の違いを生じさせることが求められる。但し、画質の違いは視覚的には判別しにくいように表現し、かつ、紙上から容易に識別できることが好ましい。
【００５３】
図６は、量子化条件Ａおよび量子化条件Ｂを表した図である。図６（ａ）は、量子化条件Ａにおける量子化閾値の変化の周期を示す図である。図６（ａ）において、１つのマスを１画素分と想定し、白いマスは固定閾値、ハッチングされたマスを変動閾値とする。すなわち、図６（ａ）の例では、横８画素、縦４画素のマトリクスを組む。そして、ハッチングされたマスの閾値を、突出した値の閾値として設定する。
【００５４】
図６（ｂ）は、図６（ａ）と同様に、量子化条件Ｂにおける量子化閾値の変化の周期を示す図である。図６（ｂ）の例では、図６（ａ）とは異なり、横４画素、縦８画素のマトリクスを組み、ハッチングされたマスの閾値のみ突出した値を閾値として設定する。
【００５５】
具体的な例としては、１画素が８ビットの階調値の場合に、固定閾値として"１２８"を設定し、突出した閾値として"１０"を設定する。量子化閾値が低くなると、注目画素の量子化値が"１"（量子化代表値"２５５"）になりやすくなる。すなわち、図６（ａ）、（ｂ）ともに、ハッチングされたマスの並びで量子化値"１"が並びやすくなる。言い換えると、Ｎ×Ｍ画素のブロック毎に、図６（ａ）のハッチングされたマスの並びでドットが発生するブロックと、図６（ｂ）のハッチングされたマスの並びでドットが発生するブロックとが混在することになる。
【００５６】
誤差拡散法における量子化閾値の多少の変更は、画質的には大きな影響を及ぼさない。誤差拡散法では、量子化閾値が変化した場合でも、あくまでも信号値と量子化値との差分となる誤差は周囲画素に拡散される。従って、入力された信号値はマクロ的に保存されることになるからである。すなわち、誤差拡散法においてはドットの並び、およびテクスチャの発生に関しては冗長性が大きい。
【００５７】
なお、上述した例では、誤差拡散法の量子化閾値に、付加情報の符号（ビット）を表す所定の周期性を重畳することにより多重化を実現する形態を説明したが、これに限られるものではない。例えば、以下の方式を採用してもよい。
・ＲＧＢの輝度情報に周期性を重畳する方式
・ＲＧＢの輝度情報を輝度‐色差情報（例えばＹ，  Ｃｒ，  Ｃｂ信号）に分離して周期性を多重化する方式
・ＲＧＢの輝度情報をインク色（例えばＣＭＹＫ信号）に分離して周期性を多重化する方式
【００５８】
つまり、量子化閾値ではなく、画像データに直接周期性を多重化してもよい。すなわち、所定の周期の画素をプラスα（あるいはマイナスα）し、他の画素をマイナスα（あるいはプラスα）するような形態でもよい。
【００５９】
また、上記の例では、１枚の画像の全体を使って１つの付加情報を埋め込む形態を例に挙げて説明したが、この例に限られるものではない。例えば、１枚の画像の中で、１つの付加情報を複数の箇所に埋め込む形態であってもよい。この場合、上述したWITDH, HEIGHTを画像全体のサイズではなく、付加情報を埋め込む単位として用いればよい。例えば、１００ｂｉｔから構成されている付加情報を多重化する場合、ブロック毎に１ｂｉｔ表現できるのであれば、１０ｘ１０ブロックで１００ｂｉｔが表現できる。１ブロックが図６に示すように、４ｘ８もしくは８ｘ４（この双方を表現するには８ｘ８画素）と想定すると、８００ｘ８００画素で１００ｂｉｔ表現が可能である。仮に６００ｄｐｉプリンタで多重化印刷物が出力されるとすると、１００ｂｉｔを表現するには、３３ｍｍｘ３３ｍｍが必要になる。例えばＬ版写真のサイズは、８９ｍｍｘ１２７ｍｍであるので、同じ付加情報を少なくとも６箇所に多重化することができる。
【００６０】
また、上述した例では、量子化後の情報をプリンタ１０３に送信する形態を説明しているが、多重化処理及び量子化処理をプリンタ１０３本体内部で処理する構成でも構わない。
【００６１】
＜付加情報分離部の説明＞
次に、図１の画像処理システムにおける付加情報分離部１０６について説明する。  
図７は、付加情報分離部１０６の構成を示すブロック図である。説明を容易にするため、付加情報多重化装置１０２と同様に、分割したブロック内に各１ビットずつの付加情報が多重化されている印刷物から付加情報を分離する例を説明する。多重化装置における１ブロックあたりの付加情報量と、分離装置における１ブロックあたりの分離情報量は等しくなる。
【００６２】
入力端子７００からは、撮像部１０５で撮像して得られた画像データが入力される。カメラ付携帯端末１０４の撮像部１０５に含まれる撮像センサの解像度は、印刷物を作成するプリンタ解像度と同等以上が好ましい。正確に印刷物のドットの点在情報を読み込む為には、サンプリング定理により、撮像センサ側はプリンタ側よりも２倍以上の解像度が必要になる。しかし、同等以上であれば、正確でなくとも、ある程度ドットが点在しているのを判別することは可能である。本実施形態では、説明を容易にするためにプリンタ解像度と撮像センサの解像度とは、同一解像度と想定する。
【００６３】
幾何学的ずれ検出部７０１は、入力端子７００から入力された画像の幾何学的ずれを検出する。入力端子７００から入力された画像は、プリンタ１０３でプリント出力された印刷物をカメラ付携帯端末１０４で撮像した画像である。このため、入力端子７００から入力された画像データによって表される画像は、プリンタ１０３で出力される前の画像とは幾何学的に大きくずれている場合がある。そこで、幾何学的ずれ検出部７０１では、印刷物と印刷物以外の境界線をエッジ検出にて検出する。
【００６４】
図８は、撮像画像を示す図である。プリンタ解像度と撮像センサ解像度とが同一解像度であれば、プリンタ１０３でのプリント時の斜行、及び、カメラ付携帯端末１０４を印刷物にかざす時のずれ等により生じる画像の回転方向（傾き）が、補正すべき大きな要因となる。そのため、この印刷物の境界線を検出することにより、どの程度回転方向でずれが生じているかを特定できる。後段の処理では、この幾何学的ずれを考慮してブロックを設定し、付加情報を分離することになる。
【００６５】
ブロック化部７０２は、入力端子７００から入力された画像を、横Ｐ画素、縦Ｑ画素単位にブロック化をする。このブロックは、幾何学的ずれを補正する際に他のブロックの領域に重複しないように、電子透かしの重畳時にブロック化したＮ×Ｍ画素よりも小さくする。すなわち、
Ｐ≦Ｎ、かつ  Ｑ≦Ｍ    ・・・式４
の関係が成り立つ。また、Ｐ×Ｑ画素単位のブロック化は、ある一定間隔毎スキップしてブロック化を行う。すなわち、多重化時のＮ×Ｍ画素よりなるブロックと想定される領域内に、Ｐ×Ｑ画素単位のブロックがひとつ内包されようにブロック化する（図８参照）。スキップする画素数は、水平Ｎ画素分、垂直Ｍ画素分が基本となるが、幾何学的ずれ検出部７０１によって検出したずれ量をブロック数で割り出し、１ブロックあたりのずれ量を演算して、スキップする画素数に加算して補正するとよい。ブロック化されたＰ×Ｑ画素単位のブロックは、特徴量算出部７４０に順次送られる。
【００６６】
＜特徴量算出部の説明＞
特徴量算出部７４０は、空間フィルタＡ７０３、空間フィルタＢ７０４、フィルタリング部７０５、間引き部Ａ７０６、間引き部Ｂ７０７、変換値加算部７０８、および分散値算出部７０９を有する。なお、図７の例では、空間フィルタが２種類備えられており、間引き部も同様に２種類備えられており、これらに対応してフィルタリング部７０５、変換値加算部７０８、および分散値算出部７０９が２系統備えられている例を示している。しかしながら、この例に限られず、処理系統が１系統であってよく、使用する空間フィルタや間引き処理を切り替える形態でもよい。
【００６７】
空間フィルタＡ７０３および空間フィルタＢ７０４は、それぞれ特性の異なる空間フィルタを示す。フィルタリング部７０５は、周辺画素との積和を演算するディジタルフィルタリング部を示している。各フィルタリング部７０５は、空間フィルタＡ７０３または空間フィルタＢ７０４を用いたフィルタリング処理を行う。空間フィルタの各係数は、多重化時の量子化条件の変動閾値の周期に適応して作成されている。
【００６８】
図９は、図６（ａ）および図６（ｂ）に示す周期性を有する量子化条件を用いて多重化された付加情報を、付加情報分離部１０６で分離する際に使用する空間フィルタの例を示している。図９（ａ）は、空間フィルタＡ７０３の例を示す。図９（ｂ）は、空間フィルタＢ７０４の例を示す。図９においては、５×５画素の中央部が注目画素に対応する。それ以外の２４画素分が周辺画素に対応する。図９において、空白部の画素は、フィルタ係数が"０"であることを表している。空白部以外の画素は、標記している値がフィルタ係数となる。図９から明らかなように、図９（ａ）および（ｂ）はエッジ強調のフィルタである。さらに、その強調するエッジの方向性と多重化した時の変動閾値の方向性とが一致している。つまり、図９（ａ）の空間フィルタＡ７０３は図６（ａ）に一致するように作成されている。図９（ｂ）の空間フィルタＢ７０４は、図６（ｂ）に一致するように作成されている。フィルタリング部７０５では、Ｐ×Ｑ画素単位の各ブロックに対して、それぞれ空間フィルタＡ７０３、空間フィルタＢ７０４を用いてフィルタリング処理を行う。
【００６９】
間引き部Ａ７０６および間引き部Ｂ７０７は、Ｐ×Ｑ画素より成るブロック内のフィルタリング後の信号（以下、変換値と称す）を、ある規則性に基づいてそれぞれ間引き処理する。本実施形態では、この間引きの規則性を、周期性と位相とに分離して処理する。すなわち、間引き部Ａ７０６及び間引き部Ｂ７０７では、間引きの周期性が異なっている。そして各間引き部では、位相を変化させた複数の間引き処理をそれぞれ実行する。間引き方法については後述する。
【００７０】
変換値加算部７０８は、間引き部Ａ７０６及び間引き部Ｂ７０７にて間引きした変換値を、位相毎にそれぞれ加算する。この間引き処理、及び、変換値の加算処理は、空間フィルタで強調した所定周波数ベクトルの電力を抽出することに相当する。
【００７１】
分散値算出部７０９は、位相毎に加算した複数の加算値の分散を、それぞれの周期性において算出する。
【００７２】
第二の判定部７１０は、分散値算出部７０９で算出されたそれぞれの周期性における分散値に基づいて、多重化された符号（すなわち、“0”か“1”）を判定する。以下、具体的に説明する。
【００７３】
図１０は、二次元の周波数領域を示す図である。横軸は水平方向の周波数、縦軸は垂直方向の周波数を示している。中心となる原点は直流成分を示し、原点から遠ざかるにつれて、高周波域となる。図１０の円は、誤差拡散によるカットオフ周波数を示している。誤差拡散法のフィルタ特性は、低周波域がカットオフされたＨＰＦ（ハイパスフィルタ）の特性を示し、そのカットオフされる周波数は、対象画像の濃度に応じて変化する。
【００７４】
本実施形態では、付加情報を付加する際に量子化条件（量子化閾値）を切り替える制御を行うことにより、量子化後に発生する周波数特性が変化する。図６（ａ）に示す量子化条件を用いた場合、図１０に示す周波数ベクトルＡ上に大きなパワースペクトルが生じる。また、図６（ｂ）に示す量子化条件を用いた場合、図１０に示す周波数ベクトルＢ上に大きなパワースペクトルが生じる。付加情報を分離する場合には、この大きなパワースペクトルが発生する周波数ベクトルを検出することで多重化信号の判定が行われる。本実施形態では、各々の周波数ベクトルを個別に強調し、抽出する処理が行われる。
【００７５】
図９（ａ）および図９（ｂ）は、特定の周波数ベクトルの方向性を有するＨＰＦに相当する。すなわち、図９（ａ）の空間フィルタでは、図１０の直線Ａ上の周波数ベクトルを強調することが可能になる。また、図９（ｂ）の空間フィルタでは、図１０の直線Ｂ上の周波数ベクトルを強調することが可能になる。
【００７６】
例えば、図６（ａ）に示す量子化条件を用いて量子化処理（誤差拡散処理）が行なわれることによって、図１０の直線Ａの周波数ベクトル上に大きなパワースペクトルが発生したと想定する。この場合、図９（ａ）の空間フィルタではパワースペクトルの変化量が増幅するが、図９（ｂ）の空間フィルタでは、パワースペクトルの変化量はほとんど増幅されない。すなわち、複数の空間フィルタを並列にフィルタリングした場合には、周波数ベクトルが一致した空間フィルタ時のみパワースペクトルが増幅し、それ以外のフィルタでは増幅がほとんど無い。このため、いかなる周波数ベクトル上に大きなパワースペクトルが発生しているかを容易に特定することができる。
【００７７】
図１１は、図７の間引き部Ａ７０６、間引き部Ｂ７０７、変換値加算部７０８、分散値算出部７０９、および第二の判定部７１０の理想状態時の動作手順を示すフローチャートである。なお、ここで、理想状態時とは、カメラ姿勢が理想状態の場合を示している。例えば、解像度変換が不要であり、回転やあおりがない状態を示している。理想状態でない場合には、図示していないが、画像を回転・変形させる等して、分離処理を試行する処理が行われる。図１１は、各ブロックごとの処理を示している。
【００７８】
図１１においてステップＳ１１０１およびステップＳ１１０２は、変数の初期化を示す。具体的には、本フローで用いる変数i、jの値を０に初期化する処理が行われる。まず、図１１を用いて全体の処理を説明した後に、図１２および図１３において具体例を示しながら説明をすることにする。
【００７９】
ステップＳ１１０３において、間引き部Ａ７０６および間引き部Ｂ７０７による間引き処理の規則性の因子が決定される。すなわち、"周期性"、及び"位相"の２因子が決定される。本フローでは、周期性に関する変数をi、位相に関する変数をjとする。この周期性、及び位相の条件は、番号（ナンバー）により管理されている。ステップＳ１１０３では、この時点における周期性ナンバー（以下No.と略す）がiであり、かつ位相No.がjである間引き処理の規則性の因子が設定される。そして、設定された規則性の因子に従って、間引き処理が行われる。
【００８０】
ステップＳ１１０４において変換値加算部７０８は、間引きすることで得られたブロック内の変換値を加算する。加算した加算値は、変数の配列TOTAL[i][j]に格納される。
【００８１】
ステップＳ１１０５にて変数jをカウントアップして、ステップＳ１１０６にて変数ｊと固定値Jとが比較される。固定値Jは、位相を変化させて間引き処理をする回数が格納されている。変数jが固定値J未満であれば、ステップＳ１１０３に戻り、カウントアップ後のjによる新たな位相No.により、間引き処理、及び、間引き画素の加算処理が繰り返される。
【００８２】
位相をずらした間引き処理及び加算処理が、設定回数（固定値Ｊの回数）終了した場合には、ステップＳ１１０７に進み、分散値算出部７０９は、加算結果TOTAL[i][j]の分散値を算出する。すなわち、各加算結果が、位相の差により、どの程度ばらついているかを評価する。このステップＳ１１０７では、周期性の因子iを固定し、J個のTOTAL[i][j]の分散値を求める。つまり、TOTAL[i][0]、TOTAL[i][1]、・・・TOTAL[i][Ｊ]の分散値を求める。分散値はB[i]に格納する。
【００８３】
ステップＳ１１０８にて変数iをカウントアップして、ステップＳ１１０９にて変数ｉと固定値Iとが比較される。固定値Iは、周期性を変化させて間引き処理をする回数が格納されている。変数iが固定値I未満であれば、ステップＳ１１０２に戻り、カウントアップ後のiによる新たな周期性No.の条件を用いて、再び、間引き処理、及び、変換値の加算処理が繰り返される。
【００８４】
ステップＳ１１０９にてiが設定回数（固定値Ｉの回数）終了したと判断されると、分散値B[i]は、I個算出されて格納されていることになる。
【００８５】
ステップＳ１１１０に第二の判定部７１０は、I個の分散値の集合から、分散値の最大値を検出する。また、第二の判定部７１０は、検出したiの値を変数imaxに代入する。
【００８６】
ステップＳ１１１１で第二の判定部７１０は、多重化された符号（分離情報）を判定する。すなわち、周期性No.がimaxである符号を、多重化された符号（分離情報）であると判定し、処理を終了する。次に、具体例を用いて説明する。
【００８７】
図１２および図１３は、間引き方法の具体例を示す図である。ここでは、周期性の数を２（I＝２）とし、位相の数を４（J＝４）とした場合の例を示す。図１２および図１３は、ブロックサイズをＰ＝Ｑ＝１６とした時の間引き方法を、テーブル形式にて示している。それぞれの図において、ブロック内のひとマスが１画素分に対応している。図１２および図１３では、ブロック形状をＰ＝Ｑの正方としているが、正方には限らないし、矩形以外でも良い。
【００８８】
図１２は、周期性No.=0の場合における間引き方法（図７の間引き部Ａ７０６に相当）を示している。図１３は、周期性No.=１の場合における間引き方法（図７の間引き部Ｂ７０７に相当）を示している。各図のブロック内の各画素に示している値は、位相No.であるjの間引き画素を示している。例えば"０"と表示している画素は、j=0の時の間引き画素に対応する。すなわち、図１２、図１３ともに、位相は４種であり、位相No.jが０〜３の時の間引き方法に相当する。
【００８９】
図１２は、図６（ａ）の周期性に一致している。図１３は、図６（ｂ）の周期性に一致している。前述のように、図６（ａ）および図６（ｂ）のハッチングのマスの並びで量子化値“１”（但し、“０”、“１”の２値の場合）が並びやすくなる。その為、例えば、多重化時に量子化条件Ａであったブロックの場合には、図６（ａ）の周期性で量子化値“１”が並びやすくなり、適合した空間フィルタ時には更にその周波数成分が増幅される。そして、図１２に示す周期性で変換値を間引きして加算すると、その加算結果の分散は大きくなる。
【００９０】
一方、量子化条件Ａであったブロックを、適合しない空間フィルタを用いてフィルタリングし、なおかつ、図１３の周期性により間引きをした場合には、変換値の加算結果の分散値は小さくなる。すなわち、量子化値の周期性と間引きの周期性が異なる為、間引きの位相の違いによる変換値の加算値は平均的になり、ばらつきは小さくなるからである。反対に、多重化時に量子化条件Ｂであったブロックでは、図１２の間引きでは、分散値は小さくなり、図１３の間引きでは分散値は大きくなる。
【００９１】
図４に示したフローチャートの例を適用すると、bit=０を量子化条件Ａ、bit=１を量子化条件Ｂに設定している。その為、周期性No.=０の分散値が大きいときにはbit=０、逆に周期性No.=１の分散値が大きいときには bit=１と判定することができる。
【００９２】
すなわち、量子化条件と、空間フィルタ特性および間引き条件の周期性とを関連づけることで、付加情報を容易に多重化し、かつ付加情報を容易に分離することを実現できる。本実施形態では、周期性No.は、０と１の２種であり、ブロック内の多重化符号は１ビットであったが、多重化符号はこれ以上でも良いのは勿論である。当然、量子化条件の種類と、空間フィルタの種類および間引き条件の周期性No.の種類（Ｉの値）とは一致することになる。従って、付加情報分離部１０６では、付加情報多重化装置１０２が行なった多重化の設定（量子化条件の種類や量子化閾値など）に対応する空間フィルタや間引き条件が設定されることになる。これらの設定は、使用者の操作に応じて設定がされてもよいし、対応するアプリケーションソフトウェアを通じて設定がされてもよい。
【００９３】
以上説明した形態では、直交変換による量子化条件の規則性に対応した周波数の電力値の比較をしなくても、容易に符号を分離できる。しかも、実空間領域の処理の為、非常に高速に分離処理が実現できる。
【００９４】
量子化条件Ａ、Ｂ、空間フィルタＡ、Ｂ、および間引き手段Ａ，Ｂは一例であり、これに限るものではない。他の周期性を持たせても良いし、空間フィルタのタップ数、および間引きのブロックサイズ等は前述した例よりも大きくても小さくても構わない。
【００９５】
また、図１１の処理では、周期性No.である変数ｉ、及び、位相No.である変数ｊの繰り返し処理にて説明している。しかし、実際には、Ｐ×Ｑ画素よりなるブロック内の画素アドレスによる繰り返し処理の方が、実現が容易である。すなわち、図１２および図１３に示したように、ブロック内の各画素アドレスに対して周期性No.及び位相No.の２種の情報をテーブルとして予め格納しておき、対応した周期性No.及び位相No.の各々の変数に対して変換値を加算する処理でもよい。この処理方法では、Ｐ×Ｑ画素分を処理するだけで、並列に、周期性No.及び位相No.の各集合の加算値を算出することができる。
【００９６】
また、図１１の動作手順では、空間フィルタ後の間引きした変換値の加算結果の分散を算出して、分散値の大小比較により、符号を判定していたが、これに限るものではない。分散値を用いない評価関数の比較による方法も考えられる。間引きした変換値の加算結果の偏りは、位相をずらした際に、ひとつの位相の時だけ値が突出しやすいため、"ばらつき度合い"が評価できれば良い。
【００９７】
例えば、ばらつき度合いを評価するには、分散値以外に次の評価関数が考えられる。
１．間引きした変換値を加算した加算値の最大値と最小値の差分
２．間引きした変換値を加算した加算値の最大値と２番目に大きな値との差分、もしくは、最小値と２番目に小さな値との差分のどちらか
３．間引きした変換値を加算した加算値によるヒストグラムを作成した時の、前後の順番の差分の最大値
【００９８】
また、上記１、２、３の評価関数は絶対的な差分値であるが、これらの差分値と変換値、もしくは画素値や変換値の総和等との相対的な比率も評価関数として用いることができる。また、量子化値は２値化を例にして説明したが、これには限らない。
【００９９】
ここまで、付加情報の多重化方法と付加情報の分離方法について説明した。以下では、本実施形態において行なわれる撮像条件の制御について説明する。
【０１００】
＜撮像条件の制御について＞
図１４は、本実施形態におけるカメラ付携帯端末１０４（付加情報分離装置）における処理手順の一例を示すフローチャートである。本実施形態におけるカメラ付携帯端末１０４は、撮像時に動画撮像または静止画撮像が選択可能であるものとする。図１４に示す処理は、カメラ付携帯端末１０４のＲＡＭなどに格納されている所定のアプリケーションプログラムを、カメラ付携帯端末１０４のＣＰＵが実行することによって実現される。この所定のアプリケーションプログラムは、例えば付加情報を分離する処理を規定したプログラムとすることができる。
【０１０１】
ステップＳ１４０１において撮像条件設定部１０９は、撮像部１０５における撮像条件を設定する。具体的にステップＳ１４０１では、撮像条件設定部１０９は、多重化印刷物から付加情報を抽出するための撮像条件として、動画撮像モードを設定する。本実施形態において初期の動画撮像モードでは、例えば解像度が１９２０画素×１０８０画素（フルHD映像信号）に設定され、フレームレートが３０fpsに設定される。
【０１０２】
ステップＳ１４０２において撮像部１０５は、ステップＳ１４０１で設定された撮像条件に従って多重化印刷物を撮像して、画像を得る。
【０１０３】
ステップＳ１４０３において付加情報分離部１０６は、ステップＳ１４０２の撮像によって得られた画像を入力画像として用いて、付加情報分離処理を行う。具体的には、図７で説明した各部での処理を行うことで付加情報の分離が行なわれる。前述したように、付加情報を構成する各要素（ビット）の情報がブロック単位で多重化されている。ステップＳ１４０３の付加情報分離処理では、この各要素（ビット）の情報が、各ブロック単位で分離される。ブロック単位で分離することで得られる付加情報の一部の要素のことを分離情報ともいう。
【０１０４】
ステップＳ１４０４において分離情報積算部１０７は、ステップＳ１４０３で分離された分離情報の数を積算する。すなわち、分離に成功したビット数を積算する。分離に成功したビット数が、埋め込まれた付加情報のビット数と同じであれば、付加情報の抽出が成功することになる。
【０１０５】
ステップＳ１４０５において第一の判定部１０８は、どの程度分離に成功して、どの程度分離に失敗しているかの指標となる評価値（分離効率）を算出する。本実施形態では、各ブロックあたり１ビットの情報（分離情報）を得ることができる。このため、一度の撮像で得られた画像内のブロック数の中で何ビット分離ができたか（何ブロック分離に成功したか）によって分離効率を算出できる。本実施形態において分離効率は、分離可能性を表す指標になる。図１５〜図１７を用いて分離効率について説明する。
【０１０６】
図１５（ａ）は、写真である多重化印刷物の一例を示している。この印刷物には、図２を用いて説明した方法で、微小なブロック毎に１ビットの情報が多重化されている。図１５（ｂ）は、この多重化印刷物の一部分を動画撮像モードにて接写した一枚の画像を示している。印刷物とカメラ付携帯端末１０４との距離が離れると、印刷物に多重化されている所定の周波数を識別することが可能な解像度が望めなくなる。つまり、印刷物とカメラ付携帯端末１０４との距離が離れるほど、分離に失敗する可能性は高くなる。そのために使用者は、できる限りの接写で多重化印刷物を撮像することになる。ここで、本実施形態では、図１５（ｂ）に示す画像全体で１つの付加情報が多重化されているものとする。なお、付加情報は、図１５（ａ）の多重化印刷物の中の、図１５（ｂ）に示す領域とは別の複数の領域に、同様に多重化されていてもよい。
【０１０７】
図１６（ａ）は、図１５（ｂ）の画像に対し、図８で説明したようなブロックの格子を当てはめた例を示している。実際には距離が不明なためにブロックの格子を適応させるには画像の拡大縮小を繰り返す複数回の試行が必要であるが、説明を容易にするために、図１５（ｂ）の画像を、横１０ブロック、縦５ブロック分の５０ブロックに分割したと想定する。この各ブロックに１ビットずつ情報が埋め込まれているために、全てのブロックにおいて分離に成功すると、５０ビットの復号が可能となる。つまり、図１５（ａ）の多重化印刷物に多重化されている付加情報は、５０ビットの情報であり、図１６（ａ）に示す５０ブロックの全てのブロックで分離が成功した場合、付加情報の分離に成功したことになる。
【０１０８】
図１６（ｂ）は、５０ブロックの中で分離に成功したブロックの分布を示している。図１６（ｂ）において斜線で示したブロックが分離に成功したブロックである。図１６（ｂ）では５０ブロック中の５ブロック成功しているので、分離効率は１０％（５／５０）となる。なお、ブロックの分離に成功したかは、分離して得られた符号（分離情報）の真偽を判定することで行なわれる。例えば、誤り訂正符号等を用いて各ブロックの分離が成功したかを判定できる。
【０１０９】
図１４のフローチャートの説明に戻る。上述したような処理によって、ステップＳ１４０５では分離効率が算出される。
【０１１０】
ステップＳ１４０６において第一の判定部１０８は、分離効率が予め設定された閾値以上か否かを判定する。この判定処理は、このままの撮像モードで撮像を続けた場合に付加情報が十分に抽出できるか否かを判定する処理でもある。すなわち、撮像条件の設定を継続して撮像を続けるのか、あるいは撮像条件の設定を変更して撮像を続けるのかを判定する。閾値未満であれば、このまま使用者がカメラをかざしていたとしても効率的ではないと判定し、ステップＳ１４０７に進み、撮像条件設定部１０９は、撮像条件を静止画撮像モードに設定する。すなわち、撮像条件設定部１０９は、第一の撮像条件（動画撮像モード）から第二の撮像条件（静止画撮像モード）に設定を変更する。第二の撮像条件は、第一の撮像条件よりも高画質の画像が得られる撮像条件である。静止画は、動画に比べ処理負荷の観点から一枚当たりの解像度を高くすることが可能である。ステップＳ１４０７では、静止画解像度を３８２０画素×２１６０画素、シャッタースピードを１／２５０秒に設定する。静止画撮像モードに設定した後は、再度ステップＳ１４０２に戻り、撮像及び分離処理が繰り返される。
【０１１１】
なお、ステップＳ１４０６の閾値は、判定の回数に応じて変動される変動閾値とすることができる。本実施形態では１回目の撮像及び分離で成功した情報は、２回目の撮像及び分離の処理に引き継がれることになる。このため、後続の判定処理で用いられる閾値を、先行する判定処理で用いられる閾値よりも値が高くなるように設定することで、より効率的な撮像条件の切り替えが可能となる。
【０１１２】
一方、分離効率が予め設定された閾値以上である場合、ステップＳ１４０８に進む。ステップＳ１４０８において第一の判定部１０８は、積算された分離情報の情報量が所望の情報量に達したか否かを判定する。積算された分離情報の情報量が所望の情報量に達していない場合、ステップＳ１４０２に戻り、撮像及び分離処理を繰り返す。この場合、撮像条件の設定は切り替えずに、引き続き撮像及び分離処理が行われる。なお、ステップＳ１４０８の所望の情報量は、付加情報多重化装置１０２と付加情報分離装置（カメラ付携帯端末１０４）とのアプリケーションにおいて、予め決めておくとよい。例えば、付加情報多重化装置１０２側で５０バイトの付加情報を多重化する場合には、付加情報分離装置側では５０バイトの分離情報（符号）の復号が終了した時点で所望情報量に到達したことになる。また別の方法として、所望の情報量自体を付加情報として、多重化する方法も考えられる。この場合には可変長の情報量を埋め込むことが可能である。分離装置側では、予め埋め込まれた情報量に関する信号を復号し、その信号に基づいて所望情報量を知ることができる。例えば、最大５０バイトの情報量を多重化できる装置において、３０バイトしか多重化しなかった場合には、分離装置側では、３０バイトの復号が完了した時点で終了することができる。
【０１１３】
図１７は、分離効率と撮像条件の設定の制御とを説明する図である。図１７（ａ）は、図１６（ａ）の画像に対して、１度目の分離処理で分離に成功した分離情報の分布及び分離効率を示している。図１７（ａ）においては、図１６（ｂ）と同様に、斜線で示したブロックが分離に成功したブロックである。図１７（ａ）の例では、５０ブロック中、３６ブロック成功しているので、分離効率は７２％である。ここで、ステップＳ１４０６で用いる閾値が５０％に設定されている場合には、再度、同じ撮像モードで画像を撮像して分離処理が行われることになる。図１７（ｂ）は、２度目の分離結果を一度目の分離結果に積算した結果を示している。つまり、１度目に分離に成功しているブロックに関しては２度目以降では分離処理をする必要はない。図１７（ｂ）では、更に１０ブロック分、分離に成功したので、累積ブロック数は４６ブロックになる。つまり、２度目終了時点で５０ブロック中４６ブロック成功しているので、累積の分離効率は９２％になる。２度目の分離処理における閾値が７０％に設定されている場合には、まだ閾値以上であるので、設定を継続したまま三度目の画像の撮像および分離処理が行われる。
【０１１４】
なお、取得したブロックの位置やデータの開始位置を管理するために、所定ブロック単位に基準ブロックを設定して、アンカーの機能を持たせることができる。これにより、複数回の撮像で取得される画像がそれぞれ異なっていても、分離情報を累積することが可能となる。
【０１１５】
図１７（ｃ）では、３度目の分離処理で全てのブロックの分離が成功したことを示している。これにより、一連の処理が終了する。
【０１１６】
一方、図１７（ｄ）は、１度目の分離処理の分離効率が閾値まで達成しなかった例を示している。図１７（ｄ）は、５ブロックしか成功していないために、分離効率は１０％である。このまま同じ設定で撮像を繰り返しても無駄になると判定し、静止画撮像モードに設定を切り替える処理が行われる。図１７（ｅ）は、静止画撮像モードに切り替えた後の二度目の（静止画撮像モードでは一度目の）画像の撮像及び分離処理によって分離に成功した分離情報の分布及び分離効率を示している。静止画撮像モードでは解像度を高く設定しているので、図１７（ｅ）では累積８０％まで分離効率が向上する。図１７（ｆ）では、３度目の分離処理で全てのブロックの分離が成功し、処理が終了する。
【０１１７】
このように、第一の撮像条件と第二の撮像条件では、解像度が異なる。この場合、ステップＳ１４０３の付加情報分離処理では、画像の拡大縮小処理を行うことで、多重化された画像と画素数を合わせる処理が行われる。拡大縮小処理は、複数段階に分けて行ってよい。そして、上述した分離処理が行われる。
【０１１８】
なお、図１７（ｄ）で示したように分離効率が低いような場合、使用者がカメラ姿勢を変えることで分離効率が向上するような場合も有り得る。しかしながら、分離効率が低い場合に、どのようなカメラ姿勢にすれば分離効率が向上するかを使用者が判断することは一般的に難しい。そこで、本実施形態では、分離効率が低い場合には、撮像条件の設定を切り替えて、画像の撮像及び分離処理を行うことで、付加情報を好適に抽出することができる。
【０１１９】
なお、本実施形態では説明を容易にするために、一枚の画像毎の分離処理で分離効率を評価する形態を例に挙げて説明した。しかしながら、同じ撮像条件の設定で複数回の分離処理を繰り返し行い、ステップＳ１４０６の判定処理は複数回に一度行なう形態でもよい。判定処理を複数回に一度行う形態の方が効率的である。
【０１２０】
また、ステップＳ１４０６で用いる閾値は、分離処理の回数に応じて増加する形態を例に挙げて説明したが、回数ではなく処理時間に応じて閾値が増加する形態でもよい。すなわち、所定時間までにどの程度分離が成功しているのが効率的かの閾値を実験的に求め、最適値を設定してもよい。処理時間に応じた閾値を設定することは、ユーザーインターフェース的にも有効である。
【０１２１】
また本実施形態の処理は、処理時間の観点からも有用である。静止画と動画とでは画像の取得時間が異なる。動画の方が短時間で複数枚の画像を取得することができる。このため、本実施形態では、解像度の低い動画で短時間に複数毎画像を取得し分離処理する。このような処理によれば、距離が適正である大多数のケースでは、短時間で処理を終えることができる。一方、距離を離してカメラを構えているような少数のケースにおいては、分離効率が低くなる。そこで、分離効率が低い場合には、適正なカメラ姿勢ではない（例えば距離が離れている）と判定し、距離に応じた撮像条件の設定に修正する処理が行われる。
【０１２２】
なお、当初から高解像度の静止画を取得するような形態も考えられる。しかしながら、この場合には、動画ほど短時間で複数毎画像を取得することは困難である。このため、適正なカメラ姿勢である大多数の場合には、分離から成功までに処理時間を要してしまうので効率的ではない。
【０１２３】
以上説明したように、本実施形態では、第一の撮像条件を動画撮像モードとし、第二の撮像条件を静止画撮像モードとする例を述べた。しかしながら他の方法でもよい。例えば、シャッタースピードを変化させる方法も考えられる。手持ちにてカメラを保持した場合には、シャッタースピードが速い方が手振れの影響の少ない鮮明な画像取得が可能になる。そのため、第一の撮像条件をシャッタースピードの遅い設定とし、第二の撮像条件をシャッタースピードが第一の撮像条件よりも速い設定に切り替える形態でもよい。
【０１２４】
このように、本実施形態によれば、カメラ付携帯端末などのように、スキャナと異なり非接触で多重化印刷物の画像から付加情報を抽出する際に、好適に付加情報を抽出することができる。
【０１２５】
＜＜実施形態２＞＞
実施形態１では、動画撮像モードと静止画撮像モードとの間で撮像条件の設定を切り替える形態を例に挙げて説明した。本実施形態では、ＪＰＥＧ撮像モードと、ＲＡＷ画像撮像モードとの間で撮像条件の設定を切り替える形態を説明する。
【０１２６】
図１８は、本実施形態のフローチャートの一例を示す図である。図１８では、図１４の処理手順と同一工程には同一符号を付し、異なる点のみ説明する。すなわち、図１８では、動画撮像モードと静止画撮像モードとの切り替えではなく、静止画撮像モード内の撮像条件の切り替えになっている。
【０１２７】
ステップＳ１８０１において撮像条件設定部１０９は、初期設定となる撮像モードをＪＰＥＧ圧縮による撮像モードに設定する。また、分離効率が悪い（閾値以上ではない）と判定された場合には、ステップＳ１８０２において撮像条件設定部１０９は、撮像モードをＲＡＷ画像撮像モードに設定する。すなわち、第一の撮像条件よりも圧縮率が低い画像（圧縮していない画像を含む）が得られる第二の撮像条件に変更して撮像が行なわれる。ＲＡＷ画像撮像モードでは、情報量が多くメモリを大量に使用するために、ＪＰＥＧ撮像モードに比べて処理時間が長くなる。このため、ＪＰＥＧ画像に比べて時間あたりの画像の取得枚数は大幅に減少する。しかし、例えば視覚的に感度の低い色差成分（ＹＵＶ色空間におけるＵＶ成分）を利用して付加情報が多重化されている場合には、ＪＰＥＧによる色差成分のサブサンプルが原因で分離効率が上がらないことが想定される。このような場合、撮像および分離処理を既に実施している途中からでもＲＡＷ画像撮像モードに変更し、画質の良い画像から分離処理をした方が、結果的には効率が良くなる。
【０１２８】
なお、ここでは、ＪＰＥＧ撮像モードとＲＡＷ画像撮像モードとの間で撮像条件を切り替える形態を例に挙げて説明した。しかしながら、撮像する画像データのビット深度の条件を切り替える形態でもよい。
【０１２９】
＜＜実施形態３＞＞
実施形態１では、分離効率が閾値以上であるか否かに応じて自動的に撮像条件を切り替える形態を説明した。本実施形態では、使用者の指示に基づいて撮像条件の切り替えを行なう例を説明する。
【０１３０】
図１９は、本実施形態のフローチャートの一例を示す図である。図１９では、図１４の処理手順と同一工程には同一符号を付し、異なる点のみ説明する。
【０１３１】
ステップＳ１４０６において分離効率が閾値未満であると判定されると、ステップＳ１９０１に進む。ステップＳ１９０１においてカメラ付携帯端末１０４は、撮像条件の設定の変更を推奨する画面を表示する。ステップＳ１９０２においてカメラ付携帯端末１０４は、使用者からの設定変更に関する入力を受け付ける。ステップＳ１９０３においてカメラ付携帯端末１０４は、設定変更をする指示が入力されたと判定した場合、ステップＳ１９０４に進む。ステップＳ１９０４において撮像条件設定部１０９は、静止画撮像モードに撮像条件を設定変更して撮像を繰り返す。設定変更をしない指示が入力されたと判定した場合、ステップＳ１４０８に進み、同一の撮像条件での処理を繰り返す。
【０１３２】
図２０は、本実施形態におけるカメラ付携帯端末１０４の表示画面２０００の例を示す。表示画面２０００には、動画撮像モードボタン２００１および静止画撮像モードボタン２００２が配置されている。分離開始時の操作では、自動的に動画撮像モードが起動され、動画撮像モードボタン２００１は、起動していることを明示するために、ボタンの色がグレイに表示されている。また、動画撮像モード時は、静止画撮像モードボタン２００２は押下できないように構成されている。図１９のステップＳ１４０６において閾値未満と判定された場合、表示画面２０００上に、切り替えを推奨する説明文表示２００３が表示される。また、静止画撮像モードボタン２００２が入力可能になる。つまり、使用者は、動画撮像モードを継続するか、静止画撮像モードに切り替えるかが選択可能になる。使用者が押印したボタンは色がグレイに変わり、どのモードで撮像を実行しているかを使用者が確認することができる。
【０１３３】
本実施形態では、使用者が撮像条件を明示的に切り替えることになる。このため、使用者は、現在どのような撮像条件での撮像が行なわれているのかを知ることができるので、使い勝手が向上する。
【０１３４】
＜＜実施形態４＞＞
実施形態１から３では、付加情報の分離効率が所定の閾値以上か否かに応じて撮像条件を切り替える形態を例に挙げて説明した。本実施形態では、撮像部で撮像された撮像画像の特徴量を評価値として用い、特徴量に基づいて撮像条件を切り替えるか否かを判定する処理が行われる。
【０１３５】
図２１は、本実施形態における画像処理システムの一例を示す図である。図１と同様の構成については同一の符号を付し、説明を省略する。
【０１３６】
図２１のカメラ付携帯端末１０４は、第三の判定部２１０１を有する。第三の判定部２１０１は、図１で説明した第一の判定部１０８と異なり、撮像部１０５で撮像された画像に基づく判定を行なう。また、図２１のカメラ付携帯端末１０４は、図１の付加情報分離部１０６および分離情報積算部１０７の機能を備えた付加情報分離部２１０２を備えている。
【０１３７】
図２２は、本実施形態における第三の判定部２１０１の処理を含むフローチャートを示す図である。図２２において、図１４と同一工程には同一符号を付し、異なる点のみ説明する。
【０１３８】
ステップＳ２２０１において第三の判定部２１０１は、ステップＳ１４０２の撮像で得られた画像の鮮鋭度を検出する。鮮鋭度検出は公知の二次微分型のエッジ検出フィルタを用いることができる。ステップＳ２２０２において第三の判定部２１０１は、ステップＳ２２０１で検出した局所的な鮮鋭度を累積した画像全体の総合鮮鋭度を算出する。この総合鮮鋭度は、撮像した画像が適切なシャッタースピードで撮像されたか否かを検出する評価関数になっている。すなわち、シャッタースピードが遅い場合、カメラを手持ちしていることが原因で手振れの影響により取得された画像はぼけてしまう。本実施形態では、鮮鋭度を評価することで、シャッタースピード設定の良し悪しを評価することが可能となる。ステップＳ２２０３において第三の判定部２１０１は、総合鮮鋭度と予め設定していた閾値とを比較して、このままこの設定で継続して良いかを判定する。閾値未満であれば、ステップＳ１４０７に進み、撮像条件設定部１０９は、シャッタースピードを速くした静止画撮像モードに設定し、撮像を繰り返す。
【０１３９】
本実施形態では、分離処理をすることなしに撮像条件の切り替えを判定することが可能であるので、高速に最適な処理が実現できる。なお、他の実施形態で説明した分離効率の判定処理も併用して行なってもよい。
【０１４０】
＜＜その他の実施形態＞＞
以上説明した各実施形態では、撮像条件は２種類あり、所定の条件に応じて撮像条件を切り替える形態を説明した。しかしながら、撮像条件を３種以上保持して切り替える形態でもよい。また、実施形態４では、撮像画像の特徴量として鮮鋭度の例を述べたが、他の特徴量で有効である。例えば、図１８の例で示したＪＰＥＧ画像とＲＡＷ画像との設定の切り替えの際には、撮像画像のジャギー（エッジのがたつき度合）の発生度合を評価関数にすることも考えられる。また、前述した実施形態１から実施形態４までを各々組み合わせた形態を採用してもよい。
【０１４１】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１４２】
１０６  付加情報分離部
１０７  分離情報積算部
１０８  第一の判定部
１０９  撮像条件設定部
【図１】
2019004337.tif 000003
【図２】
2019004337.tif 000004
【図３】
2019004337.tif 000005
【図４】
2019004337.tif 000006
【図５】
2019004337.tif 000007
【図６】
2019004337.tif 000008
【図７】
2019004337.tif 000009
【図８】
2019004337.tif 000010
【図９】
2019004337.tif 000011
【図１０】
2019004337.tif 000012
【図１１】
2019004337.tif 000013
【図１２】
2019004337.tif 000014
【図１３】
2019004337.tif 000015
【図１４】
2019004337.tif 000016
【図１５】
2019004337.tif 000017
【図１６】
2019004337.tif 000018
【図１７】
2019004337.tif 000019
【図１８】
2019004337.tif 000020
【図１９】
2019004337.tif 000021
【図２０】
2019004337.tif 000022
【図２１】
2019004337.tif 000023
【図２２】
2019004337.tif 000024