IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特開2022-184133電子透かし解析装置および電子透かし解析方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022184133
(43)【公開日】2022-12-13
(54)【発明の名称】電子透かし解析装置および電子透かし解析方法
(51)【国際特許分類】
   H04N 1/32 20060101AFI20221206BHJP
   H04N 1/387 20060101ALI20221206BHJP
【FI】
H04N1/32 144
H04N1/387
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2021091804
(22)【出願日】2021-05-31
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】大曲 勇気
【テーマコード(参考)】
5C076
【Fターム(参考)】
5C076AA12
5C076AA17
5C076AA19
5C076BA06
(57)【要約】      (修正有)
【課題】印刷物を撮像して、撮像画像内のどの位置に付加情報を埋め込むと良いかを決める電子透かし解析装置を提供する。
【解決手段】電子透かしを解析する画像処理装置は、所定の周期又は周波数を有するパターンを画像に重畳することで付加情報が埋め込まれた印刷物を撮像し、得られる画像を撮像画像として取得する内部撮像デバイスと、撮像画像内の複数の小エリアを解析して個々の小エリアの空間周波数特性を算出する画像特性算出部と、空間周波数特性に基づいて撮像画像中の付加情報の埋め込み位置及び埋め込み信号強度を推定する信号強度推定部と、埋め込み位置情報及び埋め込み信号強度情報に基づいて、付加情報を取得するための基準位置となるマーカーを検出するためのマーカー検出エリアの撮像画像内における位置を決定するマーカー検出エリア決定部と、検出したマーカーの位置を基準として撮像画像内の付加情報を取得する付加情報取得部と、を備える。
【選択図】図15
【特許請求の範囲】
【請求項1】
所定の周期ないし周波数を有するパターンを画像に重畳することによって付加情報が埋め込まれた印刷物を撮像し、それにより得られる画像を撮像画像として取得する撮像部と、
前記撮像画像内の複数の小エリアを解析して個々の小エリアの空間周波数特性を算出する算出部と、
前記空間周波数特性に基づいて前記撮像画像中の前記付加情報の埋め込み位置および埋め込み信号強度を特定する特定部と、
前記埋め込み位置情報および前記埋め込み信号強度情報に基づいて、前記付加情報を取得するための基準位置となるマーカーを検出するためのマーカー検出エリアの前記撮像画像内における位置を決定する決定部と、
前記マーカー検出エリア内にてマーカーを検出し、該検出されたマーカーの位置を基準として前記撮像画像内の前記付加情報を取得する取得部と、を備える
ことを特徴とする電子透かし解析装置。
【請求項2】
所定の周期ないし周波数を有するパターンを画像に重畳することによって付加情報が埋め込まれた印刷物を撮像し、それにより得られる画像を撮像画像として取得する撮像部と、
前記撮像画像内の画素の色情報と、予め保持された該色情報と電子透かしの信号強度との関係を表す情報と、に基づいて、前記付加情報の埋め込み位置および埋め込み信号強度を特定する特定部と、
前記埋め込み位置情報および前記埋め込み信号強度情報に基づいて、前記付加情報を取得するための基準位置となるマーカーを検出するためのマーカー検出エリアの前記撮像画像内における位置を決定する決定部と、
前記マーカー検出エリア内にてマーカーを検出し、該検出されたマーカーの位置を基準として前記撮像画像内の前記付加情報を取得する取得部と、を備える
ことを特徴とする電子透かし解析装置。
【請求項3】
前記決定部は、前記マーカー検出エリアの位置を、該マーカー検出エリア内に含まれる前記小エリアの埋め込み信号強度の平均値が最も大きくなるように決定する
ことを特徴とする請求項1に記載の電子透かし解析装置。
【請求項4】
前記決定部は、前記埋め込み位置および前記埋め込み信号強度に応じたガイドを表示装置の画面に表示する
ことを特徴とする請求項1に記載の電子透かし解析装置。
【請求項5】
前記決定部は、前記ガイドを、該ガイド内に含まれる前記小エリアの埋め込み信号強度の平均値が最も大きくなるように表示する
ことを特徴とする請求項4に記載の電子透かし解析装置。
【請求項6】
所定の周期ないし周波数を有するパターンを画像に重畳することによって付加情報が埋め込まれた印刷物を撮像し、それにより得られる画像を撮像画像として取得する工程と、
前記撮像画像内の複数の小エリアを解析して個々の小エリアの空間周波数特性を算出する工程と、
前記空間周波数特性に基づいて前記撮像画像中の前記付加情報の埋め込み位置および埋め込み信号強度を特定する工程と、
前記埋め込み位置情報および前記埋め込み信号強度情報に基づいて、前記付加情報を取得するための基準位置となるマーカーを検出するためのマーカー検出エリアの前記撮像画像内における位置を決定する工程と、
前記マーカー検出エリア内にてマーカーを検出し、該検出されたマーカーの位置を基準として前記撮像画像内の前記付加情報を取得する工程と、を含む
ことを特徴とする電子透かし解析方法。
【請求項7】
所定の周期ないし周波数を有するパターンを画像に重畳することによって付加情報が埋め込まれた印刷物を撮像し、それにより得られる画像を撮像画像として取得する工程と、
前記撮像画像内の画素の色情報と、予め保持された該色情報と電子透かしの信号強度との関係を表す情報と、に基づいて、前記付加情報の埋め込み位置および埋め込み信号強度を特定する工程と、
前記埋め込み位置情報および前記埋め込み信号強度情報に基づいて、前記付加情報を取得するための基準位置となるマーカーを検出するためのマーカー検出エリアの前記撮像画像内における位置を決定する工程と、
前記マーカー検出エリア内にてマーカーを検出し、該検出されたマーカーの位置を基準として前記撮像画像内の前記付加情報を取得する工程と、を含む
ことを特徴とする電子透かし解析方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、主に電子透かし解析装置に関する。
【背景技術】
【0002】
電子透かしと呼ばれる技術がある(特許文献1~2参照)。電子透かしは、画像内に画像に関連する付加情報を、視覚的に判別し難いように埋め込む技術であり、ウォーターマークとも呼ばれうる。また、同様の技術として、画像と関連のない付加情報を埋め込むステガノグラフィと呼ばれるものもある。付加情報が埋め込まれた画像は、インターネット等のネットワークを通じて流通され、付加情報が埋め込まれた画像から付加情報を抽出することが行われる。
【0003】
また、付加情報が埋め込まれた画像が複写機及びプリンタ等の画像出力装置において紙上に印刷され、それにより得られた印刷物から付加情報を抽出することも行われうる。印刷物からの付加情報の抽出は、スキャナによる画像取り込み機能や携帯端末によるカメラ機能を利用して取り込まれた印刷物の画像を解析することにより行われうる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2005-229508号公報
【特許文献2】特許第4645457号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1によれば、予め読み取り強度の評価を行おく必要があり、また、特許文献2によれば、撮像画像内のどの位置にどの程度の埋め込み信号強度で埋め込みが行われているかが特定されている必要がある。そのため、特許文献1~2の構成においては、未知の電子透かしを印刷物から読み取り可能とするのに改善の余地があった。
【0006】
本発明は上記課題を契機としてなされたものであり、電子透かしの読み取りの多様化に有利な技術を提供することを例示的目的とする。
【課題を解決するための手段】
【0007】
本発明の一つの側面は電子透かし解析装置にかかり、前記電子透かし解析装置は、
所定の周期ないし周波数を有するパターンを画像に重畳することによって付加情報が埋め込まれた印刷物を撮像し、それにより得られる画像を撮像画像として取得する撮像部と、
前記撮像画像内の複数の小エリアを解析して個々の小エリアの空間周波数特性を算出する算出部と、
前記空間周波数特性に基づいて前記撮像画像中の前記付加情報の埋め込み位置および埋め込み信号強度を特定する特定部と、
前記埋め込み位置情報および前記埋め込み信号強度情報に基づいて、前記付加情報を取得するための基準位置となるマーカーを検出するためのマーカー検出エリアの前記撮像画像内における位置を決定する決定部と、
前記マーカー検出エリア内にてマーカーを検出し、該検出されたマーカーの位置を基準として前記撮像画像内の前記付加情報を取得する取得部と、を備える
ことを特徴とする。
【発明の効果】
【0008】
本発明によれば、電子透かしの読み取りの多様化に有利である。
【図面の簡単な説明】
【0009】
図1】画像処理システムのハードウェア構成例を示す図である。
図2】プリンタの記録ヘッドの模式図である。
図3】プリンタの制御回路部の構成例を示す図である。
図4】システムの構成例を示すブロック図である。
図5】アプリケーションの画面構成例を示す図である。
図6】アプリケーションの埋め込み情報入力ダイアログ例である。
図7】アプリケーションの印刷設定ダイアログ例である。
図8】SVGの記述例を示す図である。
図9】印刷データ生成処理のフローチャートである。
図10】プリントコマンドの例を示す図である。
図11】付加情報の埋め込み処理のフローチャートである。
図12】埋め込みパターンを示す図である。
図13】単位ブロックの構成例を示す図である。
図14】印刷物への単位ブロック埋め込み例を示す図である。
図15】付加情報読み取り処理部を含むブロック図である。
図16】印刷物を読み取る時の撮像画像とマーカー検出エリアの例を示す図である。
図17】撮像画像内の複数小エリアの例を示す図である。
図18】画像特性の算出例を示す図である。
図19】空間周波数領域での解析例を示す図である。
図20】マーカー検出エリアの位置決定処理のフローチャートである。
図21】ディスプレイによる通知例を示す図である。
図22】付加情報読み取り処理部を含むブロック図である。
図23】埋め込み信号強度テーブルの例を示す図である。
【発明を実施するための形態】
【0010】
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0011】
<<第1実施形態>>
<画像処理システムの概要>
第1実施形態に係る画像処理装置(画像処理装置100とする。画像処理装置100は情報処理装置100と表現されてもよい。)は、詳細については後述とするが、付加情報の埋め込みと読み取りとを実行可能なアプリケーション400(図4参照)を備える。アプリケーション400は、付加情報が埋め込まれたコンテンツとして画像データを作成するプログラムであり、アプリケーションプログラムとも表現されうる。図1等を参照しながら後述するが、画像処理装置100は、コンテンツとしての画像データから印刷データを生成し、該印刷データをプリンタ112に送信する。プリンタ112は、印刷データを用いて印刷を行い、付加情報が埋め込まれた印刷物を出力する。
【0012】
ここでいう「付加情報」とは、印刷物に埋め込まれる情報のことである。付加情報は、視覚的に目立たないように或いは視認し難いように印刷物に埋め込まれ、付加され、又は、多重化される。このような付加情報は、多重化情報、透かし情報または埋め込み情報とも表現されうる。
【0013】
<画像処理装置のハードウェア構成>
図1は、本実施形態に係る画像処理システムSYの構成例を示す。画像処理システムSYは、画像処理装置100、外部撮像デバイス111、プリンタ112およびサーバ114を備える。画像処理装置100とプリンタ112とは、ネットワーク113を介して或いは直接的に相互接続されうる。尚、図1では、サーバ114は、ネットワーク113を介して接続されるものとするが、他の実施形態として省略されてもよい。
【0014】
画像処理装置100には、携帯型または非携帯型の公知の端末が用いられればよく、例えば、スマートフォン、タブレットPC(パーソナルコンピュータ)、ノートPC、デスクトップPC等が典型的に用いられうる。本実施形態では、画像処理装置100として、タッチパネル式ディスプレイを備えるもの、いわゆるスマートフォン、が使用されるものとする。
【0015】
画像処理装置100は、CPU(Central Processing Unit)102、ROM(Read Only Memory)103、及び、RAM(Random Access Memory)104を備える。また、画像処理装置100は、2次記憶装置105、ディスプレイ106、IF(Interface)107、108及び109、並びに、内部撮像デバイス110を更に備える。
【0016】
CPU102は、所定のプログラムをメモリ上に展開して実行することにより後述の各種処理を実現する。図1においては単一のCPU102が示されているが、複数のCPUあるいはCPUコアが設けられてもよい。ROM103は、CPU102により実行されるプログラムを記憶する。RAM104は、CPU102によるプログラムの実行時に、各種情報を一時的に記憶する。
【0017】
2次記憶装置105は、ハードディスクドライブ(HDD)、ソリッドステードドライブ(SSD)、フラッシュメモリ等の公知の不揮発性メモリないし記憶媒体である。2次記憶装置105は、ファイル、画像解析等の処理結果を保持するデータベース等のデータ、並びに、各種プログラムを記憶する。
【0018】
ディスプレイ106は、各種処理を実現するための操作を受け付けるためのUI(ユーザインタフェース)を表示したり、該実行された処理結果等の各種情報を表示したり、する。本実施形態においてはディスプレイ106にはタッチパネル式ディスプレイが用いられ、即ち、ディスプレイ106はタッチセンサを備えるものとする。これにより、ユーザは、タップ、スワイプ、ピンチイン、ピンチアウト等のタッチ操作により、所望の操作をディスプレイ106に対して入力可能とする。
【0019】
内部撮像デバイス(撮像部)110は撮像を行う。撮像によって得られた画像データは、所定の画像処理が行われた後、2次記憶装置105に保存される。また、画像データは、外部撮像デバイス111からIF108を介して取得され、2次記憶装置105に保存されてもよい。
【0020】
IF109は、ネットワーク113を介して外部装置(例えばプリンタ112やサーバ114)と通信を行うことができる。
【0021】
IF107~109は、有線通信および無線通信のいずれの通信形態を採用してもよい。画像処理装置100は、IF107~109を介して、ネットワーク113に接続されたサーバ114から、又は、外部撮像デバイス111から画像データを取得したり、プリンタ112に対して画像データ(印刷データ)等を出力したり、することができる。有線通信の例としては、USB、イーサネット(登録商標)等が挙げられる。無線通信の例としては、無線LAN、NFC(Near Field Comunication)、Bluetooth(登録商標)、赤外線通信等が挙げられる。
【0022】
上述の要素の個々は、内部バス101を介して相互に接続され、CPU102は、内部バス101を介して其れら要素を制御する。本実施形態では、CPU102によりプログラムが実行され、即ち、画像処理装置100はソフトウェアの実行場所(ソフトウェア実行環境)と云える。
【0023】
<プリンタのハードウェア構成>
図2は、プリンタ112のハードウェア構成の一部を示す模式図である。本実施形態では、プリンタ112はインクジェット方式を採用するものとするが、電子写真方式等、他の記録方式が採用されてもよい。プリンタ112は、記録ヘッド201、インク部202および制御回路部203を備える。
【0024】
記録ヘッド201は、印刷メディア204の幅方向に走査(往復移動)可能に構成され、記録ヘッド201に搭載されたインク部202から受け取ったインクを印刷メディア204に吐出することにより記録を行う。ここでは、4つのインク部202が設けられるものとするが、其れらは何色でもよく、同色または同種でもよい。
【0025】
制御回路部203は、記録ヘッド201を駆動するために必要な記憶部、演算部及び通信部を含む。記録ヘッド201は、制御回路部203から記録信号および制御信号を受信し、制御信号に基づいて記録信号に応じた記録を行う。記録媒体である印刷メディア204は、記録ヘッド201により記録が行われている間、不図示の搬送ローラによって搬送され、このようにして、印刷メディア204上には画像が形成される。
【0026】
図3は、制御回路部203の構成を示すブロック図である。制御回路部203は、入力IF301、CPU302、出力IF303、ROM304およびRAM305を含む。入力IF301は、プリンタ112の外部の画像処理装置等から、画像データと、記録ヘッド201を駆動するための制御信号とを入力信号として受け付ける。入力IF301は、画像データと制御信号とをRAM305およびCPU302に送る。
【0027】
これに応じて、CPU302は、不揮発性メモリであるROM304に記憶されている制御プログラムを実行して、画像データに対して信号処理を行う。該信号処理された画像データは記録データとして制御信号とともに、出力IF303から出力される。記録ヘッド201は、該出力された記録データと、制御信号とに基づいて駆動され、これにより、印刷メディア204上に画像が印刷される。
【0028】
<システム構成>
図4は、アプリケーション400およびプリンタ112を含む画像処理システムの構成例を示す。アプリケーション400は、画像処理装置100で動作し、本実施形態では、表示処理部401、画像取得部402、付加情報設定部403、印刷設定部404、印刷データ生成部405、データ送受信部406および付加情報読み取り部407を備える。尚、アプリケーション400は、必要に応じて他の部(ブロック等と表現されてもよい。)を更に備えていてもよい。
【0029】
アプリケーション400は、ROM103または2次記憶装置105にプログラムとして格納されており、CPU102により読み出されて実行され、これにより、CPU102はアプリケーション400の上述の個々の部として機能する。アプリケーション400は、印刷対象の画像データと、入力された付加情報とに基づいて付加情報が埋め込まれた画像データを生成する機能を備え、また、生成した画像データを印刷するための印刷データをプリンタ112に送信する機能を備える。
【0030】
プリンタ112は、印刷処理部408およびデータ送受信部409を備える。印刷処理部408およびデータ送受信部409は、CPU302がROM304に格納されたプログラムを読み出して実行することにより実現される。
【0031】
図5は、画像処理装置100上で動作するアプリケーション400の画面の一例を示す。以下、図4に例示された個々の要素により行われる処理を、図5を参照しながら述べる。
【0032】
表示処理部401は、付加情報として埋め込む文字情報、印刷処理に利用する画像などを画像処理装置100のディスプレイ106に表示する処理を行う。表示処理部401は、画像および文字等を選択するボタンならびに印刷設定のリスト等、ユーザインタフェイス(UI)に関わる情報を表示する機能も備える。
【0033】
図5に例示されるように、画像処理装置100のディスプレイ106には、画像選択ボタン501、埋め込み情報設定ボタン502および印刷設定ボタン503が表示されうる。また、コンテンツ編集エリア500には、編集中のコンテンツとなる画像が表示されうる。尚、ボタン501~503は、本例に限られるものではなく、他の名称が付されたものであってもよいし、シンボル化されたアイコンであってもよい。
【0034】
画像取得部402は、付加情報が埋め込まれる対象となる画像を取得する。例えば画像選択ボタン501が選択されると、画像選択ダイアログ(ダイアログボックス。他の例としてウィンドウであってもよい。)が立ち上がり、これを用いて、ユーザは、画像処理装置100において利用可能な画像を選択することができる。なお、本実施形態では、ユーザは画像選択ダイアログから画像選択を行うものとしたが、他の実施形態として、ユーザは、別途、内部撮像デバイス110を起動して、撮像した画像を利用することも可能とする。画像取得部402により取得された画像は、コンテンツ編集エリア500に表示され、タッチ操作により、拡大・縮小・回転や移動をすることができる。その他、任意の編集が追加的に行われてもよい。
【0035】
図6は、埋め込み情報設定のダイアログ600の一例を示す。埋め込み情報設定ボタン502が押下されると、ディスプレイ106には、埋め込み情報設定のダイアログ600が表示される。付加情報設定部403は、埋め込み情報設定のダイアログ600を通じて編集された情報を、付加情報として設定する。エリア601をユーザがタップすると、埋め込みたい情報(付加情報)の編集をユーザが行うことができる。例として「hello」という文字列を付加情報として埋め込むこととする。
【0036】
ここではテキスト入力を例示するが、他の実施形態として、画像に関する著作権、撮像日時、撮像場所、撮像者等の属性情報が付加情報として埋め込まれてもよい。或いは、URL(Uniform Resource Locator)など、リンク先の情報が付加情報として埋め込まれてもよい。更に他の実施形態として、音声や動画等のように、テキスト以外の情報が付加情報として埋め込まれてもよい。また、共通のデータテーブルがある場合、そのデータテーブルのデータを識別するための識別情報が付加情報として埋め込まれてもよい。
【0037】
ユーザは、入力を完了した場合には決定ボタン602を押下し、キャンセルする場合にはキャンセルボタン603を押下することができる。
【0038】
なお、付加情報の埋め込みは、ユーザが埋め込みたい付加情報を意識的に入力する形態(図6参照)でもよいし、ユーザが意識しない形で付加情報をアプリケーション400が入力する形態でもよい。例えば、選択した画像がJPEG画像でExif(Exchangeable Image File Format)タグに情報が埋め込まれていた場合には、画像の撮影日時、撮影場所等の情報が自動的に埋め込まれうる。
【0039】
図7は、印刷設定ダイアログ700の一例を示す。印刷設定ボタン503が押下されると、ディスプレイ106には、印刷設定ダイアログ700が表示される。ユーザは、印刷設定ダイアログ700を通じて、プリンタの選択、用紙種別の選択、用紙サイズの選択、フチあり/なし印刷の設定を行うことができる。
【0040】
プリンタ選択リスト701がタップされると、使用可能なプリンタのリストが表示され、ユーザは任意のプリンタを選択することができる。用紙種別リスト702がタップされると、使用可能な用紙種別のリストが表示され、ユーザは任意の用紙種別を選択することができる。用紙種別としては、例えば、光沢紙、マット紙、普通紙等が挙げられる。用紙サイズ選択リスト703がタップされると、用紙種別リスト702で選択されている用紙種別で使用可能な用紙サイズのリストが表示され、ユーザは任意の用紙サイズを選択することができる。また、ユーザは、印刷フチ設定704をタップすることにより、印刷時のフチ設定(フチあり/フチなし)を行うことができる。フチあり印刷とは、印刷物の四辺に余白ができる印刷方法であり、フチなし印刷とは、用紙に余白が生じないように印刷する印刷方法のことである。
【0041】
印刷ボタン705が押下されると、印刷設定部404は、印刷設定を印刷データ生成部405に送信し、印刷工程に移行する。キャンセルボタン706が押下されると、印刷は実行されずに前画面に戻ることとなる。
【0042】
なお、印刷設定ダイアログ700に表示されるプリンタの印刷設定に関する情報は、予め情報処理装置に保持されていてもよいし、ネットワーク113を通じてサーバ114やプリンタ112から適宜ダウンロードされてもよい。
【0043】
印刷データ生成部405は、コンテンツのレンダリング処理、付加情報の埋め込み処理、および、プリンタ112で印刷するために必要なデータの生成処理を行う。レンダリング処理では、印刷データ生成部405は、画像取得部402により取得されてコンテンツ編集エリア500に表示されたコンテンツから、印刷に用いる画像データを生成する。付加情報の埋め込み処理では、印刷データ生成部405は、該レンダリング処理で生成された画像データに、付加情報設定部403で設定した付加情報を埋め込む。尚、付加情報の埋め込み処理は多重化処理と表現されてもよい。
【0044】
印刷データの生成に使用されるコンテンツは、ウェブ標準言語(HTML(Hyper Text Markup Language)、CSS、JavaScript(登録商標)等)を用いて記述されうる。本実施形態では、HTMLにおけるグラフィック表記手法の一つであるSVG(Scalable Vector Graphics)が用いられるものとする。しかし、これに限定されるものではなく、例えば、HTMLでグラフィックを記述するのに使用されるCanvasが用いられてもよい。
【0045】
図8(a)及び8(b)は、本実施形態において印刷に使用するコンテンツを記述した例を示す。図8(a)は、画像を1枚のみ配置した場合におけるコンテンツのSVGの記述の一例の概略を示す。尚、図中の左端の数字は行番号を示す。
【0046】
図8(a)によれば、第1行目は、コンテンツがSVGによって記述されていること、および、SVGのサイズを示す。第2行目は、コンテンツに追加された画像に関する記述を示す。本実施形態では、アプリケーション400は、画像1枚のみのコンテンツを作成する形態とするが、これにテキスト、スタンプ等が追加された形態であってもよい。その場合、該追加されたテキスト、スタンプ等の情報がSVGによって記述される。
【0047】
次に、図9を参照しながら、印刷データ生成部405が、SVGで記述された上記コンテンツのレンダリング処理を実行し、付加情報の埋め込み処理を施して印刷データの生成を行うまでの処理について述べる。
【0048】
図9は、印刷データ生成部405で行われる印刷データ生成処理の一例を示すフローチャートである。
【0049】
まず、S902(以下、単に「S902」と示す。後述の他のステップについても同様とする。)では、印刷データ生成部405は、用紙設定に応じたレンダリングサイズを決定する。例えば、用紙設定がL版、フチありで印刷解像度が300dpiであった場合、レンダリングサイズは横幅950px(ピクセル)×縦幅1400pxとなる。
【0050】
なお、印刷設定として300dpi以外の印刷解像度が設定可能である場合、他の印刷解像度に対応するレンダリングサイズが決定される。例えば、上述のように用紙設定がL版、フチありで、印刷解像度が600dpiの場合、レンダリングサイズとして1900px×2800pxが算出される。
【0051】
S903では、印刷データ生成部405は、コンテンツであるSVGの一部を印刷用に書き換える。ここでは、S902で決定されたレンダリングサイズに合うように、SVGの横幅および縦幅を、プリンタ112へ送信する画像サイズに基づいて変更する。具体的には、図8(a)のSVGの第2行目と第3行目のwidthが「950」に、heightが「1400」に、第2行目のviewBoxが「0 0 950 1400」に変更される。書き換えられたSVGの例を図8(b)に示す。
【0052】
S904では、印刷データ生成部405は、画像処理装置100の不図示のOS(Operating System)に対して画面生成を要求する。ここでは、S903にて書き換えられたSVGを参照して、950px×1400pxの領域の情報が取得される。そして、OSによって、SVG用の画面生成(950px×1400px)が実行される。ここで、SVGのサイズに関する情報は、SVG自体ではなく、アプリケーション400に保持されてもよい。その後、OSが生成する画面は、UIには表示されない画面がオフスクリーン画面として生成される。
【0053】
S905では、印刷データ生成部405は、ステップS904で生成された画面にSVGを描画するようにOSに対して要求する。OSは、SVGの情報をロードする。SVGの情報がロードされたタイミングで、アプリケーション400はOSからロード完了の通知を受け取る。この通知は、OSに標準的に備えられた機能を利用して行われればよい。アプリケーション400は、ロード完了通知を受け取ると、SVGの描画が完了したものと判定して次のステップに進む。
【0054】
S906では、印刷データ生成部405は、OSに対しコンテンツの画像データを要求する。ここでいう画像データとは、オフスクリーン画面に表示されているコンテンツのRGBAデータである。S906は、端的には、画面キャプチャを実行するステップと云える。OSは、アプリケーション400からの要求に応じて、コンテンツが描画されたオフスクリーン画面の画面キャプチャを実行し、取得したRGBAデータをアプリケーション400へ送信する。
【0055】
S907では、印刷データ生成部405は、S906で取得されたRGBAデータに対して付加情報の埋め込み処理を行う。付加情報は、視認されにくくなるように画像中に埋め込まれ、付加情報設定部403により設定されたものが使用される。付加情報の埋め込み処理の詳細については後述とする。S906にてOSから取得されたRGBAデータにはA(Alpha。ここでは透過度。)の情報が含まれている。本実施形態では、この透過度の情報は印刷には用いられないので削除されてRGBデータとして付加情報の埋め込み処理が行われる。
【0056】
S908では、印刷データ生成部405は、付加情報の埋め込み処理後のRGBデータをJPEG画像データへ変換する。なお、本実施形態では画像データをJPEGに変換する態様を例示するが、公知の他の態様が採用されてもよく、例えば、PDF(Portable Document Format)が採用されてもよい。
【0057】
S909では、印刷データ生成部405は、プリンタ112に送信するためのプリントコマンドを、S908にて生成されたJPEG画像データに付加する。ここで、JPEG画像データに付加するデータは、前述の印刷設定の情報を基に生成される。付随的に、S909において、印刷データ生成部405は、必要に応じて、プリンタ112を制御するためのコマンドを付加してもよい。
【0058】
図10は、印刷データのプリントコマンドの例を示す。ここでは、プリントコマンドとして、XML形式で記述されたコマンドが使用される。第3行目から第5行目には、「L版サイズの光沢紙に対して標準モードで印刷する」ことを示すプリンタ用の設定が記述されている。また、第7行目から第9行目には、印刷データは「横幅950、縦幅1400のJPEGデータ」ということが記述され、第10行目には、S909で変換されたJPEGデータが挿入されることが記述されている。
【0059】
プリンタ112は、画像データ(JPEGデータ)と共に上述のようなプリントコマンドを受け取ることで印刷を実行する。以上のステップにより、印刷データ生成部405で行われるレンダリング処理、付加情報の埋め込み処理および印刷データの生成処理が終了する。
【0060】
再び図4を参照すると、画像処理装置100側のデータ送受信部406は印刷データをプリンタ112に送信する。アプリケーション400は、OSに対して印刷データの送信を要求し、OSはアプリケーションから受け取ったデータをプリンタ112へ送信する。データの送信は、画像処理装置100とプリンタ112とを通信可能な公知の方式で実現されればよく、ここでは無線WiFiにより行われるものとする。他の例として、データの送信は、有線により行われてもよく、例えば、画像処理装置100とプリンタとをUSBポートで接続することにより実現されてもよい。この場合、該データは、画像処理装置100のプリンタドライバによりプリンタ112で印刷可能なラスターデータに変換され、そのラスターデータがUSBポートでプリンタ112に送信されればよい。或いは、ラスターデータがプリンタ112にて印刷可能なデータに変換され、印刷が行われてもよい。
【0061】
プリンタ112において、データ送受信部409は、画像処理装置100から印刷データを受信する。データ送受信部409は、該受信した印刷データに含まれるプリントコマンドを解析し、その解析により得られた用紙サイズおよび用紙の種類などを示す印刷設定情報を印刷処理部408に送る。また、データ送受信部409は、印刷データに含まれるJPEGファイルを復号化処理して画像データに変換し、変換後の画像データを印刷処理部408に送る。
【0062】
ここで、通常の印刷時において、印刷設定情報に補正処理情報が含まれている場合には、画像データに対して画像補正処理を実行可能である。画像補正処理の例としては、明度調整、コントラスト調整、カラーバランスの調整のほか、写真印刷を想定した逆光補正や赤目補正など、公知の画像処理が挙げられる。尚、付加情報が埋め込まれた画像を印刷する場合には、画像処理によって該埋め込まれた情報が消失ないし損失する可能性があるため、画像補正処理の実行は抑制されうる。上述の画像補正処理を実行する場合には、アプリケーション400で印刷データを生成する前(付加情報を埋め込む前)に画像補正処理が実行されるとよい。
【0063】
印刷処理部408は、データ送受信部409から受け取った画像データを、プリンタ112による出力の際に好適な色で出力されるように色分解してインク色データに変換する。インク色データへの変換は、画面表示に利用する画像フォーマット(RGB)から印刷用のインク色(CMYK)に変換する公知の色変換処理のいずれが行われてもよい。
【0064】
例えば、プリンタ112のインク色として、シアン(C)、マゼンタ(M)、イエロー(Y)およびブラック(K)の4色の場合を想定する。印刷処理部408は、入力されたレッド(R)、グリーン(G)およびブルー(B)の3色から成るデータを、C,M,Y及びKの4色のインク色データに変換する。該変換の際には、色分解テーブルが用いられうる。色分解テーブルは、R,G及びBの3つの値の入力を受けて、其れらをC,M,Y及びKのインク色の値に変換する3次元のルックアップテーブルである。このようにして、印刷処理部408は、入力された画像データの画素毎に、色分解テーブルを利用して、R,G及びBの値をC,M,Y及びKのインク色の値に変換する。
【0065】
更に、印刷処理部408は、ルックアップテーブル等に設定された画像処理パラメータを用いて、出力階調補正やハーフトーニング等の画像処理を行うことができ、それによりインク色データを印刷出力用データに変換する。
【0066】
上記変換された印刷出力用データは、制御回路部203に送信される。制御回路部203は、上述のようにして得られた印刷出力用データに基づいて印刷メディア204にインクを吐出して画像を形成する。以上のステップにより、印刷データの印刷処理が終了する。
【0067】
以上のようにして得られた印刷物(画像の形成の完了した印刷メディア204)には付加情報が埋め込まれている。アプリケーション400の付加情報読み取り部407は、付加情報が埋め込まれた印刷物から、付加情報を読み出して抽出する処理を行う機能を備える。付加情報の抽出処理の詳細については後述する。
【0068】
なお、図4の例では、アプリケーション400が付加情報の埋め込みと読み出しとの双方を行うことが可能な態様を示したが、付加情報の埋め込みと読み出しとは互いに異なるアプリケーションにより個別に行なわれてもよい。
【0069】
<付加情報の埋め込み処理>
図11は、アプリケーション400(主に印刷データ生成部405)により行われる埋め込み処理であってレンダリング後の画像データに対して付加情報を埋め込む埋め込み処理についてのフローチャートである。端的には、本フローチャートは、図9のステップS907の詳細を示す。
【0070】
S1101では、印刷データ生成部405は、付加情報をバイナリデータに変換する。ここでは、付加情報の一例として、「hello」という文字列が入力された場合を考える。バイナリデータとは、「0」または「1」の情報であり、これらを連続で並べることによりバイナリデータに特定の意味を持たせることができる。バイナリデータと文字との対応は「文字コード」とも称されるコードで定義される。例えば、文字コードの一例である「シフトJIS」によれば、「h」はバイナリデータ「01101000」に対応しうる。同様に、「e」は「01100101」に対応し、「l」は「01101100」に対応し、「o」は「01101111」に対応しうる。
【0071】
即ち、上記「hello」という文字は、バイナリデータ「0110100001100101011011000110110001101111」と表現されうる。一方、「0110100001100101011011000110110001101111」というバイナリデータが取得された場合には「hello」という文字が取得されることとなる。このように、「0」または「1」を判定可能にバイナリデータが埋め込まれることで、付加情報の埋め込みが実現される。
【0072】
図12(a)及び12(b)は、画像に対してバイナリデータ「0」または「1」の情報を埋め込む方法の幾つかの例を示す。
【0073】
図12(a)に示されるパターンはバイナリデータ「0」を表し、図12(b)に示されるパターンバイナリデータ「1」を表し、また、これらは何れも8px×8pxで構成されるものとする(図中の1個分の矩形が1px(1画素)を示す。)。印刷データ生成部405は、これらのパターンを用いて「0」および「1」のバイナリデータで構成された付加情報を画像に埋め込み、画像内の8×8の領域に対して、周期性を有するパターン(或いは周期的なパターン)を重畳ないし付与する。
【0074】
画像へのパターンの埋め込み方法の一例としては、例えば、RGBの値(輝度情報)に、直接、上記周期性を有するパターンを重畳する方式が考えられる。他の例としては、RGBの値を、輝度-色差情報など、他の色空間情報(例えばCIE L*a*b*、YCrCb信号)に分離して上記埋め込みが実現されてもよい。更に他の例としては、RGBの値をインク色(例えばCMYK信号)に分離して上記埋め込みが実現されてもよい。
【0075】
本実施形態では、説明の簡易化のため、RGB成分のB成分に上記周期性を有するパターンを重畳する方法が採用されるものとする。ここで、各成分は8ビット(0~255)で表現されているものとする。画像へのパターン埋め込みでは、図12(a)および12(b)にてハッチングされたピクセル部分に対して、B成分の画素値(B値)から、例えば30を減算する処理を行う。
【0076】
付随的に、加算されるピクセル部分が存在すると更によい。減算されるピクセル部分と、加算されるピクセル部分とが実質的に同等数の場合、付加情報が埋め込まれた後の画像における違和感が軽減されうる。
【0077】
図12(c)および12(d)は、上記減算されるピクセル部分と、上記加算されるピクセル部分とが混在する場合のパターンを示す(加算されたピクセル部分は、減算されたピクセル部分よりも薄いハッチングで図示される。)。このように、付加情報の埋め込みは、埋め込み対象の画像のRGBデータのうちの何れかに対して所定のパターンを用いた処理を行うことにより実現される。
【0078】
ここで、画像に対して上記周期性を有するパターンを重畳して埋め込む場合、自然界に存在し難いパターンの周期(或いは色の振幅変化)で埋め込まれるとよい。例えば、本実施形態ではB成分が増減するものとしたが、B成分が比較的高い周期で増減するパターンは自然界には存在し難い。このような態様で埋め込みを実現することにより、付加情報の読み取りを行う際に生じうる埋め込み信号と元画像との干渉を軽減可能となる。
【0079】
代替的/付随的に、埋め込み対象の画像に対して、予め、重畳対象となるパターンの周期に対応する周波数についてフィルタリング処理を行うことも考えられる。このことは公知のフィルタを用いて実現可能であり、一例として、FFT(高速フーリエ変換)フィルタを用いたフィルタリング処理により実現されうる。即ち、埋め込み対象の画像に対してFFTを実行して空間周波数領域の画像に変換し、重畳対象となるパターンに対応する周波数についてフィルタリング処理を行って逆FFTを実行することによって、特定周波数についてフィルタリング処理が行われた画像が得られうる。このようにして得られた画像に対して上記埋め込みを行うことにより、付加情報の読み取りを行う際に生じうる上記干渉を軽減可能となる。
【0080】
図13は、本実施形態に係る付加情報の単位ブロック(多重化ブロック)を示す。本実施形態によれば、単位ブロック1300内の全情報を読み取ることにより、上記埋め込まれた付加情報が取得される。単位ブロック1300は、本実施形態では、マーカー部1301とデータ部1302とを含む240px×240pxで構成されるものとする。
【0081】
マーカー部1301は、付加情報の読み取りを行う際に単位ブロック1300の位置を特定するために利用される80px×80pxのブロックであり、マーカー部1301であることを示す情報が埋め込まれている。マーカー部1301であることを示す情報として、本例では図12(a)および12(b)の組み合わせから成る特定のパターンが付与され、このパターンを検出することでマーカー部1301を特定することができる。他の方法として、図12(a)および12(b)とは異なる周期性(或いは周期の方向)を有するパターンでマーカー部1301を構成することも可能である。
【0082】
なお、100ビットのマーカー部1301のデータ内に誤り訂正や誤り検出のデータを含むことで、付加情報の読み取りを行う際のデータの欠損や読み取りの誤りを検出して修正するようにしてもよい。誤り訂正の手法の例として、リード・ソロモン符号やゴレイ符号等が用いられ、誤り検出の手法の例として、CRC(Cyclic Redundancy Check)等が用いられうる。
【0083】
データ部1302は、図12(a)または図12(b)のパターン1303(すなわち「0」か「1」を表すバイナリパターン)が配置される。本実施形態では、データ部1302には800個のパターン1303が配置される。パターン1303は1つで1ビットの情報を表すことができる。そのため、ブロック1300全体には800ビットの情報量が含まれることになる。この800ビットのバイナリデータに対しても、マーカー部1301のバイナリデータ同様、誤り訂正や誤り検出のデータが設けられてもよい。
【0084】
なお、本実施形態では、マーカー部1301は、単位ブロック1300の左上部に配置されているものとするが、右上部や中央部等、他の位置に配置されてもよい。また、マーカー部1301は、矩形以外の形状に設けられてもよいし、単位ブロック内に分散して配置されてもよい。
【0085】
図14は、単位ブロック1300が繰り返し埋め込まれた印刷メディア204を示す。本実施形態によれば、同じ付加情報を表す単位ブロック1300が、印刷メディア204の全面に繰り返し埋め込まれる。尚、印刷設定には、L版、300dpi印刷、及び、フチあり印刷が設定されているものとする。
【0086】
本実施形態では、S902の処理により、この場合の印刷画像サイズは、横幅950px×縦幅1400pxとなる。そのため、240px×240pxの単位ブロック1300は3行×5列で(計15ブロックが)配列可能である。印刷メディア204に埋め込まれた付加情報を読み出すには、上記繰り返し埋め込まれた複数の単位ブロック1300のうち、1つ分のデータ部1302の読み出しが行われればよい。
【0087】
なお、同じ情報(単位ブロック1300)を印刷メディア204の全面に多く埋め込むことで、付加情報の読み取りを行う際のロバスト性を高めることができる。その理由は、或る単位ブロック1300では、付加情報を読み出すことができなかったとしても、他の単位ブロック1300では、付加情報を読み出すことが可能な場合があるからである。
【0088】
なお、ここでは同じ情報(単位ブロック1300)を繰り返し埋め込む場合を例示するが、本例に限られない。異なる情報(異なる内容のブロック)が画像の全面に埋め込まれてもよい。また、図14では、印刷メディアの右部分と下部分にはブロックサイズが足りないエリアが存在するが、このエリアにもブロックの一部が埋め込まれうる。
【0089】
再び図11を参照して、S1102では、印刷データ生成部405は、単位ブロック1300の配置を決定する。印刷データ生成部405は、印刷画像の左上を起点に、単位ブロック1300を配列する。前述の図14の例は、印刷画像の左上を起点として単位ブロック1300を配置した例を示している。
【0090】
S1103では、印刷データ生成部405は、上記決定された配置でブロック1300が配列された画像に対して付加情報の埋め込みを行う。付加情報の埋め込みは、埋め込み対象の画像と、図14のブロック1300の配置とを対応付けながら、各画素に対して図12のパターンを重畳することにより行われる。具体的には、図14の各ブロック1300内のデータ部1302は、図12(a)または図12(b)のパターンで構成されている。そのため、各パターンにおいてハッチングされたピクセル部分に対して、前述の減算する処理(B値から30を減算する処理)を行う。B値が0を下回る場合には減算後の画素値を0とする。これを画像全体に適用することにより、画像への付加情報の埋め込みが完了となる。
【0091】
以上のようにして、画像に付加情報を埋め込んでプリンタ112で印刷することができる。図12(a)~12(d)のパターンは、埋め込みパターンとも表現されうる。
【0092】
<付加情報の埋め込み信号強度>
次に、付加情報の読み取りの際に該読み取りの実現のしやすさに関連する埋め込み信号強度について述べる。上述の説明では、付加情報の埋め込み処理において、B値を減算(付随的に加算)することで周期的なパターンを形成する例を示したが、減算または加算によりB値が0を下回る場合またはB値が255を上回る場合には、それぞれ、0または255に制限される。これにより色の振幅量が低下してしまうこととなるため、本例においては、B値が0~29または226~255の範囲の場合には埋め込み信号強度が低下することになってしまう。また、R値=G値=B値=0の白色およびその近傍の色域においては、B値の加算により白地に色がついてしまう(R値はR成分の画素値を示し、G値はG成分の画素値を示す。)。そのため、付加情報の埋め込みでは、白色およびその近傍の色域に対しては、埋め込み信号強度を低くし、上述の減算または加算を行わない(または減算量または加算量を減らす)ことが多い。埋め込み信号強度が低いと付加情報を読み取り難く、埋め込み信号強度が高いと付加情報を読み取り難いため、一般に、印刷物内においては付加情報を読み取り易いエリアと付加情報を読み取り難いエリアが混在することになる。
【0093】
図16は、上述の埋め込み信号強度の大小を示す印刷物1601の画像データの一例を示す。図中においては、薄い色ほど埋め込み信号強度が低いことを示し、濃い色ほど埋め込み信号強度が高いことを示す。
【0094】
<付加情報の読み取り処理>
次に、印刷物から付加情報を読み取る処理について説明する。付加情報の読み取り処理は、アプリケーション400の付加情報読み取り部407(図4参照)によって実行されるが、他の装置のアプリケーションにより行われてもよい。
【0095】
図15は、付加情報の読み取り処理を行うための画像処理装置100の構成例を示すブロック図である。画像処理装置100のアプリケーション400に含まれる付加情報読み取り部411は、画像取得部1501、画像特性算出部1502、信号強度特定部1503、マーカー検出エリア決定部1504および付加情報取得部1505を備える。
【0096】
画像取得部1501は、内部撮像デバイス110を制御して、付加情報が埋め込まれた印刷物1601の撮像を行い、印刷物1601の画像データを取得する。画像データは、静止画データでもよいし、所定のフレームレートで取得された動画データから抜き出された静止画データを使用してもよい。このようにして得られた画像データは画像特性算出部1502に送られる。画像データは、RGB形式の8ビットデータとして得られるものとし、そのサイズは1080×1920(2Kサイズ)とする。
【0097】
図16は、上述のようにして得られた画像データの一例を示す。図16に示されるように、画像処理装置100の内部撮像デバイス110により、付加情報が埋め込まれた印刷物1601が撮像され、撮像エリア1604の画像データが取得される。付加情報の取得は、撮像エリア1604内のマーカー検出エリア1605の解析により行われる。付加情報の取得は、計算量の低減のため、撮像エリア1604全体に対してではなく、一部エリアに対して行われる。
【0098】
画像特性算出部1502は、印刷物1601の画像データ内の複数の小エリアから画像特性を取得する。画像特性の算出に際しては、周波数解析により得られる空間周波数情報が使用されうる。
【0099】
図17(a)は、上述の周波数解析についての説明図を示す。図中の撮像エリア1604内に複数配置されている小エリア1701は周波数解析に用いられる。
【0100】
図18は、画像特性の算出方法の一例を示すフローチャートを示す。S1800では、パラメータi=0を設定する。
【0101】
S1801では、複数の小エリア1701のトリミング処理を行う。小エリア1701を解析サイズとし、128px×128pxサイズでトリミングする。本実施形態では、128px×128pxサイズで解析を行うものとするが、必ずしもこのサイズである必要はない。ただし、後述の空間周波数領域に変換する処理のため、2のべき乗サイズ(例えば、64px×64px、256px×256px等)とするとよい。
【0102】
S1802では、S1801で得られたトリミング画像について空間周波数領域に変換する変換処理を行い、本実施形態では2次元のFFTを行う。このようにして得られる画像をFFT画像と表現する。尚、FFTのアルゴリズムについては公知の技術が使用されればよい。
【0103】
図19(a)は、画像データの一部を空間周波数領域に変換して実際に得られたFFT画像の一例を示す。画像の中心を原点とすると、横軸が水平方向の周波数、縦軸が垂直方向の周波数を表し、原点から遠いほど高周波域であることを示す。ここで示されたFFT画像は、実部と虚部の絶対値の和を各周波数に対応する画素毎に求め、その最大値と最小値(ゼロ)で正規化したものをそれぞれの画素の画素値としたものである。正規化は0~255(最大値)で行い、モノクロ8ビット画像とする。このようにして得られたモノクロ8ビットのFFT画像は、小エリア1701の画像特性を表す情報として用いられる。
【0104】
S1803では、パラメータiに基づいて、すべてのエリアの画像特性の算出が完了したか否かを判定する。算出が完了していない場合は、S1804にてパラメータiに1を加算して、次のエリアの画像特性を算出するためS1801に戻る。全てのエリアの画像特性の算出が完了していた場合(パラメータiが所定値に達した場合)には、画像特性としてFFT画像を信号強度特定部1503に送信する。
【0105】
信号強度特定部1503は、画像特性算出部1502で得られた小エリア1701の特性情報(FFT画像)を使用して、小エリア1701ごとの特徴量を算出し、それらの相対比較に基づいて付加情報の埋め込み位置および埋め込み信号強度を特定ないし推定する。尚、信号強度特定部1503は、信号強度推定部1503と表現されてもよいし、或いは、単に特定部または推定部と表現されてもよい。
【0106】
図16に示されるように、印刷物1601の画像データ内には、印刷物1601に埋め込まれた前述の2つの埋め込みパターン(図12(a)及び12(b)参照)が含まれている。そのため、画像データからトリミングされた一部を空間周波数領域に変換すると、2つの埋め込みパターンの周期性(或いは周期の方向)に対応する周波数においてパワースペクトルのピークを呈する。FFT画像は、原点に対して反対側にも同じパワースペクトルのピークを呈する。図19(a)からも分かるように、空間周波数領域では、中央部の直流成分の他、4つのパワースペクトルのピークを呈する。
【0107】
前述の小エリア1701の特徴量として、小エリア1701のパワースペクトルの演算値(例えば平均値や最大値など)を使用することも考えられるが、その場合、埋め込みパターンとは異なる成分(例えば、現画像に含まれる周期性を有する成分)がノイズとして混入してしまう。そこで、本実施形態では、埋め込みパターンのパワースペクトルのピーク(付随的に、その近傍)の成分を抽出して上記特徴量とする。尚、パワースペクトルのピークは以下の説明において単にピークと表現されうる。
【0108】
図19(b)は、FFT画像内の小エリアの分割態様の他の例を示す。内部撮像デバイス110と印刷物1601との間で傾き(回転)が生じていない場合、埋め込みパターンに対応するピークは、ライン1901及び1902の上に呈される。ただし、ピークを呈する周波数は、内部撮像デバイス110と印刷物1601との間の距離によって変動する。例えば、この距離が近い場合には低周波側にピークが呈され、この距離が遠い場合には高周波側にピークが呈される。図19(b)の例では、原点付近の低周波領域を除き、低周波側からA~Fの6つの小エリアがリング状に設定される。
【0109】
この例においては、前述のピークがこれらリング状の小エリアの何れに含まれるかを判定する。例えば、複数の小エリアの個々に含まれるパワースペクトルの最大値を求め、複数の小エリアのうち該最大値が最も大きいものを、ピークが存在する小エリアと判定する。或いは、複数の小エリアの個々に含まれるパワースペクトルの平均値を求め、複数の小エリアのうち該平均値が最も大きいものを、ピークが存在する小エリアと判定してもよい。
【0110】
次に、傾き(回転)に対応したピークの抽出を行う。内部撮像デバイス110と印刷物1601との間で傾き(回転)が生じていた場合、図19(c)に示されるように、ピークは、その位置が位置a~i間で回転して呈される。すなわち、ライン1901及び1902が回転する。尚、位置a~iは10°間隔で配置される。
【0111】
ここでは一例として、リング状の小エリア1903(エリアA~F)のうちエリアCでピークが検出された場合を考える。上記傾き(回転)が生じていない場合には、小エリア1903における4つのピークは位置aに現れる。これに対し、上記傾き(回転)が左回り(反時計回り)に10°に生じていた場合には、ピークは位置bに現れる。同様に、上記傾き(回転)が右回り(時計回り)に30°傾いていた場合、ピークは位置gに現れる。
【0112】
このようにして、ピークの位置を検出することにより上記傾き(回転)を判定可能となる。具体的には、位置a~iの個々に含まれるパワースペクトルの平均値Xを位置ごとに算出し、平均値Xが最大になる位置に対応する傾きが発生していると判定される。前述の特徴量としては、この平均値Xの値を利用可能である。
【0113】
なお、本実施形態では、リング状の小エリア1903の判定後、上記傾きの判定を行っている。これにより、リング状の小エリア1903外に局所的に強いパワースペクトルのピークがノイズとして生じていた場合に上記傾きの誤検出を軽減できる。
【0114】
図17(b)は、図17(a)の個々の小エリア1701に対して特徴量を算出した結果を示す。色が濃い小エリア1701は埋め込み信号強度が高いため、特徴量の数値が高くなり、また、色が薄い小エリア1701は埋め込み信号強度が低いため、特徴量の数値が低くなる。つまり、個々の小エリア1701の位置と、その特徴量とに基づいて、付加情報の埋め込み位置および埋め込み信号強度を特定可能である。本例の場合、右上部の円形が含まれる小エリア1701は相対的に埋め込み信号強度が低く、右下部の矩形が含まれる小エリア1701は相対的に埋め込み信号強度が高い。
【0115】
上記特定された埋め込み位置および埋め込み信号強度を示す情報は、それぞれ、埋め込み位置情報および埋め込み信号強度情報表現される。本実施形態では、2次元配列INFO[X][Y]に格納された埋め込み信号強度が使用される。信号強度は、整数型で0~255で表現され、また、X及びYは、それぞれ、図17(b)に示される小エリア1701の横方向及び縦方向の座標値に相当するインデックス値である。埋め込み位置情報と埋め込み信号強度情報は、マーカー検出エリア決定部1504に送信される。
【0116】
マーカー検出エリア決定部1504は、上述の埋め込み位置情報および埋め込み信号強度情報に基づいて、図16の撮像画像1604内のマーカー検出エリア1605の位置を決定する。より具体的には、マーカー検出エリア1605の位置は、マーカー検出エリア1605内に含まれる小エリア1701の埋め込み信号強度の平均値が最も大きくなるように決定される。
【0117】
図20は、マーカー検出エリア1605の位置を決定する方法の一例を示すフローチャートである。ここでは、簡単のため、マーカー検出エリア1605は、小エリア1701が4行×4列で配列されたサイズとし、また、小エリア1701間のマージンは0とする。つまり、マーカー検出エリア1605のサイズは512px×512pxとする。
【0118】
S2001では、変数(Max、Ave、X、Y、XmaxおよびYmax)の初期化を行う。変数Maxは、埋め込み信号強度の最大値を格納する変数であり、初期値は0である。変数Aveは、埋め込み信号強度の平均値を格納する変数であり、初期値は0である。変数X及びYは、それぞれ、撮像画像1604内の小エリア1701の横方向及び縦方向の座標値に相当する変数であり、初期値はいずれも0である。尚、図17(b)では、撮像画像1604の左上部に位置する小エリア1701はX=0かつY=0であり、撮像画像1604の右下部に位置する小エリア1701はX=7かつY=13となる。変数Xmax及びYmaxは、それぞれ、埋め込み信号強度が最大となるX値及びY値を格納するための変数であり、初期値はいずれも0である。
【0119】
S2002では、変数X及びYを左上部の起点とした4行×4列の小エリア1701の埋め込み信号強度INFO[X][Y]の平均値Aveを算出する。
【0120】
S2003では、平均値Aveと最大値Maxとの比較を行う。平均値Aveの方が最大値Maxより大きい場合、S2004に進む。最大値Maxの初期値は0であるため、平均値Aveが0でない限りは初回では平均値Aveの方が最大値Maxより大きいと判定される。平均値Aveが最大値Max以下の場合、S2005に進む。
【0121】
S2004では、最大値Maxの更新を行う。最大値Maxに平均値Aveを格納し、その時の座標値X及びYをそれぞれ変数Xmax及びYmaxに格納し、その後、S2005に進む。S2002~S2004により単一の小エリア1701についての探索が完了となる。
【0122】
S2005では、マーカー検出エリア1605の全てについて探索が完了したか否かを判定する。本例では、X=4かつY=10に達した時点で完了となる。探索が完了していた場合には本フローチャート終了とする。探索が完了していない場合には座標値X及びYを更新してS2002に戻る。座標値X及びYは、例えば座標値Xを1ずつインクリメントし、探索の右端であるX=4を超えた場合には座標値Xを0に戻し、座標値Yを1インクリメントする。一連の探索において、座標値X、Yのインクリメントの順番は逆であってもよい。
【0123】
以上により、マーカー検出エリア1605内に含まれる小エリア1701の埋め込み信号強度の平均値Aveが最大となる座標値X及びYの位置がそれぞれ変数Xmax及びYmaxとして得られる。これら変数Xmax及びYmaxを撮像画像1604内の座標系に変換し、マーカー検出エリア1605の位置として決定する。今回の例では、変数Xmax=4かつ変数Ymax=9が得られ、マーカー検出エリア1605の撮像画像1604内の位置はx=512+α、かつ、y=1152+βとなる。ここで、上述のx及びyは、それぞれ、撮像画像1604の左上座標をx=0かつy=0とした時の座標である。尚、α及びβは、図17(b)の左上座標と、図17(a)の撮像画像1604の左上座標と、のずれを補正するためのオフセット量とする。
【0124】
今回の例では、オフセット量αは、撮像画像1604の横方向のサイズ1080pxから128px×8=1024pxを減算した56pxを2で除算したα=28pxとなる。同様に、オフセット量βは、縦方向のサイズ1920pxから128px×14=1792pxを減算した128pxを2で除算したβ=64pxとなる。よって、マーカー検出エリア1605の位置は、x=540px、かつ、y=1216pxとなる。
【0125】
上述の説明では、マーカー検出エリア1605を、小エリア1701のサイズである128pxずつずらしながら探索して、埋め込み信号強度が最大となる位置を検索する態様を例示した。しかしながら、マーカー検出エリア1605のサイズは、必ずしも小エリア1701のサイズの倍数でなくてもよいし、探索は、1pxずつずらしながら行われてもよい。尚、マーカー検出エリア1605内に小エリア1701全体が入らない場合が考えられるが、その場合、マーカー検出エリア1605内に含まれる小エリア1701部分の面積比によってマーカー検出エリア1605全体の埋め込み信号強度が算出されればよい。
【0126】
また、本実施形態では、マーカー検出エリア1605の位置を、マーカー検出エリア1605内に含まれる小エリア1701の平均値が最大となるように決定したが、平均値ではなく、他の演算値(例えば中央値や最大値など)が使用されてもよい。
【0127】
付加情報取得部1505は、マーカー検出エリア決定部1504で決定されたマーカー検出エリア1605に対して、マーカー検出を実行し、付加情報を取得するための制御を行う。
【0128】
まず、マーカーの位置検出について説明する。本実施形態では、図12(a)及び12(b)に示される2つのパターンが画像に埋め込まれている。埋め込み例ではRGBのB成分に30の減算を行っている。これにより、図12(a)および図12(b)のパターンは、特定の2つの方向に比較的大きなパワースペクトルを呈し、このことは、図18(a)及び18(b)からも明らかである。付加情報取得部1505は、8px×8pxの局所エリアにおいて、このパワースペクトルを検出することにより、「0」か「1」のデータ抽出を行う。なお、該検出の前処理として、エッジ検出やシャープネス処理を行うことにより、パワースペクトルを強調することも可能である。
【0129】
周波数解析による上記データ抽出を行うのに際しては、画像データのマーカー検出エリア1605からマーカーを正確に切り出すことが必要となる。特に、スマートフォン等の携帯端末を用いた撮像の場合、撮像距離が一定となり難いことから、距離を補正して図12(a)等の8px×8pxのパターンを正確に切り出すための処理が行われる。該補正の方法の例としては、前述のリング状の小エリア1701の解析(図19(b)参照)が挙げられる。マーカー検出エリア1605をFFTにより空間周波数領域に変換した後、リング状の小エリア1701についての上記解析によって、ピークが検出される小エリア1701を判定する。そして、該判定されたリング状の小エリア1701に対応する撮像距離と、読み取り基準となる撮像距離との関係に基づいて、画像の拡縮率を算出し、該拡縮された画像に対して、その後の処理を行う。上記補正は、撮像画像に対して前処理として実行されるとよい。他の実施形態として、予め設定された複数段階の拡縮率でマーカー検出エリア1605の画像を拡縮し、その後の処理を行うことも可能である。
【0130】
次に、座標位置のずれを補正する処理が行われる。この方法の一例としては、画像内からの8px×8pxの切り出しと周波数解析とを、横方向および縦方向に1pxずつずらしながら(即ち、横8回×縦8回の計64回。)繰り返し行い、それらのうち、最もパワースペクトルが強くなる箇所を、切り出しの基準位置とすることが挙げられる。
【0131】
上述の切り出しの基準位置の検出が完了した後、マーカー検出を行う。図13の例によれば、マーカー検出に際して、まず、特定のバイナリパターンから成る単位ブロック1300のマーカー部1301を検出する。マーカー部1301には、図12(a)または12(b)の8px×8pxのパターンが所定のルールに従って10行×10列の計100個配置される。そして、マーカー検出エリア1605内に、このパターンが存在するか否か(すなわち、100ビット分の「0」又は「1」の数列が取得可能か否か)の検査が行われる。具体的には、上記100個のデータ抽出がマーカー検出エリア1605内の位置を8pxずつずらしながら実行し、上記パターンと一致する箇所を検出する。なお、100ビット内に前述の誤り検出や誤り訂正のデータが含まれている場合、該取得されたデータに対して誤り検出や誤り訂正が行われる。
【0132】
マーカー部1301が検出された後、マーカー部1301の位置を基準としてデータ部1302から付加情報の抽出(或いは分離と表現されてもよい。)を行う。付加情報の抽出は、上述の単位ブロック1300では、部分的にのみ抽出が行われてしまう場合があるが、その場合には抽出が行われなかった他の部分のデータを他のブロックのデータで補って、データを完成させてもよい。すなわち、付加情報の抽出は、第1のブロックで第1の部分のデータを抽出し、第1のブロックとは別の第2のブロックで、第1の部分以外の第2の部分のデータを抽出することで行なわれてもよい。図13の例では、データが完成すると、800ビット分の「0」又は「1」数列が得られる。付加情報のデータに対しても、マーカー部1301同様に誤り検出や誤り訂正のデータが含まれている場合には、取得されたデータに対して誤り検出や誤り訂正が行われる。
【0133】
上述のようにして付加情報の抽出が完了した後、付加情報として抽出された数値列に対してデータの解析を行い、埋め込まれた際の付加情報の形式に変換する処理を行う。例えば、あらかじめ、埋め込む対象の付加情報を、テキスト文書データとして、文字コード「シフトJIS」で数値化した値としておく。
【0134】
シフトJISの1バイトコード(半角文字)では、上位4ビットと下位4ビットの組み合わせで、数値及び文字に対応した変換を行うことができる。例えば、上位4ビットが「0100」で且つ下位4ビットが「0001」の場合、文字列として、「A」と判定される。このように、予め保持ないし準備された変換マップに基づいて上記抽出された数値列に対して変換処理を行うことで、対応の文字へと変換することができる。
【0135】
付加情報として抽出された数値列はRAM104に一時的に保持され、2次記憶装置105に予め保持された「シフトJIS」変換マップが参照されることで(図1参照)、上記変換処理を比較的簡便に実現可能となる。
【0136】
一例として、付加情報抽出部1702が抽出した付加情報の数値列が「0110100001100101011011000110110001101111」の場合、本例に係る変換マップによれば、以下のように変換される:
上位4ビット「0110」かつ下位4ビット「1000」から文字「h」が得られ;
上位4ビット「0110」かつ下位4ビット「0101」で、文字「e」が得られ;
上位4ビット「0110」かつ下位4ビット「1100」で、文字「l」が得られ;
上位4ビット「0110」かつ下位4ビット「1100」で、文字「l」が得られ;及び、
上位4ビット「0110」かつ下位4ビット「1111」で、文字「o」が得られる。
【0137】
従って、文字列の「hello」となる。抽出された文字列は表示処理部401によりディスプレイ106に表示される(図4参照)。また、抽出された文字列が、URLの場合には、ネットワークに接続して所定のブラウザを利用してURL先の画面がディスプレイ106に表示されうる。また、そのURLが動画サイトであった場合には、ディスプレイ106および不図示のスピーカーにより動画が再生されてもよい。
【0138】
以上の処理によれば、所定の周期(或いは、其れに対応する周波数)を有するパターンを対象の画像に重畳することにより、該画像には付加情報が埋め込まれる。そして、その印刷物1601を撮像して得られた撮像画像における複数の小エリア1701を解析することにより、空間周波数特性が算出される。小エリア1701ごとの空間周波数特性からは、撮像画像中の付加情報の埋め込み位置および埋め込み信号強度が特定ないし推定される。該特定ないし推定された埋め込み位置または埋め込み信号強度に基づいて、撮像画像内におけるマーカー検出エリア1605の位置を決定し、該決定されたマーカー検出エリア1605内にてマーカー検出が実行される。そして、該検出されたマーカー位置を基準にすることで、撮像画像内の付加情報を取得可能となる。これにより、撮像画像中のどの位置にどの程度の信号強度で電子透かし情報が埋め込まれているかを特定することが可能となり、それに基づいて、付加情報を取得する制御を行うことが可能となる。そのため、本実施形態によれば、多様な態様の電子透かし情報の取得を比較的簡便に行うことが可能であり、電子透かしの読み取りの多様化に有利と云える。
【0139】
<<第2実施形態>>
前述の第1実施形態では、マーカー検出エリア1605の位置を変更しながら埋め込まれた付加情報を取得する態様を例示したが、第2実施形態として、画像処理装置(携帯端末)100を操作しているユーザに対してディスプレイ106によって所定の通知が行われてもよい。
【0140】
図21(a)は、上記通知の一例として、携帯端末100の移動を促す表示が行われる態様を示す。ここでは、現在のマーカー検出エリア1605がガイド2101として表示され、付加情報の読み取りを更に実行し易い位置が視覚的に表示される。
【0141】
さらに、「携帯端末をかざす位置を変えてください」といった文字による通知が行われると更によい。該通知を受けたユーザは印刷物1601に対する携帯端末100の位置を変えることで、印刷物1601の埋め込み信号強度が高い位置での付加情報の読み取りが可能となり、それにより該読み取りを適切に実現可能となる。
【0142】
なお、一般的に撮像画像の端部に近い領域は撮像に際して焦点距離の調整が困難な場合があり、また、携帯端末100が典型的に備えうる光源を使用して撮像する場合には該光源の光量が充分でない場合もある。すなわち、埋め込みの信号強度が同じであっても、上述のような場合には、付加情報の読み取りを適切に実現することが難しくなりうる。そのため、マーカー検出エリア1605外に埋め込み信号強度が高い小エリア1701が存在した場合、付加情報の読み取りを実行し易いマーカー検出エリア1701内で撮像することにより、埋め込み信号強度を更に高めて該読み取りを行うことが可能になる。
【0143】
図21(b)は、ユーザに対する通知を視覚的に行う態様の一例として、個々の小エリア1701の特徴量(図17(b)参照)を撮像画像上に重畳させて表示する態様を示す。その際に、付加情報の読み取りの行い易さをユーザが把握できるように、通知2102が視覚的に行われるとよい。
【0144】
また、マーカー検出エリア1605に含まれる小エリア1701の埋め込み信号強度が視覚的に表示されてもよい。例えば、ガイド2101の枠の色や小エリア1701の色が埋め込み信号強度に応じて変更されてもよい。
【0145】
本実施形態によれば、第1実施形態記載の効果が得られる他、携帯端末100を用いて付加情報の読み取りをより適切に実現可能となるため、携帯端末100のユーザビリティの向上にも有利となりうる。
【0146】
<<第3実施形態>>
前述の第1実施形態では、複数の小エリア1701の画像特性として周波数解析により得られる空間周波数情報を算出し、その画像特性を使用して付加情報の埋め込み位置および埋め込み信号強度を特定ないし推定するものとした。しかしながら、このことは、他の態様によって実現されてもよく、例えば、撮像画像内の色情報が用いられてもよい。
【0147】
図22は、第3実施形態に係る付加情報の読み取り処理を行うための画像処理装置100の構成の他の例を示すブロック図である。画像処理装置100のアプリケーション400に含まれる付加情報読み取り部407は、画像取得部2201、信号強度特定部2202、マーカー検出エリア決定部2203、および、付加情報取得部2204を備える。
【0148】
画像取得部2201は、第1実施形態の画像取得部1501同様、内部撮像デバイス110を駆動制御して、付加情報が埋め込まれた印刷物1601の撮像を行って画像データを取得する。該撮像によって得られた画像データは、信号強度特定部2202に送られる。
【0149】
信号強度特定部2202は、画像データの色情報(RGB値)に基づいて、付加情報の埋め込み位置および埋め込み信号強度を特定ないし推定する。具体的には、RGB値に対応して埋め込み信号強度を参照可能な参照テーブルを予め画像処理装置100のアプリケーション400内に保持させ、埋め込み信号強度への変換は、画像データの画素毎に該参照テーブルを参照することにより行われればよい。この変換は、画像データの画素毎の画素値に対して行われてもよいし、第1実施形態同様に複数の小エリア1701を定義して小エリア1701毎のRGB値の代表値を算出して、その代表値に対して行われてもよい。ここでいう代表値の例としては、小エリア1701のRGB値の平均値、最頻値、中央値などが挙げられる。
【0150】
尚、信号強度特定部1503同様、信号強度特定部2202は、信号強度推定部2202と表現されてもよいし、或いは、単に特定部または推定部と表現されてもよい。
【0151】
図23は、上述の参照テーブルの一例として埋め込み信号強度変換テーブル2301を示す。詳細については後述とするが、テーブル2301は、付加情報の埋め込みの対象となる色のRGB値の組み合わせと、埋め込み信号強度とが対応付けられた3Dルックアップテーブル(3D-LUT)である。R値、G値、及び、B値のそれぞれは、0、32、64、96、128、160、192、224、255のいずれかであり、テーブル2301は、9×9×9=729個分のデータを示す。
【0152】
テーブル2301は、RGB値に対する埋め込み信号強度を色ごとに予め測定することにより得られる。例えば、240px×240pxのサイズの(R、G、B)=(128、128、128)のパッチ画像に、図13に例示されたマーカー部1301およびデータ部1302の付加情報を埋め込み、プリンタ112で印刷する。そのパッチを撮像して前述の実施形態1同様の手順で埋め込み信号強度を測定する。この測定を729色それぞれに対して順に実施することで、ルックアップテーブル2301を作成可能である。なお、該撮像に際しては、撮像の条件(例えば印刷物1601との距離や照明など)は固定されるとよい。
【0153】
任意のRGB値に対する埋め込み信号強度は、例えば3D-LUTの四面体補間により、RGB値から求められる。補間の方法の他の例としては、公知の線形補間方法である立方体補間、三角柱補間などが用いられてもよい。
【0154】
マーカー検出エリア決定部2203以降の処理については、第1実施形態同様であるため、ここでは説明を省略する。
【0155】
なお、本実施形態では、変換テーブル2301の入力値としてRGB値を使用する態様を例示したが、他の色空間が用いられてもよい。例えば、CIE-XYZ、YCbCr(YUV)、CIE-Lab等が用いられてもよい。
【0156】
また、埋め込みを行う際のRGB値は、通常、sRGB色空間の値として扱われるが、内部撮像デバイス110から得られる撮像画像のRGB値が、カラーマネジメントされていないデバイス固有のRGB値であった場合、sRGBのRGB値とは異なる値となる。そのような場合、それらの差が補正されるように、デバイスRGB-sRGBの変換を行うための3D-LUTが予めアプリケーション400内に保持されていてもよい。この場合、付加情報の読み取りを行う際にアプリケーションUIにてデバイスの種類を選択し、デバイスの種類に応じた3D-LUTを参照して色変換することにより、デバイスの種類に応じた埋め込み信号強度の特定ないし推定が可能となる。
【0157】
また、印刷物1601の用紙の種類によって埋め込み信号強度が変わる場合には、用紙毎の3D-LUTを予めアプリケーション400内に保持しておいてもよい。その場合、付加情報の読み取りを行う際にアプリケーションUIにて印刷物1601の用紙の種類を選択し、用紙の種類に応じた3D-LUTを参照して変換することにより、用紙の種類に応じた埋め込み信号強度の特定ないし推定が可能となる。
【0158】
本実施形態によれば、付加情報が埋め込まれた印刷物1601の撮像画像内の色情報に基づいて該撮像画像中の付加情報の埋め込み位置および埋め込み信号強度を特定ないし推定可能となる。よって、本実施形態によっても第1実施形態記載の効果が得られる。
【0159】
<<その他の実施形態>>
前述の各実施形態では、印刷画像の全面の個々の単位ブロック1300に同一の付加情報を繰り返し埋め込む態様を例示したが、この例に限られるものではない。例えば、個々の単位ブロック1300には、それぞれ別個の情報が埋め込まれてもよい。あるいは、単位ブロック1300を複数のグループに分類して、第1のグループのブロックには第1の付加情報が埋め込まれ、第1のグループとは異なる第2のグループのブロックには第1の付加情報とは異なる第2の付加情報が埋め込まれてもよい。尚、これら第1のグループおよび第2のグループは、印刷画像内において所定の領域に偏って配置されてもよいし、分散して配置されてもよい。また、グループの数は3以上でもよい。
【0160】
また、前述の各実施形態では、付加情報が埋め込まれる領域は所定のサイズのブロックである態様を例示したが、この例に限られるものではない。例えば、ブロックは、矩形の形状でなくてもよく、他の任意の形状であってもよい。
【0161】
また、付加情報が可変長の情報であり、付加情報のサイズ(付加情報が埋め込まれている範囲)を示す情報が単位ブロック1300のデータ部1302の所定の場所(例えば最初の部分)に埋め込まれていてもよい。例えば、800ビットの場合、冒頭の一部のビット(例えば80ビット)が、その単位ブロック1300内に付加情報が埋め込まれている範囲を示してもよい。
【0162】
また、付加情報の埋め込みの方式が複数ある場合、それらに対応する複数のルールをアプリケーション400に予め複数規定すると共に、付加情報の例えば冒頭のヘッダ部に対応のルールを識別し選択する情報が埋め込まれていてもよい。この場合、識別されたルールに基づいて付加情報の抽出が行われることとなる。
【0163】
また、前述の個々の実施形態では、画像処理装置100とプリンタ112とがネットワークで接続されており、画像処理装置100により生成された印刷データがプリンタ112で印刷される態様を例示したが、この例に限られるものではない。例えば、プリンタ112がアプリケーション400を備えていてもよく、プリンタ112が、プリンタ112自身で生成した印刷データに基づいて、付加情報が埋め込まれた印刷物1601を出力してもよい。つまり、実施形態で説明されたアプリケーション400の機能の一部は、プリンタ112に設けられてもよい。
【0164】
<<プログラム>>
本発明は、上記実施形態の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、該システム又は装置のコンピュータにおける1以上のプロセッサがプログラムを読み出して実行する処理により実現されてもよい。例えば、本発明は、1以上の機能を実現する回路(例えば、ASIC)によって実現されてもよい。
【0165】
<<その他>>
上述の説明においては、インクジェット記録方式を用いたプリンタ112を例に挙げて説明したが、記録方式は上述の態様に限られるものではない。また、プリンタ112は、記録機能のみを有するシングルファンクションプリンタであっても良いし、記録機能、FAX機能、スキャナ機能等の複数の機能を有するマルチファンクションプリンタであっても良い。また、例えば、カラーフィルタ、電子デバイス、光学デバイス、微小構造物等を所定の記録方式で製造するための製造装置であっても良い。
【0166】
また、本明細書でいう「記録」は広く解釈されるべきものである。従って、「記録」の態様は、記録媒体上に形成される対象が文字、図形等の有意の情報であるか否かを問わないし、また、人間が視覚で知覚し得るように顕在化したものであるか否かも問わない。
【0167】
また、「記録媒体」は、上記「記録」同様広く解釈されるべきものである。従って、「記録媒体」の概念は、一般的に用いられる紙の他、布、プラスチックフィルム、金属板、ガラス、セラミックス、樹脂、木材、皮革等、インクを受容可能な如何なる部材をも含みうる。
【0168】
更に、「インク」は、上記「記録」同様広く解釈されるべきものである。従って、「インク」の概念は、記録媒体上に付与されることによって画像、模様、パターン等を形成する液体の他、記録媒体の加工、インクの処理(例えば、記録媒体に付与されるインク中の色剤の凝固または不溶化)等に供され得る付随的な液体をも含みうる。
【0169】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【0170】
110:内部撮像デバイス(撮像部)、1502:画像特性算出部(算出部)、1503:信号強度特定部(特定部)、1504:マーカー検出エリア決定部(決定部)、1505:付加情報取得部(取得部)。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23