以下、本発明を図示する実施形態に基づいて説明する。
<<< §1. 歪曲広角画像と平面正則画像との関係 >>>
本発明は、広角撮影により得られた動画の各フレームを構成する歪曲広角画像の一部分を切り出して、平面正則画像に変換し、これを順次出力して動画の提示を行う動画提示装置に係るものである。ここでは、まず、広角撮影により得られる歪曲広角画像とこれを変換して得られる平面正則画像との関係を簡単に説明しておく。広角撮影装置として最も普及している装置は、魚眼レンズを装着したビデオカメラである。そこで、以下、魚眼レンズを用いた撮影により得られた歪曲広角画像を例にとって、平面正則画像との関係を説明する。
魚眼レンズを用いると、半球状の視野をもって外界の景色を撮影することができる。ただ、得られる撮影画像は、歪曲した円形の広角画像になるため、通常のディスプレイ画面上に表示するには、この歪曲広角画像を、歪みの少ない平面正則画像に変換する処理を行う必要がある。以下、魚眼レンズを用いた撮影により得られた歪曲広角画像の一般的な特徴と、その一部分を切り出して、平面正則画像に変換する処理の基本原理を説明する。
図1は、正射影方式の魚眼レンズを用いた撮影により歪曲広角画像Sを形成する基本モデルを示す斜視図である。一般に、魚眼レンズは、その投影方式によって複数の種類に分けられるが、この図1に示すモデルは、正射影方式の魚眼レンズについてのものである。図1には、三次元XYZ直交座標系におけるXY平面上に歪曲広角画像Sが形成された例が示されている。ここでは、図示のとおり、Z軸を図の上方にとり、Z軸の正の領域側にドーム状の仮想球面H(半球)を定義した例を示すことにする。
XY平面上に形成された歪曲広角画像Sは、座標系の原点Oを中心とした半径rの円を構成する画像であり、Z軸の正の領域側における180°の画角をもった領域に存在する像を歪ませて記録したものに相当する。図2は、魚眼レンズを用いた撮影によって得られた歪曲広角画像Sの一例を示す平面図である。このように、歪曲広角画像Sには、Z軸の正の領域側に存在するすべての像が記録されることになるが、その中心部分と周囲部分とでは、像の縮尺倍率が異なっており、記録された像の形状は歪んだものになる。なお、図2に示す歪曲広角画像Sは、魚眼レンズを用いた撮影により得られた歪曲広角画像の一般的なイメージを示すものであり、実際の魚眼レンズを用いて得られる正確な画像を示すものではない。
実際の魚眼レンズは、複数の凸レンズや凹レンズを組み合わせた光学系によって構成されるが、その光学的な特性は、図1に示すような仮想球面Hによってモデル化できる。すなわち、歪曲広角画像Sの上面に、半径rをもったドーム状の仮想球面H(半球)を配置したモデルを考えれば、正射影方式の魚眼レンズの光学的特性は、仮想球面H上の任意の点H(x,y,z)に対して法線方向から入射する入射光線L1は、Z軸に平行な入射光線L2として、XY平面上の点S(x,y)へ向かう振る舞いをする、と考えてよい。逆言すれば、図2において歪曲広角画像S上の点S(x,y)に位置する画素は、図1に示す入射光線L1の延長線上に存在する物体上の1点を示していることになる。いわば、歪曲広角画像Sは、半球状のドームHの内面に描かれた画像をXY平面上に正射影投影した投影像と言うことができる。
もちろん、実際の魚眼レンズで生じている光学的現象は、複数の凸レンズや凹レンズによる屈折により、撮像対象となる物体の特定の点が、XY平面上の特定の点S(x,y)上に結像する現象ということになるが、画像変換処理などを行う上では、図1に示すような仮想球面Hを用いたモデルに置き換えた議論を行っても何ら支障はない。したがって、前掲の特許文献に開示されている画像変換処理でも、このようなモデルを前提とした手法が示されており、本発明における以下の説明においても、このようなモデルを前提とした説明を行うことにする。
本発明に係る装置では、歪曲広角画像S上の一部分を切り出して、平面正則画像に変換する処理が必要になる。たとえば、図2に示す歪曲広角画像Sを見た視聴者が、その左下に描かれている女性の画像を、歪みのない正しい画像で観察したいと考えたとしよう。このような場合、視聴者は、歪曲広角画像Sのどの部分を切り出して変換を行うべきかを指定する必要がある。図3は、図2に示す歪曲広角画像Sの一部分を切り出す処理の一例を示す平面図である。この例では、扇形をした切出領域Eが描かれており、この切出領域Eから歪曲広角画像Sの一部分が切り出され、平面正則画像に変換されることになる。
図4は、図3に示す歪曲広角画像Sの切出領域E内の部分画像に対して変換処理を施すことにより得られた平面正則画像Tを示す平面図である。ここでは、歪曲広角画像Sが、図3に示すとおり、二次元XY直交座標系上に定義された円形の画像であり、平面正則画像Tが、図4に示すとおり、二次元UV直交座標系上に定義された矩形の画像であるものとする。図2の実写例に示されているとおり、歪曲広角画像S上での女性の画像は歪みを生じているが、図4の実写例に示されているとおり、変換後の平面正則画像T上では歪みが修正されている。したがって、平面正則画像Tをディスプレイ画面上に表示すれば、視聴者に対して違和感のない画像提示が可能になる。
もちろん、視聴者の要望に応じて、図2に示す歪曲広角画像Sの任意の一部分を平面正則画像Tに変換することが可能であり、女性の画像の代わりに、樹木の画像や建物の画像についての平面正則画像Tを得ることもできる。結局、特定の平面正則画像Tを得るためには、歪曲広角画像Sのどの位置から、どの向きに、どの程度の大きさの部分画像を切り出すか、という切出条件を決めてやればよい。幾何学的には、この切出条件は、切出中心点P、切り出し向きを示すパラメータφ、倍率mという3つの条件によって構成される。
図3に示す例の場合、点P(xp,yp)が切出中心点Pということになる。この切出中心点P(xp,yp)は、XY座標系上の座標値(xp,yp)によって定義することができる。図4に示すとおり、切出中心点Pは、平面正則画像T上では画像の中心点となり、UV座標系上では座標値(0,0)をもつ原点位置を占める。
一方、パラメータφは、一般に「平面傾斜角」と呼ばれている角度を決めるパラメータであり、図3に示すとおり、切出方向線DとY軸(あるいはX軸)とのなす角度として定義される。この角度φは、平面正則画像Tの向きを決定するパラメータであり、図3の点Pの位置における切出方向線Dの微分方向が、図4の点Pの位置におけるU軸の方向に一致する。角度φの値を変えて、たとえば、切出方向線Dが点Pから原点Oに向かう方向を向くように設定すると、得られる平面正則画像Tは、図5に示すように、女性が横向きの画像になる。図4の画像も図5の画像も、同じ切出中心点P(xp,yp)を指定して得られる画像であるから、いずれも点Pを中心点とする画像であるが、切出向きを示すパラメータφが異なるため、女性の向きが異なる結果となっている。
倍率mは、変換時のスケーリングファクターを決めるパラメータであり、上例の場合、mを大きくすれば、平面正則画像T上の女性の画像は拡大され、mを小さくすれば、平面正則画像T上の女性の画像は縮小される。別言すれば、倍率mは、図3に示す切出領域Eのサイズを決定するパラメータであり、mを大きくすると、切出領域Eの面積は小さくなり、mを小さくすると、切出領域Eの面積は大きくなる。図4に示す画像と図5に示す画像とを比べると、後者の方が女性の画像が拡大されていることがわかる。したがって、両者は、切出向きを示すパラメータφが異なるだけでなく、倍率mも異なっている(後者の方が倍率mが大きく設定されており、切出領域Eの面積は小さくなる)。
平面正則画像Tを表示するディスプレイ装置の画面サイズは、通常、一定であるから、図4に示す画像Tも図5に示す画像Tも、横方向寸法a(水平方向の画素数)および縦方向寸法b(垂直方向の画素数)は同じになる。したがって、倍率mの設定によって、切出領域E内の画素の解像度に比べて、平面正則画像Tの解像度が高くなったり低くなったりする。前者の場合は、変換時に画素の補間が行われ、後者の場合は、変換時に画素の間引きが行われることになる。
以上の説明により、歪曲広角画像Sから特定の平面正則画像Tを得るためには、切出中心点P、切出向きを示すパラメータφ、倍率mという3つの切出条件を設定すればよいことがわかる。この3つの切出条件が定まると、幾何学的には、図3に示すXY平面上に定義された歪曲広角画像S上の点Si(xi,yi)に対して、図4に示すUV平面上に定義された平面正則画像T上の点Ti(ui,vi)が1対1に対応することになる。すなわち、互いに対応するXY座標系上の点Si(xi,yi)とUV座標系上の点Ti(ui,vi)との間の座標変換式が定義できる。
歪曲広角画像Sから平面正則画像Tへの変換処理は、このような座標変換式に基づく演算処理ということになる。実際には、図4に示す平面正則画像Tを構成するa×b個の画素のそれぞれについて、その中心位置を示す座標(u,v)に対応するXY平面上での対応座標(x,y)を、上記座標変換式に基づいて求め、歪曲広角画像S上の対応座標(x,y)の位置にある画素を対応画素として、この対応画素の画素値を、平面正則画像T上の画素の画素値とする(必要に応じて、補間処理を行う)処理を行えばよい。図3に示す切出領域Eは、上記処理において対応画素となった画素群の分布領域として定まることになる(図では、便宜上、切出領域Eを扇型で示してあるが、実際には、より複雑な形状になる)。
なお、図2に示す実写例は、図1に示すモデルにおけるXY平面が水平面に一致するようにカメラを配置して、街頭の景色を撮影したものであるが、もちろん、XY平面が鉛直面に一致するようにカメラを配置して撮影することも可能である。図6は、路面10、樹木20、ガードレール30からなる屋外の風景を、ビデオカメラ40に魚眼レンズ50を装着した撮影装置で撮影する状態を示す側面図であり、図7は、このような撮影によって得られた歪曲広角画像Sを示す平面図である。魚眼レンズ50のXY平面が鉛直面となっているため、原点Oに位置する被写体に着目すると、X軸が水平線方向、Y軸が鉛直線方向になっている。しかしながら、原点Oから離れるほど、画像の歪みは激しくなる。
図1に示すXY平面をどのような向きに配置して撮影したとしても、幾何学的な光学現象に変わりはないので、この図7に示す歪曲広角画像Sについても、上述した方法と同様に、一部分を切り出して平面正則画像に変換することができる。図8は、図7に示す歪曲広角画像S上に、2通りの切出領域E1,E2を設定した例を示す平面図であり、図9は、この2通りの切出領域E1,E2に対応して得られる平面正則画像T1,T2を示す平面図である。図示のとおり、平面正則画像T1は、樹木20の部分の画像になり、平面正則画像T2は、ガードレール30の部分の画像になっている。
前述したとおり、実際には、切出領域E1,E2は、3つの切出条件を設定することにより定まる。すなわち、図8に示す切出領域E1は、切出中心点P1の座標と、切出向きφ1(図示の例では、切出方向線Dが右に向く方向)と、倍率m1とを指定することにより一義的に定まり、切出領域E2は、切出中心点P2の座標と、切出向きφ2(図示の例では、切出方向線Dが右やや斜め上に向く方向)と、倍率m2とを指定することにより一義的に定まる。この例の場合、倍率m2>m1であるため、切出領域E2の面積はE1の面積より小さくなっている。なお、切出領域E1,E2の形状は、実際には、曲線の輪郭で囲まれた複雑な形状になるが、図8では、便宜上、四角形の領域として示している。本願では、以後、説明の便宜上、個々の切出領域を四角形の領域として図示することにする。
これまで、1枚の静止画像としての歪曲広角画像Sと、その一部分を切り出して得られた平面正則画像Tとの関係を説明したが、これらの静止画像を時系列で順次提示すれば、動画の提示が可能になる。たとえば、魚眼レンズを装着したビデオカメラを用いて、1秒間に30フレームのレートで動画撮影を行えば、図7に示すような歪曲広角画像Sが1秒間に30枚分得られることになる。これら30枚の歪曲広角画像Sから、それぞれ平面正則画像Tを切り出して順次提示すれば、平面正則画像からなる1秒間の動画提示が可能になる。
しかも、動画を再生中に、途中で切出条件を変更することも可能なので、同一の歪曲広角画像Sからなる動画データを用いたとしても、再生時に視聴者が自由に設定した切出条件によって、ディスプレイ画面に提示される平面正則画像からなる動画の内容は変わってくる。たとえば、動画の前半部分は、切出中心点P1を指定することにより、図9(a) に示すように、樹木20を表示させ、後半部分は、切出中心点P2を指定することにより、図9(b) に示すように、ガードレール30を表示させる、という動画の提示態様が可能になる。
本発明の目的は、歪曲広角画像からなる動画について、その一部分を切り出して再生を行う際に、任意の追跡対象物を自動的に追跡する処理を行うことにある。たとえば、図10に示すように、ある時点t1において、歪曲広角画像S(1)に猫60が現れたとしよう。この場合、図示のとおり、猫60の上に切出中心点P(1)を設定し、切出向きφおよび倍率mを適当に設定すれば、猫60を含む切出領域E(1)を定めることができる。そして、続く時点t2,t3,... ,t9で猫が左方に移動し、時点t9において、図11に示すような歪曲広角画像S(9)が得られたものとしよう。この場合も、図示のとおり、猫60の上に切出中心点P(9)を設定し、切出向きφおよび倍率mを適当に設定すれば、猫60を含む切出領域E(9)を定めることができる。
図12(a) ,(b) は、このような切出条件に基づいて得られた平面正則画像T(1),T(9)を示す平面図である。平面正則画像T(1)は、図10に示す時点t1における歪曲広角画像S(1)内の切出領域E(1)に対応する画像であり、平面正則画像T(9)は、図11に示す時点t9における歪曲広角画像S(9)内の切出領域E(9)に対応する画像である。いずれの画像も、猫60を画面内に含む画像になっている。
視聴者は、動画を再生しながら、切出中心点Pの位置を逐次変更する指示を与えるようにすれば、猫60が常に平面正則画像T内に表示されるような手動追跡操作を行うことができる。たとえば、時点t1において、図12(a) に示すような平面正則画像T(1)が得られるような切出条件を設定したものとしよう。この場合、切出条件が一定のままだと、時点t2,t3と時間が経過するにしたがって、猫60は画面の左側へと姿を消してゆくことになる。そこで、視聴者は、平面正則画像T上で切出中心点Pを左方向に移動させるような指示操作を行えば、画面枠により猫60を追っかけることができる。
しかしながら、猫60の行き先を正確に予測することは困難なため、このような手動による追跡操作は不正確であり、また、視聴者の労力負担も大きくならざるを得ない。本発明は、このような場合に、猫60を自動追跡することが可能な効率的な方法を提案するものである。本発明に係る動画提示装置を用いると、たとえば時点t1において、図10に示す猫60を追跡対象物として指定して追跡開始指示を与えると、時点t2,t3,... ,t9と経過するにしたがって、切出中心点の位置が、自動的にP(2),P(3),... ,P(9)と更新され、平面正則画像T上に追跡対象物である猫60が表示され続けることになる。以下、その具体的な仕組みを説明する。
<<< §2. 本発明に係る動画提示装置の基本構成および動作 >>>
図13は、本発明の基本的実施形態に係る動画提示装置の構成を示すブロック図である。図において、画像入力部110は、魚眼レンズを装着したビデオカメラなどの広角撮影装置で撮影した動画画像を入力する構成要素である。前述したとおり、このような動画の画像は、時系列で与えられる複数の歪曲広角画像Sによって構成される。一方、画像出力部120は、入力した歪曲広角画像Sの一部分から切り出されて変換された平面正則画像Tを出力する構成要素である。この動画提示装置の根本的な機能は、画像入力部110によって入力した歪曲広角画像Sに基づいて、平面正則画像Tを作成し、これを出力することである。
歪曲広角画像用メモリ130は、画像入力部110によって入力された歪曲広角画像Sを格納する構成要素である。§1で述べたとおり、この歪曲広角画像Sは、二次元XY座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成される画像であり、魚眼レンズを用いた撮影を行った場合、円形の画像になる。一方、平面正則画像用メモリ140は、変換により得られた平面正則画像Tを格納する構成要素である。§1で述べたとおり、この平面正則画像Tは、二次元UV座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される画像であり、ここに示す例の場合、通常のディスプレイ画面に表示するのに適した矩形の画像である。
ここでは、画像入力部110によって、1秒間に30フレームのレートで撮影された動画を構成する歪曲広角画像Sが入力された場合を例にとって、以下の説明を行うことにする。この場合、画像入力部110は、第1番目のフレーム、第2番目のフレーム、第3番目のフレーム、... というように、フレーム単位の時系列データとして順次与えられる第i番目(iは、時系列で順次増加する整数)のフレームの歪曲広角画像を、歪曲広角画像用メモリ130に順次格納する処理を行うことになる。
歪曲広角画像用メモリ130は、画像入力部110から順次与えられるフレーム単位の歪曲広角画像Sを少なくとも1フレーム分だけ格納する機能を有している。歪曲広角画像用メモリ130に格納された歪曲広角画像Sは、処理が完了した後は消去することができる。同様に、平面正則画像用メモリ140は、変換後のフレーム単位の平面正則画像Tを少なくとも1フレーム分だけ格納する機能を有している。この平面正則画像用メモリ140に格納されている平面正則画像Tは、画像出力部120によって読み出され、外部の装置(ディスプレイ装置など)へと出力される。この平面正則画像用メモリ140に格納された平面正則画像Tも、処理が完了した後は消去することができる。
画像切出変換部150は、歪曲広角画像用メモリ130に格納されている第i番目のフレームの歪曲広角画像S(i)の一部分を切り出して、平面正則画像に変換し、これを第i番目のフレームの平面正則画像T(i)として平面正則画像用メモリ140に格納する処理を行う。§1で述べたとおり、歪曲広角画像Sの一部から平面正則画像Tを切り出す処理を行うためには、歪曲広角画像S上の1点である切出中心点Pと、画像の切り出し向きを示すパラメータφと、所定の倍率mとを含む切出条件を決定すればよい。
切出条件格納部170は、これら3つの切出条件P,φ,mを格納する構成要素である。画像切出変換部150は、この切出条件格納部170に格納されている切出条件に基づいて、歪曲広角画像用メモリ130に格納されている第i番目のフレームの歪曲広角画像S(i)の切出中心点Pで示される切り出し位置から、パラメータφで示される切り出し向きに、倍率mで示される切り出しサイズの画像を切り出し、これを平面正則画像に変換して第i番目のフレームの平面正則画像T(i)として平面正則画像用メモリ140に格納する処理を行うことになる。
§1で述べたとおり、画像切出変換部150によって実行される歪曲広角画像Sから平面正則画像Tへの変換処理は、実際には、平面正則画像Tを構成する個々の画素のそれぞれについて、歪曲広角画像用メモリ130に格納されている歪曲広角画像S内の対応画素の画素値を与える処理ということができる。
たとえば、平面正則画像Tを構成する特定の画素の画素値を得るには、当該特定の画素の中心位置を示す座標(u,v)を求め、当該座標(u,v)に対応するXY平面上での対応座標(x,y)を、所定の座標変換式に基づいて求める。そして、広角画像用メモリ130に格納されている歪曲広角画像S上の対応座標(x,y)の位置にある画素を対応画素として、この対応画素の画素値を得ればよい。画像切出変換部150は、平面正則画像用メモリ140内の当該特定の画素について、得られた画素値を書き込む処理を行うことになる。
もちろん、必要に応じて、対応座標(x,y)の近傍にある複数の対応画素を定め、これら複数の対応画素の画素値についての補間演算を行って、最終的な画素値を決定するようにすれば、より正確な画像変換を行うことができる。なお、UV平面上の任意の座標(u,v)から、これに対応するXY平面上の座標(x,y)を求める座標変換式は、前掲の各特許文献にも掲載されているとおり公知の式であり、ここでは詳細な説明は省略する。
上述したとおり、画像切出変換部150は、切出条件格納部170に格納されている3つの切出条件P,φ,mに基づいて歪曲広角画像Sの一部分を切り出し、平面正則画像Tに変換する処理を行うことになるが、この3つの切出条件P,φ,mは、動画の提示を受ける視聴者の操作によって変更することができる。すなわち、視聴者が、指示入力部240に対して、切出条件を変更する切出条件変更指示を入力すると、切出条件手動変更部230は、当該指示に基づいて、切出条件格納部170に格納されている切出条件P,φ,mを変更する処理を行う。
切出条件P,φ,mを変更する指示の具体的な入力方法については後述するが、視聴者は、切出中心点Pを変更することにより、歪曲広角画像S内に撮影されている任意の対象物を中心とする平面正則画像Tを表示させることができ、切り出し向きを示すパラメータφを変更することにより、当該平面正則画像Tを任意の向きに表示させることができ、倍率mを変更することにより、当該平面正則画像Tを任意の拡大率で表示させることができる。
以上述べた各構成要素は、この動画提示装置の基本機能を実行する構成要素であり、広角撮影によって得られた動画を提示する機能をもった従来の一般的な動画提示装置が備えている公知の構成要素である。本発明の特徴は、このような公知の動画提示装置に、後述するいくつかの新たな構成要素を付加することにより、視聴者が指定した任意の追跡対象物についての自動追跡機能を実現した点にある。
すなわち、本発明に係る動画提示装置には、更に、近隣ブロック抽出部160、ブロック選択部180、基準色格納部190、基準色抽出部200、切出条件自動変更部210、自動追跡フラグ設定部220が付加されており、これらの構成要素により自動追跡機能が実現されることになる。
これら新たな構成要素の機能についての説明を行う前に、ここでは、指示入力部240のハードウエア構成部分となるコントローラ装置を説明しておく。図14は、このコントローラ装置300の一例を示す正面図である。実用上は、このコントローラ装置300は、パソコンやゲーム専用機などに接続して用いる汎用のゲーム用コントローラ装置をそのまま流用することが可能である。図示の接続ケーブル350は、パソコンやゲーム専用機などに接続するためのケーブルである。指示入力部240のソフトウエア構成部分となるプログラムに、当該ゲーム用コントローラ装置からの入力を受け付けるための専用インターフェイスを用意しておけば、視聴者は、当該ゲーム用コントローラ装置を用いて、この動画提示装置に対して所望の指示入力を行うことができる。
図示のとおり、このコントローラ装置300の正面に設けられた操作パネル部310には、多数のボタンが配置されている。画面移動ボタン320は、上述した切出中心点Pを変更する切出条件変更指示を入力するために用いるボタンである。図示の例では、画面移動ボタン320は、1枚の円形操作盤によって構成されているが、当該操作盤は、操作パネル部310上で上下左右に傾斜し、実質的に上下左右に配置された4個の画面移動ボタンとして機能する。すなわち、この円形操作盤の上部を押し込んで傾斜させると上方の画面移動ボタンが押されたものと認識され、下部を押し込んで傾斜させると下方の画面移動ボタンが押されたものと認識され、左部を押し込んで傾斜させると左方の画面移動ボタンが押されたものと認識され、右部を押し込んで傾斜させると右方の画面移動ボタンが押されたものと認識される。
切出条件手動変更部230は、この4個の画面移動ボタンの操作に基づいて、平面正則画像T上での切り出し位置が上下左右に移動するように、切出条件格納部170に格納されている切出中心点Pを変更する処理を行う(具体的には、切出中心点Pの座標値xp,ypを変更する処理を行う)。
ここでは、図15に示すように、第i番目のフレームの歪曲広角画像S(i)から、第i番目のフレームの平面正則画像T(i)が切り出された状態を考えてみよう。このような切出処理は、切出条件格納部170に格納されている切出条件P(i),φ(i),m(i)に基づいて行われる。すなわち、画像切出変換部150は、歪曲広角画像S(i)の切出中心点P(i)で示される切り出し位置から、パラメータφ(i)で示される切り出し向きに、倍率m(i)で示される切り出しサイズの画像を切り出し、これを平面正則画像T(i)に変換する処理を行う。こうして得られた平面正則画像T(i)の原点Gは、切出中心点P(i)に対応した点になる。
図16は、このような切出処理によって得られた第i番目のフレームの平面正則画像T(i)の平面図である。いま、画像出力部120から、このような平面正則画像T(i)が出力され、ディスプレイ画面上に表示されている状態において、視聴者が、円形操作盤320を操作した場合を考えてみる。たとえば、視聴者が、円形操作盤320の上部を押し込むと、図16の上方空間が視野に入るように、切り出し位置がこの画面の上方に移動することになる。すなわち、第(i+1)番目のフレームの切り出しに用いられる切出中心点P(i+1)が、図15に示すXY平面上で原点Oの方向に移動した点になるように、切出条件格納部170に対する書き換えが行われる。
同様に、図16に示すような平面正則画像T(i)が表示されている状態において、視聴者が、円形操作盤320の右部を押し込むと、図16の右方空間が視野に入るように、切り出し位置がこの画面の右方に移動することになる。すなわち、第(i+1)番目のフレームの切り出しに用いられる切出中心点P(i+1)が、図15に示す切出中心点P(i)の位置から、円周方向に沿って反時計回りに移動した点になるように、切出条件格納部170に対する書き換えが行われる。その結果、第(i+1)番目のフレームの平面正則画像T(i+1)では、猫60がより画面の中央寄りの位置にくる。
このように、視聴者は、ディスプレイ画面上に表示されている平面正則画像Tからなる動画を見ながら、画面移動ボタン320を上下左右に傾斜させることにより、視線方向を所望の方向に移動させる操作(切出中心点Pを手動で変更する操作)を行うことができる。したがって、§1で述べたとおり、常に猫60がディスプレイ画面に表示されるように、手動による追跡操作を行うことができる。
また、視聴者は、倍率向き変更ボタン330を操作することにより、ディスプレイ画面に表示される平面正則画像Tの倍率および向きを変更することができる。具体的には、倍率向き変更ボタン330は、図示のとおり4つの個別ボタンから構成されている。ここで、倍率変更ボタン331は、倍率mを増加させるためのボタンであり、当該ボタンを押し続けると、切出条件手動変更部230は、切出条件格納部170に格納されている倍率mを徐々に増加させる処理を行う。また、倍率変更ボタン332は、倍率mを減少させるためのボタンであり、当該ボタンを押し続けると、切出条件手動変更部230は、切出条件格納部170に格納されている倍率mを徐々に減少させる処理を行う。これらのボタンにより、視聴者は、ディスプレイ画面に表示される平面正則画像Tに対して、ズームインおよびズームアウトの操作を行うことができる。
一方、向き変更ボタン333および334は、画像の切り出し向きを示すパラメータφを増減するためのボタンであり、これらのボタンを押し続けると、パラメータφの値が徐々に増加もしくは減少する。これらのボタンにより、視聴者は、ディスプレイ画面に表示される平面正則画像Tを時計回りもしくは反時計回りに回転させる操作を行うことができる。
要するに、切出条件手動変更部230は、倍率変更ボタン331,332もしくは向き変更ボタン333,334が押された場合に、切出条件変更指示が入力されたものとして、切出条件格納部170に格納されている倍率mもしくはパラメータφを変更する処理を行うことになる。
これに対して、図14における操作パネル部310の右方に配置されたカーソル移動ボタン340は、本発明の特徴となる自動追跡機能を利用するためのボタンである。図示のとおり、このカーソル移動ボタン340は、上方向移動ボタン341、下方向移動ボタン342、左方向移動ボタン343、右方向移動ボタン344、そして追跡開始指示ボタン345という5つの個別ボタンによって構成されている。ここに示す実施形態では、これら5つの個別ボタンのいずれかを押すと、図17に示すように、ディスプレイの表示画面上の中央に十字カーソルCが表示される構成になっている。この十字カーソルCは、追跡対象物を指定するために利用される。
視聴者は、上下左右に配置された個別のカーソル移動ボタン341〜344を押すことにより、この十字カーソルCを上下左右に移動させることができ、ディスプレイ画面上の動画を見ながら、任意の対象物の上にカーソルCを移動させることができる。具体的には、指示入力部240のソフトウエア構成部分として、この4個のカーソル移動ボタン341〜344の操作に基づいて上下左右に移動するカーソルの位置を画像出力部120に対して指示するカーソル位置指示手段として機能するプログラムを用意しておき、画像出力部120に、平面正則画像T上のカーソル位置指示手段によって指示された位置に、十字カーソルCを重畳した画像を出力する機能をもたせておけばよい。
ここでは、視聴者が、画面上に現れた猫60に興味をもち、画面枠がこの猫60を自動的に追跡し、常に画面上に猫が表示されるようにしたいと考えたものとしよう。この場合、視聴者は、猫60を追跡対象物として指定して、追跡開始指示を与える操作を行えばよい。ここに示す実施形態の場合、カーソル移動ボタン341〜344を押しながら、十字カーソルCを追跡対象物となる猫60の上にもってゆき、追跡開始指示ボタン345を押す操作を行えばよい。
図18は、図17に示す十字カーソルCを、追跡対象物となる猫60上に移動させた状態を示す平面図である。視聴者が、この状態で、追跡開始指示ボタン345を押すと、自動追跡処理が開始する。ここでは、この追跡開始指示ボタン345が押された時点の十字カーソルCの位置を、追跡開始点Qと呼ぶことにする。また、追跡開始指示ボタン345が押されたときに表示されていた画像(図18の画像)が、第i番目のフレームの平面正則画像T(i)であったものとしよう。この場合、指示入力部240は、特定の平面正則画像T(i)上の追跡開始点Qの位置を含む追跡開始指示を入力したことになる。
図13に示す動画提示装置は、このような追跡開始指示の入力を受けた後、第(i+1)番目のフレームの歪曲広角画像S(i+1)が到来すると、切出条件格納部170内に格納されていた切出中心点P(i)を、新たな切出中心点P(i+1)に更新する処理を行う機能を有している。その結果、第(i+1)番目のフレームの歪曲広角画像S(i+1)に対する切出処理は、新たな切出中心点P(i+1)に基づいて行われることになり、図19に示すように、猫60が画面の中心に位置する第(i+1)番目のフレームの平面正則画像T(i+1)が得られることになる。
以後、視聴者が追跡終了指示を入力するまで(あるいは、後述するように、自動追跡処理に失敗するまで)、自動追跡モードが維持され、常に、追跡対象物たる猫60が画面の中心にくるように、切出中心点Pが自動的に更新されることになる。すなわち、第(i+2)番目のフレームの歪曲広角画像S(i+2)に対する切出処理が、新たな切出中心点P(i+2)に基づいて行われ、平面正則画像T(i+2)が得られ、続いて、第(i+3)番目のフレームの歪曲広角画像S(i+3)に対する切出処理が、新たな切出中心点P(i+3)に基づいて行われ、平面正則画像T(i+3)が得られ、... といった具合である。
図13に示す動画提示装置における自動追跡フラグ設定部220は、この自動追跡モードのON/OFF状態を切り替える機能を果たす。すなわち、自動追跡フラグ設定部220は、ON/OFF状態を示すフラグを内蔵しており、指示入力部240が、特定の平面正則画像上の追跡開始点Qの位置を含む追跡開始指示を入力したときに、自動追跡フラグをONに切り替える自動追跡開始処理を実行し、指示入力部240が、追跡終了指示を入力したときに、自動追跡フラグをOFFに切り替える自動追跡終了処理を実行する。
指示入力部240のハードウエア構成部分として、図14に示すコントローラ装置300を利用した場合、自動追跡フラグ設定部220は、追跡開始指示ボタン345が押されたときに、その時点の十字カーソルCの位置を追跡開始点Qとする追跡開始指示が入力されたものとして、自動追跡開始処理を実行することになる。
なお、自動追跡フラグ設定部220が、追跡開始指示を入力したときに実行する自動追跡開始処理には、自動追跡フラグをONに切り替える処理とともに、もう1つ重要な処理が含まれている。すなわち、自動追跡フラグ設定部220は、特定の平面正則画像上の追跡開始点Qの位置を含む追跡開始指示を入力したときに、自動追跡フラグをONに切り替えるとともに、当該追跡開始点Qに対応する二次元XY座標系上の点を新たな切出中心点Pとして、切出条件格納部170に格納されている切出中心点Pを更新する処理を実行する。
たとえば、図18に示す例のように、猫30の上の追跡開始点Qを指定した追跡開始指示が入力された場合、自動追跡フラグ設定部220は、自動追跡フラグをONに切り替えるとともに、この追跡開始点Qに対応する二次元XY座標系上の点を新たな切出中心点P(i)newとして、切出条件格納部170に格納されている切出中心点(ここでは、P(i)oldと呼ぶ)を更新する処理を実行する(すなわち、P(i)oldは、P(i)newに書き換えられる)。図13に示すブロック図において、自動追跡フラグ設定部220から切出条件格納部170に向かう、文字Pが付された矢印は、このような切出中心点Pの更新処理を示している。なお、上記P(i)newは、図19に示すP(i+1)とは異なる点である。
ここでは、理解を容易にするために、P(i)old、P(i)new、P(i+1)の相違を、図20および図21を参照しながら簡単に説明しておく。いま、画像入力部110によって入力された第i番目のフレームの歪曲広角画像S(i)が歪曲広角画像用メモリ130に格納されている状態において、画像切出変換部150による切出処理が行われ、第i番目のフレームの平面正則画像T(i)が得られたものとしよう。図20の左右に示す2つの画像は、このような第i番目のフレームについての歪曲広角画像S(i)および平面正則画像T(i)を示している。このとき、切出条件格納部170に格納されている切出条件は、図示のとおり、P(i)old,φ(i),m(i)である。もっとも、P(i)oldの記号「old」の部分は、後に生成されるP(i)newと区別するために付したものであり、切出処理の実行時には、単にP(i)と表しておいてもかまわない。
図20に示す切出領域E(i)は、歪曲広角画像S(i)内の切出中心点P(i)oldで示される切り出し位置から、パラメータφ(i)で示される切り出し向きに、倍率m(i)で示されるサイズの画像を切り出すための領域であり、この切出領域E(i)から切り出した画像を変換することにより、平面正則画像T(i)が得られることになる。そして、この平面正則画像T(i)の中心点(UV座標系の原点G)は、歪曲広角画像S(i)上の切出中心点P(i)oldに対応する。
ここで、視聴者が、この平面正則画像T(i)上の追跡開始点Qを指定して、追跡開始指示を入力したものとしよう(具体的には、図18に示すように、十字カーソルCを追跡開始点Qの位置へもってゆき、追跡開始指示ボタン345を押す操作を行えばよい)。すると、自動追跡フラグ設定部220は、自動追跡フラグをONに切り替えるとともに、追跡開始点Qに対応する二次元XY座標系上の点を新たな切出中心点P(i)newとする更新処理を実行する。すなわち、図20に示す平面正則画像T(i)上では、P(i)new(追跡開始点Q)は、P(i)old(原点G)の右下に位置する点であり、歪曲広角画像S(i)上でも、P(i)newは、P(i)oldより若干ずれた点(猫60が居る位置)になる。
図20のT(i)と図21のT(i+1)とを比べてみると、第(i+1)番目のフレームの切出条件である切出中心点P(i+1)の位置を、P(i)newと同じ位置に設定してもよいように思えるかもしれないが、実際には、猫が静止していない限り、歪曲広角画像S(i)上の猫の位置と、歪曲広角画像S(i+1)上の猫の位置とは異なるので、P(i)newの位置をそのまま切出中心点P(i+1)の位置とすることは好ましくない。第(i+1)番目のフレームにとっては、P(i)newは、猫の過去の位置(1フレーム前の位置)を示す座標にすぎない。
そこで、本発明では、P(i)newと、平面正則画像T(i)とを利用して、第(i+1)番目のフレームの歪曲広角画像S(i+1)上での猫の新しい位置P(i+1)を予測し、これを切出条件格納部170内の新たな切出中心点Pとして更新する処理を行うのである。なお、本発明では、切出向きを示すパラメータφおよび倍率mについての自動変更は行わないので、これらについては、前述した手動変更操作が行われない限り、変更は行われない。すなわち、手動変更操作が行われない限り、パラメータφ(i+1)はφ(i)と同じであり、倍率m(i+1)はm(i)と同じである。図21に示す切出条件格納部170内の切出条件P(i+1),φ(i+1),m(i+1)は、このようにして決定されたものである。もちろん、必要に応じて、φやmも自動更新する運用を採用してもかまわない。たとえば、パラメータφに関しては、常に景色の水平面がU軸に平行となるように自動調整するようにしてもよい。
画像切出変換部150が、第(i+1)番目のフレームに関する切出処理を行う際には、これら切出条件P(i+1),φ(i+1),m(i+1)を用いることになる。図21の左右に示す2つの画像は、このような第(i+1)番目のフレームについての歪曲広角画像S(i+1)および平面正則画像T(i+1)を示している。ここで、切出領域E(i+1)は、歪曲広角画像S(i+1)内の切出中心点P(i+1)で示される切り出し位置から、パラメータφ(i+1)で示される切り出し向きに、倍率m(i+1)で示されるサイズの画像を切り出すための領域であり、この切出領域E(i+1)から切り出した画像を変換することにより、平面正則画像T(i+1)が得られることになる。この平面正則画像T(i+1)の中心点(UV座標系の原点G)は、歪曲広角画像S(i+1)上の切出中心点P(i+1)に対応する。
図21に破線で示す切出領域E(i)は、図20に示す第i番目のフレームについての切出領域である。新たな切出中心点P(i+1)が正しい位置、すなわち、歪曲広角画像S(i+1)上の正しい猫の位置を示していれば、図示のとおり、猫が中心に表示された平面正則画像T(i+1)が得られることになる。
図13に示す近隣ブロック抽出部160、ブロック選択部180、基準色格納部190、基準色抽出部200、切出条件自動変更部210は、自動追跡フラグ設定部220内の自動追跡フラグがONの場合(すなわち、自動追跡モードがONになっている場合)に機能する構成要素であり、第i番目のフレームについてのP(i)newと、T(i)とを利用して、第(i+1)番目のフレームについての切出中心点P(i+1)を求める処理を実行するための構成要素である。図13において、自動追跡フラグ設定部220から他のブロックへ向かう、文字ONが付された矢印は、自動追跡フラグがONであることを示す信号を示している。以下、これら各構成要素の基本機能を説明する。
まず、基準色抽出部200は、自動追跡フラグがONの場合に、平面正則画像用メモリ140に格納されている第i番目のフレームの平面正則画像T(i)に基づいて、切出条件格納部170に格納されている「第i番目のフレームについての切出中心点P」に位置する追跡対象物の色を代表する第i番目のフレームの基準色α(i)を、iが更新するごとに逐次抽出する処理を行う。
たとえば、図20に示すように、第i番目のフレームの平面正則画像T(i)上で、視聴者が追跡対象物となる猫の上に追跡開始点Qを指定して追跡開始指示を入力した場合を考える。この追跡開始指示を受けた自動追跡フラグ設定部220は、自動追跡フラグをONに設定するとともに、追跡開始点Qを新たな切出中心点P(i)newとする書き換え処理を、切出条件格納部170に対して行う。また、自動追跡フラグがONであることを示す信号を基準色抽出部200に伝達する。
これを受けた基準色抽出部200は、切出条件格納部170に格納されている書き換え後の切出中心点P(i)newを読み出し、平面正則画像用メモリ140に格納されている第i番目のフレームの平面正則画像T(i)について、切出中心点P(i)newに位置する追跡対象物(この例の場合は、猫)の色を代表する代表色を、第i番目のフレームの基準色α(i)として抽出する処理を行うことになる。基準色αは、たとえば、RGB表色系で表現した場合に、(R,G,B)という三原色の画素値の組み合わせになり、1つの原色を8ビットの画素値で表した場合、基準色αは、24ビットのデータによって構成される。
なお、追跡対象物の代表色を決定するアルゴリズムは、切出中心点P(i)newの近傍の画素の画素値に基づいて、切出中心点P(i)newの近傍を代表する色を決定できるアルゴリズムであれば、どのようなアルゴリズムを用いてもかまわない。具体的な処理アルゴリズムの例については、§3で詳述する。
基準色格納部190は、基準色抽出部200によって抽出された最新の基準色を格納する機能をもった構成要素である。上述したとおり、基準色抽出部200は、自動追跡フラグがONの場合に、フレーム番号iが更新するごとに基準色を逐次抽出する処理を行うことになる。したがって、基準色格納部190には、α(i),α(i+1),α(i+2),... とフレームが更新するたびに(ここに示す例の場合、1/30秒おきに)新たな基準色αが与えられることになるが、基準色格納部190は、常に最新の基準色αを格納してゆけばよい。
このように、追跡対象物の色を代表する基準色αを、フレーム単位で更新する理由は、同一の物理的対象物であっても、撮影画像上では、色が変化する可能性があるためである。たとえば、「茶色の毛並みの猫」を追跡対象物とした場合、当該猫の実際の色は短時間で変化するものではないが、背景の照明環境は時間とともに変化してゆく可能性がある。また、撮影に用いたビデオカメラにホワイトバランスを自動調整する機能が備わっていた場合、背景の色相が変わると、撮影画像上では、猫の色も変化することになる。このような事情から、本発明では、追跡対象物の代表色を示す基準色αの値も、フレームごとに逐次更新させるようにしている。
こうして、第i番目のフレームに関する基準色α(i)が得られたら、続いて、歪曲広角画像用メモリ130内に格納されている第(i+1)番目のフレームの歪曲広角画像S(i+1)の中から、基準色α(i)を手掛かりに、追跡対象物を探索する処理を行うことになる。ただ、基準色α(i)だけを手掛かりに探索を行うことは困難であるため、本発明では、第i番目のフレームの切出中心点P(i)newの位置(猫の過去の位置)も手掛かりに加えて探索を行う。しかも、歪曲広角画像S(i+1)を複数のブロックに分割し、候補となるブロックを絞り込む処理を行う。
近隣ブロック抽出部160は、この切出中心点P(i)newを手掛かりに、追跡対象物が存在すると推定されるいくつかの近隣ブロックを抽出する機能を果たす。すなわち、近隣ブロック抽出部160は、自動追跡フラグがONの場合に、歪曲広角画像用メモリ130に格納されている第(i+1)番目のフレームの歪曲広角画像S(i+1)を複数のブロックに分割し、切出条件格納部170に格納されている第i番目のフレームについての切出中心点P(i)newの近隣の複数のブロックを近隣ブロックとして抽出する処理を行う。ここで述べる実施形態の場合、§3で詳述するとおり、切出中心点P(i)newを含むブロックを含めて合計9個の近隣ブロックB1〜B9を候補として抽出している。
こうして近隣ブロック抽出部160によって抽出された複数の近隣ブロックは、第i番目のフレームにおいて位置P(i)newに居た追跡対象物(猫60)が移動する可能性のある領域を示すものになる。このように、候補となるブロックを近隣ブロックのみに絞り込む方法を採れば、演算処理負担を軽減するとともに、遠隔ブロックにおける基準色α(i)に類似する色をもった領域が追跡対象物として誤検出されることを防ぐことができる。
一方、ブロック選択部180は、自動追跡フラグがONの場合に、近隣ブロック抽出部160によって抽出された複数の近隣ブロックのそれぞれについて、ブロック内に含まれる個々の画素のうち、基準色格納部190に格納されている第i番目のフレームの基準色α(i)に対して所定の近似範囲に入る色をもつ画素の数を示す近似色画素数を求める処理を行い、この近似色画素数が最大となるブロックを選択する機能をもった構成要素である。
上例の場合、近隣ブロック抽出部160は、合計9個の近隣ブロックB1〜B9を抽出することになるが、この9個のブロックのそれぞれについて、基準色α(i)に対して所定の近似範囲に入る色をもつ画素の数がカウントされる。たとえば、「茶色の毛並みの猫」を追跡対象物とすることにより、基準色α(i)が「特定の茶色」を示していた場合、ブロック選択部180は、個々の近隣ブロックのそれぞれについて、「特定の茶色」に近似する色をもつ画素の数を調べてカウントすることになる。そして、9個の近隣ブロックB1〜B9の中から、近似色画素数が最大となるブロックBmaxが選択される。こうして選択されたブロックBmaxは、追跡対象物(すなわち、「茶色の毛並みの猫」)が存在する可能性が最も高いブロックということになる。
切出条件自動変更部210は、ブロック選択部180によって選択されたブロックBmaxの中に追跡対象物が存在する、との前提で、このブロックBmax内を探索して、追跡対象物の位置を特定する処理を行う構成要素である。こうして特定された位置は、第(i+1)番目のフレームの歪曲広角画像S(i+1)上で、追跡対象物(猫)が存在すると推定される位置であり、第(i+1)番目の切出中心点P(i+1)として利用されることになる。そこで、切出条件自動変更部210は、求めた切出中心点P(i+1)によって、切出条件格納部170内の切出中心点Pを書き換える処理を行う。
ここで、切出条件自動変更部210が行う具体的な処理は、自動追跡フラグがONの場合に、ブロック選択部180が選択したブロックBmax内に互いに位置が異なる複数の候補領域を定義し、これら複数の候補領域の中から、基準色格納部190に格納されている第i番目の基準色α(i)に最も適合する色をもつ候補領域を最適候補領域として選択し、選択した最適候補領域の中心点を第(i+1)番目のフレームについての切出中心点P(i+1)として、切出条件格納部150に格納されている切出中心点Pを示す情報を更新する処理と言うことができる。このような処理の具体的なアルゴリズムについては、§3で詳述する。
こうして、切出条件格納部170内に、第(i+1)番目のフレームについての切出中心点P(i+1)が書き込まれると、画像切出変換部150は、この切出中心点P(i+1)、パラメータφ(i+1)、倍率m(i+1)を用いて、図21に示すように、歪曲広角画像用メモリ130内に格納されている歪曲広角画像S(i+1)内の切出領域E(i+1)から画像を切り出し、これを平面正則画像に変換し、第(i+1)番目のフレームの平面正則画像T(i+1)として、平面正則画像用メモリ140に格納する処理を行うことになる。自動追跡処理が正しく行われていれば、平面正則画像T(i+1)の中心(原点G)には、追跡対象物(猫)が配置されることになる。
以上、第i番目のフレームから第(i+1)番目のフレームへの変遷に関して、本発明に係る自動追跡処理を説明したが、以後、自動追跡終了の指示が与えられるまで、iを更新しながら同様のプロセスが繰り返されることになる。すなわち、自動追跡フラグがONの状態であれば、基準色抽出部200は、図21に示す平面正則画像T(i+1)に基づいて、切出中心点P(i+1)に位置する追跡対象物の色を代表する第(i+1)番目のフレームの基準色α(i+1)を抽出し、基準色格納部190が、これを最新の基準色として格納する。
一方、近隣ブロック抽出部160は、第(i+2)番目のフレームの歪曲広角画像S(i+2)から、切出中心点P(i+1)の近傍のブロックを抽出し、ブロック選択部180は、これら複数の近隣ブロックの中から、基準色α(i+1)に対して所定の近似範囲に入る色をもつ画素の数が最大のブロックを選択し、切出条件自動変更部210は、選択されたブロックの中から基準色α(i+1)に最も適合する色をもつ最適候補領域を特定し、その中心点を新たな切出中心点P(i+2)として、切出条件格納部170に書き込む処理を行う。
なお、上記説明では、第i番目の切出中心点として、P(i)oldとP(i)newとの2通りの点を用いた説明を行ったが、これは視聴者が第i番目の平面正則画像T(i)上で、追跡開始点Qの位置を含む追跡開始指示を入力したため、第i番目のフレームに関して、切出中心点がP(i)oldからP(i)new(=Q)に変更されたためである。このように、自動追跡モードに切り替わった当初のフレームに関しては、同一フレーム中で切出中心点の変更が行われるが、それ以後は、1つのフレームに対して1つの切出中心点が定義されることになる。従って、自動追跡モードの途中の任意の第i番目のフレームの切出中心点に関しては、P(i)oldとP(i)newとの区別はない。
以上、本発明の基本的な実施形態に係る動画提示装置の基本構成および動作を、図13のブロック図を参照しながら説明したが、この動画提示装置は、コンピュータに専用のプログラムを組み込むことにより構成することができる。その場合、画像入力部110,画像出力部120,指示入力部240は、当該コンピュータ用の入出力機器および入出力インターフェイスによって構成することができ、歪曲広角画像用メモリ130,平面正則画像用メモリ140,切出条件格納部170,基準色格納部190は、当該コンピュータ用の記憶装置によって構成することができ、その余の構成要素は、当該コンピュータに組み込まれたブログラムとこのプログラムを実行するコンピュータ内の各手段によって構成することができる。
最後に、上記実施形態に係る動画提示装置の特徴を簡単にまとめておく。この装置が採用する自動追跡アルゴリズムの大きな特徴は、第i番目のフレームの画像上で追跡対象物を代表する基準色αを抽出し、この基準色αを手掛かりに、第(i+1)番目のフレームの画像上で追跡対象物の位置を推定する追跡手法を採る点である。基準色αを手掛かりとする探索方法を採るため、追跡対象物の形状に関する解析は不要になる。
前述したとおり、魚眼レンズなどを利用して撮影した歪曲広角画像S上では、あらゆる対象物の形状が歪んた状態になり、しかもその歪み具合は、撮影画像上の位置によって変化する。このため、物理的に同一の追跡対象物であっても、撮影画像上の位置によって形状が様々に変化し、追跡対象物をその形状の特徴から把握することは困難である。本発明では、追跡対象物を形状で特定するわけではなく、基準色αという特徴量に基づいて特定する手法を採るため、歪曲広角画像S上で追跡対象物の形状変化が生じても正確な追跡が可能になる。
ただ、基準色αという手掛かりだけで追跡を行うと、たまたま類似した色をもつ別な対象物が存在した場合に誤認混同を生じることになる。そこで、本発明では、歪曲広角画像Sを複数のブロックに分割し、前のフレームにおける追跡対象物の位置(切出中心点P)の近傍にあるブロックを抽出し、これら近傍ブロックの中から、追跡対象物を含んでいる可能性の最も高いブロックを選択する、という手法を採る。追跡対象物の移動速度が極めて速い場合を除いて、次のフレームにおける追跡対象物の位置は、現フレームと同じブロック内か、せいぜい隣接する近隣ブロック内と推定されるので、上記手法は多くの場合に非常に有効である。
このような手法を採ることにより、遠隔のブロックに、たまたま類似した色をもつ別な対象物が存在した場合であっても、当該別な対象物を追跡対象物と誤認する問題を解決することができる。また、近隣ブロックのみを候補とすることにより、演算負担を軽減するメリットも得られる。更に、近隣ブロックの中から1つのブロックを選択する際に、基準色αに対して所定の近似範囲に入る色をもつ画素の数が最大となるブロックを選択するアルゴリズムを採用するため、演算負担が比較的低い処理によってブロック選択を行うことができる。
一方、1つのブロックが選択された後は、当該選択ブロック内を探索して、追跡対象物が存在すると推定される位置を特定する必要がある。そのために、本発明では、ブロック内に複数の候補領域を定義し、基準色αに最も適合する色をもつ候補領域を最適候補領域として選択する処理を行う。当該処理は、選択ブロックに対してのみ行えばよいので、それほど大きな演算負担にはならない。
このように、本発明に係る動画提示装置では、広角撮影により得られた歪曲広角画像からなる動画について、その一部分を切り出して再生を行う際に、任意の追跡対象物を自動的に追跡する処理を、より単純なプロセスで正確に実行することが可能である。
<<< §3. 具体的な処理アルゴリズム >>>
ここでは、§2で述べた本発明の基本的実施形態に係る動画提示装置において実行される個々の処理についての具体的なアルゴリズムを例示する。
<3−1. 基準色抽出部200の処理アルゴリズム>
図13に示す基準色抽出部200は、自動追跡フラグがONの場合に、平面正則画像用メモリ140に格納されている平面正則画像Tに基づいて、切出中心点Pに位置する追跡対象物の代表色(基準色α)を抽出する機能を果たす。ここでは、基準色抽出部200が、この基準色αを抽出する具体的な処理アルゴリズムのいくつかの例を以下に示すことにする。
最も単純な処理アルゴリズムは、切出中心点Pを含む1画素の色を基準色αとしてそのまま抽出する方法である。たとえば、図20に示すように、平面正則画像T(i)上で追跡開始点Qが指定された場合、当該追跡開始点Qが切出中心点P(i)newとなるが、この切出中心点P(i)newを含む画素の色を、そのまま基準色α(i)として抽出すればよい。視聴者は、追跡対象物として「茶色の毛並みの猫」を指定するために、図20に示すような追跡開始点Qを指定する操作を行ったわけであるから、当該追跡開始点Qを含む画素の色を基準色αとする方法は、追跡対象物の代表色を決める最も単純な方法である。
以後のフレームでは、図21に示す例のように、切出中心点P(i+1)は平面正則画像T(i+1)の原点Gに一致するので、原点Gを含む画素の色が、そのまま基準色α(i+1)として抽出されることになる。
ただ、実際には、追跡対象物はある程度の大きさをもった物体であり、複数の画素の集合体領域を構成する。そして、視聴者は、当該集合体領域の全体を追跡対象物として認識しており、その1点を追跡開始点Qとして指定する操作を行うことになる。したがって、視聴者がたまたま追跡開始点Qとして指定した1点に位置する画素の色が、必ずしも追跡対象物全体を代表する色になっているとは限らない。たとえば、追跡対象物が「茶色の毛並みの猫」である場合、茶色にも様々なバリエーションがあるため、追跡開始点Qとして指定された1点の茶色が、必ずしも猫全体を代表する茶色になっているとは限らない。
このような点を考慮すると、実用上は、切出中心点P(追跡開始点Q)の近傍に位置する複数の画素の色の平均値を基準色αとして抽出するアルゴリズムを採るのが好ましい。すなわち、基準色抽出部200は、切出中心点Pを含む中心画素およびその周囲の周辺画素からなる近傍領域を定義し、この近傍領域内の画素の色の平均値を基準色αとして抽出すればよい。
図22は、このようなアルゴリズムに基づいて、図20に示す状態で追跡開始指示が与えられたときの基準色抽出処理の実例を示す平面図である。視聴者が、猫60の腹部近傍の1点を追跡開始点Qとして指定したとすると、この追跡開始点Qが、新たな切出中心点P(i)newになる。そこで、この切出中心点P(i)newを含む画素を中心画素とし、当該中心画素とその周囲の周辺画素からなる近傍領域Nを定義する。図示の例では、中心画素を含む7×7画素からなる近傍領域Nを定義している。そして、この近傍領域N内の全49画素の色の平均値を基準色αとして抽出すればよい。このような方法を採れば、追跡対象物全体を代表する色としてより適切な色を基準色αとして抽出することができる。
なお、図22に示す例では、たまたま7×7画素からなる近傍領域Nが追跡対象物である猫60のほぼ全体をカバーする領域になっているが、実際には、近傍領域Nが追跡対象物の一部しかカバーできない場合や、追跡対象物のみならず、その周囲の背景部分までもカバーしてしまう場合もありうる。前者の場合、近傍領域N内の全画素の色の平均値を基準色αとしても問題はないが、後者の場合、周囲の背景の色も含めた平均値が基準色αとなるため、追跡対象物を代表する色としては適切でない色が基準色αとして抽出されてしまう可能性がある。
このような問題を防ぐには、近傍領域Nの大きさが、ある程度以下となるように設定すればよい。すなわち、近傍領域Nとしては、一般的には、切出中心点P(追跡開始点Q)を含む中心画素を中心とするn行n列の正方画素配列を定義すればよいが、nの値が大きすぎると、周囲の背景部分もカバーする広い近傍領域Nが設定されることになるので、平面正則画像Tの解像度を考慮して、最適なnの値を決めるようにすればよい。一般的な解像度をもった動画提示を行う場合、図示の例のように、n=7程度に設定し、7×7画素程度の大きさをもつ近傍領域Nを設定すれば、実用上は大きな支障は生じない。
周囲の背景の色を排除し、より正確な基準色αを抽出したい場合には、次のようなアルゴリズムを採用すればよい。すなわち、基準色抽出部200は、切出中心点Pを含む中心画素およびその周囲の周辺画素からなる近傍領域Nを定義し、この近傍領域N内の画素のうち、中心画素の色に対して所定の近似範囲に入る色をもつ画素を参照画素として、この参照画素の色の平均値を基準色αとして抽出すればよい。
このようなアルゴリズムに基づく基準色抽出処理の実例を、図23を参照しながら具体的に説明しよう。図23は、図22の近傍領域Nの周辺の拡大図である。上述したとおり、この例の場合、近傍領域Nは7行7列に配列された合計49個の画素によって構成されている。ここでは、この49個の画素を、1行目の左から右に向かって、画素W1,W2,..., W7と呼び、以下、2〜7行目についても同様の順番で画素W8〜W49と呼ぶことにする。但し、中心画素である画素W25については、追跡開始点Qを含む画素であることから、特別に画素Wqと呼ぶことにする。なお、図23では、便宜上、猫60の輪郭線を滑らかな曲線で描いているため、内部が輪郭線によって分断されている画素が存在するが、実際には、猫60の輪郭線は、画素の輪郭線(画素を示す正方形の辺)によって構成され、1つの画素には1つの色のみが定義される。
ここで、この近傍領域Nを構成する49個の画素の色について検討すると、たとえば、画素W27は、本来の追跡対象物(猫60)の色をもった画素であるが、画素W7は、背景となる画像の色をもった画素ということになる。したがって、追跡対象物の色を代表する基準色αを抽出する際には、画素W27の色は考慮すべきであるが、画素W7の色は考慮すべきではないことになる。そこで、まず、全49個の画素のうち、考慮すべき画素(参照画素)と考慮すべきでない画素(非参照画素)とのふるい分けを行う。具体的には、中心画素Wqの色に対して所定の近似範囲に入る色をもつ画素を参照画素として、近似範囲外となる色をもつ画素を非参照画素とすればよい。そして、たとえば、49個の画素のうち、30個の画素が参照画素とされた場合には、この30個の参照画素の色の平均値を基準色αとして抽出すればよい。
舗装された灰色の路面に茶色の猫60が居た場合、図23においてハッチングを施した部分は茶色、それ以外の部分は灰色ということになるので、全49個の画素すべての色の平均を求めてしまうと、灰色と茶色との混合色が基準色αとして抽出されてしまうことになるが、上記アルゴリズムによるふるい分けを行えば、茶色の参照画素の色についての平均色が基準色αとして抽出されるので、より適切な基準色αを得ることができる。
以上、図23を参照しながら、第i番目のフレームにおいて追跡開始点Qの指定を伴う追跡開始指示が入力された場合に、基準色αを抽出する具体的なアルゴリズムを述べたが、以後、自動追跡終了の指示が与えられるまで繰り返される第(i+1)番目以降のフレームの基準色抽出処理についても、全く同様のアルゴリズムを適用することができる。すなわち、一般的には、図23に示す中心画素Wqは、切出中心点P(i)を含む画素であり、自動追跡処理の中途段階では、UV座標系の原点Gを含む画素ということになる。
<3−2. 色の近似判断および平均のアルゴリズム>
上述したアルゴリズムには、参照画素か非参照画素かのふるい分けを行うために、周辺画素の色が中心画素Wqの色に対して所定の近似範囲に入るか否かの判断を行う必要がある。また、複数の参照画素の色についての平均を求める必要がある。ここでは、色の近似判断を行うための具体的なアルゴリズムと、色の平均を求めるための具体的なアルゴリズムを例示しておく。
まず、色の平均を求めるためのアルゴリズムの一例を述べる。一般に、ビデオカメラによる撮影で得られた画像データを構成する個々の画素は、RGB表色系で表現された画素値(R,G,B)を有しており、1つの原色を8ビットの画素値で表した場合、1画素は24ビットのデータによって構成される。このように、RGB表色系で表現された画素値(R,G,B)をもった複数の画素について、その色の平均値を算出するには、画素値Rの平均値Rav、画素値Gの平均値Gav、画素値Bの平均値Bavを求め、これら画素値(Rav,Gav,Bav)によって示される色を当該複数の画素の色の平均値とすればよい。また、画素値がRGB表色系以外の表色系で表現されていた場合には、画素値をRGB表色系で表現するための変換を行った上で、上記方法で平均を求めればよい。
次に、色の近似判断を行うためのアルゴリズムの一例を述べる。ここで述べるアルゴリズムは、HSV表色系で表現された画素値(H,S,V)をもった画素について有効である。具体的には、第1の画素の色の所定の近似範囲に第2の画素の色が入るための条件として、各画素の画素値をHSV表色系で表現して色相Hの値を0〜360°の角度で表した場合に、「第1の画素の色の色相Hを表す角度と第2の画素の色の色相Hを表す角度との角度差が所定の許容角θ以下である」との条件を用い、色の近似判断を行うようにすればよい。
上述したように、一般に、ビデオカメラによる撮影で得られた画像データは、RGB表色系で表現されている。このように、RGB表色系で表現されている画素についての色の近似判断を上記アルゴリズムで行うためには、個々の画素のもつ画素値(R,G,B)をHSV表色系で表現された画素値(H,S,V)に変換し、色相Hの値を相互に比較する処理を行えばよい。
ここでは、図23に示す実例について、上記アルゴリズムに基づく色の近似判断を行い、更に、色の平均値を求めることにより、基準値αを抽出する手順を説明しよう。いま、図23に示す49個の画素W1〜W49が、それぞれRGB表色系で表現された画素値(R,G,B)をもっているものとしよう。たとえば、第1番目の画素W1は、(R1,G1,B1)なる画素値を有しており、第j番目の画素Wjは、(Rj,Gj,Bj)なる画素値を有しており、第49番目の画素W49は、(R49,G49,B49)なる画素値を有している。また、第25番目の画素W25、すなわち、中心画素Wqは、(Rq,Gq,Bq)なる画素値を有している。
ここで、図24に示すように、各画素W1〜W49の画素値を、RGB表色系からHSV表色系に変換する。たとえば、第j番目の画素Wjのもつ画素値(Rj,Gj,Bj)は、(Hj,Sj,Vj)に変換され、中心画素Wqのもつ画素値(Rq,Gq,Bq)は、(Hq,Sq,Vq)に変換される。
なお、このRGB表色系からHSV表色系への変換処理は、公知の変換式を用いて行うことができる。具体的には、画素値(R,G,B)を画素値(H,S,V)に変換する場合、3つの値R,G,Bの中の最大のものをMAX、最小のものをMINとして、画素値(H,S,V)は、
H=60×(G−B)/(MAX−MIN)+0,if MAX=R
H=60×(B−R)/(MAX−MIN)+120,if MAX=G
H=60×(R−G)/(MAX−MIN)+240,if MAX=B
S=(MAX−MIN)/MAX
V=MAX
で与えられる。HSV表色系では、色彩は色相Hの値によって示されるので、色の近似判断は、色相Hの値を相互に比較することによって行うことができる。なお、色の比較には、色相Hの値しか用いないので、実際には、HSV表色系に変換する際に、彩度Sおよび明度Vの値を求める必要はない。
結局、図23に示す48個の周辺画素W1〜W24,W26〜W49の色が、中心画素Wq(W25)の色の近似範囲に入るか否かを判断するには、HSV表色系に変換した際の各周辺画素の色相H1〜H24,H26〜H49が、中心画素の色相Hqの近似範囲に入るか否かを判断すればよい。色相Hは、色環上の0〜360°の角度を示すものであるので、「各周辺画素の色の色相H1〜H24,H26〜H49を表す角度と中心画素の色の色相Hqを表す角度との角度差が所定の許容角θ以下である」との条件を設定しておけば、色の近似判断を行うことができる。
図25は、HSV表色系における色相Hの近似条件の設定例を示す図である。図示のとおり、中心画素の色相Hqの角度に対して、角度差が許容角θ以下となる色相をもつ画素、すなわち、色相がHq−θ〜Hq+θの範囲内(色環上の0〜360°の角度であるため、負になる場合は360°を加えた値とし、360°を越える場合は、360°を減じた値とする)であれば、近似範囲との判断がなされる。近似範囲を左右する許容角θは、たとえば、θ=10°とか、θ=15°のように、実際にこの動画提示装置を利用して再生を行う動画の内容を考慮して、適当と思われる値に設定すればよい。
こうして、中心画素Wqを含めた全49個の画素のうち、近似範囲内と判断される参照画素が得られたら、前述したとおり、これら参照画素の色の平均Wavを求め、これを基準色αとすればよい。ここで、平均色Wavを求める際には、上述したとおり、RGB表色系で表現された画素値(R,G,B)を用いて、画素値Rの平均値Rav、画素値Gの平均値Gav、画素値Bの平均値Bavを求め、これら画素値(Rav,Gav,Bav)によって示される色を平均色Wavとすればよい。
<3−3. 近隣ブロック抽出部160の処理アルゴリズム>
近隣ブロック抽出部160は、自動追跡フラグがONの場合に、歪曲広角画像用メモリ130に格納されている第(i+1)番目のフレームの歪曲広角画像S(i+1)を複数のブロックに分割し、切出条件格納部170に格納されている第i番目のフレームについての切出中心点P(i)newの近隣の複数のブロックを近隣ブロックとして抽出する処理を行う。
図26は、この近隣ブロック抽出部160によって行われる近隣ブロック抽出処理の一例を示す平面図である。ここに示す例の場合、近隣ブロック抽出部160は、歪曲広角画像S(i+1)を、縦横に整列して配置された複数の矩形状のブロックに分割し、切出中心点P(i)newを含むブロックを中心ブロックB5として、この中心ブロックB5およびその上下左右および斜め四方に位置する隣接ブロックを含めた合計9ブロックを近隣ブロックB1〜B9として抽出している。
このように、合計9ブロックを近隣ブロックとして抽出するようにすれば、追跡対象物が中心ブロックからどの方向に移動したとしても、いずれかの近隣ブロックを通らざるを得ないので、追跡対象物を見失うことを防ぐために効果的である。もちろん、追跡対象物の移動速度が極端に大きい場合には、9個の近隣ブロックの外へ移動してしまうこともありうるので、そのように移動速度が速い追跡対象物についての自動追跡を適切に行うためには、切出中心点P(i)newを含む中心ブロックを中心として、5×5の合計25個のブロックを近隣ブロックとして抽出するようにしてもよい。また、歪曲広角画像S(i+1)の円周付近に切出中心点P(i)newが位置する場合は、上下左右および斜め四方に位置する隣接ブロックのうちのいくつかは、該当位置に存在しないケースもあるが、このようなケースでは、当然ながら、該当位置に存在しないブロックは抽出されない。
なお、抽出対象となる近隣ブロックは、必ずしもn行n列の配列にする必要はなく、たとえば、追跡対象物の特性上、Y軸方向への移動速度に比べてX軸方向への移動速度が大きいというような事情がある場合には、3行5列の配列を構成する合計15個の近隣ブロックを抽出するようにしてもかまわない。また、図26では、個々のブロックを正方形とした例を示したが、個々のブロックの形状は任意であり、長方形、正三角形、正六角形など、平面を隙間なく分割できる図形であれば、任意形状のブロックを採用することができる。もちろん、個々のブロックの大きさも任意であり、実用上、最適と思われる任意の大きさに設定することができる。また、各ブロックは、必ずしも同じ形状、同じサイズのものである必要はないので、理論的には、ジグソーパズルの各ピースのような任意形状のブロックにより、歪曲広角画像Sをブロック分割するようにしてもかまわない。
ここで述べる実施形態は、画像入力部110が、魚眼レンズを用いた撮影により得られた歪曲広角画像Sを入力する例であるため、図26に示すとおり、歪曲広角画像S(i+1)は円形の画像になる。このような円形の歪曲広角画像では、外周付近の画像情報の圧縮率は極めて高くなる。別言すれば、円形の歪曲広角画像では、その円周付近ほど、歪みの程度が大きく、画像の記録精度が低下することになる。そこで、ここに示す実施形態の場合、近隣ブロック抽出部160は、この円形の歪曲広角画像を、複数の矩形状のブロックに分割した後、円形の歪曲広角画像の輪郭線から一部でも食み出すブロックについては、近隣ブロックとしての抽出を行わないようにしている。
図26に示す例において、正方形で描かれている個々のブロックはいずれも円形の歪曲広角画像の輪郭線の内側に位置するブロックであり、輪郭線から一部でも食み出すブロックは描かれていない。近隣ブロック抽出部160は、この正方形で描かれているブロックの中から近隣ブロックの抽出を行うことになる。このような運用を行うと、円形の歪曲広角画像の外周付近の領域(画像の記録精度が低い領域)は、自動追跡の対象から外されることになるので、精度の低い画像に基づく誤認識が生じることを防ぐ上で有効である。
<3−4. ブロック選択部180の処理アルゴリズム>
ブロック選択部180は、自動追跡フラグがONの場合に、近隣ブロック抽出部160によって抽出された複数の近隣ブロック(図26に示す例の場合は、9個の近隣ブロックB1〜B9)のそれぞれについて、ブロック内に含まれる個々の画素のうち、基準色格納部190に格納されている基準色αに対して所定の近似範囲に入る色をもつ画素数をカウントし、近似色画素数が最大となるブロックを選択する処理を行う。
ここで、各画素の色が、基準色αに対して所定の近似範囲に入る色か否かを判断するには、§3−2で述べた色の近似判断を行うためのアルゴリズムを利用すればよい。たとえば、図26に示すブロックB1について、近似色画素数をカウントする場合は、次のような手順に従った処理を行えばよい。
まず、ここでは、説明の便宜上、個々のブロックが30×30画素の領域から構成されているものとしよう。この場合、ブロックB1には、合計900個の画素が含まれていることになる。そこで、図27に示すとおり、この900個の画素W1〜W900のそれぞれについて、RGB表色系の画素値(R,G,B)をHSV表色系の画素値(H,S,V)に変換する。たとえば、第1番目の画素W1の画素値(R1,G1,B1)は、画素値(H1,S1,V1)に変換され、第900番目の画素W900の画素値(R900,G900,B900)は、画素値(H900,S900,V900)に変換される(前述したとおり、実際には、彩度Sおよび明度Vの値は求める必要はない)。
続いて、基準色格納部190に格納されている基準色αについても、HSV表色系への変換を行う。§3−2で述べた例の場合、基準色αは、RGB表色系で表現された画素値の平均をとった平均色Wav(Rav,Gav,Bav)として与えられるので、これをHSV表色系で表現した色Wav(Hav,Sav,Vav)に変換すればよい(この場合も、実際には、彩度Savおよび明度Vavの値は求める必要はない)。
そして、図27に示すとおり、900個の画素の各色相H1〜H900を、それぞれ基準色αの色相Havと比較する処理を行い、近似範囲内か否かの判断をする。具体的には、色相Havの角度に対して、角度差が許容角θ以下となる色相をもつ画素、すなわち、色相がHav−θ〜Hav+θの範囲内(色環上の0〜360°の角度であるため、負になる場合は360°を加えた値とし、360°を越える場合は、360°を減じた値とする)であれば、近似範囲との判断を行えばよい。そして、900個の画素のうち、近似範囲との判断がなされた画素の数をカウントすれば、そのカウント値が、ブロックB1についての近似色画素数ということになる。
ブロック選択部180は、同様のカウント処理を、ブロックB2〜B9についても実行し、近似色画素数が最大となるブロックBmaxを選択する処理を行う。追跡対象物が背景画像にはない特徴的な色相を有していれば、当該特徴的な色相に近い色をもつ画素を多く含むブロックには、追跡対象物が含まれている可能性が高いと考えられる。ブロック選択部180によるブロック選択処理は、このような考え方に基づいて、追跡対象物が含まれている可能性が最も高いブロックを選択する処理と言うことができる。
もちろん、追跡対象物の代表的な色相が、背景画像にも散見される、という環境(たとえば、茶色い猫が、茶色い土の上を歩いているような環境)では、上記アルゴリズムに基づくブロック選択処理は、正しい結果を導くことはできない。また、追跡対象物の代表的な色相に近い色をもった別な対象物が存在する、という環境(たとえば、数匹の茶色い猫がたむろしている環境)でも、上記アルゴリズムに基づくブロック選択処理は、正しい結果を導くことはできない。本発明による追跡対象物の自動追跡処理は、上例のような特殊な環境では失敗し、背景の一部や別な対象物を、追跡対象物と誤って検出してしまうことになる。本発明の基本原理が、色を手掛かりに動体追跡を行うというものである以上、上例のような追跡失敗例が生じることは甘受せざるを得ない。
なお、追跡対象物が、既に近隣ブロックの外へ移動してしまっている場合にも、誤検出が生じることになる。このような誤検出を避けるには、ブロック選択部180が、予め近似色画素数の最低基準値を設定しておき、近似色画素数がこの最低基準値以上となるブロックが存在しない場合には、ブロックの選択を行わずに自動追跡フラグ設定部220に対して自動追跡失敗信号を与えるようにし、自動追跡フラグ設定部220が、自動追跡失敗信号が与えられたときに、自動追跡フラグをOFFに切り替える処理を行うようにしておくのが好ましい。
すなわち、「近似色画素数が最大となるブロック」というアルゴリズムだけでブロックの選択を行うと、たとえば、他のブロックの近似画素数が0個である場合には、近似色画素数がわずか1個しかないブロックでも選択されてしまうことになる。このように近似色画素数が極めて少ないブロックには、実際には、追跡対象物が含まれていない可能性が高い。そこで、近似色画素数の最低基準値を設定しておき、近似色画素数がこの最低基準値以上となるブロックが存在しない場合には、追跡対象物が、既に近隣ブロックの外へ移動してしまっていると判断し、自動追跡フラグをOFFに切り替え、その後の自動追跡処理を中止するようにするのが好ましい。
<3−5. 切出条件自動変更部210の処理アルゴリズム>
切出条件自動変更部210は、自動追跡フラグがONの場合に、ブロック選択部180が選択したブロック内に互いに位置が異なる複数の候補領域を定義し、これら複数の候補領域の中から、基準色αに最も適合する色をもつ候補領域を最適候補領域として選択し、選択した最適候補領域の中心点を次のフレームについての切出中心点Pとして、切出条件格納部170に格納されている切出中心点Pを示す情報を更新する処理を行う。
図28は、この切出条件自動変更部210によって行われる最適候補領域の選択処理の一例を示す平面図である。図に示すブロックBmaxは、ブロック選択部180によって選択されたブロックである。ここに示す実施形態では、切出条件自動変更部210が、所定サイズの画素配列を定義し、当該画素配列の枠をブロック内の所定位置に配置した場合の当該枠内の領域を候補領域とし、この画素配列の枠の配置を縦横にそれぞれ1画素ずつずらすことにより、互いに位置が異なる複数の候補領域を定義している。
図28に示す例の場合、7×7の画素配列(基準色αの抽出に用いた近傍領域Nと同じサイズの画素配列)が定義されており、この画素配列の枠が太線で示されている。この太線の枠で囲まれた領域が1つの候補領域になる。図では、便宜上、第1番目の候補領域A(1)および第k番目の候補領域A(k)のみが例示されているが、実際には、この7×7の画素配列を、横方向に1画素ずつずらし、縦方向にも1画素ずつずらすことにより、互いに位置が異なる多数の候補領域が定義される。
たとえば、このブロックBmaxが、30×30画素の配列からなるブロックであったとすると、7×7の画素配列からなる候補領域を配置する横方向のバリエーションは24通り、縦方向のバリエーションも24通りであるので、ブロックBmax上には、互いに位置が異なる24×24=576個の候補領域が定義されることになる。切出条件自動変更部210は、これら576個の候補領域の中から、基準色αに最も適合する色をもつ候補領域を最適候補領域として選択する処理を行う。
ここで、基準色αに最も適合する色をもつ候補領域を選択するための具体的なアルゴリズムとしては、候補領域内の画素の色の平均値が基準色αに最も近い候補領域を最適候補領域として選択する方法を採ることができる。たとえば、図示の例の場合、第1の候補領域A(1)については、この太線の枠内に位置する合計49個の画素の色の平均値を算出し(§3−2で述べたように、RGB表色系で表現された3原色それぞれの画素値の平均をとればよい)、これを基準色αと比較し、色の近似度合を調べればよい。2つの色の近似度合を求めるには、§3−2で述べたように、両方の色をHSV表色系に変換し、色相Hの角度差を求めるようにすればよい。全576個の候補領域について、それぞれ色相Hの角度差を求めれば、角度差が最も小さい候補領域を最適候補領域として選択することができる。
もっとも、このように49個の画素のすべてについて色の平均値を求めるようにすると、§3−1でも述べたとおり、追跡対象物の色だけでなく、周囲の背景の色までもが、平均値に寄与することになる。たとえば、第k番目の候補領域A(k)と追跡対象物60との位置関係が、図23に示す例のようになっていた場合を考えてみよう。すなわち、図23に示す近傍領域Nが、候補領域A(k)に相当する。この場合、49個の画素のすべてについて色の平均値を求めてしまうと、追跡対象物(猫)の色に、背景の色が混入してしまうことになるので、せっかく候補領域A(k)内に追跡対象物(猫)が居るのに、基準色αとの近似度は、それほど大きくならない可能性がある。
このような問題を解消するには、切出条件自動変更部210が、候補領域内の画素のうち、基準色αに対して所定の近似範囲に入る色をもつ画素を参照画素として、この参照画素の色の平均値が基準色αに最も近い候補領域を最適候補領域として選択するようにすればよい。
上記アルゴリズムに基づく具体的な処理手順を、図29を参照しながら説明しよう。図29は、図28に示す第k番目の候補領域A(k)について、基準色αとの近似度を調べる処理手順を示す図である。第k番目の候補領域A(k)は、上述したとおり、合計49個の画素によって構成されている。ここでは、この49個の画素を、画素W1k〜W49kと呼ぶことにする。これらの各画素は、それぞれRGB表色系の画素値(R,G,B)を有している。たとえば、第1番目の画素W1kは、画素値(R1k,G1k,B1k)を有しており、第49番目の画素W49kは、画素値(R49k,G49k,B49k)を有している。そこで、まず、これらRGB表色系の画素値をHSV表色系の画素値に変換する。たとえば、第1番目の画素W1kの画素値は、画素値(H1k,S1k,V1k)に変換され、第49番目の画素W49kの画素値は、画素値(H49k,S49k,V49k)に変換される(前述したとおり、実際には、彩度Sおよび明度Vの値は求める必要はない)。
続いて、基準色格納部190に格納されている基準色αについても、HSV表色系への変換を行う。§3−2で述べた例の場合、基準色αは、RGB表色系で表現された画素値の平均をとった平均色Wav(Rav,Gav,Bav)として与えられるので、これをHSV表色系で表現した色Wav(Hav,Sav,Vav)に変換すればよい(この場合も、実際には、彩度Savおよび明度Vavの値は求める必要はない)。
そして、図29に示すとおり、49個の画素の各色相H1k〜H49kを、それぞれ基準色αの色相Havと比較する処理を行い、近似範囲内か否かの判断をする。具体的には、色相Havの角度に対して、角度差が許容角θ以下となる色相をもつ画素、すなわち、色相がHav−θ〜Hav+θの範囲内(色環上の0〜360°の角度であるため、負になる場合は360°を加えた値とし、360°を越える場合は、360°を減じた値とする)であれば、近似範囲との判断を行えばよい。そして、49個の画素のうち、近似範囲との判断がなされた画素を参照画素として、この参照画素の色の平均Wavkを求める。色の平均値を求める際には、RGB表色系の画素値の原色ごとの平均値がとられるので、平均色Wavkは、図29の下段に示すとおり、三原色の画素値(Ravk,Gavk,Bavk)の組み合わせとして得られることになる。
こうして得られた色Wavk(Ravk,Gavk,Bavk)の意味するところは、図28に示す第k番目の候補領域A(k)内に含まれる49個の画素のうち、基準色α(Wav(Rav,Gav,Bav))に対して所定の近似範囲に入る色をもつ画素の色の平均、ということになる。そこで、最後に、この色Wavk(Ravk,Gavk,Bavk)と、基準色α(Wav(Rav,Gav,Bav))との近似度を算出する。具体的には、色Wavk(Ravk,Gavk,Bavk)をHSV表色系に変換してWavk(Havk,Savk,Vavk)を求め、基準色α(Wav(Rav,Gav,Bav))をHSV表色系に変換してWav(Hav,Sav,Vav)を求め、色相Havと色相Havkとの角度差を求めればよい(この場合も、実際には、彩度Sおよび明度Vの値は求める必要はない)。当該角度差は、第k番目の候補領域A(k)の色と基準色αとの適合度合を示すパラメータになる(角度差が小さいほど、適合度合が高いことになる)。
以上は、第k番目の候補領域A(k)についての適合度合を求める手順であるが、同様の手順を、第1番目の候補領域A(1)〜第576番目の候補領域A(576)について実行し、適合度合が最も高い候補領域(角度差の最も小さい候補領域)を、最適候補領域として選択することになる。こうして選択された最適候補領域の中心点が、次のフレームについての切出中心点Pとなる。たとえば、図28に示すように、第(i+1)番目の歪曲広角画像S(i+1)内の選択ブロックBmaxについて、第k番目の候補領域A(k)が最適候補領域として選択された場合、当該最適候補領域A(k)の中心点が新たな切出中心点P(i+1)となり、切出条件格納部170に書き込まれる。
なお、上記アルゴリズムによって最適候補領域を選択する際にも、切出条件自動変更部210が、予め基準色αに対する最低適合基準を設定しておき、適合の程度が最低適合基準以上となる候補領域が存在しない場合には(たとえば、角度差が5°以下となる候補領域が存在しない場合には)、最適候補領域の選択および切出中心点Pを示す情報の更新を行わずに自動追跡フラグ設定部220に対して自動追跡失敗信号を与えるようにするのが好ましい。自動追跡フラグ設定部220は、自動追跡失敗信号が与えられた場合には、自動追跡フラグをOFFに切り替え、その後の自動追跡処理を中止すればよい。
<3−6. 隣接ブロックへ移動した後の処理アルゴリズム>
本発明に係る動画提示装置における自動追跡モードでは、追跡対象物が隣接ブロックへ移動した場合にも、これまで述べてきたアルゴリズムと同様に処理を行うことにより、支障なく自動追跡を継続することができる。
たとえば、図26に示すように、歪曲広角画像S(i+1)上で、切出中心点P(i)newを含むブロックを中心として、9個の近隣ブロックB1〜B9が抽出された時点で、既に追跡対象物がブロックB5から左のブロックB4へ移動していた場合を考えてみよう。この場合、ブロック選択部180は、追跡対象物が存在するブロックB4を選択することになり、切出条件自動変更部210は、このブロックB4上の追跡対象物の位置を特定し、当該位置を新たな切出中心点P(i+1)として、切出条件格納部170に書き込む処理を行う。
この場合、次のフレームである歪曲広角画像S(i+2)上では、図30に示すように、切出中心点P(i+1)を含むブロックB4を中心として、9個の近隣ブロックB10,B1,B2,B11,B4,B5,B12,B7,B8が抽出されることになり、これまで述べてきたアルゴリズムと同様の処理手順で、追跡対象物についての自動追跡が継続される。
なお、第(i+1)番目のフレームについての切出中心点P(i+1)が求まり、第(i+1)番目のフレームの平面正則画像T(i+1)が平面正則画像用メモリ140上に格納されると、基準色抽出部200は、この平面正則画像T(i+1)に基づいて、第(i+1)番目の基準色α(i+1)を抽出する処理を実行するが、当該処理も、§3−1で述べたアルゴリズムをそのまま踏襲して行うことができる。図22で説明した基準色αの抽出アルゴリズムは、追跡開始指示が与えられた当初のフレームについてのアルゴリズムであるため、近傍領域Nが追跡開始点Qの位置に定義されているが、それ以降のフレームについては、追跡対象物が常に画面の中心に表示されているため、近傍領域Nは、画面の中央位置に定義されることになる。
図31は、第(i+1)番目のフレームの平面正則画像T(i+1)上で行われる基準色抽出処理の実例を示す平面図である。上述したように、自動追跡モードの途中のフレームの場合、切出中心点P(i+1)は平面正則画像T(i+1)の中心位置にくることになり、近傍領域Nも、平面正則画像T(i+1)の中央に定義される。この場合でも、近傍領域Nを利用した基準色抽出処理のアルゴリズム自体に変わりはなく、図示の例の場合、§3−1で述べた例と同様に、平均色Wav(Rav,Gav,Bav)が、第(i+1)番目の基準色α(i+1)として抽出されることになる。
<<< §4. いくつかの変形例 >>>
最後に、本発明に係る動画提示装置の変形例をいくつか述べておく。
(1) 色の近似判断の変形例
§3−2では、色の近似判断のアルゴリズムとして、画素値をHSV表色系の画素値に変換し、色相Hの角度差に基づいて近似判断を行う例を述べたが、2つの画素の色の近似判断を行うアルゴリズムは、色相Hの角度差に基づく方法に限定されるものではない。
たとえば、第1の画素の色の所定の近似範囲に第2の画素の色が入るための条件として、各画素の画素値をRGB表色系で表現し、個々の画素の色を三次元RGB座標系で示される色空間上に座標点としてプロットした場合に、「2つの画素の座標点間のユークリッド距離が所定値以下である」との条件を用いることも可能である。
図32は、RGB表色系における色の近似条件の設定例を示す図である。各画素の画素値をRGB表色系で表現した場合、個々の画素の色は、三次元RGB座標系で示される色空間上に座標点としてプロットすることができる。たとえば、図32に示す点QαおよびベクトルVαは、(Rα,Gα,Bα)なる数値で示される1つの座標点およびベクトルであるが、RGB表色系で表現した場合に画素値(Rα,Gα,Bα)で表される色を示している。同様に、点QβおよびベクトルVβは、画素値(Rβ,Gβ,Bβ)で表される色を示している。
ここで、2つの色Qα,Qβの近似度は、2点Qα,Qβ間のユークリッド距離dで表すことができ、距離dが小さければ小さいほど、近似度が高いと言うことができる。ユークリッド距離dは、図33に示す演算式で定義できるので、結局、2つの画素のRGB表色系の画素値が得られれば、図33に示す式を用いてユークリッド距離dを求めることができ、両画素の色の近似度を求めることができる。したがって、色Qαの所定の近似範囲に色Qβが入るための条件として、「ユークリッド距離dが所定値以下である」との条件を設定し、色の近似判断を行うことができる。
(2) 基準色の抽出対象の変形例
これまで述べてきた実施形態では、基準色抽出部200が平面正則画像用メモリ140に格納されている平面正則画像Tに基づいて、追跡対象物の色を代表する基準色αを抽出する例を述べた。たとえば、図22に示す近傍領域Nや図31に示す近傍領域Nは、いずれも平面正則画像T上に定義された領域であり、基準色αの抽出処理は、平面正則画像T上の画素を利用して行われてきた。
しかしながら、基準色の抽出対象は、必ずしも平面正則画像Tに限定されるものではなく、歪曲広角画像用メモリ130に格納されている歪曲広角画像Sに基づいて、基準色αを抽出することも可能である。切出中心点Pは、平面正則画像T上にも、歪曲広角画像S上にも定義できる点であるから、歪曲広角画像S上の切出中心点Pを含む画素およびその周辺画素によって近傍領域Nを定義することも可能であり、歪曲広角画像S上の近傍領域Nに基づいて、これまで述べてきた方法と同様の方法で、基準色αの抽出を行うことも可能である。
(3) コントローラ装置300の変形例
図14には、指示入力部240のハードウエア構成部分となるコントローラ装置300の一例を示したが、もちろん、コントローラ装置の構成は、図14に示す例に限定されるものではない。
図14に示すコントローラ装置300では、カーソル移動ボタン341〜344を利用して、画面上の十字カーソルCを移動し、この十字カーソルCによって追跡開始点Qの位置を指定する操作を行うことになるが、追跡開始点Qの位置指定は、必ずしも、このようなカーソル移動ボタン341〜344を利用して行う必要はない。
この図14に示すコントローラ装置300には、画面移動ボタン320が備わっており、この画面移動ボタン320を上下左右に傾斜させることにより、平面正則画像上での切り出し位置を上下左右に移動させることができる。そこで、この画面移動ボタン320を利用して、追跡開始点Qの位置を指定する操作を行えるようにすることも可能である。たとえば、この画面移動ボタン320と、追跡開始指示ボタン345とを用いて、追跡開始点Qの位置を含む追跡開始指示の入力を行うようにすることができる。そのためには、自動追跡フラグ設定部220が、追跡開始指示ボタン345が押されたときに、その時点の切出中心点Pの位置を追跡開始点Qとする追跡開始指示が入力されたものとして、自動追跡開始処理を実行するようにすればよい。
この場合の具体的な操作を実例で示そう。たとえば、視聴者が、猫60を追跡対象物として自動追跡モードに入りたいと考えた場合、猫60が画面の中心に表示されるように画面移動ボタン320を操作し、図19に示すように、猫60が画面の中心に表示された時点で、追跡開始指示ボタン345が押す操作を行えばよい。そうすれば、自動追跡フラグ設定部220は、画面中心の猫60の位置(すなわち、切出中心点Pの位置)を追跡開始点Qとする追跡開始指示が入力されたものとして、自動追跡開始処理を実行することができる。
また、図14に示すコントローラ装置300には、追跡終了指示ボタンが示されていないが、実用上は、コントローラ装置300に追跡終了指示ボタンを用意しておき、自動追跡フラグ設定部220が、この追跡終了指示ボタンが押された場合に、追跡終了指示が入力されたものとして、自動追跡フラグをOFFに切り替え、自動追跡終了処理を実行するようにするのが好ましい。もちろん、他のボタンを追跡終了指示ボタンとして兼用させることもできる。たとえば、追跡開始指示ボタン345を追跡終了指示ボタンとして兼用させ、自動追跡フラグがONのときに追跡開始指示ボタン345が押された場合には、追跡終了指示が入力されたものとして、自動追跡終了処理が実行されるようにしてもよい。
更に、画像入力部110が入力する画像データが、何らかのデジタルコンテンツデータであり、必要に応じて、早送り、巻き戻し、一時停止、スロー再生などを行うことが可能な場合は、コントローラ装置300に、早送りボタン、巻き戻しボタン、一時停止ボタン、スロー再生ボタンなどを設けておき、これらの操作を行うことができるようにしてもよい。
(4) 広角撮影装置および撮影環境の変形例
これまで述べた例は、広角撮影装置として、魚眼レンズを装着したビデオカメラを用いた例であるが、本発明に係る動画提示装置によって提示可能な動画は、必ずしも魚眼レンズを装着した撮影装置によって撮影された画像に限定されるものではない。たとえば、全方位ミラーを装着した撮影装置などによって撮影された動画を提示する場合にも、本発明は適用可能である。
また、動画撮影の環境には、広角撮影装置を固定して定点撮影を行うケースと、広角撮影装置を移動させながら周囲の風景などを撮影する移動撮影を行うケースがあるが、本発明は、いずれのケースで得られた動画の提示にも適用可能である。定点撮影した動画の場合、追跡対象物(動体)は、猫、人、車といった移動物体になるが、移動撮影した動画の場合、追跡対象物(動体)は、移動物体に限定されず、たとえば、建物や標識などの固定物体も追跡対象物として指定可能になる。