JP2017073649A - 情報処理装置、情報処理方法、及びコンピュータプログラム - Google Patents

情報処理装置、情報処理方法、及びコンピュータプログラム Download PDF

Info

Publication number
JP2017073649A
JP2017073649A JP2015198926A JP2015198926A JP2017073649A JP 2017073649 A JP2017073649 A JP 2017073649A JP 2015198926 A JP2015198926 A JP 2015198926A JP 2015198926 A JP2015198926 A JP 2015198926A JP 2017073649 A JP2017073649 A JP 2017073649A
Authority
JP
Japan
Prior art keywords
information
image
multiplexing
multiplexed
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015198926A
Other languages
English (en)
Other versions
JP2017073649A5 (ja
Inventor
三宅 信孝
Nobutaka Miyake
信孝 三宅
祐樹 石田
Yuki Ishida
祐樹 石田
火韋 宋
Huowei Song
火韋 宋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2015198926A priority Critical patent/JP2017073649A/ja
Priority to US15/270,278 priority patent/US10033904B2/en
Publication of JP2017073649A publication Critical patent/JP2017073649A/ja
Publication of JP2017073649A5 publication Critical patent/JP2017073649A5/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】印刷物中に視覚的に目立たぬように情報を埋め込む電子透かしやステガノグラフィ印刷する画像に対して情報を、良好に抽出可能なように多重化する。
【解決手段】付加情報多重化装置102には、モノクロ若しくは多階調の印刷画像(画像情報)と、該印刷画像に埋め込む情報である付加情報と、が入力される。そして付加情報多重化装置102は、印刷画像上の複数箇所に付加情報を埋め込みの際には、画像上の複数箇所に情報を多重化し、該複数箇所のうちエッジ量が閾値未満となる箇所に、エッジ量が閾値以上となる画像情報を多重化することにより埋め込んだ付加情報が視認し難くする。そして付加情報多重化装置102は、付加情報を埋め込んだ印刷画像をプリンタ103に対して送出する。
【選択図】図1

Description

本発明は、画像に情報を多重化するための技術に関するものである。
印刷物中に視覚的に目立たぬように(以下、不可視と称する)情報を埋め込む技術が以前から提案されている。電子透かしやステガノグラフィと称されるこの技術分野は昨今急速に発展してきている。
特許文献1には、スキャナやカメラ装置で印刷物を読み込む際の幾何変換耐性を持たせるために、補正マーカを追加して印刷する方法が開示されている。
特開2005-26797号公報
しかしながら、特許文献1では、接写撮影時では印刷物中央部に合焦させると印刷部の端部がぼけてしまうという像面湾曲収差の現象がある。特に印刷物中央部合焦時の印刷物端部は像面湾曲収差だけでなく、その他のザイデル収差の影響を大きく受けてしまい、情報取り出しに必要な良好な解析用画像を取得することができない。印刷物全体の画像を良好に取得する為には、印刷物の局所毎に適切な合焦を施し、ブラケット撮影合成により解析画像を取得する方法がある。但し、例えば多くのカメラ付き携帯電話やスマートフォンに搭載されているコントラストAF(オートフォーカス)方式を用いた場合、画像端部にAFに必要なエッジ部が存在しているとは限らず、合焦することも困難であることが多い。
本発明はこのような問題に鑑みてなされたものであり、印刷する画像に対して情報を、良好に抽出可能なように多重化するための技術を提供する。
本発明の一様態は、画像上の複数箇所に情報を多重化する第1の多重化手段と、前記複数箇所のうちエッジ量が閾値未満となる箇所に、エッジ量が閾値以上となる画像情報を多重化する第2の多重化手段とを備えることを特徴とする。
本発明の構成によれば、印刷する画像に対して情報を、良好に抽出可能なように多重化することができる。
(a)はシステムの構成例を示すブロック図、(b)はカメラ付携帯端末の構成例を示すブロック図。 付加情報多重化装置102の構成例を示すブロック図。 多重化部200の構成例を示すブロック図。 誤差拡散部300の構成例を示すブロック図。 付加情報多重化装置102が行う処理のフローチャート。 多重化領域を説明する図。 量子化閾値マトリクスの一例を示す図。 付加情報分離装置106の構成例を示すブロック図。 印刷物の撮像画像の一例を示す図。 空間フィルタの一例を示す図。 二次元の周波数領域を示す図。 符号抽出処理のフローチャート。 間引き方法をテーブル形式にて示した図。 間引き方法をテーブル形式にて示した図。 印刷画像、人工画像を多重化した印刷画像を示す図。 合成制御部201及び合成部202が行う処理のフローチャート。 付加情報多重化装置102の構成例を示すブロック図。 付加情報多重化装置102の構成例を示すブロック図。 印刷画像の一例を示す図。 付加情報多重化装置102の構成例を示すブロック図。 GUIの表示例を示す図。 付加情報多重化装置102の構成例を示すブロック図。 付加情報多重化装置102の構成例を示すブロック図。
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載した構成の具体的な実施例の1つである。
なお、本明細書において、「記録」(「プリント」という場合もある)とは、文字、図形等有意の情報を形成する場合のみならず、有意無意を問わない。さらに人間が視覚で知覚し得るように顕在化したものであるか否かも問わず、広く記録媒体上に画像、模様、パターン等を形成する、または媒体の加工を行う場合も表すものとする。
また、「記録媒体」とは、一般的な記録装置で用いられる紙のみならず、広く、布、プラスチック・フィルム、金属板、ガラス、セラミックス、木材、皮革等、インクを受容可能なものも表すものとする。
[第1の実施形態]
以下では、画像上の複数箇所に情報を多重化(第1の多重化)し、該複数箇所のうちエッジ量が閾値未満となる箇所に、エッジ量が閾値以上となる画像情報を多重化(第2の多重化)する情報処理装置の一例としての付加情報多重化装置について説明する。
また、以下では、次のような構成を有する撮像装置の一例としての付加情報分離装置について説明する。画像上の複数箇所に情報を多重化し且つ該複数箇所のうちエッジ量が閾値未満となる箇所に対してエッジ量が閾値以上となる画像情報を多重化することで得られる多重化済画像が印刷された印刷物において複数箇所に対応するそれぞれの領域の撮像画像を取得する。そして、撮像画像から上記の情報を抽出する。
先ず、印刷画像(印刷対象となる画像や文字を含む)としての画像情報に付加情報を埋め込む(多重化する)付加情報多重化装置について説明する。なお、付加情報多重化装置は、プリンタや複合機等に搭載されているプリンタエンジンに出力する印刷画像(画像情報)を生成するコンピュータ内のプリンタドライバソフトウェアやアプリケーションソフトとして該コンピュータにインストールされても良い。また、付加情報多重化装置は、複写機、ファクシミリ、プリンタ本体等にハードウエア及び/又はソフトウエアとして内蔵されても良い。
図1(a)は、このような付加情報多重化装置を含む、印刷物に付加情報を埋め込んで出力するシステムの構成例を示すブロック図である。
付加情報多重化装置102には、モノクロ若しくは多階調の印刷画像(画像情報)と、該印刷画像に埋め込む情報である付加情報と、が入力される。付加情報は、画像情報とは異なる情報であり、例えば、音声情報、動画情報、テキスト文書情報、画像情報に関する著作権、撮影日時、撮影場所、撮影者等の画像属性情報、該画像情報とは異なる他の画像情報、等がある。
そして付加情報多重化装置102は、印刷画像上の複数箇所に付加情報を埋め込むのであるが、その埋め込みの際には、埋め込んだ付加情報が視認し難くなるように埋め込む。そして付加情報多重化装置102は、付加情報を埋め込んだ印刷画像をプリンタ103に対して送出する。
プリンタ103は、インクジェットプリンタ、レーザープリンタ等、疑似階調処理を用いることにより階調表現を実現するプリンタであり、付加情報多重化装置102からの印刷画像を紙などの記録媒体上に記録することで印刷物を生成する印刷装置である。もちろん、付加情報多重化装置102からの印刷画像を紙などの記録媒体上に記録する装置であれば、複合機など、印刷機能を有する他の装置であっても構わない。
次に、上記の付加情報多重化装置102の構成例を、図2のブロック図を用いて説明する。
多重化部200には、上記の画像情報及び付加情報が入力される。そして多重化部200は上記の如く、印刷画像上の複数箇所に付加情報を埋め込むのであるが、その埋め込みの際には、埋め込んだ付加情報が視認し難くなるように埋め込む。
合成制御部201は、多重化部200が付加情報を多重化する領域のうち、カメラ付携帯端末104が合焦し難い領域が存在するか否かを判断し、存在すれば、その領域に多重化するための画像を人工画像として合成部202に出力する。
合成部202は、合成制御部201から人工画像が出力されると、該人工画像を、多重化部200による多重化済みの画像情報において該当する領域に多重化してから、該多重化済みの画像情報をプリンタ103に対して出力する。一方、合成部202は、合成制御部201から人工画像が出力されない場合には、多重化部200による多重化済みの画像情報をそのままプリンタ103に対して出力する。
次に、上記の多重化部200の構成例を、図3のブロック図を用いて説明する。
誤差拡散部300は、入力された印刷画像に対して誤差拡散法を用いた疑似階調処理を施すことで、入力階調数よりも少ない量子化レベルに変換し、複数画素の量子化値によって面積的に階調性を表現する印刷画像に変換する。誤差拡散処理の詳細については後述する。そして誤差拡散部300は、疑似階調処理を施した印刷画像をプリンタ103に対して送出する。
ブロック化部301は、入力された印刷画像を複数の領域(ブロック)に分割(ブロック化)する。なお、分割する領域の形状は矩形であっても良いし、他の形状であっても良い。例えば、同じ属性の領域(オブジェクトごとの領域など)ごとに分割しても良い。
量子化条件制御部302は、ブロック化部301にて分割されたそれぞれのブロックの量子化条件を制御する。この量子化条件は、誤差拡散部300において用いられる。
制御部310は、付加情報多重化装置102を構成する各機能部の動作制御を行うと共に、付加情報多重化装置102が行うものとして後述する各処理を実行若しくは制御するためのものである。制御部310は、ROM312、CPU311、RAM313を有する。
CPU311は、ROM312やRAM313に格納されているコンピュータプログラムやデータを用いて処理を実行する。これによりCPU311は、付加情報多重化装置102を構成する各部の動作制御を行うと共に、付加情報多重化装置102が行うものとして後述する各処理を実行若しくは制御する。
ROM312には、付加情報多重化装置102の設定データや、付加情報多重化装置102が行うものとして後述する各処理をCPU311に実行若しくは制御させるためのコンピュータプログラムやデータが格納されている。
RAM313は、CPU311が各種の処理を実行する際に用いるワークエリアを有する。
次に、誤差拡散部300の構成例を、図4のブロック図を用いて説明する。以下では説明を簡単にするために、量子化値が2値である誤差拡散処理を例にして説明する。
加算器400には、印刷画像を構成する各画素の画素値が入力され、該画素の画素値に、誤差分配演算部403から供給される「既に2値化された該画素の周辺画素の分配された量子化誤差」を加算する。
比較部401には、加算器400から出力された注目画素の画素値と、該注目画素が属するブロックについて量子化条件制御部302が決定した量子化条件において該注目画素に対する閾値と、を比較する。そして、加算器400から出力された注目画素の画素値>閾値の場合には、注目画素の量子化値として「1」を出力し、加算器400から出力された注目画素の画素値≦閾値の場合には、注目画素の量子化値として「0」を出力する。なお、印刷画像が8ビットの精度で階調を表現する画像(各画素の画素値が8ビットで表現される画像(8ビット画像))である場合、量子化値「1」に対応する量子化代表値は「255」となり、量子化値「0」に対応する量子化代表値は「0」となる。
このように、印刷画像の各画素に対して「1」若しくは「0」となる量子化値が決定するのであるが、量子化値が「1」となる画素は(インク、トナー等を用いて)印刷され(対応するドットが印字され)、量子化値が「0」となる画素は印刷されない。
減算器402は、比較部401から出力された注目画素の量子化値に対応する量子化代表値と、加算器400から出力された注目画素の画素値と、の差分を該注目画素に対する誤差として求める。
誤差分配演算部403は、減算器402が注目画素について求めた誤差を、該注目画素の周辺画素に分配する。誤差の配分割合は注目画素との相対的な距離に基づいて実験的に設定された誤差の配分テーブル404を予め所有しておき、該配分テーブル404に記された配分割合に基づいて誤差を分配する。図4の配分テーブル404は、周囲4画素分の配分テーブルを示しているが、これに限るものではない。
次に、上記のような構成を有する付加情報多重化装置102が、印刷画像の各ブロックに対して量子化条件を設定し、該各ブロックに対して該量子化条件に基づく誤差拡散を行う一連の処理について、図5のフローチャートを用いて説明する。なお、図5のフローチャートでは、ブロック化部301による印刷画像のブロック分割は省略しているが、このブロック分割は、ステップS503までには行っておく必要がある。
<ステップS501>
CPU311は、印刷画像の垂直方向の画素位置(x座標値)を示す変数iの値を0に初期化する。
<ステップS502>
CPU311は、印刷画像の水平方向の画素位置(y座標値)を示す変数jの値を0に初期化する。以下では、印刷画像の左上隅の位置を原点(0,0)とし、x座標値は画像右方向に増加し、y座標値は画像下方向に増加するものとする。しかし、以下の処理において、印刷画像上の全ての画素位置をスキャンできるであれば、変数i、jの初期値やスキャン方向はここで説明するものに限らない。
<ステップS503>
量子化条件制御部302は、印刷画像における画素位置(i、j)における画素が、符号を多重化する領域(多重化領域)に属しているか否かを判断する。ここで、多重化領域について、図6を例にとり説明する。
600は、印刷画像全体を表しており、垂直方向のサイズ=HEIGHT、水平方向のサイズ=WIDTHとなっている。また、印刷画像600内の点線で区分しているそれぞれの矩形はブロック化部301によって分割されたそれぞれのブロックを表しており、垂直方向のサイズ=M画素、水平方向のサイズ=N画素となっている。なお、Mは2≦M<HEIGHTを満たす自然数、Nは2≦N<WIDTHを満たす自然数である。なお、図6では、印刷画像600の原点を基準点としてブロック化を行っているが、原点とは異なる点を基準点としてブロック化を行っても良い。
図6のように、印刷画像600の原点を基準点としてブロック化を行うと、水平方向のブロック数W=INT(WIDTH/N)となり、垂直方向のブロック数H=INT(HEIGHT/M)となる。ここでINT(X)はXの整数部分を返す関数である。図6に示す如く、印刷画像600の原点から水平方向にW個、垂直方向にH個のブロックが並んだ状態においては、印刷画像600の右端及び下端にブロックが存在しない領域(非ブロック領域)が発生する。本実施形態では、各ブロックの領域を多重化領域とし、非ブロック領域を非多重化領域とする。
すなわち、ステップS503では、印刷画像における画素位置(i、j)が、何れかのブロック内の画素位置(多重化領域内の画素位置)であるのかを判断する。そしてこの判断の結果、印刷画像における画素位置(i、j)が多重化領域内の画素位置である場合には、処理はステップS505に進み、非多重化領域内の画素位置である場合には、処理はステップS504に進む。
<ステップS504>
量子化条件制御部302は、量子化条件として量子化条件Cを設定する。量子化条件Cが如何なるものであるのかについては後述する。
<ステップS505>
量子化条件制御部302は、印刷画像における画素位置(i、j)が属するブロックに割り当てられている符号を取得する。例えば、ブロック数分の要素を有し且つ該要素には対応するブロックに対するビット値が登録されている配列を作成し、該配列において、印刷画像における画素位置(i、j)が属するブロックに対応する要素に登録されているビット値を取得する。図6の場合、ブロック数は縦6個×横4個=24個であるから、要素数24個の1次元配列CODE[]を生成する。そして、CODE[0],CODE[1],…,CODE[23]のそれぞれには、0番目のブロックに対応するビット値、1番目のブロックに対応するビット値、…、23番目のブロックに対応するビット値が登録されている。なお、この配列は6×4の2次元配列でも良い。
そして量子化条件制御部302は、該配列CODEにおいて、印刷画像における画素位置(i、j)が属するブロックに対応する要素に登録されているビット値bitを取得する。印刷画像における画素位置(i、j)が属するブロックに対応する要素に登録されているビット値bitは以下のようにして配列CODEから取得する。
bit=code[INT(i/M)×W+INT(j/N)]
<ステップS506>
量子化条件制御部302は、ステップS505で取得したビット値bitが「1」であるのか「0」であるのかを判断する。この判断の結果、ステップS505で取得したビット値bitが「1」である場合には、処理はステップS508に進み、「0」である場合には、処理はステップS507に進む。
<ステップS507>
量子化条件制御部302は、量子化条件として量子化条件Aを設定する。量子化条件Aが如何なるものであるのかについては後述する。
<ステップS508>
量子化条件制御部302は、量子化条件として量子化条件Bを設定する。量子化条件Bが如何なるものであるのかについては後述する。
<ステップS509>
誤差拡散部300は、ステップS504,S507,S508の何れかで、印刷画像における画素位置(i、j)の画素について設定した量子化条件に基づいて、該画素に対して図4を用いて説明した誤差拡散処理(量子化処理)を行う。
<ステップS510>
CPU311は、変数jの値を1つインクリメントする。
<ステップS511>
CPU311は、j<WIDTHであるのか否かを判断する。この判断の結果、j<WIDTHであれば、処理はステップS503に戻り、j<WIDTHでなければ、処理はステップS512に進む。
<ステップS512>
CPU311は、変数iの値を1つインクリメントする。
<ステップS513>
CPU311は、i<HEIGHTであるか否かを判断する。この判断の結果、i<HEIGHTであれば、処理はステップS502に戻り、i<HEIGHTでなければ、図5のフローチャートに従った処理は終了する。
次に、上記の量子化条件A、量子化条件B、量子化条件Cのそれぞれについて説明する。
誤差拡散法における量子化条件には様々な因子があるが、本実施形態では量子化条件は、量子化閾値とする。量子化条件Cは多重化領域外で使用されるため、量子化閾値は任意の値でよい。例えば、印刷画像が8ビット画像であり、量子化レベルが2値の場合、上記の通り最大の量子化代表値は「255」となり、最小の量子化代表値は「0」となるため、その中間値「128」を量子化閾値とする。すなわち、量子化条件Cとして、「量子化閾値を「128」に固定する」という条件を採用する。
量子化条件A、量子化条件Bは多重化領域内で使用されるため、量子化条件の違いによる画質の違いを生じさせなければならない。但し、画質の違いは視覚的には判別しにくいように表現し、かつ、記録媒体上から容易に識別できなくてはならない。
そこで本実施形態では、一例として、量子化条件Aとして図7(a)に示す量子化閾値マトリクス、量子化条件Bとして図7(b)に示す量子化閾値マトリクスを採用する。それぞれの量子化閾値マトリクスにおいてそれぞれのマスは1画素に対応しており、斜線部分のマスには量子化閾値θ1、非斜線部分のマスには量子化閾値θ2(θ2>θ1)が設定されている。すなわち、図7(a)の量子化閾値マトリクスは、量子化条件Aにおける量子化閾値の変化の周期を表したもので、図7(b)の量子化閾値マトリクスは、量子化条件Bにおける量子化閾値の変化の周期を表したものである。
量子化閾値θ1としては、量子化閾値θ2と比べて突出した値を用いる。例えば、印刷画像が8ビット画像である場合、上記の通り最大の量子化代表値は「255」、最小の量子化代表値は「0」となるため、その中間値「128」を量子化閾値θ2とし、これと比べて突出した値「10」を量子化閾値θ1とする。
このような量子化閾値マトリクスをステップS509にて使用する場合に、画素位置(i、j)に対応する量子化閾値は以下のようにして特定する。すなわち、画素位置(i、j)が属するブロック内に、該ブロックに対して設定した量子化閾値マトリクスを2次元的に繰り返し配置した場合に、該画素位置(i、j)に対応する量子化閾値マトリクスの要素(量子化閾値)を特定する。然るに、画素位置(i、j)に対してはこの特定した量子化閾値を用いて、上記の誤差拡散処理を行う。
量子化閾値が低くなると、該量子化閾値を適用した画素の量子化値が「1」(量子化代表値「255」)になりやすくなる。すなわち、図7(a)の量子化閾値マトリクスを適用したブロックでは、図7(a)の斜線部分のマスの並びで量子化値「1」の画素が並ぶことになる。同様に、図7(b)の量子化閾値マトリクスを適用したブロックでは、図7(b)の斜線部分のマスの並びで量子化値「1」の画素が並ぶことになる。換言すると、N画素×M画素のブロック毎に、図7(a)の斜線部分のマスの並びでドットが発生するブロックと、図7(b)の斜線部分のマスの並びでドットが発生するブロックと、が混在することになる。
誤差拡散法においては量子化閾値の多少の変更は画質に大きな影響を及ぼさない。組織的ディザ法においては、使用するディザパターンによって、階調表現の画質が大きく左右される。しかし、前述したように、規則的に量子化閾値の変化を与えた誤差拡散法では、あくまでも画質を決定する階調表現は誤差拡散である。そのため、ドットの並びが多少変化したり、テクスチャの発生が変化したりするなどの微小な変化があっても、階調表現の画質にはほとんど影響を与えない。それは、量子化閾値が変化した場合でも、あくまでも画像信号値と量子化値との差分となる誤差は周囲画素に拡散される為、入力された画像信号値はマクロ的に保存される。即ち、誤差拡散法を用いた場合には、ドットの並び、テクスチャの発生に関しては冗長性が非常に大きいことになる。
なお、上記の説明では、誤差拡散法の量子化閾値に符号を表す所定の周期性を重畳することにより多重化を実現してきたが、これに限るものではなく、例えば、以下の方式も考えられる。
・ 直接RGBの輝度情報に周期性を重畳する方式
・ RGBの輝度情報を輝度‐色差情報(例えばYCrCb信号、XYZ信号、L*a*b*信号)に分離して周期性を多重化する方式
・ RGBの輝度情報をインク色(例えばCMYK信号)に分離して周期性を多重化する方式
次に、上記の付加情報多重化装置102が上記のようにして配列CODEの各要素を多重化した印刷画像が印刷された印刷物から付加情報を抽出(分離)する付加情報分離装置について説明する。このような付加情報分離装置を搭載した装置としては、例えば、カメラ付携帯電話、カメラ付スマートフォン、カメラ付きタブレットPC等のカメラ付携帯端末が考えられる。また、付加情報分離装置は、外部の撮像デバイスによって撮像された上記の印刷物の撮像画像を該撮像デバイスから取得し、該取得した撮像画像から付加情報を抽出する装置であっても良い。以下では、このような付加情報分離装置を搭載したカメラ付携帯端末について説明する。先ず、カメラ付携帯端末の構成例を図1(b)のブロック図を用いて説明する。
撮影条件設定部108は、撮像部105のフォーカス設定を制御する。
撮像部105は、撮影条件設定部108により制御されたフォーカス設定に応じてピントを合わせて、カメラ付携帯端末104の姿勢に応じた撮像方向の被写体を撮像するものである。ユーザがカメラ付携帯端末104を手に把持して撮像部105の視野内に印刷物が含まれるようにカメラ付携帯端末104の姿勢を調整して撮像指示を入力すると、撮像部105は、印刷物が含まれる撮像画像を撮像する。この印刷物は上記の通り、付加情報多重化装置102が上記のようにして配列CODEの各要素を多重化した印刷画像が印刷された印刷物である。この印刷物はプリンタ103によって得られる。
付加情報分離装置106は、撮像部105によって撮像された印刷物の撮像画像から付加情報を抽出し、該抽出した付加情報を端子107を介してスピーカー109やディスプレイ110に対して送出する。付加情報が音声情報であれば、端子107を介してスピーカー109に対して送出されるし、付加情報が画像情報(文字情報を含む)であれば、端子107を介してディスプレイ110に対して送出される。また、付加情報は、端子107を介して外部の機器に対して送信されても良い。すなわち、付加情報の出力先については特定の出力先に限るものではない。
第二撮像センサ111は、撮像部105とは別途設けられた撮像センサであり、印刷物の撮影は第二撮像センサ111を用いて行っても良い。
次に、付加情報分離装置106の構成例について、図8のブロック図を用いて説明する。
ずれ検出部801には、撮像部105から送出された印刷物の撮像画像が入力される。撮像部105の解像度(撮像センサ解像度)は、印刷物を作成するプリンタ103の解像度(プリンタ解像度)と同等以上であることが好ましい。当然、正確に印刷物のドットの点在情報を読み込む為には、サンプリング定理により、撮像センサ解像度はプリンタ解像度よりも2倍以上であることが必要になる。しかし、同等以上であれば、正確でなくとも、ある程度ドットが点在していることを判別することは可能である。本実施形態では、説明を簡単にするために、プリンタ解像度と撮像センサ解像度とが同一解像度であるものとする。
ずれ検出部801は、撮像部105から送出された撮像画像の幾何学的ずれを検出する。プリンタ出力、カメラ付携帯端末104による撮影を経ている為に、ずれ検出部801に入力される撮像画像は、付加情報多重化装置102が生成した印刷画像とは幾何学的に大きくずれている場合がある。そこで、ずれ検出部801では、印刷物と印刷物以外との境界線(印刷物境界線)をエッジ検出にて検出する。
印刷物の撮像画像の一例を図9に示す。プリンタ解像度と撮像センサ解像度とが同一解像度であれば、プリンタ103の記録媒体上記録時の斜行、及びカメラ付携帯端末104を印刷物にかざす時のずれ等により、画像の回転方向(傾き)が補正すべき大きな要因となる。そのため、この印刷物境界線を検出することにより、どの程度回転方向でずれが生じているのかが判断できる。
ブロック化部802は、撮像画像上に、ブロック化部301によるブロックサイズよりも小さい矩形領域(ブロック)を、一定間隔(スキップ画素数)を空けて複数箇所に設定する(ブロック化)。図6の場合、ブロック化部301によるブロックサイズはN画素×M画素であるから、ブロック化部802が撮像画像上に一定間隔を空けて複数箇所に設定するブロックのサイズP画素×Q画素は、P≦N及びQ≦Mという条件を満たす必要がある。
すなわち、多重化時のN画素×M画素のブロックと想定される領域内に、P画素×Q画素のブロックがひとつ内包するようにブロック化する。上記の「スキップ画素数」は、「水平方向にN画素、垂直方向にM画素」が基本となるが、ずれ検出部801が検出したずれ量をブロック数で割り出し、1ブロックあたりのずれ量を演算して、スキップ画素数に加算して補正する必要がある。
空間フィルタA803は、その各係数が、量子化条件Aの量子化閾値θ1の周期に適応して作成されるものである。量子化条件Aが図7(a)の量子化閾値マトリクスである場合、空間フィルタA803は、図10(a)に示す各係数から成るマトリクスである。空白のマスには「0」の値を有する係数が設定されているものとする。
空間フィルタB804は、その各係数が、量子化条件Bの量子化閾値θ1の周期に適応して作成されるものである。量子化条件Bが図7(b)の量子化閾値マトリクスである場合、空間フィルタB804は、図10(b)に示す各係数から成るマトリクスである。空白のマスには「0」の値を有する係数が設定されているものとする。
空間フィルタA803、空間フィルタB804の何れでも、それぞれのマスが1画素に対応しており、5画素×5画素の中央部のマスにおける係数が着目画素に適用され、その周辺部の24個のマスにおける係数が該着目画素の周辺の24画素に適用される。図10(a)、(b)から明らかな様に、これらの空間フィルタはエッジ強調のフィルタになっている。しかも、その強調するエッジの方向性と多重化した時の量子化閾値θ1の方向性とが一致している。つまり、図10(a)の空間フィルタは図7(a)の量子化閾値マトリクスに、図10(b)の空間フィルタは図7(b)の量子化閾値マトリクスに一致するように作成する。
フィルタリング部805aは、ブロック化部802による各ブロック内の各画素に対して空間フィルタA803を適用することで、該ブロック内のエッジが強調されたものを、該ブロックとは別途生成する。例えば、着目画素に空間フィルタA803を適用する場合、着目画素の画素値に対して空間フィルタA803の中央部のマスに記載の係数値「2」を乗じ、着目画素の周辺画素に対しては空間フィルタA803において対応する位置のマスに記載の係数値を乗じる。これにより、着目画素を中心とする5画素×5画素のサイズを有する領域内の各画素の画素値に対して空間フィルタA803において対応する位置の係数値を乗じることができる。そして5画素×5画素のそれぞれの係数値が応じられた画素値の合計値を求め、該合計値を着目画素の画素値とする。このように、ブロック内の各画素を着目画素としてこのような処理を行うことで、該ブロック内のエッジが強調されたものを、該ブロックとは別途生成することができる。
フィルタリング部805bは、ブロック化部802による各ブロック内の各画素に対して空間フィルタB804を適用することで、該ブロック内のエッジが強調されたものを、該ブロックとは別途生成する。ブロックに対する空間フィルタB804の適用については、ブロックに対する空間フィルタA803の適用と同様にして行う。
間引き部A806は、フィルタリング部805aによって生成されたブロック(該ブロック内の各画素の画素値を変換値と呼称する場合がある)に対して、ある規則性に基づく間引き処理を行う。間引き部B807は、フィルタリング部805bによって生成されたブロック(該ブロック内の各画素の画素値を変換値と呼称する場合がある)に対して、ある規則性に基づく間引き処理を行う。本実施形態では、この間引きの規則性を周期性と位相とに分離して処理する。すなわち、間引き部A806及び間引き部B807では間引きの周期性が異なっていて、各々、位相を変化させた複数の間引き処理を実行する。間引き方法については後述する。
変換値加算部808aは、間引き部A806による間引き後のブロック内の各画素の画素値(変換値)を、位相毎にそれぞれ加算する。変換値加算部808bは、間引き部B807による間引き後のブロック内の各画素の画素値(変換値)を、位相毎にそれぞれ加算する。この間引き処理及び変換値の加算処理は、空間フィルタで強調した所定周波数ベクトルの電力を抽出することに相当する。
分散値部809aは、変換値加算部808aが位相毎に加算した加算結果の分散を算出する。分散値部809bは、変換値加算部808bが位相毎に加算した加算結果の分散を算出する。
判定部810は、分散値部809a及び分散値部809bによって求められたそれぞれの周期性における分散値に基づいて、多重化された符号を判定する。
図11の二次元の周波数領域において、横軸は水平方向の周波数、縦軸は垂直方向の周波数を示している。中心となる原点は直流成分を示し、原点から遠ざかるにつれて、高周波域となる。図11中の円は、誤差拡散によるカットオフ周波数を示している。誤差拡散法のフィルタ特性は、低周波域がカットオフされたHPF(ハイパスフィルタ)の特性を示し、そのカットオフされる周波数は、対象画像の濃度に応じて変化する。
本実施形態の場合、量子化閾値の変更により、量子化後に発生する周波数特性が変化する。即ち、図7(a)の量子化閾値マトリクスにおける量子化閾値の変更では図11の直線A(周波数ベクトルA)上に、図7(b)の量子化閾値マトリクスにおける量子化閾値の変更では図11の直線B(周波数ベクトルB)上に大きなパワースペクトルが生じる。付加情報の分離時には、この大きなパワースペクトルが発生する周波数ベクトルを検出することが多重化信号の判定につながる。そこで、各々の周波数ベクトルを個別に強調、抽出することが必要になる。
図10(a)のマトリクス及び図10(b)のマトリクスは、特定の周波数ベクトルの方向性を有するHPFに相当する。すなわち、図10(a)の空間フィルタでは、直線A上の周波数ベクトルを強調することが可能になり、また、図10(b)の空間フィルタでは、直線B上の周波数ベクトルを強調することが可能になる。例えば、図7(a)の量子化閾値マトリクスによる量子化条件の変更により、図11の直線Aの周波数ベクトル上に大きなパワースペクトルが発生したと仮定する。その場合、図10(a)の空間フィルタではパワースペクトルの変化量が増幅するが、図10(b)の空間フィルタでは、ほとんど増幅されない。すなわち、複数の空間フィルタを並列にフィルタリングした場合には、周波数ベクトルが一致した空間フィルタ時のみ増幅し、それ以外のフィルタでは増幅がほとんど無い為、いかなる周波数ベクトル上に大きなパワースペクトルが発生しているかが容易にわかる。
制御部890は、付加情報分離装置106を構成する各機能部の動作制御を行うと共に、付加情報分離装置106が行うものとして後述する各処理を実行若しくは制御するためのものである。制御部890は、ROM891、CPU892、RAM893を有する。
CPU892は、ROM891やRAM893に格納されているコンピュータプログラムやデータを用いて処理を実行する。これによりCPU892は、付加情報分離装置106を構成する各部の動作制御を行うと共に、付加情報分離装置106が行うものとして後述する各処理を実行若しくは制御する。
ROM891には、付加情報分離装置106の設定データや、付加情報分離装置106が行うものとして後述する各処理をCPU892に実行若しくは制御させるためのコンピュータプログラムやデータが格納されている。
RAM893は、CPU892が各種の処理を実行する際に用いるワークエリアを有する。
次に、間引き部A806、間引き部B807、変換値加算部808a、変換値加算部808b、分散値部809a、分散値部809b、判定部810、制御部890によって行われる処理について、同処理のフローチャートを示す図12を用いて説明する。なお、図12のフローチャートに従った処理はブロックごとに行われるものである。
<ステップS1201>
CPU892は、以降の処理で用いる変数iの値を0に初期化する。
<ステップS1202>
CPU892は、以降の処理で用いる変数jの値を0に初期化する。
<ステップS1203>
CPU892は、フィルタリング部805a(フィルタリング部805b)によって生成されたブロックに対する間引きの規則性の因子、すなわち、「周期性」及び「位相」の2因子を決定する。以降では、変数iを周期性に関する変数として用い、変数jを位相に関する変数として用いる。周期性及び位相の条件は、番号(ナンバー)により管理されていて、周期性ナンバー(以下No.と略す)がi、位相No.がjである間引き方法の因子を設定する。
<変数iの値が「0」の場合>
間引き部A806は、周期性No.がi、位相No.がjである間引き方法の因子に基づく間引き方法でもって、フィルタリング部805aからのブロックに対する間引き処理を行う。
<変数iの値が「1」の場合>
間引き部B807は、周期性No.がi、位相No.がjである間引き方法の因子に基づく間引き方法でもって、フィルタリング部805bからのブロックに対する間引き処理を行う。
<ステップS1204>
<変数iの値が「0」の場合>
変換値加算部808aは、間引き部A806によって間引き処理がなされたブロック内の各画素の画素値の合計値を求め、該求めた合計値を配列TOTAL[i][j]に登録する。
<変数iの値が「1」の場合>
変換値加算部808bは、間引き部B807によって間引き処理がなされたブロック内の各画素の画素値の合計値を求め、該求めた合計値を配列TOTAL[i][j]に登録する。
<ステップS1205>
CPU892は、変数jの値を1つインクリメントする。
<ステップS1206>
CPU892は、変数jの値が、「位相を変化させて間引き処理をする回数J」未満であるのか否かを判断する。この判断の結果、j<Jであれば、処理はステップS1203に戻り、j≧Jであれば、処理はステップS1207に進む。
<ステップS1207>
<変数iの値が「0」の場合>
分散値部809aは、配列TOTAL[i][j]の分散値を求める。すなわち、配列TOTAL[i][j]に登録されている各合計値が、位相の差により、どの程度ばらついているのかを評価する。そして分散値部809aは、該求めた分散値を配列B[i]に登録する。
<変数iの値が「1」の場合>
分散値部809bは、配列TOTAL[i][j]の分散値を求め、該求めた分散値を配列B[i]に登録する。
<ステップS1208>
CPU892は、変数iの値を1つインクリメントする。
<ステップS1209>
CPU892は、変数iの値が「周期性を変化させて間引き処理をする回数I」(本実施形態ではI=2)未満であるのか否かを判断する。この判断の結果、i<Iであれば、処理はステップS1202に戻り、i≧Iであれば、処理はステップS1210に進む。
<ステップS1210>
判定部810は、B[0]〜B[I−1]のうち最大値B[i’]を特定し、i’を変数imaxに代入する。
<ステップS1211>
判定部810は、周期性No.がimaxである符号を多重化された符号であると判定する。
図12のフローチャートに従った処理について具体例を挙げて説明すべく、I=2、J=4の例について説明する。図13、14は、ブロックサイズをP=Q=16とした時の間引き方法をテーブル形式にて示したもので、それぞれ、周期性No.=0の時の間引き方法(間引き部A806に相当)、周期性No.=1の時の間引き方法(間引き部B807に相当)を示している。図13,14の何れでも、それぞれのマスが1画素分を表している。なお、図13,14ではP=Qとしているが、P≠Qであっても良いし、矩形でなくても良い。
また、マスの中に記している値は、該マスに対応する画素が間引かれるときの位相No.を示している。例えば、「0」が記されているマスに対応する画素は、j=0のときに間引き対象となる画素である。すなわち、図13、図14ともに、位相は4種であり、位相No.が0〜3の時の間引き方法に相当する。
図13、図14に示した周期性については、それぞれ、図13は図7(a)の、図14は図7(b)の周期性に一致している。上記にて説明したように、図7(a)、(b)では共に、斜線部分のマスの並びで量子化値「1」の画素が並ぶことになる。その為、例えば、多重化時に量子化条件Aであったブロックの場合には、図7(a)の周期性で量子化値「1」が並びやすくなる。然るに、適合した空間フィルタを用いてフィルタリングすると、更にその周波数成分が増幅され、図13の周期性で間引きして上記の合計値を求めると、その合計値の分散値は大きくなる。しかし、多重化時に量子化条件Aであったブロックを、適合しない空間フィルタを用いてフィルタリングし、なおかつ、図14の周期性で間引きした場合には、上記の合計値の分散値は小さくなる。すなわち、量子化値の周期性と間引きの周期性が異なる為、間引きの位相の違いによる上記の合計値は平均的になり、ばらつきは小さくなる。反対に、多重化時に量子化条件Bであったブロックでは、図13の周期性で間引きすると、分散値は小さくなり、図14の周期性で間引きすると、分散値は大きくなる。
図5のフローチャートに上記の例を当てはめると、ビット値bit=0の場合には量子化条件Aを設定し、ビット値bit=1の場合には量子化条件Bを設定している。然るに、周期性No.=0の分散値が大きいときにはビット値bit=0、逆に周期性No.=1の分散値が大きいときにはビット値bit=1と判断できる。すなわち、量子化条件と、空間フィルタ特性、及び、間引き条件の周期性を関連づけることで、容易に多重化、及び、分離が実現できる。なお、上記の説明では、周期性No.は0と1の2種であり、ブロック内の多重化符号は1ビットであったが、周期性No.は3種類以上であっても良いし、多重化符号は2ビット以上であっても構わない。当然、量子化条件の種類と、空間フィルタの種類、間引き条件の周期性No.の種類(上記のIの値)とは一致する。
本実施形態では、直交変換による量子化条件の規則性に対応した周波数の電力値の比較をしなくても、容易に符号を分離できる。しかも、実空間領域の処理の為、非常に高速に分離処理が実現できる。
なお、上記の量子化条件A、B、空間フィルタA、B、間引き部A806、B807のそれぞれはあくまでも一例であり、これに限るものではない。すなわち、他の周期性を持たせても良いし、空間フィルタのタップ数、間引きのブロックサイズ等は前述した例よりも大きくても小さくても構わない。
また、図12の動作手順では、説明を簡単にするために、周期性No.に対応する変数i、及び位相No.に対応する変数jの繰り返し処理にて説明している。しかし、実際には、P画素×Q画素のブロック内の画素アドレスによる繰り返し処理の方が実現が容易である。すなわち、図13、図14に示したように、ブロック内の各画素アドレスに対して周期性No.、及び位相No.の2種の情報をテーブルとして予め格納しておき、対応した周期性No.、及び位相No.の各々の変数に対して画素値を加算していく方法である。この方法では、P画素×Q画素分を処理するだけで、並列に、周期性No.、及び位相No.の各集合の合計値を算出することができる。
また、図12の動作手順では、空間フィルタを用いたフィルタリング後の間引きした画素値の合計値の分散値を算出し、分散値の大小比較により、符号を判定していたが、これに限るものではない。例えば、分散値を用いない評価関数の比較による方法も考えられる。すなわち、間引きした画素値の合計値の偏りは、位相をずらした際に、ひとつの位相の時だけ値が突出しやすいため、「ばらつき度合い」が評価できれば良い。例えば、ばらつき度合いを評価するには、分散値以外に次の評価関数が考えられる。
(1) 間引きした画素値の合計値の最大値と最小値の差分
(2) 間引きした画素値の合計値の最大値と2番目に大きな値との差分、もしくは、最小値と2番目に小さな値との差分のどちらか
(3) 間引きした画素値の合計値によるヒストグラムを作成した時の、前後の順番の差分の最大値
また、上記の(1)、(2)、(3)の評価関数は絶対的な差分値であるが、これらの差分値と画素値、もしくは画素値や変換値の総和等との相対的な比率も評価関数として用いることができる。また、量子化値は2値化を例にして説明したが、これには限らない。また、本実施形態では、量子化後の情報をプリンタ103に送信しているが、以上説明した多重化処理及び量子化処理をプリンタ103が実行するようにしても構わない。すなわち、付加情報分離装置106が行うものとして説明した処理の一部若しくは全部をプリンタ103に行わせるようにしても構わない。
このように本実施形態によれば、画像をM画素×N画素よりなるブロック単位で量子化条件を変更し、該量子化条件に従って画像を量子化することにより画像に対して所定の情報を埋め込むことができる。その為、例えば直交変換をして情報を埋め込む方法に比べて、画質劣化を抑制し、かつ高速に、かつ埋め込まれた情報が精度よく抽出できるように画像に対して情報を埋め込むことができる。
ここで、以上説明した付加情報の多重化方法を用いて、「数秒間の音声情報である付加情報」を印刷画像(画像情報)に多重化することを考える。数秒間の音声情報を、音声に特化した圧縮率の高い符号化方式で符号化したとしても、その情報量は数キロバイト〜十数キロバイトにもなり、これだけの情報量の情報を画像上に多重化する場合、画像の一部領域だけに多重化するのでは不足で、画像上の複数箇所に多重化する必要がある。
そこで、このような付加情報を印刷画像上の複数箇所に多重化してから該印刷画像をプリンタ103を用いて印刷することで得られる印刷物を考える。以下では一例として、印刷物の中央部及び該印刷物の4隅(印刷画像の中央部及び該印刷画像の4隅)のそれぞれに付加情報が多重化されているものとする。
このような印刷物から付加情報を抽出するためには、先ず、この印刷物をカメラ付携帯端末104を用いて撮像して該印刷物の撮像画像を取得する必要がある。そのためには、ユーザはカメラ付携帯端末104を「印刷物との距離を短く設定した接写モード又は超近距離モード」に設定し且つ撮像部105の撮像視界の中央部で合焦するように設定してから、印刷物全体が一度に撮像できるような距離で印刷物を撮像する。しかし、撮像部105と印刷物との間の距離が近い為に、中央部に合焦させてしまうと、像面湾曲収差により印刷物端部に焦点が合わなくなってしまい、結果として、撮像画像中の印刷物の端部がぼけてしまう。印刷物の端部がぼけた撮像画像からは「印刷物の4隅(印刷画像の4隅)に多重化した付加情報」を抽出することが困難となる。そこで、中央部で合焦した撮像画像を1枚取得した後に、印刷物の4隅のそれぞれに合焦させて撮像することで、それぞれの隅で合焦した撮像画像(4枚の撮像画像)を取得する。対象となる箇所に合焦させる方法には様々な方法がある。例えば、カメラ付携帯端末104を移動させずに、カメラ付携帯端末104側の設定でフォーカス位置を移動させることで、任意の箇所に合焦させるようにしても構わないし、カメラ付携帯端末104を移動させてそれぞれの箇所に合焦させても構わない。ここまでの5回の撮像により得られた5枚の撮像画像は何れも、付加情報を多重化した箇所に合焦した撮像画像である(=付加情報を多重化した箇所の画質は良好である)から、それぞれの撮像画像から良好に付加情報を抽出することができる。そして、抽出したそれぞれの付加情報を統合すれば、印刷物全体に多重化した付加情報を得ることができる。
しかし、このような付加情報の抽出を可能にする印刷物は、「付加情報を多重化した箇所に合焦可能である」ような印刷物であることが必須となる。例えば、印刷物に印刷されている印刷画像が、図15(a)に示すような、山々の遠景1503を背景にして正面に2名の人物1501,1502が写っている画像であるとする。一般にこのような画像では、2名の人物1501,1502にピントが合っており、遠景1503にはピントがあっていないため、図15(a)の画像は、中央部にはピントが合っており、その周辺部にはピントが合っていない画像となっている。このような画像の中央部及び4隅に付加情報を多重化した場合、中央部はピントが合っているため、該中央部に多重化した付加情報は良好に抽出することができる。しかし、4隅ではピントがあっておらず、ぼけた状態となっており、十分なエッジ量のエッジが存在しない。十分なエッジ量のエッジが存在しない領域を撮像すべく該領域に合焦しようとしても、例えばコントラストAF(オートフォーカス)を用いても、良好な合焦ができない。
そこで本実施形態では、印刷画像において付加情報を多重化した箇所のうち、エッジ量が不十分の箇所(対象箇所)があれば、該対象箇所に十分なエッジ量を有する画像情報を多重化する。「十分なエッジ量を有する画像情報」に適用可能なものについては様々なものが考えられる。例えば、周囲とは異なる色を有する画像や文字であっても良いし、エッジ線が周囲と比べて際だつような画像/文字であっても良い。これにより、該対象箇所に合焦が可能となるため、該対象箇所に多重化した付加情報の抽出を可能にする。
合成制御部201及び合成部202が行う処理について、同処理のフローチャートを示す図16を用いて説明する。図16では、印刷画像の少なくとも4隅の領域(例えば4隅のそれぞれについて、該隅の位置から規定距離以内の領域)に対して多重化部200が付加情報を多重化したものとする。しかし、印刷画像上の如何なる箇所に付加情報を多重化したとしても、その多重化した箇所が既知であれば、該既知の箇所を以下の4隅の領域として扱って図16のフローチャートに従った処理を行えばよい。
<ステップS1601>
合成制御部201は、印刷画像の4隅の領域のそれぞれに対して周知のエッジ検出フィルタを施すことで、該それぞれの領域からエッジを検出する。例えば、印刷画像を複数の矩形領域(付加情報を多重化した領域のサイズよりも大きい矩形領域)に分割した場合の左上隅の矩形領域、左下隅の矩形領域、右上隅の矩形領域、右下隅の矩形領域、のそれぞれからエッジを検出する。
<ステップS1602>
合成制御部201は、印刷画像の4隅の領域のそれぞれについて、該領域内のエッジの量(エッジ量)を求める。着目領域のエッジ量は、例えば、着目領域内のエッジを構成する各画素位置について、該画素位置におけるx方向の微分値の二乗値とy方向の微分値の二乗値との和の平方を求め、その合計値としても良い。また、着目領域のエッジ量を、着目領域内のエッジを構成する各画素位置について、該画素位置におけるx方向の微分値の絶対値とy方向の微分値の絶対値との和を求め、その合計値としても良い。なお、着目領域内のエッジ量の定義はこれに限るものではなく、着目領域内の高周波成分の量をエッジ量としても良い。また、領域内の合計値(もしくは領域内画素数で除算した平均値)ではなく、領域内の更に局所的なエッジ量を評価対象にしても良い。例えば隣接画素間のコントラスト量や、隣接画素間のエッジ傾斜等を評価する評価関数でも良い。そして合成制御部201は、4隅の領域のそれぞれのエッジ量のうち最大のエッジ量(エッジ量最大値)及び最小のエッジ量(エッジ量最小値)を特定する。
<ステップS1603>
合成制御部201は、エッジ量最大値が閾値以上であるか否かを判断する。この判断の結果、エッジ量最大値が閾値以上であれば、図16のフローチャートに従った処理は終了する。すなわち、合成部202は、多重化部200による多重化処理済みの印刷画像をそのままプリンタ103に対して送出する。一方、エッジ量最大値が閾値未満であれば、処理はステップS1604に進む。
<ステップS1604>
合成制御部201は、印刷画像の4隅の領域のうちエッジ量最小値を求めた領域に多重化するための人工画像を取得して合成部202に対して出力する。人工画像は、合成制御部201が生成してから出力しても良いし、予め生成されてROM312に格納されたものを合成制御部201が読み出して出力しても良い。人工画像としては、合成することによりエッジ量が閾値以上になる画像情報(文字及び/又は画像を表す情報)であれば、如何なる画像情報を用いても良い。
そして合成部202は、合成制御部201から受けた人工画像を、エッジ量最小値を求めた領域に多重化する。人工画像の多重化は、単に人工画像を領域に合成しても良いし、その多重化方法は特定の方法に限らない。そして合成部202は、人工画像を合成した印刷画像をプリンタ103に対して出力する。
図15(a)の印刷画像において、左上隅の領域、左下隅の領域、右上隅の領域、右下隅の領域の何れのエッジ量も閾値未満で且つエッジ量最小値を求めた領域が右上隅の領域である場合には、図15(b)に示す如く、右上隅の領域に人工画像が多重化される。図15(b)では、「PHOTO」という文字列の画像が人工画像として、印刷画像の右上隅の領域に多重化されている。図15(a)の印刷画像の場合、左上隅の領域、左下隅の領域、右下隅の領域、何れにもエッジが存在するものの、右上隅の領域にはエッジが存在しないので、右上隅の領域のエッジ量がエッジ量最小値となる。そのため、図15(b)に示す如く、右上隅の領域に人工画像が多重化される。
また、図15(c)では、左上隅、左下隅、右上隅、右下隅の何れの領域もエッジ量が閾値未満であり、左下隅の領域、右上隅の領域、右下隅の領域、にはエッジが存在するものの、左上隅の領域にはエッジが存在しない。そのため、図15(c)に示す如く、左上隅の領域に人工画像が多重化されることになる。
また、図15(d)では、左上隅、左下隅、右上隅、右下隅の何れの領域でもエッジが存在しており、左上隅、左下隅、右上隅、右下隅のそれぞれの領域のエッジ量のうちエッジ量最大値が閾値以上であるから、人工画像は多重化していない。
本実施形態では上記のように、1隅でもエッジ量が大きい場合には、その領域に合焦するための撮像部105のパラメータを他の領域にも用いることで他の3隅も合焦することが可能な為に、人工画像の合成はしない。
なお、図15の例で用いた「PHOTO」という人工画像の色を、該人工画像を多重化する領域である被合成領域(背景となる領域)の色に合わせて動的に変えることも有効である。また、「PHOTO」という人工画像の色を変えずに被合成領域に合成した際に生じる色エッジが4隅の中でどの位置が最も大きくなるかを判断し、色エッジが最も大きい隅に人工画像を合成することも有効な方法である。また、本実施形態では、人工画像に「PHOTO」という単語を合成しているが、これは意味のある単語に限らず、ロゴマークでも記号でも図形でも良い。また、人工画像を合成することによりエッジ量を増やす場合に限らず、画像のシャープネスを増やすための画像処理を行っても良い。
[第2の実施形態]
第1の実施形態では、印刷画像において付加情報を多重化する領域のエッジ量に基づいて人工画像を多重化するか否かを判断していた。本実施形態では、撮像部105に搭載されているAF機能の種類に応じて、人工画像を多重化するか否かを判断する。
本実施形態に係る付加情報多重化装置102の構成例について、図17のブロック図を用いて説明する。図17において、図2に示した機能部と同じ機能部には同じ参照番号を付しており、該機能部に係る説明は省略する。
撮像デバイス情報1702は、撮像部105に搭載されているAF機能の種類を表す情報である。一般的には、撮像デバイス情報1702は、プリンタ103による印刷物の撮像を行う撮像装置として想定される撮像装置に搭載されているAF機能の種類を表す情報である。
合成制御部1701は、撮像デバイス情報1702を参照して、撮像部105に搭載されているAF機能の種類を特定し、該特定したAF機能の種類に応じて、合成部202への人工画像の出力の可否を決定する。より詳しくは、撮像デバイス情報1702が「撮像部105に位相差AFが搭載されている」ことを示す場合には、合成制御部1701は、人工画像の多重化は行わないと判断し、人工画像を取得して合成部202に出力することは行わない。一方、撮像デバイス情報1702が「撮像部105にコントラストAFが搭載されている」ことを示す場合には、合成制御部1701は、人工画像の多重化は行うと判断し、人工画像を取得して合成部202に出力する。
人工画像を多重化する位置については、第1の実施形態のように、エッジ量最小値の箇所に多重化しても良いし、付加情報を多重化する全ての箇所に人工画像を多重化しても良い。これは以降の実施形態でも(特に指定がない限りは)同様である。
なお、撮像部105に搭載されているAF機能の種類に応じて人工画像の多重化の可否を決定する代わりに、撮像部105のレンズ特性に応じて人工画像の多重化の可否を決定するようにしても構わない。
[第3の実施形態]
第1の実施形態では、印刷画像において付加情報を多重化する領域のエッジ量に基づいて人工画像を多重化するか否かを判断していた。本実施形態では、付加情報多重化装置102に接続されているプリンタ(図1ではプリンタ103)が不可視の付加情報多重化を実現する能力があるか否かに応じて、人工画像を多重化するか否かを判断する。
本実施形態に係る付加情報多重化装置102の構成例について、図18のブロック図を用いて説明する。図18において、図2に示した機能部と同じ機能部には同じ参照番号を付しており、該機能部に係る説明は省略する。
接続プリンタ情報1802は、付加情報多重化装置102に接続されているプリンタ(図1ではプリンタ103)が不可視の付加情報多重化を実現する能力があるか否かを示す情報である。
合成制御部1801は、接続プリンタ情報1802を参照して、付加情報多重化装置102に接続されているプリンタ(図1ではプリンタ103)が不可視の付加情報多重化を実現する能力があるか否かを特定する。そして、付加情報多重化装置102に接続されているプリンタ(図1ではプリンタ103)が不可視の付加情報多重化を実現する能力がない場合には、合成制御部1801は、可視コード(例えば2次元バーコード等)を合成部202に対して出力する。合成部202は、該可視コードを印刷画像上に多重化する。可視コードが多重化された印刷画像の一例を図19に示す。図19では、印刷画像の右上隅の位置に可視コードとしての2次元バーコードが多重化されている。
一方、付加情報多重化装置102に接続されているプリンタ(図1ではプリンタ103)が不可視の付加情報多重化を実現する能力がある場合には、合成制御部1801は、可視コード及び/又は不可視コードを合成部202に対して出力する。合成部202は、合成制御部1801からのコードを印刷画像上に多重化する。
不可視の付加情報多重化を実現する能力があるプリンタは、(1)不可視多重化のみ、(2)不可視多重化+可視多重化、(3)可視多重化のみ、の3種の情報多重化が可能であるから、合成制御部1801は何れかの情報多重化を合成部202に指示する。(2)の情報多重化の場合には、付加情報の一部の情報を不可視多重化、残りの情報を可視多重化することも有効である。(3)の場合には、付加情報の一部若しくは全部を可視コードにして多重化する。
本実施形態においても、合成部202による情報の多重化の位置については、第1の実施形態のように、エッジ量最小値の箇所に多重化しても良いし、付加情報を多重化する全ての箇所に多重化しても良い。
[第4の実施形態]
第1の実施形態では、印刷画像において付加情報を多重化する領域のエッジ量に基づいて人工画像を多重化するか否かを判断していた。本実施形態では、ユーザ指示に応じて、人工画像を多重化するか否かを判断する。
本実施形態に係る付加情報多重化装置102の構成例について、図20のブロック図を用いて説明する。図20において、図2に示した機能部と同じ機能部には同じ参照番号を付しており、該機能部に係る説明は省略する。
ユーザが付加情報多重化装置102の不図示の操作部を操作してアプリケーションの起動指示を入力すると、CPU311は、不図示の表示画面に図21に例示するGUI(グラフィカルユーザインターフェース)を表示する。GUIのウィンドウ2101内に設けられた領域2102内には、ユーザが指示した印刷画像が表示されている。ボタン2103は、領域2102内に表示されている印刷画像上に人工画像を合成することを指示するためのボタンであり、ボタン2104は、領域2102内に表示されている印刷画像上に人工画像を合成しないことを指示するためのボタンである。ユーザが不図示の操作部を操作してボタン2103を指示すると、合成制御部2001は人工画像2105を取得して合成部202に送出し、合成部202は、印刷画像上の適当な位置に人工画像2105を多重化する。その結果が領域2102内に表示される。人工画像2105の多重化位置については、予め指定された位置であっても良いし、ユーザが不図示の操作部を用いて指示した位置であっても良いし、第1の実施形態のように決定した位置であっても良い。また、人工画像2105は多重化後、ユーザが不図示の操作部を操作して移動させても良い。また、ユーザが不図示の操作部を操作して、人工画像2105の色や大きさなどを指定したり変更したりしても良い。
そしてユーザが不図示の操作部を操作して、印刷指示を入力すると、プリンタ103は、このGUIにより編集操作を受けた(人工画像の多重化を行っていないケースをも含む)印刷画像を印刷する。
この人工画像の合成有無指示によって、例えばユーザは印刷物を他者に渡す時には不可視多重化印刷物であることをあえて明示するために、人工画像2105の合成を指示するようにすることも可能である。このように、本実施形態では、多重化を選択可能な指示構成を提供する。
[第5の実施形態]
第1の実施形態では、印刷画像において付加情報を多重化する領域のエッジ量に基づいて人工画像を多重化するか否かを判断していた。本実施形態では、付加情報の情報量に応じて、人工画像を多重化するか否かを判断する。
本実施形態に係る付加情報多重化装置102の構成例について、図22のブロック図を用いて説明する。図22において、図2に示した機能部と同じ機能部には同じ参照番号を付しており、該機能部に係る説明は省略する。
第1の実施形態でも説明したように、比較的大きい情報量の情報を画像上に多重化する場合、画像の一部領域だけに多重化するのでは不足で、画像上の複数箇所に多重化する必要がある。一方、文字情報や写真を撮影した日付情報、撮影場所情報等の情報であれば、その情報量は比較的少ないので、画像の一部領域のみ(例えば印刷画像の中央部)に多重化しても十分であるし、もちろん画像上の複数箇所に多重化しても構わない。何れにせよ、印刷画像に多重化された「情報量が比較的小さい付加情報」を抽出する場合には、印刷画像全体を端部まで精度良く解析する必要はなく、一部の領域の解析で十分である。
然るに、本実施形態では、合成制御部2201は、付加情報の情報量が閾値以上であるか否かを判断し、閾値以上であれば、人工画像を取得して合成部202に対して送出し、閾値未満であれば、人工画像を取得して合成部202に送出することは行わない。
[第6の実施形態]
第1の実施形態では、印刷画像において付加情報を多重化する領域のエッジ量に基づいて人工画像を多重化するか否かを判断していた。本実施形態では、プリンタ103の印刷設定(紙などの記録媒体に係る印刷設定)に応じて、人工画像を多重化するか否かを判断する。
本実施形態に係る付加情報多重化装置102の構成例について、図23のブロック図を用いて説明する。図23において、図2に示した機能部と同じ機能部には同じ参照番号を付しており、該機能部に係る説明は省略する。
印刷設定情報2302は、プリンタ103の印刷設定を表す情報で、この印刷設定情報2302には、プリンタ103が使用する記録媒体のサイズ、種類など、記録媒体に係る情報が含まれている。
合成制御部2301は、印刷設定情報2302を参照して、プリンタ103が使用する記録媒体のサイズを特定する。そして合成制御部2301は、記録媒体のサイズが規定サイズ(例えばA5サイズ)以上であれば、人工画像を取得して合成部202に送出し、規定サイズ未満であれば、人工画像を取得して合成部202に送出することは行わない。なお、記録媒体のサイズの代わりに、記録媒体の種類に応じて、人工画像を取得して合成部202に送出するか否か、の判断を行うようにしても構わない。
なお、現在の写真印刷は紙のふちに余白が見えない所謂ふちなし印刷が主流である為、人工画像の合成位置は自然画像が印刷されている領域と同一領域上であることが好ましい。
また、ユーザがカメラ付携帯端末104を把持して印刷物全体を撮影しようと構えた場合、レンズ中央部と印刷物中央部が対応する。その為、印刷物中央部からの距離が離れた部分の撮像画像ほどザイデル収差の影響を受ける。印刷物が矩形である場合、人工画像の合成位置は中央部から距離が離れた4隅のうちの何れかであることが好ましい。
なお、以上説明した各実施形態の一部若しくは全部は適宜組み合わせて使用しても構わない。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
200:多重化部 201:合成制御部 202:合成部

Claims (15)

  1. 画像上の複数箇所に情報を多重化する第1の多重化手段と、
    前記複数箇所のうちエッジ量が閾値未満となる箇所に、エッジ量が閾値以上となる画像情報を多重化する第2の多重化手段と
    を備えることを特徴とする情報処理装置。
  2. 前記第2の多重化手段は、前記複数箇所のそれぞれのエッジ量のうち最大のエッジ量が閾値未満であれば、前記複数箇所のそれぞれのエッジ量のうち最小のエッジ量を求めた箇所に、前記画像情報を多重化することを特徴とする請求項1に記載の情報処理装置。
  3. 前記第2の多重化手段は、前記複数箇所のそれぞれのエッジ量のうち最大のエッジ量が閾値以上であれば前記画像情報の多重化は行わないことを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記第2の多重化手段は、前記第1の多重化手段により前記情報が多重化され且つ前記第2の多重化手段により前記画像情報が多重化された画像が印刷された印刷物を撮像するデバイスに搭載されているAF機能の種類を示す撮像デバイス情報に応じて前記画像情報の多重化の可否を制御することを特徴とする請求項1に記載の情報処理装置。
  5. 前記第2の多重化手段は、前記撮像デバイス情報が前記デバイスにコントラストAFが搭載されていることを示す場合には、前記画像情報の多重化を行うことを特徴とする請求項4に記載の情報処理装置。
  6. 前記第2の多重化手段は、前記撮像デバイス情報が前記デバイスに位相差AFが搭載されていることを示す場合には、前記画像情報の多重化は行わないことを特徴とする請求項4又は5に記載の情報処理装置。
  7. 前記第2の多重化手段は、前記第1の多重化手段により前記情報が多重化され且つ前記第2の多重化手段により前記画像情報が多重化された画像を印刷する印刷装置が不可視の情報を多重化する能力がある場合には、前記情報を、可視の多重化と不可視の多重化とを用いて多重化、可視の多重化、不可視の多重化、の何れかの多重化でもって、前記画像情報として多重化することを特徴とする請求項1に記載の情報処理装置。
  8. 前記第2の多重化手段は、前記印刷装置が不可視の情報を多重化する能力がない場合には、可視の情報の多重化を行うことを特徴とする請求項7に記載の情報処理装置。
  9. 前記第2の多重化手段は、前記情報の情報量が閾値以上であれば、前記画像情報の多重化を行うことを特徴とする請求項1に記載の情報処理装置。
  10. 前記第2の多重化手段は、前記情報量が閾値未満であれば、前記画像情報の多重化は行わないことを特徴とする請求項9に記載の情報処理装置。
  11. 前記第2の多重化手段を選択可能な指示手段を有することを特徴とする請求項1乃至10の何れか1項に記載の情報処理装置。
  12. 更に、
    前記第1の多重化手段により前記情報が多重化され且つ前記第2の多重化手段により前記画像情報が多重化された画像を印刷装置に対して出力する手段を備えることを特徴とする請求項1乃至11の何れか1項に記載の情報処理装置。
  13. 請求項1乃至12の何れか1項に記載の情報処理装置の前記第1の多重化手段により前記情報が多重化され且つ前記第2の多重化手段により前記画像情報が多重化された画像が印刷された印刷物において、前記複数箇所に対応するそれぞれの領域の撮像画像を取得する取得手段と、
    前記撮像画像から前記情報を抽出する抽出手段と
    を備えることを特徴とする撮像装置。
  14. 情報処理装置が行う情報処理方法であって、
    前記情報処理装置の第1の多重化手段が、画像上の複数箇所に情報を多重化する第1の多重化工程と、
    前記情報処理装置の第2の多重化手段が、前記複数箇所のうちエッジ量が閾値未満となる箇所に、エッジ量が閾値以上となる画像情報を多重化する第2の多重化工程と
    を備えることを特徴とする情報処理方法。
  15. コンピュータを、請求項1乃至12の何れか1項に記載の情報処理装置の各手段として機能させるためのコンピュータプログラム。
JP2015198926A 2015-10-06 2015-10-06 情報処理装置、情報処理方法、及びコンピュータプログラム Pending JP2017073649A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015198926A JP2017073649A (ja) 2015-10-06 2015-10-06 情報処理装置、情報処理方法、及びコンピュータプログラム
US15/270,278 US10033904B2 (en) 2015-10-06 2016-09-20 Information processing apparatus for multiplexing information in an image, information processing method, and storage medium storing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015198926A JP2017073649A (ja) 2015-10-06 2015-10-06 情報処理装置、情報処理方法、及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2017073649A true JP2017073649A (ja) 2017-04-13
JP2017073649A5 JP2017073649A5 (ja) 2018-11-15

Family

ID=58537940

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015198926A Pending JP2017073649A (ja) 2015-10-06 2015-10-06 情報処理装置、情報処理方法、及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP2017073649A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111028308A (zh) * 2019-11-19 2020-04-17 珠海涵辰科技有限公司 一种图像中信息的隐写及读取方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001320569A (ja) * 2000-05-02 2001-11-16 Canon Inc 画像記録装置および方法及び記憶媒体
JP2002262060A (ja) * 2001-03-02 2002-09-13 Ricoh Co Ltd 画像処理方法及び画像処理装置及び画像処理プログラム並びに記録媒体
JP2003134330A (ja) * 2001-10-30 2003-05-09 Sony Corp 電子透かし埋め込み処理装置、および電子透かし埋め込み処理方法、並びにコンピュータ・プログラム
JP2008283649A (ja) * 2007-05-14 2008-11-20 Fujitsu Ltd 画像処理方法、画像領域検出方法、画像処理プログラム、画像領域検出プログラム、画像処理装置、および、画像領域検出装置
JP2010258585A (ja) * 2009-04-22 2010-11-11 Hitachi Ins Software Ltd 電子透かし埋め込み装置及び方法、そのプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001320569A (ja) * 2000-05-02 2001-11-16 Canon Inc 画像記録装置および方法及び記憶媒体
JP2002262060A (ja) * 2001-03-02 2002-09-13 Ricoh Co Ltd 画像処理方法及び画像処理装置及び画像処理プログラム並びに記録媒体
JP2003134330A (ja) * 2001-10-30 2003-05-09 Sony Corp 電子透かし埋め込み処理装置、および電子透かし埋め込み処理方法、並びにコンピュータ・プログラム
JP2008283649A (ja) * 2007-05-14 2008-11-20 Fujitsu Ltd 画像処理方法、画像領域検出方法、画像処理プログラム、画像領域検出プログラム、画像処理装置、および、画像領域検出装置
JP2010258585A (ja) * 2009-04-22 2010-11-11 Hitachi Ins Software Ltd 電子透かし埋め込み装置及び方法、そのプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111028308A (zh) * 2019-11-19 2020-04-17 珠海涵辰科技有限公司 一种图像中信息的隐写及读取方法
CN111028308B (zh) * 2019-11-19 2022-11-04 珠海涵辰科技有限公司 一种图像中信息的隐写及读取方法

Similar Documents

Publication Publication Date Title
JP6322099B2 (ja) 画像処理装置、及び、画像処理方法
JP6386841B2 (ja) 画像処理装置、プログラム、画像処理システム、及び、画像処理方法
JP6397284B2 (ja) 画像処理装置、画像処理方法及びプログラム
US10992837B2 (en) Information processing apparatus, control method thereof, and storage medium
JP2019009733A (ja) 情報処理装置、情報処理方法およびプログラム
JP6643854B2 (ja) 情報処理装置、情報処理方法、及びコンピュータプログラム
JP6635741B2 (ja) 画像処理装置及び制御方法
US10033904B2 (en) Information processing apparatus for multiplexing information in an image, information processing method, and storage medium storing program
US20170099411A1 (en) Information processing apparatus and information processing method
JP2017073649A (ja) 情報処理装置、情報処理方法、及びコンピュータプログラム
JP6952499B2 (ja) 情報処理装置及びプログラム
JP6976734B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP6909055B2 (ja) 情報処理装置、制御方法及びプログラム
JP2005217618A (ja) 画像処理方法、画像処理装置及び画像処理プログラム
JP4271648B2 (ja) 画像合成装置、撮像手段、およびプログラム
JP7458766B2 (ja) 情報処理装置、情報処理装置の制御方法、プログラムおよび記憶媒体
JP7182858B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP6664179B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP7463087B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP7438752B2 (ja) 情報処理装置、情報処理装置の制御方法、記憶媒体およびプログラム
JP6577815B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP2021016108A (ja) 画像処理装置、画像処理方法およびプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180928

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180928

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200217

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200403

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200612

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200717