情報埋込コード、情報埋込コード生成方法、および情報埋込コード生成装置
【課題】 印刷またはプリンタ出力することによって、印刷媒体に情報を保存し、その情報を識別することが容易であり、さらに情報を埋め込んでも画質を落とさない情報埋込コードを提供する。
【解決手段】 絵、文字、記号の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号後によって表される情報を埋め込む情報埋込コードであって、前記情報埋込コードは、所定の方法に従って算出した符号語間の最大類似度が、所定の閾値以下であることを特徴とする情報埋込コードを提供する。
【解決手段】 絵、文字、記号の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号後によって表される情報を埋め込む情報埋込コードであって、前記情報埋込コードは、所定の方法に従って算出した符号語間の最大類似度が、所定の閾値以下であることを特徴とする情報埋込コードを提供する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷媒体に情報を埋め込んで印刷する情報埋込コード、情報埋込コード生成方法、および情報埋込コード生成装置に関する。
【背景技術】
【0002】
印刷された紙上に情報をのせる技術として、1932年に、スーパーマーケットのチェッキングを安価に行うため、バーコードがハーバード大学により提案された。1980年後半に入ると、宝石や半導体、薬剤、機械部品などの特殊分野において、より多くの情報をより小さく印字したいという要求がでてきた。この要求に対応するため、1987年に、Code49の二次元コードがアメリカのインターメック社により発表された。その後、Code16K,DataMatrix(DataCode)およびMaxiCodeが開発され、続いてArrayTag,Code1などが開発された。また、日本でも、CPCodeやQRCodeなどが提案され、国際規格として認定された。
【0003】
しかし、二次元コードはバーコードから発展してきたコードであるため、バーコードの欠点を克服することは難しい。まず、すべての二次元コードでは、黒いセルを「1」、白いセルを「0」と定義しているため、情報の記述が冗長になるという問題が残されている。また、二次元コードおよびバーコードは共に、情報を紙上に記述する際、コードを記述するためのスペースが必要となる。このため、紙面のデザインを損なうおそれがある。また、簡単に複写ができるので、セキュリティ上の問題もある。
【0004】
金融、保険関係業界では、紙でより多くのデータを記述でき、かつ小さい印字の要望が生じてきている。特に、金融関係では、データを出力して紙として残すという法律上の義務付けがあり、印刷した後、紙上で印刷された内容はコンピュータでは復元不可能であるため、データベース上のデータをハードディスク上に保存する必要が生じる。もし、データを紙で登録することができれば、紙と情報が一体化し、ハードディスクへの保存の必要がなくなるので、安全性と利便性の両メリットを図ることができる。従って、前記したように金融関係などの需要に対して、大量のデータを紙上に登録する方法が望まれている。
【0005】
ここで、従来例として、2進法による符号の最大類似度を算出する。
図16は、従来例における2進法によって構成した符号の例を示す図であり、(a)は、本従来例における符号語の生成方法を示す図、(b)は、本従来例におけるビット番号の付し方を示した図である。
図16の(a)に示すように、本従来例における符号は、2進法による符号語を4つ重ねることによって生成される。図16の(a)では、例として”2”を4ビットの2進法で表現した符号語を示す。そして、図16の(a)に示すように、紙汚れなどに対する対策として、この符号語を4つ重ねることによって、本従来例では符号語を生成することとする。
図16の(b)に示すように、本従来例における符号語ごとに付すコードナンバkの符号語のビット番号は、左上から右下にかけて一連の番号として付すこととする。
【0006】
図17は、図16に示した方法によって生成した符号語を用いて構成した符号の例を示す図である。
ここで、Dkは符号語であり、符号語を形成する各要素をビットとする。そして、符号語を形成するビット数を符号長とよぶ。
符号語は、コード0(D0)からコードF(DF)までの16種類がある。例えば、コード0(D0)は、すべて”0”によって、符号語が構成されている。コード1(D1)は、B1,0,B1,4、B1,8,B1,12が”1”であり、その他のビットは、”0”で符号語が構成されている。コード2(D2)は、B2,1,B2,5,B2,9,B2,13が”1”であり、その他のビットは、”0”で符号語が構成されている。以下、コード3(D3)から、コード15(D15)まで、図17に示すように符号語を構成している。
なお、コード0(D0)とコードF(DF)、コード1(D1)とコードE(DE)、コード2(D2)とコードD(DD)、コード3(D3)とコードC(DC)、コード4(D4)とコードB(DB)、コード5(D5)とコードA(DA)、コード6(D6)とコード9(D9)、コード7(D7)とコード8(D8)は、互いに”0”と”1”を反転させた関係になっている。
【0007】
ここで、類似度の概念を導入する。まず、nビットのビット列である符号語をSk=(Bk,1,Bk,2,・・・、Bk,n-1)としたとき、式1のように符号語間のビットBk,iごとの排他的論理和をとる。ここで、kはコードナンバであり、nは符号長であり、mは符号語数である。
【0008】
【数3】
【0009】
ここで、i,j=0,1,2,・・・,n−1, k,l=0,1,2,・・・,m−1とする。
【0010】
そして、式2のように各ビットごとに関して、式1の結果を加算し、これを符号SkとSl間の距離とする。
【0011】
【数4】
【0012】
そして、すべての符号語の組み合わせに関して、式1、式2による距離を算出する。さらに、このようにして算出した符号中におけるすべての符号語間の距離の中で、最も小さい距離を算出する(式3)。
【0013】
【数5】
【0014】
【数6】
【0015】
そして、式3で得られた値を、式4に代入する。このようにして、得られた結果を最大類似度とする。
【0016】
最大類似度が大きければ、その符号間の類似度が高く、識別が困難となる。逆に、最大類似度が小さければ、その符号間の類似度は低く、識別が容易となる。
【0017】
図18は、本従来例における符号の最大類似度の算出方法を示した図である。例として、コード2(D2)とコード3(D3)の最大類似度の算出を行う。
(1)まず、式1に従って各ビット間の排他的論理和を算出する。
(2)次に、式1の計算結果を、各ビットごとに加算する(請求項における距離)。
この結果、本従来例では、コード2(D2)と、コード3(D3)間の距離は、4となる。
【0018】
図19は、このようにして算出した図17に示す各符号に関して、すべての組み合わせの距離を示した図である。これらの距離から、最も小さな値を算出し、式4に従って最大類似度を算出する。これにより、本従来例における最大類似度は、3/4となる。
【0019】
また、ドキュメントデータの背景に、ドキュメントデータ中の識別情報を埋め込むことにより、ドキュメントデータが改ざんされているか否かを検証可能な電子透かし技術が開示されている(例えば、特許文献1参照)。
【0020】
また、個人身分証明のような印刷物の顔写真背景に対して個人固有の印刷スクリーン形状からなるIDパターン情報を作成し、登録ができる技術が開示されている(例えば、特許文献2参照)。
【特許文献1】特開2004−7442号公報(請求項1)
【特許文献2】特開2000−79782号公報(請求項1)
【発明の開示】
【発明が解決しようとする課題】
【0021】
しかしながら、従来のコードは、符号語間の識別度が考慮されておらず、コードの読み取りに際し、ノイズなどの影響を受けた誤認識が多い、といった問題があった。
【0022】
また、前記した特許文献1で用いられている電子透かし技術は、画質を低くすれば印刷物に対応可能であるが、高画質なままでは印刷に不向きである、といった問題があった。
【0023】
さらに、前記した特許文献2で用いられている技術は、情報を埋めこむための、特定の領域を必要とするため、画像中に自然な形で情報を埋め込むことが不可能である、といった問題があった。
【0024】
このような背景に鑑みて本発明がなされたのであり、本発明は、符号語間の識別度を低くすることによって、ノイズなどの影響に耐性がある情報埋込コードを提供することを第1の目的とする。また、情報を埋め込んでも画質を落とさない情報埋込コードを提供することを第2の目的とする。さらに、画像中に自然な形で情報を埋め込むことが可能な情報埋込コードを提供することを第3の目的とする。
【課題を解決するための手段】
【0025】
前記課題を解決するため、請求項1に係る発明は、絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって表される情報を埋め込む情報埋込コードであって、前記情報埋込コードは、所定の方法に従って算出した符号語間の最大類似度が、1/2以下であることを特徴とする情報埋込コードである。
【0026】
また、請求項2に係る発明は、絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって表される情報を埋め込む情報埋込コードであって、前記情報埋込コードは、所定の方法に従って算出した符号語間の最大類似度が、1/4以下であることを特徴とする情報埋込コードである。
【0027】
このような構成とすることで、符号語間の類似度を低くし、識別度を高めることで、符号語間の類似度が1/2であれば、識別度を高めることができ、紙汚れなどによるノイズの影響に対する耐性を得ることが可能である。また、極小の網点を情報媒体として用いるため、情報を埋め込んでも画質を落とさず、さらに肉眼で識別不可能なため、画像中に自然な形で情報を埋め込むことが可能である。
【0028】
請求項3に係る発明は、前記最大類似度が、以下に記載する式Amaxによって表されることを特徴とする請求項1、または請求項2のいずれか一項に記載の情報埋込コードである。
情報埋込コードにおいて、Skを符号語、nを符号長、mを符号語数としたとき、前記最大類似度Amaxは、
【数7】
【数8】
と表される。
ここで、d(Sk,Sl)は、符号語SkとSlとの間の距離であり、k,l=0,1,2,・・・,m−1とする。
【0029】
このようにすることで、最大類似度を定量的に算出することが可能となる。
【0030】
また、請求項4に係る発明は、前記網点の配列が、網点中のすべてのドット同士が連接している集合体網点、および/または、網点中のドットの内、少なくとも1つが分離している分離体網点からなることを特徴とする請求項1から請求項3のいずれか一項に記載の情報埋込コードである。
【0031】
このような構成とすることで、対象となる画像に対して、少なくとも1種類以上の階調を表現することが可能となり、さらに、網点の外形情報を利用することにより、網点の位置を容易に特定することが可能となる。
【0032】
さらに、請求項5に係る発明は、各符号語中における集中体網点、分離体網点の数が、すべて同一であること、を特徴とする請求項1から請求項4のいずれか一項に記載の情報埋込コードである。
【0033】
このような構成とすることで、パリティ検査符号の必要がなくなり、効率的な情報の記述が可能となる。
【0034】
請求項6に係る発明は、各符号語に対した網点の配列において、集合体網点と、分離体網点とを異なる変調方式の網点の組み合わせによって情報を表わすことを特徴とする請求項1から請求項5のいずれか1項に記載の情報埋込コードである。
【0035】
このような構成とすることで、異なる変調方式の網点の組み合わせにより、情報を記述することが可能となり、識別度の高い情報の表現が可能となる。
【0036】
請求項7に係る発明は、埋め込む対象である画像の階調度に応じて、網点中のドットの数を変更することを特徴とする請求項1から請求項5のいずれか一項に記載の情報埋込コードである。
【0037】
このような構成とすることで、画像中の任意の箇所に対して、情報を埋め込むことが可能となる。
【0038】
また、前記網点の配列は、第1の網点におけるドットが形成する図形の方向と、第2の網点におけるドットが形成する図形の方向とが異なることとしてもよい。
【0039】
また、前記網点の配列は、第1の網点におけるドットが形成する図形の形状と、第2の網点におけるドットが形成する図形の形状とが異なることしてもよい。
【0040】
また、前記網点の配列は、第1の網点におけるドットが形成する図形と、第2の網点におけるドットが形成する図形の大きさとが異なることとしてもよい。
【0041】
また、前記網点の配列は、第1の網点におけるドットが形成する図形と、第2の網点におけるドットが形成する図形との、網点中における位置が異なることとしてもよい。
【0042】
さらに、請求項8に係る発明は、絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって情報を埋め込む情報埋込コード生成方法であって、前記情報埋込コード生成方法は、符号語間の類似度の算出を行うステップ、この類似度が所定の閾値以下であるか否かの判定を行うステップ、前記類似度が所定の閾値以下であると判定された符号語に、情報を表すための幾何学的図形であるシンボルを対応させることによって情報埋込コードを生成するステップ、さらに階調度ごとのシンボルを対応させることによって階調度に応じた情報埋込コードを生成するステップ、情報を埋め込まれる対象である画像データを取得するステップ、取得した前記画像データの階調度を解析するステップ、画像に埋め込む情報を情報埋込コードに変換し、さらにこの情報埋込コードを階調度に応じて、画像に埋め込むステップ、を含んでいることを特徴とする情報埋込コード生成方法である。
【0043】
このような方法とすることで、符号語間の類似度を所定の閾値以下とし、識別度を高めることで、紙汚れなどによるノイズの影響に対する耐性を得ることが可能である。また、極小の網点を情報媒体として用いるため、情報を埋め込んでも画質を落とさず、さらに肉眼で識別不可能なため、画像中に自然な形で情報を埋め込むことが可能な情報埋込コードの生成が可能となる。
【0044】
また、請求項9に係る発明は、絵、文字、記号の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって情報を埋め込む情報埋込コード生成装置であって、前記情報埋込コード生成装置は、符号語間の類似度の算出を行い、この類似度が所定の閾値以下であるか否かの判定を行う類似度処理部と、前記類似度処理部において類似度が所定の閾値以下であると判定された符号語に、情報を表すための幾何学的図形であるシンボルを対応させることによって情報埋込コードを生成し、さらに階調度ごとのシンボルを対応させることによって階調度に応じた情報埋込コードを生成するシンボル部と、情報を埋め込まれる対象である画像データを取得する画像データ取得部と、取得した前記画像データの階調度を解析する階調度解析部と、画像に埋め込む情報を情報埋込コードに変換し、さらにこの情報埋込コードを階調度に応じて、画像に埋め込む情報埋込部と、を含んで構成されることを特徴とする情報埋込コード生成装置である。
【0045】
このような構成とすることで、符号語間の類似度を所定の閾値以下とし、識別度を高めることで、紙汚れなどによるノイズの影響に対する耐性を得ることが可能である。また、極小の網点を情報媒体として用いるため、情報を埋め込んでも画質を落とさず、さらに肉眼で識別不可能なため、画像中に自然な形で情報を埋め込むことが可能な情報埋込コードの生成が可能となる。
【発明の効果】
【0046】
本発明によれば、符号語間の類似度を低くすることによって、ノイズなどの影響に耐性があり、情報を埋め込んでも画質を落とさず、画像中に自然な形で情報を埋め込むことが可能である。
【発明を実施するための最良の形態】
【0047】
以下、図面を参照しつつ本実施形態を説明する。なお、本実施形態では、請求項における情報埋込コードを、ライン式スクリーンコードと記載する。
【0048】
まず、本実施形態で使用する各用語の定義を行う。
図1は、AMスクリーンとFMスクリーンの網点の例を示した図であり、(a)は、AMスクリーンの網点の例を示した図であり、(b)は、FMスクリーンの網点の例を示した図である。
ドット101とは、画素102において、色がついている部分であり、印刷における最小単位のことである。また、本実施形態では、網点とは、単位画像のこととする。AMスクリーンでは、図1(a)に示した網点の大小によって画像の濃淡を表し、FMスクリーンでは、図1(b)に示したドットの密度によって、画像の濃淡を表す。なお、画像の濃淡の度合いを階調度といい、網点1つをシンボルとよぶことがある。なお、本実施形態において、AMスクリーンとFMスクリーンは、異なる変調方式による網点の生成方法であるとする。
【0049】
図2は、本実施形態で使用される網点の例を示した図であり、(a)は、集合体網点の例を示した図であり、(b)は、分離帯網点の例を示した図である。
図2(a)に示すように、集合体網点とは一網点の中に、連接した複数ドットの塊によって構成している網点であり、例えばすべてのドット同士が連接して構成されている網点のことである。図2(b)に示すように、分離体網点とは一網点の中に、少なくとも1つのドットが分離して構成されている網点である。
また、集合体網点をAMスクリーンの一種、分離体網点をFMスクリーンの一種と考え、集合体網点をAMスクリーンで生成し、分離体網点をFMスクリーンで生成することも可能である。本実施形態では、集合体網点をAMスクリーンで生成し、分離体網点をFMスクリーンで生成することとする。
【0050】
図3は、集合体網点と分離体網点の組み合わせによって、16進のライン式スクリーンコードを構成した例である。
図3において、301は分離体網点を示し、302は集合体網点を示している。また、Cnはコードナンバを示している。このように、分離体網点を配置することにより、集合体網点のみを用いた場合より、全体の階調度を均一にすることができる。また、分離体網点がマーカの役割を果たし、例えば紙が曲がったような場合などでも、正確にコードを読み取ることができる。
ここで、Ckを符号語とよび、C0からCm-1(mは、符号語数。ここでは、16)のような所定の規則に則った符号語の集合を、符号とよぶこととする。また、網点中のドットの形状を”0”,”1”に対応させたいとき、網点のことを、特にシンボルとよぶこととする。ライン式スクリーンコードは、符号語同士の最大類似度が閾値以下の符号のことである。
【0051】
本実施形態において、Bi,kは、コードナンバiにおけるk番目のビットを示している。
例えば、コード0(C0)は、すべてのシンボル(網点)が分離体網点で構成されている。コード1(C1)は、符号語を構成しているビットの内、B1,0,B1,1,B1,2,B1,3,B1,4,B1,5,B1,6,B1,7は、集合体網点で構成されており、B1,8、B1,9,B1,10,B1,11,B1,12,B1,13,B1,14,B1,15は、分離体網点で構成されている。そして、コード2(C2)は、B2,0,B2,1,B2,2,B2,3,B2,12,B2,13,B2,14,B2,15は集合体網点で構成されており、B2,4,B2,5,B2,6,B2,7,B2,8,B2,9,B2,10,B2,11は分離体網点で構成されている。以下、コード3(C3)から、コードF(CF)まで、図3に示すように符号語を構成している。
なお、コード0(C0)とコードF(CF)、コード1(C1)とコードE(CE)、コード2(C2)とコードD(CD)、コード3(C3)とコードC(CC)、コード4(C4)とコードB(CB)、コード5(C5)とコードA(CA)、コード6(C6)とコード9(C9)、コード7(C7)とコード8(C8)は、互いに集合体網点と分離体網点を反転させた関係になっている。
【0052】
また図3に示すように、各符号語中における集合体網点、分離体網点の数をすべて同一にすることで、パリティ検査符号を不要とし、効率的な情報の処理を可能にする。
【0053】
次に、図3に示したスクリーンコードの例における最大類似度を、前記した最大類似度の算出方法に従って算出する。まず、各行のライン式スクリーンコードを符号語とし、Ckで表す。また、符号語を形成する各要素をビットとする。ここでは、ビットは集合体網点、分離体網点によって表されることになる。そして、符号語を形成するビット数を符号長とよぶ。本実施形態では、符号長は16である。
【0054】
図4は、本実施形態におけるライン式スクリーンコードの最大類似度の算出方法を示す図である。なお、図4では類似度を算出するライン式スクリーンコードの例として、コード4(C4)とコード5(C5)を例として挙げる。
(1)まず、式1に従って各ビット間の排他的論理和を算出する。
(2)次に、式1の計算結果を、各ビットごとに加算する(請求項における距離)。
この結果、本従来例では、コード4(C4)と、コード5(C5)間の距離は、8となる。
【0055】
図5は、このようにして算出した図3に示す各符号に関して、すべての組み合わせの距離を示した図である。これらの距離から、最も小さな値を算出し、式4に従って最大類似度を算出する。これにより、本実施形態における最大類似度は、1/2となる。
【0056】
次に、階調度とシンボル内のドット数の関係について、図6に沿って、説明する。
図6は、階調度とシンボルの関係の例を示す図であり、(a)は、階調度3のときの集合体網点の例であり、(b)は、階調度3のときの分離体網点の例であり、(c)は、階調度4のときの集合体網点の例であり、(d)は、階調度4のときの分離体網点の例であり、(e)は、階調度5のときの集合体網点の例であり、(f)は、階調度5のときの分離体網点の例であり、(g)は、階調度6のときの集合体網点の例であり、(h)は、階調度6のときの分離体網点の例である。
【0057】
図6に示すように、階調度3のときのシンボル内のドット数は3であり、階調度4のときのシンボル内のドット数は4であり、階調度5のときのシンボル内のドット数は5であり、階調度6のときのシンボル内のドット数は6である。
本実施形態は、ドットの数によって階調を表現するAMスクリーンとFMスクリーンを用いているため、このように網点のドット数を変化させることによって階調度を変化させることが可能となる。
【0058】
図7は、図3に示すライン式スクリーンコードのうち、コード5(C5)を用いた様々な階調のライン式スクリーンコードの例を示す図であり、(a)は、階調度3のライン式スクリーンコードの例を示す図であり、(b)は、階調度4のライン式スクリーンコードの例を示す図であり、(c)は、階調度5のライン式スクリーンコードの例を示す図であり、(d)は、階調度6のライン式スクリーンコードの例を示す図である。
このような構成とすることで、画像中における様々な階調の部分に、ライン式スクリーンコードを埋め込むことが可能となる。
【0059】
図7も、図6と同様に階調度3のときのシンボル内のドット数は3であり、階調度4のときのシンボル内のドット数は4であり、階調度5のときのシンボル内のドット数は5であり、階調度6のときのシンボル内のドット数は6である。
【0060】
また、本実施形態では、ライン式スクリーンコードに用いるシンボルとして、図2に示すシンボルを用いたが、これに限らず様々なシンボルを用いることができる。
【0061】
図8は、ライン式スクリーンコードに用いることが可能なシンボルの例を示す図であり、(a)、(b)は、分離体網点と集合体網点を用いたシンボルであり、(c)、(d)は、異なる方向の図形を網点とすることで、ライン式スクリーンコードのシンボルを構成した例であり、(e)、(f)は、異なる形状の網点とすることで、ライン式スクリーンコードのシンボルを構成した例であり、(g)、(h)は、大きさの異なる網点を用いることで、ライン式スクリーンコードのシンボルを構成した例であり、(i)、(j)は、互いに位置をずらした網点を用いることで、ライン式スクリーンコードのシンボルを構成した例である。
なお、図8で用いられている例は、すべて階調度を4とするが、これに限らず様々な階調度のシンボルを作成することができる。
【0062】
図8の(c),(d)に示すように、網点の形状の方向を変えることによって、ライン式スクリーンコードを構成することができる。図8の(e),(f)に示すように、網点の形状を変化させることによって、ライン式スクリーンコードを構成することができる。図8の(g),(h)に示すように、網点の大きさを変化させることによって、ライン式スクリーンコードを構成することができる。なお、このように網点の大きさを変えることによって、ライン式スクリーンコードを構成した場合、画像中のライン式スクリーンコードを埋め込む箇所の階調度は、これら大きさの異なる網点の階調度の平均値となる。図8の(i),(j)に示すように、網点の位置をずらすことによって、ライン式スクリーンコードを構成することができる。
【0063】
図9は、図8に示した各シンボルを用いて、ライン式スクリーンコードを構成した例であり、(a)は、図8(c)、図8(d)で示したシンボルを用いて、ライン式スクリーンコードを構成した例であり、(b)は、図8(e)、図8(f)で示したシンボルを用いて、ライン式スクリーンコードを構成した例であり、(c)は、図8(g)、図8(h)で示したシンボルを用いて、ライン式スクリーンコードを構成した例であり、(d)は、図8(i)、図8(j)で示したシンボルを用いて、ライン式スクリーンコードを構成した例である。
なお、例としてあげたライン式スクリーンコードは、コード5(C5)である。
【0064】
図9(a)に示すように、網点の形状の方向を変えることによって、ライン式スクリーンコードを構成することができる。図9(b)に示すように、網点の形状を変えることによって、ライン式スクリーンコードを構成することができる。図9(c)に示すように、大きさの異なる網点をシンボルとすることによって、ライン式スクリーンコードを構成することができる。図9(d)に示すように、位置をずらした網点をシンボルとすることによって、ライン式スクリーンコードを構成することができる。
【0065】
図10は、符号長15で構成したライン式スクリーンコードの例である。
図10に示したライン式スクリーンコードにおいて、コード0(F0)は、すべてのシンボルが分離体網点で構成されている。コード1(F1)は、符号語を構成しているビットの内、B1,0,B1,1,B1,2,B1,3,B1,4,B1,5,B1,6,B1,7は、集合体網点で構成されており、B1,8、B1,9,B1,10,B1,11,B1,12,B1,13,B1,14は、分離体網点で構成されている。そして、コード2(F2)は、B2,0,B2,1,B2,2,B2,3,B2,12,B2,13,B2,14は分離体網点で構成されており、B2,4,B2,5,B2,6,B2,7,B2,8,B2,9,B2,10,B2,11は集合体網点で構成されている。以下、コード3(F3)から、コードF(FF)まで、図10に示すように符号語を構成している。なお、このライン式スクリーンコードの最大類似度は、7/15(<1/2)である。
【0066】
図11は、符号長8で構成したライン式スクリーンコードの例である。
図11に示したライン式スクリーンコードにおいて、コード0(G0)は、すべてのシンボルが分離体網点で構成されている。コード1(G1)は、符号語を構成しているビットの内、B1,0,B1,1,B1,2,B1,3は、集合体網点で構成されており、B1,4、B1,5,B1,6,B1,7は、分離体網点で構成されている。そして、コード2(G2)は、B2,0,B2,1,B2,4,B2,5は集合体網点で構成されており、B2,2,B2,3,B2,6,B2,7は分離体網点で構成されている。以下、コード3(G3)から、コードF(GF)まで、図11に示すように符号語を構成している。なお、このライン式スクリーンコードの最大類似度は、1/2である。
【0067】
図12は、符号長8で構成したライン式スクリーンコードの例である。
図12は、図11に示すライン式スクリーンコードとは異なり、1つの符号語の中に必ず集合体網点が奇数個含まれるように構成したものである。
図12に示したライン式スクリーンコードにおいて、コード0(H0)は、B0,0が集合体網点であり、その他のシンボルは分離体網点で構成されている。コード1(H1)は、符号語を構成しているビットの内、B1,0,B1,2,B1,3,B1,4,B1,5は、集合体網点で構成されており、B1,1、B1,6,B1,7は、分離体網点で構成されている。そして、コード2(H2)は、B2,0,B2,4,B2,5,B2,6,B2,7は集合体網点で構成されており、B2,1,B2,2,B2,3は分離体網点で構成されている。以下、コード3(H3)から、コードF(HF)まで、図12に示すように符号語を構成している。なお、このライン式スクリーンコードの最大類似度は、1/2である。
【0068】
図13は、符号長16で構成したライン式スクリーンコードの例である。
図13は、図3に示すライン式スクリーンコードとは異なり、各符号語の中における集合体網点と分散体網点との配置が左右対称となるよう構成したものである。
図13に示したライン式スクリーンコードにおいて、コード0(L0)は、すべてのシンボルが分離体網点で構成されている。コード1(L1)は、符号語を構成しているビットの内、B1,1,B1,3,B1,5,B1,7,B1,8,B1,10,B1,12,B1,14は、集合体網点で構成されており、B1,0、B1,2,B1,4,B1,6,B1,9,B1,11,B1,13,B1,15は、分離体網点で構成されている。そして、コード2(L2)は、B2,0,B2,2,B2,4,B2,6,B2,9,B2,11,B2,13,B2,15は集合体網点で構成されており、B2,1,B2,3,B2,5,B2,7,B2,8,B2,10,B2,12,B2,14は分散体網点で構成されている。以下、コード3(L3)から、コードF(LF)まで、図13に示すように符号語を構成している。このようにライン式スクリーンコードを構成することで、ライン式スクリーンコードが埋めこまれている紙を、180°を回転しても、ライン式スクリーンコードを読み取ることが可能である。なお、このライン式スクリーンコードの最大類似度は、1/2である。
【0069】
ここで、紙上に埋め込んだ情報に対するノイズは、主に二種類存在する。第1のノイズは紙汚れや紙破損などが原因となり、部分的に集中して発生する網点の誤りというバースト誤りである。第2のノイズはプリンタのドラム上のトナー汚れ、紙伸び、およびスキャナの光量子特性などが原因となり、読み込んだ個々の網点に対し、独立に発生するランダム誤りである。ノイズにより、例えば図3のライン式スクリーンコードの任意のビットが反転すると、別の情報を表すライン式スクリーンコードとなってしまうおそれがある。
【0070】
実際の紙上は、紙汚れなどによるノイズが発生しやすい環境下にある。よって、第1のノイズであるバースト誤りが発生する確率は、第2のノイズであるランダム誤りが発生する確率より遥かに高い。また、白紙上の紙汚れが集中体網点として処理されてしまうことが多く、このためバースト誤りによる集中体網点から分散体網点に変わる確率は、分離体網点から集中体網点に変わる確率より、はるかに小さい。このような事情から、各符号語に対し、集合体網点の数は多い方がよい。
【0071】
図14は、本実施形態に係るライン式スクリーンコード作成システムのブロック図である。
ライン式スクリーンコード作成システムは、ライン式スクリーンコードを生成し、これを画像に埋めこむライン式スクリーンコード生成装置1と、閾値、符号長、および埋め込む情報などを入力する入力装置2(請求項における入力部)、様々な階調度に対応したシンボルなどのデータが格納されているデータベース(DB)3(請求項における記憶部)、情報を埋め込まれる対象である画像などのデータを読み取る画像データ読取装置4、およびライン式スクリーンコードが埋め込まれた画像を印刷する印刷装置5を含んで構成される。本実施形態では、ライン式スクリーンコード生成装置1とDB3とは別体として構成されているが、一体化してもよい。
なお、図14に示したライン式スクリーンコード生成装置1は、CPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)、ハードディスクドライブ、入出力インターフェースなどを含んで構成されるコンピュータを用いて具現され、ライン式スクリーンコード生成装置1の各部は、このコンピュータのハードディスクドライブに格納されたプログラムをRAMに展開し、CPUが実行することで具現される。また、DB3は、ハードディスクドライブの所定の領域を割り当てることで具現される。
【0072】
ライン式スクリーンコード生成装置1は、入力装置2を介して入力された符号長を基に、可能なすべての符号語の生成などの処理を行う符号生成部11、生成された符号語間の類似度の算出、およびこの類似度が所定の閾値以下であるか否かの判定の処理などを行う類似度処理部12、DB3に格納されているシンボルを取得し、類似度処理部12において類似度が閾値以下であると判定された符号語にシンボルを対応させ、さらに階調度ごとのシンボルを対応させることによって階調度に応じた情報埋込コードを生成するシンボル部13を含んで構成される。さらにライン式スクリーンコード生成装置1は、情報を埋め込まれる対象である画像データを、画像データ読取装置4から取得する画像データ取得部15、取得した画像データの階調度を解析して階調度データを生成する階調度解析部16、および入力装置2を介して取得した情報を、ライン式スクリーンコードに変換するコード化、さらにこのライン式スクリーンコードを階調度に応じて、画像データに埋め込む情報埋込部14を含んで構成される。
【0073】
図15は、本実施形態に係るライン式スクリーンコードを生成する処理の手順を示すフローである。図14を参照しつつ、図15に沿ってライン式スクリーンコード生成の処理を説明する。
まず、入力装置2を介して、後記する閾値が類似度処理部12に入力される(S1)。
次に、入力装置2を介して、符号長が符号生成部11に入力される(S2)。
そして、符号生成部11は、入力された符号長において、可能なすべての符号語(第1の符号語群)を生成する(S3)。具体的には、ステップS2において、入力された符号長において、生成可能な符号語をすべて生成する。
次に、符号生成部11は、生成されたすべての符号語(第1の符号語群)を類似度処理部12に送る。そして、類似度処理部12は、第1の符号語群中のすべての符号語の組み合わせに関して、類似度処理部12が所定の2つの符号語間の類似度を算出する(S4)。ここで、類似度とは、前記した距離をd、符号長をnとしたとき、(n−d)/nで表される。
さらに、類似度処理部12は、ステップS1で入力された閾値以下であるか否かを判定する(S5)。ここで、閾値は、1/2であり、より好ましくは1/4である。算出した類似度が、閾値より大きい場合は(S5→No)、ステップS7に処理を進める。算出した類似度が、閾値以下である場合は(S5→Yes)、ステップS6に処理を進める。
ステップS6では、ステップS4において算出した類似度が閾値以下であると類似度処理部12によって判定された符号語を記憶する。
さらに、類似度処理部12は、ステップS3において生成したすべての符号語の組み合わせに関して、類似度が算出されたか否かを判定する(S7)。ステップS3において生成したすべての符号語に対する類似度の算出が終了していない場合は(S7→No)、ステップS4の処理に戻る。ステップS3において生成したすべての符号語に対して、類似度の算出が終了している場合は(S7→Yes)、類似度処理部12において、記憶されているすべての符号語(第2の符号語群)をシンボル部13へ送る。なお、ここまでの処理において、生成される符号語は、すべて”0”,”1”の2値をとるものとする。
【0074】
次に、シンボル部13は、DB3に予め格納されていたシンボルを取得し、これらと前記した”0”,”1”との対応をとり、さらに様々な階調度との対応をとり、これらをシンボルに置き換えるシンボル化の処理を行う(S8)ことによって、ライン式スクリーンコードを生成する。本実施形態では、前記した図2に示すような集合体網点と分離体網点をシンボルとするが、これに限らず前記した図8の(c)から(j)に示すような網点をシンボルとして、ライン式スクリーンコードを生成してもよい。また、様々な階調度に対応したシンボルとしては、例えば前記した図6に示すようなシンボルを対応させることが可能である。次に、シンボル部13は、生成したライン式スクリーンコードを情報埋込部14へ送る。
【0075】
そして、画像中に埋め込む情報(埋込情報)が、入力装置2などを介して、情報埋込部14へ入力される。
次に、画像データ取得部15がスクリーンコードの埋め込みを行いたい印刷物の画像データを、例えばスキャナなどである画像データ読取装置4を介して取得し(S9)、その画像データを階調度解析部16へ送る。
階調度解析部16は、画像データの階調度を解析し(S10)、その画像データと階調度のデータを情報埋込部14へ送る。画像データの階調度の解析は、例えば画像データの濃淡に関する情報から、階調度を数値で表す処理などを行う。
そして、情報埋込部14は、入力装置2から入力された埋込情報をライン式スクリーンコードに対応させる埋込情報のコード化の処理を行う(S11)。次に、情報埋込部14は、階調度解析部16から送られた階調度データと、ステップS11で生成したコード化した埋込情報を対応させる処理を行い(S12)、この結果に従って情報埋込部14は、画像データへの情報の埋め込みを行う(S13)。そして、情報埋込部14は、ライン式スクリーンコードを用いて、情報を埋め込んだ画像データを印刷装置5へ送る。
次に、印刷装置5は、送られた画像データを紙上に印刷する(S14)。
【0076】
なお、本実施形態では、符号生成部11が生成する符号語は”0”,”1”の2値からなる符号語であり、シンボル部13において、これらがシンボルに置き換えられることによって、ライン式スクリーンコードが生成されるが、これに限らず、例えば符号生成部11の機能と、シンボル部13の機能を合わせ、符号語生成の段階でシンボルを用いて符号語を表現し、ライン式スクリーンコードを生成してもよい。
【実施例】
【0077】
次に、本発明の効果を確認した実施例について説明する。
印刷装置(図14の印刷装置)としてMICROLINE2020(株式会社 沖データ製)、紙上からライン式スクリーンコードを読み取る読取装置(図14の画像データ読取装置)としてScan3200F(キヤノン株式会社製)、および紙上から読み取ったライン式スクリーンコードの情報を読み取る読取装置(図14のライン式スクリーンコード生成装置)としてPCG−TR3E/B 800MHz(ソニー株式会社製)を用いた。
図20に、実際に画像に対してライン式スクリーンコードを背景に埋め込んだ画像の例を示す。
図20に示すように、ライン式スクリーンコードを背景に埋め込んでも、極小の網点を用いているため、ほとんど肉眼では認識できないことがわかる。
【0078】
実施例、比較例は、以下の条件の下で行った。
本実施例、並びに比較例で用いた符号語の符号長は16とした。対象とした網点数は1600とし、これらの網点にライン式スクリーンコード、または比較例による符号によって所定の情報を紙上に埋め込んだ。実験回数は、それぞれ5回とした。そして、これらの網点に対し、所定の割合でノイズをかけた。このノイズは1回の実験ごとにかけることとした。ノイズのかけ方は、網点に埋めこまれている情報”0”,”1”、すなわち分離体網点と集合体網点を前記した割合で反転させる手法を用いた。なお、本実施例では、”0”は、分離体網点を、”1”は、集合体網点をそれぞれ表すこととする。また、読取エラー率とは、紙上に埋め込まれている符号を前記した認識装置が認識した際、認識装置が誤った符号語として認識した符号語の割合を示す。
【0079】
(比較例)
表1は、比較例として類似度が3/4である1100110011001100と、0011110011001100のコードを用いて、それぞれ160(10%)、320(20%)、640(40%)個の網点に対して、ノイズをかけた読取エラー率である。ここで、読取エラー率の単位は%であるとする。
【0080】
【表1】
【0081】
(実施例1)
表2は、類似度が1/2である1100110011001100と、0011001111001100のコードを用いて、それぞれ160(10%)、320(20%)、640(40%)個の網点に対して、ノイズをかけた読取エラー率である。
【0082】
【表2】
【0083】
(実施例2)
表3は、類似度が1/4である1100110011001100と、0011001100111100のコードを用いて、それぞれ160(10%)、320(20%)、640(40%)個の網点に対して、ノイズをかけた読取エラー率である。
【0084】
【表3】
【0085】
(実施例3)
表4は、類似度が0である1100110011001100と、0011001100110011のコードを用いて、それぞれ160(10%)、320(20%)、640(40%)個の網点に対して、ノイズをかけた読取エラー率である。
【0086】
【表4】
【0087】
本実施例に示すように、10%のノイズをかけた例において、実施例と比較例との間に読取エラー率の大きな差異は認められないが、20%以上のノイズをかけた例においては、実施例と比較例との間に読取エラー率の大きな差異が認められる。さらに、40%のノイズをかけた例において、実施例と比較例との間の読取エラー率はより大きな差異を生じる。特に、類似度3/4と類似度1/2との間でその差異は顕著である。このように、最大類似度を少なくとも1/2以下にすることによって、読取エラー率を低くすることができる。
【図面の簡単な説明】
【0088】
【図1】AMスクリーンとFMスクリーンの網点の例を示した図であり、(a)は、AMスクリーンの網点の例を示した図であり、(b)は、FMスクリーンの網点の例を示した図である。
【図2】本実施形態で使用される網点の例を示した図であり、(a)は、集合体網点の例を示した図であり、(b)は、分離帯網点の例を示した図である。
【図3】集合体網点と分離体網点の組み合わせによって、16進のライン式スクリーンコードを構成した例である。
【図4】本実施形態におけるライン式スクリーンコードの最大類似度の算出方法を示す図である。
【図5】図3に示す各符号に関して、すべての組み合わせの距離を示した図である。
【図6】階調度とシンボルの関係の例を示す図であり、(a)は、階調度3のときの集合体網点の例であり、(b)は、階調度3のときの分離体網点の例であり、(c)は、階調度4のときの集合体網点の例であり、(d)は、階調度4のときの分離体網点の例であり、(e)は、階調度5のときの集合体網点の例であり、(f)は、階調度5のときの分離体網点の例であり、(g)は、階調度6のときの集合体網点の例であり、(h)は、階調度6のときの分離体網点の例である。
【図7】図3に示すライン式スクリーンコードのうち、コード5(C5)を用いた様々な階調のライン式スクリーンコードの例を示す図であり、(a)は、階調度3のライン式スクリーンコードの例を示す図であり、(b)は、階調度4のライン式スクリーンコードの例を示す図であり、(c)は、階調度5のライン式スクリーンコードの例を示す図であり、(d)は、階調度6のライン式スクリーンコードの例を示す図である。
【図8】ライン式スクリーンコードに用いることが可能なシンボルの例を示す図であり、(a)、(b)は、分離体網点と集合体網点とを網点とすることで、ライン式スクリーンコードのシンボルを構成した例であり、(c)、(d)は、異なる方向の図形を網点とすることで、ライン式スクリーンコードのシンボルを構成した例であり、(e)、(f)は、異なる形状の網点とすることで、ライン式スクリーンコードのシンボルを構成した例であり、(g)、(h)は、大きさの異なる網点を用いることで、ライン式スクリーンコードのシンボルを構成した例であり、(i)、(j)は、互いに位置をずらした網点を用いることで、ライン式スクリーンコードのシンボルを構成した例である。
【図9】図8に示した各シンボルを用いて、ライン式スクリーンコードを構成した例であり、(a)は、図8(c)、図8(d)で示したシンボルを用いて、ライン式スクリーンコードを構成した例であり、(b)は、図8(e)、図8(f)で示したシンボルを用いて、ライン式スクリーンコードを構成した例であり、(c)は、図8(g)、図8(h)で示したシンボルを用いて、ライン式スクリーンコードを構成した例であり、(d)は、図8(i)、図8(j)で示したシンボルを用いて、ライン式スクリーンコードを構成した例である。
【図10】符号長15で構成したライン式スクリーンコードの例である。
【図11】符号長8で構成したライン式スクリーンコードの例である(その1)。
【図12】符号長8で構成したライン式スクリーンコードの例である(その2)。
【図13】符号長16で構成したライン式スクリーンコードの例である。
【図14】本実施形態に係るライン式スクリーンコード生成システムのブロック図である。
【図15】本実施形態に係るライン式スクリーンコードを生成する処理の手順を示すフローである。
【図16】従来例における2進法によって構成した符号の例を示す図であり、(a)は、本従来例における符号語の生成方法を示す図、(b)は、本従来例におけるビット番号の付し方を示した図である。
【図17】図16に示した方法によって生成した符号語を用いて構成した符号の例を示す図である。
【図18】本従来例における符号の最大類似度の算出方法を示した図である。
【図19】図17に示す各符号に関して、すべての組み合わせの距離を示した図である。
【図20】実際に画像に対してライン式スクリーンコードを背景に埋め込んだ画像の例を示す図である。
【符号の説明】
【0089】
1 ライン式スクリーンコード生成装置
2 入力装置
3 データベース
4 画像データ読取装置
5 印刷装置
11 符号生成部
12 類似度処理部
13 シンボル部
14 情報埋込部
15 画像データ取得部
16 階調度解析部
301 分離体網点
302 集合体網点
【技術分野】
【0001】
本発明は、印刷媒体に情報を埋め込んで印刷する情報埋込コード、情報埋込コード生成方法、および情報埋込コード生成装置に関する。
【背景技術】
【0002】
印刷された紙上に情報をのせる技術として、1932年に、スーパーマーケットのチェッキングを安価に行うため、バーコードがハーバード大学により提案された。1980年後半に入ると、宝石や半導体、薬剤、機械部品などの特殊分野において、より多くの情報をより小さく印字したいという要求がでてきた。この要求に対応するため、1987年に、Code49の二次元コードがアメリカのインターメック社により発表された。その後、Code16K,DataMatrix(DataCode)およびMaxiCodeが開発され、続いてArrayTag,Code1などが開発された。また、日本でも、CPCodeやQRCodeなどが提案され、国際規格として認定された。
【0003】
しかし、二次元コードはバーコードから発展してきたコードであるため、バーコードの欠点を克服することは難しい。まず、すべての二次元コードでは、黒いセルを「1」、白いセルを「0」と定義しているため、情報の記述が冗長になるという問題が残されている。また、二次元コードおよびバーコードは共に、情報を紙上に記述する際、コードを記述するためのスペースが必要となる。このため、紙面のデザインを損なうおそれがある。また、簡単に複写ができるので、セキュリティ上の問題もある。
【0004】
金融、保険関係業界では、紙でより多くのデータを記述でき、かつ小さい印字の要望が生じてきている。特に、金融関係では、データを出力して紙として残すという法律上の義務付けがあり、印刷した後、紙上で印刷された内容はコンピュータでは復元不可能であるため、データベース上のデータをハードディスク上に保存する必要が生じる。もし、データを紙で登録することができれば、紙と情報が一体化し、ハードディスクへの保存の必要がなくなるので、安全性と利便性の両メリットを図ることができる。従って、前記したように金融関係などの需要に対して、大量のデータを紙上に登録する方法が望まれている。
【0005】
ここで、従来例として、2進法による符号の最大類似度を算出する。
図16は、従来例における2進法によって構成した符号の例を示す図であり、(a)は、本従来例における符号語の生成方法を示す図、(b)は、本従来例におけるビット番号の付し方を示した図である。
図16の(a)に示すように、本従来例における符号は、2進法による符号語を4つ重ねることによって生成される。図16の(a)では、例として”2”を4ビットの2進法で表現した符号語を示す。そして、図16の(a)に示すように、紙汚れなどに対する対策として、この符号語を4つ重ねることによって、本従来例では符号語を生成することとする。
図16の(b)に示すように、本従来例における符号語ごとに付すコードナンバkの符号語のビット番号は、左上から右下にかけて一連の番号として付すこととする。
【0006】
図17は、図16に示した方法によって生成した符号語を用いて構成した符号の例を示す図である。
ここで、Dkは符号語であり、符号語を形成する各要素をビットとする。そして、符号語を形成するビット数を符号長とよぶ。
符号語は、コード0(D0)からコードF(DF)までの16種類がある。例えば、コード0(D0)は、すべて”0”によって、符号語が構成されている。コード1(D1)は、B1,0,B1,4、B1,8,B1,12が”1”であり、その他のビットは、”0”で符号語が構成されている。コード2(D2)は、B2,1,B2,5,B2,9,B2,13が”1”であり、その他のビットは、”0”で符号語が構成されている。以下、コード3(D3)から、コード15(D15)まで、図17に示すように符号語を構成している。
なお、コード0(D0)とコードF(DF)、コード1(D1)とコードE(DE)、コード2(D2)とコードD(DD)、コード3(D3)とコードC(DC)、コード4(D4)とコードB(DB)、コード5(D5)とコードA(DA)、コード6(D6)とコード9(D9)、コード7(D7)とコード8(D8)は、互いに”0”と”1”を反転させた関係になっている。
【0007】
ここで、類似度の概念を導入する。まず、nビットのビット列である符号語をSk=(Bk,1,Bk,2,・・・、Bk,n-1)としたとき、式1のように符号語間のビットBk,iごとの排他的論理和をとる。ここで、kはコードナンバであり、nは符号長であり、mは符号語数である。
【0008】
【数3】
【0009】
ここで、i,j=0,1,2,・・・,n−1, k,l=0,1,2,・・・,m−1とする。
【0010】
そして、式2のように各ビットごとに関して、式1の結果を加算し、これを符号SkとSl間の距離とする。
【0011】
【数4】
【0012】
そして、すべての符号語の組み合わせに関して、式1、式2による距離を算出する。さらに、このようにして算出した符号中におけるすべての符号語間の距離の中で、最も小さい距離を算出する(式3)。
【0013】
【数5】
【0014】
【数6】
【0015】
そして、式3で得られた値を、式4に代入する。このようにして、得られた結果を最大類似度とする。
【0016】
最大類似度が大きければ、その符号間の類似度が高く、識別が困難となる。逆に、最大類似度が小さければ、その符号間の類似度は低く、識別が容易となる。
【0017】
図18は、本従来例における符号の最大類似度の算出方法を示した図である。例として、コード2(D2)とコード3(D3)の最大類似度の算出を行う。
(1)まず、式1に従って各ビット間の排他的論理和を算出する。
(2)次に、式1の計算結果を、各ビットごとに加算する(請求項における距離)。
この結果、本従来例では、コード2(D2)と、コード3(D3)間の距離は、4となる。
【0018】
図19は、このようにして算出した図17に示す各符号に関して、すべての組み合わせの距離を示した図である。これらの距離から、最も小さな値を算出し、式4に従って最大類似度を算出する。これにより、本従来例における最大類似度は、3/4となる。
【0019】
また、ドキュメントデータの背景に、ドキュメントデータ中の識別情報を埋め込むことにより、ドキュメントデータが改ざんされているか否かを検証可能な電子透かし技術が開示されている(例えば、特許文献1参照)。
【0020】
また、個人身分証明のような印刷物の顔写真背景に対して個人固有の印刷スクリーン形状からなるIDパターン情報を作成し、登録ができる技術が開示されている(例えば、特許文献2参照)。
【特許文献1】特開2004−7442号公報(請求項1)
【特許文献2】特開2000−79782号公報(請求項1)
【発明の開示】
【発明が解決しようとする課題】
【0021】
しかしながら、従来のコードは、符号語間の識別度が考慮されておらず、コードの読み取りに際し、ノイズなどの影響を受けた誤認識が多い、といった問題があった。
【0022】
また、前記した特許文献1で用いられている電子透かし技術は、画質を低くすれば印刷物に対応可能であるが、高画質なままでは印刷に不向きである、といった問題があった。
【0023】
さらに、前記した特許文献2で用いられている技術は、情報を埋めこむための、特定の領域を必要とするため、画像中に自然な形で情報を埋め込むことが不可能である、といった問題があった。
【0024】
このような背景に鑑みて本発明がなされたのであり、本発明は、符号語間の識別度を低くすることによって、ノイズなどの影響に耐性がある情報埋込コードを提供することを第1の目的とする。また、情報を埋め込んでも画質を落とさない情報埋込コードを提供することを第2の目的とする。さらに、画像中に自然な形で情報を埋め込むことが可能な情報埋込コードを提供することを第3の目的とする。
【課題を解決するための手段】
【0025】
前記課題を解決するため、請求項1に係る発明は、絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって表される情報を埋め込む情報埋込コードであって、前記情報埋込コードは、所定の方法に従って算出した符号語間の最大類似度が、1/2以下であることを特徴とする情報埋込コードである。
【0026】
また、請求項2に係る発明は、絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって表される情報を埋め込む情報埋込コードであって、前記情報埋込コードは、所定の方法に従って算出した符号語間の最大類似度が、1/4以下であることを特徴とする情報埋込コードである。
【0027】
このような構成とすることで、符号語間の類似度を低くし、識別度を高めることで、符号語間の類似度が1/2であれば、識別度を高めることができ、紙汚れなどによるノイズの影響に対する耐性を得ることが可能である。また、極小の網点を情報媒体として用いるため、情報を埋め込んでも画質を落とさず、さらに肉眼で識別不可能なため、画像中に自然な形で情報を埋め込むことが可能である。
【0028】
請求項3に係る発明は、前記最大類似度が、以下に記載する式Amaxによって表されることを特徴とする請求項1、または請求項2のいずれか一項に記載の情報埋込コードである。
情報埋込コードにおいて、Skを符号語、nを符号長、mを符号語数としたとき、前記最大類似度Amaxは、
【数7】
【数8】
と表される。
ここで、d(Sk,Sl)は、符号語SkとSlとの間の距離であり、k,l=0,1,2,・・・,m−1とする。
【0029】
このようにすることで、最大類似度を定量的に算出することが可能となる。
【0030】
また、請求項4に係る発明は、前記網点の配列が、網点中のすべてのドット同士が連接している集合体網点、および/または、網点中のドットの内、少なくとも1つが分離している分離体網点からなることを特徴とする請求項1から請求項3のいずれか一項に記載の情報埋込コードである。
【0031】
このような構成とすることで、対象となる画像に対して、少なくとも1種類以上の階調を表現することが可能となり、さらに、網点の外形情報を利用することにより、網点の位置を容易に特定することが可能となる。
【0032】
さらに、請求項5に係る発明は、各符号語中における集中体網点、分離体網点の数が、すべて同一であること、を特徴とする請求項1から請求項4のいずれか一項に記載の情報埋込コードである。
【0033】
このような構成とすることで、パリティ検査符号の必要がなくなり、効率的な情報の記述が可能となる。
【0034】
請求項6に係る発明は、各符号語に対した網点の配列において、集合体網点と、分離体網点とを異なる変調方式の網点の組み合わせによって情報を表わすことを特徴とする請求項1から請求項5のいずれか1項に記載の情報埋込コードである。
【0035】
このような構成とすることで、異なる変調方式の網点の組み合わせにより、情報を記述することが可能となり、識別度の高い情報の表現が可能となる。
【0036】
請求項7に係る発明は、埋め込む対象である画像の階調度に応じて、網点中のドットの数を変更することを特徴とする請求項1から請求項5のいずれか一項に記載の情報埋込コードである。
【0037】
このような構成とすることで、画像中の任意の箇所に対して、情報を埋め込むことが可能となる。
【0038】
また、前記網点の配列は、第1の網点におけるドットが形成する図形の方向と、第2の網点におけるドットが形成する図形の方向とが異なることとしてもよい。
【0039】
また、前記網点の配列は、第1の網点におけるドットが形成する図形の形状と、第2の網点におけるドットが形成する図形の形状とが異なることしてもよい。
【0040】
また、前記網点の配列は、第1の網点におけるドットが形成する図形と、第2の網点におけるドットが形成する図形の大きさとが異なることとしてもよい。
【0041】
また、前記網点の配列は、第1の網点におけるドットが形成する図形と、第2の網点におけるドットが形成する図形との、網点中における位置が異なることとしてもよい。
【0042】
さらに、請求項8に係る発明は、絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって情報を埋め込む情報埋込コード生成方法であって、前記情報埋込コード生成方法は、符号語間の類似度の算出を行うステップ、この類似度が所定の閾値以下であるか否かの判定を行うステップ、前記類似度が所定の閾値以下であると判定された符号語に、情報を表すための幾何学的図形であるシンボルを対応させることによって情報埋込コードを生成するステップ、さらに階調度ごとのシンボルを対応させることによって階調度に応じた情報埋込コードを生成するステップ、情報を埋め込まれる対象である画像データを取得するステップ、取得した前記画像データの階調度を解析するステップ、画像に埋め込む情報を情報埋込コードに変換し、さらにこの情報埋込コードを階調度に応じて、画像に埋め込むステップ、を含んでいることを特徴とする情報埋込コード生成方法である。
【0043】
このような方法とすることで、符号語間の類似度を所定の閾値以下とし、識別度を高めることで、紙汚れなどによるノイズの影響に対する耐性を得ることが可能である。また、極小の網点を情報媒体として用いるため、情報を埋め込んでも画質を落とさず、さらに肉眼で識別不可能なため、画像中に自然な形で情報を埋め込むことが可能な情報埋込コードの生成が可能となる。
【0044】
また、請求項9に係る発明は、絵、文字、記号の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって情報を埋め込む情報埋込コード生成装置であって、前記情報埋込コード生成装置は、符号語間の類似度の算出を行い、この類似度が所定の閾値以下であるか否かの判定を行う類似度処理部と、前記類似度処理部において類似度が所定の閾値以下であると判定された符号語に、情報を表すための幾何学的図形であるシンボルを対応させることによって情報埋込コードを生成し、さらに階調度ごとのシンボルを対応させることによって階調度に応じた情報埋込コードを生成するシンボル部と、情報を埋め込まれる対象である画像データを取得する画像データ取得部と、取得した前記画像データの階調度を解析する階調度解析部と、画像に埋め込む情報を情報埋込コードに変換し、さらにこの情報埋込コードを階調度に応じて、画像に埋め込む情報埋込部と、を含んで構成されることを特徴とする情報埋込コード生成装置である。
【0045】
このような構成とすることで、符号語間の類似度を所定の閾値以下とし、識別度を高めることで、紙汚れなどによるノイズの影響に対する耐性を得ることが可能である。また、極小の網点を情報媒体として用いるため、情報を埋め込んでも画質を落とさず、さらに肉眼で識別不可能なため、画像中に自然な形で情報を埋め込むことが可能な情報埋込コードの生成が可能となる。
【発明の効果】
【0046】
本発明によれば、符号語間の類似度を低くすることによって、ノイズなどの影響に耐性があり、情報を埋め込んでも画質を落とさず、画像中に自然な形で情報を埋め込むことが可能である。
【発明を実施するための最良の形態】
【0047】
以下、図面を参照しつつ本実施形態を説明する。なお、本実施形態では、請求項における情報埋込コードを、ライン式スクリーンコードと記載する。
【0048】
まず、本実施形態で使用する各用語の定義を行う。
図1は、AMスクリーンとFMスクリーンの網点の例を示した図であり、(a)は、AMスクリーンの網点の例を示した図であり、(b)は、FMスクリーンの網点の例を示した図である。
ドット101とは、画素102において、色がついている部分であり、印刷における最小単位のことである。また、本実施形態では、網点とは、単位画像のこととする。AMスクリーンでは、図1(a)に示した網点の大小によって画像の濃淡を表し、FMスクリーンでは、図1(b)に示したドットの密度によって、画像の濃淡を表す。なお、画像の濃淡の度合いを階調度といい、網点1つをシンボルとよぶことがある。なお、本実施形態において、AMスクリーンとFMスクリーンは、異なる変調方式による網点の生成方法であるとする。
【0049】
図2は、本実施形態で使用される網点の例を示した図であり、(a)は、集合体網点の例を示した図であり、(b)は、分離帯網点の例を示した図である。
図2(a)に示すように、集合体網点とは一網点の中に、連接した複数ドットの塊によって構成している網点であり、例えばすべてのドット同士が連接して構成されている網点のことである。図2(b)に示すように、分離体網点とは一網点の中に、少なくとも1つのドットが分離して構成されている網点である。
また、集合体網点をAMスクリーンの一種、分離体網点をFMスクリーンの一種と考え、集合体網点をAMスクリーンで生成し、分離体網点をFMスクリーンで生成することも可能である。本実施形態では、集合体網点をAMスクリーンで生成し、分離体網点をFMスクリーンで生成することとする。
【0050】
図3は、集合体網点と分離体網点の組み合わせによって、16進のライン式スクリーンコードを構成した例である。
図3において、301は分離体網点を示し、302は集合体網点を示している。また、Cnはコードナンバを示している。このように、分離体網点を配置することにより、集合体網点のみを用いた場合より、全体の階調度を均一にすることができる。また、分離体網点がマーカの役割を果たし、例えば紙が曲がったような場合などでも、正確にコードを読み取ることができる。
ここで、Ckを符号語とよび、C0からCm-1(mは、符号語数。ここでは、16)のような所定の規則に則った符号語の集合を、符号とよぶこととする。また、網点中のドットの形状を”0”,”1”に対応させたいとき、網点のことを、特にシンボルとよぶこととする。ライン式スクリーンコードは、符号語同士の最大類似度が閾値以下の符号のことである。
【0051】
本実施形態において、Bi,kは、コードナンバiにおけるk番目のビットを示している。
例えば、コード0(C0)は、すべてのシンボル(網点)が分離体網点で構成されている。コード1(C1)は、符号語を構成しているビットの内、B1,0,B1,1,B1,2,B1,3,B1,4,B1,5,B1,6,B1,7は、集合体網点で構成されており、B1,8、B1,9,B1,10,B1,11,B1,12,B1,13,B1,14,B1,15は、分離体網点で構成されている。そして、コード2(C2)は、B2,0,B2,1,B2,2,B2,3,B2,12,B2,13,B2,14,B2,15は集合体網点で構成されており、B2,4,B2,5,B2,6,B2,7,B2,8,B2,9,B2,10,B2,11は分離体網点で構成されている。以下、コード3(C3)から、コードF(CF)まで、図3に示すように符号語を構成している。
なお、コード0(C0)とコードF(CF)、コード1(C1)とコードE(CE)、コード2(C2)とコードD(CD)、コード3(C3)とコードC(CC)、コード4(C4)とコードB(CB)、コード5(C5)とコードA(CA)、コード6(C6)とコード9(C9)、コード7(C7)とコード8(C8)は、互いに集合体網点と分離体網点を反転させた関係になっている。
【0052】
また図3に示すように、各符号語中における集合体網点、分離体網点の数をすべて同一にすることで、パリティ検査符号を不要とし、効率的な情報の処理を可能にする。
【0053】
次に、図3に示したスクリーンコードの例における最大類似度を、前記した最大類似度の算出方法に従って算出する。まず、各行のライン式スクリーンコードを符号語とし、Ckで表す。また、符号語を形成する各要素をビットとする。ここでは、ビットは集合体網点、分離体網点によって表されることになる。そして、符号語を形成するビット数を符号長とよぶ。本実施形態では、符号長は16である。
【0054】
図4は、本実施形態におけるライン式スクリーンコードの最大類似度の算出方法を示す図である。なお、図4では類似度を算出するライン式スクリーンコードの例として、コード4(C4)とコード5(C5)を例として挙げる。
(1)まず、式1に従って各ビット間の排他的論理和を算出する。
(2)次に、式1の計算結果を、各ビットごとに加算する(請求項における距離)。
この結果、本従来例では、コード4(C4)と、コード5(C5)間の距離は、8となる。
【0055】
図5は、このようにして算出した図3に示す各符号に関して、すべての組み合わせの距離を示した図である。これらの距離から、最も小さな値を算出し、式4に従って最大類似度を算出する。これにより、本実施形態における最大類似度は、1/2となる。
【0056】
次に、階調度とシンボル内のドット数の関係について、図6に沿って、説明する。
図6は、階調度とシンボルの関係の例を示す図であり、(a)は、階調度3のときの集合体網点の例であり、(b)は、階調度3のときの分離体網点の例であり、(c)は、階調度4のときの集合体網点の例であり、(d)は、階調度4のときの分離体網点の例であり、(e)は、階調度5のときの集合体網点の例であり、(f)は、階調度5のときの分離体網点の例であり、(g)は、階調度6のときの集合体網点の例であり、(h)は、階調度6のときの分離体網点の例である。
【0057】
図6に示すように、階調度3のときのシンボル内のドット数は3であり、階調度4のときのシンボル内のドット数は4であり、階調度5のときのシンボル内のドット数は5であり、階調度6のときのシンボル内のドット数は6である。
本実施形態は、ドットの数によって階調を表現するAMスクリーンとFMスクリーンを用いているため、このように網点のドット数を変化させることによって階調度を変化させることが可能となる。
【0058】
図7は、図3に示すライン式スクリーンコードのうち、コード5(C5)を用いた様々な階調のライン式スクリーンコードの例を示す図であり、(a)は、階調度3のライン式スクリーンコードの例を示す図であり、(b)は、階調度4のライン式スクリーンコードの例を示す図であり、(c)は、階調度5のライン式スクリーンコードの例を示す図であり、(d)は、階調度6のライン式スクリーンコードの例を示す図である。
このような構成とすることで、画像中における様々な階調の部分に、ライン式スクリーンコードを埋め込むことが可能となる。
【0059】
図7も、図6と同様に階調度3のときのシンボル内のドット数は3であり、階調度4のときのシンボル内のドット数は4であり、階調度5のときのシンボル内のドット数は5であり、階調度6のときのシンボル内のドット数は6である。
【0060】
また、本実施形態では、ライン式スクリーンコードに用いるシンボルとして、図2に示すシンボルを用いたが、これに限らず様々なシンボルを用いることができる。
【0061】
図8は、ライン式スクリーンコードに用いることが可能なシンボルの例を示す図であり、(a)、(b)は、分離体網点と集合体網点を用いたシンボルであり、(c)、(d)は、異なる方向の図形を網点とすることで、ライン式スクリーンコードのシンボルを構成した例であり、(e)、(f)は、異なる形状の網点とすることで、ライン式スクリーンコードのシンボルを構成した例であり、(g)、(h)は、大きさの異なる網点を用いることで、ライン式スクリーンコードのシンボルを構成した例であり、(i)、(j)は、互いに位置をずらした網点を用いることで、ライン式スクリーンコードのシンボルを構成した例である。
なお、図8で用いられている例は、すべて階調度を4とするが、これに限らず様々な階調度のシンボルを作成することができる。
【0062】
図8の(c),(d)に示すように、網点の形状の方向を変えることによって、ライン式スクリーンコードを構成することができる。図8の(e),(f)に示すように、網点の形状を変化させることによって、ライン式スクリーンコードを構成することができる。図8の(g),(h)に示すように、網点の大きさを変化させることによって、ライン式スクリーンコードを構成することができる。なお、このように網点の大きさを変えることによって、ライン式スクリーンコードを構成した場合、画像中のライン式スクリーンコードを埋め込む箇所の階調度は、これら大きさの異なる網点の階調度の平均値となる。図8の(i),(j)に示すように、網点の位置をずらすことによって、ライン式スクリーンコードを構成することができる。
【0063】
図9は、図8に示した各シンボルを用いて、ライン式スクリーンコードを構成した例であり、(a)は、図8(c)、図8(d)で示したシンボルを用いて、ライン式スクリーンコードを構成した例であり、(b)は、図8(e)、図8(f)で示したシンボルを用いて、ライン式スクリーンコードを構成した例であり、(c)は、図8(g)、図8(h)で示したシンボルを用いて、ライン式スクリーンコードを構成した例であり、(d)は、図8(i)、図8(j)で示したシンボルを用いて、ライン式スクリーンコードを構成した例である。
なお、例としてあげたライン式スクリーンコードは、コード5(C5)である。
【0064】
図9(a)に示すように、網点の形状の方向を変えることによって、ライン式スクリーンコードを構成することができる。図9(b)に示すように、網点の形状を変えることによって、ライン式スクリーンコードを構成することができる。図9(c)に示すように、大きさの異なる網点をシンボルとすることによって、ライン式スクリーンコードを構成することができる。図9(d)に示すように、位置をずらした網点をシンボルとすることによって、ライン式スクリーンコードを構成することができる。
【0065】
図10は、符号長15で構成したライン式スクリーンコードの例である。
図10に示したライン式スクリーンコードにおいて、コード0(F0)は、すべてのシンボルが分離体網点で構成されている。コード1(F1)は、符号語を構成しているビットの内、B1,0,B1,1,B1,2,B1,3,B1,4,B1,5,B1,6,B1,7は、集合体網点で構成されており、B1,8、B1,9,B1,10,B1,11,B1,12,B1,13,B1,14は、分離体網点で構成されている。そして、コード2(F2)は、B2,0,B2,1,B2,2,B2,3,B2,12,B2,13,B2,14は分離体網点で構成されており、B2,4,B2,5,B2,6,B2,7,B2,8,B2,9,B2,10,B2,11は集合体網点で構成されている。以下、コード3(F3)から、コードF(FF)まで、図10に示すように符号語を構成している。なお、このライン式スクリーンコードの最大類似度は、7/15(<1/2)である。
【0066】
図11は、符号長8で構成したライン式スクリーンコードの例である。
図11に示したライン式スクリーンコードにおいて、コード0(G0)は、すべてのシンボルが分離体網点で構成されている。コード1(G1)は、符号語を構成しているビットの内、B1,0,B1,1,B1,2,B1,3は、集合体網点で構成されており、B1,4、B1,5,B1,6,B1,7は、分離体網点で構成されている。そして、コード2(G2)は、B2,0,B2,1,B2,4,B2,5は集合体網点で構成されており、B2,2,B2,3,B2,6,B2,7は分離体網点で構成されている。以下、コード3(G3)から、コードF(GF)まで、図11に示すように符号語を構成している。なお、このライン式スクリーンコードの最大類似度は、1/2である。
【0067】
図12は、符号長8で構成したライン式スクリーンコードの例である。
図12は、図11に示すライン式スクリーンコードとは異なり、1つの符号語の中に必ず集合体網点が奇数個含まれるように構成したものである。
図12に示したライン式スクリーンコードにおいて、コード0(H0)は、B0,0が集合体網点であり、その他のシンボルは分離体網点で構成されている。コード1(H1)は、符号語を構成しているビットの内、B1,0,B1,2,B1,3,B1,4,B1,5は、集合体網点で構成されており、B1,1、B1,6,B1,7は、分離体網点で構成されている。そして、コード2(H2)は、B2,0,B2,4,B2,5,B2,6,B2,7は集合体網点で構成されており、B2,1,B2,2,B2,3は分離体網点で構成されている。以下、コード3(H3)から、コードF(HF)まで、図12に示すように符号語を構成している。なお、このライン式スクリーンコードの最大類似度は、1/2である。
【0068】
図13は、符号長16で構成したライン式スクリーンコードの例である。
図13は、図3に示すライン式スクリーンコードとは異なり、各符号語の中における集合体網点と分散体網点との配置が左右対称となるよう構成したものである。
図13に示したライン式スクリーンコードにおいて、コード0(L0)は、すべてのシンボルが分離体網点で構成されている。コード1(L1)は、符号語を構成しているビットの内、B1,1,B1,3,B1,5,B1,7,B1,8,B1,10,B1,12,B1,14は、集合体網点で構成されており、B1,0、B1,2,B1,4,B1,6,B1,9,B1,11,B1,13,B1,15は、分離体網点で構成されている。そして、コード2(L2)は、B2,0,B2,2,B2,4,B2,6,B2,9,B2,11,B2,13,B2,15は集合体網点で構成されており、B2,1,B2,3,B2,5,B2,7,B2,8,B2,10,B2,12,B2,14は分散体網点で構成されている。以下、コード3(L3)から、コードF(LF)まで、図13に示すように符号語を構成している。このようにライン式スクリーンコードを構成することで、ライン式スクリーンコードが埋めこまれている紙を、180°を回転しても、ライン式スクリーンコードを読み取ることが可能である。なお、このライン式スクリーンコードの最大類似度は、1/2である。
【0069】
ここで、紙上に埋め込んだ情報に対するノイズは、主に二種類存在する。第1のノイズは紙汚れや紙破損などが原因となり、部分的に集中して発生する網点の誤りというバースト誤りである。第2のノイズはプリンタのドラム上のトナー汚れ、紙伸び、およびスキャナの光量子特性などが原因となり、読み込んだ個々の網点に対し、独立に発生するランダム誤りである。ノイズにより、例えば図3のライン式スクリーンコードの任意のビットが反転すると、別の情報を表すライン式スクリーンコードとなってしまうおそれがある。
【0070】
実際の紙上は、紙汚れなどによるノイズが発生しやすい環境下にある。よって、第1のノイズであるバースト誤りが発生する確率は、第2のノイズであるランダム誤りが発生する確率より遥かに高い。また、白紙上の紙汚れが集中体網点として処理されてしまうことが多く、このためバースト誤りによる集中体網点から分散体網点に変わる確率は、分離体網点から集中体網点に変わる確率より、はるかに小さい。このような事情から、各符号語に対し、集合体網点の数は多い方がよい。
【0071】
図14は、本実施形態に係るライン式スクリーンコード作成システムのブロック図である。
ライン式スクリーンコード作成システムは、ライン式スクリーンコードを生成し、これを画像に埋めこむライン式スクリーンコード生成装置1と、閾値、符号長、および埋め込む情報などを入力する入力装置2(請求項における入力部)、様々な階調度に対応したシンボルなどのデータが格納されているデータベース(DB)3(請求項における記憶部)、情報を埋め込まれる対象である画像などのデータを読み取る画像データ読取装置4、およびライン式スクリーンコードが埋め込まれた画像を印刷する印刷装置5を含んで構成される。本実施形態では、ライン式スクリーンコード生成装置1とDB3とは別体として構成されているが、一体化してもよい。
なお、図14に示したライン式スクリーンコード生成装置1は、CPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)、ハードディスクドライブ、入出力インターフェースなどを含んで構成されるコンピュータを用いて具現され、ライン式スクリーンコード生成装置1の各部は、このコンピュータのハードディスクドライブに格納されたプログラムをRAMに展開し、CPUが実行することで具現される。また、DB3は、ハードディスクドライブの所定の領域を割り当てることで具現される。
【0072】
ライン式スクリーンコード生成装置1は、入力装置2を介して入力された符号長を基に、可能なすべての符号語の生成などの処理を行う符号生成部11、生成された符号語間の類似度の算出、およびこの類似度が所定の閾値以下であるか否かの判定の処理などを行う類似度処理部12、DB3に格納されているシンボルを取得し、類似度処理部12において類似度が閾値以下であると判定された符号語にシンボルを対応させ、さらに階調度ごとのシンボルを対応させることによって階調度に応じた情報埋込コードを生成するシンボル部13を含んで構成される。さらにライン式スクリーンコード生成装置1は、情報を埋め込まれる対象である画像データを、画像データ読取装置4から取得する画像データ取得部15、取得した画像データの階調度を解析して階調度データを生成する階調度解析部16、および入力装置2を介して取得した情報を、ライン式スクリーンコードに変換するコード化、さらにこのライン式スクリーンコードを階調度に応じて、画像データに埋め込む情報埋込部14を含んで構成される。
【0073】
図15は、本実施形態に係るライン式スクリーンコードを生成する処理の手順を示すフローである。図14を参照しつつ、図15に沿ってライン式スクリーンコード生成の処理を説明する。
まず、入力装置2を介して、後記する閾値が類似度処理部12に入力される(S1)。
次に、入力装置2を介して、符号長が符号生成部11に入力される(S2)。
そして、符号生成部11は、入力された符号長において、可能なすべての符号語(第1の符号語群)を生成する(S3)。具体的には、ステップS2において、入力された符号長において、生成可能な符号語をすべて生成する。
次に、符号生成部11は、生成されたすべての符号語(第1の符号語群)を類似度処理部12に送る。そして、類似度処理部12は、第1の符号語群中のすべての符号語の組み合わせに関して、類似度処理部12が所定の2つの符号語間の類似度を算出する(S4)。ここで、類似度とは、前記した距離をd、符号長をnとしたとき、(n−d)/nで表される。
さらに、類似度処理部12は、ステップS1で入力された閾値以下であるか否かを判定する(S5)。ここで、閾値は、1/2であり、より好ましくは1/4である。算出した類似度が、閾値より大きい場合は(S5→No)、ステップS7に処理を進める。算出した類似度が、閾値以下である場合は(S5→Yes)、ステップS6に処理を進める。
ステップS6では、ステップS4において算出した類似度が閾値以下であると類似度処理部12によって判定された符号語を記憶する。
さらに、類似度処理部12は、ステップS3において生成したすべての符号語の組み合わせに関して、類似度が算出されたか否かを判定する(S7)。ステップS3において生成したすべての符号語に対する類似度の算出が終了していない場合は(S7→No)、ステップS4の処理に戻る。ステップS3において生成したすべての符号語に対して、類似度の算出が終了している場合は(S7→Yes)、類似度処理部12において、記憶されているすべての符号語(第2の符号語群)をシンボル部13へ送る。なお、ここまでの処理において、生成される符号語は、すべて”0”,”1”の2値をとるものとする。
【0074】
次に、シンボル部13は、DB3に予め格納されていたシンボルを取得し、これらと前記した”0”,”1”との対応をとり、さらに様々な階調度との対応をとり、これらをシンボルに置き換えるシンボル化の処理を行う(S8)ことによって、ライン式スクリーンコードを生成する。本実施形態では、前記した図2に示すような集合体網点と分離体網点をシンボルとするが、これに限らず前記した図8の(c)から(j)に示すような網点をシンボルとして、ライン式スクリーンコードを生成してもよい。また、様々な階調度に対応したシンボルとしては、例えば前記した図6に示すようなシンボルを対応させることが可能である。次に、シンボル部13は、生成したライン式スクリーンコードを情報埋込部14へ送る。
【0075】
そして、画像中に埋め込む情報(埋込情報)が、入力装置2などを介して、情報埋込部14へ入力される。
次に、画像データ取得部15がスクリーンコードの埋め込みを行いたい印刷物の画像データを、例えばスキャナなどである画像データ読取装置4を介して取得し(S9)、その画像データを階調度解析部16へ送る。
階調度解析部16は、画像データの階調度を解析し(S10)、その画像データと階調度のデータを情報埋込部14へ送る。画像データの階調度の解析は、例えば画像データの濃淡に関する情報から、階調度を数値で表す処理などを行う。
そして、情報埋込部14は、入力装置2から入力された埋込情報をライン式スクリーンコードに対応させる埋込情報のコード化の処理を行う(S11)。次に、情報埋込部14は、階調度解析部16から送られた階調度データと、ステップS11で生成したコード化した埋込情報を対応させる処理を行い(S12)、この結果に従って情報埋込部14は、画像データへの情報の埋め込みを行う(S13)。そして、情報埋込部14は、ライン式スクリーンコードを用いて、情報を埋め込んだ画像データを印刷装置5へ送る。
次に、印刷装置5は、送られた画像データを紙上に印刷する(S14)。
【0076】
なお、本実施形態では、符号生成部11が生成する符号語は”0”,”1”の2値からなる符号語であり、シンボル部13において、これらがシンボルに置き換えられることによって、ライン式スクリーンコードが生成されるが、これに限らず、例えば符号生成部11の機能と、シンボル部13の機能を合わせ、符号語生成の段階でシンボルを用いて符号語を表現し、ライン式スクリーンコードを生成してもよい。
【実施例】
【0077】
次に、本発明の効果を確認した実施例について説明する。
印刷装置(図14の印刷装置)としてMICROLINE2020(株式会社 沖データ製)、紙上からライン式スクリーンコードを読み取る読取装置(図14の画像データ読取装置)としてScan3200F(キヤノン株式会社製)、および紙上から読み取ったライン式スクリーンコードの情報を読み取る読取装置(図14のライン式スクリーンコード生成装置)としてPCG−TR3E/B 800MHz(ソニー株式会社製)を用いた。
図20に、実際に画像に対してライン式スクリーンコードを背景に埋め込んだ画像の例を示す。
図20に示すように、ライン式スクリーンコードを背景に埋め込んでも、極小の網点を用いているため、ほとんど肉眼では認識できないことがわかる。
【0078】
実施例、比較例は、以下の条件の下で行った。
本実施例、並びに比較例で用いた符号語の符号長は16とした。対象とした網点数は1600とし、これらの網点にライン式スクリーンコード、または比較例による符号によって所定の情報を紙上に埋め込んだ。実験回数は、それぞれ5回とした。そして、これらの網点に対し、所定の割合でノイズをかけた。このノイズは1回の実験ごとにかけることとした。ノイズのかけ方は、網点に埋めこまれている情報”0”,”1”、すなわち分離体網点と集合体網点を前記した割合で反転させる手法を用いた。なお、本実施例では、”0”は、分離体網点を、”1”は、集合体網点をそれぞれ表すこととする。また、読取エラー率とは、紙上に埋め込まれている符号を前記した認識装置が認識した際、認識装置が誤った符号語として認識した符号語の割合を示す。
【0079】
(比較例)
表1は、比較例として類似度が3/4である1100110011001100と、0011110011001100のコードを用いて、それぞれ160(10%)、320(20%)、640(40%)個の網点に対して、ノイズをかけた読取エラー率である。ここで、読取エラー率の単位は%であるとする。
【0080】
【表1】
【0081】
(実施例1)
表2は、類似度が1/2である1100110011001100と、0011001111001100のコードを用いて、それぞれ160(10%)、320(20%)、640(40%)個の網点に対して、ノイズをかけた読取エラー率である。
【0082】
【表2】
【0083】
(実施例2)
表3は、類似度が1/4である1100110011001100と、0011001100111100のコードを用いて、それぞれ160(10%)、320(20%)、640(40%)個の網点に対して、ノイズをかけた読取エラー率である。
【0084】
【表3】
【0085】
(実施例3)
表4は、類似度が0である1100110011001100と、0011001100110011のコードを用いて、それぞれ160(10%)、320(20%)、640(40%)個の網点に対して、ノイズをかけた読取エラー率である。
【0086】
【表4】
【0087】
本実施例に示すように、10%のノイズをかけた例において、実施例と比較例との間に読取エラー率の大きな差異は認められないが、20%以上のノイズをかけた例においては、実施例と比較例との間に読取エラー率の大きな差異が認められる。さらに、40%のノイズをかけた例において、実施例と比較例との間の読取エラー率はより大きな差異を生じる。特に、類似度3/4と類似度1/2との間でその差異は顕著である。このように、最大類似度を少なくとも1/2以下にすることによって、読取エラー率を低くすることができる。
【図面の簡単な説明】
【0088】
【図1】AMスクリーンとFMスクリーンの網点の例を示した図であり、(a)は、AMスクリーンの網点の例を示した図であり、(b)は、FMスクリーンの網点の例を示した図である。
【図2】本実施形態で使用される網点の例を示した図であり、(a)は、集合体網点の例を示した図であり、(b)は、分離帯網点の例を示した図である。
【図3】集合体網点と分離体網点の組み合わせによって、16進のライン式スクリーンコードを構成した例である。
【図4】本実施形態におけるライン式スクリーンコードの最大類似度の算出方法を示す図である。
【図5】図3に示す各符号に関して、すべての組み合わせの距離を示した図である。
【図6】階調度とシンボルの関係の例を示す図であり、(a)は、階調度3のときの集合体網点の例であり、(b)は、階調度3のときの分離体網点の例であり、(c)は、階調度4のときの集合体網点の例であり、(d)は、階調度4のときの分離体網点の例であり、(e)は、階調度5のときの集合体網点の例であり、(f)は、階調度5のときの分離体網点の例であり、(g)は、階調度6のときの集合体網点の例であり、(h)は、階調度6のときの分離体網点の例である。
【図7】図3に示すライン式スクリーンコードのうち、コード5(C5)を用いた様々な階調のライン式スクリーンコードの例を示す図であり、(a)は、階調度3のライン式スクリーンコードの例を示す図であり、(b)は、階調度4のライン式スクリーンコードの例を示す図であり、(c)は、階調度5のライン式スクリーンコードの例を示す図であり、(d)は、階調度6のライン式スクリーンコードの例を示す図である。
【図8】ライン式スクリーンコードに用いることが可能なシンボルの例を示す図であり、(a)、(b)は、分離体網点と集合体網点とを網点とすることで、ライン式スクリーンコードのシンボルを構成した例であり、(c)、(d)は、異なる方向の図形を網点とすることで、ライン式スクリーンコードのシンボルを構成した例であり、(e)、(f)は、異なる形状の網点とすることで、ライン式スクリーンコードのシンボルを構成した例であり、(g)、(h)は、大きさの異なる網点を用いることで、ライン式スクリーンコードのシンボルを構成した例であり、(i)、(j)は、互いに位置をずらした網点を用いることで、ライン式スクリーンコードのシンボルを構成した例である。
【図9】図8に示した各シンボルを用いて、ライン式スクリーンコードを構成した例であり、(a)は、図8(c)、図8(d)で示したシンボルを用いて、ライン式スクリーンコードを構成した例であり、(b)は、図8(e)、図8(f)で示したシンボルを用いて、ライン式スクリーンコードを構成した例であり、(c)は、図8(g)、図8(h)で示したシンボルを用いて、ライン式スクリーンコードを構成した例であり、(d)は、図8(i)、図8(j)で示したシンボルを用いて、ライン式スクリーンコードを構成した例である。
【図10】符号長15で構成したライン式スクリーンコードの例である。
【図11】符号長8で構成したライン式スクリーンコードの例である(その1)。
【図12】符号長8で構成したライン式スクリーンコードの例である(その2)。
【図13】符号長16で構成したライン式スクリーンコードの例である。
【図14】本実施形態に係るライン式スクリーンコード生成システムのブロック図である。
【図15】本実施形態に係るライン式スクリーンコードを生成する処理の手順を示すフローである。
【図16】従来例における2進法によって構成した符号の例を示す図であり、(a)は、本従来例における符号語の生成方法を示す図、(b)は、本従来例におけるビット番号の付し方を示した図である。
【図17】図16に示した方法によって生成した符号語を用いて構成した符号の例を示す図である。
【図18】本従来例における符号の最大類似度の算出方法を示した図である。
【図19】図17に示す各符号に関して、すべての組み合わせの距離を示した図である。
【図20】実際に画像に対してライン式スクリーンコードを背景に埋め込んだ画像の例を示す図である。
【符号の説明】
【0089】
1 ライン式スクリーンコード生成装置
2 入力装置
3 データベース
4 画像データ読取装置
5 印刷装置
11 符号生成部
12 類似度処理部
13 シンボル部
14 情報埋込部
15 画像データ取得部
16 階調度解析部
301 分離体網点
302 集合体網点
【特許請求の範囲】
【請求項1】
絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって表される情報を埋め込む情報埋込コードであって、
前記情報埋込コードは、
所定の方法に従って算出した符号語間の最大類似度が、1/2以下であることを特徴とする情報埋込コード。
【請求項2】
絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって表される情報を埋め込む情報埋込コードであって、
前記情報埋込コードは、
所定の方法に従って算出した符号語間の最大類似度が、1/4以下であることを特徴とする情報埋込コード。
【請求項3】
前記最大類似度は、以下に記載する式によって表されることを特徴とする請求項1、または請求項2に記載の情報埋込コード。
情報埋込コードにおいて、Skを符号語、nを符号長、mを符号語数としたとき、前記最大類似度Amaxは、
【数1】
【数2】
と表される。
ここで、d(Sk,Sl)は、符号語SkとSlとの間の距離であり、k,l=0,1,2,・・・,m−1とする。
【請求項4】
前記網点の配列は、網点中のすべてのドット同士が連接している集合体網点、および/または、網点中のドットの内、少なくとも1つが分離している分離体網点からなることを特徴とする請求項1から請求項3のいずれか一項に記載の情報埋込コード。
【請求項5】
前記情報埋込コードは、各符号語中における集合体網点と、分離体網点の数が、すべて同一であることを、特徴とする請求項1から請求項4のいずれか一項に記載の情報埋込コード。
【請求項6】
各符号語における網点の配列において、前記集合体網点、前記分離体網点は異なる変調方式の網点の組み合わせによって情報を表わすことを特徴とする請求項1から請求項5のいずれか一項に記載の情報埋込コード。
【請求項7】
前記情報埋込コードは、埋め込む対象である画像の階調度に応じて、網点中のドットの数を変更することを特徴とする請求項1から請求項6のいずれか一項に記載の情報埋込コード。
【請求項8】
絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって情報を埋め込む情報埋込コード生成方法であって、
前記情報埋込コード生成方法は、
符号語間の類似度の算出を行うステップ、
この類似度が所定の閾値以下であるか否かの判定を行うステップ、
前記類似度が所定の閾値以下であると判定された符号語に、情報を表すための幾何学的図形であるシンボルを対応させることによって情報埋込コードを生成するステップ、
さらに階調度ごとのシンボルを対応させることによって階調度に応じた情報埋込コードを生成するステップ、
情報を埋め込まれる対象である画像データを取得するステップ、
取得した前記画像データの階調度を解析するステップ、
前記画像データに埋め込む情報を情報埋込コードに変換し、さらにこの情報埋込コードを階調度に応じて、画像データに埋め込むステップ、を含んでいることを特徴とする情報埋込コード生成方法。
【請求項9】
絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって情報を埋め込む情報埋込コード生成装置であって、
前記情報埋込コード生成装置は、
画像に埋め込む情報を入力する入力部と、
階調度ごとの情報を表すための幾何学的図形であるシンボルが格納された記憶部と、
符号語間の類似度の算出を行い、この類似度が所定の閾値以下であるか否かの判定を行う類似度処理部と、
前記類似度処理部において類似度が所定の閾値以下であると判定された符号語に、前記記憶部から取得した前記シンボルを対応させることによって情報埋込コードを生成し、さらに前記記憶部から取得した階調度ごとのシンボルを対応させることによって階調度に応じた情報埋込コードを生成するシンボル部と、
情報を埋め込まれる対象である画像データを取得する画像データ取得部と、
取得した前記画像データの階調度を解析する階調度解析部と、
前記入力部を介して入力された画像に埋め込む情報を情報埋込コードに変換し、さらにこの情報埋込コードを階調度に応じて、画像に埋め込む情報埋込部と、を含んで構成されることを特徴とする情報埋込コード生成装置。
【請求項1】
絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって表される情報を埋め込む情報埋込コードであって、
前記情報埋込コードは、
所定の方法に従って算出した符号語間の最大類似度が、1/2以下であることを特徴とする情報埋込コード。
【請求項2】
絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって表される情報を埋め込む情報埋込コードであって、
前記情報埋込コードは、
所定の方法に従って算出した符号語間の最大類似度が、1/4以下であることを特徴とする情報埋込コード。
【請求項3】
前記最大類似度は、以下に記載する式によって表されることを特徴とする請求項1、または請求項2に記載の情報埋込コード。
情報埋込コードにおいて、Skを符号語、nを符号長、mを符号語数としたとき、前記最大類似度Amaxは、
【数1】
【数2】
と表される。
ここで、d(Sk,Sl)は、符号語SkとSlとの間の距離であり、k,l=0,1,2,・・・,m−1とする。
【請求項4】
前記網点の配列は、網点中のすべてのドット同士が連接している集合体網点、および/または、網点中のドットの内、少なくとも1つが分離している分離体網点からなることを特徴とする請求項1から請求項3のいずれか一項に記載の情報埋込コード。
【請求項5】
前記情報埋込コードは、各符号語中における集合体網点と、分離体網点の数が、すべて同一であることを、特徴とする請求項1から請求項4のいずれか一項に記載の情報埋込コード。
【請求項6】
各符号語における網点の配列において、前記集合体網点、前記分離体網点は異なる変調方式の網点の組み合わせによって情報を表わすことを特徴とする請求項1から請求項5のいずれか一項に記載の情報埋込コード。
【請求項7】
前記情報埋込コードは、埋め込む対象である画像の階調度に応じて、網点中のドットの数を変更することを特徴とする請求項1から請求項6のいずれか一項に記載の情報埋込コード。
【請求項8】
絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって情報を埋め込む情報埋込コード生成方法であって、
前記情報埋込コード生成方法は、
符号語間の類似度の算出を行うステップ、
この類似度が所定の閾値以下であるか否かの判定を行うステップ、
前記類似度が所定の閾値以下であると判定された符号語に、情報を表すための幾何学的図形であるシンボルを対応させることによって情報埋込コードを生成するステップ、
さらに階調度ごとのシンボルを対応させることによって階調度に応じた情報埋込コードを生成するステップ、
情報を埋め込まれる対象である画像データを取得するステップ、
取得した前記画像データの階調度を解析するステップ、
前記画像データに埋め込む情報を情報埋込コードに変換し、さらにこの情報埋込コードを階調度に応じて、画像データに埋め込むステップ、を含んでいることを特徴とする情報埋込コード生成方法。
【請求項9】
絵、文字、記号、背景の内、少なくとも1つを印刷する記録媒体に所定の形状の網点の配列である符号語によって情報を埋め込む情報埋込コード生成装置であって、
前記情報埋込コード生成装置は、
画像に埋め込む情報を入力する入力部と、
階調度ごとの情報を表すための幾何学的図形であるシンボルが格納された記憶部と、
符号語間の類似度の算出を行い、この類似度が所定の閾値以下であるか否かの判定を行う類似度処理部と、
前記類似度処理部において類似度が所定の閾値以下であると判定された符号語に、前記記憶部から取得した前記シンボルを対応させることによって情報埋込コードを生成し、さらに前記記憶部から取得した階調度ごとのシンボルを対応させることによって階調度に応じた情報埋込コードを生成するシンボル部と、
情報を埋め込まれる対象である画像データを取得する画像データ取得部と、
取得した前記画像データの階調度を解析する階調度解析部と、
前記入力部を介して入力された画像に埋め込む情報を情報埋込コードに変換し、さらにこの情報埋込コードを階調度に応じて、画像に埋め込む情報埋込部と、を含んで構成されることを特徴とする情報埋込コード生成装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【公開番号】特開2006−319632(P2006−319632A)
【公開日】平成18年11月24日(2006.11.24)
【国際特許分類】
【出願番号】特願2005−139859(P2005−139859)
【出願日】平成17年5月12日(2005.5.12)
【出願人】(504404814)
【Fターム(参考)】
【公開日】平成18年11月24日(2006.11.24)
【国際特許分類】
【出願日】平成17年5月12日(2005.5.12)
【出願人】(504404814)
【Fターム(参考)】
[ Back to top ]