説明

二次元コードを取り扱い可能な装置

【課題】 毎回打ち直される二次元コードを含む印刷出力物を、二次元コードを含めて画像データの同一性を比較すると、判定精度が落ちるという問題がある。
【解決手段】 読み取ったページ全体の画像データを比較対象とはせず、二次元コードエリアを除いた部分の画像データで比較を行う。これにより、より精度の高い画像同一性の判定結果が得られる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、二次元コードを取り扱うことの出来る装置、方法及びプログラムに関するものである。
【背景技術】
【0002】
近年、紙媒体に対するセキュリティ対策として、誰が印字した印刷出力物かを特定し追跡を行うために、文書を印刷する際、文書を印刷したユーザ情報を紙に印字すること事が知られている。
【0003】
ここで、ユーザ情報を紙に印字する方法として、例えば可視二次元コードが想定されている。
【0004】
一方、サーバなどに画像データそのものや画像データに関する情報を保持しておき、それらとスキャンした画像を比較して、同一画像かどうかを検知する技術も知られている。
【0005】
同一性の判断手法として、例えばハッシュ値を用いた画像データの比較が想定されている。
【0006】
ここで、特許文献1では、文書が改竄されたかどうかを検知する時に、特徴情報埋め込み技術を用いて埋め込まれた情報を、改竄検知の判定対象から除くシステムが開示されている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2007-158946号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
ユーザ情報を埋め込む二次元コードは、ユーザ情報を更新するため、印刷される度に新しく付加され直す前提がある。つまり、同じ原稿であっても、スキャンした人が異なると異なる二次元コードが埋め込まれた印刷出力物となる。
【0009】
このような印刷出力物を、二次元コードを含めて画像データの同一性を比較すると、判定精度が落ちるという課題があった。
【課題を解決するための手段】
【0010】
印刷物を読み取った結果から二次元コードを検知する検知手段(S1002)と、
前記検知手段で二次元コードが検知された場合は、印刷物を読み取った結果から予め決められた領域の画像データを生成する画像データ生成手段(S1004、S1011)と、
前記検知手段で検知した二次元コードに含まれる情報を得るデコード手段(S1003)と、
前記画像データ生成手段で生成された画像データと、前記デコード手段で得た情報を関連付けて登録する記憶手段(S1013)と、
前記画像データ生成手段で生成した画像データと、前記デコード手段で得た情報から比較するべき画像データとを比較する同一性判断手段(S1006)とを有する装置であって、
前記同一性判断手段で画像が同一でないと判断された場合は、生成した画像データを前記記憶手段に保存する事を特徴とする装置。
【発明の効果】
【0011】
本発明によれば、毎回打ち直される二次元コードを含む画像の同一性判定において、判定精度が高い装置、方法及びプログラムを提供する事が出来る。
【図面の簡単な説明】
【0012】
【図1】一実施形態におけるシステム構成例を示す図である。
【図2】一実施形態における二次元コードに含まれるタグ情報を示す図である。
【図3】一実施形態におけるタグ情報を二次元コードとした図である。
【図4】一実施形態における二次元コードエリアを示す図である。
【図5】一実施形態における画像データエリアを示す図である。
【図6】一実施形態における処理のフローチャートを示す図である。
【発明を実施するための形態】
【0013】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【0014】
[実施例1]
図1は、実施例1のシステム構成を示す図である。システム100は、PC(Personal Computer)101、MFP(Multifunction Peripheral)102、イメージサーバ103を備える。各構成はネットワーク106を介して接続されている。
【0015】
尚、MFP102は、プリンタ等の他の画像形成装置に置き換えても良い。当該画像形成装置は、画像をメモリ上あるいは紙上に形成できるものであれば何でもよい。MFP102には、図示していないが、画像読み取り部、画像解析部、画像形成部、プリンタエンジン部、操作部、表示部、通信部、記憶部、及び制御部を備える。
【0016】
画像形成装置であるMFP102は画像の入出力機能を有するものであり、紙原稿の入力および紙への印刷出力を行うものである。入力した画像は、デジタルデータとしてネットワーク106を介して、イメージサーバ103への保存や他の画像形成装置への転送などが可能である。また、パーソナルコンピュータであるPC101からのプリントデータや、他の画像形成装置からの画像データを受信し、紙への印刷出力も可能である。
【0017】
イメージサーバ103は、ネットワーク106を通じてMFP102から送られてくる画像データを記憶手段(HDD、メモリ等)に登録し、格納するサーバである。
【0018】
また、イメージサーバ103は、MFP102から送られてきた画像データと、イメージサーバ103内の不図示の記憶手段(HDD、メモリ等)に格納されている画像データとを比較して、画像同一性を判断する事が出来る。
【0019】
MFP102の画像読み取り部で読み取る原稿107には、画像と、原稿107に関する情報が含まれた二次元コード108が印字されている。この二次元コード108に含まれる情報に関して、以下詳細に説明していく。
【0020】
原稿107上に印字される二次元コード108に含まれる情報には、まず、その原稿がコピー禁止か、コピー許可か、パスワードやログインユーザなど条件付きコピー許可かといった原稿のセキュリティに関する情報がある。この情報を、以降、セキュリティ情報という。なお、セキュリティ情報は、コピー許可/不許可に関する情報に限られず、原稿のセキュリティに関する情報であれば何でも良い。例えば、スキャン許可/不許可に関する情報や、外部への送信の許可/不許可に関する情報や、MFP102内部のメモリ等への格納の許可/不許可に関する情報などもセキュリティ情報に含まれ得る。
【0021】
ここで、セキュリティ情報には、セキュリティに関するレベルの違いを表すセキュリティレベルが事前に定められている。例えば、コピー禁止のセキュリティレベルは、コピー禁止、条件付きコピー許可、コピー許可の順で徐々にコピー禁止度が低くなる。
【0022】
次に、誰が印刷出力物の出力(作成)を指示したのかを追跡するのに必要な情報がある。この情報を、以降、追跡情報という。なお、原稿がスキャン対象である紙なのに対して、印刷出力物は、何らかの情報が印字された紙である。印刷出力物がスキャン対象になった場合には、原稿=印刷出力物となるため、両者の間に実質的な違いは無い。
【0023】
この追跡情報には、例えば、印刷出力物の出力を指示したユーザのユーザ名(User Name)と、画像形成装置のシリアル番号(Serial No.)と、印刷出力物の出力時刻(Time)と、画像形成装置の生産会社名(Vendor)が含まれている。
【0024】
ユーザ名だけでなく上記他の情報も、誰が印刷出力物の出力を指示したのかを追跡するのに間接的に役立つことがある為、これらの情報も、追跡情報という単語の意味の中に本実施例等では含まれている。
【0025】
本実施例等においては、二次元コードに含まれる情報としては、この2種類がある。さらに、これらの2種類の情報を一つずつ含む(つまり合計で2つの情報を含む)ことができる二次元コードのサイズは規定されているものとする。
【0026】
そして、この規定サイズの二次元コードに限って、本実施例等では二次元コードとして検出する。
【0027】
また、原稿画像と規定サイズの二次元コードを合成する場所は、予め決められた領域になる。例えば紙の端部から5cm以内の領域に規定サイズの二次元コードは合成されることになる。
【0028】
二次元コードは決められた領域いっぱいのサイズで合成されるのではなく、規定サイズの二次元コードが決められた領域内に収まる様に、合成される。
【0029】
ここで、二次元コードが合成される領域について、図4と図5を用いて説明する。図4の4隅に点線で囲われた4つの領域を示した。そのうち、右下の領域には、実際に二次元コードを合成してある。以後、これら点線で囲われた4つの領域を、二次元コードエリアと呼ぶ。
【0030】
一方、図5には、二次元コードエリアを除いた領域を示している。以後、この領域を画像エリアと呼ぶ。
【0031】
また、ここで本実施例におけるデコード、エンコードという言葉の定義について、図2と図3とを用いて説明する。
【0032】
図2は、二次元コードに含まれた情報を示す図である。例えば、「コピー許可」を示すセキュリティ情報は、「Security: copy_ok」というタグ形式の命令情報として二次元コードに含まれている。
【0033】
図3は、図2に示すタグ形式の命令情報をコード化した二次元コードである。
【0034】
デコードとは、例えば一次元コード、二次元コード、電子透かし等のコードから、情報(例えば、図2に示された情報)を抽出する事を表し、エンコードとは、コードに含まれた情報から、図3に示すようなコードを生成する事を表す。
【0035】
以上が、本実施例におけるデコードとエンコードの定義である。
【0036】
尚、本実施例等では、二次元コードの場合を中心に処理の説明を行うが、二次元コード以外のコード、例えば一次元コード、電子透かし等に対しても上記処理が適用可能なことは、当業者であれば容易に理解できよう。
【0037】
次に、図6のフローチャートを参照して、実施例1におけるシステム100の処理フローを説明する。なお、以下に説明する装置が行う処理は、装置が備える制御部による制御により行われる。
【0038】
ステップS1000では、MFP102にユーザがログインするときにユーザ認証が行われる。MFP102は、ログインユーザを特定する情報を不図示のデータサーバにアクセスして取得し、MFP102内の不図示の記憶手段(HDD、メモリ等)に格納する。この格納により、MFP102へのログインが完了する。
【0039】
ここで、データサーバとは、PC101やMFP102と電気的に接続されているログイン管理サーバのことである。
【0040】
MFP102へのログインが完了したら、ステップS1001に進む。
【0041】
ステップS1001では、MFP102にログインしたユーザは、不図示のMFP102読み取り部に原稿を置き、不図示のMFP102の操作部をキー操作する。MFP102は、ユーザが操作部のスタートボタンを押下したことを検知して、原稿のスキャンを開始する。原稿をスキャンする事により、MFP102は画像データを取得する。
【0042】
ここで、画像データは、MFP102が印刷画像データに変換できる形式であればなんでもよい。MFP102は、画像データを取得すると、不図示の記憶手段(HDD,メモリ等)に格納する。
【0043】
画像データを取得したら、ステップS1002に進む。
【0044】
ステップS1002では、ステップS1001で取得した画像データの中に二次元コードがないかどうかを判断する。
【0045】
ステップS1002で二次元コードが検出されなければ、ステップS1011に進む。
【0046】
ステップS1002で二次元コードが検出された場合、ステップS1003に進み、二次元コードのデコードを行う。
【0047】
デコードにより、MFP102は二次元コードに含まれていた情報を取得する。二次元コードから取得できる情報は、セキュリティ情報、追跡情報の2種類である。
【0048】
MFP102は、上記情報を取得すると、不図示の記憶手段(HDD,メモリ等)に格納する。
【0049】
ステップS1004では、原稿画像に含まれる二次元コードの存在する領域を白塗りし、二次元コードを削除する。これにより、画像エリアのみの画像データを生成出来る。
【0050】
なお、二次元コードの存在する領域を白塗りするとは、領域内の各画素の画素値を0(各画素を白)にする事を、本実施例等では意味するものとする。
【0051】
MFP102は、画像エリアのみの画像データ(以降画像エリアデータ)を生成し、不図示の記憶手段(HDD,メモリ等)に格納する。
【0052】
ステップS1005では、不図示の記憶手段(HDD,メモリ等)にステップS1004で格納した画像エリアデータと、ステップS1003で格納した追跡情報をイメージサーバ103に送信する。
【0053】
イメージサーバ103は、送られてきた画像エリアデータと追跡情報から、イメージサーバ103内の不図示の記憶手段(HDD、メモリ等)に格納されている画像データから比較対象となる画像エリアデータを選択する。
【0054】
そしてステップS1006に進み、二つの画像エリアデータを比較して、画像が同一かどうかを判断する。
【0055】
画像同一性を判断する手法としては、例えばハッシュ値を取得して比較する手法が知られている。
【0056】
しかし、複数の画像が同一かそうでないか判断する手法であればこれ以外の手法であっても、本発明の処理が行える事は、当業者であれば容易に理解出来よう。
【0057】
ステップS1006で画像エリアデータが同一であった場合はステップS1007に進む。ステップS1006で画像エリアデータが同一でなかった場合はステップS1013に進む。
【0058】
ステップS1007では、画像エリアデータは既にイメージサーバ103に登録されているので、今回S1005で送信した画像エリアデータは破棄する。
【0059】
ステップS1008に進み、MFP102は、不図示の記憶手段(HDD,メモリ等)にステップS1000で格納したログインユーザ情報と、ステップS1003で格納したセキュリティ情報、追跡情報とを、新たに二次元コードとしてエンコードする。
【0060】
次にステップS1009に進み、ステップS1004で生成した画像エリアデータにステップS1008で生成した二次元コードを付加して画像データを生成する。この時、二次元コードを付加する位置は、二次元コードエリアのいずれかである。
【0061】
一方、ステップS1002で二次元コードを検出できなかった場合は、ステップS1011に進む。そして、MFP102は、画像エリアデータを生成し、不図示の記憶手段(HDD,メモリ等)に格納する。
【0062】
ステップS1012では、ステップS1011で生成し記憶手段に格納した画像エリアデータをイメージサーバ103に送信する。
【0063】
次に、ステップS1013で、イメージサーバ103は、受信した画像エリアデータをイメージサーバ103内の不図示の記憶手段(HDD、メモリ等)に格納する。
【0064】
最後にMFP102は、ステップS1009で生成した画像データを印刷出力物として出力する。
【0065】
以上の処理フローにより、毎回打ち直される二次元コードを含む画像の同一性判定において、判定精度が高い装置、方法及びプログラムを提供する事が可能となる。
【0066】
図6に示すフローチャートにおける各ステップの処理は、MFP102内のCPUにより統括的に制御される事で実行可能となる。
【0067】
また、本発明の目的は、上記実施例等で示したフローチャートの手順を実現するプログラムコードを記憶した記憶媒体から、コンピュータがそのプログラムコードを読み出し実行する事によっても達成される。
【0068】
この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現する事になる。そのため、このプログラムコードやプログラムコードを記憶した記憶媒体も本発明を構成することができる。
【0069】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いる事が出来る。
【符号の説明】
【0070】
101 PC
102 MFP
103 イメージサーバ
106 ネットワーク
107 原稿
108 二次元コード


【特許請求の範囲】
【請求項1】
印刷物を読み取った結果から二次元コードを検知する検知手段(S1002)と、
前記検知手段で二次元コードが検知された場合は、印刷物を読み取った結果から予め決められた領域の画像データを生成する画像データ生成手段(S1004、S1011)と、
前記検知手段で検知した二次元コードに含まれる情報を得るデコード手段(S1003)と、
前記画像データ生成手段で生成された画像データと、前記デコード手段で得た情報を関連付けて登録する記憶手段(S1013)と、
前記画像データ生成手段で生成した画像データと、前記デコード手段で得た情報から比較するべき画像データとを比較する同一性判断手段(S1006)とを有する装置であって、
前記同一性判断手段で画像が同一でないと判断された場合は、生成した画像データを前記記憶手段に保存することを特徴とする装置。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−37643(P2013−37643A)
【公開日】平成25年2月21日(2013.2.21)
【国際特許分類】
【出願番号】特願2011−175507(P2011−175507)
【出願日】平成23年8月11日(2011.8.11)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】