(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-11-21
(45)【発行日】2022-11-30
(54)【発明の名称】システム、画像形成装置、方法およびプログラム
(51)【国際特許分類】
H04N 1/32 20060101AFI20221122BHJP
【FI】
H04N1/32 144
(21)【出願番号】P 2018224904
(22)【出願日】2018-11-30
【審査請求日】2021-09-15
(73)【特許権者】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100110607
【氏名又は名称】間山 進也
(72)【発明者】
【氏名】齋藤 貴之
【審査官】花田 尚樹
(56)【参考文献】
【文献】特開2017-183942(JP,A)
【文献】特開2006-165818(JP,A)
【文献】国際公開第2018/155331(WO,A1)
【文献】特開平11-098344(JP,A)
【文献】特開2009-118144(JP,A)
【文献】特開平10-253544(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/32 - 1/36
1/42 - 1/44
(57)【特許請求の範囲】
【請求項1】
原画像のデータに対応するハッシュ値を生成するハッシュ値生成手段と、
前記原画像に
、前記ハッシュ値を電子透かしデータ
として埋め込
み、電子透かし入り画像データを生成する電子透かし埋込手段と、
前記
電子透かし入り画像データと、該
電子透かし入り画像データに埋め込
まれた前記電子透かしデータと、該電子透かしデータを表すパターンの埋め込み位置と紐付けて記憶する記憶手段と、
印刷物のスキャン画像に含まれる前記パターンを検出し、該パターンをデコードして前記電子透かしデータを取得する電子透かしデコード手段と、
前記スキャン画像から取得した前記電子透かしデータに紐付いた前記
電子透かし入り画像データと該スキャン画像の位置合わせを行う位置合わせ手段と、
前記
電子透かし入り画像データと位置合わせされた前記スキャン画像の差分を抽出する差分抽出手段と
を含み、
前記電子透かし埋込手段は、
前記原画像を複数のブロックに分割し、前記電子透かしデータの各値に対応するパターンを各ブロックに割り当てて埋め込み、
前記位置合わせ手段は、
前記
電子透かし入り画像データに紐付いた前記パターンの埋め込み位置と、前記スキャン画像から検出された前記パターンの検出位置とに基づいて、前記ブロック毎に位置合わせを行う、
システム。
【請求項2】
前記記憶手段は、
前記
電子透かし入り画像データの前記ブロック毎の特徴量を記憶し、
前記位置合わせ手段は、
前記ブロック毎の特徴量を利用して位置合わせを行う、
請求項1に記載のシステム。
【請求項3】
前記位置合わせ手段は、
注目ブロックの周辺ブロックの位置ずれ量を重みとして利用して、該注目ブロックの位置ずれ量を推定する、
請求項1または2に記載のシステム。
【請求項4】
前記位置合わせ手段は、
前記注目ブロックのパターンから誤った値がデコードされた場合に、前記周辺ブロックの重み付けを大きくする、
請求項3に記載のシステム。
【請求項5】
原画像を印刷出力した印刷物の改変を検出する方法であって、
原画像のデータに対応するハッシュ値を生成するステップと、
前記原画像に
、前記ハッシュ値を電子透かしデータ
として埋め込
み、電子透かし入り画像データを生成するステップと、
前記
電子透かし入り画像データと、該
電子透かし入り画像データに埋め込
まれた前記電子透かしデータと、該電子透かしデータを表すパターンの埋め込み位置と紐付けて記憶するステップと、
印刷物のスキャン画像に含まれる前記パターンを検出し、該パターンをデコードして前記電子透かしデータを取得するステップと、
前記スキャン画像から取得した前記電子透かしデータに紐付いた前記
電子透かし入り画像データと該スキャン画像の位置合わせを行うステップと、
前記
電子透かし入り画像データと位置合わせされた前記スキャン画像の差分を抽出するステップと
を含み、
前記
電子透かし入り画像データを生成するステップは、
前記原画像を複数のブロックに分割し、前記電子透かしデータの各値に対応するパターンを各ブロックに割り当てて埋め込むステップを含み、
前記位置合わせを行うステップは、
前記
電子透かし入り画像データに紐付いた前記パターンの埋め込み位置と、前記スキャン画像から検出された前記パターンの検出位置とに基づいて、前記ブロック毎に位置合わせを行うステップを含む、
方法。
【請求項6】
コンピュータを、
原画像のデータに対応するハッシュ値を生成するハッシュ値生成手段と、
前記原画像に
、前記ハッシュ値を電子透かしデータ
として埋め込
み、電子透かし入り画像データを生成する電子透かし埋込手段、
前記
電子透かし入り画像データと、該
電子透かし入り画像データに埋め込
まれた前記電子透かしデータと、該電子透かしデータを表すパターンの埋め込み位置と紐付けて記憶する記憶手段、
印刷物のスキャン画像に含まれる前記パターンを検出し、該パターンをデコードして前記電子透かしデータを取得する電子透かしデコード手段、
前記スキャン画像から取得した前記電子透かしデータに紐付いた前記
電子透かし入り画像データと該スキャン画像の位置合わせを行う位置合わせ手段、
前記
電子透かし入り画像データと位置合わせされた前記スキャン画像の差分を抽出する差分抽出手段、
として機能させるためのプログラムであって、
前記電子透かし埋込手段は、
前記原画像を複数のブロックに分割し、前記電子透かしデータの各値に対応するパターンを各ブロックに割り当てて埋め込み、
前記位置合わせ手段は、
前記
電子透かし入り画像データに紐付いた前記パターンの埋め込み位置と、前記スキャン画像から検出された前記パターンの検出位置とに基づいて、前記ブロック毎に位置合わせを行う、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、システム、画像形成装置、方法およびプログラムに関する。
【背景技術】
【0002】
印刷物の不正な流出や改ざんを防止するために、印刷物に電子透かしデータを埋め込んで印刷する技術が開発されている。電子透かし技術においては、画像を複数の領域に分割し、領域ごとに電子透かしデータを埋め込む技術が知られている。
【0003】
例えば特許第4927058号公報(特許文献1)では、それぞれが2値情報の要素値に対応付けられた複数の単位領域を元画像に設定する単位領域設定部と、複数の単位領域の各単位領域の画素値を各単位領域に対応付けられた要素値に基づいて変換することにより元画像に2値情報を埋め込む単位領域変換部とを備える構成が開示されている。特許文献1によれば、印刷などによる情報の劣化が抑制可能な情報埋込画像を生成することができ、また、情報埋込画像から2値情報を高精度に読み取ることができる。
【0004】
しかしながら、特許文献1では、画像上の特徴量を抽出して、原画像と比較を行うことから、計算量が多くなり、処理に時間がかかるなど、組み込み用途には不向きであった。そのため、印刷物の改ざんを容易に検出できる電子透かし技術が求められていた。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明は、上記従来技術における課題に鑑みてなされたものであり、印刷物の改変を短時間かつ高精度に検出するシステム、画像形成装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
すなわち、本発明によれば、原画像に電子透かしデータを埋め込む電子透かし埋込手段と、前記原画像と、該原画像に埋め込んだ前記電子透かしデータと、該電子透かしデータを表すパターンの埋め込み位置と紐付けて記憶する記憶手段と、印刷物のスキャン画像に含まれる前記パターンを検出し、該パターンをデコードして前記電子透かしデータを取得する電子透かしデコード手段と、前記スキャン画像から取得した前記電子透かしデータに紐付いた前記原画像と該スキャン画像の位置合わせを行う位置合わせ手段と、前記原画像と位置合わせされた前記スキャン画像の差分を抽出する差分抽出手段とを含み、前記電子透かし埋込手段は、前記原画像を複数のブロックに分割し、前記電子透かしデータの各値に対応するパターンを各ブロックに割り当てて埋め込み、前記位置合わせ手段は、前記原画像に紐付いた前記パターンの埋め込み位置と、前記スキャン画像から検出された前記パターンの検出位置とに基づいて、前記ブロック毎に位置合わせを行う、システムが提供される。
【発明の効果】
【0007】
上述したように、本発明によれば、印刷物の改変を短時間かつ高精度に検出するシステム、画像形成装置、方法およびプログラムが提供される。
【図面の簡単な説明】
【0008】
【
図1】本実施形態のシステムのシステム構成を示す図。
【
図3】本実施形態のシステムが実行する処理のデータフローダイアグラム。
【発明を実施するための形態】
【0009】
以下、本発明を、実施形態をもって説明するが、本発明は後述する実施形態に限定されるものではない。なお、以下に参照する各図においては、共通する要素について同じ符号を用い、適宜その説明を省略するものとする。
【0010】
図1は、本発明の実施形態であるシステム100のシステム構成を示す。
図1に示すように、本実施形態のシステム100は、PC10と、ファイルサーバ20と、MFP(Multi-Function Peripheral)30と、改変抽出サーバ40とを含んで構成されており、各装置は、ネットワーク50を介して相互通信可能に接続されている。
【0011】
PC10は、ローカルの記憶手段に保持される文書ファイルの印刷出力をMFP30に命令する情報処理装置である。
【0012】
ファイルサーバ20は、PC10のローカルの記憶手段と同期するストレージを備える情報処理装置であり、PC10側で加えられた文書ファイルへの変更内容がファイルサーバ20側に反映されるように構成されている。
【0013】
MFP30は、プリンタ機能やスキャナ機能などを搭載する複合機として参照される画像形成装置である。
【0014】
改変抽出サーバ40は、ユーザがスキャンした印刷物から改変箇所を抽出する情報処理装置である。
【0015】
以上、本実施形態のシステム100のシステム構成について説明したが、続いて、システム100を構成する各装置の機能構成を
図2に基づいて説明する。
【0016】
PC10は、ハッシュ値生成部12と、電子透かし埋め込み部14とを含む。
【0017】
ハッシュ値生成部12は、ファイルサーバ20から取得した文書ファイルに基づいてハッシュ値を生成する手段であり、生成したハッシュ値を電子透かし埋め込み部14に渡す。
【0018】
電子透かし埋め込み部14は、MFP30に送信するための印刷用データを生成する手段であり、プリンタドライバとして参照することができる。電子透かし埋め込み部14は、文書ファイルから原画像データを生成し、生成した原画像データに、ハッシュ値生成部12から受領したハッシュ値を電子透かしデータとして埋め込む。
【0019】
具体的には、電子透かし埋め込み部14は、原画像データを複数の領域に分割した上で、電子透かしデータを表すパターンを所定の規則に従って各領域に割り当てて埋め込んだ後、これを、例えば、CMYKカラーの印刷用データに変換する。以下では、原画像データに電子透かしデータを埋め込んだ画像データの印刷用データのことを、単に、電子透かし入り画像データという場合がある。
【0020】
電子透かし埋め込み部14は、生成した電子透かし入り画像データをMFP30に送信する。このとき、電子透かし埋め込み部14は、電子透かし入り画像データのコピーと、電子透かしを埋め込んだ位置を示す埋め込み位置情報と、ハッシュ値生成部12から受領したハッシュ値とを紐づけてファイルサーバ20に送信する。すなわち、アクセスキーを、生成したハッシュ値にして、電子透かし入り画像データと埋め込み位置情報をファイルサーバ20に送信する。
【0021】
ファイルサーバ20は、PC10から受信した3つの情報(ハッシュ値、電子透かし入り画像データ、埋め込み位置情報)を紐づけて登録する。そして、ファイルサーバ20は、ハッシュ値をキーとした問い合わせに応答して、ハッシュ値に紐づいた電子透かし入り画像データおよび埋め込み位置情報を返すように構成されている。
【0022】
MFP30は、プロッタ32と、スキャナ34とを含む。プロッタ32は、PC10から受信した電子透かし入り画像データに基づいて電子透かしパターンを含む印刷物(以下、電子透かし入り印刷物という)を印刷出力する。一方、スキャナ34は、ユーザからの要求に応じて、改変された疑いのある印刷物のスキャン画像データを生成する。このとき、MFP30は、生成されたスキャン画像データを改変抽出サーバ40に転送する。
【0023】
改変抽出サーバ40は、電子透かしデコード部42と、ブロックずれ量推定部43と、画像変形部44と、画像差分抽出部45とを含む。
【0024】
電子透かしデコード部42は、MFP30から受領したスキャン画像データから、そこに埋め込まれている電子透かしを検出し、検出した電子透かしをデコードしてハッシュ値を取得する。このとき、電子透かしデコード部42は、取得したハッシュ値と、検出した電子透かしの検出位置を示す情報をブロックずれ量推定部43に渡す。以下では、電子透かしの検出位置を示す情報のことを、単に、検出位置情報という場合がある。
【0025】
ブロックずれ量推定部43は、電子透かしデコード部42から受領したハッシュ値をキーとして問い合わせを行って、ファイルサーバ20から、当該ハッシュ値に紐付いた電子透かし入り画像データおよび埋め込み位置情報を取得し、取得した埋め込み位置情報と、電子透かしデコード部42から受領した検出位置情報を比較することにより、各ブロックの位置ずれ量を推定する。ブロックずれ量推定部43は、ファイルサーバ20から取得した電子透かし入り画像データを画像差分抽出部45に渡すとともに、各ブロックのずれ量の結果を画像変形部44に渡す。
【0026】
画像変形部44は、ブロックずれ量推定部43から受領した各ブロックの位置ずれ量に基づいてスキャン画像データを変形して、原画像データとの位置合わせがなされた補正画像データを生成する。画像変形部44は、生成した補正画像データ(補正済みスキャン画像データ)を画像差分抽出部45に渡す。
【0027】
画像差分抽出部45は、画像変形部44から受領した補正画像データと、ブロックずれ量推定部43から受領した電子透かし入り画像データとを比較して、両画像の差分を抽出し、その結果を、例えば、差分画像として出力する。
【0028】
以上、本実施形態のシステム100を構成する各装置について説明してきたが、続いて、システム100が実行する処理を
図3に示すデータフローダイアグラムに基づいて説明する。
【0029】
まず、
図3の左に示すデータフローダイアグラムに基づいて印刷時に実行される処理を説明する。
【0030】
ユーザは、PC10の記憶手段に保持される文書ファイルについて、電子透かしを埋め込む設定をして印刷を指示する。これを受けて、PC10のハッシュ値生成部12は、当該文書ファイルに基づいてハッシュ値を生成する(S1)。
【0031】
続いて、電子透かし埋め込み部14は、データの頑健さを担保するために、ハッシュ値生成部12が生成したハッシュ値に対して誤り訂正符号化処理(例えば、リード・ソロモン符号)を施して、ハッシュ値を冗長化する(S2)。
【0032】
続いて、電子透かし埋め込み部14は、ファイルサーバ20から取得した文書ファイルから原画像データを生成し、ハッシュ値(正確には、ハッシュ値を冗長化した符号列)を電子透かしデータとして原画像データに埋め込んで電子透かし入り画像データを生成する。(S3)。
【0033】
ここで、S3で実行される電子透かしデータの埋め込み処理を具体的に説明する。
【0034】
まず、原画像データを複数のブロックに分割する。
図4は、分割された原画像データを概念的に示す。
図4に示す例では、原画像データが(a×b)個のブロック(N×M画素)に分割されている。本実施形態では、各ブロックに対して、1ビットのデータを埋め込むので、この場合、最大で(a×b)ビットのデータの埋め込みが可能となる。
【0035】
次に、各ブロックに対して、左上から右下にかけて順番にブロック番号(0、1、…ab-1)を割り振った後、各ブロックに対して、電子透かしデータを構成する2値の符号列の各値に対応するパターン(すなわち、値「0」を表すパターンまたは値「1」を表すパターン)を先頭のブロックから順番に埋め込む。
【0036】
図5は、電子透かしとして各ブロックの中に重畳されるパターンを例示的に示す。ここで、
図5(a)は、符号「0」を表すパターンを示し、
図5(b)は、符号「1」を表すパターンを示す。なお、
図5に示すパターンは、スキャン画像を縮小した縮小画像(後述する)において、マッチングできるようにパターンを記載したものであり、実際の画像には、縮小前のパターンが埋め込まれる。
【0037】
パターンを埋め込む具体的な方法としては、原画像データを構成する画素のうち、パターンを構成する画素を、最大輝度値または最小輝度値の画素で置換する方法や、パターンを構成する画素とその周辺画素の画素値の差をつける方法などが考えられる。
【0038】
【0039】
電子透かし埋め込み部14は、S3で生成した電子透かし入り画像データのコピーと、電子透かしの埋め込み位置情報と、S1で生成されたハッシュ値とを紐づけてファイルサーバ20に登録する。
【0040】
ファイルサーバ20に登録される電子透かしの埋め込み位置情報は、ブロック毎の埋め込み位置情報を含む。各ブロックの埋め込み位置情報は、ブロック番号、パターンの埋め込みの有無、ブロックに割り当てられた符号の値(0または1)、パターンが埋め込まれた位置で構成される。ここで、「パターンが埋め込まれた位置」とは、電子透かし入り画像データの画像座標系上におけるドットパターン(
図5参照)の埋め込み位置の座標を意味する。また、「パターンの埋め込みの有無」とは、埋め込み先の画像の内容によっては、ブロックにパターンを埋め込むことができない場合があるので、そのような場合に、埋め込みをしていない旨を登録しておく趣旨である。
【0041】
その後、電子透かし埋め込み部14は、S3で生成した電子透かし入り画像データをMFP30に送信する。これを受けて、MFP30は、電子透かし入り印刷物を印刷出力する(S4)。
【0042】
なお、別の実施形態では、原画像データを印刷用データに変換した後に、当該印刷用データに電子透かしデータを埋め込むようにしてもよい。
【0043】
以上、印刷時に実行される処理について説明したが、続いて、
図3の右に示すデータフローダイアグラムに基づいて、改変された疑いのある印刷物のスキャン時に実行される処理を説明する。
【0044】
ユーザは、改変された疑いのある印刷物をMFP30の原稿台にセットしてスキャンを指示する。これを受けて、MFP30のスキャナ34がスキャンを実行してスキャン画像データを生成する(S5)。なお、改変された疑いのある印刷物をスキャンするMFP30は、当該印刷物を印刷したMFP30と必ずしも同じである必要はなく、印刷した機器とは異なる別の機器がスキャンする場合もありうる。
【0045】
これを受けて、電子透かしデコード部42は、生成されたスキャン画像データから、そこに埋め込まれている電子透かしパターンを検出し、検出した電子透かしパターンをデコードして電子透かしデータを取得する(S6)。このとき、電子透かしデコード部42は、各ブロックにおいてパターンが検出された位置を検出位置情報としてブロックずれ量推定部43に渡す。ここで、「パターンが検出された位置」とは、スキャン画像データの画像座標系上におけるドットパターンの検出位置の座標を意味する。
【0046】
続いて、電子透かしデコード部42は、S2で用いた誤り訂正符号化方法に準じた復号方法を用いて、S6で得られた電子透かしデータからハッシュ値を抽出する(S7)。
【0047】
これを受けて、ブロックずれ量推定部43は、S7で抽出されたハッシュ値をアクセスキーとして、ファイルサーバ20に問い合わせを行い、当該ハッシュ値に紐付いた電子透かし入り画像データおよび埋め込み位置情報を読み出す(S8)。
【0048】
続いて、ブロックずれ量推定部43は、電子透かし入り画像データとスキャン画像データについて、ブロック毎の位置ずれ量を推定する(S9)。なお、両画像の色表現は異なるため、事前に必要な色変換等の変換処理を施しておく。ブロックずれ量推定部43は、ファイルサーバ20から取得した埋め込み位置情報と、電子透かしデコード部42から受領した検出位置情報に基づいて、以下の手順で、高解像度での位置推定を行う(S9)。
【0049】
まず、パターンが埋め込まれた電子透かし入り画像データのブロックと、パターンが検出されたスキャン画像データのブロックとを、パターン検出点を中心として、サブブロック単位で探索を行って両画像の位置合わせをブロック単位で行う。なお、スキャン画像データのパターンが検出されなかったブロックについては、当該ブロックの周辺ブロックのパターン検出点から推定されるパターン埋め込み位置を中心に探索を行う。
【0050】
続いて、画像変形部44が、S9で推定されたブロックの位置ずれ量に基づいて、S5で取得したスキャン画像データの各画素を適切な画素補完方法(ニアリストネイバー法、バイリニア法、バイキュービック法など)を用いて補完することにより、スキャン画像データを構成する各画素が、電子透かし入り画像データを構成する各画素に一対一で対応付けられるように補正をする。その結果、電子透かし入り画像データとの位置合わせがなされたスキャン画像データを得られる(S10)。
【0051】
これを受けて、画像差分抽出部45は、位置合わせ済みのスキャン画像データと、S8で読み出した電子透かし入り画像データとを比較して、両画像の差分を抽出し、その抽出結果を任意の形式で出力する(S11)。例えば、抽出結果を差分画像として出力した場合、その差分画像から、電子透かし入りの印刷物に対して事後的に加えられた改変部分(改ざんや手書きの文字等)を見て取ることができる。
【0052】
以上、説明したように、本実施形態では、冗長性を持って埋め込まれた電子透かしのパターンを特徴点として利用して電子透かし入り画像データとスキャン画像データの位置合わせを行うため、膨大な計算によって特徴点を抽出してからマッチングを行う従来法と比較して、格段に少ない計算量で信頼性の高いマッチングを行うことができ、その結果、印刷物に加えられた改変を短時間かつ高精度に検出することが可能となる。
【0053】
以上、本発明について実施形態をもって説明してきたが、本発明は上述した実施形態に限定されるものではない。
【0054】
例えば、別の実施形態では、電子透かしの埋め込み時に、各ブロックの埋め込み位置情報に加えて、各ブロックの特徴量(例えば、白画素の含有数など)をファイルサーバ20に登録するようにしてもよい。これにより、マッチングの際に、パターンの埋め込み位置に加えて、予め登録された各ブロックの特徴量を利用することでできるようになり、マッチングの計算量をより低減することが可能となる。
【0055】
また、別の実施形態では、ブロックずれ量の推定時に、注目ブロックの周辺ブロックで推定された位置ずれ量を重みとして利用して、注目ブロックの位置ずれ量を推定するようにしてもよい。また、この場合、パターンが誤った値にデコードされたブロックのマッチッングを行う際に、周辺ブロックの重み付けを大きくするようにしてもよい。
【0056】
また、別の実施形態では、電子透かしデータをデコードした後に、再度、画像への電子透かし埋め込み時と同様の符号化を行うことで、各ブロックに埋め込まれたデータを取得し、各ブロックの電子透かしの埋め込み位置を検知するようにしてもよい。
【0057】
また、上述した実施形態で説明した電子透かしのアルゴリズム(すなわち、
図5に示したパターン、符号をブロックに割り当てる規則、符号を読み取る規則など)は一つの例であり、パターンの復号性が損なわれにくい頑健性を備えた、他の適切なアルゴリズムを採用してもよい。
【0058】
また、
図2に示した各機能部は、上述した処理の実行に支障がない限り、適宜、統合または分散するなどして、その配置を変更しても構わない。具体的には、改変抽出サーバ40の機能をファイルサーバ20に統合した態様、改変抽出サーバ40の機能をMFP30に統合した態様、ファイルサーバ20の機能をMFP30に統合した態様、改変抽出サーバ40の機能とファイルサーバ20の機能をPC10に統合した態様などが可能である。
【0059】
その他、当業者が推考しうる実施態様の範囲内において、本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【0060】
なお、上述した本発明の実施形態の各機能は、適切なプログラム言語で記述されたプログラムをコンピュータに実行させることで実現でき、本実施形態のプログラムは、任意の記録媒体に格納して頒布することができ、また、ネットワークを介して伝送することができる。
【符号の説明】
【0061】
10…PC
12…ハッシュ値生成部
14…電子透かし埋め込み部
20…ファイルサーバ
30…MFP
32…プロッタ
34…スキャナ
40…改変抽出サーバ
42…電子透かしデコード部
43…ブロックずれ量推定部
44…画像変形部
45…画像差分抽出部
50…ネットワーク
100…システム
【先行技術文献】
【特許文献】
【0062】