JP4112819B2 - 物体領域情報生成装置及び物体領域情報記述プログラム - Google Patents
物体領域情報生成装置及び物体領域情報記述プログラム Download PDFInfo
- Publication number
- JP4112819B2 JP4112819B2 JP2001142257A JP2001142257A JP4112819B2 JP 4112819 B2 JP4112819 B2 JP 4112819B2 JP 2001142257 A JP2001142257 A JP 2001142257A JP 2001142257 A JP2001142257 A JP 2001142257A JP 4112819 B2 JP4112819 B2 JP 4112819B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- frame
- region
- function
- area
- 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
Links
Images
Description
【発明の属する技術分野】
本発明は、映像中の物体の領域に関する情報を生成するための物体領域情報生成装置、及び物体情報記述プログラムに関する。
【0002】
【従来の技術】
ハイパーメディアは、映像、音声、テキストなどのメディアの間にハイパーリンクと呼ばれる関連情報を付与し、相互に参照できるようにしたものである。映像を中心にした場合、例えば映像中の登場物体に関連情報が付与されており、この物体が指示されると関連情報の表示を行うというものがハイパーメディアの代表例である。このとき、映像中の物体は映像のフレーム番号もしくはタイムスタンプと映像中の領域を特定する情報とで表現され、映像データの中にもしくは別データとして記録されている。
【0003】
映像中の領域を特定する方法としては、マスク画像がよく利用されてきた。これは指定領域内の場合と指定領域外の場合で異なる画素値を与えて構成する画像である。例えば、領域内の場合は1、領域外の場合は0という画素値を与えるのが最も簡単な方法である。また、CGなどに使われるα値を利用することもある。通常、α値は256階調の値を表現できるので、そのうちの一部を使い、例えば指定領域内の場合は255、指定領域外の場合は0と表現する。このようなマスク画像により画像中の領域が表現されている場合、あるフレームにおける画素が、指定領域内であるかどうかを判定するには、そのフレームに該当するマスク画像の該当画素の値を読み取り、0であるか1であるかにより簡単に判定することができる。マスク画像はどのような形の領域でも、また不連続な領域でも表現できるという自由度を持っているが、画像サイズと同じサイズの画素を持つ必要がある。
【0004】
マスク画像のデータ量を削減するために、マスク画像の圧縮がよく利用される。0、1の2値のマスク画像の場合には、2値画像としての処理ができるため、ファクシミリ等で用いられている圧縮方法が利用されることが多い。また、ISO/IEC動画圧縮標準化グループMPEG(Moving Picture Experts Group)が標準化しているMPEG−4では、0,1の2値のマスク画像の他、α値を利用したマスク画像までを圧縮対象とした任意形状符号化を採用することになっている。これは、動き補償を用いた圧縮手法であり、圧縮効率が向上するが、その分、圧縮・復号過程は複雑になる。
【0005】
【発明が解決しようとする課題】
以上のように映像中のある領域を表現するにはマスク画像かあるいはマスク画像を圧縮したものを利用することが多かったが、領域を特定するためのデータとしては、より簡単にかつ高速に取り出すことが可能でデータ量も小さく、そして容易に扱うことができる形態のものが望まれている。すなわち、映像中の所望の物体の領域を表現する方法として、マスク画像ではデータ量が多くなるという問題があり、また、マスク画像を圧縮して用いると符号化・復号化が複雑になり、しかも直接データを編集することができないためハンドリングが難しいという問題があった。
【0006】
また、物体領域の位置情報のみを表現して、奥行きの情報が欠如していた。物体が物陰に一時隠れてしまう状態を表現することができなかった。カメラが物体を追いながら撮影されている場合には、その物体の真の動きを表現していない問題があった。よって、検索において、奥行きの情報や、物体が他の物の陰に隠れてしまうオクル−ジョンや、カメラの動きを考慮した検索などの処理が困難であった。このため、検索において、全く関係ない物体に対してもすべて処理する必要があった。
【0007】
本発明は、上記事情を考慮してなされたもので、映像中の所望の物体の領域を少ないデータ量で記述でき且つその作成やそのデータの扱いも容易にする物体領域情報生成装置、及び物体領域情報記述プログラムを提供することを目的とする。
【0008】
また、本発明は、映像中の物体に対する効率的、効果的な検索を可能にする物体領域情報生成装置、及び物体領域情報記述プログラムを提供することを目的とする。
【0009】
【課題を解決するための手段】
上記した課題を解決し目的を達成するために、本発明は以下に示す手段を用いている。
【0010】
(1)本発明の一態様による物体領域情報生成装置は、映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報生成装置であって、フレーム毎に前記任意の物体の領域を図形で近似し、フレーム毎に該図形を表す複数の代表点を抽出し、前記複数の代表点のうちの少なくとも一点を基準代表点とし、該基準代表点の位置データと、前記基準代表点に対する残りの代表点の相対位置データとを、フレームの進行に沿って並べることにより得られる軌跡を関数で近似し、該関数を用いて該物体の領域に関する情報を生成するものである。
【0011】
(2)本発明の他の態様による物体領域情報生成装置は、映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報生成装置であって、フレーム毎に前記任意の物体の領域を図形で近似し、フレーム毎に該図形を表す複数の代表点を抽出し、基準フレームにおける近似図形の前記複数の代表点の位置データと、他のフレームにおける前記基準フレームの複数の代表点に対応する代表点の相対位置データとを、フレームの進行に沿って並べることにより得られる軌跡を関数で近似し、該関数を用いて該物体の領域に関する情報を生成するものである。
【0012】
(3)本発明の別の態様による物体領域情報生成装置は、映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報生成装置であって、フレーム毎に前記任意の物体の領域を図形で近似し、フレーム毎に該図形を表す複数の代表点を抽出し、前記複数の代表点の位置を特定可能なデータをフレームの進行に沿って並べることにより得られる軌跡を関数で近似し、該関数、および前記図形の奥行きを示すデータを用いて該物体の領域に関する情報を生成するものである。
【0013】
(4)本発明のさらに他の態様による物体領域情報生成装置は、映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報生成装置であって、フレーム毎に前記任意の物体の領域を図形で近似し、フレーム毎に該図形を表す複数の代表点を抽出し、前記複数の代表点の位置を特定可能なデータをフレームの進行に沿って並べることにより得られる軌跡を関数で近似し、該関数、および前記図形または各々の前記代表点が見えている状態にあるフレーム区間、あるいは見えていない状態にあるフレーム区間を特定するフラグ情報を用いて該物体の領域に関する情報を生成するものである。
【0014】
(5)本発明のさらに別の態様による物体領域情報生成装置は、映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報生成装置であって、 フレーム毎に前記任意の物体の領域を図形で近似し、フレーム毎に該図形を表す複数の代表点を抽出し、前記複数の代表点の位置を特定可能なデータをフレームの進行に沿って並べることにより得られる軌跡を関数で近似し、該関数、および前記図形が前記複数フレームにおいて存在した範囲を示す存在範囲情報を用いて該物体の領域に関する情報を生成するものである。
【0015】
(6)本発明のさらに他の態様による物体領域情報生成装置は、複数フレームをその重複部分を重ねるようにして生成されるパノラマ画像中を推移する任意の物体の領域に関する情報を記述するための物体領域情報生成装置であって、前記パノラマ画像中の前記任意の物体の領域を図形で近似し、前記パノラマ画像中を推移する前記図形を表す複数の代表点を抽出し、前記複数の代表点の該パノラマ画像中における位置を特定可能なデータをフレームの進行に沿って並べることにより得られる軌跡を関数で近似し、該関数を用いて該物体の領域に関する情報を生成するものである。
【0017】
また、装置に係る本発明は、コンピュータに当該発明に相当する手順を実行させるための(あるいはコンピュータを当該発明に相当する手段として機能させるための、あるいはコンピュータに当該発明に相当する機能を実現させるための)プログラムを記録したコンピュータ読取り可能な記録媒体としても成立する。
【0018】
本発明によれば、複数フレームに渡る映像中の物体の領域を、該物体の領域に対する近似図形の代表点の位置データまたはそれを特定可能なデータ(例えば、代表点間差分ベクトル値)をフレームの進行に沿って並べたときの軌跡を近似した関数のパラメータとして記述することにより、複数フレームに渡る映像中の物体の領域を少量の関数パラメータのみによって記述することができるため、物体の領域を特定するためのデータの量を効果的に削減することができ、またハンドリングを容易にすることができる。特に物体が剛体の場合は、相対位置は絶対位置よりも変動が少なく、その軌跡を関数近似したときに、コンパクトな情報量で記述することができる。また、近似図形からの代表点の抽出や、近似曲線(直線の場合も含む)のパラメータの生成も容易に行うことができる。また、近似曲線のパラメータから近似図形を生成することも容易に行うことができる。また、映像中の物体の通過位置、ある地点での滞留時間、あるいは軌跡などに基づいて、映像中の物体の検索を容易に行うことができる。また、操作性の良いハイパーメディア・アプリケーションを実現できる。
【0019】
また、本発明によれば、平面情報である2次元的位置情報以外に、奥行きに関する情報を付与することにより、奥行き方向を考慮した検索、例えばカメラからの距離情報で物体を検索が可能となる。
また、物体が他の物の陰に隠れてしまうオクル−ジョンの状態は、物体領域の軌跡情報の他にオクル−ジョンかどうか(つまり見えているかどうか)を示すフラグを付帯させることにより表現することにより、オクル−ジョンを考慮した効率的な検索が可能になる。
また、検索の効率を上げるために、物体領域を関数で表現するだけでなく、物体が時空間的に存在する位置を囲む図形を付帯させることにより、全く別の場所に存在する物体を検索の候補から除外することが可能となる。
また、例えばカメラが物体領域を追いかけながら撮影している場合には、連続するフレームを画像変換を施してつながるように貼り合わせるモザイキングによるパノラマ画像を作成し、その作成された画像上での物体の領域情報を記述することにより、カメラが移動していてもモザイキング画像のある点を基点とした座標系で物体の領域情報を一意に記述することができる。
【0020】
【発明の実施の形態】
以下図面を参照して本発明による物体領域情報生成装置、及び物体領域情報記述プログラムの実施例を説明する。
【0021】
第1実施例
図1に、本発明の一実施例に係る物体領域情報生成装置(あるいは物体領域データ変換装置とも呼称する)の構成例を示す。
【0022】
物体領域情報生成装置は、映像データ記憶部100、物体領域抽出部101、物体領域の図形近似部102、近似図形の代表点抽出部103、代表点軌跡の関数近似部104、物体領域データ記憶部106を備えている。また、物体領域に関連する関連情報記憶部105を更に備えてもよい。
【0023】
図2は、物体領域情報生成装置の処理の流れの一例を表したフローチャートである。
【0024】
映像データ記憶部100は、映像データが記憶されているもので、例えばハードディスクや光ディスク、半導体メモリなどで構成される。
【0025】
物体領域抽出部101は、映像データにおける一部の領域を抽出する(ステップS1)。この一部の領域とは、典型的には、映像中の特定の人や動植物や車や建物などの「物体の領域」であるが、映像中において物体(オブジェクト)として扱うことのできるものであれば、映像中のどのようなものでもあってもよい。また、独立したものであってもよいし、物の一部(例えば人の頭、車のボンネット、建物の玄関)であってもよいし、物の集合(例えば鳥や魚の群)であってもよい。映像では、連続するフレームには同じ物体が写っていることが多いが、物体自身の動きおよびまたは撮影時のカメラの動きが主な原因になって同一物体に対応する領域がフレーム間で変化することが多い。
【0026】
物体領域抽出部101は、このような注目している物体の動きや変形に対応して各フレームにおける物体(オブジェクト)の領域を抽出するためのものである。具体的な抽出手法としては、全フレームに渡って人手で領域指定する方法や、M.Kass 他,「Snakes:Active countour models」(International Journal of Computer Vision,vol.1,No.4,pp.321−331.July,1988)に記されているようなSnakesと呼ばれる動的輪郭モデルにより物体の輪郭抽出を連続して行う方法、金子他「ロバスト推定を用いたハイパーメディアコンテンツ作成のための高速移動物体追跡法」(情報処理学会技術報告CVIM113−1,1998)に記されているようなブロックマッチングにより求めた物体中の部分領域の移動先から物体全体の変形・移動を推定していく方法、画像解析ハンドブック(第II部第2章,東京大学出版会,1991)に記されているような領域成長・分割により似た色を持つ領域を特定する方法などを用いることができる。
【0027】
図形近似部102は、物体領域抽出部101で抽出された映像中の物体の領域を所定の図形により近似する(ステップS2)。
【0028】
図形の種類としては、矩形、円、楕円、多角形など種々のものが使用可能である。近似に用いる図形の種類は、予め固定的に定めておくようにしていてもよいし、例えば近似する対象物体毎などの所定の単位で図形の種類をユーザが指定できるようにしてもよいし、近似する対象物体毎にその物体の形状等に応じて図形の種類を自動的に選択するようにしてもよい。
【0029】
また、領域の近似方法も、物体領域の外接矩形で近似する方法、この方法で求めた矩形の外接楕円または内接楕円で近似する方法、物体領域の外接楕円で近似する方法、物体領域に対する初期近似多角形を生成した後に物体領域の面積と該近似多角形との誤差が基準以内に収まるように該近似多角形の頂点数を削減していく方法、予め定められた頂点数の多角形で近似する方法など種々の方法がある。また、傾きを持つ図形でより良く近似する方法もある。また、さらに他の幾何学的な量をも加味する方法もあり、例えば、物体領域の重心と近似図形の重心とを一致させるようにする方法、近似図形の面積を物体領域の面積に一定数を乗じた値にする方法など種々の方法がある。
【0030】
図形近似部102は、物体領域抽出部101での抽出結果が入力されるたびに、フレーム毎に行う。もしくは、前後数フレームの領域抽出結果を使って図形近似を行っても良い。数フレームの領域抽出結果を利用する場合には、近似図形の大きさや位置などの変化を数フレームの間で平滑化することにより、近似図形の動きや変形をなめらかにしたり、領域抽出の抽出誤差を目立たなくすることができる。なお、近似図形の大きさは、フレーム毎に異なって構わない。
【0031】
代表点抽出部103は、領域図形近似部102の出力である近似図形を表現する代表点を抽出する(ステップS3)。どのような点を代表点とするかは、どのような近似図形を用いるかにより異なる。例えば、近似図形が矩形の場合には4つもしくは3つの頂点を代表点とすることができ、近似図形が円の場合には中心と円周上の一点としたり直径の両端点としたりすることができる。また、楕円の場合には楕円の外接矩形の頂点を代表点としたり(この場合も4頂点のうち3つで十分である)、2つの焦点と楕円上の1点(例えば短軸上の1点)を代表点としたりすればよい。任意の閉多角形を近似図形とする場合には、各頂点を図形の代表点とすればよい。
【0032】
代表点の抽出は、図形近似部102から1フレーム分の近似図形の情報が出力されるたびに、フレーム単位で行われる。また、各代表点は、水平方向の座標軸Xと、垂直方向の座標軸Yと、により表される。
【0033】
代表点軌跡関数近似部104は、図形代表点抽出部103で抽出された代表点の位置(またはこれを特定可能とする量)の時系列軌跡を時間t(例えば映像に付与されているタイムスタンプ)もしくはフレーム番号fの関数(近似関数)により近似表現する(ステップS4)。この関数は、各代表点毎別々に、かつ、X座標とY座標で別々に表現される。
【0034】
代表点(またはこれを特定可能とする量)がn個である場合、それぞれについてX、Y座標の近似関数が必要になるので、合計2nの近似関数が生成される。
【0035】
代表点軌跡を表す関数としては、直線、スプライン曲線などを用いることができる。
【0036】
以上の一連の処理は、対象となる物体についての出現フレームから消失フレームの間にわたって行われる。
【0037】
求められた近似曲線(直線の場合も含む)は、所定のフォーマットに従って物体領域データとして領域データ記憶部106に記録される。
【0038】
必要に応じて設けられる関連情報記憶部105には、映像データ記憶部100に記憶されている映像データに登場する物体に関する情報(関連情報)や、そのような情報を外部記憶装置あるいはネットワークを介したサーバなどから取得するためのポインタ情報(例えば、関連情報の記録されているアドレス、ファイル名、URLなど)を記憶するためのものである。関連情報は、文字、音声、静止画、動画、あるいはそれらを適宜組み合わせたものであってもよい。また、関連情報は、プログラムもしくは計算機の動作を記述したデータであってもよい(この場合には、当該物体がユーザにより指定されると、計算機が所望の動作を行うことになる)。関連情報記憶部105は映像データ記憶部100と同様に例えばハードディスクや光ディスク、半導体メモリなどで構成される。
【0039】
領域データ記憶部106は、代表点軌跡関数近似部104の出力である代表点の位置(またはこれを特定可能とする量)の時系列的な軌跡を近似した曲線式を表現するデータを含む物体領域データが記憶される記憶媒体である。関連情報記憶部105を備える構成では、関数で表現された領域に対応する物体に関する関連情報が関連情報記憶部105に記憶されている場合には、物体領域データには関連情報そのものや関連情報の記録されているアドレスを併せて記録することができる。関連情報記憶部105に関連情報が記録されているアドレスの情報が記憶されている場合には、当該アドレス情報を併せて記録することができる。領域データ記憶部106も映像データ記憶部100等と同様に例えばハードディスクや光ディスク、半導体メモリなどで構成される。
【0040】
なお、映像データ記憶部100、関連情報記憶部105、領域データ記憶部106は、別々の記憶装置によって構成されていてもよいし、それらの全部または一部が同一の記憶装置によって構成されていてもよい。
【0041】
このような物体領域情報生成装置は、計算機上でソフトウェアを実行する形で実現することもできる。
【0042】
なお、この物体領域情報生成装置での処理、特に、物体領域抽出部101や図形近似部102の処理においてユーザの操作を介入させる形態を取る場合には、映像データを例えばフレーム単位で表示させ、ユーザの指示入力等を受け付けるGUIが用いられる。ただし、図1では省略している。
【0043】
次に、より具体的な例を用いながらこの物体領域情報生成装置の動作について説明する。
【0044】
ここでは、物体領域を多角形により近似し、近似多角形の頂点を代表点とし、近似関数として2次の多項式スプライン関数を用いる場合を例にとって説明する。なお、以下の説明で、近似図形に多角形を用いる例において、多角形の頂点という場合における「頂点」は一般的には代表点のことを意味することになる。
【0045】
図3の(a)〜(c)は、物体領域抽出部101による物体の領域を抽出する処理から、領域図形近似部102による領域を図形で近似する処理、図形代表点抽出部103による図形の代表点を抽出する処理、代表点軌跡関数近似部104による代表点軌跡を関数で近似する処理までの一連の処理の概要をより具体的に説明するための図である。
【0046】
図3の(a)において、200は処理対象となっている映像中の1フレームを示している。
【0047】
201は抽出対象となっている物体の領域を示している。この物体の領域201を抽出する処理は物体領域抽出部101において行われる。
【0048】
202は物体の領域を多角形で近似したもの(近似多角形)である。物体の領域201からその近似多角形202を求める処理は、領域図形近似部102において行われる。
【0049】
図3の(b)は、複数のフレームにわたる近似図形の代表点、すなわちこの例における近似多角形202の頂点の推移(軌跡)およびその推移の近似曲線を表現したものである。
【0050】
本実施例では、近似図形の複数の代表点のうちから選択された特定の代表点(全フレームにわたって同一のものとする)を、基準代表点と呼び、これをV0 と表記する。この例の場合、近似多角形202の複数の頂点のうちの任意の1つの頂点を基準代表点V0 とする。
【0051】
選択の方法は、最大または最小のX座標値またはY座標値を持つ点を選択する方法、フレーム中で最も右上または右下または左下または左上にある点を選択する方法など、種々の方法がある。
【0052】
2番目以降のフレームでは、1つ前のフレームに対応する基準代表点V0 に対応するものが、当該フレームにおける複数の代表点のうちのいずれであるかを判定することによって、基準代表点V0 の選択が行われる。
【0053】
どの代表点が1つ前のフレームにおける基準代表点V0 の移動先であるかを判定する方法は、例えば、1つ前のフレームにおける基準代表点V0 に最も近い当該フレームにおける点を代表点とする方法、1つ前のフレームにおける近似図形の重心と当該フレームにおける近似図形の重心とを一致させた場合に1つ前のフレームにおける基準代表点V0 に最も近い当該フレームにおける点を代表点とする方法、1つ前のフレームにおける近似図形の複数の代表点と当該フレームにおける近似図形の複数の代表点を照らし合わせることによって、当該フレームにおける基準代表点V0 を求める方法、1つ前のフレームにおける対象の物体の領域の映像データと、当該フレームにおける映像データを照らし合わせることによって、当該フレームにおける基準代表点V0 を求める方法など、種々の方法がある。
【0054】
なお、隣接フレームにおける基準代表点V0 以外の代表点の対応は、上記と同様の方法による方法と、基準代表点V0 を起点として予め定めた順番で他の代表点を対応させてしまう方法、などがある。
【0055】
これらの処理は図形代表点抽出部103において行われる。
【0056】
代表点軌跡関数近似部104では、逐次入力されてくる各フレームにおける基準代表点V0 の座標値から、軌跡203を近似する曲線(関数)を求める。各フレームにおける基準代表点V0 の移動先を結んだ軌跡が図3の(b)の203である。
【0057】
基準代表点V0 の座標値はX座標とY座標とを含む。それぞれの座標値は別々に時間tまたはフレーム番号fの関数として近似される。
【0058】
図3の(c)の204は、基準代表点V0 について求められた関数の例である(ここでは基準代表点V0 の1つの座標軸についてのみ示している)。この例は、近似区間がt=0〜5とt=5〜16の2つに分割された場合を示している。
【0059】
図4は、基準代表点V0 のX座標の値を近似する関数を求めている例である。図中の301は物体の存在している時間区間を表しており、黒い点302が基準代表点V0 のX座標の値である。303がその近似関数である。Y座標に対しても、同様にして近似関数が求められる。近似関数として多項式スプライン関数を用いているので、204では節点と呼ばれる点により分割された時間区間毎に多項式が定義されている。ここでは、t=0,5,16がそれぞれ節点時刻となる。
【0060】
ところで、近似図形の基準代表点V0 以外の代表点についても上記と同様にして近似関数を求め、記録することが可能である。
【0061】
また、基準代表点V0 以外の代表点については、当該代表点を当該代表点とは別の代表点(基準代表点でもよい)からの相対的関係、例えば差分ベクトルによって表し、そのベクトルの軌跡により記述する方法もある。
【0062】
以下では、基準代表点V0 以外の代表点については隣接する代表点からの差分ベクトルの軌跡により記述する場合を例にとって説明する。
【0063】
図5は、近似多角形において、基準代表点V0 である1つの頂点と、その他の頂点を表すための差分ベクトルの各々を説明している図である。
【0064】
まず、基準代表点V0 以外の各頂点を、基準代表点V0 から予め定めた順番、例えば時計回りに、V1 ,V2 ,…,VM-1 と書くことにする。ここで、Mは頂点数であるが、図5では5角形であるので、M=5となる。また、頂点V0 からV1 へのベクトルをV0,1 と記述し、同様にベクトルV1,2 ,V2,3 ,…,VM-2,M-1 を定める。それぞれのベクトルは各ベクトルの始点から見たX成分及びY成分の値を持っている(相対位置データ)。
【0065】
図6の黒い点列502は、時間501中の各時刻におけるベクトルV0,1 のX成分の値を表している。
【0066】
なお、これらベクトルを求める処理は図形代表点抽出部103において行われる。
【0067】
代表点軌跡関数近似部104では、各々のベクトルのX成分の値とY成分の値の各々を表現する近似関数503を算出する。
【0068】
物体の形状がほとんど変わらず、物体の移動が平行移動に近い場合には、ベクトルV0,1 ,V1,2 ,…,VM-2,M-1 の値はあまり変化しないため、近似関数と実際の値との誤差が小さくなり、物体領域の記述効率が向上することが期待できる。もしも物体の形状が変化せず、完全な平行移動である場合には、ベクトルV0,1 ,V1,2 ,…,VM-2,M-1 の値はまったく変化しないため、近似関数はすべて直線となり、しかも近似誤差はゼロになる。
【0069】
図7は、代表点軌跡関数近似部104に逐次入力される代表点(この例では物体領域の近似多角形の頂点)の座標値または上記の差分ベクトルの成分値から、それら代表点の座標値またはその差分ベクトルの成分値の近似関数を求める処理の一例をフローチャートにしたものである。
【0070】
ここでは、I番目のフレームに対応する時刻をti (i=0,1,…)とする。また、ν(0) t を時刻tにおけるV0 のX座標値、ν(j) t (j=1,2,…,M−1)を時刻tにおけるVj-1,j のX成分値としている。また、すでに決定しているスプライン関数の節点に対応する時刻tのうち、最大のものをtkとする。
【0071】
まず、ステップS601においてtkおよびiの初期設定を行う。
【0072】
ステップS602では、ある節点tkから節点ti までの区間でν(j) t の近似関数(本実施例では2次の多項式)を求める。近似関数を求める手法は、最小二乗法を用いるのがもっとも一般的である。ただし、この際、近似関数は節点を通過するという条件を付加する必要がある。そのため、ta からtb の区間について求められたν(j) t の近似関数をF(j) ta , tb(t)(j=0,1,…,M−1)と記述すると、区間の開始点ν(j) k=F(j) tk , ti(tk)、区間の終了点ν(j) i=F(j) tk , ti(ti)となる。この条件がないと、節点において多項式スプライン関数が不連続になってしまうためである。
【0073】
次に、ステップS603では近似関数の近似誤差e(j) (j=0,1,…,M−1)を算出する。この近似誤差は、次式により算出される。
e(j) =max |ν(j) th −F(j) tk , ti(th)|
ただし、対象とするhの範囲は、k≦h≦iとする。
【0074】
ステップS604では、各頂点での近似誤差が許容範囲内であるかどうかの判定を行う。許容誤差の範囲はすべての頂点で同じに設定しても良いし、別々の範囲に設定しておいても良い。ひとつでも許容誤差範囲外であればステップS605へ、すべてが許容範囲内であればステップS606へ進む。
【0075】
ステップS605では、1つ前の範囲であるtk からti-1 の区間の近似関数をF(j) tk , ti-1(t)(j=0,1,…,M−1)と決定し、k=i−1とする。
【0076】
ステップS606では、iの値を更新(i←i+1)する。このように、近似関数は近似誤差が許容範囲以内の区間では同じ関数を用いるが、許容誤差が大きくなると、再び最小二乗法を実行して関数を近似し直す。
【0077】
ステップS607は、終了判定処理で、新たな代表点についての座標値(またはその差分ベクトルの成分値)の入力がなければ処理を終了し、まだ代表点の座標値(または成分値)が入力されるならば再びステップS602からの処理を行う。
【0078】
ステップS607で終了判定がなされると、ステップS608で、最後の区間tk からti-1 の近似関数をF(j) tk , ti-1(t)(j=0,1,…,M−1)と決定する。
【0079】
なお、図7ではX座標のみについて説明を行ったが、Y座標についても同様の処理を行う。また、ステップS604の誤差の判定においては、各頂点のX座標およびY座標すべてについての誤差を同時に評価するようにしても良い。
【0080】
なお、代表点軌跡関数近似部104による処理は、当該物体の領域に関する各フレームの代表点の座標値(成分値)が得られる毎に行う方法(例えば各フレームの代表点の座標値(成分値)が得られる毎に近似を行うとともに近似誤差を求め、近似誤差が一定の範囲に収まるように節点を設けて近似区間を適宜分割する方法)や、当該物体の領域に関する全てのフレームの代表点の座標値(成分値)が得られた後に行う方法などがある。
【0081】
また、物体領域の代表点軌跡データを作成する際に、全代表点の全座標の全てについて節点を同一にするようにしてもよい。例えば、代表点の座標値(または成分値)を近似する際に、いずれかの代表点についての近似処理において誤差が基準値を超えて節点が設けられることになった場合には、他のすべての代表点についての近似処理においても強制的に同一の節点を設けるようにする。
【0082】
このようにして得られたスプライン関数などの近似関数は予め定めておいたデータ形式に従って領域データ記憶部106に記録される。
【0083】
以下では、領域データ記憶部106に格納される物体領域データのデータ形式について説明する。なお、ここでは、代表点をスプライン関数により近似する場合を例にとりながら説明するが、代表点を他の関数により近似する場合も同様に可能である。
【0084】
図8に、物体領域データのデータ形式の一例を示す。
【0085】
図形種ID700は、物体領域の近似に用いた図形の種類を特定する。例えば、物体の重心のみ(CENTROID)、矩形(RECTANGLE)、楕円(ELLIPSE)や多角形(POLYGON)などが指定できる。
【0086】
代表点数703は、図形の種類によって定まる代表点の数を表す(ここではM点とする)。
【0087】
代表点軌跡704は、代表点の軌跡を記述しており、代表点の数(M個)だけ並んでいる。基準代表点V0 以外の代表点については隣接する代表点からのベクトルの軌跡により記述する場合、1番目の代表点軌跡には、基準代表点V0 の軌跡が記述されており、2番目の代表点軌跡にはV0,1 が、3番目の代表点軌跡にはV1,2 が、そしてM番目の代表点軌跡にはVM-2,M-1 の軌跡がそれぞれ記述されている。
【0088】
なお、近似図形の基準代表点V0 以外の代表点も基準代表点と同様にして近似関数を求め、記録する場合には、1番目の代表点軌跡には、V0 の軌跡が記述され、2番目の代表点軌跡にはV1 が、3番目の代表点軌跡にはV2 が、そしてM番目の代表点軌跡にはVM-1 の軌跡がそれぞれ記述される。
【0089】
物体出現時間701は、所望の物体が出現した時刻、物体存在期間702は物体の存在していた時間の長さである。物体存在期間702は、物体消失時間で代用することも可能である。また、物体出現時間、物体存在期間とも時間ではなくフレーム番号、フレーム数で記述しておいても良い。なお、701および702の情報は代表点軌跡704内の節点時刻からも得ることができるため、必ずしも記述しなくても良い。
【0090】
なお、物体出現時間/物体出現フレーム、物体存在期間/物体存在フレーム、物体消失時間/物体消失フレームは、現実に映像中で物体が登場したフレームや消えたフレームにより決めてもよいし、その代わりに、例えば、映像中で物体が登場したときより後の任意のフレーム番号を先頭フレーム番号としてもよいし、また先頭フレーム番号以降でかつ映像中で物体が消えたときより前の任意のフレーム番号を最終フレーム番号としてもよい。
【0091】
なお、物体領域データには、物体毎に付与される識別番号であるID番号を付加してもよい。
【0092】
また、1つの物体を複数の近似図形数で近似しても良い。この場合には、物体領域データには、例えば、近似に用いる図形の個数分だけ、図形種IDと代表点数と代表点軌跡が含まれる。
【0093】
図9は、図8の代表点軌跡のデータフォーマットの具体例である。
【0094】
節点数N800は、代表点軌跡を表すスプライン関数の節点の数を表す。各節点に対応するフレームは、時間として表され、節点時刻801に格納される。節点時刻は、節点数だけあるため、配列802として記述しておく。同様に、各節点のx座標についての座標値(またはその差分ベクトルのx成分値等の座標値を特定可能とする量)、y座標についての座標値(またはその差分ベクトルのy成分値等の座標値を特定可能とする量)もそれぞれ節点X803および節点Y805の配列804,806として記述される。
【0095】
一次関数フラグ807は、節点間のスプライン関数として一次関数だけが用いられているかどうかを表す。一部分でも2次の多項式を用いる場合には、このフラグはオフにしておく。このフラグを用いることにより、近似関数として一次関数のみに使われる場合に以下で説明する関数特定情報808、812を一つも記述しなくて済むため、データ量を削減できるというメリットがある。なお、必ずしもこのフラグは必要ではない。
【0096】
関数特定情報に含まれる関数ID809、812,関数パラメータ810、814はそれぞれ多項式スプライン関数の次数と、その係数を特定するための情報を表す。これは、例えば1次多項式を使うならば1、2次多項式を使うならば2というように設定する。もちろん、多項式の最高次数を3次以上とすることも可能である。1次多項式を用いるときは節点のみの情報で十分なので、関数パラメータは記述されないが、2次多項式の場合には係数を特定するための値一つ(例えば、2次の係数、あるいは二次曲線上の節点以外の1点の座標値(差分ベクトルを用いている場合には成分値))が関数パラメータに記述される。関数特定情報は、節点数より1つ少ない数だけ存在し、これらは配列811、812となって記述される。Y座標に関しても同様に関数特定情報配列812が記述される。
【0097】
これまで説明した方法では、近似図形の基準代表点V0 以外の代表点を記述するのに、隣接した代表点からのベクトルを求め、このベクトルを近似関数に変換していた。このような方法以外にも、他の代表点、例えば基準代表点V0 からのベクトルを使う方法について説明する。
【0098】
例えば、図10で説明されるように、基準代表点V0 以外の代表点(この場合近似多角形の頂点)Vi については、V0 からVi へのベクトルV0,i を算出しておく。そして、図7で説明された処理において、ν(j) t (j=1,2,…,M−1)を時刻tにおけるV0,i の成分値と置き換えて処理を行う。
【0099】
この方法によれば、どの基準代表点V0 以外の代表点も、基準代表点V0 と1つのベクトルにより記述できるため、記述データから得られる値の誤差が累積されないという利点がある。
【0100】
また、その他にも、図11の(a)のように、基準代表点V0 から右回りでベクトルを半分求め、左回りで残りのベクトルを求める方法や、図11の(b)のように、基準代表点V0 からのベクトルで表す代表点を複数設け、それらからは隣接代表点間でベクトルを求める方法など、様々なバリエーションが可能である。
【0101】
また、近似図形の代表点がa(≧3)個ある場合に、2以上a−1以下の複数の代表点をそれぞれ基準代表点とし、残りの1以上の代表点を差分ベクトルで表すことも可能である。
【0102】
なお、これらの場合においても、図8の物体領域データの代表点軌跡704は、代表点の数(M個)だけ存在することになる。
【0103】
次に、これまでは、各々のフレームにおいて、基準代表点V0 をおおもとの基点として様々な方法でそれ以外の代表点を表す方法について説明したが、以下では、連続するフレームにおいて代表点の移動量をベクトルで表現し、これらベクトルの軌跡を近似関数に変換することにより物体領域を記述する方法について説明する。
【0104】
図12において、1100は初期フレームにおける物体近似図形(多角形)、1102は時刻tのフレームにおける物体近似図形、そして1101は1102の手前のフレームにおける物体近似図形である。1103は時刻tにおける物体領域の代表点のひとつである。1104は手前のフレームにおける1103の対応点である。1105は1104から1103への移動ベクトルであり、時刻tのフレームにおける代表点の移動量を表している。移動ベクトルは、各フレームに対応した時刻毎に得られるため、これまでと同様に時間tの関数により近似することが可能である。
【0105】
このような方法で物体領域を記述するための処理としては、図7で説明されるフローチャートにおいて、ν(j) t (j=0,1,…,M−1)を時刻tにおけるV’i の成分値と置きかえればよい。ここで、V’i は時刻tにおけるVi の移動ベクトルとしている。この方法ではV0 も他の代表点と同様の方法で移動ベクトルが算出され、近似関数への変換が行われる。
【0106】
なお、このような移動ベクトルを用いた方法では、物体が出現したフレームにおける近似図形の全代表点の座標を記述しておく必要がある。従って、この方法の場合に記述される(図8の例に対応する)データフォーマットは図13のようになる。図8との違いは、代表点初期位置1200が付与されている点である。代表点初期位置1200には、初期フレームにおけるM個の代表点の座標値が記述されている。このときの座標値の記述方法としては、全ての代表点の座標値をそのまま記述すれば良い。また、ひとつの代表点の座標値のみをそのまま記述し、他の代表点の座標は、例えば、図5で表されるように隣接した代表点からの差分のベクトルを記述する方法、あるるいは図10で説明されるようにひとつの代表点V0 からの差分のベクトルで記述する方法などを用いても良い。
【0107】
また、他の物体領域情報記述方法として、初期代表点位置から時刻tの代表点の位置への移動ベクトルを直接求め、これを近似関数に変換して記述することも可能である。
【0108】
次に、上記のように物体領域データに記述された物体の領域に関する情報から、任意の時刻Tにおける物体の領域を取り出す方法について説明する。この処理は、例えば映像データおよびその物体領域データを扱う情報処理装置において実行される。もちろん、このような情報処理装置は、計算機上でソフトウェアを実行する形で実現することもできる。
【0109】
図14は、この場合の処理の一例を示すフローチャートである。
【0110】
ここでは、基準代表点V0 以外の代表点については隣接する代表点からのベクトルの軌跡により記述する場合の例について説明する。
【0111】
ステップS901では、与えられた時刻Tに物体が存在するかどうかを判断する。これは、物体出現時間701および物体存在期間702を参照することで容易に判断できる。もしも時刻Tに物体が存在していない場合には、物体領域がないため、直ちに処理を終了する。
【0112】
ステップS902では、時刻Tにおける近似関数F(j) ta , tb(t)(j=0,1,…,M−1)を再構成する。ここで、時刻Tを含む区間の両端の節点の時刻をta およびtb とする。近似関数は、図9の節点X803、または節点Y805に記述されているta およびtb における座標値(またはその差分ベクトルの成分値)と、関数ID809、関数パラメータ810により再構成できる。すなわち、近似関数に1次多項式を用いている場合には、近似関数は二つの節点を通過する直線として求められる。また、2次多項式を用いており、関数パラメータに2次の係数が記述されている場合には、2次の係数は関数パラメータの値により決定し、2次未満の係数は近似関数が節点を通過するように決定すればよい。
【0113】
ステップS903では、近似関数にt=Tを代入し、時刻TにおけるV0 の座標値およびV1,2 ,V2,3 ,…,VM-2,M-1 の成分値を求める。
【0114】
最後にステップS904では、V0 およびV1,2 ,V2,3 ,…,VM-2,M-1 を逐次的に足しこむことにより、V0 ,V1 ,…,VM-1 の座標値を算出する。
【0115】
このようにして求められた代表点をもとにして、情報処理装置では、物体の領域を近似する図形を生成すること、物体の映像データのうち近似図形の範囲を特定の表示形態で表示して対処物体をユーザに呈示すること、ユーザが画面上に表示中の映像上をマウスなどのポインティングデバイス等で指示した場合に例えばその時刻(フィールド)に物体領域の近似図形が存在し且つ指示位置が近似図形の内部であればその対象物体が指示されたと判断することなど、対象物体に関する種々の処理を行うことができる。
【0116】
例えば、図8に例示した物体領域データに関連情報が付加されている場合、あるいは物体領域データとは別に各物体に対する関連情報を含むデータベースが存在するなどの場合に、ハイパーメディアや物体検索に用いることができる。
【0117】
ハイパーメディアでは、ユーザが当該物体をマウス等で指定することにより、指定された時刻・場所が物体領域の内部であるか外部であるかを判定し、内部であると判定されれば、その物体に関する関連情報を検索させたり、表示させたりすることが、容易にできる。また、関連情報がプログラムや計算機の動作を記述したデータまたはそのポインタである場合には、ユーザが当該物体を指定することにより、計算機に所定の動作を行わせることができる。
【0118】
なお、本実施例において、映像や物体はどのようなものであってもよい。例えば、映像が映画などのコンテンツ、物体が俳優等の登場人物もしくは他の登場物体、関連情報がその俳優もしくはその役柄等に関する説明であれば、映画を視聴している視聴者は、所望の俳優に関する説明をその俳優の画像をクリックするだけで閲覧することができる。同様に、電子百科事典、電子カタログ等のあらゆる電子コンテンツに適用可能である。
【0119】
また、例えば、物体検索では、物体の通過位置、非通過位置、ある位置における大きさ、ある位置における滞在時間などを検索キーとして条件に合う物体を検索することができる。いずれの検索キーに対しても、物体の存在する時間区間に対して逐次代表点座標を取り出し、任意の点が代表点で構成される図形の内部か外部かを判定したり、面積を計算することにより条件を満たすかどうかが判断できる。
【0120】
また、例えば、関連情報にキーワードを記述しておけば、物体をキーワード検索することができる。さらに、関連情報にその物体から抽出した、シェープ、テクスチャ、アクティビティ、カラーなどの特徴量を記述しておけば、そのような特徴量をもとにオブジェクト検索することができる。
【0121】
また、例えば、物体領域データを解析することにより得られる、物体のシェープ、テクスチャ、アクティビティ、カラーなどの特徴量に基づいて、不審な人物等の監視を行う、監視システムを実現することができる。
【0122】
次に、映像データや物体領域データの提供方法について説明する。
【0123】
本実施例の処理により作成された物体領域データがユーザの用に供される場合には、作成者側からユーザ側に何らかの方法で物体領域データを提供する必要がある。この提供の方法としても以下に例示するように種々の形態が考えられる。
(1)映像データとその物体領域データとその関連情報とを1つ(または複数の)記録媒体に記録して同時に提供する形態
(2)映像データとその物体領域データとを1つ(または複数の)記録媒体に記録して同時に提供するが、関連情報は別途提供するかもしくは提供しない(後者は例えば提供しなくてもユーザがネットワーク経由等で別途取得できる場合)形態
(3)映像データを単独で提供し、別途、物体領域データと関連情報とを1つ(または複数の)記録媒体に記録して同時に提供する形態
(4)映像データ、物体領域データ、関連情報を別々に提供する形態
上記は主に記録媒体により提供する場合であるが、その他にも、一部または全部を通信媒体で提供する形態も考えられる。
【0124】
本実施例によれば、複数フレームに渡る映像中の物体の領域を、該物体の領域に対する近似図形の代表点の位置データまたはそれを特定可能なデータ(例えば、代表点間差分ベクトル値)をフレームの進行に沿って並べることにより得られる軌跡を近似した関数のパラメータとして記述することにより、複数フレームに渡る映像中の物体の領域を少量の関数パラメータのみによって記述することができるため、物体の領域を特定するためのデータの量を効果的に削減することができ、またハンドリングを容易にすることができる。特に物体が剛体の場合は、相対位置は絶対位置よりも変動が少なく、その軌跡を関数近似したときに、コンパクトな情報量で記述することができる。また、近似図形からの代表点の抽出や、近似曲線(直線の場合も含む)のパラメータの生成も容易に行うことができる。また、このデータを通信する場合の通信量を減らすことができる。近似曲線のパラメータから近似図形を生成することも容易に行うことができる。この近似図形として基本的な図形(例えば多角形)により代表させれば、ユーザにより指定された任意の座標が物体の領域(近似図形)内か否か(物体の領域を指示しているか否か)を簡単な判定式により判定することができる。さらに、これによって、ユーザによる映像中の動く物体の指示をより容易にすることができ、映像中の物体の通過位置、ある地点での滞留時間、あるいは軌跡などに基づいて、映像中の物体の検索を容易に行うことができる。また、操作性の良いハイパーメディア・アプリケーションを実現できる。
【0125】
次に本発明の他の実施例を説明する。以下の実施例で第1実施例と対応する部分は同一参照数字を付して詳細な説明は省略する。
【0126】
第2実施例
第2実施例では、第1実施例において、さらに、映像中の物体について、画面上の2次元情報(代表点のX座標値、Y座標値)以外に奥行きの方向に関する情報をも物体領域情報に含める場合について説明する。なお、第2実施例では、第1実施例と相違する点を中心に説明する。
【0127】
なお、本実施例では、第1実施例の物体領域情報生成装置に更に奥行きの方向に関する情報(以下、奥行き情報と呼ぶ)を得るための処理部108が必要になる。この処理部108は図15に示すように、映像データ記憶部100と代表点軌跡の関数近似部104との間に接続される。
【0128】
まず、奥行き情報としては、これを連続値(Z座標値)で与える方法と、離散的なレベル値(より好ましくは一定の範囲内の整数値)で与える方法がある。また、各値は、映像データが撮影されたものである場合には、被写体を実測したデータに基づく方法と、ユーザなどが指定する方法がある。映像データが人工的なもの(例えばCGあるいはアニメーションなど)の場合には、奥行きに関する値が与えられているならばこれに基づく方法と、ユーザなどが指定する方法がある。
【0129】
また、上記のそれぞれの場合において、奥行き情報は、対象物体毎に与える方法と、対象物体の近似図形の代表点毎に与える方法がある。
【0130】
また、上記の各方法の組み合わせにおいて、奥行き情報を、その物体の出現フレームから消失フレームまでの全フレームに対してそれぞれ与える方法と、その物体の出現フレームから消失フレームのまでの全ての所定の区間(例えば、隣接節点区間)に対してそれぞれ与える方法などがある。
【0131】
奥行き情報として、連続値を用いる方法で、且つ代表点毎に与える方法で、且つ、その物体の出現フレームから消失フレームまでの全フレームに対してそれぞれ与える方法を採用する場合には、第1実施例の対象物体の近似図形の代表点のX座標およびY座標についての処理と同様の処理を各代表点のZ座標についても行えばよい(代表点軌跡関数近似部104で行えばよい)。
【0132】
この場合に、物体領域データ(例えば図8やそのバリエーションなど)の代表点軌跡のデータ形式の一例は、例えば図16のようになる。図9との違いは、X座標およびY座標に加えて奥行き情報であるZ座標に関する節点Z配列832、関数特定情報配列Z836が付加されている点である。
【0133】
また、奥行き情報として、連続値を用いる方法で、且つ対象物体毎に与える方法で、且つ、その物体の出現フレームから消失フレームまでの全フレームに対してそれぞれ与える方法を採用する場合には、第1実施例の対象物体の近似図形の代表点のX座標およびY座標についての処理と同様の処理を代表点軌跡関数近似部104により当該対象物体のZ座標の値についても行えばよい。
この場合には、例えば図17に示すように、物体領域データ(例えば図8やそのバリエーションなど)に対して奥行き情報705、すなわち当該対象物体のZ座標についての値の軌跡を付加すればよい。もちろん、さらに関連情報等が付加されている構成もある)。図17の物体領域データ中の代表点軌跡は図9に示すものであり、奥行き情報のデータ形式の一例は、例えば図18のようになる。図18と図9との違いは、図18はZ座標についての値のみ記述されている点である。
【0134】
なお、上記の2つ手法において奥行き情報として連続値ではなく、レベル値を用いる場合には、同じレベル値が複数フレームにわたって連続することが想定されるので、例えば、レベル値が変化する毎に、変化後のレベル値とそのレベル値が変化したフレームの番号等を記述するようにしてもよい。
【0135】
また、奥行き情報を隣接節点区間に対して与える場合には、その物体の出現フレームから消失フレームまでの全フレームに比べて隣接節点区間の区間数はそれほど多くないことが想定されるので、全ての値と隣接節点区間との対応を記述してもよい。
【0136】
次に、奥行き情報を得るための処理部が奥行きを実測する場合の構成例について説明する。
【0137】
奥行き情報には、カメラからの距離あるいは3次元空間に設定した座標系における座標のような絶対的な位置情報と、最初の物体位置からの移動距離もしくは移動距離の大きさを表す数値のような相対的な位置情報がある。
【0138】
一般に、単一のカメラで撮影された映像から絶対的な位置情報を求めるのは難しいため、文献「三次元画像計測:井口,佐藤(昭晃堂)、p.20〜52」に記載されているような特殊なレンジセンサを用いて計測を行うか、複数台のカメラを用いステレオ法に基づいて計測を行って、位置情報を取得する。ただし、ある一定の撮影条件を仮定することができる場合には、単一のカメラで撮影した画像からでも位置情報を求めることができる。この場合の一例を以下に示す。
【0139】
例えば、道路監視を行う場合、図19に示すように、カメラ1300で車1301を撮影する。カメラは固定することが多いので、あらかじめカメラ1300を校正しておくことができる。また、車が走る道路面を平面とみなし、3次元空間中での平面の方程式をあらかじめ計算しておくことが可能である。これらの前提条件の下で、車のタイヤ部分が地面1303と接している点1306の位置を求める。撮像面1302上では、点1306が点1305の位置で検出されたとすると、点1305を通るカメラの視線1304と平面1303との交点を求めることによって、点1306の位置が得られる。
【0140】
なお、カメラの視線1304は校正することによって得られるカメラパラメータから計算できる。道路面を既知としたが、車のバンパー位置の高さを既知と仮定してもよい。
【0141】
例えば映像データおよびその物体領域データを扱う情報処理装置において、これらの3次元情報を用いて、指定された位置に近い物体を検索することができる。
図20に、そのような検索の処理の一例を表すフローチャートを示す。
まず、ステップS2700において、指示された検索対象とする位置情報(3次元情報)を入力する。
ステップS2701で、その位置と全物体領域データに係る物体の持つ3次元的な位置との間の距離を計算する。
全てについて3次元的な距離を求めた後、ステップS2702でしきい値より小さい距離を持つ物体を求め、出力する。なお、しきい値を定めずに距離が最小となる物体を検索結果として出力してもよい。
【0142】
また、一般的な映像だけからは映像中の物体の絶対的な位置情報は求めるのは困難であるが、図21の(a)から(b)のように手前に向かってくる車を、静止したカメラから撮影した映像では、車の画像面上での大きさの変化を観測することによって、例えば初期位置よりもカメラに近づいたか遠ざかったかというような相対的な奥行き情報を求めることが可能である。この場合の一例を以下に示す。
【0143】
通常のカメラ光学系は、図22のようにピンホールカメラに基づいた透視変換モデルによって記述することができる。1600はカメラのレンズ主点であり、1601は撮像面である。物体1602がカメラに近づく方向に移動しているとする。これを真上から見下ろした図が図23である。図23のように、物体がZ軸に平行な姿勢を保ったままカメラに近づく方向に移動したとすると、移動前1702と移動後1703では物体前面の撮影像は1704から1705へと幅が大きくなる。物体とカメラレンズ主点1700との距離が小さいほど、撮影像は大きくなるため、撮影像の大きさを用いて、相対的な位置の変化を表現することができる。例えば、物体の初期位置での撮影像の幅を1とし、その後の撮影像の幅との比を求めていく。撮影像の幅は、レンズ主点1700からの距離の逆数に比例すると見なしてよいので、その比の値の逆数を求め、奥行き情報として保持しておけばよい。この場合、カメラに近いほど値は小さくなり、遠いほど値が大きくなる。なお、幅でなく、撮影像の面積や物体表面の特徴的なテクスチャの面積を用いてもよい。
【0144】
例えば映像データおよびその物体領域データを扱う情報処理装置において、これらの相対的な位置の変化を示す情報を用いて、1つの移動物体について、指定した距離に存在する時刻を求めることが可能である。
【0145】
図24および図25に、この場合の処理の手順の一例を表すフローチャートを示す。
【0146】
図24は実際に検索を行うための前処理のフローチャートである。図24では、1つの移動物体の保持している奥行き値を正規化する。ステップS2800において、奥行き値の最小値を1とし、ステップS2801において奥行き値を最小値で割って正規化する。ステップS2802において全ての奥行き値の正規化処理が終わったことを判定する。
【0147】
次に、図25のステップS2900において、検索すべき奥行き値(正規化値)を入力する。ステップS2901で、その入力値と各奥行き値の差を計算し、全ての奥行き値と比較を終えたら(ステップS2902)、その差が最小となる時刻を出力する(ステップS2903)。
【0148】
このように第2実施例によれば、平面情報である2次元的位置情報以外に、奥行きに関する情報を付与することにより、奥行き方向を考慮した検索、例えばカメラからの距離情報で物体を検索が可能となる。
第3実施例
第3実施例では、第1実施例または第2実施例において、さらに、映像中の物体について、画面上でその物体(またはその一部)が見えている状態にあるか、他の物体の陰に隠れているなどして見えていない状態にあるかを示す表示フラグに関する表示フラグ情報をも物体情報データに含める場合について説明する。なお、第3実施例でも、第1実施例または第2実施例と相違する点を中心に説明する。
【0149】
なお、本実施例では、表示フラグに関する処理は、例えば代表点軌跡関数近似部104で行えばよい。
【0150】
例えば図26の(a)〜(c)のように、映像中に複数の物体が存在している場合、ある物体2101が別の物体2102によって隠れたり、現れたりするということがよくある。この状態を記述するため、物体領域データに表示フラグ情報を追加する。
【0151】
表示フラグは、対象物体毎に与える方法と、対象物体の近似図形の代表点毎に与える方法がある。
【0152】
表示フラグを対象物体毎に与える場合、表示フラグが立っているときは、その物体が他の物体により隠れていないことを示し、再生時には、その物体を表示する。表示フラグが立っていないときは、その物体が他の物体により隠れていることを示し、再生時には、その物体を表示しない。
【0153】
表示フラグを対象物体の近似図形の代表点毎に与える場合、1つの対象物体の近似図形における全ての代表点の表示フラグが同一の状態ならば上記と同様であるが、表示フラグが立っている代表点と、表示フラグが立っていない代表点が混在するならば、その状況を考慮して当該物体の表示を行う(例えば当該物体の該当する一部分のみ表示する)。
【0154】
表示フラグは、物体の隠れ/現われの状況が変わるキーポイント間毎に設定され、物体領域の代表点軌跡データを作成するときに同時に決定される。なお、キーポイントは、近似関数の節点と無関係に設けられてもよいが、キーポイントは必ず節点になるようにしてもよい。例えば、キーポイントが発生した場合には、強制的にその時点を節点とする方法がある。
【0155】
表示フラグを対象物体毎に与える場合、キーポイントは、物体が現れている状態から隠れている状態に移るときと、隠れている状態から現れている状態に移るときに設定される。図27の例において、物体2201は、フレームiまでは現れていて、フレームiからjは隠れ、フレームj以降はまた現れるとき、フレームiとjにキーポイントを置き、フレームiからjまでの表示フラグには隠れ状態を、それ以外のフレームの表示フラグには現れ状態を設定する。表示フラグを対象物体の近似図形の代表点毎に与える場合も同様である。
【0156】
代表点軌跡データ作成時は、全フレームに渡って物体が現れているものとして作成し、物体が隠れているため代表点の情報がわからない場合は、分かっている前後の代表点の情報より補完することによって、代表点軌跡データを作成する。そして、代表点軌跡データを作成した後、物体が現れているか隠れているかに応じて表示フラグを設定する。このため、一つの物体に関しては物体が隠れたり現れたりしても一連の代表点軌跡データで表現することが可能となる。
【0157】
以下、表示フラグ情報のバリエーションについて説明する。
【0158】
通常、表示フラグは各キーポイント間毎に設定されるが、表示フラグ自体に開始タイムスタンプと終了タイムスタンプを付加してもよい。この場合は、表示される範囲や隠れる範囲がキーポイントと独立に設定できるというメリットがある。
【0159】
表示フラグは、1つの物体内で1つの表示フラグを持っていてもよいし、各代表点軌跡データ毎に独立して持っていてもよい。例えば、物体が多角形で表現されていて、その各頂点を代表点として軌跡データで表現した場合には、代表点軌跡データ毎に独立して表示フラグを持つことによって、物体の一部のみの隠れなどを表現することが可能となる。
【0160】
また、表示フラグは、現れているか隠れているかだけではなく、優先度として整数の値をとるようにしてもよい。物体同士が重なったときは、優先度の低い物体が優先度の高い物体に隠れていることを示し、優先度の高い物体のみを表示する。また、優先度が0の時は他の物体に関係なく物体は隠れているものとする。
表示フラグを上記のように整数値でとることによって、映像中に他の物体を合成したときなどにも、物体同士の隠れの問題を解決できるという利点がある。表示フラグを整数値でとった場合も、1つの物体内で1つの表示フラグを持っていてもよいし、各代表点軌跡データ毎に独立して持っていてもよい。
【0161】
図28、図29は、表示フラグを含む物体領域データのデータ構造の例である。
【0162】
図28は、対象物体に対して表示フラグを付加する場合における、物体領域データ(例えば図8やそのバリエーションなど)に対して表示フラグ情報706を付加した例である。もちろん、さらに関連情報等が付加されている構成もある。
【0163】
図29は、図28の表示フラグ情報705の構造例である。
【0164】
この例は、各表示フラグ2304毎に、開始タイムスタンプ2302と終了タイムスタンプ2303を持っている。表示フラグ数2301は表示フラグの総数であり、開始タイムスタンプ2302と終了タイムスタンプ2303を利用しない場合は、(キーポイント数−1)個の表示フラグを持つため、表示フラグ数2301を省略してもよい。表示フラグ2304は現れているか隠れているかを0か1かで記録するが、優先度として整数値をとってもよい。
【0165】
また、物体の近似図形の各代表点に対して表示フラグをそれぞれ付加する場合には、例えば、物体領域データ(例えば図8やそのバリエーションなど)の各代表点軌跡毎に表示フラグ情報を付加する。
【0166】
図30は、この場合の代表点軌跡のデータ構造の例である。図30の表示フラグ900の構造例は図29と同様である。
【0167】
図31に、例えば映像データおよびその物体領域データを扱う情報処理装置で行われる検索時の処理の一例を表すフローチャートを示す。
【0168】
まず、ステップS251においてユーザが検索キーを入力し、ステップS253において検索している物体領域のキー情報と検索キーの距離を計算する。
【0169】
検索キーに対応する物体領域の表示フラグが現れている状態かをステップS254で判定し、表示フラグが隠れている状態の時はマッチングしていないものとする。
【0170】
ステップS255で表示フラグが現れている状態で距離が閾値より小さい場合はマッチングしたものとして記録する。
【0171】
これをすべての物体に対し繰り返し、ステップS252ですべての物体領域について計算終了したと判断されたときは、ステップS256において記録結果を出力して終了する。
【0172】
以上のように、物体領域の軌跡情報の他にオクル−ジョンかどうか(つまり見えているかどうか)を示す表示フラグを付け加えることにより、再生時に物体が隠れているかどうかを他の物体との関係から計算することなく判定することが可能となり、表示されている物体を検索する場合などにもオクルージョンを考慮した効率的な検索が可能となる。
【0173】
第4実施例
第4実施例では、第1実施例または第2実施例または第3実施例において、さらに、映像中の物体が画面上に出現してから消失するまでに通過した画面上での範囲を示す情報(以下、物体範囲情報と呼ぶ)をも物体情報データに含める場合について説明する。なお、第4実施例では、第1実施例または第2実施例または第3実施例と相違する点を中心に説明する。
【0174】
なお、本実施例では、物体通過範囲情報を生成するための処理部をさらに設ける(物体領域抽出部101と物体領域の図形近似部102との間に接続する)。
【0175】
物体を物体領域の代表点軌跡データで表すとき、通常は1つの物体に対し複数の軌跡データを利用して表現することになる。そのため、指定した点を通過した物体を検索する場合は、複数の軌跡データから物体領域を先ず計算して、領域が指定点を含むか否かを判断する必要がある。しかし、複数の軌跡データから物体領域を先ず計算することなく、物体通過範囲を表現できれば便利である。
【0176】
そこで、本実施例では、物体の軌跡全体を囲むような最小の長方形または多角形の物体通過範囲に関する情報を生成し、これを物体領域データに付帯させるようにする。
【0177】
長方形を利用する場合、傾きを持つ長方形を利用してもよいし、傾きを持たない長方形を利用してもよい。傾きを持つ長方形を利用する場合には、物体領域の軌跡を誤差が少なく近似できる利点がある。傾きを持たない長方形を利用する場合には、長方形のパラメータ計算が簡単であるという利点がある。
【0178】
図32の(a)において、2402は物体2401の軌跡領域を傾きのない長方形で近似したものの例を示す。
【0179】
図32の(b)において、2403は物体2401の軌跡領域を傾きのある長方形で近似したものの例を示す。
【0180】
図32の(c)において、2404は物体2401の軌跡領域を多角形で近似したものの例を示す。
【0181】
物体の軌跡全体を囲むような最小の長方形または多角形を計算するときは、各フレームにおける物体領域を求めた後、全フレームに渡って領域の論理和を計算し、得られた論理和の領域を最小の長方形または多角形で近似する。
【0182】
また、物体の軌跡全体を囲むような最小の長方形または多角形を計算する際に、既に計算されているフレームに関する当該物体領域の軌跡全体を囲む最小の長方形または多角形と、新しく追加すべきフレームにおける当該物体領域との論理和の領域を最小の長方形または多角形で近似するようにしてもよい。
【0183】
また、物体の軌跡全体を囲むような最小の長方形または多角形を計算する際に、各代表点の軌跡を囲むような最小の長方形または多角形を計算し、全軌跡に渡って得られた長方形または多角形の領域の論理和について、それを囲むような最小の長方形または多角形を計算するようにしてもよい。
【0184】
図33に、物体領域情報に付帯する物体通過範囲情報の記述例を示す。外接図形タイプ3401は、外接図形のタイプを示す。例えば、0は図32の(a)に示す傾きのない長方形、1は図32の(b)に示す傾きのある長方形、2は図32の(c)に示す多角形を示す。外接図形タイプが0の場合は頂点数Nが2、1の場合は頂点数Nが3、2の場合は頂点数Nが任意の数となる。物体が奥行き情報を持っている場合は、同様に奥行きの軌跡情報を加えて3次元の外接図形を考えることができる。その場合、図34に示すように、奥行き情報のZに関する情報が追加される。
【0185】
図35に、例えば映像データおよびその物体領域データを扱う情報処理装置において、ユーザがある座標値(2次元について説明するが、3次元でも同様)を指定したとき、その座標を通過するような物体を選び出す場合の処理の一例を表すフローチャートを示す。
【0186】
ステップS261において、ユーザが検索すべき座標値を入力し、ステップS262において、各物体軌跡について軌跡全体を囲むような最小の長方形または多角形と入力された座標値を比較し、座標が軌跡全体を囲むような最小の長方形または多角形の中に入っているような物体のみを抽出する。物体の個数は0の場合も、1つの場合も、複数の場合もあり得る。抽出された物体について、ステップS263で代表点軌跡から入力された座標が物体領域(例えば近似図形の内部)の中に入っているかどうかを判定する。
【0187】
一般に代表点軌跡からの物体の内外判定より、軌跡全体を囲むような最小の長方形または多角形の物体の内外判定の方が計算量が少ないため、特に検索対象の物体数が多い場合は、はじめに軌跡全体を囲むような最小の長方形または多角形の内外判定をしたほうが効率よく検索ができる。
【0188】
このように物体の軌跡全体を囲むような最小の長方形または多角形の情報を付帯することによって、物体の通過範囲を効率よく表現でき、ある座標を物体が通過するかどうか判定することなどが簡単に行えるようになる。
【0189】
また、検索の効率を上げるために、物体領域を関数で表現するだけでなく、物体が時空間的に存在する位置を囲む図形を付帯させることにより、全く別の場所に存在する物体を検索の候補から除外することが可能となる。
第5実施例
第5実施例では、本発明をモザイキングに適用した場合について説明する。
【0190】
モザイキングとは、撮影範囲が一部重なるように撮影された複数の画像を貼り合わせ、1枚の広範囲を撮影した画像を合成する手法である。このようにして合成された画像はパノラマ画像などとも呼ばれる。複数の画像からモザイキングによりパノラマ画像を作成する手法は複数の提案がされている(M. Irani, P. Anandan, “Video Indexing Based on Mosaic Representations”, Proceedings of the IEEE, Vol. 86, No. 5, pp.
905−921, May 1998. など)。
【0191】
本実施例の構成は基本的にはこれまでの各実施例と同様であるが、本実施例では、これまでのように各フレームにおける物体領域の近似図形の代表点の位置データ(各フレーム毎の座標)をもとに近似を行うのではなく、パノラマ画像における各物体領域の近似図形の代表点の位置データ(パノラマ画像全体の座標)をもとに近似を行う点が相違する。
【0192】
以下では、これまでの実施例と相違する点を中心に説明する。
【0193】
図36は、モザイキングを用いた物体領域情報記述方法の処理手順の一例を表すフローチャートである。図37の(a)、図37の(b)に、この方法を説明するための図を示す。
【0194】
なお、パノラマ画像はそれ自体で1つの画像であり、合成前の各々の静止画像の各画素は、パノラマ画像におけるある基準点(例えば、フレーム中で左下の点)を原点として、座標が変換されることになる。したがって、各静止画像における物体領域の近似図形の各代表点は、パノラマ画像の座標系におけるX座標やY座標についての系列となる。本実施例では、各静止画像における物体領域の近似図形の各代表点のX座標やY座標についての系列を、これまでの実施例のようにして、関数近似するものである。その際に、これまでの実施例と同様に、例えば、1つの静止画像内で差分ベクトルをとり、あるいは静止画像間で差分ベクトルをとって、この差分ベクトルの系列を関数近似する。
【0195】
ステップS1900では、入力された複数の静止画像からパノラマ画像を作成する。これらの入力画像群は、図37の(a)では2000〜2005に相当し、移動する物体をカメラを移動させながら撮影した画像である。2006は画像内の物体で、2000〜2005内には同じ物体が撮影されている。これらの画像群は動画中の連続するフレームや、撮影範囲を重なるようにカメラを移動しながら撮影した静止画であることが多いが、パノラマ画像を作成できるような入力画像であれば何でもよい。
【0196】
これらの入力画像群より合成されたパノラマ画像が図37の(b)の2007である。
【0197】
ステップS1901では、合成されたパノラマ画像内に存在する個々の物体領域を図形により近似する。なお、ステップS1900のパノラマ画像作成とステップS1901の物体領域の図形近似は逆の順序で行ってもよい。ただし、パノラマ画像を合成する際の変換によっては、物体領域の近似図形種の変更を必要とする場合がある。例えば、物体領域を矩形で近似する場合、アフィン変換によりパノラマ画像の合成を行うと合成後の物体領域は必ずしも矩形とはならない。その場合はパノラマ画像の作成を先に行うか、パノラマ画像合成の変換後に修正を行う。
【0198】
ステップS1902では、ステップS1901で求めた物体領域の近似図形の代表点や特徴点の軌跡を関数により近似する。物体領域の軌跡は基準となる物体領域を定め、そこからの各物体領域の変化量により求める。例えば、図37の(b)において、第1入力画像の物体領域2008を基準とし、それに続く物体領域の変化を軌跡2009とする。この例では、物体領域の重心を代表点としているが、矩形や楕円など他の近似図形の代表点を用いる場合やその他の特徴点を代表点として用いる場合であっても同様である。
【0199】
基準点からの変化量の求め方は、基準点に対する差分を用いる場合と直前の物体領域からの差分を用いる場合があるが、これらの変化量は同様に関数近似を行うことができる。また、基準点からの変化を代表点や特徴点の移動ではなく、平行・回転移動やアフィン変換などの動きモデルで近似し、その変換係数の軌跡として物体の移動を記述することができる。この場合も変換係数の軌跡を関数近似することによって適用することができる。
【0200】
ステップS1903では、ステップS1902で求めた軌跡を近似する関数のパラメータを前述のデータ構造体のフォーマットに従って記述を行う。
【0201】
また、入力画像群の個々の画像をパノラマ画像として合成する際の諸パラメータも入力画像全体を物体領域とみなすことにより、同様に記述することができる。
【0202】
図38に、物体領域情報に付帯する諸パラメータの記述例を示す。諸パラメータは作成されたパノラマ画像の座標系を、作成に用いた映像フレームの座標とその映像フレームからパノラマ画像への変換パラメータによって記述するものである。ここで、どこを原点としても良いが、映像フレームの座標が左下に原点があるとする。そして、モザイキングに利用されたフレームの縦横の長さが同一で既知であるとする。統合座標フラグ3601は、このようなパノラマ画像の座標系を用いた物体の記述かどうかのフラグであり、フラグが0の時は通常の座標系(つまり、すべての映像フレームで左下原点)で、1の時はフレームがパノラマに統合された座標系を示す。モデルタイプM3602は、各フレームをパノラマ画像に変換したときの変換モデルのタイプを示すものである。例えば、モデルタイプMが0の時は変換なし、2の時は平行移動で、4の時は回転・拡大縮小で、6の時はアフィンで、8の時は透視変換で、12の時は2次射影変換を表す。各モデルにおいて、モデルタイプMの値と同数のパラメータがある。
【0203】
平行移動:vx(x, y) = a1
vy(x, y) = a2
回転・拡大縮小:
vx(x, y) = a1 + a3x + a4y
vy(x, y) = a2 - a4x + a3y
アフィン変換:
vx(x, y) = a1 + a3x + a4y
vy(x, y) = a2 + a5x + a6y
透視変換:
vx(x, y) = (a1 + a3 x +a4 y) / (1 + a7 x +a8 y)
vy(x, y) = (a2 + a5 x +a6 y) / (1 + a7 x +a8 y)
2次射影変換:
vx(x, y) = a1 + a3 x + a4 y + a7 xy + a9 x2 + a10 y2
vy(x, y) = a2 + a5 x + a6 y + a8 xy + a11 x2 + a12 y2
ここで、変換を行うための原点をX原点3603、Y原点3604で与える。この原点は元映像フレームの座標系を用いて示す。このように変換のための原点を与えるのは、変換時に生じる誤差を少なくするためである。変換パラメータ数N3605は、パノラマに用いるフレーム数Nと同じである。フレーム毎に変換パラメータが必要となる。フレーム間時間3606は、初期フレームからのフレーム間時間で、パラメータセット3607は、変換のモデルタイプに応じてM個のパラメータを記述する。各フレーム中のオブジェクトの軌跡もこのパラメータセットを用いて変換され記述される。
【0204】
本実施例によれば、カメラが物体領域を追いかけながら撮影している場合には、連続するフレームに対して画像変換を施して貼り合わせるモザイキングによるパノラマ画像を作成し、その作成された画像上での物体の領域情報を記述することにより、カメラが移動していてもモザイキング画像のある点を基点とした座標系で物体の領域情報を一意に記述することができる。
【0205】
上記した第2実施例〜第5実施例は第1実施例のデータ構造を有する物体領域情報に奥行き情報、表示フラグ、物体範囲情報、パノラマ変換のためのパラメータも記述する実施例として説明したが、これらの実施例は第1実施例の物体領域情報に限定されず、他のデータ構造を有する物体領域情報に対しても付帯可能である。以下、物体領域情報のデータ構造の変形に関する他の実施例を説明する。
【0206】
第6実施例
第1実施例は物体領域を近似する図形の代表点の座標そのものではなく、ベクトルで代表点の軌跡を記述したが、代表点の座標そのものの軌跡を記述する場合に、奥行き情報も付帯する第6実施例を説明する。
【0207】
第6実施例の構成は図1に示した第1実施例の構成と同じである。第1実施例では多角形により物体領域を近似していたが、第6実施例では図39の(a)から(d)に示すように物体領域を楕円で近似する方法を示す。図39の(a)から(d)は第1実施例の図3の(a)から(c)に相当する。楕円の2つの焦点v1、v2と楕円上の1点v3を代表点として抽出する方法を用い、代表点の軌跡をスプライン関数により近似する。
【0208】
図40に、物体の領域が平行四辺形で表される場合に、近似楕円を求める方法の一例を示す。図40における点A,B,C,Dが物体の領域である平行四辺形の各頂点である。この場合、まず、辺ABと辺BCのどちらが長いかを計算する。そして、長い方の辺およびその対辺を辺の一部とする最小の長方形を求める。図40の例の場合は点A,B’,C,D’を4頂点とする長方形となる。近似楕円は、例えば、この長方形に内接する楕円と相似で、かつ、点A,B’,C,D’を通る外接楕円とする。
【0209】
次に、図39の(b)において、v1、v2、v3は楕円を表現する図形代表点であり、具体的には2つの焦点v1、v2および1つの楕円上の点v3(図39の(b)の例では短軸上の1点)である。楕円の焦点は2つの軸上の点や楕円の外接矩形から簡単に求めることができる。以下、一例として、図41における長軸上の2点P0,P1および短軸上の1点Hから焦点FとGを求める方法を説明する。
【0210】
まず、長軸と短軸のパラメータであるa,bと、楕円の中心Cと、扁平率eとを、
E(P0,P1)=2×a、
C=(P0+P1)/2、
E(C、H)=b、
e=(1/a)×(a×a−b×b)1/2
により求める。
ここで、E(P、Q)は点Pと点Qのユークリッド距離である。
【0211】
このようにして求めたパラメータから、焦点FとGは、
F=C+e×(P0−C)、
G=C−e×(P0−C)
により求めることができる。
【0212】
このようにして、楕円の代表点F、GおよびHは決定されるが、これらの点を別のフレームにおいて取り出された楕円の代表点と結びつける際にはあいまいさが生じる。すなわち、抽出された2つの焦点と1つ前のフレームにおける2つの焦点とを結びつける組み合わせは2通り存在する。また、短軸と楕円との交点は2つあるため、1つ前のフレームにおいて抽出された楕円上の一点と対応する交点がどちらなのかがわからない。そこで、これらを決定する方法について説明する。
【0213】
1フレーム前に抽出された2つの焦点をFp、Gpとする。Fpに対応するのがFであるのかGであるのかを判断するために、
E((Gp−Fp)/2,(G−F)/2)と
E((Gp−Fp)/2,(F−G)/2)とを比較する。
前者の方が小さい場合には、FpはFに対応させ、GpはGに対応させる。一方、後者の方が小さい場合には、その逆に、FpはGに対応させ、GpはFに対応させる。
【0214】
また、1つ前のフレームにおける短軸と楕円との交点をHpとし、現フレームの短軸と楕円との2つの交点をH、H’とする。Hpと対応付ける点としてHとH’のどちらを選択するかは2つの距離、
E(Hp−(Gp+Fp)/2,H−(F+G)/2)と
E(Hp−(Gp+Fp)/2,H’−(F+G)/2)とを算出することにより決定する。
前者が小さい場合にはHを選択し、そうでない場合にはH’を選択する。なお、はじめのフレームにおける短軸と楕円との交点Hは2つのうちのどちらを選択してもよい。
【0215】
以上の処理によって取り出された代表点は、映像中の注目物体の移動や撮影カメラの移動により、連続するフレームにおいて位置が異なるのが普通である。そこで、対応する楕円の代表点を時系列に並べ、X座標、Y座標毎にスプライン関数により近似を行う。本実施例では、楕円の代表点であるF、G、Hの3点(図41参照)それぞれについてX、Y座標のスプライン関数が必要になるので、合計6つのスプライン関数が生成される。
【0216】
図39の(c)の203は近似されたスプライン関数を3次元的に表現したものである。図39Dの204は代表点関数近似部104の出力であるスプライン関数の一例である(1つの代表点の1つの座標軸についてのみ示している)。この例は、近似区間がt=0〜5とt=5〜16の2つに分割された場合(節点が3つとなった場合)を示している。
【0217】
このようにして得られたスプライン関数は予め定めておいたデータ形式に従って領域データ記憶部106に記録される。
【0218】
以上のように本実施例では、映像中の物体の領域を、その近似図形の代表点の時系列的な軌跡(フレーム番号あるいはタイムスタンプを変数とする代表点の座標の軌跡)を近似した曲線のパラメータとして記述することができる。
【0219】
本実施例によれば、映像中の物体の領域を関数のパラメータのみによって表現できるため、データ量が少なく、ハンドリングの容易な物体領域データを生成することができる。また、近似図形からの代表点の抽出や、近似曲線のパラメータの生成も容易に行うことができる。また、近似曲線のパラメータから近似図形を生成することも容易に行うことができる。
【0220】
また、この近似図形として基本的な図形、例えば一つまたは複数の楕円を用い、例えば楕円を二つの焦点と他の1点により代表させれば、ユーザにより指定された任意の座標が物体の領域(近似図形)内か否か(物体の領域を指示しているか否か)を簡単な判定式により判定することができる。さらに、これによって、ユーザによる映像中の動く物体の指示をより容易にすることができる。
【0221】
以下では、領域データ記憶部106に格納される物体領域データのデータ形式について説明する。なお、ここでは、代表点をスプライン関数により近似する場合を例にとって説明するが、もちろん、代表点を他の関数により近似する場合も同様である。
【0222】
図42に、映像中の物体の領域を表すスプライン関数と、物体に関連付けられた関連情報とを記録するための物体領域データのデータ形式の一例を示す。
【0223】
ID番号400Bは、物体毎に付与される識別番号である。なお、このデータは省略されてもよい。
【0224】
先頭フレーム番号401Bと最終フレーム番号402Bは、当該ID番号の物体の存在を定義する最初と最後のフレーム番号であり、具体的には、映像中で物体が登場し消えるまでのフレーム番号である。ただし、現実に映像中で物体が登場し消えるまでのフレーム番号ではなく、例えば映像中で物体が登場したときより後の任意のフレーム番号を先頭フレーム番号としてもよいし、また先頭フレーム番号以降でかつ映像中で物体が消えたときより前の任意のフレーム番号を最終フレーム番号としてもよい。なお、先頭/最終フレーム番号は先頭/最終タイムスタンプで代用することもできる。また、最終フレーム番号402Bは、物体存在フレーム数または物体存在時間に置き換えてもよい。
【0225】
関連情報へのポインタ(以下、関連情報ポインタとも言う)403Bは、当該ID番号の物体に関連付けられた関連情報データの記録してあるデータ領域のアドレスなどである。関連情報へのポインタ403Bを使うことにより、物体に関する関連情報を検索したり表示したりすることが容易にできる。また、関連情報へのポインタ403Bはプログラムや計算機の動作を記述したデータへのポインタであってもよい。この場合には、当該物体がユーザにより指定されると、計算機が所望の動作を行うことになる。
【0226】
なお、関連情報へのポインタ403Bは、例えば、物体により異なる動作をさせる必要のない場合には、省略することができる。
【0227】
なお、以下の説明では、物体領域データ内に関連情報へのポインタを記述する場合について説明するが、物体領域データ内に関連情報そのものを記述するようにしてもよい。また、物体領域データ内に関連情報へのポインタと関連情報そのものを任意に記述可能としてもよい。この場合には、物体領域データ内に記述されているのが関連情報へのポインタか関連情報そのものかを示すフラグを付加すればよい。
【0228】
近似図形数404Bは、物体の領域を近似している図形の数である。図39の例においては、一つの楕円で物体領域を近似しているので、図形の数は1となる。
【0229】
近似図形データ405Bは、近似図形を表現するための図形代表点の軌跡データ(例えばスプライン関数のパラメータ等)である。
なお、近似図形データ405Bは、近似図形数404Bに相当する数だけ存在する。近似図形数404Bが2以上の場合については後述する。
また、物体領域データにおいて、近似図形数404Bは常に1つとし(従って近似図形データ405Bも常に1つとなる)、近似図形数404Bのフィールドを省くようにしてもよい。
【0230】
次に、図43に、図42の近似図形データ405Bのデータ構造の一例を示す。
【0231】
図形種ID1300Bは、近似図形としてどのような図形を用いているかを示すためのデータであり、円、楕円、矩形、多角形などを特定する。
【0232】
代表点数1301Bは、図形種IDで特定される図形を代表する点の数を幾つ必要とするかを表す。
【0233】
1組の代表点軌跡データ1302B,1303B,1304Bは、図形の代表点の軌跡を表現するスプライン関数に関するデータ領域である。一つの図形代表点につき、X座標、Y座標、Z座標のスプライン関数データが必要になる。従って、スプライン関数を特定する代表点軌跡データは、代表点数(M)×3だけ存在する。
【0234】
代表点のZ座標は第2実施例で説明した図19〜図23の方法により求めても良いし、他の手法を用いて求めても良い。
【0235】
なお、使用する近似図形の種類を予め1種類、例えば楕円、に限定することも可能である。この場合には、図42の図形種IDのフィールドを省くことも可能である。
【0236】
また、図形種IDによって代表点数が一意に特定される場合には、代表点数を省くことも可能である。
【0237】
次に、図44に、代表点軌跡データ1302B,1303B,または1304Bのデータ構造の一例を示す。
【0238】
接点フレーム番号1400Bは、スプライン関数の節点を表しており、この節点まで多項式のデータ1403Bが有効であることを示している。多項式の係数データの数は、スプライン関数の最高次数により変化する(最高次数をKとすると、係数データの数はK+1となる)。そのため、多項式次数1401Bを参照する。多項式次数1401Bの後には、(多項式次数+1)個に相当する数の多項式係数1402Bが続く。
【0239】
また、スプライン関数は節点間で別の多項式で表現されるため、接点の数に対応した数の多項式が必要になる。従って、節点フレーム番号、多項式の係数などを含むデータ1403Bは、複数繰り返し記述される。節点フレーム番号が最終フレームと等しくなった場合には、それが最後の多項式係数データであることを意味しているので、代表点軌跡データが終わることがわかる。
【0240】
上記説明は代表点毎に奥行き情報(ここでは代表点軌跡データZ)を記述したが、第2実施例の図17のように対象物体毎に1つ奥行き情報を記述することも可能である。この場合のデータ構造を図45に示す。
【0241】
図形種ID1300B、代表点数1301B、代表点軌跡データ組1302B,1303Bに加えて奥行き情報1306Bを記述する。この奥行き情報1306Bは図18に示すものである。
【0242】
次に、近似図形として楕円以外の図形を用いた場合について説明する。
【0243】
図46は、近似図形として平行四辺形を用いた場合の代表点を説明するための図である。点A,B,C,Dが平行四辺形の頂点である。これらのうち3点が決まれば残りの1点も一意に決まるため、代表点としては4頂点のうちの3頂点とすれば十分である。この例では、A,B,Cの3点を代表点としている。
【0244】
さて、これまでは一つの物体に対して一つの図形を割り当てて、物体の領域を大まかに表す例を中心に説明をしてきたが、一つの物体の領域を複数の図形により近似し、近似精度を向上させることも可能である。図47は、一つの物体を数の図形で近似した例である。この例では画像中の人の領域を600Bから605Bまでの6つの楕円により表している。
【0245】
一つの物体を図47のように複数の図形で表す場合には、物体を複数の領域に分割する処理が必要となる。この処理にはどのような方法が用いられていても良いが、例えば人手で直接入力する方法がある。この場合、例えば、マウス等のポインティングデバイスを用いて、画像上で領域を矩形や楕円で囲む、あるいはポインティングデバイスの軌跡により領域を指定する、などの操作で実現することができる。また、人手ではなく自動で行う場合には、例えば、物体の動きのクラスタリングで実現する方法がある。これは、連続するフレーム間で物体中の各領域がどのような動きをしたかを相関法(例えば画像解析ハンドブック、第II部第3章、東京大学出版会、1991を参照)や勾配法(例えば、Determining optical flow,B.K.P.Horn and B.G.Schunck,Artificial Intelligence,Vol.17,pp.185−203,1981を参照)などにより求め、これらの動きの似ているものだけをまとめて領域を形成する方法である。
【0246】
このようにして分割された各領域に対しては、それぞれについて上述した処理を施すことにより、近似図形データを生成することが可能である。この場合、一つの物体の物体領域データに記述すべきスプライン関数が近似図形の増加に応じて増えることになるため、図48で表されるように近似図形データ405Bを、近似図形数404Bに相当する数(この場合、L個)だけ含むデータ構造となる。
【0247】
なお、前述したように物体領域データにおいて近似図形数を常に1つとし(従って近似図形データも常に1つとなる)、近似図形数のフィールドを省くようにする場合において、一つの物体を複数の図形で表すためには、一つの物体を近似する各図形毎に、物体領域データを生成すればよい(それらは同じID番号を有することになる)。
【0248】
なお、本実施例では、一つの物体を複数の図形で表す場合に、同一の図形を用いるものとしているが、複数種類の図形を混在して使用可能としてもよい。
【0249】
さらに、図形近似の変形例として矩形による近似方法について説明する。
【0250】
図49の(a)から(c)は、図39の(a)から(c)と同じ形式の図であるが、ここでは、領域図形近似部としては矩形による領域の近似方法を用い、図形代表抽出部としては矩形の4つの頂点を抽出する方法を用い、代表点関数近似部としてはスプライン関数による近似方法を用いた場合を例としている。
【0251】
図49の(a)において、2800Bは処理対象となっている映像中の1フレームを示している。2801Bは抽出対象となっている物体の領域を示している。2802Bは物体の領域を矩形で近似したものである。
【0252】
ここで、例えば図49の(a)において矩形2802Bを求める場合の処理手順の一例を図50に示す。すなわち、フレーム2800Bのマスク画像を例えばラスタースキャンし(ステップS60B)、対象画素が物体領域内であるときに(ステップS61B)、X座標とY座標のそれぞれについて、それまで保存されている最小値より小さい場合には最小値を更新し、それまで保存されている最大値より大きい場合には最大値を更新する(ステップS62B)ことを、全ての画素について繰り返しチェックすることによって、X座標とY座標のそれぞれについて物体領域を示す画素位置の最小値および最大値を求めれば、矩形2802Bの4つの頂点座標を得ることができる。
【0253】
ところで、矩形より楕円で物体領域を表現する方が適当な場合もある。図51に、物体の領域が矩形で表される場合に、その矩形から近似楕円を求める方法の一例を示す。図52に、この場合の処理手順の一例を示す。
【0254】
図51において、対象物体領域3300Bと外接矩形3301Bが得られているものとする。
【0255】
まず、近似矩形の内接楕円および外接楕円を求める(ステップS80B)。
【0256】
図51において、楕円3302Bは矩形3301Bの内接楕円であり、楕円3303Bは矩形3301Bの外接楕円である。
【0257】
次に、内接楕円3302Bの大きさを少しずつ外接楕円3303Bに近づけていき(ステップS81B)、物体領域を全て包含する楕円3304Bを求め(ステップS82B)、近似楕円とする。なお、繰り返し処理において、一回に内接楕円3302Bの大きさを拡大する単位は、予め定めておいてもよいし、内接楕円3302Bの大きさと外接楕円3303Bの大きさの差分に応じて決定してもよい。
【0258】
また、上記とは逆に、外接楕円3303Bの大きさを内接楕円3302Bに近づけていってもよい。この場合には、外接楕円3303Bは最初から物体領域を全て包含しているので、例えば、繰り返し処理において、始めて物体領域に包含されない部分を生じた楕円の、一回前における楕円を、近似楕円とすればよい。
【0259】
次に、図43、図44で例示した近似図形データ構造と代表点軌跡データとは別のデータ構造を説明する。
【0260】
図53、図54は、近似図形データおよび代表点軌跡データの記述フォーマットの他の例である。なお、図53、図54では、代表点軌跡データの部分については、1つの代表点についてのみ示してある。実際には、代表点の個数に対応して記述される。
【0261】
ここでは、多項式の最高次数を2次として説明する。
【0262】
前述した例(図42、図43、図44)では、多項式スプライン関数の全ての係数を記述していたのに対して、ここでの記述方法では、スプライン関数の節点の座標と、スプライン関数の2次の係数に関連する値との組み合わせにより記述する。この記述方法の利点は、節点が容易に取り出せるため、大まかな物体の軌跡が簡単にわかるという点である。
【0263】
以下、この記述方法について詳細に説明する。
【0264】
図53、図54中、図形種ID3900Bは、物体の形の近似に用いた図形の種類を特定する。例えば、物体の重心のみ(CENTROID)、矩形(RECTANGLE)、楕円(ELLIPSE)や、それらの組み合わせを指定できる。代表点数3901Bは、図形の種類によって定まる代表点軌跡の数を表す。
【0265】
節点数N3902Bは、代表点軌跡を表すスプライン関数の節点の数を表す。各節点に対応するフレームは、時間として表され、節点時刻3903Bに格納される。節点時刻3903Bは、設定数だけあるため、配列3904Bとして記述しておく。
【0266】
同様に、各節点のx座標、y座標、z座標もそれぞれ節点X3905B、節点Y3907B、節点Z3909Bの配列3906B,3908B、3910Bとして記述される。
【0267】
一次関数フラグ3911Bは、節点間のスプライン関数として一次関数だけが用いられているかどうかを表す。一部分でも2以上の多項式を用いる場合には、このフラグはオフにしておく。このフラグを用いることにより、近似関数として一次関数のみに使われる場合に以下で説明する関数特定情報3912B、3916B、3920Bを1つも記述しなくて済むため、データ量を削減できるというメリットがある。なお、必ずしもこのフラグは必要ではない。
【0268】
関数特定情報3912B、3916B、3920Bに含まれる関数ID3913B、3917B、3921B、関数パラメータ3914B、3918B、3922Bはそれぞれ多項式スプライン関数の次数と、その係数を特定するための情報を表す。
【0269】
関数特定情報は、X,Y,Z座標のそれぞれについて、(節点数−1)に相当する個数のものが存在し、これらは配列となって記述される。
【0270】
なお、上記では、多項式の最高次数を2次として説明したが、もちろん、多項式の最高次数を3次以上とすることも可能である。
【0271】
図53、図54は代表点毎に奥行き情報を記述したが、第2実施例の図17のように対象物体毎に1つ奥行き情報を記述することも可能である。この場合のデータ構造を図55、図56に示す。
【0272】
図55に示す物体領域データは図8と同様に、図形種ID700B、物体出現時間701B、物体存在期間702B、代表点数M703B、代表点軌跡704B、奥行き情報705Bを含む。代表点軌跡704Bは図56に示すように、図53、図54に示す近似図形データから図形種ID3900B、代表点数3901B、節点Z配列3910B、関数特定情報配列3923Bを省略したものである。
【0273】
第6実施例は物体領域を近似する図形の代表点の座標そのものの軌跡を記述する場合に、第2実施例の奥行き情報も付帯する例を説明したが、第3実施例(表示フラグ)、第4実施例(物体範囲情報)、第5実施例(パノラマ変換のためのパラメータ)は物体領域を近似する図形の代表点の座標そのものの軌跡を記述する場合にも同様に適用できることが理解される。
【0274】
第7実施例
第7実施例として任意のフレームにおける物体領域を参照フレームにおける参照物体領域と、該参照物体領域から任意のフレームにおける物体領域への変換パラメータとにより表現する場合に、第2実施例の奥行き情報も付帯する例を説明する。
【0275】
図56は第7実施例に係る物体領域情報生成装置の構成例を示す。この物体領域情報生成装置は、映像データ記憶部2C、物体領域処理部4C、変換パラメータ算出部6C、関数近似部8C、物体領域データ記憶部10Cを備えている。
【0276】
映像データ記憶部2Cは、映像データが記憶されているもので、例えばハードディスクや光ディスク、半導体メモリなどで構成される。なお、映像データ記憶部は他の処理部と同一サイトにある必要はなく、インターネット等を介して遠隔地に配置されていてもよい。
【0277】
物体領域処理部4Cは、基準となるフレームの物体領域(参照物体領域)や対象となるフレームの物体領域(対象物体領域)を得るための処理を行う。
【0278】
変換パラメータ算出部6Cは、参照物体領域をもとにして、対象物体領域の変換パラメータを算出する処理を行う。
【0279】
関数近似部8Cは、物体領域の変換パラメータの各々について、その時系列的な軌跡を時間関数に近似する処理を行う。なお、後述するように、変換パラメータ自体を記述する場合には、この関数近似部8は不要となる。
【0280】
物体領域データ記憶部10Cは、変換パラメータの各々について、その時系列的な軌跡を近似した関数式を表現するデータを含む物体領域データを記憶する。
【0281】
なお、本実施例では、参照物体領域の更新処理を行うことが好ましいが、その部分は図57では省略している。
【0282】
映像データ記憶部2Cおよび物体領域データ記憶部10Cは、別々の記憶装置・記憶媒体によって構成されていてもよいが、それらの全部または一部が同一の記憶装置・記憶媒体によって構成されていてもよい。
【0283】
また、本物体領域情報生成装置は、計算機上でソフトウェアを実行する形で実現することもできる。
【0284】
図58に、本実施例の物体領域情報生成装置の処理手順の一例を示す。
【0285】
まず、ステップS101Cでは、映像中の全てのフレームの物体領域(これは既知であるとする)を入力する処理を行う。例えば、GUIを介して入力する場合は、処理対象となる映像中の物体の輪郭をマウスやタッチパネル等のポインティングデバイスにより指定する。手動で入力された物体の輪郭内部を物体領域としてもよいし、また、入力された輪郭をSnakesとよばれる動的輪郭モデル(例えばM.Kass, A.Witkin and D.Terzopouls著、「Snakes: Active contour models」、Proceedings of the 1st International Conference on Computer Vision, pp.259−268, 1987年を参照)を用いた手法により画像中の物体の輪郭線にフィッティングさせ、フィッティング後の輪郭の内部を物体領域としても良い。なお、手動で入力する代わりに画像処理により自動的に求めてもよいまた、物体領域に関するデータが既に存在している場合は、そのデータを読込んでもよい。
【0286】
この物体領域のうち、少なくとも一つを、参照物体領域として登録しておく。登録方法としては、物体の領域内には1を、領域外には0をそれぞれ対応させた2値のビットマップを作成し、記憶しておく方法がある。
【0287】
また、参照物体領域の含まれるフレームを、参照フレームとして登録しておく。
【0288】
次に、ステップS102Cでは、参照物体領域から処理対象となっている1つのフレームにおける物体領域(以下、対象物体領域と呼ぶ)への変換パラメータを算出する処理を行う。
【0289】
この処理は、例えば、対象物体領域内のオプティカルフロー算出処理とオプティカルフローからの変換パラメータ算出処理との2つの処理の組み合わせにより実現することができる。対象物体領域内のオプティカルフロー算出処理は、参照フレームから現フレームにかけての物体領域内の各画素(もしくは数画素からなるブロック)の動き(オプティカルフロー)を算出する処理である。
【0290】
図59に、各フレームにおいて物体領域内のオプティカルフローを求める処理例の概要を示す。
【0291】
図59において、201Cは参照フレーム、202Cは参照フレームの次のフレーム、そして203Cはフレーム202Cの次のフレームを表している。204C,205C,206Cはそれぞれのフレームにおける物体の領域である。207Cはフレーム201Cからフレーム202Cへの物体領域のオプティカルフローである。また、208Cはフレーム201Cからフレーム203Cへの物体領域のオプティカルフローである。
【0292】
このようにオプティカルフローを求める方法は、参照物体領域と任意のフレームにおける物体領域を直接関係させることができるため、任意フレームの物体領域を算出したり、指定された座標が物体の内部か外部かを判定したりする処理が容易である。
【0293】
図59の例では参照フレームから現フレームにかけての物体領域内の各画素(もしくは数画素からなるブロック)のオプティカルフローを求めたが、その代わりに、一つ前のフレームから現フレームにかけての物体領域内の各画素(もしくは数画素からなるブロック)のオプティカルフローを求めるようにしても良い。図60に、この場合の処理例の概要を示す。
【0294】
図60において、301Cは参照フレーム、302Cは参照フレームの次のフレーム、そして303Cはフレーム302Cの次のフレームを表している。304C,305C,306Cはそれぞれのフレームにおける物体の領域である。307Cはフレーム301Cからフレーム302Cへの物体領域のオプティカルフローである。また、308Cはフレーム302Cからフレーム303Cへの物体領域のオプティカルフローである。
【0295】
このようなオプティカルフローの算出方法は、図59の方法に比べてパラメータの変動が少なくなるが、任意フレームの物体領域の算出が面倒になる。図59と図60のどちらの方法を用いても構わないが、本実施例では、図59の方法でオプティカルフローを算出するものとして説明を続ける。
【0296】
なお、オプティカルフローを求める具体的な方法は多数提案されており(例えば、J.L.Barron, D.J.Fleet and S.S.Beauchemin著、「Performance of Optical FlowTechniques」、International Journal of Computer Vision, vol.12, no.1, pp.43−77, 1994年を参照)、どのような方法でも用いることが可能である。
【0297】
また、参照物体領域内の特徴点を複数選択し、これら特徴点を中心とするブロックをテンプレートとするテンプレートマッチングにより求めた移動ベクトルをオプティカルフローの代わりに用いても良い。
【0298】
次に、オプティカルフローから変換パラメータを算出する処理を行うが、求める変換パラメータは前提とする変換モデルにより異なる。
【0299】
本実施例では、
パラメータ数が1のモデルとして、「拡大縮小モデル」、「回転モデル」、
パラメータ数が2のモデルとして、「平行移動モデル」、
パラメータ数が4のモデルとして、「拡大縮小/回転/平行移動モデルの複合モデル」(ここでは4−parameter変換モデルと呼ぶ)、
パラメータ数が6のモデルとして、「affine変換モデル」、
パラメータ数が8のモデルとして、「射影変換モデル」、
パラメータ数が12のモデルとして、「parabolic変換モデル」が選択できるものとする。
【0300】
これらのモデルを数式で表したのが数式(1)から数式(7)である。
【0301】
x´=a0x,
y´=a0y (1)
x´=xcosa0−ysina0,
y´=xcosa0+ysina0 (2)
x´=x+a0,
y´=y+a1 (3)
x´=a0x+a1y+a2,
y´=a1x−a0y+a3 (4)
x´=a0x+a1y+a2,
y´=a3x+a4y+a5 (5)
x´=(a0x+a1y+a2)/(a3x+a4y+1),
y´=(a5x+a6y+a7)/(a3x+a4y+1) (6)
x´=a0x2+a1xy+a2y2+a3x+a4y+a5,
y´=a6x2+a7xy+a8y2+a9x+a10y+a11 (7)
数式(1)は拡大縮小モデル、数式(2)は回転モデル、数式(3)は平行移動モデル、数式(4)は4−parameter変換モデル、数式(5)はaffine変換モデル、数式(6)は射影変換モデル、数式(7)はparabolic変換モデルに相当する。数式中、参照物体領域中の座標を(x,y)、対象物体領域における物体の対応点の座標を(x’,y’)としている。各変換モデルでは、両フレームにおける対応点の関係が、それぞれの数式のようにa0〜a11のパラメータを用いて表現できることを仮定している。もちろん、上述したモデル以外のパラメトリックなモデルを用意しても構わない。
【0302】
変換パラメータの算出には、最小二乗法を用いることができる。これは、オプティカルフローにより求められた(x,y)と(x’,y’)との組み合わせを変換モデルの数式に代入した際に生じる誤差の2乗和を最小とするように変換パラメータを決定する方法である。これは古典的な方法で、行列演算で容易に実行することができる。
【0303】
次に、ステップS103Cでは、算出した物体領域の変換パラメータを時間関数へ変換(近似)する処理を行う。
【0304】
すなわち、ある時間区間におけるn個の変換パラメータai(0≦i≦n−1)(例えば、n=12)を、
ai=fi(t) (fi(t)は時間tの関数)
と表現する。
この時間区間とは、同一の参照物体領域を用いてオプティカルフローを算出したフレームが含まれる時間区間である。また、fi(t)は多項式、スプライン関数、定数などとすることができる。
【0305】
図61に、オプティカルフローから算出された(ある1つの)aiを関数により表現した様子を示す。図61において、401Cは関数表現の対象となっている時間区間、402Cはオプティカルフローから算出されたaiの値、403Cはaiを表現する関数ai=fi(t)を表している。
【0306】
このように関数により表現するメリットは、物体領域を記述するデータを少なくできることである。例えば、関数として2次以下の多項式を用いるとすると、この関数は3つの実数により表現することができるため、ある時間区間全てのパラメータの値を記述するのに3つの実数で十分になる。
【0307】
パラメータを表現する関数を多項式やスプライン関数とする場合には、変換対象となっている時間区間におけるaiの値とfi(t)により算出される値との誤差が小さくなるように決定する。例えば、最小二乗法を利用すれば容易に計算ができる。
【0308】
なお、この近似関数を求める処理は、例えば、当該物体領域に関する各フレームにおけるパラメータ値が得られる毎に行う(例えば各フレームのパラメータ値が得られる毎に近似を行うとともに近似誤差を求め、近似誤差が一定の範囲に収まるように近似区間を適宜分割する方法)ようにしてもよいし、参照物体領域が更新されて参照物体一定区間が定まった後に一括して行うようにしてもよい。
【0309】
このステップS103Cの処理手順については後でより詳細に説明する。
【0310】
次に、ステップS104Cでは、参照物体領域の更新の必要性の判定処理を行う。
【0311】
本実施例は、任意のフレームにおける物体の領域を、参照フレームにおける参照物体領域と、参照物体領域の変換パラメータとにより表現するものである。しかし、表現したい物体領域と参照物体領域とがあまりに異なった形状である場合には、変換パラメータにより参照物体領域を移動/変形しても、表現したい物体領域に似ている形状が得られない。このような場合には、参照物体領域を別のフレームにおける物体領域に変更(参照領域の更新)するのが効果的である。そこで、本実施例では、ステップS104Cにて、そのような変更が必要であるか否かを判定するようにしている。
【0312】
この判定には、例えば、あるフレームの実際の物体領域と予測物体領域との誤差があらかじめ定められているしきい値を上回るかどうかにより判断する方法を用いることができる。予測物体領域とは、変換パラメータを用いて参照物体領域から算出したあるフレームの物体領域のことである。変換に用いる変換パラメータは、時間関数ai=fi(t)から算出した値を用いる。さらに、実際の物体領域と予測物体領域との誤差としては、例えば、両領域の共通部分の面積と共通しない部分の面積との比を用いることができる。
【0313】
次に、ステップS105Cでは、先のステップS104Cの判定処理において参照物体領域の更新が決定された場合に、参照物体領域更新処理を行う。この処理は、基本的にはステップS101Cの処理と同様である。すなわち、現在ステップS102Cの変換パラメータを算出する処理の対象となっているフレームを参照フレームとして登録し、参照物体領域を表現する2値のビットマップを作成する処理である。また、参照フレームにおける物体領域を参照物体領域として登録しておく。
【0314】
次に、ステップS106Cでは、映像中の物体領域の記述処理が終了かどうかを判定する。この判定基準としては、例えば、ビデオの終端かどうか、物体領域存在区間の終端かどうか、ユーザにより終了が指示されたかどうか、などがある。ステップS102CからステップS104CまたはステップS105Cまでの処理が、ステップS106Cで終了と判定されるまでフレーム毎に繰り返し実行される。
【0315】
そして、ステップS107Cにおいて、これまでの処理により計算された物体領域の記述情報(変換パラメータを近似する関数のパラメータ)を、予め定められた記述フォーマットに従って記録する処理を行う。記録先は、例えば、計算機の内部もしくは外部の半導体メモリ、磁気テープ、磁気ディスク、光ディスクなどの物体領域データ記憶部10Cである。
【0316】
図62に、本実施例における1つの物体領域に対する物体領域データの記述フォーマットの一例を示す。
【0317】
図62において、501Cは、物体IDで、物体に付与された物体固有の識別情報(例えば、番号または記号)である。
502Cは、参照物体領域一定区間数で、同一の参照物体領域を有するフレーム区間の数である(図62ではNとしている)。これは参照フレームの数とも等しい。
【0318】
503Cおよび504Cは、それぞれ、物体領域存在区間の先頭時刻および末尾時刻である。これらは時刻もしくはフレーム番号により記述される。末尾時刻の代わりに物体領域存在区間の長さ(時間もしくはフレーム番号の差分値)を用いることもできる。
505Cは、物体領域記述情報である。物体領域記述情報505Cは、参照物体領域区間毎に記述され、すなわち参照物体領域区間数(図62の例ではN個)だけ記述される。
【0319】
512Cは当該物体領域の奥行き情報であり、その詳細は図18に示したものである。
【0320】
各々の物体領域記述情報505Cの具体的内容は、図62中の506C〜510Cに示される。
506Cおよび507Cは、それぞれ、参照物体領域区間の先頭時刻および末尾時刻である。これらは時刻もしくはフレーム番号により記述される。末尾時刻は参照物体領域区間の区間長で置き換えることができる。
508Cは、変換モデルIDである。これは、拡大縮小モデル、affine変換モデル、parabolic変換モデルなどのうちどのモデルを用いて物体領域を記述したかを特定するためのIDである。
511Cは、原点座標で、変換モデルの原点座標を画像のどこにとるかを決定するものである。原点座標データは、参照物体領域の重心位置を常に原点とするなどのルールを決めておく場合には省略することができる。
509Cは、参照物体領域情報であり、参照物体領域を特定するための情報である。具体的には、参照フレームの時刻(またはフレーム番号)、参照物体領域を表すビットマップデータ(もしくはビットマップデータへのポインタ)である。なお、ビットマップデータは、そのままではデータサイズが大きいため、圧縮して保存するのが好ましい。
510Cは、変換パラメータ情報である。変換パラメータ情報は、変換モデル(変換モデルID)により定まるパラメータ数(図62の例ではM個)だけ記述される。変換パラメータは、具体的には、各フレームでのパラメータの値を示す配列や、パラメータを近似する関数を特定する情報(係数値など)などである。変換パラメータ情報の詳細については後で詳細に説明する。
【0321】
以上の処理により、映像中の時空間的に変化する物体領域を簡単な記述データとして記録しておくことができる。
【0322】
上述の説明では、ビットマップで物体領域を表し、参照物体領域から処理対象となっているフレームの物体領域(対象物体領域)への変換パラメータを算出したが、物体領域を近似図形で近似し、参照物体領域の近似図形の各代表点から処理対象となっているフレームの物体領域(対象物体領域)の近似図形の対応する各代表点への変換パラメータを算出してもよい。以下、この例を説明する。
【0323】
図63に物体領域情報生成装置の構成例を示す。この物体領域情報生成装置は、映像データ記憶部2C、物体領域処理部4C、図形近似部5C、変換パラメータ処理部6C、関数近似部8C、物体領域データ記憶部10Cを備えている。図57の構成に対して図形近似部5Cが追加されたものである。図形近似部5Cは物体領域を近似図形で近似し、その近似図形の各代表点を求める処理を行うものである。変換パラメータ算出部6Cは、基準となる参照フレームの参照物体領域の近似図形の代表点をもとにして、対象となるフレームの対象物体領域の近似図形の代表点への変換パラメータを算出する。関数近似部8Cは、物体領域の近似図形の代表点の変換パラメータの各々について、その時系列的な軌跡を時間関数に近似する。もちろん、本物体領域情報生成装置も、計算機上でソフトウェアを実行する形で実現することもできる。
【0324】
図64にこの物体領域情報生成装置の処理手順の一例を示す。
【0325】
ステップS301Cは、図58におけるステップS101Cと同様の処理である。
【0326】
ステップS302Cは、物体領域存在区間全体にわたり、物体領域をあらかじめ決められた図形により近似する処理である。
【0327】
物体領域を図形近似する処理では、例えば、物体領域を囲むなるべく小さな近似図形を見つける。近似に用いる図形としては、傾きのないあるいは傾きのある矩形(正方形、長方形)、平行四辺形、傾きのないあるいは傾きのある楕円(円を含む)、多角形など、種々の図形を用いることができる。また、領域の近似方法も、領域に外接する図形に近似する方法、領域に内接する図形とする方法、領域の重心を近似図形の重心とする方法、領域と近似図形の面積を等しくする方法、領域と近似図形とが重ならない部分の面積を最小とする方法など、種々の方法がある。
【0328】
なお、物体の領域を予め定められた図形により近似するのではなく、対象物体(オブジェクト)毎に図形の種類をユーザが指定できるようにしてもよいし、対象物体毎にその物体の形状等に応じて図形の種類を自動的に選択するようにしてもよい。
【0329】
また、物体領域を近似する図形近似を求める処理は、フレーム毎に行っても良いし、もしくは対象フレームの前後数フレームの物体領域を使って行っても良い。後者の場合には、近似図形の大きさや位置などの変化を数フレームの間で平滑化することにより、近似図形の動きや変形をなめらかにしたり、物体領域の抽出誤差を目立たなくすることができる。なお、近似図形の大きさは、フレーム毎に異なって構わない。
【0330】
物体領域の近似図形が求められたならば、この近似図形を表現する代表点を抽出する処理が行われる。どのような点を代表点とするかは、どのような近似図形を用いるかにより異なる。例えば、近似図形が矩形の場合には4つもしくは3つの頂点を代表点とすることができ、近似図形が円の場合には中心と円周上の一点としたり直径の両端点としたりすることができる。また、楕円の場合には楕円の外接矩形の頂点としたり2つの焦点と楕円上の1点(例えば短軸上の1点)としたりすればよい。任意の閉多角形を近似図形とする場合には、各頂点を図形の代表点とする必要がある。
【0331】
代表点の抽出は、1フレーム分の近似図形が得られるたびに、フレーム単位で行う。また、各代表点は、水平方向の座標xと、垂直方向の座標yと、により表される。
【0332】
物体の領域が平行四辺形で表される場合に、近似楕円を求める方法の一例は図40に示したものと同じである。
【0333】
楕円を表現する図形代表点として2つの焦点および1つの楕円上の点を求める方法の一例は図41に示したものと同じである。
【0334】
この他、近似図形として平行四辺形や任意形状の多角形を用いることもできる。
【0335】
さらに、このステップS302Cでは、参照物体領域と参照フレームを設定する。参照物体領域は、物体領域存在区間の先頭のフレーム(参照フレーム)における物体領域近似図形である。また、参照物体領域近似図形の代表点の位置を併せて記憶しておく。
【0336】
次に、ステップS303Cでは、処理対象としているフレームの物体領域近似図形の代表点と、参照物体領域近似図形の代表点とを対応させる。
【0337】
図65に、代表点の対応づけ方法の一例を示す。図65において、1000Cは近似矩形(複数)の重心である。図65では、参照物体領域近似図形1001Cと対象物体領域近似図形1002Cが得られている。
【0338】
まず、近似図形1001Cと近似図形1002Cのいずれかを平行移動させ、重心位置を一致させる(重心位置を一致させた状態が図65である)。
次に、それぞれの矩形の頂点同士の距離d1〜d4を計算し、全ての頂点の組み合わせで距離の和を求める。
そして、距離の和が最小となる組み合わせを求め、対応づけする。
なお、この方法では対応付けが難しい場合がある。例えば、近似矩形が正方形に近い形状であり且つ45度回転移動している場合には、対応付けが難しい(2通りの組み合わせにおいて距離の和が同じような値になる)。そこで、そのような場合には、近似図形内の物体領域同士の排他的論理和を取り、その面積が最小となる組み合わせを採用する方法、あるいは物体領域のテクスチャの絶対差分を求め、差分値が最小となる組み合わせを求める方法などを用いれば良い。
【0339】
ステップS304Cでは、物体領域近似図形の代表点の移動ベクトルから変換パラメータを算出する。
【0340】
この処理では、代表点の動きをオプティカルフローの代わりに用いて、図58のステップS102Cと同等の処理により変換パラメータを算出する。ただし、代表点の数は少ないため、必ずしも変換パラメータが求まるとは限らない。例えば、矩形、楕円、平行四辺形は3つの代表点を持つが、この3つの移動ベクトルから射影変換モデルのパラメータ8個を求めることはできない。図66に、近似に用いる図形の種類と、変換パラメータを求めることができる変換モデルとの関係を示す。図66中の○はパラメータが算出できる組み合わせ、×は算出できない組み合わせである。
【0341】
ステップS305Cは、ステップS304Cで求めた変換パラメータを時間関数により近似する処理であり、図58のステップS103Cと同じ処理である。
【0342】
ステップS306Cは、参照物体領域を更新する必要があるか否かを判定する処理である。この処理では、まず、変換パラメータにより参照物体領域を変換し、現フレームの予測物体領域を算出する。もちろん、参照物体領域の代表点のみを変換パラメータにより変換し、変換後の代表点により特定される図形を構成しても同じ予測物体領域が算出できる。次に、予測物体領域と現フレームの対象物体領域近似図形との誤差を計算し、しきい値処理により参照物体領域更新を行うか否かを判定する。
【0343】
ステップS307Cは、ステップS306Cにおいて参照物体領域の更新が必要と判定された場合に、実際に更新を行う処理である。処理対象のフレームを参照フレームとし、当該フレームの物体領域近似図形を新たな参照物体領域として記憶し、参照物体領域の代表点の座標値も併せて保持しておく。
【0344】
ステップS308Cは、図58のステップS106Cと同様に映像中の物体領域の記述が終了かどうかを判定する。
【0345】
ステップS309Cは、図58のステップS107Cと同様に算出した物体領域の情報(変換パラメータを近似する関数のパラメータ)を予め定められた記述フォーマットで記録する処理である。
【0346】
図67に、物体領域データの記述フォーマットの一例を示す。この記述フォーマットは、図形情報1109C以外は、図62に例示した記述フォーマットと同じである。図62の参照物体領域情報509Cの代わりの図形情報1109Cは、図形の種類を特定するIDと、参照物体領域の近似図形の代表点の座標とからなる。図67中のMはIDにより特定される図形に必要な代表点の数を表す。
【0347】
以上では、ある1つの物体領域に関して全てのフレームを対象として変換パラメータを求めたが、変換パラメータを求めるフレームをサンプリングするようにしてもよい。例えば、3フレームに1フレームだけサンプリングし、フレーム1から参照物体領域、フレーム4,7,…からそれぞれ対象物体領域を用いるなどである。
【0348】
なお、変換パラメータを時間関数で表現し、その関数を特定する情報を物体領域データに記述する場合には、そのサンプリングされたパラメータ値によってこれまでと同様に関数近似を行えばよい。また、物体領域データにサンプリングに関する情報を含める必要はない。
【0349】
一方、変換パラメータの値を物体領域データに直接記述する場合には、例えば、(1)そのサンプリングされなかったフレームのパラメータ値を適宜補間し(例えば、直前にサンプリングされたフレームと同じ値を記述する)、物体領域データは図62と同様とするか、あるいは、(2)図68のように、物体領域データにサンプリング情報520Cを持たせ、サンプリングした場合にはそのサンプリングしたフレームのパラメータ値のみを記述し、サンプリング情報520Cにサンプリング方法を特定可能な情報(例えば、nフレームに1回サンプリングしたことを示す情報として数値n(ただし、例えばn=1の場合には全てのフレームからサンプリングされたことを示すものとする))を記述すればよい。なお、(2)の方法においては、この物体領域情報を使用する際において、サンプリング情報520を参照することにより、サンプリングされなかったフレームのパラメータ値を必要に応じて補間することができる。
【0350】
次に、1つの物体(オブジェクト)を複数の領域に分けて物体領域データを作成する方法について説明する。これまでは、1つの物体に対して1つの変換パラメータを求めていた。しかし、見かけの形状が大きく変化するような物体の場合、物体をいくつかの領域に分割し、それぞれの領域に対して変換パラメータを用いる方が良い場合がある。例えば、歩行している人間では、頭や胴体の部分は動きが少ないが、手足は激しく動作する。人間を1つの物体として扱うよりも、頭/胴体/手/足と別の領域に分割する方が、各部の変換パラメータを安定して求めることができる。
【0351】
1つの物体を複数の図形で表す場合には、物体を複数の領域に分割する処理が必要となる。この処理にはどのような方法を用いてもよいが、例えば人手で直接入力する方法がある。この場合、例えば、マウス等のポインティングデバイスを用いて、画像上で領域を矩形や楕円で囲む、あるいはポインティングデバイスの軌跡により領域を指定する、などの操作で実現することができる。また、人手ではなく自動で行う場合には、例えば、物体の動きのクラスタリングで実現する方法がある。これは、連続するフレーム間で物体中の各領域がどのような動きをしたかを相関法(例えば、画像解析ハンドブック、第II部、第3章、東京大学出版会、1991を参照)や勾配法(例えば、Determining optical flow, B. K. P. Horn and B. G. Schunck, Artificial Intelligence, Vol.17, pp.185−203, 1981を参照)などにより求め、これらの動きの似ているものだけをまとめて領域を形成する方法である。
【0352】
図69に、オプティカルフローの似ているものをまとめて領域分割を行う様子を示す。
【0353】
また、図70に、物体を複数の領域で記述するためのデータ構造の一例を示す。これは物体を単一の領域で記述するデータ構造(図67)を拡張したものであり、2906C以下のデータは図67と共通である。2902Cに分割した領域の数を保持し、2905C以降に各領域のデータを保持する。
【0354】
第7実施例は任意のフレームにおける物体領域を参照フレームにおける参照物体領域と、該参照物体領域から任意のフレームにおける物体領域への変換パラメータとにより表現する場合に、第2実施例の奥行き情報も付帯する例を説明したが、第3実施例(表示フラグ)、第4実施例(物体範囲情報)、第5実施例(パノラマ変換のためのパラメータ)もこのような情報として記述された物体領域データにも同様に付帯できることが理解される。
【0355】
本発明は上述した実施例に限定されず、種々変形して実施可能である。例えば、これまでの各実施例においては、物体の領域を近似する図形の代表点として、近似図形を特定するための情報を用いたが、その代わりに、映像中の物体領域から取り出した複数の特徴的な点を、図形の代表点として用いてもよい。特徴点としては、種々のものが考えられるが、例えば、物体の角(例えば、Gray−level corner detection,L.Kitchen and A.Rosenfeld,Pattern Recognition Letters,No.1,pp.95−102,1982による方法など)、物体の重心などが考えられる。なお、物体の重心を特徴点とする場合は、重心であろう点の周囲を指定してから自動抽出することが好ましい。なお、この方法の場合には、近似図形を特定するには情報が不足するので、物体領域データから近似図形自体を特定することはできないが、上層処理装置側での処理は簡易になる。この場合の物体領域データの記述スタイル(フォーマット)は上述の例と同様であり、単に「近似図形データ」が「特徴点データ」となり、「代表点数」が「特徴点数」となり、「代表点軌跡データ」が「特徴点軌跡データ」となり、近似図形数と図形種IDのフィールドは不要となる。
【0356】
また、本発明は、コンピュータに所定の手段を実行させるための(あるいはコンピュータを所定の手段として機能させるための、あるいはコンピュータに所定の機能を実現させるための)プログラムを記録したコンピュータ読取り可能な記録媒体としても実施することもできる。
【0357】
なお、本願発明は上記各実施形態に限定されるものではなく、実施段階ではその趣旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組合わせた効果が得られる。さらに、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【0358】
また、上述の説明は個々の実施例それぞれについて行ったが、複数の実施例を適宜組み合わせてもよい。
【0359】
【発明の効果】
本発明によれば、映像中における対象となる物体の領域を該物体の領域に対する近似図形の代表点の位置データまたはそれを特定可能なデータをフレームの進行に沿って並べることにより得られる軌跡を近似した関数のパラメータとして記述することにより、映像中の所望の物体の領域を少ないデータ量で記述でき且つその作成やそのデータの扱いも容易にすることができる。
また、本発明によれば、映像中の物体に対する効率的、効果的な検索を行うことが可能になる。
【図面の簡単な説明】
【図1】本発明の第1実施例に係る物体領域情報生成装置の構成例を示す図。
【図2】第1実施例の物体領域情報生成装置の処理の流れの一例を示すフローチャート。
【図3】映像中の物体の領域を物体領域データで記述するための処理の概要を説明するための図。
【図4】基準代表点のX座標の値を近似する関数を求める例を説明するための図。
【図5】基準代表点以外の代表点を表すための差分ベクトルの一例を説明するための図。
【図6】基準代表点以外の代表点を表すための差分ベクトルのX成分の値を近似する関数を求める例を説明するための図。
【図7】代表点の座標または差分ベクトルから近似関数を求める処理の一例を示すフローチャート。
【図8】物体領域データのデータ構造の一例を示す図。
【図9】物体領域データ中の代表点軌跡データのデータ構造の一例を示す図。
【図10】基準代表点以外の代表点を表すための差分ベクトルの他の例を説明するための図。
【図11】基準代表点以外の代表点を表すための差分ベクトルのさらに他の例を説明するための図。
【図12】フレーム間での差分ベクトルの一例を説明するための図。
【図13】物体領域データのデータ構造の他の例を示す図。
【図14】物体領域データから任意の時刻における物体の領域を取り出す処理の一例を示すフローチャート。
【図15】本発明の第2実施例に係る物体領域情報生成装置の構成例を示す図。
【図16】第2実施例に係る物体領域データ中の代表点軌跡データのデータ構造の他の例を示す図。
【図17】物体領域データのデータ構造のさらに他の例を示す図。
【図18】奥行き情報のデータ構造の一例を示す図。
【図19】奥行き方向の位置情報の測定について説明するための図。
【図20】指定した位置に近い物体を検索する処理の一例を示すフローチャート。
【図21】奥行き方向の位置情報の測定について説明するための図。
【図22】奥行き方向の位置情報の測定について説明するための図。
【図23】奥行き方向の位置情報の測定について説明するための図。
【図24】移動物体が指定した距離に存在する時刻を求めるための前処理の手順の一例を示すフローチャート。
【図25】移動物体が指定した距離に存在する時刻を求める処理の手順の一例を示すフローチャート。
【図26】第3実施例に係る表示フラグについて説明するための図。
【図27】代表点軌跡データ作成について説明するための図。
【図28】物体領域データのデータ構造のさらに他の例を示す図。
【図29】表示フラグ情報のデータ構造の一例を示す図。
【図30】物体領域データ中の代表点軌跡データのデータ構造のさらに他の例を示す図。
【図31】検索時の処理の一例を示すフローチャート。
【図32】第4実施例に係る物体通過範囲情報について説明するための図。
【図33】物体通過範囲情報のデータ構造の一例を示す図。
【図34】物体通過範囲情報のデータ構造の他の例を示す図。
【図35】指定された座標を通過する物体を選び出す処理の一例を示すフローチャート。
【図36】第5実施例に係るモザイキングを用いた物体領域情報記述方法の処理手順の一例を示すフローチャート。
【図37】モザイキングを用いた物体領域情報記述方法について説明するための図。
【図38】パノラマ画像への変換パラメータのデータ構造を示す図。
【図39】第6実施例に係る物体の領域を物体領域データで記述するための処理の概要を説明するための図。
【図40】物体の領域を楕円で近似する例について説明するための図。
【図41】物体の領域を近似する楕円の代表点を求める例について説明するための図。
【図42】物体領域データのデータ構造の一例を示す図。
【図43】物体領域データ中の近似図形データのデータ構造の一例を示す図。
【図44】近似図形データ中の代表点軌跡データのデータ構造の一例を示す図。
【図45】物体領域データ中の近似図形データのデータ構造の他の例を示す図。
【図46】近似図形を平行四辺形とした場合の代表点の例について説明するための図。
【図47】映像中の物体の領域を複数の楕円で表現した例を示す図。
【図48】複数の近似図形データを含む物体領域データのデータ構造の一例を示す図。
【図49】映像中の物体の領域を物体領域データで記述するための他の処理の概要を説明するための図。
【図50】近似矩形を求める処理手順の一例を示すフローチャート。
【図51】近似矩形から近似楕円を求める方法について説明するための図。
【図52】近似矩形から近似楕円を求める処理手順の一例を示すフローチャート。
【図53】物体領域データのデータ構造の他の例を示す図。
【図54】物体領域データのデータ構造のさらに他の例を示す図。
【図55】物体領域データのデータ構造のさらに他の例を示す図。
【図56】物体領域データのデータ構造のさらに他の例を示す図。
【図57】第7実施例に係る物体領域情報生成装置の構成例を示す図。
【図58】第7実施例の処理手順の一例を示すフローチャート。
【図59】物体領域のオプティカルフロー算出方法の一例を説明するための図。
【図60】物体領域のオプティカルフロー算出方法の他の例を説明するための図。
【図61】1つの変換パラメータを時間関数で近似表現する例を説明するための図。
【図62】参照物体領域がビットマップ表現されている場合の物体領域データの記述フォーマットの一例を示す図。
【図63】第7実施例の物体領域情報生成装置の他の構成例を示す図。
【図64】図63の装置の処理手順の例を示すフローチャート。
【図65】物体領域の近似図形の代表点同士を対応付ける方法について説明するための図。
【図66】近似に用いる図形の種類と変換パラメータを求めることができる変換モデルとの関係を示す図。
【図67】参照物体領域が図形近似されている場合の物体領域データの記述フォーマットの一例を示す図。
【図68】サンプリング情報を含む物体領域データの記述フォーマットの一例を示す図。
【図69】オプティカルフローを用いて1つの物体を動きが似ている領域に分割する様子を説明するための図。
【図70】1つの物体を複数の領域で記述するための物体領域データの記述フォーマットの一例を示す図。
【符号の説明】
100…映像データ記憶部
101…領域抽出部
102…領域の図形近似部
103…図形代表点抽出部
104…代表点列の関数変換部
105…関連情報記憶部
106…領域データ記憶部
Claims (22)
- 映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報を生成する装置であって、
フレーム毎に前記任意の物体の領域を図形で近似する手段と、
フレーム毎に該図形を表す複数の代表点を抽出する手段と、
前記複数の代表点のうちの少なくとも一点を基準代表点とし、該基準代表点の位置データと、前記基準代表点に対する残りの代表点の相対位置データとを、フレームの進行に沿って並べることにより得られる軌跡を関数で近似する手段と、
該関数を用いて該物体の領域に関する情報を生成する手段と、
を具備する物体領域情報生成装置。 - 前記相対位置データは、前記基準代表点と前記残りの代表点との差分ベクトルの成分であることを特徴とする請求項1に記載の物体領域情報生成装置。
- 映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報を生成する装置であって、
フレーム毎に前記任意の物体の領域を図形で近似する手段と、
フレーム毎に該図形を表す複数の代表点を抽出する手段と、
基準フレームにおける近似図形の前記複数の代表点の位置データと、他のフレームにおける前記基準フレームの複数の代表点に対応する代表点の相対位置データとを、フレームの進行に沿って並べることにより得られる軌跡を関数で近似する手段と、
該関数を用いて該物体の領域に関する情報を生成する手段と、
を具備する物体領域情報生成装置。 - 前記相対位置データは前記基準フレームにおける前記複数の点と、前記他のフレームの前記基準フレームの複数の点に対応する点との差分ベクトルの成分であることを特徴とする請求項3に記載の物体領域情報生成装置。
- 映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報を生成する装置であって、
フレーム毎に前記任意の物体の領域を図形で近似する手段と、
フレーム毎に該図形を表す複数の代表点を抽出する手段と、
前記複数の代表点の位置を特定可能なデータをフレームの進行に沿って並べることにより得られる軌跡を関数で近似する手段と、
該関数、および前記図形または各々の前記代表点が見えている状態にあるフレーム区間、あるいは見えていない状態にあるフレーム区間を特定するフラグ情報を用いて該物体の領域に関する情報を生成する手段と、
を具備する物体領域情報生成装置。 - 映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報を生成する装置であって、
フレーム毎に前記任意の物体の領域を図形で近似する手段と、
フレーム毎に該図形を表す複数の代表点を抽出する手段と、
前記複数の代表点の位置を特定可能なデータをフレームの進行に沿って並べることにより得られる軌跡を関数で近似する手段と、
該関数、および前記図形が前記複数フレームにおいて存在した範囲を示す存在範囲情報を用いて該物体の領域に関する情報を生成する手段と、
を具備する物体領域情報生成装置。 - 前記関数近似手段は、複数の代表点の位置データ、またはこれを特定可能な位置の次元を持つデータをフレームの進行に沿って並べたときの軌跡を所定の関数で近似し、
前記情報生成手段は、該近似図形が前記複数フレームにおいて存在した範囲を示す存在範囲近似図形を生成し、該関数、および該存在範囲近似図形を用いて該物体の領域に関する情報を生成することを特徴とする請求項6に記載の物体領域情報生成装置。 - 複数フレームをその重複部分を重ねるようにして生成されるパノラマ画像中を推移する任意の物体の領域に関する情報を記述するための物体領域情報を生成する装置であって、
前記パノラマ画像中の前記任意の物体の領域を図形で近似する手段と、
前記パノラマ画像中を推移する前記図形を表す複数の代表点を抽出する手段と、
前記複数の代表点の該パノラマ画像中における位置を特定可能なデータをフレームの進行に沿って並べることにより得られる軌跡を関数で近似する手段と、
該関数を用いて該物体の領域に関する情報を生成する手段と、
を具備する物体領域情報生成装置。 - 前記物体の領域に関する情報は、対象となる前記複数フレームのうちの先頭のフレーム及び最終のフレームを特定可能な情報と、該物体の領域を近似する図形を識別する情報とを含むことを特徴とする請求項1乃至請求項8のいずれか一項に記載の物体領域情報生成装置。
- 前記物体の領域に関する情報は、該物体に関連付けられている関連情報、または該関連情報のアドレスを示す情報を含むことを特徴とする請求項1乃至請求項9のいずれか一項に記載の物体領域情報生成装置。
- 前記物体の領域に関する情報は前記関数のパラメータを用いて記述されることを特徴とする請求項1乃至請求項10のいずれか一項に記載の物体領域情報生成装置。
- 映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報記述プログラムであって、コンピュータに、
フレーム毎に前記任意の物体の領域を図形で近似する手順と、
フレーム毎に該図形を表す複数の代表点を抽出する手順と、
前記複数の代表点のうちの少なくとも一点を基準代表点とし、該基準代表点の位置データと、前記基準代表点に対する残りの代表点の相対位置データとを、フレームの進行に沿って並べることにより得られる軌跡を関数で近似する手順と、
該関数を用いて該物体の領域に関する情報を記述するする手順と、
を実行させるための物体領域情報記述プログラム。 - 前記相対位置データは、前記基準代表点と前記残りの代表点との差分ベクトルの成分であることを特徴とする請求項12に記載の物体領域情報記述プログラム。
- 映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報記述プログラムであって、コンピュータに、
フレーム毎に前記任意の物体の領域を図形で近似する手順と、
フレーム毎に該図形を表す複数の代表点を抽出する手順と、
基準フレームにおける近似図形の前記複数の代表点の位置データと、他のフレームにおける前記基準フレームの複数の代表点に対応する代表点の相対位置データとを、フレームの進行に沿って並べることにより得られる軌跡を関数で近似する手順と、
該関数を用いて該物体の領域に関する情報を記述するする手順と、
を実行させるための物体領域情報記述プログラム。 - 前記相対位置データは前記基準フレームにおける前記複数の点と、前記他のフレームの前記基準フレームの複数の点に対応する点との差分ベクトルの成分であることを特徴とする請求項14に記載の物体領域情報記述プログラム。
- 映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報記述プログラムであって、コンピュータに、
フレーム毎に前記任意の物体の領域を図形で近似する手順と、
フレーム毎に該図形を表す複数の代表点を抽出する手順と、
前記複数の代表点の位置を特定可能なデータをフレームの進行に沿って並べることにより得られる軌跡を関数で近似する手順と、
該関数、および前記図形または各々の前記代表点が見えている状態にあるフレーム区間、あるいは見えていない状態にあるフレーム区間を特定するフラグ情報を用いて該物体の領域に関する情報を記述するする手順と、
を実行させるための物体領域情報記述プログラム。 - 映像中における任意の物体の領域に関する情報を複数フレームに渡って記述するための物体領域情報記述プログラムであって、コンピュータに、
フレーム毎に前記任意の物体の領域を図形で近似する手順と、
フレーム毎に該図形を表す複数の代表点を抽出する手順と、
前記複数の代表点の位置を特定可能なデータをフレームの進行に沿って並べることにより得られる軌跡を関数で近似する手順と、
該関数、および前記図形が前記複数フレームにおいて存在した範囲を示す存在範囲情報を用いて該物体の領域に関する情報を記述するする手順と、
を実行させるための物体領域情報記述プログラム。 - 前記関数近似手順は、複数の代表点の位置データ、またはこれを特定可能な位置の次元を持つデータをフレームの進行に沿って並べたときの軌跡を所定の関数で近似し、
前記記述手段は、該近似図形が前記複数フレームにおいて存在した範囲を示す存在範囲近似図形を生成し、該関数、および該存在範囲近似図形を用いて該物体の領域に関する情報を記述することを特徴とする請求項17に記載の物体領域情報記述プログラム。 - 複数フレームをその重複部分を重ねるようにして生成されるパノラマ画像中を推移する任意の物体の領域に関する情報を記述するための物体領域情報記述プログラムであって、コンピュータに、
前記パノラマ画像中の前記任意の物体の領域を図形で近似する手順と、
前記パノラマ画像中を推移する前記図形を表す複数の代表点を抽出する手順と、
前記複数の代表点の該パノラマ画像中における位置を特定可能なデータをフレームの進行に沿って並べることにより得られる軌跡を関数で近似する手順と、
該関数を用いて該物体の領域に関する情報を記述するする手順と、を実行させるための物体領域情報記述プログラム。 - 前記物体の領域に関する情報は、対象となる前記複数フレームのうちの先頭のフレーム及び最終のフレームを特定可能な情報と、該物体の領域を近似する図形を識別する情報とを含むことを特徴とする請求項12乃至請求項19のいずれか一項に記載の物体領域情報記述プログラム。
- 前記物体の領域に関する情報に、該物体に関連付けられている関連情報、または該関連情報のアドレスを示す情報を併せて記述することを特徴とする請求項12乃至請求項20のいずれか一項に記載の物体領域情報記述プログラム。
- 前記物体の領域に関する情報は前記関数のパラメータを用いて記述されることを特徴とする請求項12乃至請求項21のいずれか一項に記載の物体領域情報記述プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001142257A JP4112819B2 (ja) | 2000-05-11 | 2001-05-11 | 物体領域情報生成装置及び物体領域情報記述プログラム |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000-138571 | 2000-05-11 | ||
JP2000138571 | 2000-05-11 | ||
JP2001142257A JP4112819B2 (ja) | 2000-05-11 | 2001-05-11 | 物体領域情報生成装置及び物体領域情報記述プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002056392A JP2002056392A (ja) | 2002-02-20 |
JP4112819B2 true JP4112819B2 (ja) | 2008-07-02 |
Family
ID=26591676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001142257A Expired - Fee Related JP4112819B2 (ja) | 2000-05-11 | 2001-05-11 | 物体領域情報生成装置及び物体領域情報記述プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4112819B2 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AUPS283602A0 (en) * | 2002-06-07 | 2002-06-27 | Dynamic Digital Depth Research Pty Ltd | Improved conversion and encoding techniques |
JP2004048116A (ja) * | 2002-07-08 | 2004-02-12 | Monolith Co Ltd | 画像データ符号化および復号のための方法および装置 |
EP1418546A1 (en) * | 2002-11-07 | 2004-05-12 | Mitsubishi Electric Information Technology Centre Europe B.V. | Method and apparatus for representing moving objects in a sequence of images |
JP2005173716A (ja) * | 2003-12-08 | 2005-06-30 | Epson Kowa Corp | 動画マニュアルにおける移動領域の識別および制御方法 |
US7697785B2 (en) * | 2004-03-31 | 2010-04-13 | Fuji Xerox Co., Ltd. | Generating a highly condensed visual summary |
CA2684523A1 (en) | 2007-04-20 | 2008-10-30 | Softkinetic S.A. | Volume recognition method and system |
CN102369551B (zh) * | 2010-01-29 | 2016-08-31 | 松下电器(美国)知识产权公司 | 信息处理装置及信息处理方法 |
JP5891001B2 (ja) * | 2011-10-19 | 2016-03-22 | 株式会社トーメーコーポレーション | 断層撮影装置及び断層像の補正処理方法 |
KR101324250B1 (ko) | 2011-12-29 | 2013-11-01 | 삼성테크윈 주식회사 | 영상 처리를 통한 광축 오차 보상 방법 및 시스템, 광축 오차 보상 기능이 구현된 줌 카메라 |
KR20180077987A (ko) * | 2016-12-29 | 2018-07-09 | 이강현 | 영상의 모션 데이터 산출 방법 |
KR101885473B1 (ko) * | 2017-05-10 | 2018-08-03 | 동국대학교 산학협력단 | 시각 장애인 보조용 스마트 글래스 |
US10304009B1 (en) * | 2018-10-08 | 2019-05-28 | StradVision, Inc. | Learning method and testing method for object detector based on R-CNN, and learning device and testing device using the same |
WO2020258222A1 (en) | 2019-06-28 | 2020-12-30 | Bayerische Motoren Werke Aktiengesellschaft | Method and system for identifying object |
-
2001
- 2001-05-11 JP JP2001142257A patent/JP4112819B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002056392A (ja) | 2002-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100415266B1 (ko) | 물체영역정보 기술방법과 물체영역정보 생성장치 및 기록매체 | |
Patwardhan et al. | Video inpainting under constrained camera motion | |
JP4226730B2 (ja) | 物体領域情報生成方法及び物体領域情報生成装置並びに映像情報処理方法及び情報処理装置 | |
US6278460B1 (en) | Creating a three-dimensional model from two-dimensional images | |
Dou et al. | Scanning and tracking dynamic objects with commodity depth cameras | |
JP4112819B2 (ja) | 物体領域情報生成装置及び物体領域情報記述プログラム | |
US7450749B2 (en) | Image processing method for interacting with a 3-D surface represented in a 3-D image | |
US20030012410A1 (en) | Tracking and pose estimation for augmented reality using real features | |
JP2002529825A (ja) | 4D再構築(reconstruction)及び可視化(visualization)のためのシステム及び方法 | |
EP2186058B1 (en) | Anatomically constrained image registration | |
JP2003510702A (ja) | 一連の画像を解析することにより三次元のシーンを構築する方法 | |
US20160239632A1 (en) | Anatomically Specific Movie Driven Medical Image Review | |
CN110660076A (zh) | 一种人脸交换方法 | |
US20030086490A1 (en) | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus | |
JP4031184B2 (ja) | 物体領域情報記述方法及び物体領域情報生成装置並びに映像情報処理方法及び映像情報処理装置 | |
CN111260765A (zh) | 一种显微手术术野的动态三维重建方法 | |
JP2005071344A (ja) | 画像処理方法、画像処理装置及び画像処理プログラムを記録した記録媒体 | |
Krahnstöver et al. | Automatic acquisition and initialization of articulated models | |
CN113989434A (zh) | 一种人体三维重建方法及设备 | |
JP2017122993A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2002094849A (ja) | 広視野画像撮像装置 | |
Altunbasak et al. | Simultaneous motion-disparity estimation and segmentation from stereo | |
Malerczyk et al. | 3D reconstruction of sports events for digital TV | |
JP2001167249A (ja) | 画像合成方法、画像合成装置、画像合成プログラムを記録した記録媒体 | |
JPH10198824A (ja) | 映像生成処理装置及びその装置で用いられる構造化データを作成する構造化データ作成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050311 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080108 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080310 |
|
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: 20080408 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080410 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110418 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130418 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140418 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |