JP2011130213A - Information processing apparatus and image verifying device, and control method thereof - Google Patents
Information processing apparatus and image verifying device, and control method thereof Download PDFInfo
- Publication number
- JP2011130213A JP2011130213A JP2009286962A JP2009286962A JP2011130213A JP 2011130213 A JP2011130213 A JP 2011130213A JP 2009286962 A JP2009286962 A JP 2009286962A JP 2009286962 A JP2009286962 A JP 2009286962A JP 2011130213 A JP2011130213 A JP 2011130213A
- Authority
- JP
- Japan
- Prior art keywords
- verification
- input
- image data
- image
- pixel
- 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.)
- Withdrawn
Links
Images
Abstract
Description
本発明は、画像データの原本性を保証する技術に関するものである。 The present invention relates to a technique for guaranteeing the originality of image data.
保険会社や建設会社では、事故現場や建築現場の進捗等を証拠写真として銀塩カメラを利用してきたが、これに代えてデジタルカメラを利用することが考えられている。しかし、デジタルカメラで得られたデジタル画像データは、PC用の市販のフォトレタッチツール等を用いて容易に改竄することができてしまうため、デジタルデータの信頼性は従来の銀塩写真と比較して低く、証拠としての能力に乏しいという課題がある。このような課題を解決する方法として、特許文献1に開示されているような方法が提案されている。この文献には、予めデジタルカメラ内部に秘密情報を組み込んでおき、撮影して得られたデジタル画像データに、その秘密情報を用いて署名処理を施すことが開示されている。撮影後、生成された署名情報を用いて検証処理を行うことにより、撮影画像データの原本性保証が可能となる。
Insurance companies and construction companies have used silver halide cameras as evidence photographs of the progress of accident sites and construction sites, but it is considered to use digital cameras instead. However, the digital image data obtained with a digital camera can be easily tampered with using a commercially available photo retouching tool for PCs, etc. Therefore, the reliability of digital data is higher than that of conventional silver salt photographs. The problem is that it is low and the ability as evidence is poor. As a method for solving such a problem, a method as disclosed in
一方、デジタルカメラなどの映像入力装置では、CMOS、CCD等の撮像素子により被写体光学像を光電変換して得られた撮像画像の電気信号をAD変換することにより、デジタルデータに変換する。そして、デジタルデータに変換した画像データ(以降ではRAW画像データと呼ぶ)に様々な画像再現処理を行う。画像再現処理の例としては、ガンマ補正処理、コントラスト補正処理、ホワイトバランス補正処理などが含まれる。特に、最近のデジタルカメラでは、前述したようなRAW画像データを(画像処理することなく)出力するような動作モードを備える装置もある。こうしたデジタルカメラでは、ユーザがRAW画像データをPC等に転送し、PC上のアプリケーションを用いて、所望の画像処理を施すことにより画像再現処理をしている。これにより、ユーザ自身がユーザの好みに応じた画像を再現することが可能になっている。 On the other hand, in a video input device such as a digital camera, an electrical signal of a captured image obtained by photoelectrically converting a subject optical image by an image sensor such as a CMOS or CCD is converted into digital data by AD conversion. Then, various image reproduction processes are performed on the image data converted to digital data (hereinafter referred to as RAW image data). Examples of image reproduction processing include gamma correction processing, contrast correction processing, white balance correction processing, and the like. In particular, some recent digital cameras have an operation mode that outputs RAW image data as described above (without image processing). In such a digital camera, a user transfers RAW image data to a PC or the like, and performs image reproduction processing by performing desired image processing using an application on the PC. Thereby, the user himself / herself can reproduce an image according to the user's preference.
しかしながら、特許文献1に記載の方式は、前述したようなRAW画像データに対する画像再現処理は考慮されていない。つまり、デジタルカメラ内部においてRAW画像データに対して署名を施し、その後、PCにおいて画像再現処理を実行した場合、署名の検証に失敗してしまう。即ち、特許文献1に記載の方式によれば、悪意を持って行う改竄ではない画像再現処理を施した場合でも、改竄であると判定されてしまうため、画像再現処理された画像データの原本性を保証することが困難である。
However, the method described in
本発明はかかる問題点に鑑みなされたものである。そして、ガンマ補正処理、コントラスト補正処理、及びホワイトバランス補正処理などのような画像再現処理が施された画像データの原本性を保証することが可能な技術を提供しようとするものである。 The present invention has been made in view of such problems. Then, it is intended to provide a technique capable of guaranteeing the originality of image data subjected to image reproduction processing such as gamma correction processing, contrast correction processing, and white balance correction processing.
この課題を解決するため、例えば本発明の情報処理装置は以下の構成を備える。すなわち、
画像データの原本性を保証するための検証データを、前記画像データから生成する情報処理装置であって、
原本性の保証対象とする画像データを入力する画像入力手段と、
該画像入力手段によって入力された前記画像データ内に実在する画素値の中で、非実在の画素値との差が予め設定された閾値以下となる画素値を検出し、検出に成功したか否かを示す情報、及び、検出に成功した場合には検出に成功した画素値を有する画素の位置を特定する情報とを第1の検証対象情報として生成する第1の生成手段と、
前記画像入力手段によって入力された前記画像データから、予め設定された乱数にしたがってN画素(Nは2以上の整数)を選択する度に、選択したN画素中の第1乃至第Nの画素の各画素値の大小関係を特定する情報を第2の検証対象情報として生成する第2の生成手段と、
前記第1の検証対象情報、及び、前記第2の検証対象情報を用いて、前記画像入力手段によって入力された前記画像データの検証データを生成する検証データ生成手段と、
該検証データ生成手段で生成された検証データを、前記画像入力手段によって入力された前記画像データと共に出力する画像出力手段とを備える。
In order to solve this problem, for example, an information processing apparatus of the present invention has the following configuration. That is,
An information processing apparatus for generating verification data for assuring the originality of image data from the image data,
Image input means for inputting image data to be guaranteed for originality;
Whether the pixel value that is different from the non-existent pixel value is less than or equal to a preset threshold value among the actual pixel values input in the image data input by the image input unit and has been detected successfully First generation means for generating, as first verification target information, information indicating whether or not, and information for specifying a position of a pixel having a pixel value that has been successfully detected when detection is successful;
Each time N pixels (N is an integer of 2 or more) are selected from the image data input by the image input unit according to a preset random number, the first to Nth pixels of the selected N pixels are selected. Second generation means for generating, as second verification target information, information specifying the magnitude relationship of each pixel value;
Verification data generation means for generating verification data of the image data input by the image input means using the first verification target information and the second verification target information;
Image output means for outputting the verification data generated by the verification data generation means together with the image data input by the image input means.
本発明によれば、ガンマ補正処理、コントラスト補正処理、及びホワイトバランス補正処理などの影響が少ない検証データを生成するので、これらの画像処理を、原本性の保証の妨げの要因から除外することが可能になる。 According to the present invention, verification data with less influence such as gamma correction processing, contrast correction processing, and white balance correction processing is generated. Therefore, it is possible to exclude these image processing from factors that hinder the guarantee of originality. It becomes possible.
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。 Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
[第1の実施形態]
<システム全体構成の説明>
はじめに、本実施形態におけるシステムの全体構成例を図1に示す。本実施形態におけるシステムは、画像入力装置11及び画像検証装置12から構成される。
[First Embodiment]
<Description of overall system configuration>
First, an example of the overall configuration of the system in this embodiment is shown in FIG. The system in the present embodiment includes an
図中、画像入力装置11は、原本性の保証対象の画像データを発生し、発生した画像データを出力する。特に、本実施形態においては、その画像データに加え、当該画像データが改竄されているか否か、言い換えれば原本性を保証するための検証データを生成し、画像データと共に出力する。また、本実施形態においては、画像入力装置11内部のCMOS、CCD等の撮像素子により被写体光学像を光電変換して得られた撮像画像の電気信号をAD変換した画像データ(以降では、RAW画像データと呼ぶ)を画像処理することなく出力するものとする。RAW画像データの詳細は後述する。画像検証装置12は、前段の画像入力装置11から入力された画像データが改竄されているか否かを検証し、検証結果を出力する。画像入力装置11、及び、画像検証装置12はインターネットなどのネットワークによって接続しておき、各種データを交換可能にしておいても良い。或いは、出力時に各種データをリムーバブルメディアなどの記憶媒体に記録し、各種データを交換するようにしても良い。
In the figure, an
<画像入力装置の基本構成>
次に、図2(A)を用いて、本実施形態に適応可能な画像入力装置11について説明する。図2(A)は本実施形態に適応可能な画像入力装置11の基本構成を示す図である。図2(A)に示すように本実施形態における画像入力装置11は、ROM21、保管用メモリ22、作業用メモリ23、CPU24、操作部25、光学系26、駆動部27、及びI/F28から構成され、夫々はバス29で接続されている。
<Basic configuration of image input device>
Next, the
画像入力装置11は、例えば一般に普及しているデジタルカメラ等の撮像装置であり、操作部25を用いて撮影指示がなされた際、光学系26により生成されたデジタル画像データを保管用メモリ22などへ蓄積することが可能である。図中、ROM21は読み出し専用メモリであり、あらかじめ動作プログラムや検証データ生成に必要な共有情報が格納される。保管用メモリ22は処理済の画像データを格納する。作業用メモリ23では画像データが一時的に保管され、ここで該画像データの圧縮及び各種演算処理が行われる。CPU24は撮影指示がなされると、ROM21にあらかじめ格納されているプログラムに従い、画像データの圧縮処理、検証データ生成等の各種演算処理を行う。操作部25は撮影者の撮影指示、及び種々のパラメータの設定をはじめとする各種の指示を受け付けるためのユーザインターフェイスである。光学系26は電荷結合素子CCD、或いは相補型金属酸化物半導体CMOS等の光学センサーを含み、撮影指示がなされると被写体の撮影、電気信号処理、デジタル信号処理等を行う。駆動部27は撮影に必要な機械的な動作(フォーカスレンズやズームレンズの移動)をCPU24の制御のもとで行う。I/F28はメモリカード、携帯端末、通信装置といった外部装置とのインタフェースであり、画像データや検証データをこれらの機器へ送信する時に使用される。
The
<ホストコンピュータの基本構成>
次に、図3(A)を用いて、本実施の形態に適応可能な画像検証装置12について説明する。図3(A)は本実施形態に係る画像検証装置12として機能するホストコンピュータの基本構成を示すと共に、その周辺機器との関係を示す図である。ホストコンピュータは、一般に普及しているパーソナルコンピュータである。
<Basic configuration of host computer>
Next, the
ホストコンピュータ12は、種々の情報を表示するモニタ32、ホストコンピュータ12内の各部の動作を制御、或いはRAM35にロードされたプログラムを実行することのできるCPU33、BIOSやブートプログラムを記憶しているROM34を有する。また、ホストコンピュータ12は」CPU33にて処理を行うために一時的にプログラムや処理対象の画像データを格納しておくRAM35を有する。RAM35には、OS(オペレーティングシステム)やCPU33が後述の各種処理を行うためのプログラムがロードされることになる。また、ホストコンピュータ12は、RAM35等に転送されるOSやプログラムを格納したり、装置が動作中に画像データを格納したり、読出すために使用されるハードディスク(HD)36を有する。また、他の外部記憶装置として、CD−ROM(CD−R、CD−R/Wなど)ドライブ37、FD(フロッピー(登録商標))ドライブ38、DVDドライブも設けられている。尚、CD−ROM、FD、DVD−ROM等に画像処理用のプログラムが記憶されている場合には、これらプログラムをHD36にインストールし、必要に応じてRAM45に転送されるようになっている。
The
また、ホストコンピュータは、ネットワークインタフェースカード(NIC)310を接続するインタフェース311、マウス等のポインティングデバイス312、キーボード313を接続するインタフェース314を有する。NIC310を接続することで、本装置を、インターネットなどのネットワークに接続することができる。また、RAM35、HD36、CD−ROM37、FD38、DVD39などに記憶されている画像データをネットワークに送信することも可能となる。更には、ネットワークから画像データを受信することも可能になる。そして、上記各構成ユニットは、システムバス315を介して互いに接続されている。
The host computer also has an
上記構成において、ホストコンピュータは、HD36、CD37、FD38、及びDVD39などに蓄積したり、或いは蓄積されている画像データ等をモニタ32に表示したりすることが可能である。更に、これらの画像データは、NIC310などを用いることによってインターネットなどを介して配布、逆に、取得することが可能である。また、ユーザからの各種指示等は、ポインティングデバイス312、及びキーボード313からの入力により行われる。ホストコンピュータ12の内部では、バス315により後述する各ブロックが接続され、種々のデータの受け渡しが可能である。
In the above configuration, the host computer can store in the
<画像入力装置の構成>
以下、図2(B)を用いて本実施の形態に適用される画像入力装置11の機能構成を説明する。なお、以下の説明では、画像入力装置11に電源が投入され、OSが作業用メモリ23にロードされている場合である。尚、本発明はこれに限定されることなく、前述したホストコンピュータ12によって実行するようにしても良い。この場合、各処理部は、該当するプログラム及びそれを実行するCPU33、場合によっては周辺のハードウェアでもって実現することになる。
<Configuration of image input device>
Hereinafter, the functional configuration of the
図2(B)に示すように、本実施形態における画像入力装置11は、画像発生部210、境界情報算出部211、順序情報算出部212、検証データ生成部213、及び画像出力部214から構成される。なお、ここで説明する画像入力処理はソフトウェア処理により実現されてもよい。その場合には、上記各部は上記処理に必要な機能を概念的なものとして捉えたものと考慮されるべきものである。
As shown in FIG. 2B, the
画像発生部210は、光学系26により、CMOS(相補型金属酸化物半導体)、或いはCCD(電荷結合素子)などの光学センサー、及び光学系を制御するマイクロプロセッサなどを有する。画像発生部210は、光学系、及び光学センサーによって生成されたビデオ信号をイメージ情報として取得し、画像データIを形成する。画像発生部210で発生した画像データIは後段の境界情報算出部211、順序情報算出部212、及び画像出力部214へ供給される。境界情報算出部211は、前段の画像発生部210より供給された画像データIを入力し、その画像データIから境界情報Bを生成し、出力する。
The
ここで本実施形態における境界情報算出部211の詳細について図4を用いて説明する。図4に示すように本実施形態における境界情報算出部211は、画像構成画素抽出部41、境界画素抽出部42、及び、境界情報抽出部43から構成される。画像構成画素抽出部41は、入力した画像データIから画像構成画素Cを抽出し、境界画素抽出部42へ出力する。ここで、入力された画像データを構成する画素値のことを画像構成画素値と定義し、画像構成画素値の集合を画像構成画素Cとする。画像構成画素抽出部41は、例えばラスタスキャン順に画像データIの画像構成画素値を抽出し、その画像構成画素値の集合を画像構成画素Cとして境界画素抽出部42へ出力する。ここで、図5を用いて画像構成画素Cの抽出について説明する。図5において、画像データ51は画像構成画素Cの抽出対象である画像データIであり、それぞれの格子は画素を示す。また、左上の画素からラスタスキャン順に、図5の参照符号52のように割り当てる。画像データIの画素は、C(0)=4、C(1)=5、C(2)=3、・・・、C(33)=253、C(34)=255、C(35)=255となる。ここで、画像データ51を抽出対象の画像データとし、画像構成画素Cを抽出する。ラスタスキャン順に画像データ51を構成しているすべての画素を洗い出すと画像データ51が、画素値0、1、2、3、4、5、200、250、251、252、253、254、255で構成されていることがわかる。従って、画像データI51の画像構成画素Cは、画像構成画素Cを構成する画像構成画素値の数が13、その画像構成画素値は0、1、2、3、4、5、200、250、251、252、253、254、255となる。結果として、図5の画像構成画素C53が抽出され、境界画素抽出部42に出力する。つまり、画像構成画素C53は、着目ブロック内に出現する色数と、各色の画素を連結したものと言える。ここでは、ラスタスキャン順に画像データIを構成する画素値を確認していたが、例えば画像を構成しうる画素値(0〜255)が画像データIに含まれているかどうかを順に検査してもよい。また、以降では説明の便宜上、画像データIを構成しない画素値を欠落画素値と定義する。例えば、前述した例における画像データI成分の欠落画素値は、6、7・・・199、201、202、・・・、248、249となる。以上、本実施形態における画像構成画素抽出部41の詳細について説明した。
Details of the boundary
境界画素抽出部42は、前段の画像構成画素抽出部41で抽出した画像構成画素Cを入力し、その画像構成画素Cから境界画素Kを抽出し、境界情報抽出部43へ出力する。ここで、画像構成画素Cに含まれる各画像構成画素値に最小精度を加算、或いは減算したどちらかの値が欠落画素値になるものを境界画素値と定義し、境界画素値の集合を境界画素Kとする。本実施形態では、画素値の最小精度を1として説明する。本実施形態では、画素値の最小精度を1としたが、例えば最小精度が1以下の表現が可能なTIFFフォーマットなどの場合は、これに限定されることはない。以下、境界画素抽出部42の処理の詳細を説明する。
The boundary
境界画素抽出部42は、まず前段の画像構成画素抽出部41で抽出した画像構成画素Cに含まれる各画像構成画素値に対して、画素値の最小精度である1を加算し、加算後の値が、前段の画像構成画素抽出部41で抽出した画像構成画素Cに含まれているかどうかを検査する。検査の結果、加算後の値が、画像構成画素Cに含まれていない場合(つまり、欠落画素値になる場合)は、加算前の画像構成画素値を境界画素値として抽出する。このとき、画素値がとりうる最大値に関しては(本実施形態の場合は255)、画素値の最小精度である1を加算した値が存在しないため除外する。
The boundary
以上説明した内容を、前述した画像構成画素C53を用いて説明する。まず、画像構成画素C53に示す画像構成画素値の1つ目の情報から画像データIを構成する画像構成画素値の数が13であることがわかる。そして、画像構成画素C53の2個目から14個目の値が、画像構成画素値であることもわかる。そこで、画像構成画素値C0=0に画素値の最小精度である1を加算した値C0'(=0+1=1)が、画像構成画素C53の残りの画素値{1、2、3、4、5、200、250、251、252、253、254、255}に含まれているかどうかを検査する。その結果、C0'=1は前述した画素値(C1=1)に含まれている(つまり、欠落画素値ではない)ため、画素値C0は境界画素値ではないと判断する。同様に全ての画像構成画素値について検査していくと、画像構成画素値C5=5に1を加算した値C5'=6は、画像構成画素C53の画像構成画素値{0、1、2、3、4、5、200、250、251、252、253、254、255}に含まれていない。つまり、欠落画素値と判定できる。従って、画素値C5は境界画素値として抽出される。
次に、境界画素抽出部42は、前述した加算と同様に、画像構成画素Cに含まれる各画像構成画素値に対して画素値の最小精度である1を減算し、減算後の値が、画像構成画素抽出部41で抽出した画像構成画素Cに含まれているかどうかを検査する。検査の結果、減算後の値が画像構成画素Cに含まれていない場合(つまり、欠落画素値になる場合)は、減算前の画像構成画素値を境界値として抽出する。このとき、画素値のとりうる最小値に関しては(本実施形態の場合は0)、画素値の最小精度である1を減算した値が存在しないため除外する。
The content described above will be described using the above-described image constituent pixel C53. First, it can be seen from the first information of the image constituent pixel value indicated by the image constituent pixel C53 that the number of image constituent pixel values constituting the image data I is thirteen. It can also be seen that the second to fourteenth values of the image constituent pixel C53 are image constituent pixel values. Therefore, a value C 0 ′ (= 0 + 1 = 1) obtained by adding 1 which is the minimum accuracy of the pixel value to the image constituent pixel value C 0 = 0 is the remaining pixel value {1, 2, 3,. 4, 5, 200, 250, 251, 252, 253, 254, 255}. As a result, since C 0 ′ = 1 is included in the pixel value (C 1 = 1) described above (that is, not a missing pixel value), it is determined that the pixel value C 0 is not a boundary pixel value. Similarly, when all the image constituent pixel values are inspected, the value C 5 ′ = 6 obtained by adding 1 to the image constituent pixel value C 5 = 5 is the image constituent pixel value {0, 1, 2, 3, 4, 5, 200, 250, 251, 252, 253, 254, 255}. That is, it can be determined as a missing pixel value. Accordingly, the pixel value C 5 is extracted as a boundary pixel value.
Next, similarly to the above-described addition, the boundary
以下、減算による境界画素抽出を、前述した画像構成画素53Cを用いて説明する。まず、画像構成画素値C0=0から1を減算した値C0'(=0−1=−1)は画素値として存在しないため除外する。画像構成画素値C1=1から画素値の最小精度である1を減算した値C1'(1−1=0)が、画像構成画素Cの画像構成画素値{0、1、2、3、4、5、200、250、251、252、253、254、255}に含まれているかどうかを検査する。その結果、C1'=0は前述した画像構成画素値(C0=0)に含まれている(つまり、欠落画素値ではない)ため、画像構成画素値C1は境界画素値ではないと判断する。同様に全ての画像構成画素値について検査していくと、画像構成画素値C200=200から1を減算した値C200''=199は、画像構成画素C53の画像構成画素値{0、1、2、3、4、5、200、250、251、252、253、254、255}に含まれていない(つまり、欠落画素値である)。従って、画像構成画素値C200は境界画素値として抽出される。このようにして、全ての色成分に関して境界画素値を抽出した結果が、図5の境界画素K54となり、境界情報抽出部43へ出力される。
Hereinafter, boundary pixel extraction by subtraction will be described using the above-described image constituent pixel 53C. First, the value C 0 ′ (= 0−1 = −1) obtained by subtracting 1 from the image constituent pixel value C 0 = 0 is excluded because it does not exist as a pixel value. A value C 1 ′ (1-1 = 0) obtained by subtracting 1 which is the minimum precision of the pixel value from the image constituent pixel value C 1 = 1 is the image constituent pixel value {0, 1, 2, 3 of the image constituent pixel C. 4, 5, 200, 250, 251, 252, 253, 254, 255}. As a result, since C 1 ′ = 0 is included in the above-described image configuration pixel value (C 0 = 0) (that is, not a missing pixel value), the image configuration pixel value C 1 is not a boundary pixel value. to decide. Similarly, when all the image constituent pixel values are inspected, the value C200 ″ = 199 obtained by subtracting 1 from the image constituent pixel value C 200 = 200 is the image constituent pixel value {0, 1, 2, 3, 4, 5, 200, 250, 251, 252, 253, 254, 255} (that is, missing pixel values). Therefore, the image constituent pixel value C200 is extracted as a boundary pixel value. In this way, the result of extracting the boundary pixel values for all the color components becomes the boundary pixel K54 in FIG. 5 and is output to the boundary
なお、図5の境界画素K54の通り、画素値C200は、加算、及び、減算の双方で境界画素として判定されるが、加算と減算で重複して抽出される画素は1つにしてカウントする。ここで、図5に示すように、境界画素抽出部42は、境界画素値が存在したかどうかについて境界情報抽出部43へ伝える。例えば、境界画素値が存在した場合は、境界画素Kの先頭に1を付加し、境界画素値が存在しない場合は0を付加するなどして、境界画素値が存在するかどうかの旨を境界情報抽出部43へ伝えるようにする。つまり、境界画素K54は、先頭に境界画素値の有無、その後に境界画素値の数、境界画素値が含まれる。以上、本実施形態における境界画素抽出部42の詳細について説明した。
Note that as indicated by the boundary pixel K54 in FIG. 5, the pixel value C 200 is determined as a boundary pixel in both addition and subtraction, but the number of pixels extracted in duplicate by addition and subtraction is counted as one. To do. Here, as illustrated in FIG. 5, the boundary
境界情報抽出部43は、前段の境界画素抽出部42で抽出した境界画素Kと、画像発生部210で発生した画像データIを入力し、境界画素K、及び画像データIから境界情報Bを抽出し、検証データ生成部213へ出力する。
The boundary
ここで、境界画素値が画像データ中の特定の位置で同値になっているということが判断できる情報を含んだものを境界情報Bとする。例えば、画像データI中で同じ境界画素値を持つ画素値の位置情報と、同値となる画素値に関する画像内の位置情報の数を含んだものを境界情報Bとしてもよい。また、全ての境界画素値の値とその境界画素値に対する画像内の位置情報を含んだものを境界情報Bとしてもよい。本実施形態では、画像データI中で同じ境界画素値を持つ画素値の画像内における位置情報(ラスタースキャン順にスキャンした場合に何番目の画素かを示す情報とする)、同値となる画素値に関する画像内の位置情報の数を含んだものを境界情報Bとして説明する。 Here, the boundary information B includes information that can be determined that the boundary pixel value is the same value at a specific position in the image data. For example, the boundary information B may include the position information of the pixel value having the same boundary pixel value in the image data I and the number of position information in the image regarding the pixel value having the same value. The boundary information B may include all boundary pixel value values and position information in the image corresponding to the boundary pixel values. In the present embodiment, position information in the image of pixel values having the same boundary pixel value in the image data I (information indicating the number of pixels when scanned in the raster scan order), and pixel values that are the same value Information including the number of pieces of position information in the image will be described as boundary information B.
境界情報抽出部43は、境界画素Kに含まれる境界画素値の画像データI中の位置を特定し、その特定された位置に対応する画素値を抽出する。境界情報抽出部43は、ラスタスキャン順に基準となる境界画素値を検索し、基準となった境界画素値と同等の画素値が見つかった場合は、その画像内の位置情報を抽出する。このとき、画像データI中に同じ境界画素値が複数存在しない場合は、その境界画素値を境界情報Bに含めない。このような抽出を境界画素Kに含まれる全ての境界画素値に対して行い、境界情報Bとして検証データ生成部213へ出力する。
The boundary
ここで本実施形態における境界情報抽出部43の詳細について図6を用いて説明する。まず、境界情報抽出部43は、境界画素K54から境界画素値が存在するかどうかを判定する。境界画素値が存在しない場合は、その旨を検証データ生成部213へ通知し、境界画素値が存在する場合は以下の処理を行う。
Details of the boundary
ここでは、図6の参照符号61で示すのが境界情報Bの抽出対象である画像データIであるものとする。境界情報抽出部43は、境界画素K54を入力した場合、その内容から、画像データIに対する境界画素値は、画像62に示す網掛け部に示すものと判定できる。ここで、入力された境界画素Kの値に関して、ラスタスキャン順に画像データ中の位置を検索すると、境界画素値ごとの画像内の位置情報は、境界画素値が“5”の場合は、位置C(1)となる。また、境界画素値が“200”の場合は、位置C(7)、C(8)、C(13)、C(14)である。そして、境界画素値が“250”の場合は、位置C(25)となる。このうち境界画素値が“5”、及び、境界画素値が“250”に対する位置情報は、1つしか存在しない(同じ境界画素値が複数存在しない)ため、境界情報Bには含めない。したがって、画像データIに関する境界情報Bは、画像データ63に示すように同じ境界画素値を持つ画素の位置情報がC(7)、C(8)、C(13)、C(14)であり、同値となる位置情報の数は“4”となる。ここで、境界情報抽出部43は、境界情報Bが存在したかどうかについて検証データ生成部213へ伝える。例えば、境界情報Bが抽出できた場合は、境界情報Bの先頭に1を付加し、境界情報Bが抽出されなかった場合や、境界画素抽出部42から境界画素値が存在しなかった場合は、境界情報Bの先頭に0を付加するなどして、境界情報Bが存在するかどうかの旨を検証データ生成部213へ伝える。以上のように境界情報Bを抽出すると、参照符号64に示すような境界情報Bが得られ、検証データ生成部213へ出力する。なお、ここでは境界情報B64に示すフォーマットを示したが、例えば参照符号65に示すようなマップをもとにして、1次元に並べた参照符号66に示すような境界情報Bを用いてもよい。この場合、境界情報Bの先頭に境界情報Bの有無を示す情報を付加し、その後ラスタスキャン順に画像中の位置情報に対応する情報を付加する。同値となる境界画素値がある場合は、1を付加し、そうでない場合は0を付加する。境界情報B66の場合は、C(7)、C(8)、C(13)、C(14)において同値であることが確認できる。以上、本実施形態における境界情報抽出部43の詳細について説明した。
Here, it is assumed that image data I from which boundary information B is extracted is indicated by
上記を平たく言えば、境界情報算出部211は、入力された画像データ内に実在する画素値の中で、非実在の画素値との差が予め設定された閾値以下(実施形態では閾値=1)となる画素値を検出し、検出に成功したか否かを示す情報、及び、検出に成功した場合には検出に成功した画素値を有する画素の位置を特定する情報とを第1の検証対象情報として生成する第1の生成部ということができる。
To put it flatly, the boundary
<境界値算出処理のフロー>
以下、図7(A),(B)のフローチャートに従って、本実施形態における境界情報算出部211で実行される境界情報算出処理のフローを説明する。ここでは、まず画像構成画素抽出部41と境界画素抽出部42に関する処理を図7(A)に従って説明し、その後、図7(B)に従って境界情報抽出部43の処理を説明する。
<Boundary value calculation processing flow>
Hereinafter, the flow of the boundary information calculation process executed by the boundary
まず、画像構成画素抽出部41と境界画素抽出部42に関する処理フローをあわせて説明する。はじめに画像構成画素抽出部41において、画像発生部210で生成された画像データIを入力し(S701)、画像構成画素抽出部41を用いて、入力した画像データIの画像構成画素を抽出する(S702)。次に、境界画素抽出部42を用いて、画像データI中の画像構成画素値を特定し(S703)、特定した画像構成画素値に対して最小精度を加算、減算する(S704)。最小精度を加算した画素値、もしくは最小精度を減算した画素値が欠落画素値と同等であるかどうかを検証する(S705)。欠落画素値と同等である場合は演算前の画像構成画素値を境界画素値として抽出し(S706)、欠落画素値とならない場合は、処理を行わずに全ての画素値に対して処理を行ったかどうかを検査する(S707)。ここで、全ての画像構成画素値について処理を行っていない場合は、全ての画像構成画素値の処理が完了するまで処理を繰り返す。全ての画像構成画素値に対して処理が完了した場合、境界画素値が抽出されたかどうかを判断して、境界画素値が抽出できた場合は境界画素値を境界画素Kに含め(S710)、境界画素値が抽出できなかった場合はその旨を境界画素Kに含める(S709)。そして、最終的に境界画素Kを境界情報抽出部43へ出力する。
First, the processing flow regarding the image constituent
続いて、境界情報抽出部43に関する処理を説明する。はじめに、画像データIおよび境界画素抽出部42で生成された境界画素Kを入力し(S712)、境界画素が存在するかどうかを確認する(S713)。境界画素が存在しない場合境界情報がない旨を境界情報Bへ含める(S714)。境界画素が存在する場合は、境界情報を抽出する。境界情報の週出は、まず境界画素値を特定し(S715)、全ての境界画素値に対して処理をしたかどうかを確認する(S716)。全ての境界画素値に対して処理をした場合、S720へ進む。全ての境界画素値に対して処理を行っていない場合は、画像内に同じ境界画素値が存在するかどうかを確認し(S717)、同じ境界画素値が存在しない場合は、境界情報が存在しないと判断できるため次の境界画素値を特定し、処理を繰り返す。画像内に同じ境界画素値が存在する場合は、当該画素値に関する全ての画像内の位置情報を抽出し(S718)、位置情報の個数を抽出する(S719)。S720では、境界情報が存在するかどうかを確認し、存在しない場合は境界情報がない旨を境界情報Bに含め(S714)、境界情報がある場合は境界情報が存在する旨を境界情報Bへ含める(S721)。最終的に境界情報Bを検証データ生成部213へ出力する(S722)。以上、本実施形態における境界情報算出処理のフローについて説明した。
Next, processing related to the boundary
続いて、順序情報算出部212について説明する。順序情報算出部212は、前段の画像発生部210で発生した画像データI、及び、乱数初期値KRが入力され、入力された乱数初期値を用いて画像データIから順序情報Rが生成され、生成された順序情報Rが出力される。
Next, the order
ここで本実施形態における順序情報算出部212の詳細について図8を用いて説明する。図8に示すように本実施形態における順序情報算出部212は、擬似乱数生成部81、画素対選択部82、画素値比較部83から構成される。
Details of the order
図中、擬似乱数生成部81は、入力された初期値KRをシードとして擬似乱数RNDを生成し、生成した擬似乱数RNDを後段の画素対選択部82へ出力する。ただし、初期値KRは、画像入力装置11と後述する画像検証装置12とで共有しておく必要がある。このため、予め画像入力装置11内部のROM21、及び画像検証装置12内部のROM34に共通の秘密情報を保持しておき、検証データ生成部213が必要に応じて当該秘密情報を利用するようにする。或いは、ICカード等の耐タンパーな装置内部に初期値KRを保持しておき、当該ICカードを画像入力装置11及び画像検証装置12に接続するようにし、ICカード内部から初期値KRを取得して利用するようにしても良い。
In the figure, a pseudo random
画素対選択部82は、前段の擬似乱数生成部81で生成された擬似乱数RNDを用いて、画像データIを構成する画素の中から2つの画素の位置を選択する。そして、選択した2つの位置の画素を1つの画素対とすることを繰り返すことにより、複数個の画素対から構成される画素対IPを生成して出力する。
The pixel
ここで図9を用いて本実施形態における画素対の例について説明する。図中、97は画像データIを示し、91、92、94、及び95は夫々画像データ97中の画素を示す。図中の点線で結び付けられた画素が画素対であり、画素91と画素92が画素対93を構成する。また、画素94と画素95が画素対96を構成している様を示している。この場合、画素対93と画素対96が画素対IPとして出力される。
Here, an example of a pixel pair in the present embodiment will be described with reference to FIG. In the figure, 97 indicates image data I, and 91, 92, 94, and 95 indicate pixels in the
画素値比較部83は、画素対IPが入力され、入力された画素対を構成する画素値同士を比較し、比較結果を順序情報Rとして出力する。
The pixel
本実施形態では、画素値比較部83内部で以下の式(1)を用いて順序情報Rを生成するものとする。
if c(i)<c(j) then Rk=0 else Rk=1 …(1)
In the present embodiment, the order information R is generated in the pixel
if c (i) <c (j) then Rk = 0 else Rk = 1 (1)
式(1)において、c(x)は画素位置xにおける画素値、i及びjは前段の画素対選択部82で選択された画素対における画素の位置である。入力された擬似乱数RNDによって選択された画素対IPについて式(1)を用いて相対的大小関係Rkを算出し、算出された大小関係Rkを連結した結果を順序情報Rとして出力する。
In Expression (1), c (x) is a pixel value at the pixel position x, and i and j are pixel positions in the pixel pair selected by the pixel
以上説明したRk、及び順序情報Rの算出の具体例を前述の図5、及び図10を用いて説明する。画像データ51は順序情報Rの算出対象である画像データであり、まず、大小関係Rkを求める。表101は、画像データに対して、擬似乱数、画素対IP、大小関係Rkを説明するためのものである。画像データ51に対し、擬似乱数生成部81で生成された擬似乱数RNDが、表101におけるi、及びjであり、画素対選択部82において選択された画素対IPがC(i)及びC(j)である。表101においては、合計6個の画素対が選択されていることになる。
A specific example of calculating Rk and order information R described above will be described with reference to FIGS. 5 and 10 described above. The
次に、夫々の画素対に対して式1を用いてRkを算出する。例えば、表101における最初の画素対は、C(i)=200、C(j)=2である。この場合、C(i)>C(j)であるためRk=1となる。一方、2番目の画素対は、C(i)=4、C(j)=253であるので、C(i)>C(j)でないためRk=0となる。
Next, Rk is calculated using
以上の方法を用い、残りの画素に対しても、Rkを算出する。そして、算出した大小関係Rkを順に連結することにより、図10の参照符号102に示す順序情報R(101010)を生成する。
Using the above method, Rk is also calculated for the remaining pixels. And the order information R (101010) shown to the
尚、図10の例では画像データIに含まれる一部の画素対IPに対してランダムに選択したものに対して大小関係Rkを算出し、順序情報Rとして出力するようとして説明したが、全ての画素対IPに対して大小関係Rkを算出するものであっても構わない。 In the example of FIG. 10, the magnitude relationship Rk is calculated and output as the order information R for a part of the pixel pairs IP included in the image data I selected at random. The magnitude relationship Rk may be calculated for each pixel pair IP.
また、全ての画素対IPに対して大小関係Rkを算出し、順序情報Rとして出力する場合、擬似乱数生成部81は必ずしも必要ではなく、擬似乱数RNDを用いて画素対を選択する代わりに、予め決めたらた順に従って、全ての画素対を選択するようにすれば良い。
Further, when calculating the magnitude relation Rk for all the pixel pairs IP and outputting them as the order information R, the pseudo-random
また、本実施形態では、画素対IPとして2つの画素を選択するものとして説明するが、本発明はこれに限定されることなくN(>2)個の画素を選択し画素対IPとしても良い。この場合、画素対選択部82でN個の画素から構成される画素対IPを選択し、画素値比較部83ではN個の画素値の大小関係を算出し、順序情報Rとして出力するようにする。一般的に、N個の画素値の大小関係はN!通りあり得るため、一つの画素対IPの大小関係RkとしてはN!を表現し得るビット長で順序情報を構成するようにする。例えば、N=3の場合は画素値の大小関係として3!=6通りの場合があり得るため、3ビットで大小関係Rkを表現するようにすれば良い。
In the present embodiment, the description will be made on the assumption that two pixels are selected as the pixel pair IP. However, the present invention is not limited to this, and N (> 2) pixels may be selected as the pixel pair IP. . In this case, the pixel
ここで、式1を用いた場合、算出される大小関係Rkは「0」か「1」が存在するため1ビットで表現可能である。しかし、例えば以下のような式(2)を用いた場合、算出される大小関係Rkは、「0」、「1」、「2」の3通りが存在するため2ビットで表現する必要がある。つまり、式(1)を用いる場合に比べて式(2)を用いる場合は情報量が多くなってしまう。一方で、大小関係を厳密に表現できるため、より正確な検証が可能となる。
if c(i)<c(j) then Rk=0
if c(i)>c(j) then Rk=1
else Rk=2 …(2)
Here, when
if c (i) <c (j) then Rk = 0
if c (i)> c (j) then Rk = 1
else Rk = 2 (2)
上記を平たく言えば、順序情報算出部212は、入力された画像データから、予め設定された乱数にしたがってN画素(Nは2以上の整数)を選択する度に、選択したN画素中の第1乃至第Nの画素の各画素値の大小関係を特定する情報を第2の検証対象情報として生成する第2の生成部と言える。
Speaking of the above, each time the order
以上、本実施形態における順序情報算出部212の詳細について説明した。
The details of the order
引き続き、図2(B)に戻って説明を続ける。検証データ生成部213は、境界情報算出部211で生成された境界情報B、及び順序情報算出部212で生成された順序情報Rを入力し、入力した境界情報B、及び順序情報Rから検証データS(BR)を生成し、後段の画像出力部214に出力する。
Subsequently, returning to FIG. 2B, the description will be continued. The verification
本実施形態における検証データとしては、MAC(Message Authentication Code)や電子署名などが適用可能である。尚、MAC及び電子署名の生成方法については当業者にとって公知の技術であるので詳細な説明は省略する。電子署名やMACの対象となるデータは、例えば図10の参照符号103に示すような構成とする。本実施形態では、順序情報Rは、ハッシュなどを利用して情報量を少なくし、境界情報Bに関してはそのままの情報として、まとめて電子署名やMACを適用する。本実施形態では、順序情報Rに関して情報量を少なくするようにしたが、これに限定することなく例えばそのままのデータに電子署名やMACを適用してもよい。
As verification data in the present embodiment, a MAC (Message Authentication Code), an electronic signature, or the like is applicable. The MAC and electronic signature generation method is a technique known to those skilled in the art, and a detailed description thereof will be omitted. The data that is the subject of the electronic signature or MAC is configured as shown by
検証データとしてMACを適用する場合には、MACを生成するための秘密情報を、署名鍵KSとして入力するようにし、MACを生成する際に利用する。署名鍵KSは画像入力装置11と後述する画像検証装置12とで共有しておく必要がある。このため、予め画像入力装置11内部のROM21、及び画像検証装置12内部のROM34に共通の秘密情報を保持しておき、検証データ生成部213が必要に応じて当該秘密情報を利用するようにする。或いは、ICカード等の耐タンパーな装置内部に署名鍵KSを保持しておき、当該ICカードを画像入力装置11及び画像検証装置12に接続するようにし、検証データ生成部213がICカード内部から署名鍵KSを取得して利用するようにしても良い。或いは、画像入力装置11の内部で新たに秘密情報を発生させ、発生した秘密情報を署名鍵KSとして利用するようにしても良い。この場合、発生した秘密秘密情報はICカード等の耐タンパーな装置内部に保持したり、或いは暗号化を施した後画像検証装置12へ送信するようにすれば良い。
When the MAC is applied as the verification data, secret information for generating the MAC is input as the signature key KS and used when generating the MAC. The signature key KS needs to be shared between the
一方、検証データとして電子署名を適用する場合には、電子署名を生成するための秘密鍵を、署名鍵KSとして入力するようにする。このため、予め画像入力装置11内部のROM21に署名鍵KSを保持しておき、検証データ生成部213が必要に応じて当該署名鍵KSを利用するようにする。或いは、ICカード等の耐タンパーな装置内部に署名鍵KSを保持しておき、当該ICカードを画像入力装置11に接続するようにし、検証データ生成部213がICカード内部から署名鍵KSを取得して利用するようにしても良い。或いは、画像入力装置11の内部で新たに署名鍵KSを発生させ、発生した署名鍵KSを利用するようにしても良い。また、何れの場合においても、検証データ生成部213が利用した署名鍵KSに対応する公開鍵が、後述する画像検証装置12の内部で必要となる。このため、後段の画像出力部214において、署名鍵KSに対応する公開鍵を画像データに付加して、画像検証装置12へ送信するようにする。或いは、不図示のサーバ上に公開鍵を保持しておき、当該サーバ上の公開鍵の保持位置を示す情報(URLなど)を画像データに記録するようにしておく。そして、画像検証装置12は当該保持位置を示す情報を用いることにより、必要に応じて公開鍵をサーバから取得するようにしても良い。
On the other hand, when an electronic signature is applied as verification data, a secret key for generating an electronic signature is input as a signature key KS. For this reason, the signature key KS is held in advance in the
画像出力部214は、前段の画像発生部210から出力された画像データI、及び検証データ生成部213から出力された検証データS(BR)を入力し、検証データS(BR)を画像データIに付加して出力する。なお、本実施形態では付加方法として、Exifなどでフォーマット化されている画像データIのヘッダ中に検証データS(BR)を記録する。しかしながら本発明はこれに限定されることなく、画像データIに検証データS(BR)を連結するようにしても良いし、そのフォーマットは如何なるものでも構わない。画像出力部214は、画像データIをリムーバブルメディア等の記憶媒体に記録したり、或いは、有線/無線のネットワークを介して所定のホストへ送信したりする。以上、本実施形態における画像入力装置11の構成について説明した。
The
<撮影処理のフロー>
以下、図11のフローチャートを用いて本実施形態における画像入力装置11で実行される撮影処理のフローを説明する。図11は本実施形態に適用可能な撮影処理の流れを示すフローチャートである。
<Flow of shooting process>
Hereinafter, the flow of the photographing process executed by the
まず、ユーザからの撮影指示に従って画像発生部210を用いて画像データIを撮影する(S111)。次に、境界情報算出部211において境界情報Bを算出し(S112)、擬似乱数生成部81で生成された擬似乱数RNDを用いて画素対選択部82において画素対IPを選択し(S113)、画素値比較部83を用いて画素対IPの順序情報Rを算出する(S114)。そして、検証データ生成部213を用いて、順序情報Rに対する検証データS(BR)を生成し(S115)、最終的に画像出力部214から、検証データS(BR)が付加された画像データを出力する(S116)。以上、本実施形態における撮影処理のフローについて説明した。
First, the image data I is imaged using the
<画像検証装置の構成>
以下、図3(B)を用いて本実施形態に適用される画像検証装置12の機能構成を説明する。尚、以下の説明では、前述したホストコンピュータ12に電源が投入され、OSが作業メモリ35にロードされ、検証処理アプリケーションプログラムも作業メモリ35に実行されているものとする。
<Configuration of image verification device>
Hereinafter, the functional configuration of the
図3(B)に示すように、本実施形態における画像検証装置12は、画像入力部316、順序情報算出部317、及び検証部318から構成される。尚、ここで説明する画像検証処理はソフトウェア処理により実現されても良い。その場合には、上記各部は上記処理に必要な機能を概念的なものとして捉えたものと考慮されるべきものである。
As shown in FIG. 3B, the
画像入力部316は、画像データI’を入力する。画像データI’がリムーバブルメディア、及び/或いはネットワーク等を介して入力されると考えると理解し易い。また、画像入力部316は、入力した画像データI’のヘッダを解析し、付加されている検証データS(BR)を抽出(もしくは分離)し、抽出した検証データS(BR)を検証部318に出力する。
The
順序情報算出部317は、前段の画像入力部316からの画像データI’、及び、ROM34からの乱数初期値KRを入力し、入力された画像データI’、乱数初期値KRから順序情報R’を生成し、生成された順序情報R’を出力する。尚、本実施形態においては順序情報算出部317の内部で実行される順序情報算出処理は、前述した図2(B)における順序情報算出部212の内部で実行される順序情報算出処理と同様の処理であるため、ここでの説明は省略する。
The order
検証部318は、前段の順序情報算出部317で生成された順序情報R’、画像入力部316で抽出された検証データS(BR)、画像データI’及び検証鍵KSを入力する。そして、入力されたデータを用いて画像データI’が改竄されているか否かを検証し、検証結果(OK/NG)を出力する。
The
ここで本実施形態における検証部318の詳細について図12を用いて説明する。図12に示すように本実施形態における検証部318は、復号部121、第1の検証部122、第2の検証部123から構成される。
Details of the
復号部121は、入力された検証データS(BR)を、同じく入力された検証鍵KSで復号する。その結果得られた、境界情報B、及び順序情報R(ハッシュなどを利用して情報量を少なくしたもの)をそれぞれ第1の検証部122、第2の検証部123へ出力する。尚、復号部121で実行される処理は、前述した検証データ生成部213に対応するものでなければならない。即ち、検証データ生成部213においてMACが生成された場合、検証鍵KSは、MACの場合は検証データ生成部213で適用された署名鍵KSと同一の秘密情報を適用し、電子署名の場合は検証データ生成部213で適用された署名鍵KSに対応する公開鍵であると考慮されるべきものである。復号に失敗した場合は、NGを出力する。
The
第1の検証部122は、前段の復号部121で得られた境界情報Bを入力し、境界情報Bをもとに、画像データI’の検証を行い、その検証結果(OK/NG)を出力する。第1の検証部122は、前段の復号部121で得られた境界情報Bを参照し、まず、境界情報Bが存在するか否かを検査する。境界情報が存在しない場合、つまり本実施形態では境界情報Bの先頭が0の場合は、検証結果(OK)を出力し、境界情報が存在する場合、つまり境界情報Bの先頭が1の場合は、同じ境界値を持つ画素の位置情報と、同値となる位置情報の数の関係を検査する。その結果、境界情報Bに示されている、特定の位置情報に関して画素値が同等であると判断できた場合は検証結果(OK)を出力する。逆に、特定の位置情報に関して画素値が同等でないと判断できた場合は画像が改竄されていると判断し、検証結果(NG)を出力する。
The
ここで、本実施形態における第1の検証部122の詳細について図13を用いて説明する。ここで、第1の検証部122に入力される境界情報Bは前述した図6における参照符号64とし、画像データI’は図13の参照符号131とする。画像データI’131の網掛け部分は、境界情報Bに含まれた位置情報を表している。入力された境界情報Bについてみると、同値となる位置情報の数は4つであり、その位置情報はそれぞれ、C(7)、C(8)、C(13)、C(14)であることがわかる。したがって、画像データI’131の画素C(7)、C(8)、C(13)、C(14)の画素値を調べてみると、全て199となる。よって、境界情報Bに示された位置情報の画素値は同値であると判断できる。境界情報Bに関して全て境界画素値についての検証を行い各位置情報に関して画素値が同値であると判断できた場合、第1の検証部122は検証結果(OK)を出力する。例えば画像データ132に示すように、C(13)の画素値が200であり、C(7)、C(8)、C(14)の画素値が199のような場合は、C(7)、C(8)、C(13)、C(14)の画素値が同値でないため、境界情報Bの内容と異なり、第1の検証部122は検証結果(NG)を出力する。以上、本実施形態における第1の検証部の詳細について説明した。
Here, details of the
<第1の検証処理のフロー>
以下、図14のフローチャートを用いて本実施形態における第1の検証部122で実行される第1の検証処理のフローを説明する。
<First verification processing flow>
Hereinafter, the flow of the first verification process executed by the
まず、復号部121で復号された境界情報B、及び画像データI’を入力し(S161)、入力された境界情報Bから、境界情報が存在するか否かを検査する(S142)。境界情報が存在しない場合は検証成功と判断し(S146)、境界情報が存在する場合は、境界情報の検証を行う。続いて入力された境界情報Bから同値となる位置情報の数を抽出し(S143)、同じ境界値を持つ画素の位置情報を抽出する(S144)。抽出した、同値となる位置情報の数、及び同じ境界値を持つ画素の位置情報において全ての画素値が同値であるかどうかを検証する(S145)。位置情報に関する画素値が同値であれば、検証成功(S146)、そうでなければ検証失敗(S147)として出力する。以上、本実施形態における第1の検証処理のフローについて説明した。
First, the boundary information B and image data I ′ decoded by the
第2の検証部123は、入力された順序情報R’、及び前段の復号部121で抽出された順序情報Rを入力し、検証結果(OK/NG)を出力する。具体的には、入力された順序情報R’と順序情報Rを比較し、一致していれば検証結果(OK)する。入力された順序情報Rが検証データ生成時にハッシュなどを利用して情報量を少なくしている場合は、第2の検証部でも同様の処理を行って比較し、検証結果(OK/NG)を出力する。
The
<画像検証処理のフロー>
以下、図15のフローチャートを用いて本実施形態における画像検証装置12で実行される画像検証処理のフローを説明する。
<Flow of image verification processing>
Hereinafter, the flow of image verification processing executed by the
まず、画像入力部316が画像データI’を入力する(S151)。次に、擬似乱数生成部81で生成された擬似乱数RNDを用いて画素対選択部82において画素対IPを選択し(S152)、画素値比較部83を用いて選択した画素対IPの順序情報Rを算出する(S153)。そして、復号部121において復号処理を実行する(S154)。そして、復号に成功したか否かを判定する(S155)。復号処理に成功した場合は第1の検証処理に進み(S156;第1の判定処理)、さもなければ検証失敗とする(S1511)。第1の検証処理(S156)では、画像入力装置と同じように、画像データ内に実在する画素値の中で、非実在の画素値との差が予め設定された閾値以下となる画素値を検出し、検出に成功したか否か、並びに、検出に成功した場合には検出に成功した画素値を有する画素の位置を抽出する。そして、S157にて、抽出した情報と、復号して得られた検証データ内の境界情報Bと比較し、検証が成功したか否か(一致するか否か)を判定する。検証結果が検証成功である場合には処理を第2の検証処理に進め(S158;第2の判定処理)、さもなければ検証失敗とする(S1511)。第2の検証処理(S158)では、入力した画像データから、画像入力装置と同じ乱数にしたがって2画素を選択し、その2画素の大小関係を特定する情報を作成していく。そして、その情報のハッシュ値を求め、その値と、復号して得られた検証データ内の順序情報Rのハッシュ値と比較し、検証が成功したか否かを判定する(S159)。検証成功である場合、すなわち、境界情報B、及び、順序情報Rの両方が、復号して得られたそれぞれの情報と一致する場合、画像の検証は成功(改竄無し)と判定する。また、少なくともいずれか一方が不一致であった場合、S1511にて、検証は失敗(改竄有り)と判定して処理を終了する。以上、本実施形態における画像検証処理のフローについて説明した。
First, the
<改竄方法の一例>
以下、本発明によって対抗可能な改竄方法の一例について説明する。ここで説明する改竄方法とは、境界値となる画素を欠落画素値に改竄するような攻撃である。例えば、下記の式3を用いて順序情報を生成するとする。
if c(i)≧ c(j) then Rk=0 else Rk=1 …(3)
このような場合、「0」と「1」の2値で順序情報Rを構成することが可能であるが、以下に説明する攻撃が可能である。
<Example of tampering method>
Hereinafter, an example of a tampering method that can be countered by the present invention will be described. The falsification method described here is an attack that falsifies a pixel serving as a boundary value to a missing pixel value. For example, it is assumed that the order information is generated using the following
if c (i) ≧ c (j) then Rk = 0 else Rk = 1 (3)
In such a case, it is possible to configure the order information R with binary values of “0” and “1”, but an attack described below is possible.
図16に示す参照符号161は入力された画像データを示している。ここで、画像データ161に示す網掛け部は境界画素値を示している。このとき、画像データ161中の画素(2, 2)に対してすべての画素に対する順序情報を生成すると、参照符号162に示すような順序情報のマップが生成される。更に、画像データ161を参照符号163に示すような画像データに改竄する。このとき改竄する内容は、画像データ163に示された斜線部分に対応の境界画素値200を欠落画素値である“176”に変更するものとする。このときに、画像データ161と同様に、画像データに示すような画像データ中の画素(2, 2)に対して全ての画素に対する順序情報を生成する。すると、参照符号164に示すような順序情報のマップが生成される。生成された順序情報のマップを確認すると、斜線部分の順序情報は、「0」であり前述した順序情報のマップ162と比較すると同じマップになってしまう。このように式(3)を用いたような順序情報が「0」、「1」の2値で表現できるような場合は、境界画素値の画素値を欠落画素値の値に変更する攻撃が可能である。
しかして、本実施形態では、境界情報算出部によって境界情報を算出し、境界情報を検証側に送付する。そうすることによって、境界画素値が欠落画素値に変更された場合においても、境界画素値に関しては、全てが同じ画素値にならなければならないため前述した問題を検知することが可能となる。以上、本発明によって対抗可能な改竄方法の一例について説明した。 Therefore, in this embodiment, boundary information is calculated by the boundary information calculation unit, and the boundary information is sent to the verification side. By doing so, even when the boundary pixel value is changed to a missing pixel value, all of the boundary pixel values must be the same pixel value, so that the above-described problem can be detected. In the above, an example of the falsification method which can be countered by this invention was demonstrated.
以上説明したように、本実施形態によれば、画像発生部210において発生した画像データIに対する検証データに、境界情報B(境界値の数とその位置情報)と順序情報Rを加えている。これにより、画像データIが画像再現処理を実行した場合においても、検証処理を成功させることが可能である。特に境界情報Bを検証データに加えることによって、境界値となる画素を欠落画素値に改竄するような攻撃に対しても、改竄を検知することが可能となっている。これは、境界値となる値の位置に関する情報を持つことによって、境界値の一部のみを変更できないようにしているためである。
As described above, according to the present embodiment, the boundary information B (the number of boundary values and their position information) and the order information R are added to the verification data for the image data I generated by the
ところで、本発明は上述した効果以外に、順序情報を2値で表現することが重要である。上述した攻撃方法に関しては、順序情報を3値で表現することでも対抗できるが、情報量を考慮した場合、順序情報を2値で表現し、境界情報を付加した場合のほうが少ない情報量で処理することを可能としている。 Incidentally, in the present invention, in addition to the effects described above, it is important to express the order information in binary. The attack method described above can be countered by expressing the order information as ternary values. However, if the amount of information is taken into consideration, the order information is expressed as binary values and the boundary information is added. It is possible to do.
また、実施形態では、画像入力装置11としてデジタルカメラを例にしたが、イメージスキャナであっても構わないし、撮像手段を接続或いは収容した情報処理装置でも構わない。また、実施形態では、1画素が1成分であり、成分値は8ビットであることを前提にして説明したが、1画素が複数成分であっても構わないし、8ビットを超えるビット数で表現される場合にも適用できる。1画素が複数成分で表わされている場合、各成分について上記の実施形態を適用すればよいからである。
In the embodiment, a digital camera is taken as an example of the
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
(Other examples)
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.
Claims (9)
原本性の保証対象とする画像データを入力する画像入力手段と、
該画像入力手段によって入力された前記画像データ内に実在する画素値の中で、非実在の画素値との差が予め設定された閾値以下となる画素値を検出し、検出に成功したか否かを示す情報、及び、検出に成功した場合には検出に成功した画素値を有する画素の位置を特定する情報とを第1の検証対象情報として生成する第1の生成手段と、
前記画像入力手段によって入力された前記画像データから、予め設定された乱数にしたがってN画素(Nは2以上の整数)を選択する度に、選択したN画素中の第1乃至第Nの画素の各画素値の大小関係を特定する情報を第2の検証対象情報として生成する第2の生成手段と、
前記第1の検証対象情報、及び、前記第2の検証対象情報を用いて、前記画像入力手段によって入力された前記画像データの検証データを生成する検証データ生成手段と、
該検証データ生成手段で生成された検証データを、前記画像入力手段によって入力された前記画像データと共に出力する画像出力手段と
を備えることを特徴とする情報処理装置。 An information processing apparatus for generating verification data for assuring the originality of image data from the image data,
Image input means for inputting image data to be guaranteed for originality;
Whether the pixel value that is different from the non-existent pixel value is less than or equal to a preset threshold value among the actual pixel values input in the image data input by the image input unit and has been detected successfully First generation means for generating, as first verification target information, information indicating whether or not, and information for specifying a position of a pixel having a pixel value that has been successfully detected when detection is successful;
Each time N pixels (N is an integer of 2 or more) are selected from the image data input by the image input unit according to a preset random number, the first to Nth pixels of the selected N pixels are selected. Second generation means for generating, as second verification target information, information specifying the magnitude relationship of each pixel value;
Verification data generation means for generating verification data of the image data input by the image input means using the first verification target information and the second verification target information;
An information output apparatus comprising: an image output unit that outputs the verification data generated by the verification data generation unit together with the image data input by the image input unit.
前記第2の生成手段は、前記画像データから、前記予め設定された乱数にしたがって2つの画素を選択することを特徴とする請求項1に記載の情報処理装置。 The first generation means detects an existing pixel value having a difference of 1 from the non-existing pixel value;
The information processing apparatus according to claim 1, wherein the second generation unit selects two pixels from the image data according to the preset random number.
検証対象の画像データと、当該画像データのための検証データとを入力する入力手段と、
該入力手段で入力した前記画像データ内に実在する画素値の中で、非実在の画素値との差が予め設定された閾値以下となる画素値を検出し、検出に成功したか否か、並びに、検出に成功した場合には検出に成功した画素値を有する画素の位置が、前記入力手段で入力した検証データに含まれる第1の検証対象情報と一致するか否かを判定する第1の判定手段と、
前記入力手段によって入力された前記画像データから、予め設定された乱数にしたがってN画素(Nは2以上の整数)を選択して得られたN画素中の第1乃至第Nの画素の各画素値の大小関係を特定する情報と、前記入力手段で入力した検証データに含まれる第2の検証対象情報とが一致するか否かを判定する第2の判定手段と、
前記第1の判定手段、及び、前記第2の判定手段の両方の判定の結果が一致することを示す場合、前記入力手段で入力した画像データは改竄無しとして判定し、前記第1の判定手段、及び、前記第2の判定手段の少なくとも一方の判定の結果が不一致を示す場合、前記入力手段で入力した画像データは改竄有りとして判定する検証手段と
を備えることを特徴とする検証装置。 A verification device that verifies the presence or absence of falsification of the image data based on image data and verification data generated by the information processing device according to claim 1,
Input means for inputting image data to be verified and verification data for the image data;
Among pixel values existing in the image data input by the input means, a pixel value whose difference from a non-existing pixel value is equal to or less than a preset threshold value is detected, and whether or not the detection has succeeded, In addition, when the detection is successful, a first determination is made as to whether or not the position of the pixel having the pixel value that has been successfully detected matches the first verification target information included in the verification data input by the input means. Determining means,
Each pixel of the first to Nth pixels among N pixels obtained by selecting N pixels (N is an integer of 2 or more) from the image data input by the input means according to a preset random number. Second determination means for determining whether or not the information for specifying the magnitude relationship between the values and the second verification target information included in the verification data input by the input means match;
When the determination results of both the first determination unit and the second determination unit indicate that they match, it is determined that the image data input by the input unit is not falsified, and the first determination unit And a verification unit that determines that the image data input by the input unit is falsified when the determination result of at least one of the second determination units indicates a mismatch.
画像入力手段が、原本性の保証対象とする画像データを入力する画像入力工程と、
第1の生成手段が、該画像入力工程によって入力された前記画像データ内に実在する画素値の中で、非実在の画素値との差が予め設定された閾値以下となる画素値を検出し、検出に成功したか否かを示す情報、及び、検出に成功した場合には検出に成功した画素値を有する画素の位置を特定する情報とを第1の検証対象情報として生成する第1の生成工程と、
第2の生成手段が、前記画像入力工程によって入力された前記画像データから、予め設定された乱数にしたがってN画素(Nは2以上の整数)を選択する度に、選択したN画素中の第1乃至第Nの画素の各画素値の大小関係を特定する情報を第2の検証対象情報として生成する第2の生成工程と、
検証データ生成手段が、前記第1の検証対象情報、及び、前記第2の検証対象情報を用いて、前記画像入力工程によって入力された前記画像データの検証データを生成する検証データ生成工程と、
画像出力手段が、該検証データ生成工程で生成された検証データを、前記画像入力工程によって入力された前記画像データと共に出力する画像出力工程と
を有することを特徴とする情報処理装置の制御方法。 An information processing apparatus control method for generating verification data for guaranteeing originality of image data from the image data,
An image input step in which the image input means inputs image data to be guaranteed for originality;
The first generation means detects a pixel value whose difference from the non-existing pixel value is equal to or less than a preset threshold value among the actual pixel values input in the image data input by the image input step. First information that generates information indicating whether or not detection is successful, and information that specifies the position of a pixel having a pixel value that has been successfully detected as detection target information when detection is successful Generation process;
Each time the second generation unit selects N pixels (N is an integer of 2 or more) from the image data input in the image input step according to a preset random number, the second generation unit in the selected N pixels A second generation step of generating, as second verification target information, information that specifies the magnitude relationship between the pixel values of the first to Nth pixels;
A verification data generating unit that generates verification data of the image data input by the image input step using the first verification target information and the second verification target information; and
A method for controlling an information processing apparatus, comprising: an image output step in which image output means outputs the verification data generated in the verification data generation step together with the image data input in the image input step.
入力手段が、検証対象の画像データと、当該画像データのための検証データとを入力する入力工程と、
第1の判定手段が、該入力工程で入力した前記画像データ内に実在する画素値の中で、非実在の画素値との差が予め設定された閾値以下となる画素値を検出し、検出に成功したか否か、並びに、検出に成功した場合には検出に成功した画素値を有する画素の位置が、前記入力工程で入力した検証データに含まれる第1の検証対象情報と一致するか否かを判定する第1の判定工程と、
第2の判定手段が、前記入力工程によって入力された前記画像データから、予め設定された乱数にしたがってN画素(Nは2以上の整数)を選択して得られたN画素中の第1乃至第Nの画素の各画素値の大小関係を特定する情報と、前記入力工程で入力した検証データに含まれる第2の検証対象情報とが一致するか否かを判定する第2の判定工程と、
検証手段が、前記第1の判定工程、及び、前記第2の判定工程の両方の判定の結果が一致することを示す場合、前記入力工程で入力した画像データは改竄無しとして判定し、前記第1の判定工程、及び、前記第2の判定工程の少なくとも一方の判定の結果が不一致を示す場合、前記入力工程で入力した画像データは改竄有りとして判定する検証工程と
を有することを特徴とする検証装置の制御方法。 A control method for a verification device that verifies the presence or absence of falsification of the image data based on image data and verification data generated by the information processing device according to claim 1,
An input step in which the input means inputs image data to be verified and verification data for the image data;
The first determination means detects a pixel value in which the difference from the non-existing pixel value is equal to or less than a preset threshold value among the existing pixel values in the image data input in the input step. And whether or not the position of the pixel having the pixel value that has been successfully detected matches the first verification target information included in the verification data input in the input step. A first determination step of determining whether or not;
The first through the N pixels obtained by the second determination unit selecting N pixels (N is an integer of 2 or more) from the image data input in the input step according to a preset random number. A second determination step of determining whether or not the information specifying the magnitude relationship between the pixel values of the Nth pixel matches the second verification target information included in the verification data input in the input step; ,
When the verification means indicates that the determination results of both the first determination step and the second determination step match, it is determined that the image data input in the input step is not falsified, and the second And a verification step for determining that the image data input in the input step is falsified when the determination result of at least one of the first determination step and the second determination step indicates a mismatch. Control method of verification device.
前記コンピュータを、
該画像入力手段によって入力された前記画像データ内に実在する画素値の中で、非実在の画素値との差が予め設定された閾値以下となる画素値を検出し、検出に成功したか否かを示す情報、及び、検出に成功した場合には検出に成功した画素値を有する画素の位置を特定する情報とを第1の検証対象情報として生成する第1の生成手段、
前記画像入力手段によって入力された前記画像データから、予め設定された乱数にしたがってN画素(Nは2以上の整数)を選択する度に、選択したN画素中の第1乃至第Nの画素の各画素値の大小関係を特定する情報を第2の検証対象情報として生成する第2の生成手段、
前記第1の検証対象情報、及び、前記第2の検証対象情報を用いて、前記画像入力手段によって入力された前記画像データの検証データを生成する検証データ生成手段、
該検証データ生成手段で生成された検証データを、前記画像入力手段によって入力された前記画像データと共に出力する画像出力手段
として機能させることを特徴とするプログラム。 As an information processing apparatus for generating verification data for guaranteeing the originality of image data input from the image input means by causing a computer having image input means for inputting image data to be read and executed A functioning program,
The computer,
Whether the pixel value that is different from the non-existent pixel value is less than or equal to a preset threshold value among the actual pixel values input in the image data input by the image input unit and has been detected successfully First generation means for generating, as first verification target information, information indicating whether or not and information for specifying a position of a pixel having a pixel value that has been successfully detected when detection is successful,
Each time N pixels (N is an integer of 2 or more) are selected from the image data input by the image input unit according to a preset random number, the first to Nth pixels of the selected N pixels are selected. Second generation means for generating, as second verification target information, information that specifies the magnitude relationship of each pixel value;
Verification data generation means for generating verification data of the image data input by the image input means using the first verification target information and the second verification target information;
A program for causing verification data generated by the verification data generation means to function as image output means for outputting together with the image data input by the image input means.
前記コンピュータを、
前記入力手段で入力した前記画像データ内に実在する画素値の中で、非実在の画素値との差が予め設定された閾値以下となる画素値を検出し、検出に成功したか否か、並びに、検出に成功した場合には検出に成功した画素値を有する画素の位置が、前記入力手段で入力した検証データに含まれる第1の検証対象情報と一致するか否かを判定する第1の判定手段、
前記入力手段によって入力された前記画像データから、予め設定された乱数にしたがってN画素(Nは2以上の整数)を選択して得られたN画素中の第1乃至第Nの画素の各画素値の大小関係を特定する情報と、前記入力手段で入力した検証データに含まれる第2の検証対象情報とが一致するか否かを判定する第2の判定手段、
前記第1の判定手段、及び、前記第2の判定手段の両方の判定の結果が一致することを示す場合、前記入力手段で入力した画像データは改竄無しとして判定し、前記第1の判定手段、及び、前記第2の判定手段の少なくとも一方の判定の結果が不一致を示す場合、前記入力手段で入力した画像データは改竄有りとして判定する検証手段
として機能させることを特徴とするプログラム。 The computer is generated by the information processing apparatus according to claim 1 by being read and executed by a computer having an input unit for inputting image data to be verified and verification data for the image data. A program that functions as a verification device that verifies the presence or absence of falsification of the image data based on image data and verification data,
The computer,
Among pixel values that are actually present in the image data input by the input means, detect a pixel value whose difference from a non-existent pixel value is equal to or less than a preset threshold value, and whether or not the detection is successful. In addition, when the detection is successful, a first determination is made as to whether or not the position of the pixel having the pixel value that has been successfully detected matches the first verification target information included in the verification data input by the input means. Determining means,
Each pixel of the first to Nth pixels among N pixels obtained by selecting N pixels (N is an integer of 2 or more) from the image data input by the input means according to a preset random number. Second determination means for determining whether or not the information for specifying the magnitude relationship between the values and the second verification target information included in the verification data input by the input means match;
When the determination results of both the first determination unit and the second determination unit indicate that they match, it is determined that the image data input by the input unit is not falsified, and the first determination unit And a program for causing the image data input by the input means to function as a verification means for determining that there is falsification when a determination result of at least one of the second determination means indicates a mismatch.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009286962A JP2011130213A (en) | 2009-12-17 | 2009-12-17 | Information processing apparatus and image verifying device, and control method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009286962A JP2011130213A (en) | 2009-12-17 | 2009-12-17 | Information processing apparatus and image verifying device, and control method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011130213A true JP2011130213A (en) | 2011-06-30 |
Family
ID=44292302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009286962A Withdrawn JP2011130213A (en) | 2009-12-17 | 2009-12-17 | Information processing apparatus and image verifying device, and control method thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011130213A (en) |
-
2009
- 2009-12-17 JP JP2009286962A patent/JP2011130213A/en not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3884955B2 (en) | Image verification system and image verification apparatus | |
US7535488B2 (en) | Image data verification system | |
JP5341615B2 (en) | Information processing apparatus and control method thereof | |
US7162637B2 (en) | Image verification system | |
CN1741449A (en) | Data-processing system and method for controlling same, computer program, and computer-readable recording medium | |
KR20000035423A (en) | Recording device | |
JP5340029B2 (en) | Information processing apparatus and control method thereof, verification apparatus and control method thereof | |
JP2008124668A (en) | Content editing device and content verification apparatus | |
US8422732B2 (en) | Information processing apparatus, verification apparatus, and methods of controlling the same | |
JP5693134B2 (en) | Information processing apparatus and control method thereof | |
JP5635896B2 (en) | Image input device, image verification device, and control method thereof | |
WO2022137798A1 (en) | Image processing device and method | |
JP2007080071A (en) | System having alteration detecting function | |
JP2011130213A (en) | Information processing apparatus and image verifying device, and control method thereof | |
JP2007013882A (en) | Storage medium, and apparatus and method for digital data processing | |
JP6757169B2 (en) | Signature device, signature method, verification device, verification method, computer program | |
JP4143516B2 (en) | Image processing apparatus, image verification method, program, and storage medium | |
JP2007067938A (en) | Verification system and electronic data generating apparatus, and electronic data verification apparatus and method thereof | |
JP2006302299A (en) | Image verification device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20130305 |