次に本発明の実施の形態について図面を参照して詳細に説明する。
図1は、本発明の実施の形態における情報処理装置100の機能構成例を示すブロック図である。この情報処理装置100は、動画入力部110と、ビデオ・オーディオデマルチプレクサ120と、ビデオデコード部130と、データベース140と、特徴量照合部150と、判定結果出力部160と、特徴量抽出部200とを備える。なお、この情報処理装置100は、例えば、デジタルビデオカメラ等の撮像装置で撮影された動画について、映像解析により特徴量を抽出し、この抽出された特徴量を用いて各種画像処理を施すことが可能なパーソナルコンピュータによって実現することができる。
動画入力部110は、動画を入力する動画入力部であり、入力された動画をビデオ・オーディオデマルチプレクサ120に出力する。動画入力部110に入力される動画としては、例えば、撮像装置で撮影された動画やテレビジョン放送で受信された動画等が考えられる。
ビデオ・オーディオデマルチプレクサ120は、動画入力部110から出力された動画について、ビデオデータ(信号)とオーディオデータ(信号)とに分離するものであり、分離されたビデオデータをビデオデコード部130に出力する。なお、分離されたオーディオデータは、本発明の実施の形態においては特に利用されない。
ビデオデコード部130は、ビデオ・オーディオデマルチプレクサ120から出力されたビデオデータをデコードしてベースバンドデータを生成するものであり、生成されたベースバンドデータを特徴量抽出部200に出力する。
特徴量抽出部200は、ビデオデコード部130から出力されたベースバンドデータに基づいて特徴量を抽出するものであり、抽出された特徴量をデータベース140および特徴量照合部150に出力する。本発明の実施の形態では、特徴量抽出部200が抽出する特徴量として、動画におけるチェンジ点の間隔と、動画を構成するフレーム間のヒストグラム差分値と、チェンジ点間に含まれるフレームのうちの少なくとも1つのフレームのヒストグラムである代表ヒストグラムとを例にして説明する。なお、チェンジ点は、例えば、動画において撮影場面が瞬間的に変化する場合におけるその境界点を示すカットチェンジ点や、動画において撮影場面が比較的大きく変化する場合におけるその境界点を示すクロスフェード点等を含むものであり、チェンジ点の間隔は、連続するチェンジ点間の区間における時間やフレーム数等の間隔を示すものである。この例では、チェンジ点として、カットチェンジ点を用いる場合について説明し、他の特徴量については、図17等を参照して詳細に説明する。また、特徴量抽出部200については、図2を参照して詳細に説明する。さらに、カットチェンジ点の間隔については、図4を参照して詳細に説明する。
この特徴量抽出部200によって抽出されたチェンジ点間隔は、これらを時系列に並べたリストであるカットチェンジ点間隔リストとしてデータベース140および特徴量照合部150に供給される。なお、カットチェンジ点間隔リストについては、図5、図6等を参照して詳細に説明する。
データベース140は、特徴量抽出部200から出力されたカットチェンジ点の間隔に対応するカットチェンジ点間隔リストを動画毎に格納するデータベースであり、格納されているカットチェンジ点間隔リストを動画毎に特徴量照合部150に出力する。
特徴量照合部150は、特徴量抽出部200から出力されたカットチェンジ点の間隔と、データベース140に格納されている各カットチェンジ点間隔リストとを比較し、この比較結果に基づいて、動画入力部110に入力された動画と、データベース140に格納されているカットチェンジ点間隔リストに対応する動画とを照合して、両者が一致するか否かを判定するものであり、この判定結果を示す一致リストを判定結果出力部160に出力する。すなわち、特徴量照合部150は、動画入力部110に入力された動画と一致する動画に対応するカットチェンジ点間隔リストを、データベース140に格納されているカットチェンジ点間隔リストの中から検索する。
判定結果出力部160は、特徴量照合部150から出力された一致リストを出力するものである。例えば、特徴量照合部150から出力された一致リストを表示して出力することができる。
図2は、特徴量抽出部200の機能構成例を示すブロック図である。特徴量抽出部200は、カラーヒストグラム抽出部210と、連続フレーム間ヒストグラム差分算出部220と、閾値保持部230と、カットチェンジ点判別部240と、チェンジ点間隔算出部250とを備える。
図3(a)および(b)は、ビデオデコード部130から出力されたベースバンドデータからフレーム毎に抽出される輝度信号Y、色差信号(青)Cbおよび色差信号(赤)Crのカラーヒストグラムの一例を示す図である。図3(a)および(b)に示すグラフにおいて、横軸は階調を示し、縦軸は頻度を示す。図3(c)は、図3(a)および(b)に示すカラーヒストグラムの面積の差分を示す図である。図3(c)において、斜線で示す領域が、図3(a)および(b)に示すカラーヒストグラムの面積の差分値に相当する領域である。なお、図3については、図2を参照して詳細に説明する。
図4は、動画を構成する各フレームに対応する画像を時系列に並べられた場合を概念的に示す図である。なお、図4については、図2を参照して詳細に説明する。
カラーヒストグラム抽出部210は、ビデオデコード部130から出力されたベースバンドデータをバッファに保持して、このバッファに保持されたベースバンドデータから画面全体のY、CbおよびCrのカラーヒストグラムをサンプリングし、このサンプリングされたカラーヒストグラムについて、階調をN段階(例えば、N=16)に分け、各階調における頻度の和が一定になるように正規化を行うものである。そして、正規化が施されたY、CbおよびCrのヒストグラムを連続フレーム間ヒストグラム差分算出部220に出力するものである。例えば、動画を構成する1つのフレームについて抽出されたY、CbおよびCrのヒストグラムを図3(a)に示し、図3(a)に示すヒストグラムに対応するフレームの次のフレームについて抽出されたY、CbおよびCrのヒストグラムを図3(b)に示す。このように、動画入力部110に入力された動画を構成する各フレームについて、Y、CbおよびCrのヒストグラムが抽出される。
連続フレーム間ヒストグラム差分算出部220は、カラーヒストグラム抽出部210から出力されたフレーム毎のY、CbおよびCrのカラーヒストグラムについて、連続する2フレーム間におけるカラーヒストグラムの面積の差分値を算出するものであり、算出されたヒストグラム差分値をカットチェンジ点判別部240に出力するものである。例えば、連続する2フレームに対応する図3(a)および(b)に示すカラーヒストグラムの面積の差分値として、図3(c)に斜線で示す領域の面積の値が算出される。
閾値保持部230は、連続する2フレーム間がカットチェンジ点であるか否かをカットチェンジ点判別部240が判別する場合に用いられる閾値を保持するものであり、保持されている閾値をカットチェンジ点判別部240に出力する。
カットチェンジ点判別部240は、連続フレーム間ヒストグラム差分算出部220から出力されたヒストグラム差分値が、閾値保持部230に保持されている閾値を超えたか否かに基づいて、連続する2フレーム間がカットチェンジ点であるか否かを判別するものである。すなわち、カットチェンジ点判別部240は、連続フレーム間ヒストグラム差分算出部220から出力されたヒストグラム差分値が、閾値保持部230に保持されている閾値を超えた場合には、そのヒストグラム差分値に対応する連続する2フレーム間がカットチェンジ点であると判別して、そのフレーム間に対応する時刻をカットチェンジ点の時刻として、チェンジ点間隔算出部250に出力する。一方、カットチェンジ点判別部240は、連続フレーム間ヒストグラム差分算出部220から出力されたヒストグラム差分値が、閾値保持部230に保持されている閾値を超えていない場合には、そのヒストグラム差分値に対応する連続する2フレーム間がカットチェンジ点ではないと判別する。このようにカットチェンジ点ではないと判別された場合には、チェンジ点間隔算出部250には時刻が出力されない。
図4には、撮像装置により撮影された動画300を構成する各フレームに対応する画像301乃至309を概略的に示す。画像301乃至309は、1つの動画300に含まれる画像ではあるものの、撮影された時刻および場所が異なる4つのシーンが含まれているため、これらのシーンが切り換わるフレームでは被写体の構図や色等が瞬間的に変化する。このため、これらのシーンが切り換わる際の連続する2フレーム間におけるヒストグラム差分値が、閾値保持部230に保持されている閾値を超えて、その連続する2フレーム間がカットチェンジ点であると判別される。
例えば、画像301乃至303は、街中を歩いている人物を撮影したものであり、人物が移動しているため、人物の位置が多少異なるものの、画像全体では類似している印象となる。このため、画像301乃至303に関する連続する2フレーム間におけるヒストグラム差分値が、閾値保持部230に保持されている閾値を超えず、その連続する2フレーム間はカットチェンジ点ではないと判別される。
また、画像304または305は、山の前の家並みを撮影したものであり、撮像装置を水平方向に移動させて撮影しているため、被写体の位置が水平方向に移動して多少異なるものの、画像全体では類似している印象となる。しかしながら、画像303と画像304とを比較した場合には、撮影された時刻および場所が異なるシーンの切り換え部分に該当するため、画像全体が大きく異なっている。このため、画像303と画像304との境界がカットチェンジ点とされ、このカットチェンジ点に対応する時刻(開始時刻t1からの時間)t2がチェンジ点間隔算出部250に出力される。
また、画像305と画像306との境界、および、画像307と画像308との境界についても、同様に、カットチェンジ点として検出され、このカットチェンジ点に対応する時刻t3およびt4がチェンジ点間隔算出部250に出力される。
チェンジ点間隔算出部250は、カットチェンジ点判別部240から出力されたカットチェンジ点の時刻に基づいて、隣接する2つのカットチェンジ点間の時間間隔を算出するものであり、算出されたカットチェンジ点の間隔をデータベース140および特徴量照合部150に出力する。すなわち、チェンジ点間隔算出部250は、カットチェンジ点判別部240からカットチェンジ点の時刻が出力された場合には、この時刻と、この時刻の直前に出力された時刻との差の値を算出して、隣接する2つのカットチェンジ点間の時間間隔を算出する。なお、隣接する2つのカットチェンジ点間の間隔として、このカットチェンジ点間に含まれるフレームの数を算出し、この算出されたフレーム数をカットチェンジ点の間隔とするようにしてもよい。
次に、特徴量抽出部200により抽出されたカットチェンジ点間隔に基づいて作成されるカットチェンジ点間隔リストについて、図面を参照して詳細に説明する。
図5は、データベース140に格納されているカットチェンジ点間隔リストの概略を示す図である。データベース140には、1または複数のカットチェンジ点間隔リストが格納されている。例えば、データベース140には、カットチェンジ点間隔リスト400、405、406が格納されている。なお、データベース140に格納されるカットチェンジ点間隔リストは、特徴量抽出部200から出力されたカットチェンジ点の間隔を順次格納して作成するようにしてもよく、他の情報処理装置において抽出されたカットチェンジ点の間隔を順次格納して作成するようにしてもよい。
カットチェンジ点間隔リスト400には、カットチェンジ点間隔403が時系列に記録されている。これらは、対応する動画を識別するためのコンテンツIDに関連付けられている。コンテンツIDは、情報処理装置100の内部または外部に備えられている動画データベースに格納されている動画を検索するために用いることができるIDであり、例えば、カットチェンジ点間隔リスト400に対応するコンテンツIDとして、「#123」が付与されているものとする。また、図5においては、対応する動画において抽出されたカットチェンジ点間隔の識別番号としてノードID402を付して説明する。
カットチェンジ点間隔403は、対応する動画において抽出されたカットチェンジ点間隔を時間で示すものであり、時刻の早い順序で記録される。
このように、1または複数のカットチェンジ点間隔リストが格納されているデータベース140を用いて、動画入力部110から入力された動画について一致検索をする場合には、データベース140に格納されているカットチェンジ点間隔リストを1つずつ読み出して、次に示すように検索処理を実行する。
図6は、データベース140から取り出されたカットチェンジ点間隔リスト400と、検索対象として動画入力部110から入力された動画において抽出されたカットチェンジ点間隔に対応するカットチェンジ点間隔リスト420とを示す図である。ここでは、カットチェンジ点間隔リスト400とカットチェンジ点間隔リスト420とを比較して、これらのリストに対応する動画が一致するか否かを判定する場合について図7を参照して説明する。
図7は、カットチェンジ点間隔リスト400とカットチェンジ点間隔リスト420とを比較して、これらのリストに対応する動画が一致するか否かを判定する場合における判定方法の一例を概略的に示す図である。
最初に、カットチェンジ点間隔リスト420の比較対象となるカットチェンジ点間隔リストがデータベース140から取り出される。例えば、カットチェンジ点間隔リスト400が取り出される。続いて、カットチェンジ点間隔リスト400のカットチェンジ点間隔403の値と、カットチェンジ点間隔リスト420のカットチェンジ点間隔423の値とをノードIDの順番で順次比較して、一致する値が検出される。例えば、カットチェンジ点間隔リスト400におけるノードID402の「11」に対応するカットチェンジ点間隔403の値「0:00:05.605」と、カットチェンジ点間隔リスト420におけるノードID422の「21」に対応するカットチェンジ点間隔423の値「0:00:05.605」とが、矢印431で示すように一致する(441)。なお、図7では、図6に示すカットチェンジ点間隔の各値の前半部分を省略して示す。
このように、2つのカットチェンジ点間隔リストにおいて、一致するカットチェンジ点間隔の値が検出された場合には、この一致した値の次のノードIDに対応するカットチェンジ点間隔の値が2つのリストのそれぞれから取り出される。例えば、カットチェンジ点間隔リスト400におけるノードID402のノードID402の「12」に対応するカットチェンジ点間隔403の値「0:00:03.603」と、カットチェンジ点間隔リスト420におけるノードID422の「22」に対応するカットチェンジ点間隔423の値「0:00:03.570」とが取り出される。そして、取り出された2つの値が一致するか否かが判断される(442)。ここで、一致した場合には、この一致した値の次のノードIDに対応するカットチェンジ点間隔の値が2つのリストのそれぞれから取り出され、一致するか否かが判断される。
一方、図6および図7に示すように、取り出された2つの値が一致しない場合には(442)、比較対象となっている2つの値のうちの小さい値が取り出されたカットチェンジ点間隔リストから、この値の次のノードIDに対応するカットチェンジ点間隔の値が取り出され、取り出された値と、比較対象となっている値とが加算される。例えば、カットチェンジ点間隔403の値「0:00:03.603」とカットチェンジ点間隔423の値「0:00:03.570」とを比較した場合には、カットチェンジ点間隔423の値「0:00:03.570」が小さい。このため、カットチェンジ点間隔リスト420におけるノードID422の「23」に対応するカットチェンジ点間隔423の値「0:00:01.634」が取り出され、カットチェンジ点間隔423の値「0:00:03.570」と加算される(443)。
続いて、加算された加算値と、加算の対象となっていない値とが一致するか否かが判断される(444)。ここで、一致した場合には、この一致した値の次のノードIDに対応するカットチェンジ点間隔の値が2つのリストのそれぞれから取り出され、一致するか否かが判断される。このように、最初の一致した値から所定の範囲内の値を順次加算して、2つのカットチェンジ点間隔リストの値が一致するか否かが判断される。所定の範囲として、例えば、ノードIDが3つの範囲とすることができる。例えば、図6に示す矢印431で結ばれる最初に一致した値から、ノードIDが3つの範囲432内において、加算処理(443、445、447)が行われるとともに、比較処理が行われる(442、444、446、448)。そして、ノードIDが3つの範囲432内において、矢印433で示す位置で比較対象となっている2つの値が一致する(448)。
このように、最初に一致した値から所定の範囲内において、2つのカットチェンジ点間隔リストの値が一致した場合には、同様に、この一致した各値から所定の範囲内の値を順次加算して、2つのカットチェンジ点間隔リストの値が一致するか否かが判断される。ここでの所定の範囲として、例えば、最初の範囲と同様に、ノードIDが3つの範囲とするようにしてもよく、異なる値とするようにしてもよい。
例えば、図6に示す矢印433で結ばれる一致した値から、カットチェンジ点間隔リスト400におけるノードIDが3つの範囲435内、および、カットチェンジ点間隔リスト420におけるノードIDが3つの範囲434内において、加算処理(450、452)が行われるとともに、比較処理が行われる(449、451、453)。そして、ノードIDが3つの範囲434または435内において、矢印436で示す位置で比較対象となっている2つの値が一致する(453)。
なお、最初に一致した値または2回目以降に一致した値を基準として取り出された2つの値のうちの少なくとも1つが加算前に一致した場合には、その1つの値については加算処理をせずに、この一致した値を基準として次の比較処理を行う。また、所定の範囲内で加算値が一致しない場合には、2つのリストにおいて、一致する値の検出を再度繰り返す。
次に、本発明の実施の形態における情報処理装置100の動作について図面を参照して説明する。
図8は、情報処理装置100による動画一致検索処理の処理手順を示すフローチャートである。ここでは、1または複数のカットチェンジ点間隔リストがデータベース140に格納されている場合において、動画入力部110に入力された動画に一致する動画に対応するカットチェンジ点間隔リストを、データベース140に格納されているカットチェンジ点間隔リストの中から検索する例について説明する。
最初に、動画入力部110に動画が入力される(ステップS901)。続いて、ビデオ・オーディオデマルチプレクサ120が、入力された動画をビデオデータとオーディオデータとに分離する(ステップS902)。続いて、ビデオデコード部130が、入力された動画から分離されたビデオデータをデコードしてベースバンドデータを生成する(ステップS903)。続いて、特徴量抽出部200が、生成されたベースバンドデータに基づいてカットチェンジ点を抽出し(ステップS904)、抽出されたカットチェンジ点の間隔を算出する(ステップS905)。
続いて、特徴量抽出部200により算出されたカットチェンジ点の間隔に基づいて、特徴量照合部150が、カットチェンジ点の間隔を時系列に並べたリストであるカットチェンジ点間隔リストを作成する(ステップS906)。
続いて、特徴量照合部150が、データベース140に格納されているカットチェンジ点間隔リストの中から1つのカットチェンジ点間隔リストを取得する(ステップS907)。例えば、図6に示すように、カットチェンジ点間隔リスト420が作成されるとともに、データベース140からカットチェンジ点間隔リスト400が取り出される。
続いて、ステップS906で作成されたカットチェンジ点間隔リストと、データベース140から取得されたカットチェンジ点間隔リストとについて、特徴量照合部150が一致判定処理を実行する(ステップS920)。なお、この一致判定処理については、図9を参照して詳細に説明する。
続いて、データベース140に格納されているカットチェンジ点間隔リストの中で、一致処理判定がされていないカットチェンジ点間隔リストが存在するか否かが判断される(ステップS908)。一致処理判定がされていないカットチェンジ点間隔リストがデータベース140に存在する場合には(ステップS908)、ステップS907に戻り、特徴量照合部150が、データベース140に格納されているカットチェンジ点間隔リストの中から、一致判定処理がされていないカットチェンジ点間隔リストを取得する。
一方、一致判定処理がされていないカットチェンジ点間隔リストがデータベース140に存在しない場合には(ステップS908)、判定結果出力部160が、一致判定処理により一致すると判定された判定結果を示す一致リストを出力する(ステップS909)。
図9は、情報処理装置100による動画一致検索処理の処理手順のうちの一致判定処理手順(図8に示すステップS920の処理手順)を示すフローチャートである。
最初に、変数m、nが「1」に初期化されるとともに、変数iが「0」に初期化される(ステップS921)。続いて、ステップS906で作成されたカットチェンジ点間隔リストのm番目のカットチェンジ点間隔の値が取得される(ステップS922)。続いて、データベース140から取得されたカットチェンジ点間隔リストのn番目のカットチェンジ点間隔の値が取得される(ステップS923)。
続いて、ステップS922およびステップS923で最後に取得された2つの値を比較して一致するか否かが判断される(ステップS924)。ステップS922およびステップS923で最後に取得された2つの値が一致していなければ(ステップS924)、変数nに「1」が加算され(ステップS935)、変数nが、データベース140から取得されたカットチェンジ点間隔リストのカットチェンジ点間隔の値の格納数よりも大きいか否かが判断される(ステップS936)。変数nが、データベース140から取得されたカットチェンジ点間隔リストのカットチェンジ点間隔の値の格納数よりも大きくない場合には(ステップS936)、ステップS923に戻り、データベース140から取得されたカットチェンジ点間隔リストのn番目のカットチェンジ点間隔の値が取得される(ステップS923)。
一方、変数nが、データベース140から取得されたカットチェンジ点間隔リストのカットチェンジ点間隔の値の格納数よりも大きい場合には(ステップS936)、変数mに「1」が加算され(ステップS937)、変数mが、ステップS906で作成されたカットチェンジ点間隔リストのカットチェンジ点間隔の値の格納数よりも大きいか否かが判断される(ステップS938)。変数mが、ステップS906で作成されたカットチェンジ点間隔リストのカットチェンジ点間隔の値の格納数よりも大きくない場合には(ステップS936)、データベース140の先頭からカットチェンジ点間隔の値を取得するために変数nが「1」に初期化され(ステップS939)、ステップS922に戻り、ステップS906で作成されたカットチェンジ点間隔リストのm番目のカットチェンジ点間隔の値が取得される(ステップS922)。このように、2つのカットチェンジ点間隔リストのカットチェンジ点間隔の各値が比較されるように、カットチェンジ点間隔の各値が時系列に順次取得される。
また、ステップS922およびステップS923で最後に取得された2つの値が一致する場合には(ステップS924)、ステップS922およびステップS923で取得されて一致した値の次の値が、2つのカットチェンジ点間隔リストのそれぞれから取得される(ステップS925)。例えば、ステップS906で作成されたカットチェンジ点間隔リストについては、m+1番目のカットチェンジ点間隔の値が取得され、データベース140から取得されたカットチェンジ点間隔リストについては、n+1番目のカットチェンジ点間隔の値が取得される(ステップS925)。
続いて、ステップS925で取得された2つの値が一致するか否かが判断される(ステップS926)。ステップS925で取得された2つの値が一致する場合には(ステップS926)、ステップS932に進み、変数iに「1」が加算される(ステップS932)。一方、ステップS925で取得された2つの値が一致しない場合には(ステップS926)、比較対象となっている2つの値について、ステップS906で作成されたカットチェンジ点間隔リストに係る値が、データベース140から取得されたカットチェンジ点間隔リストに係る値よりも大きいか否かが判断される(ステップS927)。
ステップS906で作成されたカットチェンジ点間隔リストに係る値が、データベース140から取得されたカットチェンジ点間隔リストに係る値よりも大きい場合には(ステップS927)、データベース140から取得されたカットチェンジ点間隔リストから次の値が取得され、取得された値が、データベース140から取得されたカットチェンジ点間隔リストに係る値に加算される(ステップS928)。例えば、データベース140から取得されたカットチェンジ点間隔リストについて、n+1番目のカットチェンジ点間隔の値が比較対象となっている場合には、n+2番目のカットチェンジ点間隔の値が取得され、n+1番目のカットチェンジ点間隔の値と、n+2番目のカットチェンジ点間隔の値とが加算されて、比較対象の値となる。
一方、ステップS906で作成されたカットチェンジ点間隔リストに係る値が、データベース140から取得されたカットチェンジ点間隔リストに係る値よりも小さい場合には(ステップS927)、ステップS906で作成されたカットチェンジ点間隔リストから次の値が取得され、この取得された値が、ステップS906で作成されたカットチェンジ点間隔リストに係る値に加算される(ステップS929)。例えば、ステップS906で作成されたカットチェンジ点間隔リストについて、m+1番目とm+2番目とのカットチェンジ点間隔の値の合計値が比較対象となっている場合には、m+3番目のカットチェンジ点間隔の値が取得され、m+1番目とm+2番目とのカットチェンジ点間隔の値の合計値と、m+3番目のカットチェンジ点間隔の値とが加算されて、比較対象の値となる。
続いて、ステップS928またはステップS929において少なくとも一方に加算処理がされた2つの値が一致するか否かが判断される(ステップS930)。ステップS928またはステップS929において少なくとも一方に加算処理がされた2つの値が一致する場合には(ステップS930)、ステップS932に進み、変数iに「1」が加算される(ステップS932)。一方、ステップS928またはステップS929において少なくとも一方に加算処理がされた2つの値が一致しない場合には(ステップS930)、ステップS924またはステップS926で一致した2つの値を基準値として、この2つの値以降に何れかのカットチェンジ点間隔リストから取得された値が、基準値の次の値からN番目の値であるか否かが判断される(ステップS931)。例えば、ステップS924で一致した2つの値を基準値とする場合において、ステップS906で作成されたカットチェンジ点間隔リストについては、m+N番目のカットチェンジ点間隔の値が取得されたか否かが判断され、データベース140から取得されたカットチェンジ点間隔リストについては、n+N番目のカットチェンジ点間隔の値が取得されたか否かが判断される。
ステップS924またはステップS926で一致した2つの値以降に何れかのカットチェンジ点間隔リストから取得された値が、基準値の次の値からN番目の値である場合には(ステップS931)、ステップS935に戻り、変数nに「1」が加算される(ステップS935)。一方、ステップS924またはステップS926で一致した2つの値以降に何れかのカットチェンジ点間隔リストから取得された値が、基準値の次の値からN番目の値ではない場合には(ステップS931)、ステップS927に戻り、比較対象となっている2つの値について、ステップS906で作成されたカットチェンジ点間隔リストに係る値が、データベース140から取得されたカットチェンジ点間隔リストに係る値よりも大きいか否かが判断される(ステップS927)。
変数iに「1」が加算されると(ステップS932)、変数iが定数Aに等しいが否かが判断される(ステップS933)。すなわち、ステップS926またはステップS930で一致した回数が、A回に達したか否かが判断される。変数iが定数Aに等しい場合には(ステップS933)、判定の対象となっている値が取得されたカットチェンジ点間隔リストが一致リストに追加される(ステップS934)。ここで、定数Aとしては、例えば、「2」または「3」とすることができる。また、定数Nとしては、例えば「3」乃至「6」とすることができる。すなわち、最初に一致した値を最初の基準値とし、最初の基準値の次の値からNの範囲内で加算比較処理を行い、一致するか否かを判別する。そして、Nの範囲内で一致した場合において最後に取得された値を2個目の基準値として、2個目の基準値の次の値からNの範囲内でさらに加算比較処理を行い、一致するか否かを判別する。これらの加算比較処理を繰り返し、連続してA回一致したか否かに応じて、目的の動画と一致しているか否かを判別することができる。
一方、変数iが定数Aよりも小さい場合には(ステップS933)、ステップS925に戻り、ステップS926またはステップS930で一致した場合において最後に取得された値の次の値が、2つのカットチェンジ点間隔リストのそれぞれから取得される(ステップS925)。
以上で示したように、ステップS924で2つの値が一致した場合には、一致した値の次の値を順次取得して比較する例について説明した。しかしながら、少なくとも1つのリストの後端において、ステップS924で2つの値が一致した場合には、一致した値の次の値である比較対象となるカットチェンジ点間隔が存在しないため、一致した値の次の値を順次取得して比較することができない。このため、このような場合でも、一致判定処理を行うことが重要となる。そこで、例えば、カットチェンジ点間隔リストを前半部分と、中央部分と、後半部分とに分けて、ステップS924で2つの値が一致した位置に応じて比較加算処理を変更することができる。具体的には、前半部分において、ステップS924で2つの値が一致した場合には、図7および図9に示すように、一致した値の後の値を順次取得して比較する。また、後半部分において、ステップS924で2つの値が一致した場合には、一致した値の前の値を順次取得して比較する。中央部分において、ステップS924で2つの値が一致した場合には、一致した値の前後の何れか一方向の値を順次取得して比較する。また、比較対象となる2つのリストのうちの何れかを基準にして、上述した比較加算処理の変更をするようにしてもよく、この2つのリストのうちで、ステップS924で2つの値が一致した2つの位置に応じて比較加算処理の変更をするようにしてもよい。
次に、連続して短いカットチェンジ点間隔が抽出された場合について図面を参照して詳細に説明する。
図10は、カットチェンジ点間隔リスト480および490を示す図である。図10(a)には、比較的短いカットチェンジ点間隔が連続して含まれるカットチェンジ点間隔リスト480を示し、図10(b)には、連続して含まれる比較的短いカットチェンジ点間隔を加算したカットチェンジ点間隔リスト490を示す。
図10(a)に示すように、1乃至2フィールド程度の比較的短いカットチェンジ点間隔が抽出されることが考えられる。このような連続する比較的短いカットチェンジ点間隔(例えば、「1」)を多数含むカットチェンジ点間隔リストを用いて、一致判定処理を行うと、ステップS924で2つの値が一致した後に、ステップS925およびステップS926で次の値およびその次の値が一致する可能性が高い。この場合には、本来一致すべきでない他の動画と一致してしまう可能性も考えられる。そこで、チェンジ点間隔算出部250において、短いカットチェンジ点間隔が連続して抽出された場合には、図10(b)に示すように、これらの連続する比較的短いカットチェンジ点間隔を加算し、加算された値を一致判定処理に用いるようにする。
図10(b)に示すカットチェンジ点間隔リスト490では、図10(a)に示すカットチェンジ点間隔リスト480に含まれるカットチェンジ点間隔のうちの10以下のカットチェンジ点間隔が連続する場合に、これらのカットチェンジ点間隔を加算する例を示す。なお、図10では、加算前のカットチェンジ点間隔と、加算後のカットチェンジ点間隔との関係を矢印481乃至489で示す。
図10(a)に示すように、連続する10以下のカットチェンジ点間隔を加算する前のカットチェンジ点間隔の数が45個である。これに対して、図10(b)に示すように、連続する10以下のカットチェンジ点間隔を加算した後のカットチェンジ点間隔の数が32個である。これにより、データベース140に格納するデータ量を削減させることができるとともに、他の動画との誤一致の可能性を低減させることができる。なお、図10に示す加算処理を行う場合には、データベース140に格納されるカットチェンジ点間隔リストおよび一致判定処理の対象となる動画に対応するカットチェンジ点間隔リストの双方に対して行うようにする。
次に、特徴量照合部150により判定された判定結果に基づいて、特徴量抽出部200が用いる閾値を変更する例について説明する。
上述したように、特徴量照合部150による一致判定処理は、特徴量抽出部200により抽出されるカットチェンジ点が大きく影響する。しかしながら、データベース140に格納されているカットチェンジ点間隔リストに対応する動画と、動画入力部110に入力された動画とが同一の動画であっても、この2つの動画の画質や画枠サイズ等が異なる場合には、一方の動画に係るフレーム箇所がカットチェンジ点として抽出されても、他方の動画に係る同じフレーム箇所がカットチェンジ点として抽出されないことも考えられる。このように、同一の動画であっても、画質や画枠サイズ等が異なる場合には、同一のカットチェンジ点が抽出されない場合も考えられる。この場合には、特徴量照合部150による一致判定処理の精度が低下することになる。そこで、特徴量照合部150による一致判定処理の精度を高めるためには、動画に対するカットチェンジ点の抽出精度が重要となる。
図11は、図1に示す情報処理装置100の一部を変形した情報処理装置101の構成例を示すブロック図である。情報処理装置101は、図1に示す情報処理装置100において、データベース140および特徴量抽出部200の代わりに、データベース141および特徴量抽出部201を設けるとともに、特徴量保持部710と、チェンジ点比較部720と、閾値更新部730とをさらに備える情報処理装置である。なお、データベース141、特徴量抽出部201、特徴量保持部710、チェンジ点比較部720および閾値更新部730以外の構成は、図1に示す情報処理装置100と同様であるため、これらの以外の構成についての説明は省略する。なお、特徴量照合部150は、一致判定処理において、リスト毎に一致判定処理に係る最初に一致した値の位置を一致リストに記録するものとする。
特徴量抽出部201は、ビデオデコード部130から出力されたベースバンドデータに基づいて、動画を構成する連続するフレーム間のヒストグラム差分値およびカットチェンジ点の間隔を抽出するものであり、抽出されたカットチェンジ点の間隔を特徴量照合部150に出力するとともに、抽出されたヒストグラム差分値およびカットチェンジ点の間隔をデータベース141および特徴量保持部710に出力する。なお、特徴量抽出部201については、図12を参照して詳細に説明する。
データベース141は、特徴量抽出部201から出力されたヒストグラム差分値およびカットチェンジ点に対応する特徴量リストを動画毎に格納するデータベースであり、格納されている特徴量リストを動画毎に特徴量照合部150に出力する。なお、特徴量リストについては、図12、図13等を参照して詳細に説明する。
特徴量照合部150は、特徴量抽出部201から出力されたカットチェンジ点の間隔と、データベース141に格納されている各特徴量リストとを比較し、この比較結果に基づいて、動画入力部110に入力された動画と、データベース140に格納されている特徴量リストに対応する動画とが一致するか否かを判定するものであり、この判定結果を示す一致リストを判定結果出力部160に出力する。すなわち、特徴量照合部150は、動画入力部110に入力された動画と一致する動画に対応する特徴量リストを、データベース140に格納されている特徴量リストの中から検索する。
特徴量保持部710は、特徴量抽出部201から出力されたヒストグラム差分値およびカットチェンジ点間隔に基づいて、ヒストグラム差分値およびカットチェンジ点間隔を時系列に並べたリストである特徴量リストを作成して保持するものであり、保持されている特徴量リストをチェンジ点比較部720に出力する。
チェンジ点比較部720は、特徴量照合部150から出力された一致リストに含まれる特徴量リストをデータベース141から取得して、この取得された特徴量リストと、特徴量保持部710から出力された特徴量リストとについて、互いに一致していないチェンジ点を検出して、この検出されたチェンジ点におけるヒストグラム差分値を比較するものである。そして、この比較結果に基づいて閾値を算出し、算出された閾値を閾値更新部730に出力する。
閾値更新部730は、チェンジ点比較部720から出力された閾値に基づいて、特徴量抽出部201がカットチェンジ点を抽出する場合に用いられる閾値を更新するものである。なお、閾値の更新については、図15、図16等を参照して詳細に説明する。
図12は、特徴量抽出部201の機能構成例を示すブロック図である。特徴量抽出部201は、図2に示す特徴量抽出部200において、閾値保持部230の代わりに、閾値保持部231を設けるとともに、連続フレーム間ヒストグラム差分算出部220から出力されたヒストグラム差分値をデータベース141および特徴量保持部710に出力し、チェンジ点間隔算出部250から出力されたカットチェンジ点の間隔をデータベース141、特徴量照合部150および特徴量保持部710に出力するものである。なお、閾値保持部231以外の構成は、図2に示す特徴量抽出部200と同様であるため、閾値保持部231以外の構成についての説明は省略する。
閾値保持部231は、連続する2フレーム間がカットチェンジ点であるか否かをカットチェンジ点判別部240が判別する場合に用いられる閾値を保持するものであり、保持されている閾値を閾値更新部730からの更新情報に基づいて更新する。また、閾値保持部231は、保持されている閾値をカットチェンジ点判別部240に出力する。
次に、特徴量抽出部201から出力されたヒストグラム差分値およびカットチェンジ点に基づいて作成される特徴量リストについて、図面を参照して詳細に説明する。
図13は、データベース141に格納されている特徴量リストの概略を示す図である。データベース141には、1または複数の特徴量リストが格納されている。例えば、データベース141には、特徴量リスト460、465、466が格納されている。なお、データベース141に格納される特徴量リストは、特徴量抽出部201から出力されたヒストグラム差分値およびカットチェンジ点により作成される特徴量リストを順次格納するようにしてもよく、他の情報処理装置において作成された特徴量リストを格納するようにしてもよい。
特徴量リスト460には、カットチェンジ点間隔463と、連続フレームヒストグラム差分値464とが時系列に関連付けて記録されている。これらは、対応する動画を識別するためのコンテンツID(例えば、「#223」)に関連付けられている。また、図13においては、対応する動画において抽出されたカットチェンジ点間隔の識別番号としてノードID462を付して説明する。カットチェンジ点間隔463は、図5に示すカットチェンジ点間隔403と同様であるため、ここでの説明を省略する。
連続フレームヒストグラム差分値464は、特徴量抽出部201の連続フレーム間ヒストグラム差分算出部220から出力されたヒストグラム差分値を示すものであり、フレーム毎に時刻の早い順序で記録される。ここで、カットチェンジ点間隔463は、連続フレーム間ヒストグラム差分算出部220により算出されたヒストグラム差分値のうちで、閾値保持部231に保持されている閾値を超えたヒストグラム差分値に対応する2つの連続するフレームについて記録される。これに対して、連続フレームヒストグラム差分値464は、連続フレーム間ヒストグラム差分算出部220により算出されたヒストグラム差分値の全ての値が記録される。
上述したように、特徴量照合部150による一致判定処理は、特徴量リスト460のカットチェンジ点間隔463を用いて行われる。このため、特徴量照合部150による一致判定処理についての説明は省略する。
次に、特徴量リストに格納されている連続フレームヒストグラム差分値に基づいて閾値を変更する閾値変更方法について図面を参照して詳細に説明する。
図14は、データベース141から取得された特徴量リスト460と、特徴量保持部710から取得された特徴量リスト470とを示す図である。ここでは、特徴量リスト460と特徴量リスト470との連続フレームヒストグラム差分値を比較して、閾値を変更する場合について図15および図16を参照して説明する。
図15および図16は、特徴量リスト460と特徴量リスト470との連続フレームヒストグラム差分値を表す折線グラフを示す図である。ここで、折線481は、特徴量リスト460の連続フレームヒストグラム差分値464を表す折線であり、折線482は、特徴量リスト470の連続フレームヒストグラム差分値474を表す折線である。また、図15では、閾値483として「250」が設定され、図16では、閾値483の「250」から閾値484の「230」に変更されているものとする。この例では、データベース141から取得された特徴量リスト460に対応する動画は高画質の動画であるのに対して、特徴量保持部710から取得された特徴量リスト470に対応する動画は低画質の動画であるものとする。すなわち、比較対象となる2つの動画は同一の動画であるものの、この2つの動画は画質が異なるものである。
図15に示すように、2つのリストの連続フレームヒストグラム差分値は、時刻t11乃至t13で大きく変化する。この場合に、閾値483が「250」に設定されているため、時刻t11では、高画質および低画質の動画ともカットチェンジ点として抽出されている。これに対して、t12においては、高画質では閾値を越えているため、カットチェンジ点として抽出されているものの、低画質では閾値以下であるため、カットチェンジ点として抽出されていない。また、t13おいては、低画質では閾値を越えているため、カットチェンジ点として抽出されているものの、高画質では閾値以下であるため、カットチェンジ点として抽出されていない。このように、2つの同一の動画であっても、画質や画枠サイズ等が異なる場合には、抽出されるカットチェンジ点の位置が異なる場合がある。
ここで、高画質の動画の場合は、オリジナル映像に近く、カットチェンジ点の抽出精度も高いと考えられる。そこで、2つの同一の動画ついて抽出されるカットチェンジ点の位置が異なる場合には、高画質の動画の連続フレームヒストグラム差分値を信頼して閾値を変更する。すなわち、高画質では閾値を越えているものの、低画質では閾値以下である点が存在する場合には、その点において低画質でもカットチェンジ点として抽出されるようにするため、閾値を変更する。例えば、このような点では、低画質の連続フレームヒストグラム差分値を閾値として設定する。例えば、図15においては、閾値483として設定されている「250」を、図16に示すように、低画質に対応する折線482における時刻t12の値である「230」に変更する。これにより、この変更後に、入力される動画について、低画質であっても、さらに適切なカットチェンジ点を抽出することができる。
一方、t13では低画質のみが閾値を超えている。しかしながら、低画質の場合には、カットチェンジ点の抽出精度も低いと考えられる。このため、低画質のみが閾値を超えている点の場合には、その点は誤差と考え、t12で行った閾値の変更を行わない。また、高画質では閾値を越えているものの、低画質では閾値以下である点が複数存在する場合には、これらの各点において最も小さい値の連続フレームヒストグラム差分値を閾値として設定するようにすることができる。
図17は、情報処理装置100による閾値変更処理の処理手順を示すフローチャートである。ここでは、高画質の動画に対応する特徴量リストをデータベース141に格納しておき、検索対象として入力された動画が低画質の動画である場合を例にして説明する。
最初に、特徴量照合部150により作成された一致リストがチェンジ点比較部720に入力される(ステップS941)。続いて、入力された一致リストに、一致すると判定された特徴量リストが存在するか否かをチェンジ点比較部720が判断し(ステップS942)、一致すると判定された特徴量リストが存在しない場合には、閾値変更処理の動作を終了する。
一方、一致すると判定された特徴量リストが一致リストに存在する場合には(ステップS942)、チェンジ点比較部720が、一致リストに含まれる特徴量リストをデータベース141から取得するとともに、特徴量保持部710に保持されている特徴量リストを取得する(ステップS943)。
続いて、チェンジ点比較部720が、データベース141から取得された特徴量リストと、特徴量保持部710から取得された特徴量リストとのカットチェンジ点を比較して、データベース141から取得された特徴量リスト(高画質の動画に係る特徴量リスト)に含まれるものの、特徴量保持部710から取得された特徴量リスト(低画質の動画に係る特徴量リスト)に含まれない点を検出する(ステップS944)。すなわち、低画質の動画に係る特徴量リストにおけるカットチェンジ点の抜けを検出する。そして、高画質の動画に係る特徴量リストに含まれるものの、低画質の動画に係る特徴量リストに含まれない点が存在しない場合には(ステップS945)、閾値変更処理の動作を終了する。
一方、高画質の動画に係る特徴量リストに含まれるものの、低画質の動画に係る特徴量リストに含まれない点が存在する場合には(ステップS945)、チェンジ点比較部720が、ステップS944で検出された点における連続フレームヒストグラム差分値を、特徴量保持部710から取得された特徴量リストから取得する(ステップS946)。なお、ステップS944で検出された点が複数存在する場合には、複数の点に対応する連続フレームヒストグラム差分値が取得される。
続いて、チェンジ点比較部720が、ステップS944で検出された点が複数であるか否かを判断する(ステップS947)。ステップS944で検出された点が1つである場合には(ステップS947)、チェンジ点比較部720が、特徴量保持部710から取得された特徴量リストから取得された、この1つの点における連続フレームヒストグラム差分値を閾値として設定する(ステップS948)。
一方、ステップS944で検出された点が複数である場合には(ステップS947)、チェンジ点比較部720が、特徴量保持部710から取得された特徴量リストから取得された、ステップS944で検出された各点における連続フレームヒストグラム差分値のうちで最も小さい値を閾値として設定する(ステップS948)。
以上では、高画質の動画に対応する特徴量リストをデータベース141に格納しておき、検索対象として入力された動画が低画質の動画である場合について説明した。しかしながら、比較対象となる2つの特徴量リストに対応する動画について高画質または低画質を特徴量照合部150による一致判定処理の前に予め判定し、この判定結果に基づいて、上述した閾値変更処理を行うようにしてもよい。この高画質または低画質の判定として、例えば、動画の圧縮ストリームのヘッダ情報から圧縮レートや画枠サイズ等を抽出し、この抽出された圧縮レートや画枠サイズ等に基づいて高画質または低画質を判定することができる。また、動画一致検索を行う前に、テストデータとして複数の動画を情報処理装置101に入力し、閾値変更処理を行うようにしてもよい。すなわち、高画質の動画に対応する特徴量リストと低画質の動画に対応する特徴量リストとのチェンジ点を比較し、高画質の動画においてチェンジ点と判別されているものの、低画質の動画においてチェンジ点と判別されていない点が存在する場合には、この点が低画質の動画においてもチェンジ点と判別されるように閾値を調整する。これにより、特徴量照合部150による一致判定処理の精度をさらに高めることができる。また、上述した閾値変更処理により、動画の画質と閾値との関係を予め求めておき、検索対象として入力された動画の画質に応じて閾値を変更するようにしてもよい。
次に、連続するフレーム間のカラーヒストグラムの変化量が瞬間的には大きくならないものの、複数のフレーム間のカラーヒストグラムの変化量が比較的大きい位置をチェンジ点として抽出する例について説明する。
上述したように、特徴量抽出部200は、連続するフレーム間のカラーヒストグラムの変化量が瞬間的に大きくなるカットチェンジ点を抽出する。しかしながら、複数のフレーム間のカラーヒストグラムの変化量が比較的大きい位置についても、チェンジ点として抽出することができれば、さらに検索精度を向上させることができると考えられる。
図18は、動画の特徴に基づいて動画を分類する場合を示す図である。ここでは、動画の特徴として、動画を構成するフレーム間のカラーヒストグラムの変化量を用いてチェンジ点を抽出し、このチェンジ点の有無により動画を分類する例について説明する。
例えば、時間軸情報501として、カットの変わり目が存在するか否かに基づいて動画を分類することができる。カットの変わり目とは、例えば、動画において撮影場面が変化する場合におけるその境界点を示すものである。また、カットの変わり目が存在する場合においては、画面情報502として、連続する2フレーム間で瞬間的に切り替わる点を示すカットチェンジ点と、所定数のフレーム間に亘って比較的短い時間で切り替わる点を示すクロスフェード点とに分類することができる。これは、フレーム間のカラーヒストグラムの変化量503が、瞬間的に大きくなるか、瞬間的に大きくはないものの比較的短い時間で大きくなるかに応じて分類することができる。
また、カットの変わり目が存在しない場合においては、画面情報502として、画面内の被写体の動き(画面内の動き)に基づいて、動画を分類することができる。画面内の動きとして、例えば、「被写体の速い動き」、「被写体の遅い動き」、「静止した被写体」の3つに分類することができる。そして、このような画面内の動きは、チェンジ点の場合と同様に、フレーム間のカラーヒストグラムの変化量503を用いて、分類することができる。すなわち、所定数のフレーム間におけるカラーヒストグラムの変化量が比較的大きい場合には、「被写体の速い動き」に分類し、所定数のフレーム間におけるカラーヒストグラムの変化量が比較的小さい場合には、「被写体の遅い動き」に分類し、所定数のフレーム間におけるカラーヒストグラムの変化量がほとんどない場合には、「静止した被写体」に分類することができる。このように分類する場合において、所定数のフレーム間におけるカラーヒストグラムの変化量が比較的大きく「被写体の速い動き」に分類される場合には、クロスフェード点と同様に、チェンジ点に含めて分類することができる。
図18に示すように、「カットチェンジ点」と「クロスフェード点」と「被写体の速い動き」との少なくとも1つを含む動画をチェンジ点ありの動画に分類する。一方、「カットチェンジ点」と「クロスフェード点」と「被写体の速い動き」との何れも含まず、「被写体の遅い動き」または「静止した被写体」を含む動画をチェンジ点なしの動画に分類することができる。そこで、「クロスフェード点」と「被写体の速い動き」とを含めたチェンジ点を用いて動画一致検索処理を行う場合について説明する。
図19は、特徴量抽出部202の機能構成例を示すブロック図である。特徴量抽出部202は、図2に示す特徴量抽出部200において、チェンジ点間隔算出部250の代わりに、チェンジ点間隔算出部251を設けるとともに、Nフレーム間ヒストグラム差分算出部260と、閾値保持部270と、Nフレームチェンジ点判別部280とをさらに設けたものである。なお、チェンジ点間隔算出部251、Nフレーム間ヒストグラム差分算出部260、閾値保持部270およびNフレームチェンジ点判別部280以外の構成は、図2に示す特徴量抽出部200と同様であるため、これら以外の構成についての説明は省略する。
図20は、動画を構成する各フレームを時系列に並べられた場合を概念的に示す図である。なお、図20については、図19を参照して詳細に説明する。
Nフレーム間ヒストグラム差分算出部260は、カラーヒストグラム抽出部210から出力されたフレーム毎のY、CbおよびCrのカラーヒストグラムについて、連続するNフレームにおける最初のフレームおよび最後のフレーム間におけるカラーヒストグラムの面積の差分値を算出するものであり、算出されたヒストグラム差分値をNフレームチェンジ点判別部280に出力するものである。
閾値保持部270は、連続するNフレーム間がチェンジ点であるか否かをNフレームチェンジ点判別部280が判別する場合に用いられる閾値を保持するものであり、保持されている閾値をNフレームチェンジ点判別部280に出力する。
Nフレームチェンジ点判別部280は、Nフレーム間ヒストグラム差分算出部260から出力されたヒストグラム差分値が、閾値保持部270に保持されている閾値を超えたか否かに基づいて、連続するNフレーム間がチェンジ点であるか否かを判別するものである。すなわち、Nフレームチェンジ点判別部280は、Nフレーム間ヒストグラム差分算出部260から出力されたヒストグラム差分値が、閾値保持部270に保持されている閾値を超えた場合には、そのヒストグラム差分値に対応する連続するNフレーム間がチェンジ点であると判別して、そのフレーム間に対応する時刻をカットチェンジ点の時刻として、チェンジ点間隔算出部251に出力する。一方、Nフレームチェンジ点判別部280は、Nフレーム間ヒストグラム差分算出部260から出力されたヒストグラム差分値が、閾値保持部270に保持されている閾値を超えていない場合には、そのヒストグラム差分値に対応する連続するNフレーム間がチェンジ点ではないと判別する。このようにチェンジ点ではないと判別された場合には、チェンジ点間隔算出部251には時刻が出力されない。
図20には、撮像装置により撮影された動画340を構成するフレーム341乃至350を概略的に示す。フレーム341乃至350は、1つの動画340に含まれるフレームであり、フレーム341乃至345とフレーム346乃至350とが連続するフレームであるものとする。また、フレーム341およびフレーム346と、フレーム342およびフレーム347と、フレーム343およびフレーム348と、フレーム344およびフレーム349と、フレーム345およびフレーム350とは、連続するNフレームにおける最初のフレームおよび最後のフレームであるものとする。例えば、30fps(フレーム/秒)を想定して1秒間に相当するN=30とすることができる。
ここで、例えば、フレーム342およびフレーム347と、フレーム343およびフレーム348と、フレーム344およびフレーム349との各フレーム間におけるヒストグラム差分値が、閾値保持部270に保持されている閾値を超えて、これらの連続するNフレーム間がチェンジ点として判別されるための条件を満たすものとする。図20では、チェンジ点であると判別された連続するNフレームのうちの最後のフレームを斜線で示す。このように、チェンジ点として判別されるための条件を満たす点が連続する場合には、この連続する各フレーム間のうちの最初のフレーム間に対応する点のみをチェンジ点としてNフレームチェンジ点判別部280が検出する。すなわち、チェンジ点として判別されるための条件を満たすフレーム342およびフレーム347と、フレーム343およびフレーム348と、フレーム344およびフレーム349とのうちで、最初のフレーム間であるフレーム342およびフレーム347がチェンジ点として判別される。
チェンジ点間隔算出部251は、カットチェンジ点判別部240およびNフレームチェンジ点判別部280から出力されたチェンジ点(以下では、カットチェンジ点およびチェンジ点を含むものとする)の時刻に基づいて、隣接する2つのチェンジ点間の時間間隔を算出するものであり、算出されたチェンジ点の間隔をデータベース140および特徴量照合部150に出力する。すなわち、チェンジ点間隔算出部251は、カットチェンジ点判別部240およびNフレームチェンジ点判別部280からチェンジ点の時刻が出力された場合には、この時刻と、この時刻の直前に出力された時刻との差の値を算出して、隣接する2つのチェンジ点間の時間間隔を算出する。なお、隣接する2つのチェンジ点間の間隔として、このチェンジ点間に含まれるフレームの数を算出し、この算出されたフレーム数をチェンジ点の間隔とするようにしてもよい。
次に、特徴量照合部150により判定された判定結果に基づいて、カットチェンジ点判別部240およびNフレームチェンジ点判別部280が用いる閾値を変更する例について説明する。ここでは、図11乃至図17に示す情報処理装置101の閾値保持部の閾値を更新する場合における変形例を示す。図11乃至図17に示した構成のうちで、異なる部分について説明し、同じ部分についての説明を省略する。
図21は、図11に示す情報処理装置101の一部を変形した情報処理装置102の構成例を示すブロック図である。情報処理装置102は、図11に示す情報処理装置101において、データベース141、特徴量照合部150、特徴量抽出部201、特徴量保持部710、チェンジ点比較部720および閾値更新部730の代わりに、データベース142、特徴量照合部151、特徴量抽出部203、特徴量保持部711、チェンジ点比較部721および閾値更新部731を設けた情報処理装置である。なお、これら以外の構成は、図11に示す情報処理装置101と同様であるため、これら以外の構成についての説明は省略する。
特徴量抽出部203は、ビデオデコード部130から出力されたベースバンドデータに基づいて、動画を構成する連続する2フレーム間のヒストグラム差分値およびカットチェンジ点の間隔と、動画を構成する連続するNフレーム間のヒストグラム差分値およびチェンジ点の間隔とを抽出するものであり、抽出されたカットチェンジ点の間隔およびチェンジ点の間隔を特徴量照合部151に出力するとともに、抽出された各ヒストグラム差分値と、カットチェンジ点の間隔と、チェンジ点の間隔とをデータベース142および特徴量保持部711に出力する。なお、特徴量抽出部203については、図22を参照して詳細に説明する。
データベース142は、特徴量抽出部203から出力された各ヒストグラム差分値と、カットチェンジ点の間隔と、チェンジ点の間隔とに対応する特徴量リストを動画毎に格納するデータベースであり、格納されている特徴量リストを動画毎に特徴量照合部151に出力する。なお、特徴量リストについては、図23等を参照して詳細に説明する。
特徴量照合部151は、特徴量抽出部201から出力されたカットチェンジ点およびチェンジ点の間隔と、データベース142に格納されている各特徴量リストとを比較し、この比較結果に基づいて、動画入力部110に入力された動画と、データベース142に格納されている特徴量リストに対応する動画とが一致するか否かを判定するものであり、この判定結果を示す一致リストを判定結果出力部160に出力する。すなわち、特徴量照合部151は、動画入力部110に入力された動画と一致する動画に対応する特徴量リストを、データベース142に格納されている特徴量リストの中から検索する。
特徴量保持部711は、特徴量抽出部203から出力されたヒストグラム差分値、カットチェンジ点およびチェンジ点間隔に基づいて、ヒストグラム差分値、カットチェンジ点およびチェンジ点間隔を時系列に並べたリストである特徴量リストを作成して保持するものであり、保持されている特徴量リストをチェンジ点比較部721に出力する。
チェンジ点比較部721は、特徴量照合部151から出力された一致リストに含まれる特徴量リストをデータベース142から取得して、この取得された特徴量リストと、特徴量保持部711から出力された特徴量リストとについて、互いに一致していないチェンジ点を検出して、この検出されたチェンジ点における連続する2フレーム間のヒストグラム差分値を比較するとともに、連続するNフレーム間のヒストグラム差分値を比較するものである。すなわち、チェンジ点比較部721は、2つの特徴量リストにおいて互いに一致していないチェンジ点における連続する2フレーム間のヒストグラム差分値を比較した結果に基づいて、カットチェンジ点判別部240が判定に用いる閾値を算出する。また、チェンジ点比較部721は、2つの特徴量リストにおいて互いに一致していないチェンジ点における連続するNフレーム間のヒストグラム差分値を比較した結果に基づいて、Nフレームチェンジ点判別部280が判定に用いる閾値を算出する。そして、算出された各閾値を閾値更新部731に出力する。
閾値更新部731は、チェンジ点比較部721から出力された閾値に基づいて、特徴量抽出部203がカットチェンジ点またはチェンジ点を抽出する場合に用いられる閾値を更新するものである。なお、連続する2フレーム間のヒストグラム差分値に対応する閾値と、連続するNフレーム間のヒストグラム差分値に対応する閾値との更新については、図14、図15等を参照して説明した更新方法と同様である。
図22は、特徴量抽出部203の機能構成例を示すブロック図である。特徴量抽出部203は、図19に示す特徴量抽出部202において、閾値保持部230および閾値保持部270の代わりに、閾値保持部231および閾値保持部271を設けるとともに、連続フレーム間ヒストグラム差分算出部220およびNフレーム間ヒストグラム差分算出部260から出力されたヒストグラム差分値をデータベース142および特徴量保持部711に出力し、チェンジ点間隔算出部251から出力されたチェンジ点の間隔をデータベース142、特徴量照合部151および特徴量保持部711に出力するものである。なお、閾値保持部231および閾値保持部271以外の構成は、図19に示す特徴量抽出部202と同様であるため、閾値保持部231および閾値保持部271以外の構成についての説明は省略する。
閾値保持部231は、連続する2フレーム間がカットチェンジ点であるか否かをカットチェンジ点判別部240が判別する場合に用いられる閾値を保持するものであり、保持されている閾値を閾値更新部731からの更新情報に基づいて更新する。また、閾値保持部231は、保持されている閾値をカットチェンジ点判別部240に出力する。
閾値保持部271は、連続するNフレーム間がチェンジ点であるか否かをNフレームチェンジ点判別部280が判別する場合に用いられる閾値を保持するものであり、保持されている閾値を閾値更新部731からの更新情報に基づいて更新する。また、閾値保持部271は、保持されている閾値をNフレームチェンジ点判別部280に出力する。
次に、特徴量抽出部203から出力されたヒストグラム差分値およびチェンジ点に基づいて作成される特徴量リストについて、図面を参照して詳細に説明する。
図23は、データベース142に格納されている特徴量リストの概略を示す図である。データベース142には、1または複数の特徴量リストが格納されている。例えば、データベース142には、特徴量リスト470、476、477が格納されている。なお、データベース142に格納される特徴量リストは、特徴量抽出部203から出力されたヒストグラム差分値およびチェンジ点により作成される特徴量リストを順次格納するようにしてもよく、他の情報処理装置において作成された特徴量リストを格納するようにしてもよい。
特徴量リスト470には、カットチェンジ点間隔473と、連続フレームヒストグラム差分値474と、Nフレーム間ヒストグラム差分値475とが時系列に関連付けて記録されている。これらは、対応する動画を識別するためのコンテンツID(例えば、「#323」)に関連付けられている。また、図23においては、対応する動画において抽出されたカットチェンジ点間隔の識別番号としてノードID472を付して説明する。カットチェンジ点間隔473および連続フレームヒストグラム差分値474は、図13に示すカットチェンジ点間隔463および連続フレームヒストグラム差分値464と同様であるため、ここでの説明を省略する。
Nフレーム間ヒストグラム差分値475は、特徴量抽出部203のNフレーム間ヒストグラム差分算出部260から出力されたヒストグラム差分値を示すものであり、フレーム毎に時刻の早い順序で記録される。ここで、カットチェンジ点間隔473は、連続フレーム間ヒストグラム差分算出部220またはNフレーム間ヒストグラム差分算出部260により算出されたヒストグラム差分値のうちで、対応する閾値保持部231または271に保持されている閾値を超えたヒストグラム差分値に対応するフレーム間について記録される。これに対して、Nフレーム間ヒストグラム差分値475は、連続フレーム間ヒストグラム差分算出部220またはNフレーム間ヒストグラム差分算出部260により算出されたヒストグラム差分値の全ての値が記録される。
また、Nフレームチェンジ点判別部280が判定に用いる閾値の更新については、図15、図16等を参照して説明した更新方法と同様に、Nフレーム間ヒストグラム差分値475を用いて行われる。
次に、チェンジ点間隔を抽出することができない動画について動画一致検索を行う場合について図面を参照して詳細に説明する
図18に示すように、動画については、チェンジ点を含む動画とチェンジ点を含まない動画とに分類することができる。ここで、上述した動画の一致判定処理を行う場合には、チェンジ点間隔を用いるため、比較対象の動画には少なくとも2つのチェンジ点が含まれる必要がある。しかしながら、被写体の動きが遅い場面が撮影された動画等については、図18に示すように、チェンジ点を含まない場合も考えられる。そこで、チェンジ点間隔の有無に応じて一致判定処理を変更して行うようにする。すなわち、チェンジ点間隔を抽出することができない動画については、チェンジ点間隔以外の特徴量を用いて、動画一致検索を行う。
図24は、図1に示す情報処理装置100の一部を変形した情報処理装置103の構成例を示すブロック図である。情報処理装置103は、図1に示す情報処理装置100において、データベース140、特徴量照合部150および特徴量抽出部200の代わりに、データベース143、特徴量照合部152および特徴量抽出部204を設けた情報処理装置である。なお、データベース143、特徴量照合部152および特徴量抽出部204以外の構成は、図1に示す情報処理装置100と同様であるため、これらの以外の構成についての説明は省略する。
特徴量抽出部204は、ビデオデコード部130から出力されたベースバンドデータに基づいてチェンジ点の間隔、および、チェンジ点間における代表ヒストグラムを抽出するものであり、抽出されたチェンジ点の間隔および代表ヒストグラムをデータベース143および特徴量照合部152に出力する。なお、特徴量抽出部204については、図25を参照して詳細に説明する。
データベース143は、特徴量抽出部204から出力されたチェンジ点間隔および代表ヒストグラムに対応する特徴量リストを動画毎に格納するデータベースであり、格納されている特徴量リストを動画毎に特徴量照合部152に出力する。
特徴量照合部152は、特徴量抽出部204から出力されたチェンジ点間隔または代表ヒストグラムと、データベース143に格納されている各特徴量リストとを比較し、この比較結果に基づいて、動画入力部110に入力された動画と、データベース143に格納されている特徴量リストに対応する動画とが一致するか否かを判定するものであり、この判定結果を示す一致リストを判定結果出力部160に出力する。すなわち、特徴量照合部152は、動画入力部110に入力された動画と一致する動画に対応する特徴量リストを、データベース143に格納されている特徴量リストの中から検索する。なお、特徴量照合部152については、図26を参照して詳細に説明する。
図25は、特徴量抽出部204の機能構成例を示すブロック図である。特徴量抽出部204は、図19に示す特徴量抽出部202において、代表ヒストグラムサンプリング部290をさらに設けたものである。なお、代表ヒストグラムサンプリング部290以外の構成は、図19に示す特徴量抽出部202と同様であるため、代表ヒストグラムサンプリング部290以外の構成についての説明は省略する。
代表ヒストグラムサンプリング部290は、カットチェンジ点判別部240およびNフレームチェンジ点判別部280から出力されたチェンジ点の時刻に基づいて、隣接する2つのチェンジ点間に含まれるフレームから少なくとも1つのフレームをサンプリングして、このサンプリングされたフレームに対応してカラーヒストグラム抽出部210から出力されたヒストグラムを選択するものであり、選択されたヒストグラムを代表ヒストグラムとしてデータベース143および特徴量照合部152に出力する。すなわち、代表ヒストグラムサンプリング部290は、同一カット内における代表ヒストグラムをサンプリングする。なお、動画入力部110に入力された1つの動画について、カットチェンジ点判別部240またはNフレームチェンジ点判別部280からチェンジ点の時刻が1つも出力されない場合には、代表ヒストグラムサンプリング部290は、この入力された1つの動画を構成するフレームから少なくとも1つのフレームをサンプリングして、この選択されたフレームに対応してカラーヒストグラム抽出部210から出力されたヒストグラムを代表ヒストグラムとして出力する。
図26は、特徴量照合部152の機能構成例を示すブロック図である。特徴量照合部152は、照合方法決定部153と、チェンジ点間隔照合部154と、カラーヒストグラム照合部155とを備える。
図27は、照合方法決定部153が照合方法を決定する場合における決定方法の概略を示す図である。本発明の実施の形態では、特徴量抽出部204から出力されたチェンジ点間隔および代表ヒストグラムに対応する特徴量リストと、データベース143に格納されている各特徴量リストとにチェンジ点間隔が存在するか否かに基づいて、照合方法が決定される。具体的には、図27に示すように、特徴量抽出部204から出力されたチェンジ点間隔および代表ヒストグラムに対応する特徴量リストにチェンジ点間隔が存在するとともに(入力動画のチェンジ点間隔511が「有」の場合)、データベース143に格納されている特徴量リストにチェンジ点間隔が存在する場合(DB動画のチェンジ点間隔512が「有」の場合)には、照合方法としてチェンジ点間隔を用いた照合方法が決定される。一方、特徴量抽出部204から出力されたチェンジ点間隔および代表ヒストグラムに対応する特徴量リストにチェンジ点間隔が存在しない場合(入力動画のチェンジ点間隔511が「無」の場合)、または、データベース143に格納されている特徴量リストにチェンジ点間隔が存在しない場合(DB動画のチェンジ点間隔512が「無」の場合)には、照合方法としてカラーヒストグラムを用いた照合方法が決定される。
照合方法決定部153は、特徴量抽出部204から出力されたチェンジ点間隔および代表ヒストグラムに対応する特徴量リストと、データベース143に格納されている各特徴量リストとに基づいて、これらのリストにチェンジ点間隔が含まれているか否かに応じて、図27に示すように、照合方法を決定するものであり、決定された照合方法に応じて、チェンジ点間隔照合部154またはカラーヒストグラム照合部155に照合指示信号を出力する。すなわち、照合方法決定部153は、照合方法としてチェンジ点間隔を用いた照合方法が決定された場合には、チェンジ点間隔照合部154に照合指示信号を出力し、照合方法としてカラーヒストグラムを用いた照合方法が決定された場合には、カラーヒストグラム照合部155に照合指示信号を出力する。
チェンジ点間隔照合部154は、照合方法決定部153からの照合指示信号を入力すると、特徴量抽出部204から出力されたチェンジ点間隔と、データベース143に格納されている特徴量リストに含まれるチェンジ点間隔とを比較し、この比較結果に基づいて、動画入力部110に入力された動画と、データベース143に格納されている特徴量リストに対応する動画とが一致するか否かを判定するものであり、この判定結果を示す一致リストを判定結果出力部160に出力する。すなわち、上述した特徴量照合部150と同様に、動画入力部110に入力された動画と一致する動画に対応する特徴量リストを、データベース143に格納されている特徴量リストの中から検索する。
カラーヒストグラム照合部155は、照合方法決定部153からの照合指示信号を入力すると、特徴量抽出部204から出力された代表ヒストグラムと、データベース143に格納されている特徴量リストに含まれる代表ヒストグラムとを比較し、この比較結果に基づいて、動画入力部110に入力された動画と、データベース143に格納されている特徴量リストに対応する動画とが一致するか否かを判定するものであり、この判定結果を示す一致リストを判定結果出力部160に出力する。すなわち、カラーヒストグラム照合部155は、照合方法決定部153からの照合指示信号を入力すると、特徴量抽出部204から出力されたチェンジ点間隔および代表ヒストグラムに対応する特徴量リストに含まれる代表ヒストグラムと、データベース143に格納されている特徴量リストに含まれる代表ヒストグラムとを比較してヒストグラム差分値を算出し、この算出されたヒストグラム差分値が閾値以下となった場合に、動画入力部110に入力された動画と、データベース143に格納されている特徴量リストに対応する動画とが一致すると判別する。
このように、チェンジ点が抽出された動画およびチェンジ点が抽出されなかった動画の双方について動画一致検索を行うことができる。
例えば、映画、テレビ番組等のように編集された動画コンテンツについては、チェンジ点があると想定される。この場合には、チェンジ点間隔を用いて動画一致検索を迅速に行うことができる。また、入力動画の代表ヒストグラムとデータベースに格納されている代表ヒストグラムとを照合するカラーヒストグラム照合は、動画一致検索以外にも、動画類似検索を行うことが可能である。なお、チェンジ点が存在しない動画コンテンツについては、カラーヒストグラムの変化量が小さいか、カラーヒストグラムの変化がない動画であるため、カラーヒストグラムをサンプリングすべき画像を少なくすることができる。このため、情報量を削減することができる。
次に、本発明の実施の形態における情報処理装置を用いた情報処理システムについて図面を参照して詳細に説明する。
図28は、本発明の実施の形態における情報処理システム800を示すシステム構成図である。情報処理システム800は、1または複数のコンテンツ提供会社(映画会社やテレビ局等)に設置されている情報処理装置と、各コンテンツを閲覧または提供するユーザ端末(パーソナルコンピュータやテレビジョン等)とが、動画共有サイトに接続されている情報処理システムである。この例では、コンテンツ提供会社を、映画会社820および830、テレビ局840とし、ユーザ端末をPC(パーソナルコンピュータ)850とした場合に、映画会社820および830、テレビ局840に設置されている情報処理装置821、831および841と、PC850とが、動画共有サイト810の情報処理装置811に接続されている場合について説明する。なお、情報処理装置811、821、831および841、PC850のそれぞれは、インターネット等の通信網であるネットワーク860を介して接続され、各種情報のやりとりを行うことができる。
情報処理装置811、821、831および841は、本発明の実施の形態における情報処理装置と同様の構成を備えるとともに、動画を管理する動画データベース812、822、832および842を備える。また、情報処理装置821、831および841とPC850とは、何らかの条件の下で、動画共有サイト810に動画をアップロードすることができる。ここで、動画をアップロードするための条件として、例えば、5分以下の動画または低解像度の動画等のように様々な条件を設定することができる。また、PC850のユーザ851は、PC850を用いて、動画共有サイト810にアップロードされている比較的短い動画や低解像度の動画を自由に見ることができる。そして、動画共有サイト810にアップロードされている動画の全編または高画質のバージョンを見たい場合には、その動画をアップロードしたコンテンツ提供会社からその動画の全編または高画質のバージョンを購入等して見ることができる。
ここで、情報処理システム800における動画検索方法について説明する。最初に、ユーザ851が、PC850を用いて、動画共有サイト810にアップロードされている比較的短い動画や低解像度の動画を見る。そして、ユーザ851が、アップロードされている動画の全編または高画質のバージョンを見たい場合には、PC850を用いて、動画共有サイト810に検索指示を通知する。
PC850から検索指示通知を受けた情報処理装置811は、この検索指示に係る動画のチェンジ点間隔を抽出して特徴量リストを作成し、この特徴量リストを情報処理装置821、831および841に送信する。そして、この特徴量リストを受信した情報処理装置821、831および841は、受信された特徴量リストに含まれるチェンジ点間隔と、内蔵データベースに格納されているチェンジ点間隔とを照合し、一致する動画を検索する。そして、情報処理装置821、831および841は、検索結果を情報処理装置811に送信する。検索結果を受信した情報処理装置811は、受信された検索結果を集計し、集計された検索結果をPC850に送信する。この検索結果を受け取ったユーザ851は、検索結果を見て、全編または高画質のバージョンを見たい動画を所有するコンテンツ提供会社に、PC850を用いてアクセスし、その動画を購買するか否か決定することができる。この例では、動画の検索がコンテンツ提供会社において行われる例について説明したが、アップロードされた動画に対応する特徴量リストを情報処理装置811が保持して、動画の検索を動画共有サイト810において行うようにしてもよい。
また、情報処理システム800においては、上述したように、ユーザ851が、PC850を用いて、比較的短い動画や低解像度の動画を動画共有サイト810にアップロードすることができる。また、ユーザ851により動画共有サイト810にアップロードされた動画を、他のユーザがユーザ端末等から自由に見ることができる。しかしながら、ユーザ851により動画共有サイト810にアップロードされた動画が、他人の著作権に係る動画である可能性も考えられる。このように、他人の著作権に係る動画が動画共有サイト810にアップロードされた場合には、著作権侵害を阻止するため、動画共有サイトにおいて適切にフィルタリングすることが重要である。
そこで、例えば、特徴量リストを格納する情報処理装置811のデータベースに、コンテンツ毎に、著作権に係る動画であるか否かを示すNGタグを関連付けて格納し、このNGタグに基づいて、アップロードされた動画が著作権に係る動画であるか否かを判断して、フィルタリングすることができる。
ここで、動画共有サイトには、音声が加工されている動画がアップロードされることも考えられる。しかしながら、本発明の実施の形態における動画一致検索では、音声に関する特徴量を使用しないため、音声がない動画や音声が編集されている動画についても、適切に動画検索を行うことができる。また、動画共有サイトには、編集された動画がアップロードされることも考えられる。しかしながら、本発明の実施の形態における動画一致検索では、カットチェンジ点間隔が一部分一致していれば、同一動画であると判定することができるため、検索対象の動画が、ある動画の一部分である場合でも、適切に検索を行うことができる。同様に、検索対象の動画が、複数の動画を繋ぎ合わせた動画であっても、適切に検索を行うことができる。これらにより、著作権を侵害する可能性のある動画を適切に迅速にフィルタリングすることが可能である。
また、著作権に係る動画以外の動画についても、動画の公開を許可する否かの判断にNGタグを用いることができる。
さらに、動画コンテンツの類似映像を排除する場合、動画共有サイトの管理者に対して、同一動画や類似動画を検出または提示することによって、保存する必要のない動画コンテンツを排除する場合等に本発明の実施の形態を適用することができる。
以上で示したように、本発明の実施の形態における動画一致検索では、音声がない動画、音声が編集されている動画、編集されている動画等についても、適切に動画検索を行うことができる。また、特徴量として、カットチェンジ点間隔のみを用いて動画一致検索をすることができるため、動画一致検索をするためのデータベース量を節約することができる。さらに、チェンジ点間隔を用いて動画一致検索を行うため、ビットレートや画枠が異なる動画についても適切な検索を行うことができる。すなわち、本発明の実施の形態によれば、動画の検索のために保持すべき情報量を削減することができるとともに、適切な動画の検索を迅速に行うことができる。
また、本発明の実施の形態では、情報処理装置に入力される動画について一致検索をする場合について説明したが、例えば、インターネット上に流通する動画コンテンツの検索、コンテンツホルダ内(映画会社、テレビ局、CMコンテンツホルダ)での一致検索、テレビ番組等をユーザが携帯電話でキャプチャしてサーバ側に送信し、同一のコンテンツを紹介または配信するシステム、動画コンテンツの分類、動画共有サイトでの動画コンテンツ分類等に本発明の実施の形態を適用することができる。
なお、本発明の実施の形態では、情報処理装置を例にして説明したが、動画を検索することができる携帯端末装置等の画像検索装置に本発明の実施の形態を適用することができる。
また、本発明の実施の形態では、特徴量抽出部と、特徴量照合部と、データベースとを同一の装置内に備える情報処理装置について説明したが、動画コンテンツから特徴量を抽出する特徴量抽出サーバと、動画コンテンツから抽出された特徴量を格納する特徴量データベースと、入力動画の特徴量と特徴量データベースの特徴量と照合し、この照合結果に基づいて入力動画の一致検索を行う特徴量照合サーバとにより構成される情報処理システムに本発明の実施の形態を適用することができる。
なお、本発明の実施の形態は本発明を具現化するための一例を示したものであり、特許請求の範囲における発明特定事項とそれぞれ対応関係を有するが、これに限定されるものではなく本発明の要旨を逸脱しない範囲において種々の変形を施すことができる。
なお、本発明の実施の形態において説明した処理手順は、これら一連の手順を有する方法として捉えてもよく、また、これら一連の手順をコンピュータに実行させるためのプログラム乃至そのプログラムを記憶する記録媒体として捉えてもよい。