JP5155210B2 - 画像比較装置及びその方法、画像検索装置、並びにプログラム及び記録媒体 - Google Patents

画像比較装置及びその方法、画像検索装置、並びにプログラム及び記録媒体 Download PDF

Info

Publication number
JP5155210B2
JP5155210B2 JP2009027381A JP2009027381A JP5155210B2 JP 5155210 B2 JP5155210 B2 JP 5155210B2 JP 2009027381 A JP2009027381 A JP 2009027381A JP 2009027381 A JP2009027381 A JP 2009027381A JP 5155210 B2 JP5155210 B2 JP 5155210B2
Authority
JP
Japan
Prior art keywords
vector
code
code stream
image
code block
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.)
Expired - Fee Related
Application number
JP2009027381A
Other languages
English (en)
Other versions
JP2010183499A (ja
Inventor
隆浩 福原
仁志 貴家
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Tokyo Metropolitan University
Original Assignee
Sony Corp
Tokyo Metropolitan University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp, Tokyo Metropolitan University filed Critical Sony Corp
Priority to JP2009027381A priority Critical patent/JP5155210B2/ja
Priority to US12/616,280 priority patent/US8406533B2/en
Publication of JP2010183499A publication Critical patent/JP2010183499A/ja
Application granted granted Critical
Publication of JP5155210B2 publication Critical patent/JP5155210B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/56Information retrieval; Database structures therefor; File system structures therefor of still image data having vectorial format

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Processing Or Creating Images (AREA)

Description

本発明は、画像比較装置及びその方法、画像検索装置、並びにプログラム及び記録媒体に関する。詳しくは、JPEG(Joint Photographic Experts Group)2000方式などに従って圧縮符号化された画像と特定画像とを比較して一致判定や類似度判定を行う画像比較装置及びその方法に関する。また、JPEG2000方式などに従って圧縮符号化された映像コンテンツから特定画像と略々一致する画像を検索する画像検索装置及びその方法、並びにプログラム及び記録媒体に関する。
従来から、例えば映像コンテンツの検索などの目的のために、特定画像を検索クエリとして、未知の映像コンテンツの中から特定画像と略々一致する画像を検索する技術が必要とされている。下記特許文献1には、映像コンテンツから短時間フレーム毎に特徴量を抽出して特徴ベクトルを構成し、その特徴ベクトルと特定画像の特徴ベクトルとを比較することにより、映像コンテンツの中から特定画像と略々一致する画像を検索する技術が提案されている。
ところで、近年、デジタルカメラやデジタルカムコーダといった商品の普及に伴い、画像が直接デジタルで撮影され、画像圧縮を施されて記録されることが多くなっている。また、テレビジョン番組をデジタル化した上で画像圧縮を施し、アーカイブとして保存することも行われている。さらに、2004年にデジタルシネマの規格化において画像圧縮方式としてJPEG2000方式が採用されることが決定され、多くの映画フィルムがデジタル化された上、JPEG2000方式に従って圧縮符号化されて利用される流れとなっている。
そこで、今後は、特にJPEG2000方式に従って圧縮符号化された多数の画像から特定画像と略々一致する画像を検索するニーズが一層高まることが予想される。また、JPEG2000方式に従って圧縮符号化された映像コンテンツの中から特定画像と略々一致する画像を検索したりするニーズが一層高まることが予想される。しかしながら、特許文献1などの従来の技術では、検索前に画像や映像コンテンツを完全に復号する必要があるため、処理全体の演算量が多くなるという問題があった。
このため、下記特許文献2では、JPEG2000方式などに従って圧縮符号化された画像を完全に復号することなく、特定画像との一致判定や類似度判定を行う画像比較装置及びその方法を開示している。また、JPEG2000方式などに従って圧縮符号化された映像コンテンツを完全に復号することなく、特定画像と略々一致する画像を検索する画像検索装置及びその方法、並びにプログラム及び記録媒体を開示している。
この特許文献2に記載された技術においては、JPEG2000のコードストリームからコードブロック毎のゼロビットプレーン数を抽出する第1の特徴量抽出手段と、上記コードストリームから符号化パラメータを抽出する符号化パラメータ抽出手段と、上記符号化パラメータに基づいて、特定画像に対してウェーブレット変換及び量子化を施した後、量子化係数をコードブロックに分割し、コードブロック毎のゼロビットプレーン数を抽出する第2の特徴量抽出手段と、上記コードストリームのコードブロック毎のゼロビットプレーン数と、上記特定画像のコードブロック毎のゼロビットプレーン数とを同一位置のコードブロック同士で比較し、比較結果に応じて上記コードストリームと上記特定画像とが略々一致するか否かを判定する比較手段とを備えている。
特開2004−45565号公報 特開2006−285615号公報
上記特許文献2に記載された技術によれば、JPEG2000方式などに従って圧縮符号化された映像コンテンツを完全に復号することなく、コードストリームと特定画像を比較することができる利点がある。その反面、コードストリームから符号化パラメータを抽出して、そのパラメータに基づいて特定画像を圧縮符号化する必要がある。従って、両者間で量子化ステップサイズが異なると、ゼロビットプレーン数が異なってしまうために、比較ができなくなる、という点で改善が望まれている。
本発明は、上述したような実情に鑑みて提案されたものであり、JPEG2000方式などに従って圧縮符号化されたコードストリームと特定画像との間で、量子化ステップサイズが異なっても、コードストリームを完全に復号することなく高い精度で比較を行って、一致判定や類似度判定が行えるような画像比較装置及びその方法、特定画像と略々一致する画像を検索する画像検索装置、並びにプログラム及び記録媒体を提供することを目的とする。
上述の課題を解決するために、本発明は、画像を符号化して得られるコードストリームと特定画像とを比較して一致するかを判定する画像比較装置であって、上記コードストリームのゼロビットプレーン数に基づき、処理対象となる着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第1のベクトルを算出するベクトル算出部と、上記特定画像における着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第2のベクトルを出力するベクトル出力部と、上記ベクトル算出部からの第1のベクトルと上記ベクトル出力部からの第2のベクトルとを、上記コードストリームと上記特定画像との同じ位置の着目コードブロックについて順次比較し、比較結果に応じて上記コードストリームと上記特定画像とが一致するか否かを判定する比較部とを備える。
ここで、上記ベクトル出力部は、上記コードストリームを符号化する際に用いられた符号化パラメータの内の量子化ステップサイズを含まない符号化パラメータを用いて上記特定画像を符号化する際に得られるコードブロック毎のゼロビットプレーン数に基づき算出された上記第2のベクトルを出力することが好ましい。
上記第1、第2のベクトルは、例えば、上記着目コードブロックのゼロビットプレーン数と、該着目コードブロックに隣接する周囲8箇所のコードブロックの内の1以上のコードブロックのゼロビットプレーン数との差分をベクトルで表現したものである、と定義することができる。
上記比較部は、上記ベクトル算出部からの着目コードブロックの第1のベクトルと上記ベクトル出力部からの上記着目コードブロックと同じ位置のコードブロックの第2のベクトルとを比較し、一致したコードブロックの数が予め設定された閾値以上となる場合に、上記コードストリームと上記特定画像とが一致したと判定することが挙げられる。この場合の比較部としては、上記コードストリーム及び上記特定画像における各画像内の全てのコードブロックについて、上記第1のベクトルと上記第2のベクトルとが一致した場合に、上記コードストリームと上記特定画像とが一致したと判定することが挙げられる。あるいは、上記比較部は、上記コードストリームと上記特定画像とについて、一部のコンポーネント、又は一部のサブバンドについてのみ、上記第1のベクトルと上記第2のベクトルとを比較することが挙げられる。
また、上記コードストリームを解析することにより上記コードストリームからコードブロック毎のゼロビットプレーン数を抽出するコードストリーム解析部を備え、上記ベクトル算出部は、上記コードストリーム解析部により抽出されたゼロビットプレーン数に基づき上記第1のベクトルを算出することが挙げられる。
また、上記コードストリームから符号化パラメータを抽出する符号化パラメータ抽出部を備え、上記ベクトル出力部は、上記コードストリーム抽出部により抽出された符号化パラメータの内の量子化ステップサイズを含まない符号化パラメータを用いて上記特定画像を符号化する際に得られるコードブロック毎のゼロビットプレーン数に基づき上記第2のベクトルを算出する第2のベクトル算出部を有する構成としてもよい。
また例えば、上記コードストリームは、上記画像をJPEG2000方式に従って圧縮符号化して得られたものであり、上記符号化パラメータは、ウェーブレット変換フィルタ情報、ウェーブレット変換の分解レベル数、量子化ステップサイズ、コードブロックサイズ、ガードビット情報、目標圧縮率を含み、上記ベクトル出力部は、上記コードストリームを符号化する際に用いられた符号化パラメータの内の量子化ステップサイズを含まない符号化パラメータを用いて上記特定画像をJPEG2000方式に従って符号化する際に得られるコードブロック毎のゼロビットプレーン数に基づき算出された上記第2のベクトルを出力することが挙げられる。
このような構成の画像比較装置は、コードストリーム及び特定画像における、処理対象となる同じ位置の着目するコードブロックのゼロビットプレーン数とその近傍の(例えば隣接する)1以上のコードブロックのゼロビットプレーン数との相関(例えば差分)を表すベクトル(あるいはベクトル値)を特徴量として、コードストリームと特定画像との一致判定(同定)を行っている。これは、量子化ステップサイズが異なっていても、生成される量子化係数のゼロビットプレーン数の相関、例えば大小関係は変わらないため、ゼロビットプレーン数の差分を表すベクトルを特徴量とすることにより、量子化ステップサイズに影響されず高精度の比較が行えることを考慮したものである。
次に、本発明に係る画像比較方法は、上記目的を達成するために、画像を符号化して得られるコードストリームと特定画像とを比較して一致するかを判定する画像比較方法であって、上記コードストリームを解析することにより上記コードストリームからコードブロック毎のゼロビットプレーン数を抽出するコードストリーム解析工程と、上記コードストリーム解析工程により抽出されたゼロビットプレーン数に基づき、処理対象となる着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第1のベクトルを算出するベクトル算出工程と、上記特定画像について着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第2のベクトルを出力するベクトル出力工程と、上記ベクトル算出工程からの第1のベクトルと上記ベクトル出力工程からの第2のベクトルとを、上記コードストリームと上記特定画像との同じ位置の着目コードブロックについて順次比較し、比較結果に応じて上記コードストリームと上記特定画像とが一致するか否かを判定する比較工程とを有する。
次に、本発明に係る画像検索装置は、上記目的を達成するため、複数の画像を符号化して得られるコードストリーム列と特定画像とを比較して一致する画像のコードストリームを検索する画像検索装置であって、上記コードストリーム列の上記コードストリームを順次解析することにより当該コードストリームからコードブロック毎のゼロビットプレーン数を抽出するコードストリーム解析部と、上記コードストリーム解析部により抽出されたゼロビットプレーン数に基づき、処理対象となる着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第1のベクトルを算出するベクトル算出部と、上記特定画像について着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第2のベクトルを出力するベクトル出力部と、上記ベクトル算出部からの第1のベクトルと上記ベクトル出力部からの第2のベクトルとを、上記コードストリームと上記特定画像との同じ位置の着目コードブロックについて順次比較し、比較結果に応じて上記コードストリームと上記特定画像とが一致するか否かを判定する比較部と、上記コードストリーム列の内の上記比較部により一致すると判定された上記コードストリームを選択する選択部とを備える。
次に、本発明に係る画像比較装置は、上記目的を達成するため、画像を符号化して得られるコードストリームと特定画像とを比較して類似度を出力する画像比較装置であって、上記コードストリームを解析することにより上記コードストリームからコードブロック毎のゼロビットプレーン数を抽出するコードストリーム解析部と、上記コードストリーム解析部により抽出されたゼロビットプレーン数に基づき、処理対象となる着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第1のベクトルを算出するベクトル算出部と、上記特定画像について着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第2のベクトルを出力するベクトル出力部と、上記ベクトル算出部からの第1のベクトルと上記ベクトル出力部からの第2のベクトルとを、上記コードストリームと上記特定画像との同じ位置の着目コードブロックについて順次比較し、比較結果を出力する比較部と、上記比較部からの比較結果を累積して上記コードストリームと上記特定画像との類似度を出力する累積部とを備える。
さらに、本発明に係るプログラムは、上述した画像比較処理、画像検索処理をコンピュータに実行させるものであり、本発明に係る記録媒体は、そのようなプログラムが記録されたコンピュータ読み取り可能なものである。
本発明によれば、コードストリームと特定画像とを比較する際に、両者間で量子化ステップサイズが異なってゼロビットプレーン数が異なる場合でも、着目するコードブロックのゼロビットプレーン数とその近傍の1以上のコードブロックのゼロビットプレーン数との相関を表すベクトルを特徴量として比較を行うことにより、コードストリームを完全に復号することなく、コードストリームと特定画像とを高い精度で比較し、一致判定や類似度判定を行うことができる。
画像をJPEG2000方式に従って符号化してコードストリームを生成する画像符号化装置の概略構成を示すブロック図である。 JPEG2000方式におけるウェーブレット変換処理後のサブバンドの一例を示す図である。 コードブロックとビットプレーンとの関係を示す図である。 コードストリームをJPEG2000方式に従って復号して復号画像を生成する画像復号装置の概略構成を示すブロック図である。 特許文献2(特開2006−285615号公報)に記載された画像比較装置の概略構成を示すブロック図である。 同一位置にあるコードブロック同士の比較を説明するための図である。 量子化ステップサイズによって最大ビットプレーン数が変化することを説明するための図である。 本発明の第1の実施の形態の画像比較装置の概略構成を示すブロック図である。 JPEG2000コードストリームのデータベースに対する特定画像の検索を説明するための図である。 処理対象となる着目コードブロック及びその周辺8方向で隣接する8個のコードブロックを説明する図である。 着目コードブロック及び隣接コードブロックのゼロビットプレーン間の相関を表すベクトルを算出するための隣接コードブロックのパターンの3つのケースを示す図である。 本発明の第1の実施の形態の画像比較装置の動作を説明するためのフローチャートである。 サブバンドの選択順序及び特定のサブバンド内での比較を行うことを説明するための図である。 本発明の第2の実施の形態の画像比較装置の概略構成を示すブロック図である。 本発明の第3の実施の形態の画像比較装置の概略構成を示すブロック図である。 本発明の第4の実施の形態となる画像検索装置の概略構成を示すブロック図である。 本発明の第4の実施の形態となる画像検索装置の動作を説明するためのフローチャートである。 本発明の第5の実施の形態の画像比較装置の概略構成を示すブロック図である。 本発明の第5の実施の形態の画像比較装置の動作を説明するためのフローチャートである。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。なお、説明は以下の順序で行う。
1.JPEG2000方式(図1〜図4)
2.特許文献2に記載の画像比較装置(図5〜図7)
3.第1の実施の形態(図8〜図13)
4.第2の実施の形態(図14)
5.第3の実施の形態(図15)
6.第4の実施の形態(図16、図17)
7.実施の形態の実験例(シミュレーション例)
8.第5の実施の形態(図18、図19)
9.他の構成例
<1.JPEG2000方式>
[本発明に適用可能な符号化方式]
以下に説明する実施の形態は、本発明を、例えばJPEG2000方式に従って圧縮符号化されたコードストリームの符号化前の画像と特定画像とを比較して一致判定や類似度判定を行うための画像比較装置及びその方法に適用したものである。また、本発明を、例えばJPEG2000方式に従って圧縮符号化された映像コンテンツやコードストリームのデータベースから特定画像と略々一致する画像を検索する画像検索装置及びその方法に適用したものである。
ここで、本発明の具体的な実施の形態について説明するに先立って、画像をJPEG2000方式に従って符号化してコードストリームを生成する画像符号化装置について、図1を参照しながら説明する。また、この符号化されて得られたコードストリームをJPEG2000方式に従って復号して復号画像を生成する画像復号装置についても、図面を参照しながら説明する。
[JPEG2000方式の画像符号化装置の概略構成]
先ず、画像をJPEG2000方式に従って符号化してコードストリームを生成する画像符号化装置の概略構成を図1のブロック図に示す。
図1に示す画像符号化装置100において、ウェーブレット変換器101は、入力された画像に対してウェーブレット変換を施し、サブバンド毎のウェーブレット係数を生成する。なお、JPEG2000方式におけるウェーブレット変換は、図2に示すように、縦横2次元のフィルタでフィルタリング処理を施し、低域のサブバンドについては再帰的にフィルタリング処理を施すMallat分割である。図2の例では、3回のウェーブレット変換により、合計10個のサブバンドが形成されている。
量子化器102は、サブバンド毎のウェーブレット係数を量子化し、量子化係数を生成する。コードブロック化器103は、サブバンド毎の量子化係数を同じ大きさの矩形領域であるコードブロックに分割し、コードブロック毎の量子化係数を2値(0又は1)の係数ビットの集合であるビットプレーンに展開する。
ここで図3は、ウェーブレット変換後に生成されるサブバンド、コードブロック、ビットプレーンの関係の一例を示している。図3(A)に示すように形成された各サブバンド毎の量子化係数を同じ大きさの矩形領域であるコードブロックに分割する。コードブロックのサイズは通常64×64または32×32であるが、図3(B)の例では、説明の都合上、4×3のサイズで、計12個の量子化係数からなるコードブロックとしている。この図3(B)に示すコードブロックは、図3(C)に示すように、符号のビットプレーンと絶対値のビットプレーンとに展開される。ビットプレーン数検出器104は、コードブロック毎にゼロビットプレーン数を検出する。ここで、ゼロビットプレーン数とは、全ての係数ビットの値が0であるビットプレーンが最上位ビット(MSB:Most Significant Bit)側に幾つあるかを表したものである。例えば図3(C)の場合、ゼロビットプレーン数は2である。そして、ゼロビットプレーン削除器105は、コードブロックからゼロビットプレーンを削除する。
ビットモデリング器106は、ゼロビットプレーンを含まないコードブロックについてビットモデリングを行い、MQシンボルとMQコンテキストとの組を生成する。MQ符号化器107は、MQシンボルとMQコンテキストとの組をMQ符号化し、MQ符号を生成する。最後に、コードストリーム生成器108は、MQ符号とゼロビットプレーン数とからコードストリームを生成して出力する。
[JPEG2000方式の画像復号装置の概略構成]
次に、このコードストリームをJPEG2000方式に従って復号して復号画像を生成する画像復号装置の概略構成を図4のブロック図に示す。
図4に示す画像復号装置200において、コードストリーム解析器201は、入力されたコードストリームを解析してMQ符号とゼロビットプレーン数とを抽出する。MQ復号器202は、ビットモデリング器203から与えられるMQコンテキストを用いてMQ符号を復号し、MQシンボルを生成する。
ビットモデリング器203は、MQシンボルに基づいてゼロビットプレーンを含まないコードブロックを構成し、ゼロビットプレーン付加器204は、ゼロビットプレーンを含まないコードブロックに対してゼロビットプレーンを付加する。フレーム化器205は、ゼロビットプレーンを含むコードブロックをサブバンド毎に纏めてサブバンド毎の量子化係数を生成する。逆量子化器206は、フレーム化器205からのサブバンド毎の量子化係数を逆量子化してサブバンド毎のウェーブレット係数を生成する。最後に、逆ウェーブレット変換器207は、サブバンド毎のウェーブレット係数に対して逆ウェーブレット変換を施し、復号画像を生成する。
<特許文献2に記載の画像比較装置>
[画像比較装置の概略構成及び動作]
ここで、上記特許文献2(特開2006−285615号公報)に記載された画像比較装置の概略構成を図5に示す。この画像比較装置301は、一方の端子から入力された、上記JPEG2000方式に従って符号化して生成されたコードストリームと、他方の端子から入力された特定画像とを比較し、一致判定を行うものである。
この画像比較装置301において、コードストリームは、符号化パラメータ抽出器310と、コードストリーム特徴量抽出器320とに入力される。一方、特定画像は、画像特徴量抽出器330に入力される。
符号化パラメータ抽出器310は、コードストリームの符号化パラメータを抽出し、この符号化パラメータを画像特徴量抽出器330内のウェーブレット変換器331、量子化器332、コードブロック化器333に供給する。この符号化パラメータとしては、例えばウェーブレット変換の部分では、フィルタの種類や、ウェーブレット変換の回数である。また、量子化の部分では、量子化ステップの大きさが挙げられ、コードブロック化の部分では、コードブロックの大きさである。
コードストリーム特徴量抽出器320は、コードストリーム解析器321を有し、このコードストリーム解析器321は、コードストリームを解析してコードブロック毎のゼロビットプレーン数を抽出する。
画像特徴量抽出器330は、ウェーブレット変換器331、量子化器332、コードブロック化器333及びゼロビットプレーン数検出器334を有する。この画像特徴量抽出器330は、コードストリームの符号化パラメータに基づいて、特定画像のコードブロック毎のゼロビットプレーン数を検出する。具体的に、ウェーブレット変換器331は、特定画像に対してウェーブレット変換を施してサブバンド毎のウェーブレット係数を生成し、量子化器332は、サブバンド毎のウェーブレット係数を量子化して量子化係数を生成する。コードブロック化器333は、サブバンド毎の量子化係数をコードブロックに分割すると共に、コードブロック毎の量子化係数をビットプレーンに展開し、ゼロビットプレーン数検出器334は、コードブロック毎のゼロビットプレーン数を検出する。
比較器340は、コードストリーム解析器321から供給されたゼロビットプレーン数とゼロビットプレーン数検出器334から供給されたゼロビットプレーン数とを比較することで、コードストリームと特定画像との一致判定を行い、判定結果を出力する。
この比較器340における比較は、図6に示すように、同一位置にあるコードブロック同士で比較して、一致か否かの判定結果を出力する。
この比較器340における比較方法を含めて、画像比較装置301の処理について説明する。先ず、符号化パラメータ抽出器310はコードストリームの符号化パラメータを抽出する。この符号化パラメータに基づいて、画像特徴量抽出器330内のウェーブレット変換器331、量子化器332、コードブロック化器333は、特定画像に対してウェーブレット変換、量子化を施し、コードブロックに分割する。
次に、コードストリームに未処理のコードブロックがあるか否かを判別し、未処理のコードブロックがある場合には、コードストリームの次の未処理のコードブロックを設定し、該未処理のコードブロックに対応する特定画像のコードブロックを設定する。そして、これらの対応するコードストリームのコードブロックと特定画像のコードブロックの各ゼロビットプレーン数を比較し、ゼロビットプレーン数が一致しているか否かを判別する。ゼロビットプレーン数が一致していない場合には、コードストリームと特定画像とが不一致であると判定し、ゼロビットプレーン数が一致している場合には、さらに次の未処理のコードブロックがあるか否かを判別する。一方、未処理のコードブロックがない場合、すなわち全てのコードブロックのゼロビットプレーン数が一致と判定された場合には、コードストリームと特定画像とが一致していると判定する。
このように、上記特許文献2に記載の画像比較装置301によれば、コードストリームと特定画像とについて、同じ位置のコードブロック同士でゼロビットプレーン数を比較している。そして、全てのコードブロックでゼロビットプレーン数が一致するか否かにより、コードストリームの符号化前の画像と特定画像との一致判定(同定)を行うことができる。この場合、コードストリームからはゼロビットプレーン数を抽出するのみで完全に復号することがないため、MQ復号、ビットモデリング、逆量子化、逆ウェーブレット変換などの処理が不要になる。
[改善が望まれる点]
ところで、JPEG2000規格においては、量子化ステップサイズΔは、下記の(式1)によって定義される。この(式1)において、Rは画像信号のダイナミックレンジ、bはサブバンド、εは指数値、μは仮数値を示す。同様に、最大許容ビットプレーン数Mは下記の(式2)によって定義される。
Δ=2RE(1+μ/211) ・・・(式1)
=G+ε−1 ・・・(式2)
ただし、RE=R・ε
これより、量子化ステップサイズの値が変われば、その因子の1つであるεが変わるので、Mの値も変わる。従って、JPEG2000エンコード時の量子化パラメータの値の違いによって、全ビットプレーン数が変化することになる。
上記図3は、ウェーブレット変換後に生成されるサブバンド、コードブロック、ビットプレーンの関係を図示したものである。コードブロックのサイズは通常64×64または32×32であるが、上記図3の例では、説明の都合上4×3としている。量子化係数値は、符号(±)と絶対値情報とに分けられ、後者は2進数表現によって生成されるビットプレーンに展開される。
MSB(Most Significant Bit)からLSB(Least Significant Bit)に至るビットプレーンの中で、すべての係数値が0であるビットプレーンをゼロビットプレーンと呼ぶ。従って上記図3の場合ではゼロビットプレーン数=2になる。
これに対して、図7は、3つのコードブロック(CB0、CB1、CB2)のMSBからLSBに至る有効ビットプレーン、ゼロビットプレーン、切り捨て後のビットプレーンを図示したものである。図7(A)は最大ビットプレーン数=Mbの場合で、左のコードブロックから順番に、
CB0:ゼロビットプレーン(ZBP)=1
CB1:ゼロビットプレーン(ZBP)=3
CB2:ゼロビットプレーン(ZBP)=2
となっている。なお、最下位側のビットプレーンは、レート制御の結果、切り捨てられているので、有効ビットプレーンには含まれない。
一方、図7(B)は最大ビットプレーン数Mb’=Mb+1、すなわち、図7(A)の場合よりも1つ多い場合を示している。この場合は、ゼロビットプレーン数も自動的にそれぞれ1つ大きな値になる。従って、以上のことから、量子化ステップサイズの値が変わればMbの値が変わり、その結果ゼロビットプレーン数も変化することがわかる。
このため、コードストリームと特定画像との両者間で量子化ステップサイズが異なると、ゼロビットプレーン数が異なってしまうため、比較器340での比較ができなくなり、上述したような一致判定が行えなくなる。
このような点に鑑み、本発明の実施の形態では、コードストリームと特定画像とを比較する際に、両者間で量子化ステップサイズが異なってゼロビットプレーン数が異なる場合でも、高い精度で比較が行えるようにしている。
すなわち、本発明の実施の形態においては、着目するコードブロックのゼロビットプレーン数とその近傍の(例えば隣接する)1以上のコードブロックのゼロビットプレーン数との相関(例えば差分)を表すベクトル(あるいはベクトル値)を特徴量としている。これは、後述するように、量子化ステップサイズが異なっていても、生成される量子化係数の相関、例えば大小関係は変わらないため、ゼロビットプレーン数の差分を表すベクトルを特徴量とすることにより、高精度の比較が行えるためである。
<3.第1の実施の形態>
[第1の実施の形態の概略構成]
以下、本発明に係る画像比較装置の第1の実施の形態について、図8を参照しながら説明する。図8は、本発明の第1の実施の形態となる画像比較装置の概略構成を示すブロック図である。
この図8に示す画像比較装置1は、一方の端子から入力されたコードストリーム500と、他方の端子から入力された特定画像501とを比較し、一致判定(同定)を行うものである。コードストリーム500は、例えばJPEG2000方式により符号化されて得られたものであり、例えば図9に示すように、JPEG2000コードストリームのデータベースDBに記憶保持されている。本発明の実施の形態は、このデータベースDBに記憶保持されているJPEG2000コードストリームの中から、特定画像QUと同一の画像Dを検索する、あるいは同定することが目的である。
この画像比較装置1において、コードストリーム500は、符号化パラメータ抽出部10と、コードストリーム特徴量抽出部20とに入力される。一方、特定画像501は、特定画像特徴量出力部30に入力される。この図8に示す画像比較装置と上記図5に示した上記特許文献2に記載の画像比較装置との差異点は、ベクトル算出部22とベクトル算出部35とを設けたことである。ベクトル算出部22からのベクトル504とベクトル算出部35からのベクトル509との比較は、上記図6で示したように、同一位置のコードブロック単位に行う。
符号化パラメータ抽出部10は、コードストリーム500の符号化パラメータ502を抽出し、この符号化パラメータ502を特定画像特徴量出力部30内のウェーブレット変換部31、量子化部32、コードブロック化部33に供給する。ここで、上記符号化パラメータ502は、コードブロック毎の量子化係数がどのように作成されているかを示すものである。例えばウェーブレット変換の部分では、フィルタの種類(可逆5−3フィルタ、非可逆9−7フィルタなど)や、ウェーブレット変換の回数(5回、4回など)が挙げられる。また、量子化の部分では、量子化ステップの大きさ(1/128、1/64など)が挙げられ、コードブロック化の部分では、コードブロックの大きさ(縦64横64、縦32横128、縦32横32など)が挙げられる。
ここで、上記量子化ステップの大きさ(量子化ステップサイズ)については、コードストリームと同一にする必要がない。これは、後述するように、隣接するコードブロックのゼロビットプレーン数の相関を表すベクトル(あるいはベクトル値)を用いて比較を行っているからである。この量子化ステップサイズ以外の符号化パラメータについては、コードストリームを一度解析すればよく、例えば同定処理に先立って抽出しておいてもよい。また、量子化ステップサイズ以外の全ての符号化パラメータが必要ではなく、特定画像501を符号化していく途中段階のコードブロック化までを行って、コードブロックのゼロビットプレーン数を求めるために必要なパラメータのみでよい。例えば、JPEG2000符号化で規定されているビット打ち切りのパラメータは、ゼロビットプレーン数に影響を与えないため不要である。すなわち、符号化パラメータ抽出部10がコードストリーム500から抽出して特定画像特徴量出力部30に供給すべき符号化パラメータは、ゼロビットプレーン数を求めるために必要な符号化パラメータの内の量子化ステップサイズ以外のパラメータとなる。特定画像501に対して、コードブロック化までの符号化を行ってゼロビットプレーン数を求める際の量子化ステップサイズとしては、コードストリーム500の量子化ステップサイズとは異なっても、任意の量子化ステップサイズを適宜用いればよい。
コードストリーム特徴量抽出部20は、コードストリーム解析部21及びベクトル算出部22を有し、コードストリーム解析部21は、コードストリーム500を解析してコードブロック毎のゼロビットプレーン数503を抽出する。ベクトル算出部22は、後述するように、隣接するコードブロック同士でゼロビットプレーン数の相関に基づいて、ベクトル(あるいはベクトル値)504を算出する。このベクトルとしては、例えば具体的には、着目コードブロックのゼロビットプレーン数と該着目コードブロックに隣接するコードブロックのゼロビットプレーン数との差分を要素(元)とするベクトルを用いることができる。
特定画像特徴量出力部30は、ウェーブレット変換部31、量子化部32、コードブロック化部33、ゼロビットプレーン数検出部34及びベクトル算出部35を有している。この特定画像特徴量出力部30は、コードストリームの符号化パラメータに基づいて特定画像を符号化する際のコードブロック毎のゼロビットプレーン数を検出し、隣接するコードブロック同士でゼロビットプレーン数の相関によりベクトルを算出する。具体的に、ウェーブレット変換部31は、特定画像501に対してウェーブレット変換を施してサブバンド毎のウェーブレット係数505を生成する。量子化部32は、サブバンド毎のウェーブレット係数505を量子化して量子化係数506を生成する。この量子化の際の量子化ステップサイズは、上述したように、コードストリーム500を解析して得られた量子化ステップサイズに等しくする必要はなく、量子化の際に適宜設定すればよい。コードブロック化部33は、サブバンド毎の量子化係数506をコードブロック507に分割すると共に、コードブロック毎の量子化係数をビットプレーンに展開する。ゼロビットプレーン数検出部34は、コードブロック毎のゼロビットプレーン数508を検出する。ベクトル算出部35は、後述するように、隣接するコードブロック同士でゼロビットプレーン数の相関によりベクトル509を算出する。
比較部40は、ベクトル算出部22から供給されたベクトル504とベクトル算出部35から供給されたベクトル509とを比較することで、コードストリームと特定画像との一致判定を行い、判定結果510を出力する。
[ベクトル算出の例]
次に、上記ベクトル(あるいはベクトル値)の算出の具体例について、図10を参照しながら説明する。
図10は、比較処理を進めている際の処理対象となる着目コードブロック及びその近傍のコードブロックの例を示しており、図10の中心位置の斜線部の着目コードブロックと、その周囲近傍の8方向で隣接するコードブロックを示している。図中の各コードブロック内の数字は、ゼロビットプレーン数を示している。
ここで、上記図7と共に説明したように、量子化ステップサイズの値が変われば最大ビットプレーン数が変化し、その結果ゼロビットプレーン数も変化する。しかしながら、図7(A)と図7(B)とを見比べると、隣接するコードブロック同士のゼロビットプレーン数の相関関係は変化していない。すなわち、図7の中央のコードブロックCB1のゼロビットプレーン数に対して、コードブロックCB0のゼロビットプレーン数を引き算すると(−2)、コードブロックCB2のゼロビットプレーン数を引き算すると(−1)になる。この相関関係は、図7の(A)の最大ビットプレーン数=Mbの場合と、図7(B)の最大ビットプレーン数Mb’=Mb+1の場合とで変化していない。このような点を考慮し、着目コードブロックと隣接コードブロックとの間のゼロビットプレーン数の相関関係をベクトルで表し、コードストリームと特定画像とを、両者間で量子化ステップサイズが異なっても比較できるようにしている。
着目コードブロックに隣接するコードブロックとしては、種々の例が考えられるが、図11(A)〜(C)には、Case-1、Case-2、Case-3の3つのケースの場合のベクトル算出の具体例を示している。図11(A)〜(C)の斜線部のコードブロックが、処理対象となる着目コードブロックである。
ここで、一般に、着目コードブロックのゼロビットプレーン数をZとし、着目コードブロックの近傍の(例えば隣接する)コードブロックの数をn個とし、各隣接コードブロックのゼロビットプレーン数をZ,Z,・・・,Zn−1,Zとする。このとき、ベクトルSを、
=(s,s,・・・,sn−1,s) ・・・(式3)
で表す。このベクトルSのi番目(1≦i≦n)の元(要素)sは、次の条件式を満たすものとする。
=1(if (Z−Z)>0)
0(if Z−Z =0)
−1(if (Z−Z)<0) ・・・(式4)
すなわち、上記ベクトルのi番目(1≦i≦n)の元(要素)sは、着目コードブロックのゼロビットプレーン数Zから、i番目の隣接コードブロックのゼロビットプレーン数Zを減算した値の符号(正のとき1、0のとき0、負のとき−1)に相当する。あるいは、着目コードブロックのゼロビットプレーン数Zに対する、i番目の隣接コードブロックのゼロビットプレーン数Zの大小判定結果とも考えられる。この他、隣接するコードブロック同士のゼロビットプレーン数の相関を表すベクトルとしては、例えば、差分値そのものを上記ベクトルの元(要素)としてもよい。
上記図11の3つのケースCase-1、Case-2、Case-3において、Case-1の場合は、着目コードブロックのゼロビットプレーン数と図中右隣のコードブロックのゼロビットプレーン数との相関をベクトルSで表している。Case-2の場合は、着目コードブロックのゼロビットプレーン数と図中上下左右で隣接する4つのコードブロックのゼロビットプレーン数との相関をベクトルSで表している。Case-3の場合は、着目コードブロックのゼロビットプレーン数と図中上下左右及び斜め方向で隣接する8つのコードブロックのゼロビットプレーン数との相関をベクトルSで表している。
図11の場合の各ケースCase-1、Case-2、Case-3における各ベクトルS、S、Sは、それぞれ次のようになる。
(1)Case-1:
着目コードブロックのゼロビットプレーン数(Z)と図中右隣のコードブロックのゼロビットプレーン数(Z)との間で大小判定を行うと、S=3−3=0になる。
(2)Case-2:
上記Case-1と同様にして、着目コードブロックのゼロビットプレーン数(Z)と、周囲(上下左右)の4個のコードブロックのゼロビットプレーン数(Z〜Z)との大小判定によって、S=(0,−1,1,1)が得られる。
(3)Case-3:
上記の各ケースと同様の計算を、周囲8方向の8個のコードブロックのゼロビットプレーン数(Z〜Z)に対して行うと、S=(0,1,−1,−1,1,0,1,1)が得られる。
比較部40における比較としては、上記各ケースCase-1、Case-2、Case-3のいずれか1つ、あるいは2つ以上のベクトルを用い、コードストリームと特定画像との同一位置にある着目コードブロック同士でベクトルを比較する。そして、コードストリーム及び特定画像における全てのコードブロックについて、あるいは一定以上のコードブロックについて、上記ベクトルが一致する場合に、該コードストリームの画像は上記特定画像と同一であると判定(同定)する。
[画像比較装置の動作説明]
以下、上記図8の画像比較装置1の比較部40における比較方法を含めて、画像比較装置1の同定処理の一例について、図12のフローチャートを参照しながら説明する。ここで、図8のコードストリーム500は、例えば上記図9に示すようなJPEG2000コードストリームが記憶保持されたデータベースDBから読み出して供給されるものである。図8の画像比較装置1は、例えばこのようなデータベースDBに記憶保持されたJPEG2000コードストリームの中から、上記特定画像と同一の画像を検索するために用いられるものである。
先ず、図8のコードストリーム500の符号化パラメータ502が、符号化パラメータ抽出部10により抽出され、特定画像特徴量出力部30のウェーブレット変換部31、量子化部32、コードブロック化部33に供給される。このコードストリーム500から抽出すべき符号化パラメータ502としては、JPEG2000符号化方式における、量子化ステップサイズを含まない符号化パラメータのみでよい。量子化ステップサイズを含まない符号化パラメータとしては、DWTフィルタ、DWT分解レベル数、コードブロックサイズなどが挙げられる。
図12のステップS1において、図8のコードストリーム特徴量抽出部20が、コードストリーム500の特徴量としてのベクトル504を出力する。すなわち、コードストリーム特徴量抽出部20のコードストリーム解析部21がコードストリーム500を解析して抽出されたコードブロック毎のゼロビットプレーン数503に基づいて、ベクトル算出部22が算出する。このベクトル504は、上述したように、入力されたコードストリームの処理対象となる着目コードブロックのゼロビットプレーン数と、この着目コードブロックに隣接するコードブロックのゼロビットプレーン数との相関を表す特徴量である。ここで、JPEG2000のコードストリームは、複数のパケットから構成され、各パケットはパケットヘッダとパケットボディから構成されている。パケットヘッダには、各コードブロックの符号化パス数、ゼロビットプレーン数などの情報が格納されている。すなわち、コードブロックのゼロビットプレーン数は、パケットヘッダを解析するだけで復号することなく取得可能である。
次のステップS2においては、図8の特定画像特徴量出力部30が、特定画像501について、上記コードストリームの着目コードブロックと同一位置のコードブロックのベクトル509を出力する。すなわち、符号化パラメータ抽出部10により抽出されたコードストリーム500の符号化パラメータ502に基づいて、先ず、ウェーブレット変換部31、量子化部32、コードブロック化部33が、特定画像501をJPEG2000符号化する。コードブロック化部33からのコードブロック507がゼロビットプレーン数検出部34に送られ、ゼロビットプレーン数検出部34は、コードブロック毎のゼロビットプレーン数508を検出する。そして、ベクトル算出部35が、隣接するコードブロック同士でゼロビットプレーン数の相関によりベクトル509を算出し、特定画像501の特徴量として、比較部40に出力する。
図12の次のステップS3において、コードストリーム500の着目コードブロックのベクトル504と、特定画像501の同一位置のコードブロックのベクトル509とを比較し、一致しているか否かを判別する。一致している場合(YES)には、ステップS4に進み、一致していない場合(NO)には、ステップS6に進んで、後述するようにコードストリームの画像は上記特定画像と不一致であると判定する。
ステップS4では、上記コードストリームの画像内にまだ未処理コードブロックがあるか否かを判別し、未処理コードブロックがある場合(YES)には、ステップS5に進む。未処理コードブロックが無くなった場合(NO)、すなわち処理すべき全てのコードブロックについてのベクトルの一致判別が終了した場合には、ステップS7に進んで、後述するようにコードストリームの画像は上記特定画像に一致すると判定(同定)する。
ステップS5では、コードストリームの画像内の次の未処理コードブロックに移って、これを新たな着目コードブロックとして、上記ステップS1に戻る。ステップS1では、コードストリームの画像内での更新された着目コードブロックについて、上述したような隣接コードブロックとの間のゼロビットプレーン数の相関(差分)を表すベクトルを算出する。ステップS2では、特定画像内での更新された着目コードブロックと同じ位置のコードブロックについてのベクトルを算出する。ステップS3以降では、上述と同様な一致判定(同定)処理を進める。
上記ステップS1、S2においては、毎回コードストリームの解析や、特定画像のコードブロック化などを行う必要はなく、処理対象となる着目コードブロックについてのベクトル504、509を算出する処理のみを行うようにしてもよい。例えば、画像内で処理すべき全てのコードブロックについてのゼロビットプレーン数を先に求めておくようにしたり、サブバンド毎に全てのコードブロックのゼロビットプレーン数を予めまとめて計算しておくようにしてもよい。
そして、ステップS3で、一つでもベクトルが不一致のコードブロックが検出されれば、残りのコードブロックについての処理を進めることなく、ステップS6に進んで、コードストリームの画像は上記特定画像と不一致であると判定される。
これに対して、ステップS4で、未処理コードブロックが無くなった場合は、コードストリームの画像内で処理すべき全てのコードブロックのベクトルについて、特定画像の対応する位置のコードブロックのベクトルと完全に一致した場合に相当する。従って、ステップS7に進んで、当該コードストリームの画像は特定画像と同一であると判定(同定)する。
上記ステップS3におけるコードブロック及び特定画像の各ベクトル504と509との一致、不一致の判別について説明する。上記図11と共に説明したようなn個の元(要素)s(1≦i≦n)から成るベクトルSの場合、全ての要素sが完全に一致していれば、各ベクトル504、509は一致とする。
ここで、上記(式4)に示したように、ベクトルSのi番目(1≦i≦n)の元(要素)sは、着目コードブロックのゼロビットプレーン数Zからi番目の隣接コードブロックのゼロビットプレーン数Zを減算した値の符号に相当する。すなわち、減算した値が正のとき1、減算した値が0のとき0、減算した値が負のとき−1の値をとる。この場合、要素sの一致は、コードストリームの画像と特定画像とで、ベクトルの要素sが互いに完全に等しい場合を条件としてもよいが、どちらか一方が0であれば、一致と判定するようにしてもよい。すなわち、ベクトルの要素sの一方が−1で他方が0の場合や、一方が0で他方が1の場合なども、一致と判定する。これは、s=0となった場合は、同じ原画像を異なる量子化ステップサイズで量子化した際に、ゼロビットプレーンの差分(s)が変わる可能性があることを考慮したものである。一方がs=0の場合を一致とみなすことで、同定漏れを防ぐことが可能となる。
以上のような要素sの一致条件の下に、コードブロックのベクトルと特定画像の対応する位置のコードブロックのベクトルとの全ての要素sが完全に一致するとき、各ベクトルは一致していると判定する。
ところで、未処理のコードブロックを選択する順番(着目コードブロックの選択順序)は任意で構わないが、コードストリーム中で並んでいる順番と同じにすると処理が単純となり、好ましい。コードストリーム中で並んでいる順番は、通常、低域のサブバンドから高域のサブバンドへの順、例えばウェーブレット変換を3回行っている場合には、図13に示すようになる。この図13の例では、最低域であるLL−3のサブバンドから始め、LL−3、HL−3、LH−3、HH−3、HL−2、LH−2、HH−2、HL−1、LH−1、HH−1の順である。また、各サブバンド内ではラスタスキャン順である。一般的な画像の場合には、低域のサブバンドから高域のサブバンドへの順番で選択することにより、少ないループ回数で不一致の判定が行える。ただし、画像のインタレース成分に特徴がある場合、インタレース成分は図13のLH−1で示されるサブバンドに現れるため、このサブバンド内のコードブロックをより早く処理するような順番で選択することにより、少ないループ回数で不一致の判定が行える。
また、上述の説明では、全てのコードブロックについてベクトルを比較したが、必ずしも全てのコードブロックについて比較する必要はない。上記図13のように、ウェーブレット変換を3分割して10個のサブバンドを形成している例では、例えば、低域の4つのサブバンド(LL−3、HL−3、LH−3、HH−3)内での、マッチングを取るようにしてもよい。この場合、ウェーブレット変換の特徴から低域成分に多くの情報が集中していることを利用でき、画面全体に比べて圧倒的にコードブロック数が少ないので、高速にかつ精度低下を抑えながら比較の計算を終了することができる。
このように、本実施の形態における画像比較装置1によれば、コードストリームと特定画像とについて、同じ位置のコードブロック同士でベクトルを比較し、処理すべき全てのコードブロックでベクトルが一致するか否かにより一致判定を行っている。従って、量子化ステップサイズが異なっていても、高精度に画像の一致判定(同定)が行える。特に、コードストリームからはゼロビットプレーン数を抽出してベクトルを算出するのみで、完全に復号する必要がないため、MQ復号、ビットモデリング、逆量子化、逆ウェーブレット変換などの処理が不要になるという利点がある。中でも、コードストリームからゼロビットプレーン数を抽出するには、ヘッダ解析のみでよく、MQ符号を復号する必要がないため、処理の簡単さの点でも処理速度の点でも、非常に有利である。
<4.第2の実施の形態>
[第2の実施の形態の概略構成]
本発明に係る画像比較装置の第2の実施の形態について、図14を参照しながら説明する。
上記図8に示す本発明の第1の実施の形態においては、コードストリーム500から符号化パラメータを抽出して、抽出した符号化パラメータ(量子化ステップを含まない)を特定画像501の符号化時にそのまま利用する例である。しかしながら、予めコードストリーム500の符号化パラメータが既知の場合には、図14に示すように、符号化パラメータ出力部36からのパラメータ情報を特定画像特徴量出力部30Aの各部分に供給する構成とすればよい。
すなわち、図14に示す本発明の第2の実施の形態となる画像比較装置1Aは、特定画像特徴量出力部30A内に、予めコードストリーム500を解析して得られた符号化パラメータ(既設定値)502を出力する符号化パラメータ出力部36を有している。この符号化パラメータ出力部36からの符号化パラメータ(既設定値)502を、特定画像特徴量出力部30A内のウェーブレット変換部31、量子化部32、コードブロック化部33に供給している。
符号化パラメータとしては、例えばウェーブレット変換の部分では、フィルタの種類や、ウェーブレット変換の回数が挙げられ、量子化の部分では、量子化ステップの大きさが挙げられ、コードブロック化の部分では、コードブロックの大きさが挙げられる。ただし、本発明においては、前述したように、量子化ステップの大きさをコードストリーム500と同じにする必要がない。このため、例えば上記図9に示したようなJPEG2000コードストリームのデータベースDBを構築する際に、量子化ステップを含まない符号化パラメータを予め設定あるいは規格化しておくことにより、この既定のパラメータをそのまま使用して検索が行える。すなわち、上記図9のデータベースDBを構築するための画像を符号化する際に、予め設定あるいは規格化された符号化パラメータ(量子化ステップを含まない)を用いてJPEG2000符号化する。量子化ステップについては、符号化時に適宜設定すればよい。このようにして構築されたデータベースDBのコードストリームの量子化ステップ以外の符号化パラメータは、既設定値そのままであるから、コードストリームを解析しなくとも符号化パラメータ(量子化ステップ以外)を得ることができる。この他、符号化の際の量子化ステップ以外の符号化パラメータが予め分かっているコードストリームや、先にパラメータ解析が終了しているコードストリームの場合には、比較の際にコードストリームを解析する必要がない。図14の符号化パラメータ出力部36は、このような既知の符号化パラメータ(量子化ステップ以外)を出力して、特定画像特徴量出力部30A内のウェーブレット変換部31、量子化部32、コードブロック化部33に供給するものである。
コードストリーム特徴量抽出部20は、前記第1の実施の形態と同様に、コードストリーム解析部21及びベクトル算出部22を有している。コードストリーム解析部21は、コードストリーム500を解析してコードブロック毎のゼロビットプレーン数503を抽出し、ベクトル算出部22は、隣接するコードブロック同士でゼロビットプレーン数の相関を表すベクトル504を算出する。
特定画像特徴量出力部30Aは、特定画像501をウェーブレット変換、量子化、コードブロック化するためのウェーブレット変換部31、量子化部32、コードブロック化部33を有している。これらのウェーブレット変換部31、量子化部32、コードブロック化部33には、符号化パラメータ出力部36からの量子化ステップを含まない既知の符号化パラメータが供給される。なお、量子化部32における量子化時の量子化ステップは、適宜設定される。コードブロック化部33からのコードブロックはゼロビットプレーン数検出部34に送られ、コードブロック毎にゼロビットプレーン数508が検出される。ゼロビットプレーン数検出部34からのゼロビットプレーン数508は、ベクトル算出部35に送られ、隣接するコードブロック同士でゼロビットプレーン数の相関によりベクトル509が算出される。
比較部40は、前記第1の実施の形態と同様に、ベクトル算出部22から供給されたベクトル504とベクトル算出部35からのベクトル509とを比較し、コードストリームと特定画像との一致判定を行い、判定結果510を出力するものである。
[第2の実施の形態の動作]
図14に示す本発明の第2の実施の形態の画像比較装置1Aの場合には、検索対象となるデータベースなどのコードストリームの符号化の際の量子化ステップを含まない符号化パラメータが予め分かっており、符号化パラメータ出力部36から供給される。従って、上記第1の実施の形態のように、入力されたコードストリーム500を解析して符号化パラメータを抽出する必要がない。特定画像特徴量出力部30A内のウェーブレット変換部31、量子化部32、コードブロック化部33には、符号化パラメータ出力部36から量子化ステップ以外の既知の符号化パラメータを読み出して供給している。
コードストリーム特徴量抽出部20は、コードストリーム500の特徴量としてのベクトル504を出力する。このベクトル504は、前述したように、入力されたコードストリームの処理対象となる着目コードブロックのゼロビットプレーン数と、この着目コードブロックに隣接する1以上のコードブロックのゼロビットプレーン数との相関としての大小関係を表す特徴量である。
特定画像501は、特定画像特徴量出力部30Aにより、上記既設定値の符号化パラメータ(量子化ステップを含まない)を用いて、ウェーブレット変換、量子化、コードブロック化が施される。量子化時の量子化ステップは、コードストリーム500と同じにする必要がなく、適宜設定すればよい。ゼロビットプレーン数検出部34は、コードブロック化部33からのコードブロック毎にゼロビットプレーン数508を検出する。ベクトル算出部35は、コードストリーム特徴量抽出部20において現在処理対象とされている着目コードブロックと同じ位置のコードブロックについてのベクトル509を算出する。
比較部40では、コードストリーム500の着目コードブロックのベクトル504と、特定画像501の同一位置のコードブロックのベクトル509とを比較し、一致しているか否かを判別する。一致している場合(YES)には、上記コードストリームの画像内に未処理コードブロックがあるか否かを判別し、次の未処理コードブロックを新たな着目コードブロックとして未処理コードブロックが無くなるまで上記比較処理を繰り返す。ベクトル504と509が一致していない場合(NO)には、コードストリームの画像は上記特定画像と不一致であると判定する。そして、コードストリームの画像内で処理すべき全てのコードブロックのベクトルについて、特定画像の対応する位置のコードブロックのベクトルと完全に一致した場合には、当該コードストリームの画像は特定画像と同一であると判定(同定)する。
以上説明した本発明の第2の実施の形態の画像比較装置1Aによれば、コードストリームと特定画像とについて、同じ位置のコードブロック同士でベクトルを比較し、処理すべき全てのコードブロックでベクトルが一致するか否かにより、画像の一致判定が行える。このとき、入力されたコードストリームからはゼロビットプレーン数を抽出してベクトルを算出するのみで、完全に復号する必要がないのみならず、コードストリームを解析して符号化パラメータを抽出する必要もない。また、量子化ステップサイズが異なっていても、高精度に一致判定(同定)が行える。従って、MQ復号、ビットモデリング、逆量子化、逆ウェーブレット変換などの処理が不要になると共に、符号化パラメータを抽出する処理も不要になり、処理の簡単さの点でも処理速度の点でもさらに有利である。
<5.第3の実施の形態>
[第3の実施の形態の概略構成]
図15は、本発明の第3の実施の形態となる画像比較装置1Bの概略構成を示すブロック図である。
この図15に示す画像比較装置1Bは、上記第2の実施の形態の画像比較装置1Aのように、特定画像の特徴量を得る際に既知(既設定値)の符号化パラメータを用いるのみならず、特定画像も比較前に既知である場合に適用可能なものである。すなわち、検索クエリとしての特定画像が例えば番組のタイトル画面のように予め分かっている場合には、この既知の特定画像を、比較処理に先立って、上記既知の符号化パラメータを用いて、少なくともコードブロック化まで符号化を進めておくことができる。図15の特定画像特徴量出力部30Bは、この予めコードブロック化された特定画像の各コードブロック毎のゼロビットプレーン数を保存し、特定画像のゼロビットプレーン数出力部37から出力するようにしている。特定画像のゼロビットプレーン数出力部37からの各コードブロック毎のゼロビットプレーン数508は、ベクトル算出部35に送られる。ベクトル算出部35は、上記第1、第2の実施の形態と同様に、隣接するコードブロック同士でゼロビットプレーン数の相関を表すベクトル509を算出する。この第3の実施の形態の画像比較装置1Bにおける他の構成及び動作は、上述した第1、第2の実施の形態と同様であるため、対応する部分に同じ指示符号を付して説明を省略する。
このような第3の実施の形態によれば、上述した第2の実施の形態と同様に、符号化されたコードストリームを完全に復号する必要がなく、コードストリームを解析して符号化パラメータを抽出する必要もない。また、量子化ステップサイズが異なっていても、高精度に特定画像との一致判定(同定)が行える。さらに、この第3の実施の形態によれば、既知の特定画像から予め各コードブロック毎のゼロビットプレーン数を求めているため、検索のための比較を行う際に、特定画像をコードブロック化してゼロビットプレーン数を算出する処理が不要となる。従って、特定画像の一致判定のための比較の処理時間を大幅に減らすことができる。
ここで、図15に示す画像比較装置1Bにおいては、特定画像の各コードブロック毎のゼロビットプレーン数を求めて、ゼロビットプレーン数出力部37に保存しているが、特定画像の各コードブロック毎のベクトルを算出して保存するようにしてもよい。この場合には、コードストリーム特徴量抽出部20から出力される着目コードブロックの上述したようなベクトルに対して、特定画像の同じ位置のコードブロックのベクトルをベクトル保存部から読み出して、比較部40で比較するように構成すればよい。
<6.第4の実施の形態>
[第4の実施の形態の概略構成]
次に、本発明の第4の実施の形態として、複数のコードストリームの中から特定画像に一致する画像のコードストリームを検索する画像検索装置について、図16を参照しながら説明する。
図16は、本発明の第4の実施の形態としての画像検索装置3を示すブロック図である。この画像検索装置3は、一方の端子から入力された映像コンテンツとしてのコードストリーム列550から、他方の端子から入力された特定画像501と一致するコードストリームを検索するものである。ここでコードストリーム列550とは、映像コンテンツとしての動画の各フレームの画像や、画像データベースの複数の画像を、JPEG2000方式で符号化したコードストリームの集合のことである。
この画像検索装置3において、コードストリーム列550はコードストリーム500とそのインデクス560との組に分離される。コードストリーム500は、上記第1〜第3の実施の形態で説明したような画像比較装置1(あるいは1A,1B)に入力され、インデクス560は選択部60に入力される。特定画像501は、画像比較装置1(あるいは1A,1B)に入力される。
画像比較装置1は、第1の実施の形態と同様のものであり、コードストリームと特定画像との一致判定を行い、判定結果を選択部60に供給する。画像比較装置1の代わりに、上記第2、第3の実施の形態の画像比較装置1A,1Bのいずれを用いてもよい。なお、上記第3の実施の形態の画像比較装置1Bの場合は、既に特定画像のゼロビットプレーン数が図15のゼロビットプレーン数出力部37に保存されているため、比較処理時に特定画像501を入力する必要がないことは勿論である。選択部60は、特定画像と一致するものと判定されたコードストリームのインデクスを出力する。
このような構成の画像検索装置3を用いて、コードストリーム列550から特定画像501と一致する画像のコードストリームを検索する処理について、図17のフローチャートを参照しながら説明する。
先ず、図17のステップS31において、コードストリーム列内に未処理のコードストリームがあるか否かを判別し、ある場合にはステップS32において、次の未処理のコードストリームSを設定する。次にステップS33において、コードストリームSと特定画像とが一致するか否かを判別し、一致しない場合にはステップS31に戻り、一致する場合には、ステップS34でインデクスを出力した後、ステップS31に戻る。一方、ステップS31において未処理のコードストリームがない場合には、処理を終了する。
このように、図16に示す第4の実施の形態における画像検索装置3によれば、コードストリーム列550から特定画像501と一致するコードストリームを検索し、そのインデクスを出力することができる。特に、第1〜第3の実施の形態と同様の画像比較装置1,1A,1Bを用いており、コードストリーム列を構成する各コードストリームと特定画像との一致判定を行う際に、コードストリームからゼロビットプレーン数を抽出し、ベクトルを算出するのみでよい。すなわち、コードストリームを完全に復号する必要がないため、MQ復号、ビットモデリング、逆量子化、逆ウェーブレット変換などの処理が不要になるという利点がある。また、量子化ステップサイズが異なっていても、高精度に一致判定が行える。特に、量子化ステップサイズ以外の符号化パラメータはコードストリーム列を通じて殆ど変わることがない。このため、画像比較装置1,1Aの内部のウェーブレット変換部31、量子化部32、コードブロック化部33、ゼロビットプレーン数検出部34をコードストリーム毎に動作させる必要がない。従って、少ない処理量で高精度の検索を行うことが可能である。
ここで、上記特許文献2(特開2006−285615号公報)に記載された画像比較装置を用いて、異なる量子化ステップサイズにより圧縮符号化された複数のコードストリームから特定画像に一致するコードストリームを検索する場合を考察する。この場合には、入力されるコードストリーム毎に、量子化ステップサイズを抽出し、抽出された量子化ステップサイズを用いて特定画像を符号化(少なくともコードブロック化まで)する必要がある。これに対して本発明の実施の形態によれば、量子化ステップサイズをコードストリームの量子化ステップサイズに一致させる必要がないため、コードストリーム毎に特定画像をコードブロック化まで符号化する必要がなく、処理が簡略化できる。例えば、コードストリーム列に対して、量子化ステップサイズ以外の共通の符号化パラメータを用いて、特定画像をコードブロック化してコードブロック毎のゼロビットプレーン数を一度求めておけば、コードストリーム毎に流用することができる。特定画像が予め定まっていれば、上記第3の実施の形態のように、特定画像のゼロビットプレーン数出力部37からコードブロック毎に出力することで、さらに処理を簡略化することも可能である。
<7.実施の形態の実験例(シミュレーション例)>
[実施の形態の画像比較装置の実験条件]
次に、上述した本発明の実施の形態の画像比較装置の実験例(シミュレーション例)について説明する。
以下の実験例(シミュレーション例)では、解像度1920(H)×1080(V)、RGB各8ビットのフォーマットで、フレーム数が15691フレームから成る動画に対して、3000フレーム目を特定画像(クエリ画像)として判定を行っている。先ず、上記動画を、ウェーブレット変換フィルタとして、DWT分解レベル数5(9×7フィルタ)を使用し、量子化のベースステップサイズを1/256とし、コードブロックサイズを32×32としてJPEG2000方式で符号化した。この符号化データが、例えば図8のコードストリーム500として画像比較装置1に供給される。図8の特定画像501としては、この動画の3000フレーム目を用いている。この特定画像501を、ウェーブレット変換部31、量子化部32、コードブロック化部33で符号化処理する際に、量子化ステップサイズ以外の符号化パラメータを上記動画の符号化パラメータと同じにしている。すなわち、ウェーブレット変換部31、コードブロック化部33での符号化パラメータを、DWT分解レベル数5(9×7フィルタ)、コードブロックサイズを32×32としている。これに対して、量子化部32での量子化のベースステップサイズは、上記動画の符号化パラメータとは異なる値、例えば、1/200、1/300としている。これは、上記図14に示した第2の実施の形態の場合も同様である。また、比較判定処理に先立って特定画像501の各コードブロック毎のゼロビットプレーン数を求めて、図15の特定画像のゼロビットプレーン数出力部37に保存しておけば、上記第3の実施の形態の場合も同様の実験(シミュレーション)が行える。
上述したような条件の下に、本発明の実施の形態の画像比較装置を用いて動画のコードストリームから上記特定画像(クエリ画像)を検索するための一致判定(同定)を行った場合の判定結果を表1に示す。
Figure 0005155210
この表1において、ゼロビットプレーン数との相関を表すベクトルとしては、上記図11(A)〜(C)で説明したベクトルS、S、Sを用いている。また、比較例として、上記特許文献2(特開2006−285615号公報)に記載された画像比較装置の場合の判定結果も示している。上記シミュレーションの条件によれば、使用した符号化画像には6321個のコードブロックがある。従って、一致率は、
(同一コードブロックと判定された数)/6321
となる。
[判定結果の考察]
上記表1の判定結果によれば、上記ベクトルS、S、Sのいずれを用いた場合でも同定漏れ無く一致判定が行えている。これに対して、上記特許文献2に記載された画像比較装置の場合には、量子化ステップサイズが異なるとゼロビットプレーン数が異なることから、同定漏れが生じている。
なお、表1によれば、誤同定されている画像が約140フレームあるが、これらの画像は真っ白や真っ黒などの単一の輝度値を持つ画像である。ここで、コードブロックの全てのビットプレーンがゼロビットプレーンとなって、コードブロックに符号化すべきデータが無い場合を、“not inculuded”なる特殊な状態として取り扱う。上記単一の輝度値を持つ画像の場合には、ゼロビットプレーン数=“not inculuded”となるコードブロックが大半となり、判定に使用できるコードブロック数が少なくなってしまう。これが、異なる画像であるにもかかわらず同一画像として誤判定された原因と考えられる。
誤同定を減らすには、上記のような“not inculuded”のコードブロックを判定に使用しないことが好ましい。例えば、ベクトルの一致判定の条件として、ベクトルの要素sの値(−1,0,1)について、どちらか一方が0であれば一致と判定するようにしていたが、互いに完全に等しい場合を条件とすることが挙げられる。この場合、同定漏れを防止するために、後述するような類似度計算と組み合わせて、類似度が一定の閾値を超えたものを一致した画像と判定することが挙げられる。
<8.第5の実施の形態(類似度判定)>
[第5の実施の形態の概略構成]
ところで、上述した第1〜第3の実施の形態においては、コードストリームの中から、特定画像と同じ符号化前の画像を検索して同定するために、全てあるいは予め定められた一部のコードブロックについて、全てのベクトルが一致することを条件としていた。また、処理範囲内の1つのコードブロックでベクトルの不一致が見つかると、残りのコードブロックのベクトルの一致判別を行うことなく即座に不一致と判定していた。
これに対して、本発明の第5の実施の形態として、図18に示す画像比較装置1Cにおいては、コードストリームの中から、特定画像に類似する符号化前の画像を見つける、あるいは符号化前の画像の類似度を出力するようにしている。
図18に示す画像比較装置1Cは、上述した第1〜第3の実施の形態と同様の、コードストリーム特徴量抽出部20と、特定画像特徴量出力部30(あるいは30A,30B)とを備えている。すなわち、図18のコードストリーム特徴量抽出部20は、上記第1〜第3の実施の形態のコードストリーム特徴量抽出部20と同様の構成を有するものである。図18の特定画像特徴量出力部には、上記第1〜第3の実施の形態の特定画像特徴量出力部30,30A,30Bのいずれを用いてもよい。
コードストリーム特徴量抽出部20のベクトル算出部22からのベクトル504と、特定画像特徴量出力部30(あるいは30A,30B)のベクトル算出部35からのベクトル509とは、比較部40Aに送られて比較される。この比較部40Aは、コードストリーム及び特定画像の対応する位置のコードブロック毎のベクトルの比較結果511(一致及び不一致を含む)を順次出力し、累積部42に送っている。累積部42は、比較部40Aからのコードブロック毎のベクトルの比較結果511を、予め定められた処理範囲内の全てのコードブロックについて累積して、類似度520を出力する。
この図18に示す画像比較装置1Cは、基本構造は上述した第1〜第3の実施の形態と同様であるが、累積部42を有する点が異なっており、比較部40Aから供給されるコードブロック毎のベクトルの比較結果511を累積して類似度520を計算している。また、比較部40Aは、コードストリームと特定画像との一致判定までは行わず、コードブロック毎のベクトルの比較結果511を、不一致の場合も含めて、予め定められた処理範囲内の全てのコードブロックについて出力している。
[第5の実施の形態の動作説明]
上述したような構成を有する画像比較装置1Cにおける、主として比較部40A及び累積部42の類似度算出のための処理や動作について、図19のフローチャートを参照しながら説明する。なお、類似度計算に使用する変数sameの値と変数diffの値とを0にするなどの各種初期化処理や、ベクトル504,509を算出するためのコードストリーム及び特定画像のコードブロック毎のゼロビットプレーン数の抽出については、図19では省略している。なお、上記ベクトル504,509とは、上述したように、処理対象となる着目コードブロックに対して、例えば隣接する1以上のコードブロックとの間のゼロビットプレーン数の相関(差分)を表す特徴量のことである。
先ず、図19のステップS11において、図18のコードストリーム特徴量抽出部20のベクトル算出部22が、コードストリーム500の着目コードブロックについてのベクトル504を算出して出力する。
次のステップS12において、特定画像特徴量出力部30(あるいは30A,30B)のベクトル算出部35が、コードストリームの着目コードブロックと同じ位置の特定画像のベクトル509を出力する。
次のステップS13では、比較部40Cが、これらのベクトル504と509とを比較し、一致しているか否かを判別し、判別結果を図18の比較出力511として累積部42に送る。ステップS13において一致している(YES)と判別された場合にはステップS14に進み、一致していない(NO)と判別された場合にはステップS15に進む。これらのステップS14,S15の動作は、累積部42において実行される。
ステップS14では、累積部42において、類似している度合いを表す変数sameの値を1増やし(same=same+1)、ステップS16に進む。ステップS15では、累積部42において、類似していない度合いを表す変数diffの値を1増やし(diff=diff+1)、ステップS16に進む。
ステップS16では、上記コードストリームの画像内にまだ未処理コードブロックがあるか否かを判別し、未処理コードブロックがある場合(YES)には、ステップS17に進む。未処理コードブロックが無くなった場合(NO)、すなわち処理すべき全てのコードブロックについてのベクトルの比較が終了した場合には、ステップS18に進んで、累積部42が、後述するように類似度を計算する。
ステップS17では、コードストリームの画像内の次の未処理コードブロックに移って、これを新たな着目コードブロックとして、上記ステップS11に戻る。ステップS11では、コードストリームの画像内での更新された着目コードブロックについてベクトルを算出する。また、ステップS12では、特定画像内での更新された着目コードブロックと同じ位置のコードブロックについてのベクトルを算出する。さらに、ステップS13以降の上述と同様な処理を進める。
ステップS16でNOと判別されるのは、処理すべき範囲内の全てのコードブロックについてのベクトルの比較が終了した場合であり、累積部42が、ステップS18に示すような計算を行って、類似度520を出力する。この類似度は、
類似度=same/(same+diff)
の式により計算される。
このように、本発明の第5の実施の形態における画像比較装置1Cによれば、コードストリームと特定画像とについて、同じ位置のコードブロック同士で上述したようなベクトルを比較し、その比較結果を全てのコードブロックについて累積する。これにより、コードストリームと特定画像との類似度判定を行うことができる。この場合にも、コードストリームからはゼロビットプレーン数を抽出するのみで完全に復号することがなく、量子化ステップサイズが異なっても高精度の比較が行え、処理の簡単さや処理速度の点で非常に有利である。
なお、上述の説明では、ゼロビットプレーン数が同じ場合や異なる場合に変数(same,diff)の値を1増やすものとしたが、実際には重み付けをしても構わない。この際、画像の特徴があると考えられる部分を優先して重み付けすることが好ましい。例えば、通常の画像の場合には低域側に特徴があると考えられるため、低域側のコードブロックにおける比較結果が優先されるように重み付けすることが好ましい。また、輝度のコンポーネントにおける比較結果が色のコンポーネントにおける比較結果よりも優先されるように重み付けすることが好ましい。
さらに、上述の説明では、コードストリームと特定画像との類似度判定を行うものとしたが、最後に類似度を閾値と比較することにより、一致判定を行うこともできる。勿論、変数sameの値と変数diffの値とに偏りがでれば、処理の最後に至る前に一致判定を行うこともできる。
<9.他の構成例>
[他の構成例及び変形例]
本発明は、上述した第1〜第5の実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において他に種々の構成が可能である。
例えば、着目コードブロックのゼロビットプレーン数とその近傍のコードブロックのゼロビットプレーン数との相関を表すベクトルとしては、上記図11(A)〜(C)において、Case-1、Case-2、Case-3の3つのケースを挙げているが、これに限定されない。すなわち、図11(A)〜(C)の例では、着目コードブロックに対して、図中右隣の1つのコードブロック、図中上下左右で隣接する4つのコードブロック、図中上下左右及び斜め方向の8方向で隣接する8つのコードブロックの場合を示している。この他、着目コードブロックに対して、図中左隣の1つのコードブロック、図中上又は下で隣接する1つのコードブロック、図中左右で隣接する2つのコードブロック、図中上下で隣接する2つのコードブロックなどが挙げられる。また、ベクトルの元(要素)としては、着目コードブロックのビットプレーン数に対する隣接コードブロックのビットプレーン数の大小関係を−1,0,1で表していたが、差分値をそのままベクトルの元(要素)としてもよい。
また、上述した実施の形態の説明では、画像内の全てのコードブロックについてベクトルを比較することを主として説明したが、必ずしも全てのコードブロックについて比較する必要はない。ただし、一部のコードブロックについてベクトルの比較処理を省略すると、実際には不一致であるにも拘わらず、一致しているという判定結果になる割合が増加する。利用条件から考えて判定精度が十分にある場合には、一部のコードブロックについての処理を省略することで、処理の高速化と簡略化を実現することができる。実際、実験によると、殆どの場合に輝度コンポーネントの低域側のコードブロックで不一致が判定されているため、輝度コンポーネントのみ、或いは高域側のサブバンドを除くなどの制限を加えても問題がないことが多い。例えば、ウェーブレット変換の特徴から低域成分に多くの情報が集中していることを利用できる。すなわち、前記図13の例では、ウェーブレット変換を3分割して10個のサブバンドを形成しているが、その中の例えば低域の4つのサブバンド(LL−3、HL−3、LH−3、HH−3)内でのマッチングを取るようにしてもよい。この場合、画面全体に比べて圧倒的にコードブロック数が少ないので、比較精度の低下を抑えながら、高速に比較の計算を終了することができる。
また、上述した実施の形態では、特定画像を途中まで符号化して特徴量を抽出するものとして説明したが、特定画像を完全に符号化してコードストリームを生成した後、このコードストリームから特徴量を抽出するようにしてもよい。例えば一致判定を行う場合、特定画像をJPEG2000方式に従って圧縮符号化し、コードストリームを生成し、このコードストリームから特徴量としての上記ベクトルを算出するようにしてもよい。この特定画像を符号化したコードストリームのヘッダ部には、上述したようにコードブロック毎のゼロビットプレーン数などが格納されているから、隣接する複数のコードブロックの相関を表すベクトル算出は容易に行える。この特定画像用のコードストリーム特徴量抽出部は、上記第1〜第3の実施の形態のコードストリーム特徴量抽出部20と同様のものである。このような構成では、同じコードストリーム特徴量抽出部を2つと、一般的な符号化部を並べればよいため、設計するのが楽であるという利点がある。
また、上記第4の実施の形態(図16)の説明では、第1〜第3の実施の形態と同様の画像比較装置1,1A,1Bを用いるものとしたが、第5の実施の形態(図18)の画像比較装置1Cを用いるようにしてもよい。この場合、図16の選択部60は、例えば類似度が所定の閾値を超えたコードストリームのインデクスを出力するように構成することができる。
また、上述した実施の形態における一連の処理をソフトウェアにより実行するようにしても構わない。この場合、そのソフトウェアを構成するプログラムをコンピュータの専用ハードウェア、例えばROM(Read Only Memory)やハードディスクに予め組み込むようにしてもよい。また、各種プログラムをインストールすることで各種機能を実行することが可能な汎用のパーソナルコンピュータなどに対して、ネットワークや記録媒体を介してインストールするようにしてもよい。この記録媒体としては、例えば磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD−ROM及びDVD(Digital Versatile Disk)を含む)、光磁気ディスク、あるいは半導体メモリなどのパッケージメディアが利用可能である。
また、上述した実施の形態では、画像圧縮方式としてJPEG2000方式を用いて説明したが、本発明はこれに限定されるものではなく、例えばJPEGやMPEG(Moving Picture Experts Group)などの他の画像圧縮方式の場合にも適用可能である。
ここで、従来、データベース中に保存されている複数のJPEG2000符号化コードストリームの中から、特定画像と同じ圧縮前の画像を検索して同定する際、JPEG2000符号化規格の制約から、完全に量子化ステップサイズが一致している必要があった。しかし本発明の実施の形態によれば、周囲のコードブロックのゼロ・ビットプレーン情報との相関値をベクトル化することで、量子化ステップサイズが異なっていても、高精度に同定することができる効果がある。この場合、コードストリームからはゼロビットプレーン数を抽出するのみで完全に復号することがないため、MQ復号、ビットモデリング、逆量子化、逆ウェーブレット変換などの処理が不要になる、という利点がある。中でも、コードストリームからゼロビットプレーン数を抽出するにはMQ符号を復号する必要がなく、また、量子化ステップサイズが異なっても高精度に比較が行えるため、処理の簡単さの点でも処理速度の点でも、非常に有利である。また、比較対象のコードブロックの範囲を、特定のサブバンド内に限定することで、比較の処理時間を大幅に減らすことができるという効果もある。
本発明の実施の形態の応用分野としては、デジタルシネマ用データベース、アーカイブシステム、放送局の画像データベース、医用画像の記録システム、ネットワークサーバ、ノンリニア編集装置、ゲーム機、PC上のオーサリング・ツールまたはそのソフトウェア・モジュールなどが挙げられる。
1,1A,1B,1C 画像比較装置、 3 画像検索装置、 10 符号化パラメータ抽出部、 20 コードストリーム特徴量出力部、 21 コードストリーム解析部、22 ベクトル算出部、 30,30A,30B 特定画像特徴量出力部、 31 ウェーブレット変換部、 32 量子化部、 33 コードブロック化部、 34 ゼロビットプレーン数検出部、 35 ベクトル算出部、 40,40A 比較部、 42 累積部

Claims (14)

  1. 画像を符号化して得られるコードストリームと特定画像とを比較して一致するかを判定する画像比較装置であって、
    上記コードストリームのゼロビットプレーン数に基づき、処理対象となる着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第1のベクトルを算出するベクトル算出部と、
    上記特定画像における着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第2のベクトルを出力するベクトル出力部と、
    上記ベクトル算出部からの第1のベクトルと上記ベクトル出力部からの第2のベクトルとを、上記コードストリームと上記特定画像との同じ位置の着目コードブロックについて順次比較し、比較結果に応じて上記コードストリームと上記特定画像とが一致するか否かを判定する比較部と
    を備える画像比較装置。
  2. 上記ベクトル出力部は、上記コードストリームを符号化する際に用いられた符号化パラメータの内の量子化ステップサイズを含まない符号化パラメータを用いて上記特定画像を符号化する際に得られるコードブロック毎のゼロビットプレーン数に基づき算出された上記第2のベクトルを出力する請求項1記載の画像比較装置。
  3. 上記第1、第2のベクトルは、上記着目コードブロックのゼロビットプレーン数と、該着目コードブロックに隣接する周囲8箇所のコードブロックの内の1以上のコードブロックのゼロビットプレーン数との差分をベクトルで表現したものである請求項2記載の画像比較装置。
  4. 上記比較部は、上記ベクトル算出部からの着目コードブロックの第1のベクトルと上記ベクトル出力部からの上記着目コードブロックと同じ位置のコードブロックの第2のベクトルとを比較し、一致したコードブロックの数が予め設定された閾値以上となる場合に、上記コードストリームと上記特定画像とが一致したと判定する請求項3記載の画像比較装置。
  5. 上記比較部は、上記コードストリーム及び上記特定画像における各画像内の全てのコードブロックについて、上記第1のベクトルと上記第2のベクトルとが一致した場合に、上記コードストリームと上記特定画像とが一致したと判定する請求項4記載の画像比較装置。
  6. 上記比較部は、上記コードストリームと上記特定画像とについて、一部のコンポーネント、又は一部のサブバンドについてのみ、上記第1のベクトルと上記第2のベクトルとを比較する請求項4記載の画像比較装置。
  7. 上記コードストリームを解析することにより上記コードストリームからコードブロック毎のゼロビットプレーン数を抽出するコードストリーム解析部を備え、
    上記ベクトル算出部は、上記コードストリーム解析部により抽出されたゼロビットプレーン数に基づき上記第1のベクトルを算出する
    請求項2記載の画像比較装置。
  8. 上記コードストリームから符号化パラメータを抽出する符号化パラメータ抽出部を備え、
    上記ベクトル出力部は、上記コードストリーム抽出部により抽出された符号化パラメータの内の量子化ステップサイズを含まない符号化パラメータを用いて上記特定画像を符号化する際に得られるコードブロック毎のゼロビットプレーン数に基づき上記第2のベクトルを算出する特定画像用のベクトル算出部を有する
    請求項2記載の画像比較装置。
  9. 上記コードストリームは、上記画像をJPEG2000方式に従って圧縮符号化して得られたものであり、
    上記符号化パラメータは、ウェーブレット変換フィルタ情報、ウェーブレット変換の分解レベル数、量子化ステップサイズ、コードブロックサイズ、ガードビット情報、目標圧縮率を含み、
    上記ベクトル出力部は、上記コードストリームを符号化する際に用いられた符号化パラメータの内の量子化ステップサイズを含まない符号化パラメータを用いて上記特定画像をJPEG2000方式に従って符号化する際に得られるコードブロック毎のゼロビットプレーン数に基づき算出された上記第2のベクトルを出力する請求項2記載の画像比較装置。
  10. 画像を符号化して得られるコードストリームと特定画像とを比較して一致するかを判定する画像比較方法であって、
    上記コードストリームを解析することにより上記コードストリームからコードブロック毎のゼロビットプレーン数を抽出するコードストリーム解析工程と、
    上記コードストリーム解析工程により抽出されたゼロビットプレーン数に基づき、処理対象となる着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第1のベクトルを算出するベクトル算出工程と、
    上記特定画像について着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第2のベクトルを出力するベクトル出力工程と、
    上記ベクトル算出工程からの第1のベクトルと上記ベクトル出力工程からの第2のベクトルとを、上記コードストリームと上記特定画像との同じ位置の着目コードブロックについて順次比較し、比較結果に応じて上記コードストリームと上記特定画像とが一致するか否かを判定する比較工程と
    を有する画像比較方法。
  11. 画像を符号化して得られるコードストリームと特定画像とを比較して一致するかを判定する処理をコンピュータに実行させるプログラムであって、
    コンピュータに、
    上記コードストリームを解析することにより上記コードストリームからコードブロック毎のゼロビットプレーン数を抽出するコードストリーム解析手順と、
    上記コードストリーム解析手順により抽出されたゼロビットプレーン数に基づき、処理対象となる着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第1のベクトルを算出するベクトル算出手順と、
    上記特定画像について着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第2のベクトルを出力するベクトル出力手順と、
    上記ベクトル算出手順からの第1のベクトルと上記ベクトル出力手順からの第2のベクトルとを、上記コードストリームと上記特定画像との同じ位置の着目コードブロックについて順次比較し、比較結果に応じて上記コードストリームと上記特定画像とが一致するか否かを判定する比較手順と
    を実行させるためのプログラム。
  12. 画像を符号化して得られるコードストリームと特定画像とを比較して一致するかを判定する処理をコンピュータに実行させるプログラムを記録した記録媒体であって、
    コンピュータに、
    上記コードストリームを解析することにより上記コードストリームからコードブロック毎のゼロビットプレーン数を抽出するコードストリーム解析手順と、
    上記コードストリーム解析手順により抽出されたゼロビットプレーン数に基づき、処理対象となる着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第1のベクトルを算出するベクトル算出手順と、
    上記特定画像について着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第2のベクトルを出力するベクトル出力手順と、
    上記ベクトル算出手順からの第1のベクトルと上記ベクトル出力手順からの第2のベクトルとを、上記コードストリームと上記特定画像との同じ位置の着目コードブロックについて順次比較し、比較結果に応じて上記コードストリームと上記特定画像とが一致するか否かを判定する比較手順と
    を実行させるためのプログラムを記録した記録媒体。
  13. 複数の画像を符号化して得られるコードストリーム列と特定画像とを比較して一致する画像のコードストリームを検索する画像検索装置であって、
    上記コードストリーム列の上記コードストリームを順次解析することにより当該コードストリームからコードブロック毎のゼロビットプレーン数を抽出するコードストリーム解析部と、
    上記コードストリーム解析部により抽出されたゼロビットプレーン数に基づき、処理対象となる着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第1のベクトルを算出するベクトル算出部と、
    上記特定画像について着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第2のベクトルを出力するベクトル出力部と、
    上記ベクトル算出部からの第1のベクトルと上記ベクトル出力部からの第2のベクトルとを、上記コードストリームと上記特定画像との同じ位置の着目コードブロックについて順次比較し、比較結果に応じて上記コードストリームと上記特定画像とが一致するか否かを判定する比較部と、
    上記コードストリーム列の内の上記比較部により一致すると判定された上記コードストリームを選択する選択部と
    を備える画像検索装置。
  14. 画像を符号化して得られるコードストリームと特定画像とを比較して類似度を出力する画像比較装置であって、
    上記コードストリームを解析することにより上記コードストリームからコードブロック毎のゼロビットプレーン数を抽出するコードストリーム解析部と、
    上記コードストリーム解析部により抽出されたゼロビットプレーン数に基づき、処理対象となる着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第1のベクトルを算出するベクトル算出部と、
    上記特定画像について着目コードブロックのゼロビットプレーン数と該着目コードブロックの近傍のコードブロックのゼロビットプレーン数との間の相関を表す第2のベクトルを出力するベクトル出力部と、
    上記ベクトル算出部からの第1のベクトルと上記ベクトル出力部からの第2のベクトルとを、上記コードストリームと上記特定画像との同じ位置の着目コードブロックについて順次比較し、比較結果を出力する比較部と、
    上記比較部からの比較結果を累積して上記コードストリームと上記特定画像との類似度を出力する累積部と
    を備える画像比較装置。
JP2009027381A 2009-02-09 2009-02-09 画像比較装置及びその方法、画像検索装置、並びにプログラム及び記録媒体 Expired - Fee Related JP5155210B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009027381A JP5155210B2 (ja) 2009-02-09 2009-02-09 画像比較装置及びその方法、画像検索装置、並びにプログラム及び記録媒体
US12/616,280 US8406533B2 (en) 2009-02-09 2009-11-11 Image comparing apparatus and method therefor, image retrieving apparatus as well as program and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009027381A JP5155210B2 (ja) 2009-02-09 2009-02-09 画像比較装置及びその方法、画像検索装置、並びにプログラム及び記録媒体

Publications (2)

Publication Number Publication Date
JP2010183499A JP2010183499A (ja) 2010-08-19
JP5155210B2 true JP5155210B2 (ja) 2013-03-06

Family

ID=42540477

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009027381A Expired - Fee Related JP5155210B2 (ja) 2009-02-09 2009-02-09 画像比較装置及びその方法、画像検索装置、並びにプログラム及び記録媒体

Country Status (2)

Country Link
US (1) US8406533B2 (ja)
JP (1) JP5155210B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100118037A1 (en) * 2008-09-08 2010-05-13 Apple Inc. Object-aware transitions
US8934725B1 (en) 2010-08-30 2015-01-13 Accusoft Corporation Image coding and decoding methods and apparatus
US8983213B1 (en) * 2010-08-30 2015-03-17 Accusoft Corporation Image coding and decoding methods and apparatus
JP5741076B2 (ja) * 2010-12-09 2015-07-01 ソニー株式会社 画像処理装置及び画像処理方法
US9031960B1 (en) 2011-06-10 2015-05-12 Google Inc. Query image search
CN112685080B (zh) * 2021-01-08 2023-08-11 深圳开源互联网安全技术有限公司 开源组件查重方法、系统、装置及可读存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11167623A (ja) * 1997-12-03 1999-06-22 Canon Inc 画像処理装置及び画像処理方法
JP3960151B2 (ja) 2002-07-09 2007-08-15 ソニー株式会社 類似時系列検出方法及び装置、並びにプログラム
JP4301193B2 (ja) 2005-03-31 2009-07-22 ソニー株式会社 画像比較装置及び方法、画像検索装置及び方法、並びにプログラム及び記録媒体
JP4717562B2 (ja) * 2005-09-02 2011-07-06 キヤノン株式会社 画像処理装置及び方法

Also Published As

Publication number Publication date
US8406533B2 (en) 2013-03-26
US20100202705A1 (en) 2010-08-12
JP2010183499A (ja) 2010-08-19

Similar Documents

Publication Publication Date Title
JP4301193B2 (ja) 画像比較装置及び方法、画像検索装置及び方法、並びにプログラム及び記録媒体
JP4343120B2 (ja) 画像検索装置及び方法、並びにプログラム及びプログラム記録媒体
US6618507B1 (en) Methods of feature extraction of video sequences
EP1389016B1 (en) Improved motion estimation and block matching pattern
US8102911B2 (en) Picture coding device
US8666179B2 (en) Image encoding apparatus and decoding apparatus
EP1211644B1 (en) Method for describing motion activity in video
JP5155210B2 (ja) 画像比較装置及びその方法、画像検索装置、並びにプログラム及び記録媒体
RU2335803C2 (ru) Способ и устройство покадрового кодирования остаточного движения на основании сверхполного базисного преобразования для уплотнения видеоизображения
US8189687B2 (en) Data embedding apparatus, data extracting apparatus, data embedding method, and data extracting method
KR101149522B1 (ko) 장면 전환 검출 시스템 및 방법
KR101163774B1 (ko) 비디오 압축용 장치 및 프로세스
US7333543B2 (en) Motion vector estimation method and apparatus thereof
JP4167245B2 (ja) デジタル映像処理方法及びその装置
JP4697111B2 (ja) 画像比較装置および方法、並びに、画像検索装置および方法
Zargari et al. A fast and efficient compressed domain JPEG2000 image retrieval method
US6775416B1 (en) System and method for inserting information in DCT coefficient domain
KR102138142B1 (ko) 인코딩 파라미터 예측을 통한 동영상 위변조 검출 방법
Rayatifard et al. A fast and robust shot detection method in hevc/h. 265 compressed video
Fukuhara et al. Accurate identifying method of JPEG2000 images for digital cinema
Tiwari et al. A comparative study on image and video compression techniques
Tagliasacchi et al. Transform coder identification
JP2009033367A (ja) 画像処理装置およびその方法
Zargari et al. Compressed domain JPEG2000 image indexing method employing full packet header information
KR20090051430A (ko) 부분 엔트로피 복호화를 이용한 제이펙-2000 압축 영상검색방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120201

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20120330

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20120330

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121106

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121206

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151214

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151214

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees