(57)【特許請求の範囲】
【請求項１】
複数フレームからなる映像データ中における物体の領域の時系列的な変化を所定の参照物体領域から対象となる物体領域への変換を示す変換パラメータを用いて記述した物体領域データを用いて前記映像データを表示している画面において特定の物体が指定されたか否かを判定するための映像情報処理方法であって、
前記映像データを表示している画面において任意の位置が指定された際、特定の物体に関する前記物体領域データから前記変換パラメータを取得し、
前記変換パラメータを用いて、前記指定された任意の位置を、前記参照物体領域が存在するフレームにおける位置に逆変換し、
この逆変換により求められた位置が、前記参照物体領域の内部に存在するか否かを調べ、内部に存在すると判断された場合に前記物体が指定されたと判定することを特徴とする映像情報処理方法。
【請求項２】
前記物体が指定されたと判定された場合には、前記物体に関連付けられている関連情報を呈示することを特徴とする請求項１に記載の映像情報処理方法。
【請求項３】
複数フレームからなる映像データ中における物体の領域の時系列的な変化を所定の参照物体領域から対象となる物体領域への変換を示す変換パラメータを用いて記述した物体領域データを用いて前記映像データを表示している画面において特定の物体が指定されたか否かを判定するための映像情報処理装置であって、
前記映像データを表示している画面において任意の位置が指定された際、特定の物体に関する前記物体領域データから前記変換パラメータを取得する手段と、
前記変換パラメータを用いて、前記指定された任意の位置を、前記参照物体領域が存在するフレームにおける位置に逆変換する手段と、
この逆変換により求められた位置が、前記参照物体領域の内部に存在するか否かを調べ、内部に存在すると判断された場合に、前記物体に関連付けられている関連情報を呈示する手段と、を具備する映像情報処理装置。
【請求項４】
複数フレームからなる映像データ中における物体の領域の時系列的な変化に関する物体領域データを記述する物体領域情報生成装置であって、
前記複数フレームの中から少なくとも１つのフレームを特定し、特定された該１つのフレームの前記物体の領域を参照物体領域として特定する処理部と、
前記参照物体領域から対象となる物体領域への変換を示す変換パラメータを生成する処理部と、
前記変換パラメータの時系列的な変化を所定の近似関数で近似する処理部と、
前記所定の近似関数を特定する近似関数パラメータと、前記参照物体領域に関する情報とを用いて、前記物体領域データを記述する処理部とを具備する物体領域情報生成装置。
【請求項５】
複数フレームからなる映像データ中における物体の領域の時系列的な変化を所定の参照物体領域から対象となる物体領域への変換を示す変換パラメータを用いて記述した物体領域データを用いて、前記映像データを表示している画面において特定の物体が指定されたか否かを判定するための映像情報処理装置であって、
前記映像データを表示している画面において任意の位置が指定された際、特定の物体に関する前記物体領域データから前記変換パラメータを取得する処理部と、
前記変換パラメータを用いて、前記指定された任意の位置を、前記参照物体領域が存在するフレームにおける位置に逆変換する処理部と、
この逆変換により求められた位置が、前記参照物体領域の内部に存在するか否かを調べ、内部に存在すると判断された場合に前記物体が指定されたと判定する処理部とを具備することを特徴とする映像情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、映像中の物体の領域に関する情報を記述するための物体領域情報記述方法、映像中の物体の領域に関する情報を生成するための物体領域情報生成装置、並びに映像中の物体に対する利用制御あるいは映像中の物体の検索を行う情報処理装置及びそのための映像情報処理方法に関する。
【０００２】
【従来の技術】
映像中の物体領域を記述する方法として、従来はＭＰＥＧ−４のオブジェクトコーディングが知られている。このＭＰＥＧ−４のオブジェクトコーディングはフレーム毎にオブジェクト領域をビットマップとして表現し、さらに、フレーム内およびフレーム間で情報圧縮を行ない、形状およびテクスチャーは別々にコーディングされる。
【０００３】
しかし、このオブジェクトコーディングでは、任意形状でかつテクスチャーをもった物体領域をコンパクトに表現することを目的としているため、コーディングされたオブジェクトは、フレーム間圧縮されており、フレーム毎に物体領域の情報を取り出すことが困難であった。また、映像中の領域の位置情報のみを表現したい場合には、オーバースペックでありＣｏｄｅｃに処理時間がかかるという問題があった。
【０００４】
【発明が解決しようとする課題】
上述のようにＭＰＥＧ−４のＣｏｄｅｃを用いると、不必要な情報をコーディングするため、無駄が多いばかりでなく、フレーム間圧縮を行っているため、フレーム毎の情報を取り出すことが困難であるという問題があった。
【０００５】
本発明は上述した事情に対処すべくなされたもので、その目的は映像中の所望の物体の領域を少ないデータ量で記述でき且つその作成やそのデータの扱いも容易にする物体領域情報記述方法及び物体領域情報生成装置を提供することを目的とする。
【０００６】
また、本発明は、ユーザによる映像データ中の物体の指示の判定を容易にする物体領域情報記述方法及び物体領域情報生成装置並びに映像情報処理方法及び情報処理装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記した課題を解決し目的を達成するために、本発明は以下に示す手段を用いている。
【０００８】
本発明の一態様によれば、複数フレームからなる映像データ中における物体の領域の時系列的な変化を所定の参照物体領域から対象となる物体領域への変換を示す変換パラメータを用いて記述した物体領域データを用いて前記映像データを表示している画面において特定の物体が指定されたか否かを判定するための映像情報処理方法であって、前記映像データを表示している画面において任意の位置が指定された際、特定の物体に関する前記物体領域データから前記変換パラメータを取得し、前記変換パラメータを用いて、前記の位置を、前記参照物体領域が存在するフレームにおける位置に逆変換し、この逆変換により求められた位置が、前記参照物体領域の内部に存在するか否かを調べ、内部に存在すると判断された場合に前記物体が指定されたと判定することを特徴とする映像情報処理方法が提供される。
【０００９】
本発明の他の態様によれば、複数フレームからなる映像データ中における物体の領域の時系列的な変化を所定の参照物体領域から対象となる物体領域への変換を示す変換パラメータを用いて記述した物体領域データを用いて前記映像データを表示している画面において特定の物体が指定されたか否かを判定するための映像情報処理装置であって、前記映像データを表示している画面において任意の位置が指定された際、特定の物体に関する前記物体領域データから前記変換パラメータを取得する手段と、前記変換パラメータを用いて、前記指定された任意の位置を、前記参照物体領域が存在するフレームにおける位置に逆変換する手段と、この逆変換により求められた位置が、前記参照物体領域の内部に存在するか否かを調べ、内部に存在すると判断された場合に、前記物体に関連付けられている関連情報を呈示する手段と、を具備する映像情報処理装置が提供される。
【００１０】
本発明の他の態様によれば、複数フレームからなる映像データ中における物体の領域の時系列的な変化に関する物体領域データを記述する物体領域情報生成装置であって、前記複数フレームの中から少なくとも１つのフレームを特定し、特定された該１つのフレームの前記物体の領域を参照物体領域として特定する処理部と、前記参照物体領域から対象となる物体領域への変換を示す変換パラメータを生成する処理部と、前記変換パラメータの時系列的な変化を所定の近似関数で近似する処理部と、前記所定の近似関数を特定する近似関数パラメータと、前記参照物体領域に関する情報とを用いて、前記物体領域データを記述する処理部とを具備する物体領域情報生成装置が提供される。
【００１１】
本発明の他の態様によれば、複数フレームからなる映像データ中における物体の領域の時系列的な変化を所定の参照物体領域から対象となる物体領域への変換を示す変換パラメータを用いて記述した物体領域データを用いて、前記映像データを表示している画面において特定の物体が指定されたか否かを判定するための映像情報処理装置であって、前記映像データを表示している画面において任意の位置が指定された際、特定の物体に関する前記物体領域データから前記変換パラメータを取得する処理部と、前記変換パラメータを用いて、前記指定された任意の位置を、前記参照物体領域が存在するフレームにおける位置に逆変換する処理部と、この逆変換により求められた位置が、前記参照物体領域の内部に存在するか否かを調べ、内部に存在すると判断された場合に前記物体が指定されたと判定する処理部とを具備することを特徴とする映像情報処理装置が提供される。
【００３１】
本発明では、例えば、連続または断続にフレーム中に存在する領域と表現したい物体の領域情報をフレーム毎に、近似図形またはビットマップで記述し、物体領域の存在する区間において、少なくともひとつの参照となる物体領域を選択する。その参照物体領域から他の物体領域への変換パラメータを計算し、変換パラメータを連続するフレーム順に並べて、変換パラメータの軌跡を描く。あるいは、さらに、この軌跡を、近似関数を用いて少ない情報量で表現を行う。この方法によって、時空間情報を持った物体領域は、例えば、参照物体領域と変換パラメータの軌跡を近似した関数と物体領域の存在した区間の情報で表現される。また、例えば、任意のフレームの物体領域の情報を取り出すためには、近似関数から変換パラメータを求め、参照物体領域から、その変換パラメータを用いて物体領域を変形され予測物体領域を求め、その領域を求める物体領域とする。
また、例えば、マウスポインタで指定された位置が時空間物体領域の中か外にあるか判定するには、求められた変換パラメータを用いて逆変換を行いマウスポインタの位置情報を参照物体領域のあるフレームの座標に変換し、参照物体領域の内か外かを判定し、指定されたフレームの物体領域の中にあるかを判定する。このように、容易に物体領域の内外判定ができるため、操作性の良いハイパーメディアアプリケーションを実現できる。
【００３２】
このように、本発明によれば、映像中を移動し、形が変化する物体領域の形および位置情報を少ない容量で記述することができ、フレーム毎の物体領域の情報を高速に取り出すことができる。特に、ハイパーメディアアプリケーションのように、マウスポインターを用いて、映像中の物体を指定した場合、マウスポインターの位置が物体の領域の中に含まれているか含まれていないかを高速に判定し、インタラクティブ性の高い操作環境を提供することができる。また、物体領域の動き、大きさなどを容易に知ることができ、検索システムや監視するシステムなどのアプリケーションに利用できる。
【００３３】
【発明の実施の形態】
以下、図面を参照して本発明による物体領域情報記述方法及び物体領域情報生成装置並びに映像情報処理方法及び情報処理装置の実施形態を説明する。
【００３４】
第１実施形態
図１に、本発明の第１の実施形態に係る物体領域情報生成装置の構成例を示す。図１に示されるように、本物体領域情報生成装置は、映像データ記憶部２、物体領域処理部４、変換パラメータ算出部６、関数近似部８、物体領域データ記憶部１０を備えている。なお、本処理においてユーザの操作を介入させる形態を取る場合には、映像（動画像）データを例えばフレーム単位で表示させ、ユーザの指示入力等を受け付けるグラフィカルユーザインタフェース（ＧＵＩ）が用いられる（図１では省略している）。
【００３５】
物体（オブジェクト）領域は、映像中における一纏まりの領域部分であり、例えば、人、動物、植物、車、建物、道、川、太陽、雲など（あるいはその一部分、例えば人の頭、車のボンネット、建物の玄関など）、オブジェクトとして把握し得るものならどのようなものでも扱うことができる。
【００３６】
映像データ記憶部２は、映像データが記憶されているもので、例えばハードディスクや光ディスク、半導体メモリなどで構成される。なお、映像データ記憶部は他の処理部と同一サイトにある必要はなく、インターネット等を介して遠隔地に配置されていてもよい。
【００３７】
物体領域処理部４は、基準となるフレームの物体領域（参照物体領域）や対象となるフレームの物体領域（対象物体領域）を得るための処理を行う。
【００３８】
変換パラメータ算出部６は、参照物体領域をもとにして、対象物体領域の変換パラメータを算出する処理を行う。
【００３９】
関数近似部８は、物体領域の変換パラメータの各々について、その時系列的な軌跡を時間関数に近似する処理を行う。なお、後述するように、変換パラメータ自体を記述する場合には、この関数近似部８は不要となる。
【００４０】
物体領域データ記憶部１０は、変換パラメータの各々について、その時系列的な軌跡を近似した関数式を表現するデータを含む物体領域データを記憶する。
【００４１】
なお、本実施形態では、参照物体領域の更新処理を行うことが好ましいが、その部分は図１では省略している。
【００４２】
映像データ記憶部２および物体領域データ記憶部１０は、別々の記憶装置・記憶媒体によって構成されていてもよいが、それらの全部または一部が同一の記憶装置・記憶媒体によって構成されていてもよい。
【００４３】
また、本物体領域情報生成装置は、計算機上でソフトウェアを実行する形で実現することもできる。
【００４４】
図２に、本実施形態の物体領域情報生成装置の処理手順の一例を示す。
【００４５】
まず、ステップＳ１０１では、映像中の全てのフレームの物体領域（これは既知であるとする）を入力する処理を行う。例えば、ＧＵＩを介して入力する場合は、処理対象となる映像中の物体の輪郭をマウスやタッチパネル等のポインティングデバイスにより指定する。手動で入力された物体の輪郭内部を物体領域としてもよいし、また、入力された輪郭をＳｎａｋｅｓとよばれる動的輪郭モデル（例えばＭ．Ｋａｓｓ，  Ａ．Ｗｉｔｋｉｎ  ａｎｄ  Ｄ．Ｔｅｒｚｏｐｏｕｌｓ著、「Ｓｎａｋｅｓ：  Ａｃｔｉｖｅ  ｃｏｎｔｏｕｒ  ｍｏｄｅｌｓ」、Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  １ｓｔ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ，  ｐｐ．２５９−２６８，  １９８７年を参照）を用いた手法により画像中の物体の輪郭線にフィッティングさせ、フィッティング後の輪郭の内部を物体領域としても良い。なお、手動で入力する代わりに画像処理により自動的に求めてもよいまた、物体領域に関するデータが既に存在している場合は、そのデータを読込んでもよい。
【００４６】
この物体領域のうち、少なくとも一つを、参照物体領域として登録しておく。登録方法としては、物体の領域内には１を、領域外には０をそれぞれ対応させた２値のビットマップを作成し、記憶しておく方法がある。
【００４７】
また、参照物体領域の含まれるフレームを、参照フレームとして登録しておく。
【００４８】
次に、ステップＳ１０２では、参照物体領域から処理対象となっている１つのフレームにおける物体領域（以下、対象物体領域と呼ぶ）への変換パラメータを算出する処理を行う。
【００４９】
この処理は、例えば、対象物体領域内のオプティカルフロー算出処理とオプティカルフローからの変換パラメータ算出処理との２つの処理の組み合わせにより実現することができる。対象物体領域内のオプティカルフロー算出処理は、参照フレームから現フレームにかけての物体領域内の各画素（もしくは数画素からなるブロック）の動き（オプティカルフロー）を算出する処理である。
【００５０】
図３に、各フレームにおいて物体領域内のオプティカルフローを求める処理例の概要を示す。
【００５１】
図３において、２０１は参照フレーム、２０２は参照フレームの次のフレーム、そして２０３はフレーム２０２の次のフレームを表している。２０４，２０５，２０６はそれぞれのフレームにおける物体の領域である。２０７はフレーム２０１からフレーム２０２への物体領域のオプティカルフローである。また、２０８はフレーム２０１からフレーム２０３への物体領域のオプティカルフローである。
【００５２】
このようにオプティカルフローを求める方法は、参照物体領域と任意のフレームにおける物体領域を直接関係させることができるため、任意フレームの物体領域を算出したり、指定された座標が物体の内部か外部かを判定したりする処理が容易である。
【００５３】
図３の例では参照フレームから現フレームにかけての物体領域内の各画素（もしくは数画素からなるブロック）のオプティカルフローを求めたが、その代わりに、一つ前のフレームから現フレームにかけての物体領域内の各画素（もしくは数画素からなるブロック）のオプティカルフローを求めるようにしても良い。図４に、この場合の処理例の概要を示す。
【００５４】
図４において、３０１は参照フレーム、３０２は参照フレームの次のフレーム、そして３０３はフレーム３０２の次のフレームを表している。３０４，３０５，３０６はそれぞれのフレームにおける物体の領域である。３０７はフレーム３０１からフレーム３０２への物体領域のオプティカルフローである。また、３０８はフレーム３０２からフレーム３０３への物体領域のオプティカルフローである。
【００５５】
このようなオプティカルフローの算出方法は、図３の方法に比べてパラメータの変動が少なくなるが、任意フレームの物体領域の算出が面倒になる。図３と図４のどちらの方法を用いても構わないが、本実施形態では、図３の方法でオプティカルフローを算出するものとして説明を続ける。
【００５６】
なお、オプティカルフローを求める具体的な方法は多数提案されており（例えば、Ｊ．Ｌ．Ｂａｒｒｏｎ，  Ｄ．Ｊ．Ｆｌｅｅｔ  ａｎｄ  Ｓ．Ｓ．Ｂｅａｕｃｈｅｍｉｎ著、「Ｐｅｒｆｏｒｍａｎｃｅ  ｏｆ  Ｏｐｔｉｃａｌ  ＦｌｏｗＴｅｃｈｎｉｑｕｅｓ」、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｊｏｕｒｎａｌ  ｏｆ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ，  ｖｏｌ．１２，  ｎｏ．１，  ｐｐ．４３−７７，  １９９４年を参照）、どのような方法でも用いることが可能である。
【００５７】
また、参照物体領域内の特徴点を複数選択し、これら特徴点を中心とするブロックをテンプレートとするテンプレートマッチングにより求めた移動ベクトルをオプティカルフローの代わりに用いても良い。
【００５８】
次に、オプティカルフローから変換パラメータを算出する処理を行うが、求める変換パラメータは前提とする変換モデルにより異なる。
【００５９】
本実施形態では、
パラメータ数が１のモデルとして、「拡大縮小モデル」、「回転モデル」、
パラメータ数が２のモデルとして、「平行移動モデル」、
パラメータ数が４のモデルとして、「拡大縮小／回転／平行移動モデルの複合モデル」（ここでは４−ｐａｒａｍｅｔｅｒ変換モデルと呼ぶ）、
パラメータ数が６のモデルとして、「ａｆｆｉｎｅ変換モデル」、
パラメータ数が８のモデルとして、「射影変換モデル」、
パラメータ数が１２のモデルとして、「ｐａｒａｂｏｌｉｃ変換モデル」が選択できるものとする。
【００６０】
これらのモデルを数式で表したのが数式（１）から数式（７）である。
【００６１】
【数１】
0004031184.tif 000002
【００６２】
数式（１）は拡大縮小モデル、数式（２）は回転モデル、数式（３）は平行移動モデル、数式（４）は４−ｐａｒａｍｅｔｅｒ変換モデル、数式（５）はａｆｆｉｎｅ変換モデル、数式（６）は射影変換モデル、数式（７）はｐａｒａｂｏｌｉｃ変換モデルに相当する。数式中、参照物体領域中の座標を（ｘ，ｙ）、対象物体領域における物体の対応点の座標を（ｘ’，ｙ’）としている。各変換モデルでは、両フレームにおける対応点の関係が、それぞれの数式のようにａ0〜ａ11のパラメータを用いて表現できることを仮定している。もちろん、上述したモデル以外のパラメトリックなモデルを用意しても構わない。
【００６３】
変換パラメータの算出には、最小二乗法を用いることができる。これは、オプティカルフローにより求められた（ｘ，ｙ）と（ｘ’，ｙ’）との組み合わせを変換モデルの数式に代入した際に生じる誤差の２乗和を最小とするように変換パラメータを決定する方法である。これは古典的な方法で、行列演算で容易に実行することができる。
【００６４】
次に、ステップＳ１０３では、算出した物体領域の変換パラメータを時間関数へ変換（近似）する処理を行う。
【００６５】
すなわち、ある時間区間におけるｎ個の変換パラメータａi（０≦ｉ≦ｎ−１）（例えば、ｎ＝１２）を、
ａi＝ｆi（ｔ）      （ｆi（ｔ）は時間ｔの関数）
と表現する。
この時間区間とは、同一の参照物体領域を用いてオプティカルフローを算出したフレームが含まれる時間区間である。また、ｆi（ｔ）は多項式、スプライン関数、定数などとすることができる。
【００６６】
図５に、オプティカルフローから算出された（ある１つの）ａiを関数により表現した様子を示す。図５において、４０１は関数表現の対象となっている時間区間、４０２はオプティカルフローから算出されたａiの値、４０３はａiを表現する関数ａi＝ｆi（ｔ）を表している。
【００６７】
このように関数により表現するメリットは、物体領域を記述するデータを少なくできることである。例えば、関数として２次以下の多項式を用いるとすると、この関数は３つの実数により表現することができるため、ある時間区間全てのパラメータの値を記述するのに３つの実数で十分になる。
【００６８】
パラメータを表現する関数を多項式やスプライン関数とする場合には、変換対象となっている時間区間におけるａiの値とｆi（ｔ）により算出される値との誤差が小さくなるように決定する。例えば、最小二乗法を利用すれば容易に計算ができる。
【００６９】
なお、この近似関数を求める処理は、例えば、当該物体領域に関する各フレームにおけるパラメータ値が得られる毎に行う（例えば各フレームのパラメータ値が得られる毎に近似を行うとともに近似誤差を求め、近似誤差が一定の範囲に収まるように近似区間を適宜分割する方法）ようにしてもよいし、参照物体領域が更新されて参照物体一定区間が定まった後に一括して行うようにしてもよい。
【００７０】
このステップＳ１０３の処理手順については後でより詳細に説明する。
【００７１】
次に、ステップＳ１０４では、参照物体領域の更新の必要性の判定処理を行う。
【００７２】
本実施形態は、任意のフレームにおける物体の領域を、参照フレームにおける参照物体領域と、参照物体領域の変換パラメータとにより表現するものである。しかし、表現したい物体領域と参照物体領域とがあまりに異なった形状である場合には、変換パラメータにより参照物体領域を移動／変形しても、表現したい物体領域に似ている形状が得られない。このような場合には、参照物体領域を別のフレームにおける物体領域に変更（参照領域の更新）するのが効果的である。そこで、本実施形態では、ステップＳ１０４にて、そのような変更が必要であるか否かを判定するようにしている。
【００７３】
この判定には、例えば、あるフレームの実際の物体領域と予測物体領域との誤差があらかじめ定められているしきい値を上回るかどうかにより判断する方法を用いることができる。予測物体領域とは、変換パラメータを用いて参照物体領域から算出したあるフレームの物体領域のことである。変換に用いる変換パラメータは、時間関数ａi＝ｆi（ｔ）から算出した値を用いる。さらに、実際の物体領域と予測物体領域との誤差としては、例えば、両領域の共通部分の面積と共通しない部分の面積との比を用いることができる。
【００７４】
次に、ステップＳ１０５では、先のステップＳ１０４の判定処理において参照物体領域の更新が決定された場合に、参照物体領域更新処理を行う。この処理は、基本的にはステップＳ１０１の処理と同様である。すなわち、現在ステップＳ１０２の変換パラメータを算出する処理の対象となっているフレームを参照フレームとして登録し、参照物体領域を表現する２値のビットマップを作成する処理である。また、参照フレームにおける物体領域を参照物体領域として登録しておく。
【００７５】
次に、ステップＳ１０６では、映像中の物体領域の記述処理が終了かどうかを判定する。この判定基準としては、例えば、ビデオの終端かどうか、物体領域存在区間の終端かどうか、ユーザにより終了が指示されたかどうか、などがある。ステップＳ１０２からステップＳ１０４またはステップＳ１０５までの処理が、ステップＳ１０６で終了と判定されるまでフレーム毎に繰り返し実行される。
【００７６】
そして、ステップＳ１０７において、これまでの処理により計算された物体領域の記述情報（変換パラメータを近似する関数のパラメータ）を、予め定められた記述フォーマットに従って記録する処理を行う。記録先は、例えば、計算機の内部もしくは外部の半導体メモリ、磁気テープ、磁気ディスク、光ディスクなどの物体領域データ記憶部１０である。
【００７７】
図６に、本実施形態における１つの物体領域に対する物体領域データの記述フォーマットの一例を示す。
【００７８】
図６において、
５０１は、物体ＩＤで、物体に付与された物体固有の識別情報（例えば、番号または記号）である。
５０２は、参照物体領域一定区間数で、同一の参照物体領域を有するフレーム区間の数である（図６ではＮとしている）。これは参照フレームの数とも等しい。
【００７９】
５０３および５０４は、それぞれ、物体領域存在区間の先頭時刻および末尾時刻である。これらは時刻もしくはフレーム番号により記述される。末尾時刻の代わりに物体領域存在区間の長さ（時間もしくはフレーム番号の差分値）を用いることもできる。
５０５は、物体領域記述情報である。物体領域記述情報５０５は、参照物体領域区間ごとに記述され、すなわち参照物体領域区間数（図６の例ではＮ個）だけ記述される。
【００８０】
各々の物体領域記述情報の具体的内容は、図６中の５０６〜５１０に示される。
５０６および５０７は、それぞれ、参照物体領域区間の先頭時刻および末尾時刻である。これらは時刻もしくはフレーム番号により記述される。末尾時刻は参照物体領域区間の区間長で置き換えることができる。
５０８は、変換モデルＩＤである。これは、拡大縮小モデル、ａｆｆｉｎｅ変換モデル、ｐａｒａｂｏｌｉｃ変換モデルなどのうちどのモデルを用いて物体領域を記述したかを特定するためのＩＤである。
５１１は、原点座標で、変換モデルの原点座標を画像のどこにとるかを決定するものである。原点座標データは、参照物体領域の重心位置を常に原点とするなどのルールを決めておく場合には省略することができる。
５０９は、参照物体領域情報であり、参照物体領域を特定するための情報である。具体的には、参照フレームの時刻（またはフレーム番号）、参照物体領域を表すビットマップデータ（もしくはビットマップデータへのポインタ）である。なお、ビットマップデータは、そのままではデータサイズが大きいため、圧縮して保存するのが好ましい。
５１０は、変換パラメータ情報である。変換パラメータ情報は、変換モデル（変換モデルＩＤ）により定まるパラメータ数（図６の例ではＭ個）だけ記述される。変換パラメータは、具体的には、各フレームでのパラメータの値を示す配列や、パラメータを近似する関数を特定する情報（係数値など）などである。変換パラメータ情報の詳細については後で詳細に説明する。
【００８１】
以上の処理により、映像中の時空間的に変化する物体領域を簡単な記述データとして記録しておくことができる。
【００８２】
なお、本実施形態では、参照フレームを参照物体領域が一定の区間の先頭フレームとしたが、参照フレーム（および参照物体領域）は任意に選択することができる。他の参照物体領域選択方法については、後で（第５の実施形態にて）詳細に説明する。
【００８３】
次に本発明の他の実施形態を説明する。以下の実施形態で第１実施形態と対応する部分は同一参照数字を付して詳細な説明は省略する。
【００８４】
第２実施形態
第２の実施形態は基本的には第１の実施形態と同様であり、以下では第１の実施形態と相違する点を中心に説明する。
【００８５】
本実施形態の物体領域情報生成装置の構成例は第１の実施形態（図１）と同様である。
【００８６】
図７に、本実施形態の物体領域情報生成装置の処理手順の一例を示す。
【００８７】
ステップＳ２０１では、ある物体領域が存在するフレーム区間の最初のフレームにおける物体領域のみをＧＵＩを介して入力する。最初のフレームを参照フレームとして登録しておく。
【００８８】
ステップＳ２０２は、物体領域が存在するフレーム区間全体にわたり物体領域を計算する処理である。この具体的な手法としては、Ｓｎａｋｅｓを利用することができる。
【００８９】
ステップＳ２０３は、図２のステップＳ１０２と同様に参照物体領域から処理対象となっているフレームの物体領域（対象物体領域）への変換パラメータを算出する処理である。この処理は、図２におけるステップＳ１０２のように、オプティカルフローを求める処理と、オプティカルフローから変換パラメータを推定する処理とにより実現できるが、本実施形態では物体領域の形状を用いて変換パラメータを算出する。
具体的な方法としては、まず、対象物体領域を２値のビットマップにより表現する。
次に、参照物体領域のビットマップの輪郭部分に隙間無くブロックを配置し、各ブロックごとにテンプレートマッチングにより対象物体領域のビットマップへの移動ベクトルを算出する。
この移動ベクトルをオプティカルフローの代わりとして用いることにより、変換パラメータを算出する。
【００９０】
ステップＳ２０４〜Ｓ２０８の処理は第１の実施形態で説明されているステップＳ１０３〜Ｓ１０７の処理と同様である。
【００９１】
本実施形態における物体領域データの記述フォーマットの一例は第１の実施形態（図６）と同様である。
【００９２】
第３実施形態
第１および第２の実施形態では、ビットマップで物体領域を表し、参照物体領域から処理対象となっているフレームの物体領域（対象物体領域）への変換パラメータを算出したが、第３の実施形態では、物体領域を近似図形で近似し、参照物体領域の近似図形の各代表点から処理対象となっているフレームの物体領域（対象物体領域）の近似図形の対応する各代表点への変換パラメータを算出するものである。本実施形態はこの相違点に対応する部分以外は基本的には第１、第２の実施形態と同様であり、以下では第１、第２の実施形態と相違する点を中心に説明する。
【００９３】
図８に、本実施形態に係る物体領域情報生成装置の構成例を示す。図８に示されるように、本物体領域情報生成装置は、映像データ記憶部２、物体領域処理部４、図形近似部５、変換パラメータ処理部６、関数近似部８、物体領域データ記憶部１０を備えている。なお、本処理においてユーザの操作を介入させる形態を取る場合には、映像（動画像）データを例えばフレーム単位で表示させ、ユーザの指示入力等を受け付けるＧＵＩが用いられる（図８では省略している）。
【００９４】
図形近似部５は、物体領域を近似図形で近似し、その近似図形の各代表点を求める処理を行うものである。
【００９５】
変換パラメータ算出部６は、基準となる参照フレームの参照物体領域の近似図形の代表点をもとにして、対象となるフレームの対象物体領域の近似図形の代表点への変換パラメータを算出する。
【００９６】
関数近似部８は、物体領域の近似図形の代表点の変換パラメータの各々について、その時系列的な軌跡を時間関数に近似する。なお、第１、第２の実施形態と同様に、変換パラメータ自体を記述する場合には、この関数近似部８は不要となる。
【００９７】
もちろん、本物体領域情報生成装置も、計算機上でソフトウェアを実行する形で実現することもできる。
【００９８】
図９に、本実施形態の物体領域情報生成装置の処理手順の一例を示す。
【００９９】
ステップＳ３０１は、図２におけるステップＳ１０１、あるいは図７におけるステップＳ２０１、Ｓ２０２と同様の処理である。  ステップＳ３０２は、物体領域存在区間全体にわたり、物体領域をあらかじめ決められた図形により近似する処理である。
【０１００】
物体領域を図形近似する処理では、例えば、物体領域を囲むなるべく小さな近似図形を見つける。近似に用いる図形としては、傾きのないあるいは傾きのある矩形（正方形、長方形）、平行四辺形、傾きのないあるいは傾きのある楕円（円を含む）、多角形など、種々の図形を用いることができる。また、領域の近似方法も、領域に外接する図形に近似する方法、領域に内接する図形とする方法、領域の重心を近似図形の重心とする方法、領域と近似図形の面積を等しくする方法、領域と近似図形とが重ならない部分の面積を最小とする方法など、種々の方法がある。
【０１０１】
なお、物体の領域を予め定められた図形により近似するのではなく、対象物体（オブジェクト）毎に図形の種類をユーザが指定できるようにしてもよいし、対象物体毎にその物体の形状等に応じて図形の種類を自動的に選択するようにしてもよい。
【０１０２】
また、物体領域を近似する図形近似を求める処理は、フレームごとに行っても良いし、もしくは対象フレームの前後数フレームの物体領域を使って行っても良い。後者の場合には、近似図形の大きさや位置などの変化を数フレームの間で平滑化することにより、近似図形の動きや変形をなめらかにしたり、物体領域の抽出誤差を目立たなくすることができる。なお、近似図形の大きさは、フレームごとに異なって構わない。
【０１０３】
物体領域の近似図形が求められたならば、この近似図形を表現する代表点を抽出する処理が行われる。どのような点を代表点とするかは、どのような近似図形を用いるかにより異なる。例えば、近似図形が矩形の場合には４つもしくは３つの頂点を代表点とすることができ、近似図形が円の場合には中心と円周上の一点としたり直径の両端点としたりすることができる。また、楕円の場合には楕円の外接矩形の頂点としたり２つの焦点と楕円上の１点（例えば短軸上の１点）としたりすればよい。任意の閉多角形を近似図形とする場合には、各頂点を図形の代表点とする必要がある。
【０１０４】
代表点の抽出は、１フレーム分の近似図形が得られるたびに、フレーム単位で行う。また、各代表点は、水平方向の座標ｘと、垂直方向の座標ｙと、により表される。
【０１０５】
ここで、図１０に、物体の領域が平行四辺形で表される場合に、近似楕円を求める方法の一例を示す。図１０における点Ａ，Ｂ，Ｃ，Ｄが物体の領域である平行四辺形の各頂点である。この場合、まず、辺ＡＢと辺ＢＣのどちらが長いかを計算する。そして、長い方の辺およびその対辺を辺の一部とする最小の長方形を求める。図１０の例の場合は点Ａ，Ｂ’，Ｃ，Ｄ’を４頂点とする長方形となる。近似楕円は、例えば、この長方形に内接する楕円と相似で、かつ、点Ａ，Ｂ’，Ｃ，Ｄ’を通る外接楕円とする。
【０１０６】
次に、楕円を表現する図形代表点を２つの焦点および１つの楕円上の点とした場合、楕円の焦点は２つの軸上の点や楕円の外接矩形から簡単に求めることができる。ここでは、一例として、図１１における長軸上の２点Ｐ０，Ｐ１および短軸上の１点Ｈから焦点ＦとＧを求める方法を説明する。
【０１０７】
まず、長軸と短軸のパラメータであるａ，ｂと、楕円の中心Ｃと、扁平率ｅとを、
Ｅ（Ｐ０，Ｐ１）＝２×ａ、
Ｃ＝（Ｐ０＋Ｐ１）／２、
Ｅ（Ｃ、Ｈ）＝ｂ、
ｅ＝（１／ａ）×√（ａ×ａ−ｂ×ｂ）
により求める。
ここで、Ｅ（Ｐ、Ｑ）は点Ｐと点Ｑのユークリッド距離である。
【０１０８】
このようにして求めたパラメータから、焦点ＦとＧは、
Ｆ＝Ｃ＋ｅ×（Ｐ０−Ｃ）、
Ｇ＝Ｃ−ｅ×（Ｐ０−Ｃ）
により求めることができる。
【０１０９】
このようにして、楕円の代表点Ｆ、ＧおよびＨは決定されるが、これらの点を別のフレームにおいて取り出された楕円の代表点と結びつける際にはあいまいさが生じる。すなわち、抽出された２つの焦点と１つ前のフレームにおける２つの焦点とを結びつける組み合わせは２通り存在する。また、短軸と楕円との交点は２つあるため、１つ前のフレームにおいて抽出された楕円上の一点と対応する交点がどちらなのかがわからない。そこで、これらを決定する方法について説明する。
【０１１０】
１フレーム前に抽出された２つの焦点をＦｐ、Ｇｐとする。Ｆｐに対応するのがＦであるのかＧであるのかを判断するために、
Ｅ（（Ｇｐ−Ｆｐ）／２，（Ｇ−Ｆ）／２）と
Ｅ（（Ｇｐ−Ｆｐ）／２，（Ｆ−Ｇ）／２）とを比較する。
前者の方が小さい場合には、ＦｐはＦに対応させ、ＧｐはＧに対応させる。一方、後者の方が小さい場合には、その逆に、ＦｐはＧに対応させ、ＧｐはＦに対応させる。
【０１１１】
また、１つ前のフレームにおける短軸と楕円との交点をＨｐとし、現フレームの短軸と楕円との２つの交点をＨ、Ｈ’とする。Ｈｐと対応付ける点としてＨとＨ’のどちらを選択するかは２つの距離、
Ｅ（Ｈｐ−（Ｇｐ＋Ｆｐ）／２，Ｈ−（Ｆ＋Ｇ）／２）と
Ｅ（Ｈｐ−（Ｇｐ＋Ｆｐ）／２，Ｈ’−（Ｆ＋Ｇ）／２）とを算出することにより決定する。
前者が小さい場合にはＨを選択し、そうでない場合にはＨ’を選択する。なお、はじめのフレームにおける短軸と楕円との交点Ｈは２つのうちのどちらを選択してもよい。
【０１１２】
次に、近似図形として楕円以外の図形を用いた場合について説明する。
【０１１３】
図１２は、近似図形として平行四辺形を用いた場合の代表点を説明するための図である。点Ａ，Ｂ，Ｃ，Ｄが平行四辺形の頂点である。これらのうち３点が決まれば残りの１点も一意に決まるため、代表点としては４頂点のうちの３頂点とすれば十分である。この例では、Ａ，Ｂ，Ｃの３点を代表点としている。
【０１１４】
また、図１３は、近似図形として多角形を用いた場合の代表点を説明するための図である。多角形の場合には、頂点の順序を外周に沿った順にしておく。図１３の例では、１０個の頂点を持つ多角形なので、Ｎ１〜Ｎ１０までの全ての頂点を代表点とする。なお、この場合に、内角が１８０度未満の頂点のみを代表点とするなどして、頂点数を削減するようにしてもよい。
【０１１５】
さて、上記のように、近似図形は、図形を特定する代表点の集合により表現できる。図１４の（ａ）〜（ｄ）に、幾つかの種類の近似図形の代表点の例をまとめて示す。図１４の（ａ）は矩形、図１４の（ｂ）は楕円、図１４の（ｃ）は平行四辺形、図１４の（ｄ）は多角形の各々について、黒丸で表されているのが代表点である。
【０１１６】
ここで、近似図形の代表点は、位置関係が明らかになるように順序づけられているのが好ましい。図１４の（ａ）〜（ｄ）の例においては、順序を番号で示しており、矩形および平行四辺形の代表点は、４頂点のうちの３頂点（時計回りに順序づけられる）としている。また、楕円は外接矩形の代表点（時計回りに順序づける）、多角形は全ての頂点（時計回りに順序づける）を図形の代表点とする。
【０１１７】
また、内部に穴の空いた領域を表現することも可能である。図１５に、その表現方法の一例を示す。図１５では、二つの多角形により穴の空いた領域を表現している。図形の代表点は外側および内側の多角形の頂点である。このとき、外側の多角形の頂点は時計回りに順序づけておき、内側の多角形の頂点は反時計回りに順序づけておく。このようにすることにより、常に代表点の進行方向の右側を物体の領域とすることができ、多角形の内部が物体なのか、外部が物体なのかの判定が容易に行えるようになる。
【０１１８】
なお、外側の多角形の頂点を反時計回り、内側の多角形の頂点を時計回りに順序づけてももちろん構わない。この場合には、代表点の進行方向の左側が物体の領域となる。
【０１１９】
続いて、このステップＳ３０２では、参照物体領域と参照フレームを設定する。本実施形態においては、参照物体領域は、物体領域存在区間の先頭のフレーム（参照フレーム）における物体領域近似図形である。また、参照物体領域近似図形の代表点の位置を併せて記憶しておく。
【０１２０】
次に、ステップＳ３０３では、処理対象としているフレームの物体領域近似図形の代表点と、参照物体領域近似図形の代表点とを対応させる。
【０１２１】
図１６に、代表点の対応づけ方法の一例を示す。図１６において、１０００は近似矩形（複数）の重心である。図１６では、参照物体領域近似図形１００１と対象物体領域近似図形１００２が得られている。
【０１２２】
まず、近似図形１００１と近似図形１００２のいずれかを平行移動させ、重心位置を一致させる（重心位置を一致させた状態が図１６である）。
次に、それぞれの矩形の頂点同士の距離ｄ１〜ｄ４を計算し、全ての頂点の組み合わせで距離の和を求める。
そして、距離の和が最小となる組み合わせを求め、対応づけする。
なお、この方法では対応付けが難しい場合がある。例えば、近似矩形が正方形に近い形状であり且つ４５度回転移動している場合には、対応付けが難しい（２通りの組み合わせにおいて距離の和が同じような値になる）。
【０１２３】
そこで、そのような場合には、近似図形内の物体領域同士の排他的論理和を取り、その面積が最小となる組み合わせを採用する方法、あるいは物体領域のテクスチャの絶対差分を求め、差分値が最小となる組み合わせを求める方法などを用いれば良い。
【０１２４】
ステップＳ３０４では、物体領域近似図形の代表点の移動ベクトルから変換パラメータを算出する。
【０１２５】
この処理では、代表点の動きをオプティカルフローの代わりに用いて、図２のステップＳ１０２と同等の処理により変換パラメータを算出する。ただし、代表点の数は少ないため、必ずしも変換パラメータが求まるとは限らない。例えば、矩形、楕円、平行四辺形は３つの代表点を持つが、この３つの移動ベクトルから射影変換モデルのパラメータ８個を求めることはできない。図１７に、近似に用いる図形の種類と、変換パラメータを求めることができる変換モデルとの関係を示す。図１７中の○はパラメータが算出できる組み合わせ、×は算出できない組み合わせである。
【０１２６】
ステップＳ３０５は、ステップＳ３０４で求めた変換パラメータを時間関数により近似する処理であり、図２のステップＳ１０３と同じ処理である。
【０１２７】
ステップＳ３０６は、参照物体領域を更新する必要があるか否かを判定する処理である。この処理では、まず、変換パラメータにより参照物体領域を変換し、現フレームの予測物体領域を算出する。もちろん、参照物体領域の代表点のみを変換パラメータにより変換し、変換後の代表点により特定される図形を構成しても同じ予測物体領域が算出できる。次に、予測物体領域と現フレームの対象物体領域近似図形との誤差を計算し、しきい値処理により参照物体領域更新を行うか否かを判定する。
【０１２８】
ステップＳ３０７は、ステップＳ３０６において参照物体領域の更新が必要と判定された場合に、実際に更新を行う処理である。処理対象のフレームを参照フレームとし、当該フレームの物体領域近似図形を新たな参照物体領域として記憶し、参照物体領域の代表点の座標値も併せて保持しておく。
【０１２９】
ステップＳ３０８は、図２のステップＳ１０６と同様に映像中の物体領域の記述が終了かどうかを判定する。
【０１３０】
ステップＳ３０９は、図２のステップＳ１０７と同様に算出した物体領域の情報（変換パラメータを近似する関数のパラメータ）を予め定められた記述フォーマットで記録する処理である。
【０１３１】
図１８に、物体領域データの記述フォーマットの一例を示す。この記述フォーマットは、図形情報１１０９以外は、図６に例示した記述フォーマットと同じである。図６の参照物体領域情報５０９の代わりの図形ＩＤ１１０９は、図形の種類を特定するＩＤと、参照物体領域の近似図形の代表点の座標とからなる。図１８中のＭはＩＤにより特定される図形に必要な代表点の数を表す。
【０１３２】
さて、以上の説明では物体領域の近似図形は特に限定しなかったが、以下では、物体領域の図形近似のバリエーションとして、物体領域の矩形による近似方法について説明する。
【０１３３】
例えば、図１９のようにフレーム２８００の物体領域２８０１に外接する矩形２８０２は、物体領域のビットマップをラスタースキャンし、対象画素が物体領域内であるときに、Ｘ座標とＹ座標のそれぞれについて、それまで保存されている最小値より小さい場合には最小値を更新し、それまで保存されている最大値より大きい場合には最大値を更新する、という手順を、全ての画素について繰り返しチェックすることによって、Ｘ座標とＹ座標のそれぞれについて物体領域を示す画素位置の最小値および最大値を求めれば、矩形２８０２の４つの頂点座標を簡単に得ることができる。
【０１３４】
このような方法は処理が簡易な点で優れているが、例えば図２０のように細長い物体３００１が画面３０００に対して斜めの姿勢で存在しているときには、近似矩形３００２内には非物体領域が特に多く含まれてしまう。また、細長い物体物体が回転すると矩形３００２の大きさ、形状が変化する。これらは、物体指定する際の弊害となる場合がある。
【０１３５】
そこで、矩形の大きさができるだけ小さくなり（近似矩形内の非物体領域ができるだけ少なくなり）、対象物体の姿勢も反映させることのできる近似方法の一例を示す。
【０１３６】
図２１の（ａ）において、３１００は処理対象となっている映像中の１フレームを示している。
【０１３７】
３１０１は抽出対象となっている物体の領域を示している。
【０１３８】
３１０２は物体の領域を矩形で近似したものである。この近似矩形は図１９の矩形２８０２とは異なり、傾きを持っている。矩形内の非物体領域も少なく、対象が回転してもその形状は一定である。
【０１３９】
図２２に、この場合の処理手順の一例を示す。この処理手順例は、対象物体領域の慣性主軸を求め、これに基づいて近似図形を求めるようにしたものである。
【０１４０】
図２１の（ｂ）において、３１０３は、対象物体領域の重心を示している。
【０１４１】
３１０４は、対象物体領域の慣性主軸を示している。３１０５は、３１０４に垂直な直線である。
【０１４２】
マスク画像をｆ(ｘ，ｙ)とすると、ｆ(ｘ，ｙ)は領域内では１で、領域外では０である。対象領域の慣性モーメントは、
ｍij＝ΣΣｘi ｙj ｆ(ｘ，ｙ)
で表せる。
【０１４３】
まず、対象物体領域の慣性モーメントｍ20、ｍ02、ｍ11を求める（ステップＳ７０〜Ｓ７２）。
【０１４４】
ここで、原点（ここでは重心）を通る直線ｙ＝ｘ tanθについてのｆ(ｘ，ｙ)の慣性モーメントは、
ｍθ＝∬(ｘ sinθ−ｙ cosθ)2 ｆ(ｘ，ｙ)dxdy
で得られる。
θを変化させたときにｍθを最小にする角度をθ0 とする。一通りの角度しかないとき、直線ｙ＝ｘ tanθ0 を慣性主軸と呼ぶ。
tanθ0 は、２次方程式、
ｔａｎ2 θ＋｛（ｍ20−ｍ02）／ｍ11｝ｔａｎθ−１＝０
の解として求まる。
これにより重心３１０３の周りでtanθ0 を求めると、対象物体の慣性主軸が得られる（ステップＳ７３）。
【０１４５】
次に、慣性主軸に平行で物体領域に外接する直線と、慣性主軸に垂直で物体領域に外接する直線を求める（ステップＳ７４）。
図２１の（ｂ）において、直線３１０６，３１０７は、慣性主軸３１０４に並行な直線であり、対象物体領域に外接する。
直線３１０８，３１０９は、直線３１０５に平行な直線であり、対象物体領域に外接する。
矩形３１０２は、直線３１０６，３１０７，３１０８，３１０９によって形成される（ステップＳ７５）。
【０１４６】
なお、対象物体が円の場合には慣性主軸が求まらないが、このような場合には例えば前述した物体領域のビットマップをラスタースキャンし、物体領域を示す画素位置の最小値および最大値を求める手順で近似矩形を求めればよい。
【０１４７】
ところで、矩形より楕円で物体領域を表現する方が適当な場合もある。図２３に、物体の領域が矩形で表される場合に、その矩形から近似楕円を求める方法の一例を示す。図２４に、この場合の処理手順の一例を示す。
【０１４８】
図２３において、対象物体領域３３００と外接矩形３３０１が得られているものとする。
【０１４９】
まず、近似矩形の内接楕円および外接楕円を求める（ステップＳ８０）。
【０１５０】
図２３において、楕円３３０２は矩形３３０１の内接楕円であり、楕円３３０３は矩形３３０１の外接楕円である。
【０１５１】
次に、内接楕円３３０２の大きさを少しずつ外接楕円３３０３に近づけていき（ステップＳ８１）、物体領域を全て包含する楕円３３０４を求め（ステップＳ８２）、近似楕円とする。なお、繰り返し処理において、一回に内接楕円３３０２の大きさを拡大する単位は、予め定めておいてもよいし、内接楕円３３０２の大きさと外接楕円３３０３の大きさの差分に応じて決定してもよい。
【０１５２】
また、上記とは逆に、外接楕円３３０３の大きさを内接楕円３３０２に近づけていってもよい。この場合には、外接楕円３３０３は最初から物体領域を全て包含しているので、例えば、繰り返し処理において、始めて物体領域に包含されない部分を生じた楕円の、一回前における楕円を、近似楕円とすればよい。
【０１５３】
なお、上記では、物体領域を全て包含する楕円を求めたが、その代わりに、例えば、物体領域の領域と近似楕円の領域とが重複しない領域部分の面積を最小とすることを基準として、近似図形を求めるようにしてもよい。
【０１５４】
次に、近似矩形や近似楕円の代表点を求める。矩形の代表点は４つもしくは３つの頂点を代表点とすることができ、楕円の場合は楕円の外接矩形の頂点としたり、２つの焦点と楕円上の一点としたりすることができる。
【０１５５】
第４実施形態
以上、各フレームの対象物体領域を参照フレームの参照物体領域からの変換パラメータにより記述することにより映像中の所望の物体の領域を少ないデータ量で記述でき、かつその生成や扱いも容易な物体領域情報生成装置を説明したが、次に第１〜第３の実施形態におけるパラメータ情報（図６の５１０、図１８の１１１０）の具体的な内容について詳細に説明する。
【０１５６】
このパラメータ情報には、参照物体領域に対する各フレームの物体領域の変換パラメータが直接、あるいは間接的に格納されている。前述したように、変換パラメータを時間関数で表現し、その関数を特定する情報を記述する方法や、変換パラメータの値を直接記述する方法などがあるので、これら表現方法それぞれについて変換パラメータの記述フォーマットを説明する。
【０１５７】
まず、図２５に、変換パラメータ情報のデータ構造の一例を示す。
【０１５８】
フレーム数１２００は、このパラメータ情報に格納されている物体領域のフレーム数を示す。
【０１５９】
参照物体領域が一定の区間の各フレームの物体領域の変換パラメータは配列として第１フレームから順に格納される（１２０１）。
【０１６０】
このような変換パラメータ情報は、１フレームにつき個数Ｍだけ存在する。例えば、ａｆｆｉｎｅ変換の場合は、Ｍ＝６となる。
【０１６１】
次に、図２６に、変換パラメータを関数を用いて近似した場合の変換パラメータ情報のデータ構造の一例を示す。
【０１６２】
変換パラメータの近似にはスプライン関数を用いるものとする。
【０１６３】
節点フレーム番号１３００は、スプライン関数の節点を表しており、この節点まで多項式の係数のデータ１３０２が有効であることを示している。多項式の係数データの数は、スプライン関数の最高次数により変化する（最高次数をＫとすると、係数データの数はＫ＋１となる）。そのため、多項式次数１３０１を参照する。多項式次数１３０１の後には、多項式次数＋１個に相当する数の多項式係数データ１３０２が続く。
【０１６４】
また、スプライン関数は節点間で別の多項式で表現されるため、節点の数に対応した数の多項式が必要になる。従って、節点フレーム番号、多項式の係数などを含むデータ１３０３は、複数繰り返し記述される。節点フレーム番号が参照物体領域一定区間の最終フレームと等しくなった場合には、それが最後の多項式係数データであることを意味しているので、変換パラメータデータが終わることが分かる。
【０１６５】
次に、図２７に、変換パラメータを関数を用いて近似した場合の物体領域記述情報のデータ構造の他の例を示す。ここでは、多項式の最高次数を２次として説明する。
【０１６６】
前述した例（図６、図２６）では、多項式スプライン関数の全ての係数を記述していたのに対して、ここでの記述方法では、スプライン関数の節点の座標と、スプライン関数の２次の係数に関連する値との組合せにより、記述する。この記述方法の利点は、節点が容易に取り出せるため、大まかな物体の軌跡が簡単にわかるという点である。
【０１６７】
以下、この記述方法について詳細に説明する。
【０１６８】
図２７中、変換モデルＩＤ１４００は、物体の動きの近似に用いた変換モデルの種類を特定する。例えば、ａｆｆｉｎｅ変換や射影変換を指定できる。また、原点座標１４１２は、変換モデルに従った変換を行う際に、画像のどこを原点とするかを指定するものである。
【０１６９】
参照物体領域情報１４０１は、前述の例（図６の５０５）と同様に参照物体領域の形状を記述する情報が格納される。
【０１７０】
節点数１４０２は、スプライン関数の節点の数を表す。各節点に対応するフレームは時間として表され、節点時刻１４０３に格納される。節点時刻は、節点数だけあるため、配列１４０４として記述しておく。
【０１７１】
同様に、各節点の変換パラメータ１４０５もそれぞれパラメータが配列１４０６として記述される。この配列はパラメータの個数Ｍ（ａｆｆｉｎｅ変換の場合はＭ＝６）だけ存在する。
【０１７２】
一次関数フラグ１４０７は、節点間のスプライン関数として一次関数だけが用いられているかどうかを表す。一部分でも２次以上の多項式を用いる場合には、このフラグはオフにしておく。このフラグを用いることにより、近似関数として一次関数のみに使われる場合に以下で説明する関数特定情報１４０８を一つも記述しなくて済むため、データ量を削減できるというメリットがある。なお、必ずしもこのフラグは必要ではない。
【０１７３】
関数特定情報に含まれる関数ＩＤ１４０９と、関数パラメータ１４１０はそれぞれ多項式スプライン関数の次数と、その係数を特定するための情報を表す。図２８に、それらの一例を示す。ここで、ｔａ，ｔｂは連続する節点の時刻、ｆ（ｔ）は［ｔａ，ｔｂ］の区間のスプライン関数、ｆａ，ｆｂは時刻ｔａ，ｔｂにおける節点の変換パラメータを表している。１次多項式を用いるときは節点のみの情報で十分なので、関数パラメータは記述されないが、２次多項式の場合には係数を特定するための情報として一つのａａが関数パラメータに記述される。なお、図２８の例では、２次の係数が用いられているが、例えば、二次曲線上のｆａ，ｆｂ以外の１点など、他の値を用いることもできる。
【０１７４】
本実施形態の記述方法では、節点の情報と関数パラメータの情報により、図２８の制約条件を用いて全ての区間におけるスプライン関数が再現できる。
【０１７５】
関数特定情報は、（節点数−１）個存在し、これらは配列１４１１となって記述される。
【０１７６】
なお、上記では、多項式の最高次数を２次として説明したが、もちろん、多項式の最高次数を３次以上とすることも可能である。
【０１７７】
ここで、データ記述の具体例を用いて図２７のデータ構造を用いた記述の効果を説明する。図２９は図２５で説明されているデータ構造で代表点軌跡データを記述した例（００００）と、図２７のデータ構造を用いて代表点軌跡データを記述した例（０００３）とを比較したものである。ただし、例（００００）ではパラメータ１２０１に加え、わかりやすいようにタイムスタンプも図示している。両者とも、数式（７）による平行移動モデルを用いた場合の例であり、二つの変換パラメータａ０，ａ１の軌跡の記述を図示している。例（００００）では、時刻０．０（秒）から時刻１５．０（秒）までのパラメータａ０の値が０.１（秒）おきに記述されている。これらの値は、既に説明した変換パラメータ処理部６、またはステップＳ１０２、またはＳ２０３、またはＳ３０４による処理で算出されたものである。パラメータ値にはａ０，ａ１との２つがあるため、パラメータ値データ配列００００では２×１５１＝３０２の座標値がメモリに格納されている。それぞれの値を４バイトのデータで表現する場合には、パラメータ値データ配列００００の格納には１２０８バイトのメモリ容量を必要とする。
【０１７８】
図２７のデータ構造により物体領域を記述するには、これらのパラメータ値のデータを関数近似処理部８、またはステップＳ１０３、Ｓ２０４、またはＳ３０５により関数近似する。ここで、これらの処理のより具体的な例を図３０の流れ図を用いて説明する。
【０１７９】
ステップＳ００００は初期化処理であり、処理中に注目する区間の開始フレームのタイムスタンプｔｓおよび終端フレームのタイムスタンプｔｅに初期値を代入する。ステップＳ０００１は近似関数を算出する処理であり、ｔｓからｔｅまでのパラメータ値ａｉをパラメータ値データ配列（図２９の００００）から取り出し、最小二乗法によりあらかじめ決められた時間tの関数ｆｉ（ｔ）（この例では２次または１次の多項式）を決定する。この例ではｉ＝０，１である。ステップＳ０００２では、ｔｓからｔｅの区間において、ステップＳ０００１で算出された関数により算出されるパラメータ値の最大誤差を変数eにセットする。この際の最大誤差は、物体領域の誤差面積である。すなわち、実際の物体領域と、ｆｉ（ｔ）から算出されるパラメータ値により参照物体領域を変換した領域との不一致領域の面積をｔにおける誤差とし、ｔｓからｔｅまでの最大誤差にｅをセットする。物体領域の誤差面積の代わりに、実際の物体領域に対する不一致領域の面積の比を誤差として用いてもよい。ステップＳ０００３の選択処理では、eの値とあらかじめ決められているしきい値とを比較し、eのほうが大きければステップＳ０００４を、そうでなければステップＳ０００５を次に行う。
【０１８０】
ステップＳ０００４では、時刻ｔｓのフレームから時刻ｔｅのフレームの直前のフレームまでの区間に対して最小二乗法で算出された近似関数を登録し、ｔｓに時刻ｔｅのフレームの直前のフレームにつけられているタイムスタンプをセットする。このステップにより、例えば図２９における０００１の関数ａ０＝２．１ｔ２−１２．６ｔ（０≦ｔ≦２）が登録される。０≦ｔ≦２は関数の有効時間区間であり、近似関数が算出された際のｔｓからｔｅの区間がこれに相当する。この時間区間も関数と併せて登録される。
【０１８１】
ステップＳ０００５はｔｅの更新処理であり、時刻ｔｅのフレームの次フレームに付与されたタイムスタンプにｔｅの値を更新する。ステップＳ０００５は終了判定処理であり、ｔｅが処理すべき範囲を超えているかどうかを判定し、超えていなければステップＳ０００６からの処理を繰り返し、超えていればステップＳ０００７の最終処理に進む。ステップＳ０００７は最後の近似関数を登録する処理である。例えば、図２９における０００１の最後の関数ａ０＝０．２ｔ２−４．４ｔ−１２．４（１０．５≦ｔ≦１５）はこのステップで登録された関数である。
【０１８２】
以上の処理により近似関数の算出が終わると、所定の記述フォーマットに従ってこれらの近似関数データが記録される。図２９の０００３は図２７の記述フォーマットを用いている（図示しているのは図２７の節点時刻配列１４０４、節点パラメータ１の配列１４０６、節点パラメータ２の配列、…、一次関数フラグ１（１４０７）、関数特定情報１の配列１４１１、一次関数フラグ２のそれぞれ一部である）。例えば、０００１の最初の関数ａ０＝２．１ｔ２−１２．６ｔ（０≦ｔ≦２）は、両端の節点時刻として０．０と２．０が記録される。また、これらの時刻におけるａ０のパラメータ値である０．０と−１６．８が記録される。さらに、２次多項式であることを表す関数ＩＤとして２が、また、ｔ２の係数２．１を特定するための関数パラメータとして４．２がそれぞれ記録される。関数パラメータとt2の係数との関係は図２８の通りである。この記述フォーマットでは、１次多項式の場合には多項式の有効時間区間の両端の座標値だけが記録され、２次多項式の場合には２次係数の２倍の値も併せて記録される。
【０１８３】
０００３では、実数に４バイト、一次関数フラグに１ビット、関数ＩＤに２ビットを費やす場合には、わずか５７バイトのデータ容量しか必要としない。これは先に計算した００００に必要となるデータ容量１２０８バイトよりもかなり少ない値である。
【０１８４】
このようなデータ容量の削減が可能である理由は、自然界の物体の動きは通常滑らかであるため、変換パラメータの変化も滑らかであるという特徴を利用しているからである。すなわち、物体の変形・移動を示すパラメータ（変換パラメータ）のデータ列は少々の誤差を許容することにより多項式でまとめて表現することが可能であり、この多項式を特定するパラメータだけを記録することで全ての変換パラメータ値を記録するよりも大幅にメモリ容量を節約できる。
【０１８５】
なお、物体領域全体としては図２９の０００３に記述されている以外に、図２７にある変換モデルＩＤ、原点座標、参照物体領域情報、節点数などのデータが必要である。  以下では、物体領域データのデータ構造に関連するバリエーションについて説明する。
【０１８６】
まず、以上では、ある１つの物体領域に関して全てのフレームを対象として変換パラメータを求めたが、変換パラメータを求めるフレームをサンプリングするようにしてもよい。例えば、３フレームに１フレームだけサンプリングし、フレーム１から参照物体領域、フレーム４，７，…からそれぞれ対象物体領域を用いるなどである。
【０１８７】
なお、変換パラメータを時間関数で表現し、その関数を特定する情報を物体領域データに記述する場合には、そのサンプリングされたパラメータ値によってこれまでと同様に関数近似を行えばよい。また、物体領域データにサンプリングに関する情報を含める必要はない。
【０１８８】
一方、変換パラメータの値を物体領域データに直接記述する場合には、例えば、第１の実施形態において、（１）そのサンプリングされなかったフレームのパラメータ値を適宜補間し（例えば、直前にサンプリングされたフレームと同じ値を記述する）、物体領域データは図５と同様とするか、あるいは、（２）図３１のように、物体領域データにサンプリング情報５２０を持たせ、サンプリングした場合にはそのサンプリングしたフレームのパラメータ値のみを記述し、サンプリング情報５２０にサンプリング方法を特定可能な情報（例えば、ｎフレームに１回サンプリングしたことを示す情報として数値ｎ（ただし、例えばｎ＝１の場合には全てのフレームからサンプリングされたことを示すものとする））を記述すればよい。なお、（２）の方法においては、この物体領域情報を使用する際において、サンプリング情報５２０を参照することにより、サンプリングされなかったフレームのパラメータ値を必要に応じて補間することができる。以上の点は、他の実施形態の場合も同様である。
【０１８９】
次に、以上の構成において、参照物体領域の更新判定処理を行わずに、参照物体領域を固定する構成も可能である。例えば、物体領域の動きが少ない場合や、あるいは、ある程度誤差が大きくても良いような場合などには、処理が簡易になるので有効である。この場合、物体領域データのデータ構造はこれまでのものと同じものを使用することができる（参照物体領域一定区間数が１となり、物体領域記述情報が１個となる）。また、常に参照物体領域の更新判定処理を行わない場合には、物体領域データのデータ構造はこれまでのものから参照物体領域一定区間数のフィールドを削除し、物体領域記述情報のフィールドを１個とするようにしてもよい。
【０１９０】
第５実施形態
続いて、これまでの各実施形態における参照物体領域選択方法の具体例について説明する。
【０１９１】
図３２は、予測物体領域と真の物体領域との誤差が最小となるように、物体領域存在区間から参照物体領域を選択する手法の一例を表したフローチャートである。
【０１９２】
ステップＳ４００では、物体領域存在区間から任意の１フレーム分の物体領域データを参照物体領域として取り出す。
【０１９３】
ステップＳ４０１では、ステップＳ４００の参照物体領域から物体領域存在区間の他フレームの物体領域への変換パラメータを求める。
【０１９４】
ステップＳ４０２では、ステップＳ４００の参照物体領域とステップＳ４０３で求めた変換パラメータを用いて、物体領域存在区間の参照フレームを除く全フレームの予測物体領域を求める。
【０１９５】
ステップＳ４０３では、物体領域存在区間の参照フレームを除く全フレームについて、ステップＳ４０２で求めた予測物体領域と実際の物体領域との誤差を求め、それらを加算して誤差の合計値を求める。
【０１９６】
ステップＳ４０４では、ステップＳ４０３で求めた誤差の合計値が、他のフレームを参照フレームとして以前に求めた誤差の合計値のいずれよりも小さい場合は、現在の参照フレーム番号を保存する。
【０１９７】
ステップＳ４０５は、分岐処理であり、現在の参照フレームが物体領域存在区間の最終フレームである場合にはステップＳ４０６へ、そうでない場合にはステップＳ４００へと分岐する。ステップＳ４００へ分岐した場合には、新たなフレームを参照フレームとして、同様の処理を繰り返す。
【０１９８】
ステップＳ４０６では、ステップＳ４０４で保存してあった予測物体領域と実際の物体領域との誤差の合計値が最小となる参照フレームの番号を取り出して、このフレームの物体領域を参照物体領域とする。
【０１９９】
図３２を用いた実施形態は計算量が大きいため、より高速な処理が求められる場合には、精度を犠牲にして、特定フレームを参照フレームとして選択すればよい。この特定フレームは、物体領域存在区間の先頭のフレームであってもよいが、中央のフレームを参照フレームとして用いれば、参照フレームと対象フレームの間隔のうち、最も離れた部分が最小となるため、多くの場合にはより精度のよい近似が期待できる。
【０２００】
図３３は、物体領域存在区間の中央のフレームを参照フレームとして、参照物体領域を選択する手法の一例を説明する図である。
【０２０１】
物体領域存在区間１７００の先頭フレーム１７０１と最終フレーム１７０２の中間の中央フレーム１７０３を参照フレームとして選択して、他のフレームの物体領域の変換パラメータを求めている。
【０２０２】
図３４は、物体領域存在区間から、複数の参照フレームをリアルタイムに選択する手法の一例を表したフローチャートである。また、図３５は、同手法を説明する図である。リアルタイム処理の場合、最終的な物体領域存在区間が確定していなくても、参照フレームを決定することが必要である。
【０２０３】
ステップＳ５００では、物体領域存在区間から１フレーム分の物体領域データを参照物体領域として取り出す。図３５中では先頭フレーム１９００の物体領域データを取り出す。
【０２０４】
ステップＳ５０１は、分岐処理であり、現在の処理フレームが物体領域存在区間の最終フレームである場合には終了へ、そうでない場合にはステップＳ５０２へと分岐する。
【０２０５】
ステップＳ５０２では、物体領域存在区間からステップＳ５００で取り出したフレームの次のフレームの物体領域データを対象物体領域として取り出し、ステップＳ５０１の参照物体領域に対する変換パラメータを求める。
【０２０６】
ステップＳ５０３では、ステップＳ５０１の参照物体領域とステップＳ５０２で求めた変換パラメータを用いて予測物体領域を求める。
【０２０７】
ステップＳ５０４は、分岐処理であり、ステップＳ５０３で求めた予測物体領域とステップＳ５０２の実際の対象物体領域との誤差が閾値を越えているかを判定する。誤差が閾値を越えている場合はステップＳ５０５へ、越えていない場合はステップＳ５０１へ分岐する。
【０２０８】
ステップＳ５０１へ分岐した場合、現在のフレームが物体領域存在区間の最終フレームでなければ同様な処理を繰り返す。これらの同じ参照フレームに対して、繰り返し処理されるフレームの集合は図３５中では１９０１に相当する。
【０２０９】
ステップＳ５０５では、現在のフレームを新たな参照フレームとし、ステップＳ５０１へ進んで、現在のフレームが物体領域存在区間の最終フレームでなければ同様な処理を繰り返す。図３５中では新たな参照フレーム１９０２に相当する。
【０２１０】
参照フレームが更新されると、参照物体領域一定区間１９０３が確定する。物体領域存在区間は複数の参照物体領域一定区間によって構成される。
【０２１１】
図３６は、物体領域存在区間から、複数の参照フレームを選択する別の手法を表したフローチャートである。また、図３７の（ａ）、（ｂ）は、同手法を説明する図である。
【０２１２】
ステップＳ６００では、未処理の物体領域存在区間から中央のフレームの物体領域データを参照物体領域として取り出す。図３７の（ａ）中では物体領域存在区間２１００の中央フレーム２１０１が参照フレームとなる。
【０２１３】
ステップＳ６０１は、分岐処理であり、現在処理しているフレームが未処理の物体領域存在区間の先頭フレームかどうかを判定する。先頭フレームでない場合にはステップＳ６０２へ、先頭フレームである場合にはステップＳ６０６へと分岐する。
【０２１４】
ステップＳ６０２では、現在の処理フレームの１つ前のフレームの物体領域を取り出し、ステップＳ６００の参照物体領域に対する変換パラメータを求める。
【０２１５】
ステップＳ６０３では、ステップＳ６００の参照物体領域とステップＳ６０２で求めた変換パラメータを用いて、予測物体領域を求める。
【０２１６】
ステップＳ６０４は、分岐処理であり、ステップＳ６０３で求めた予測物体領域とステップＳ６０２の実際の対象物体領域の誤差が閾値を越えているかを判定する。誤差が閾値を越えている場合はステップＳ６０５へ、越えていない場合はステップＳ６０１へ分岐する。ステップＳ６０１へ分岐した場合、現在のフレームが未処理の物体領域存在区間の先頭フレームでなければ同様な処理を繰り返す。
【０２１７】
ステップＳ６０５では、現在処理しているフレームの１つ後のフレームを参照物体領域存在区間の先頭フレームとする。図３７の（ａ）、（ｂ）中では、参照フレーム２１０１の物体領域を参照物体領域としたときに、フレーム２１０２（第ｋフレームとする）の物体領域で誤差が閾値を越えた場合、第ｋ＋１フレームが参照物体領域存在区間の先頭フレームとなる。
【０２１８】
ステップＳ６０６では、未処理の物体領域存在区間から中央のフレームの物体領域データを参照物体領域として取り出す。
【０２１９】
ステップＳ６０７〜Ｓ６１１は前述のステップＳ６０１〜６０５と同様の処理を、後のフレームに向かって行う。図３７の（ａ）、（ｂ）中で、フレーム２１０３の直前のフレームが参照物体領域一定区間の最終フレームになったとすると、未処理の物体領域存在区間２１０５と２１０６が残る。
【０２２０】
ステップＳ６１２は、分岐処理であり、未処理の物体領域存在区間が存在していればステップＳ６００へ、存在していなければ処理を終了する。ステップＳ６００へ分岐した場合、未処理の物体領域存在区間の中央フレームを新たな参照フレームとして、未処理の物体領域存在区間がなくなるまで、処理を繰り返す。図３７の（ｂ）中では、未処理の物体領域存在区間２１０５の中央フレーム２１０７を新たな参照フレームとして処理し、新たな参照物体領域一定区間２１０８と未処理の物体領域存在区間２１０９が生じた例を示している。
【０２２１】
第６実施形態
続いて、これまでの各実施形態において、１つの物体（オブジェクト）を複数の領域に分けて物体領域データを作成する方法について説明する。
【０２２２】
これまでは、１つの物体に対して１つの変換パラメータを求めていた。しかし、見かけの形状が大きく変化するような物体の場合、物体をいくつかの領域に分割し、それぞれの領域に対して変換パラメータを用いる方が良い場合がある。例えば、歩行している人間では、頭や胴体の部分は動きが少ないが、手足は激しく動作する。人間を１つの物体として扱うよりも、頭／胴体／手／足と別の領域に分割する方が、各部の変換パラメータを安定して求めることができる。
【０２２３】
１つの物体を複数の図形で表わす場合には、物体を複数の領域に分割する処理が必要となる。この処理にはどのような方法を用いてもよいが、例えば人手で直接入力する方法がある。この場合、例えば、マウス等のポインティングデバイスを用いて、画像上で領域を矩形や楕円で囲む、あるいはポインティングデバイスの軌跡により領域を指定する、などの操作で実現することができる。また、人手ではなく自動で行う場合には、例えば、物体の動きのクラスタリングで実現する方法がある。これは、連続するフレーム間で物体中の各領域がどのような動きをしたかを相関法（例えば、画像解析ハンドブック、第ＩＩ部、第３章、東京大学出版会、１９９１を参照）や勾配法（例えば、Ｄｅｔｅｒｍｉｎｉｎｇ  ｏｐｔｉｃａｌ  ｆｌｏｗ，  Ｂ．  Ｋ．  Ｐ．  Ｈｏｒｎ  ａｎｄ  Ｂ．  Ｇ．  Ｓｃｈｕｎｃｋ，  Ａｒｔｉｆｉｃｉａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ，  Ｖｏｌ．１７，  ｐｐ．１８５−２０３，  １９８１を参照）などにより求め、これらの動きの似ているものだけをまとめて領域を形成する方法である。
【０２２４】
図３８に、オプティカルフローの似ているものをまとめて領域分割を行う様子を示す。
【０２２５】
また、図３９に、物体を複数の領域で記述するためのデータ構造の一例を示す。これは物体を単一の領域で記述するデータ構造（図１８）を拡張したものであり、２９０６以下のデータは図１８と共通である。２９０２に分割した領域の数を保持し、２９０５以降に各領域のデータを保持する。さらに、図１５に示すように穴の空いた領域についても、穴を１つの領域として表現し、図３９のデータ構造で扱うことが可能である。
【０２２６】
第７実施形態
次に、これまでの各実施形態により得られる物体領域データの利用例について説明する。
【０２２７】
例えば、物体領域データに該物体（オブジェクト）に関連する関連情報を付加するようにしてもよい。この場合、映像を閲覧中のユーザが映像中の物体を指示する（例えばマウスでクリックする）ことにより、該物体の関連情報を呈示するような、ハイパーメディアアプリケーションを実現することができる。
【０２２８】
その際、映像や物体はどのようなものであってもよい。例えば、映像が映画などのコンテンツ、物体が俳優等の登場人物もしくは他の登場物体、関連情報がその俳優もしくはその役柄等に関する説明であれば、映画を視聴している視聴者は、所望の俳優に関する説明をその俳優の画像をクリックするだけで閲覧することができる。同様に、電子百科事典、電子カタログ等のあらゆる電子コンテンツに適用可能である。
【０２２９】
関連情報は、文字、音声、静止画、動画、あるいはそれらを適宜組み合わせたものであってもよいし、プログラムもしくは計算機の動作を記述したデータであってもよい。前者の場合には情報が呈示され、後者の場合にはプログラム等が実行される。
【０２３０】
物体領域データには、関連情報を付加する代わりに、その関連情報を取得するためのアドレス等のポインタ情報を付加してもよい。
【０２３１】
また、例えば、関連情報にキーワードを記述しておけば、物体をキーワード検索することができる。さらに、関連情報にその物体から抽出した、シェープ、テクスチャ、アクティビティ、カラーなどの特徴量を記述しておけば、そのような特徴量をもとにオブジェクト検索することができる。
【０２３２】
また、例えば、物体領域データを解析することにより得られる、物体のシェープ、テクスチャ、アクティビティ、カラーなどの特徴量に基づいて、不審な人物等の監視を行う、監視システムを実現することができる。
【０２３３】
次に、映像データや物体領域データの提供方法について説明する。
【０２３４】
本実施形態の処理により作成された物体領域データがユーザの用に供される場合には、作成者側からユーザ側に何らかの方法で物体領域データを提供する必要がある。この提供の方法としても以下に例示するように種々の形態が考えられる。
（１）映像データとその物体領域データとその関連情報とを１つ（または複数の）記録媒体に記録して同時に提供する形態
（２）映像データとその物体領域データとを１つ（または複数の）記録媒体に記録して同時に提供するが、関連情報は別途提供するかもしくは提供しない（後者は例えば提供しなくてもユーザがネットワーク経由等で別途取得できる場合）形態
（３）映像データを単独で提供し、別途、物体領域データと関連情報とを１つ（または複数の）記録媒体に記録して同時に提供する形態
（４）映像データ、物体領域データ、関連情報を別々に提供する形態
上記は主に記録媒体により提供する場合であるが、その他にも、一部または全部を通信媒体で提供する形態も考えられる。
【０２３５】
第８実施形態
以下では、本発明の物体領域表現方法をハイパーメディアに応用した例について説明する。
【０２３６】
物体（オブジェクト）に関連情報を結び付けるハイパーリンクでは、物体がユーザによって指定されたことを検出する必要がある。ここでは指定された点が時空間物体領域の内部にあるかあるいは外部にあるかを判定する方法の一例を示す。
【０２３７】
なお、本実施形態では、ユーザが（主にＧＵＩ画面上で）物体を指示することにより、関連情報を呈示（文字、静止画、動画等の表示、音声の出力等）させ、あるいは関連するプログラムを実行させるような場合を例にとって説明する。
【０２３８】
図４０に、本実施形態に係る情報処理装置の構成例を示す。図４０に示されるように、本情報処理装置は、映像データ表示部３０１、制御部３０２、関連情報呈示部３０３、指示入力部３０４を備えている。
【０２３９】
映像データ表示部３０１は、図示しない記録媒体等から入力した映像データを液晶表示装置もしくはＣＲＴ等に表示するためのものである。
【０２４０】
指示入力部３０４は、ユーザがマウス等のポインティングデバイスもしくはキーボードなどを用いて、液晶表示装置もしくはＣＲＴ等に表示された映像中の物体を指示するなどの操作を行うことを可能とし、そのユーザからの入力を受け付けるためのものである。
【０２４１】
制御部３０２は、詳しくは後述するが、例えばユーザが画面上で指示した座標と図示しない記録媒体等から入力した物体領域データとに基づいてユーザが映像中の物体を指示したか否か判定する。
【０２４２】
関連情報呈示部３０３は、制御部３０２により物体が指示されたと判定されたときに、物体領域データに関連情報が付加されている場合には該関連情報を呈示し、物体領域データに関連情報へのポインタ情報が付加されている場合には該ポインタ情報をもとに関連情報を（記録媒体やネットワークを介したサーバ等から）取得して呈示する。
【０２４３】
なお、関連情報がプログラムや計算機の動作を記述したデータである場合には、当該プログラム等が実行される。
【０２４４】
また、物体が指示された場合に、関連情報の呈示等を行うのではなく、他のアクションが取られる場合には、関連情報呈示部３０３の代わりに該当する処理部が実装される。
【０２４５】
もちろん、本実施形態もソフトウェアによっても実現可能である。
【０２４６】
さて、以下、図４１の例を用いて、本実施形態の処理手順について説明する。
【０２４７】
図４１において、参照物体領域を２２０１、対象フレームを２２０２とする。ユーザによって指定された点が２２０３であり、その点の参照フレームにおける位置が２２０４である。
【０２４８】
図４２に、本実施形態の処理手順の一例を示す。ただし、図４２のフローチャートでは、映像の再生中に表示されている映像内をマウスカーソル等のポインティングデバイスを用いて指示された際に指定された点が時空間物体領域の内部にあるかあるいは外部にあるかを判定する処理についてのみ示している（基本的には制御部３０２の処理に相当するものである）。
【０２４９】
ステップＳ７００として、対象フレーム番号および指定された点の座標を取得する。すなわち、ポインティングデバイス等により指示された画面上の座標が、映像中の画像のどこに相当するかを計算する。さらに、指示された瞬間に再生を行っていた映像のフレーム番号を取得する。なお、フレーム番号ではなく、タイムスタンプを用いてもよい（以下では、フレーム番号として説明する）。
【０２５０】
ここで、映像に付随している映像中の物体の物体領域データから、上記対象フレーム番号において映像中に存在している物体を選択するものとする。これは、物体領域データにおける先頭フレーム番号および末尾フレーム番号を参照することにより容易に実行できる。
【０２５１】
当該フレームに（指示できる）物体が存在しない場合には、この時点で処理は終了となる。
【０２５２】
なお、以下の処理は、対象となる物体が複数存在する場合には、各物体について、同時にまたは例えば指示された物体が得られるか最後の物体になるまで順次に繰り返し行うものとする。
【０２５３】
ステップＳ７０１では、対象物体について、近似変換パラメータ軌跡から変換パラメータを算出する。この変換パラメータは、参照物体領域から対象物体領域への変換を示している。
【０２５４】
たとえば、図２９の例でユーザが画像をクリックした際の対象フレーム番号は１０であったとする。この時、動画像が１０フレーム／秒であったとすると、タイムスタンプは１．０（秒）である。０００３の節点時刻を見ると、時刻１．０は１番目の０．０と２番目の２．０の間であるので、時刻１．０に対応する近似関数は１番目と２番目の節点間の関数ということがわかる。両節点におけるパラメータの値はそれぞれ０．０と−１６．８であることが０００３の記述からわかり、さらにこの区間の関数ＩＤは１、関数パラメータは４．２ということもわかる。これらの情報と図２８の式を用いてパラメータａ０の時刻０．０から２．０までの区間の近似関数はａ０＝２．１ｔ２−１２．６ｔであることが算出される。この式に、ｔ＝１．０を代入してａ０の値は−１０．５と算出される。ａ１のパラメータ値も同様にａ１＝５．４ｔに、ｔ＝１．０を代入して５．４と算出される。
【０２５５】
ステップＳ７０２では、指定された点を逆変換して、参照フレームにおける位置を求める。
【０２５６】
先ほどの例では、平行移動モデルでパラメータが（ａ０，ａ１）＝（−１０．５，５．４）と算出されたが、例えばユーザにより指定された座標が（５０，７０）であったとすると、平行移動の逆変換は（５０，７０）−（−１０．５，５．４）＝（６０．５，６４．６）となる。
【０２５７】
別の例として、例えば、変換がａｆｆｉｎｅ変換である場合に、図４１において点２２０３から点２２０４を求めるには、数式（８）を用いればよい。
【０２５８】
【数２】
0004031184.tif 000003
【０２５９】
点２２０３の座標を（ｘ’、ｙ’）、点２２０４の座標を（ｘ，ｙ）とする。
【０２６０】
ステップＳ７０３では、その点が参照物体領域の内部にあるか外部にあるかを判定する。
【０２６１】
内外判定の方法は、使用されている物体領域の表現方法によって異なる。以下では、ビットマップ表現と多角形表現の場合を例として内外判定の方法を説明する。
【０２６２】
参照物体領域がビットマップで表現されているとき、図４３の手順に従って、内外判定を行う。参照物体領域のビットマップ表現とは、例えば、物体領域内を１、物体領域外を０で表現することがあげられる。ステップＳ８０２によって算出された点の位置のビットマップ情報を、ステップＳ８０３で参照して値が１のとき物体領域内にあり、０のとき物体領域外にあると判定できる。
【０２６３】
また、参照物体領域が多角形で表現されているとき、図４４の手順に従って、内外判定を行う。例えば、図４５に示す参照物体領域多角形において、点２５０１と多角形の２つの隣り合った頂点を結ぶベクトル２５０２および２５０３を生成する。ベクトルは３次元とし、Ｚ座標を０としておく。また、ベクトルの長さが１となるように正規化しておく。２つのベクトルの外積およびベクトル同士のなす角を、１つずつ頂点をずらしながら全ての頂点について算出する。外積ベクトルは多角形に対して垂直であり、Ｚ座標は−１か１の値を取る。算出した角度に外積ベクトルのＺ座標をかけあわせ加算していくと、点が多角形内部にある場合は−３６０度もしくは３６０度になり、多角形外部にある場合はそれ以外の値をとる。以上のようにして内外判定を行うことができる。
【０２６４】
また、参照物体領域が順序のついた代表点で表現されている場合に、それをいったんビットマップに展開してから、内外判定を行う方法も可能である。
【０２６５】
まず、参照物体領域の特徴点をその順序に従って結び多角形を生成する。参照物体領域が多角形表現されている場合に内外判定を行う方法については、上述の通りである。生成した多角形をビットマップに展開するには、多角形の全ての辺をあらわす直線の式を求める。それらの式から、多角形内部を表現する連立不等式をたてる。
【０２６６】
簡単な例として多角形が長方形である場合を図４６に示す。長方形の各辺の式が図４６に示すように得られているとき、多角形内部を表現する連立不等式は数式（９）のように求められる。
【０２６７】
【数３】
0004031184.tif 000004
【０２６８】
ビットマップの各画素の座標がこの連立不等式を満たせば、その画素の値を１とし、そうでない場合は画素値を０とすることによって、ビットマップへ展開することが可能である。展開されたビットマップを用いて内外判定を行う方法については上述の通りである。
【０２６９】
さて、以上のような判定の結果、ある物体領域が指示されたことが検出された場合には、それを契機として所定の処理が行われる。
【０２７０】
例えば、物体領域データに含まれている関連情報へのポインタを参照し、このポインタ情報に基づいて関連情報を取得し、その表示等を行う（図４０の構成例では、これを関連情報呈示部３０３により行う）。また、関連情報としてプログラムが指定されている場合には、指定プログラムを実行したり、またその他、指定されている所定の動作を行う。なお、物体領域データに関連情報そのものが記述されている場合にはこれを表示等すればよい。
【０２７１】
図４７に、関連情報として映像中の物体の説明が付与されている場合の一例を示す。映像８００の再生中にポインティングデバイス８０２により指示された座標が物体８０１（を近似した図形の）領域内部であった場合、関連情報８０３が表示される。
【０２７２】
なお、以上の各機能は、ソフトウェアとしても実現可能である。
【０２７３】
また、本実施形態は、コンピュータに所定の手段を実行させるための（あるいはコンピュータを所定の手段として機能させるための、あるいはコンピュータに所定の機能を実現させるための）プログラムを記録したコンピュータ読取り可能な記録媒体としても実施することもできる。
【０２７４】
本発明は、上述した実施形態に限定されるものではなく、その技術的範囲において種々変形して実施することができる。例えば、各実施形態は単独で説明したが、複数の実施形態を適宜組み合わせてもよい。本願発明は上記各実施形態に限定されるものではなく、実施段階ではその趣旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組合わせた効果が得られる。さらに、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題の少なくとも１つが解決でき、発明の効果の欄で述べられている効果の少なくとも１つが得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【０２７５】
【発明の効果】
本発明によれば、映像中における対象となる物体の領域を、参照物体領域と変換パラメータに基づいて記述することにより、映像中の所望の物体の領域を少ないデータ量で記述でき且つその作成やそのデータの扱いも容易にすることができる。
【０２７６】
また、本発明によれば、ユーザによる映像中の物体の指示の判定を容易にすることができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係る物体領域情報生成装置の構成例を示す図。
【図２】同実施形態における処理手順の一例を示すフローチャート。
【図３】物体領域のオプティカルフロー算出方法の一例を説明するための図。
【図４】物体領域のオプティカルフロー算出方法の他の例を説明するための図。
【図５】１つの変換パラメータを時間関数で近似表現する例を説明するための図。
【図６】参照物体領域がビットマップ表現されている場合の物体領域データの記述フォーマットの一例を示す図。
【図７】同実施形態における処理手順の他の例を示すフローチャート。
【図８】物体領域情報生成装置の他の構成例を示す図。
【図９】同実施形態における処理手順のさらに他の例を示すフローチャート。
【図１０】物体の領域を楕円で近似する例について説明するための図。
【図１１】物体の領域を近似する楕円の代表点を求める例について説明するための図。
【図１２】近似図形を平行四辺形とした場合の代表点の例について説明するための図。
【図１３】近似図形を多角形としたときの代表点の例について説明するための図。
【図１４】物体領域近似図形と代表点の例を示す図。
【図１５】穴のある物体領域を近似図形で表した例を示す図。
【図１６】物体領域の近似図形の代表点同士を対応付ける方法について説明するための図。
【図１７】近似に用いる図形の種類と変換パラメータを求めることができる変換モデルとの関係を示す図。
【図１８】参照物体領域が図形近似されている場合の物体領域データの記述フォーマットの一例を示す図。
【図１９】物体を矩形で近似した様子を示す図。
【図２０】傾斜した細長い物体を傾斜を持たない矩形で近似した様子を示す図。
【図２１】物体をその傾斜に応じた傾斜を持つ矩形で近似した様子を示す図。
【図２２】近似矩形を求める処理手順の一例を示すフローチャート。
【図２３】近似矩形から近似楕円を求める方法について説明するための図。
【図２４】近似矩形から近似楕円を求める処理手順の一例を示すフローチャート。
【図２５】物体領域データ中のパラメータ情報のデータ構造の一例を示す図。
【図２６】近似関数を用いた場合のパラメータ情報のデータ構造の一例を示す図。
【図２７】物体領域記述情報のデータ構造の他の例を示す図。
【図２８】関数ＩＤと関数形式と関数パラメータと制約条件との対応の一例を示す図。
【図２９】本発明による代表点軌跡データのデータ構造の特徴を示す図。
【図３０】代表点の時系列座標を曲線で近似する処理を示すフローチャート。
【図３１】サンプリング情報を含む物体領域データの記述フォーマットの一例を示す図。
【図３２】誤差最小となる参照物体領域を選択する処理手順の一例を示すフローチャート。
【図３３】物体領域存在区間の中央フレームを参照物体領域とする処理手順の一例を説明するための図。
【図３４】参照物体領域区間の先頭を参照物体領域とする処理手順の一例を示すフローチャート。
【図３５】参照物体領域区間の先頭を参照物体領域とする処理手順の一例を説明するための図。
【図３６】参照物体領域区間の中間を参照物体領域とする処理手順の一例を示すフローチャート。
【図３７】参照物体領域区間の中間を参照物体領域とする処理手順の一例を説明するための図。
【図３８】オプティカルフローを用いて１つの物体を動きが似ている領域に分割する様子を説明するための図。
【図３９】１つの物体を複数の領域で記述するための物体領域データの記述フォーマットの一例を示す図。
【図４０】同実施形態に係る情報処理装置の構成例を示す図。
【図４１】指定された位置情報を持つ点が時空間物体領域の内部にあるか外部にあるかを判定する方法について説明するための図。
【図４２】指定された位置情報を持つ点が時空間物体領域の内部にあるか外部にあるかを判定するための処理手順の一例を示すフローチャート。
【図４３】参照物体領域がビットマップ表現されているときの内外判定方法の一例を示すフローチャート。
【図４４】参照物体領域がポリゴン表現されているときの内外判定方法の一例を示すフローチャート。
【図４５】ポリゴンと点の内外判定を行う方法について説明するための図。
【図４６】ポリゴンで表現されている参照物体領域をビットマップ表現に展開する方法について説明するための図。
【図４７】物体領域データを利用したハイパーメディアコンテンツの表示例を示す図。
【符号の説明】
２…映像データ記憶部
４…物体領域処理部
５…図形近似部
６…変換パラメータ算出部
８…関数近似部
１０…領域データ記憶部
３０１…映像データ表示部
３０２…制御部
３０３…関連情報呈示部
３０４…指示入力部
【図１】
0004031184.tif 000005
【図２】
0004031184.tif 000006
【図３】
0004031184.tif 000007
【図４】
0004031184.tif 000008
【図５】
0004031184.tif 000009
【図６】
0004031184.tif 000010
【図７】
0004031184.tif 000011
【図８】
0004031184.tif 000012
【図９】
0004031184.tif 000013
【図１０】
0004031184.tif 000014
【図１１】
0004031184.tif 000015
【図１２】
0004031184.tif 000016
【図１３】
0004031184.tif 000017
【図１４】
0004031184.tif 000018
【図１５】
0004031184.tif 000019
【図１６】
0004031184.tif 000020
【図１７】
0004031184.tif 000021
【図１８】
0004031184.tif 000022
【図１９】
0004031184.tif 000023
【図２０】
0004031184.tif 000024
【図２１】
0004031184.tif 000025
【図２２】
0004031184.tif 000026
【図２３】
0004031184.tif 000027
【図２４】
0004031184.tif 000028
【図２５】
0004031184.tif 000029
【図２６】
0004031184.tif 000030
【図２７】
0004031184.tif 000031
【図２８】
0004031184.tif 000032
【図２９】
0004031184.tif 000033
【図３０】
0004031184.tif 000034
【図３１】
0004031184.tif 000035
【図３２】
0004031184.tif 000036
【図３３】
0004031184.tif 000037
【図３４】
0004031184.tif 000038
【図３５】
0004031184.tif 000039
【図３６】
0004031184.tif 000040
【図３７】
0004031184.tif 000041
【図３８】
0004031184.tif 000042
【図３９】
0004031184.tif 000043
【図４０】
0004031184.tif 000044
【図４１】
0004031184.tif 000045
【図４２】
0004031184.tif 000046
【図４３】
0004031184.tif 000047
【図４４】
0004031184.tif 000048
【図４５】
0004031184.tif 000049
【図４６】
0004031184.tif 000050
【図４７】
0004031184.tif 000051