説明

特徴検出装置、特徴検出方法、およびそのプログラム

【課題】 複数のカメラそれぞれで過去のフレーム結果と比較することで精度よく過去のフレームの結果を引継ぎ、特徴検出処理の処理負荷を低減する。
【解決手段】 ステレオ撮像した第1の映像と第2の映像からマーカを検出する探索ラインを設定し、探索ラインに沿って、第1の映像と第2の映像の両方の現在のフレームからマーカを検出し、フレームから検出したマーカの位置をマーカ情報として記録し、検出中に、検出中のフレームから検出したマーカの位置と、マーカ情報に基づく過去のフレームから検出したマーカの位置とが、予め設定された閾値以内であるか否かを判定し、閾値以内であると判定された数が、予め設定された個数以上であるか否かを判定し、個数以上であると判定された場合に、マーカの検出を中断し、過去のフレームのマーカ情報を現在のフレームのマーカ情報として記録する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の連続する映像から特徴検出を行う映像処理装置に関する。
【背景技術】
【0002】
近年、現実世界と仮想世界をリアルタイムにシームレスに融合させる技術として複合現実技術、いわゆるMR(Mixed Reality)技術が知られている。このMR技術の1つに、ビデオシースルーHMD(Head Mounted Display)や、手持ち型映像表示装置(HHD)を利用して、複合現実画像を使用者に提示する技術がある。
【0003】
MR技術を具現化するために使用するビデオシースルーHMDは、使用者の瞳位置から観測される被写体と略一致する被写体をビデオカメラなどで撮像する。その撮像画像にCG(Computer Graphics)を重畳した画像を使用者に表示することで複合現実空間を提供する。
【0004】
CGを重畳するために、撮像画像から特徴点を検出することでHMDの位置・姿勢を計測し、仮想物体の位置合わせを行う技術が知られている。一般的に撮像画像から特徴点を検出する処理は処理負荷が大きいため、少しでも効率よく、処理負荷を低減する必要がある。処理負荷を低減することは消費電力を低減することにもなるため、HMDをバッテリで動作させる場合、より長時間使用することが可能となる。
【0005】
処理負荷を低減するために、撮像画像から特徴点を検出する処理において、1フレーム前の特徴検出結果と比較する方法がある。特許文献1では、エピポーラ線上に配置された2つの撮像動画からステレオ計測を行う。2つのカメラで撮像した画像のうち片方の特徴点が1フレーム前の結果と基準値以内の時に1フレーム前の結果を引継ぎ現在のフレームの対象領域に制限をかけることが記述されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2006−331108
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1では2つの撮像画像のうち、何れか一方の画像のみで1フレーム前の結果と比較を行っている。また、ステレオ計測を行うため左右両方の撮像画像から同一点を検出し、同一点か否かを突き合わせて確認する必要があるため左右独立に画像処理を行うことが困難であった。そのため、HMDが傾いた時の処理に精度が出なく、また効率化が困難なためMRシステムには不向きであった。
【0008】
本発明は、上記の課題に鑑みてなされたものであり、複数の入力映像から独立に効率よく特徴点の検出を行い、それぞれで過去の結果と比較し、精度よく結果を引継ぐことで処理負荷を低減する特徴検出装置及びその制御方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
上記目的は、以下の装置によって達成される。
【0010】
即ち、ステレオ撮像した第1の映像と第2の映像から特徴点を検出する探索ラインを設定する設定手段と、前記探索ラインに沿って、前記第1の映像と第2の映像の両方の現在のフレームから特徴点を検出する検出手段と、前記フレームから検出した特徴点の位置を特徴点情報として記録する第1の記録手段と、前記検出中に、現在のフレームから検出した特徴点の位置と、過去のフレームから検出した特徴点の位置とが、予め設定された閾値以内であるか否かを判定する第1の判定手段と、前記閾値以内であると判定された数が、予め設定された個数以上であるか否かを判定する第2の判定手段と、前記個数以上であると判定された場合に、特徴点の検出を中断し、前記過去のフレームの特徴点情報を現在のフレームの特徴点情報として記録する第2の記録手段とを有することを特徴とする特徴検出装置。
【発明の効果】
【0011】
本発明によれば、同時に撮像された複数の入力映像から独立に画像処理を行い効率的に特徴点を検出し過去のフレーム結果と比較することで、マーカ検出位置の精度を保ちつつ処理負荷を低減することが出来る。
【図面の簡単な説明】
【0012】
【図1】第一実施形態に係るシステムのブロック図である。
【図2】第一実施形態の特徴検出部における詳細なブロック図である。
【図3】入力映像と1つめの個別マーカ情報を示した図である。
【図4】1フレーム前の入力映像と記録されているマーカ情報を示す図である。
【図5】特徴の履歴記録部に保存されるマーカ情報を示す図である。
【図6】現在のフレームの結果を過去のフレームと同様にする例を示す図である。
【図7】マーカの一部が隠れた時の例を示す図である。
【図8】1フレーム前の結果と現在のフレームの結果が閾値以内で一致しない例を示す図である。
【図9】特徴の履歴記録部に記録された複数の過去のマーカ情報を示す図である。
【図10】複数の過去フレームと比較を示す図である。
【図11】コントロール部にて複数の過去フレームの中から一致命令を出力する条件を示した図である。
【図12】コントロール部にて複数の過去フレームの中から一致命令を出力する条件を示した図である。
【図13】第一実施形態における特徴探索部のフローチャートである。
【図14】第一実施形態における結果比較部のフローチャートである。
【図15】第二実施形態におけるマーカ探索順序を示す図である。
【図16】第二実施形態におけるマーカ探索終了の条件を示す図である。
【図17】第二実施形態における特徴探索部のフローチャートである。
【図18】第二実施形態における結果比較部のフローチャートである。
【図19】第一実施形態に比べ第三実施形態において改善できる例を示した図である。
【図20】第三実施形態における結果比較部のフローチャートである。
【図21】第三実施形態における比較対象フレームの変化を示す図である。
【図22】コンピュータの構成例を示す図である。
【発明を実施するための形態】
【0013】
以下、添付図面を参照して、本発明の実施形態を説明する。また以下の実施形態では、特徴点の集合体であるマーカを検出する。
【0014】
〔第1の実施形態〕
図1は、本実施形態に係るシステムのブロック図である。係るシステムはユーザに対して複合現実感を提供するシステムである。
【0015】
ビデオシースルーHMD1は、左眼と右眼の各映像に対して個々に処理機能を有する。図1において、左右で同じ機能を有する各部に関しては、左眼用の符号にL、右眼用の符号にRを付けている。以下では左眼での処理ついて記述を行うが特に断りがない限り右眼でも同様の処理を行う。
【0016】
撮像部101L、101Rの各々は、映像(第1の映像、第2の映像)をステレオ撮像する。撮像部101Lで撮像された映像は、特徴検出部102で映像からマーカが抽出される。このマーカの情報はI/F(103および204)を通してPC2の位置・姿勢計測部201に送信される。位置・姿勢計測部201では、マーカの情報を元にHMDの位置・姿勢を計測する。CG描画203Lは、位置・姿勢計測部201で計測された位置・姿勢情報とCGデータ202を用いてCGを描画する。描画したCGはI/F(204および103)を通じて合成部104Lに送られる。合成部104Lは描画されたCGと撮像部101Lで撮像した映像を合成し、合成映像を表示部105Lに表示することで複合現実感をユーザに提供する。
【0017】
以上の構成により、ビデオシースルーHMDを装着することで、現実世界と仮想世界とがリアルタイムにシームレスに融合した複合現実世界を体験できる。
【0018】
図2は特徴検出部102の内部ブロック図である。
【0019】
特徴探索部151Lは、入力映像信号からマーカ検出を行う。ROM150Lには、マーカの大きさと閾値の対応が記録されている。特徴探索部151Lで検出された、マーカの大きさ・中心座標・IDの情報とROM150Lに記録された閾値情報から個別マーカ情報を生成し、結果比較部152Lに送信する。
【0020】
履歴記録部153Lは、過去の1フレーム分の検出された個別マーカ情報ごとにまとめられたマーカ情報を記録する(第1の記録)。以降、この1フレーム分の個別マーカ情報の集合をマーカ情報と呼称する。特徴の履歴記録部153Lは、結果比較部152Lによって参照され、あるいは比較結果後にマーカ情報が保存される。
【0021】
結果比較部152Lは、特徴探索部151Lから受信した個別マーカ情報と特徴の履歴記録部153Lに記録されている過去の個別マーカ情報を比較する。また、比較結果に応じた判定により、特徴の履歴記録部153Lの書き換えを行う(第2の記録)。また現在のフレームでのマーカ情報(特徴点情報)を確定し、送信部155Lにマーカ情報を送信する。
【0022】
コントロール部154は、左右の処理を監視・制御する。
【0023】
送信部155Lは、結果比較部152Lから受け取った現在のフレームのマーカ情報をI/F103に送信する。
【0024】
以上のように、特徴検出部102の主な処理は、現在のフレームでのマーカ検出を実施し、この結果と過去の探索結果とを比較し現在のフレームのマーカ情報を確定することである。この2つの処理について詳細に説明する。
【0025】
マーカ検出は特徴探索部151Lで行われる。この処理を示したものが図3である。
【0026】
図3の(a)が撮像部101Lからの入力映像を示しており、1ラインごとにマーカ検出が行われる。図3の(a)の四角形AからFすべてがマーカである。
【0027】
図3の(b)は図3(a)の入力映像に対してマーカ検出を行った結果、得られたマーカAの個別マーカ情報を示している。なお、図3の(b)の結果ではID、中心座標、大きさなどが記述されているが、個別マーカ情報は図3の(b)に限ったものではなく、特徴的な点の座標が最低限あってもよい。大きさが定義可能な特徴点の場合、大きさも記録することが望ましいため本実施形態では大きさも記録する。図3の(b)の閾値とは、マーカの大きさによって変化する値でありROM150Lに記録されている。この閾値は過去のフレームのマーカ検出結果との比較時に一致と判定するための差の最大値である。
【0028】
閾値の一例を図3の(c)に示す。本実施形態では図3の(c)のように、オブジェクトが大きいほど閾値が小さくなっているがこの限りではなく用途によって使い分ければよい。本実施形態では、マーカの近くでは精度を必要とした場合を想定しているため図3の(c)のような閾値となっている。特徴探索部151Lで検出された個別マーカ情報は結果比較部152Lに順次送信される。
【0029】
なお、特徴探索部151Lは後述する一致命令をコントロール部154から受信するか、もしくは1フレームの検出が終了すれば現在のフレームの検出処理を終了する。
【0030】
次に、結果比較部152Lの比較処理について詳細に説明する。本実施形態では、左右両方で3つ以上の個別マーカ情報の中心座標が過去のマーカ情報と閾値以内で一致した時、検出中であるマーカの検出処理を中断し、過去のマーカ情報を現在のフレームのマーカ情報と同じであると確定する。
【0031】
なお、この閾となる個数は3に限らない。予め設定された個数以上(M個:は正の整数)である。結果比較部152Lは特徴探索部151Lからのマーカ検出の結果と特徴の履歴記録部153Lの情報を比較する。特徴の履歴記録部153Lに保存する構成例を示したものが図5である。
【0032】
図5は、図4の(b)の情報をもった図4の(a)が入力映像の時に特徴探索部151Lによって検出されたマーカ情報を意味する。マーカ情報がアルファベット順でないのは、マーカが検出された順に並んでおり、マーカ検出が水平ラインごとに上部から行われたためである。図5では1フレーム分のマーカ情報であるが、特徴の履歴記録部153Lは複数のフレーム結果を保存できる。
【0033】
図6を用いて現在のフレームの個別マーカ情報と1フレーム前のマーカ情報の比較処理について説明する。なお、図6は左眼入力映像に対する比較の例を示しており個別マーカ情報が3個以上一致した時の例である。
【0034】
図6の(a)は、特徴の履歴記録部153Lにすでに登録されている1フレーム前のマーカ情報である。結果比較部152Lは、受信した個別マーカ情報の中心座標と、特徴の履歴記録部153Lに保存されたマーカ情報の個別マーカ情報の中心座標との差が閾値以内であるか判定する(第1の判定)。ただし、同一ID同士でのみ比較することとする。本実施形態での中心座標の差は距離を採用しているが、ベクトルを用いても構わない。また本実施形態での閾値は現在のフレームの個別マーカ情報の閾値を採用しているが、1フレーム前の個別マーカ情報にも閾値情報を記録しているため、どちらを採用しても構わない。
【0035】
図6の(b)は現在のフレームで3つ目の個別マーカ情報を検出した例と1フレーム前の個別マーカ情報との距離の差を示した例である。図6(b)の差を見ると、マーカID B、A、Cで1フレーム前の個別マーカ情報と閾値以内に収まっている。本実施形態では、左右両方で3つ以上の個別マーカ情報の中心座標が過去のマーカ情報と閾値以下の時、検出中であるマーカの検出処理を中断する。
【0036】
結果比較部152Lは、図6の(b)の段階で片側が上記条件を満たした事をコントロール部154に通知する。この通知を一定値以上通知と呼称する。コントロール部154は現在のフレームに対して左右の結果比較部152L、152Rから一定値以上通知を受けると左右の結果比較部152Lおよび152Rと特徴探索部151Lおよび151Rに一致命令で通知する。つまり一致命令は、左右共に閾値以内でM個以上の個数と一致したため、検出中であるマーカの検出処理を中断し、過去のマーカ情報を現在のフレームのマーカ情報と同じであると確定させる命令である。
【0037】
結果比較部152Lはコントロール部154から一致命令を受信すると比較処理を終了し、現在のフレームのマーカ情報を1フレーム前のマーカ情報と同じであると確定する。結果比較部152Lは確定した現在のフレームのマーカ情報を送信部155Lに送信する。
【0038】
図6の例の場合、図6の(b)の個別マーカ情報が1フレーム前の図6の(a)と3つ以上閾値以内に収まっているため、現在のフレームのマーカ情報は図6(a)と同等の図6(c)に確定され、図6(b)の個別マーカ情報は破棄される。図6の(c)のマーカ情報は送信部155Lに送信される。この時、特徴の履歴記録部153Lには図6の(c)のマーカ情報は記録されず、この比較処理の前後において特徴の履歴記録部153Lの内容は変化しない。
【0039】
図7の(a)はマーカAが手や物などの現実物体によって隠れた例である。図7の(b)は図7の(a)の入力映像信号から3つのマーカを検出した時の結果と、図6の(a)と比較した差である。この場合、図6の(a)と3つ以上閾値以内で一致するため、障害物がなかった時と同様の図6の(c)が現在のフレームのマーカ情報として送信部155Lに送信される。
【0040】
図8に閾値以内で一致したものが3つに満たなかった場合を示した例である。図8の(a)が1フレーム前のマーカ情報で、図8の(b)が現在のフレームですべての個別マーカ情報を検出した例と1フレーム前の個別マーカ情報との距離の差を示した例である。図8(b)の差を見ると、1フレーム前の個別マーカ情報と3つ以上閾値以内に収まっていない。そのため現在のフレームのマーカ情報は、図8の(c)となる。この図8の(c)が特徴の履歴記録部153Lに保存され、現在のフレームの結果として送信部155Lに送信される。
【0041】
以上が、1フレーム前の結果と比較する方法である。
【0042】
次に過去のNフレーム分(Nは正の整数)と比較する例について記述する。
【0043】
複数の過去のフレームと比較するため、特徴の履歴記録部153Lでは図9のように複数のマーカ情報を記録している。以下では、複数フレームを6フレームとして説明を行うが一般的には6フレームである必要はない。
【0044】
結果比較部152Lでは特徴探索部151Lから個別マーカ情報を取得すると、特徴の履歴記録部153Lを参照しすべてのマーカ情報の個別マーカ情報と一致したか否かを判定する。この比較方法を図9と図10を用いて説明する。
【0045】
図9に示すように特徴の履歴記録部153Lには、過去のマーカ情報が6フレーム分記録されている。
【0046】
この時、図10の(a)に示す個別マーカ情報を用いて特徴の履歴記録部153Lに記録された図9のマーカ情報と比較した結果が図10(a)の比較結果である。同様に結果比較部152Lは個別マーカ情報を特徴探索部151Lから受け取る度に図10(b)、図10(c)のように比較を行う。
【0047】
図10(c)では比較した結果、2フレームが3つ以上閾値以内で一致する条件を満たした。結果比較部152Lは一定値以上通知と条件を満たした過去のフレーム番号をコントロール部154へ通知する。コントロール部154は、左右ともに同じフレーム番号を持つ一定値以上通知を受けたときに、一致したフレーム番号とともに一致命令を結果比較部152Lおよび152Rと特徴探索部151Lおよび151Rに出力する。
【0048】
図11は、結果比較部152Lからフレーム5、フレーム6の一定値以上通知を受け、結果比較部152Rからフレーム1、フレーム6の一定値以上通知をコントロール部154が受けたときの例である。図11の場合、左右で一致した一定以上通知で受け取ったフレーム番号は5だったため、コントロール部154は一致命令とフレーム番号5を結果比較部152L、152Rと特徴探索部151L、151Rへ送信する。結果比較部152Lは左右それぞれフレーム5のマーカ情報を現在のフレームのマーカ情報として確定する。
【0049】
図12は複数のフレーム番号が左右で一致した時の例であり、この場合、フレーム番号と時間に相関があるように並べ最新のフレーム番号を使用する。数が大きいほど最新のデータとしておくことで、本実施形態ではフレーム6のデータを採用する。他にも一定値以上通知と共に、過去フレームとの差を通知することでコントロール部154において過去フレームに一番物理的ずれが小さいフレームを選ぶようにしてもよい。
【0050】
結果比較部152Lにおいて、一致命令をコントロール部154から受信せずに、後述する探索終了信号を特徴探索部151Lから受け取った場合、1フレーム前との比較時と同様に現在のフレームのマーカ情報が確定される。確定された結果は送信部155Lに送信され、また特徴の履歴記録部153Lの一番古い情報に上書き保存する。一番古い情報でなくても過去フレームに使用頻度を重み付けし上書きするようにしてもよい。
【0051】
以上が、複数の過去のフレーム結果と比較する方法である。
【0052】
本実施形態における特徴探索部151Lの処理の流れについて図13に示すフローチャートを用いて説明する。図13のフローチャートによって示される処理は、撮像部101Lからの入力映像信号の1フレームを受信した時に開始される。
【0053】
ステップS201において特徴探索部151Lは、マーカ探索を行う水平ラインの設定を行う。
【0054】
ステップS202では、特徴探索部151Lはコントロール部154からの一致命令の有無を判定する。一致命令を受信した場合、特徴探索部151Lは探索処理を終了する。一致命令を受信していない場合、ステップS203でマーカ検出を行う。
【0055】
ステップS203において特徴探索部151Lは、ステップS201で設定した水平ラインのマーカ検出を行う。設定したラインでマーカを検出した場合、ステップS204にて個別マーカ情報を結果比較部152Lに送信し、検出しなかった場合は、ステップS205の処理を行う。
【0056】
ステップS204では、特徴探索部151LはステップS203で検出した個別マーカ情報を結果比較部152Lに送信し、ステップS202の処理へ移る。この時、探索ラインの設定を再度行わないため、1ラインに1個以上のマーカがあった時でもすべてのマーカを検出することが出来る。
【0057】
ステップS205において特徴探索部151Lは、探索ラインが入力映像信号の最終ラインであったか否かの判定を行う。最終ラインでなかった場合、ステップS201にて次のラインを設定する。最終ラインであった場合、結果比較部152Lに最終ラインに到達した信号を送り探索処理を終了する。
【0058】
次に本実施形態における結果比較部152Lの処理の流れについて図14に示すフローチャートを用いて説明する。図14のフローチャートによって示される処理も、入力映像信号の1フレームを特徴探索部151Lが受信した時に開始される。
【0059】
ステップS251で結果比較部152Lは、コントロール部154からの一致命令の有無を確認する。一致命令を受信した場合、ステップS261へ進み、一致命令を受信していない場合、ステップ252へと進む。
【0060】
ステップS261では、一致命令を受信した場合、結果比較部152Lは一致命令と共に受信する過去フレーム番号に対応するマーカ情報を現在のフレームの結果とし、ステップS263に進む。
【0061】
ステップS252では、一致命令を受信していない場合、結果比較部152Lは特徴検出部151Lからマーカ検出が最終ラインに到達したか確認する。マーカ検出が終了した場合、ステップS262へ進む。
【0062】
ステップS262では、ステップS252でマーカ検出が終了した場合に、ステップS260で一時的に保存した結果を現在のフレームのマーカ情報として採用する。採用したマーカ情報を特徴の履歴記録部153Lに保存し、ステップS263に進む。
【0063】
ステップS253では、特徴探索部151Lから個別マーカ情報を受信したか否かの判定が行われる。個別マーカ情報を受信していなかった場合、待ち状態としてステップS251に戻り、受信した場合ステップS254に進み比較処理が行われる。
【0064】
ステップS254からステップS259までは、特徴の履歴記録部153Lに記録されているすべての過去フレームに対して繰り返し行われる処理である。
【0065】
ステップS255では、受信した個別マーカ情報の中心座標とマーカ情報の中心座標が閾値以内で一致したか否かの判定を行う(第1の判定)。一致した場合、ステップS256へ進む。
【0066】
ステップS256では、一致した場合に一致したフレームの一致数を1増加しステップS257へ進む。
【0067】
ステップS257では、3を超えたかの判定が行われ(第2の判定)、一致数が3以上である場合、ステップS258へ進む。
【0068】
ステップS258では、コントロール部154に一定値以上通知とフレーム番号を送信する。
【0069】
ステップS260では、すべての過去フレームで上記処理が行われた後、受信した個別マーカ情報を一時的に記録し、ステップS251の処理に戻る。
【0070】
ステップS263では、確定した現在のフレームのマーカ情報を送信部155Lに送信する。
【0071】
以上の処理により、複数の入力映像信号からそれぞれ独立に特徴検出を行い、それぞれが過去のフレーム結果と比較することで精度よく過去のフレームの結果を用いる。例えば、単眼カメラで撮像した映像を探索し、同じ位置に検出したマーカが一定数あったとしても、異なるマーカを検出する可能性が高く、実用には不十分である。本実施形態では、ステレオ映像という同じ場所を写しているが、視点位置が若干ずれているという点を利用し、ステレオ映像の左右(上下)両方の映像でマーカを探索する。これにより、同じ位置のマーカを一定数見つけ、マーカ検出を中断したとしても、同じ位置であると判定するに十分な信頼を置くことが出来、特徴検出の負荷を低減することが可能な装置を実現できる。
【0072】
〔第2の実施形態〕
本実施形態では、複数の撮像映像から特徴を独立に検出することが出来ることを活かし、図15のように左右の撮像映像で異なる走査順に特徴検出を行う。すなわち、左の映像で走査した方向(順方向)とは、逆の方向(逆方向)で右の映像を走査する。走査を開始した付近に変化がなく、走査の終着点に近い部分の変化している場合など、映像の一部に大きな変化が起きたことを検知しやすくなる。
【0073】
ビデオシースルー型HMDを利用したMR技術では、左右どちらか一方のマーカを検出すればHMDの位置・姿勢が位置・姿勢計測部201で計測することが出来る。そのため、マーカ検出は左右合わせて画面全領域に相当する領域のみを行えばよい。よって、図16のように終了条件を左右両方で画面全体の検出を終えたとき設定することで左右の処理負荷を均等にすることが出来る。
【0074】
本実施形態では左右合わせて6個以上閾値以内で一致の時に中断する例で説明する。なお、この閾値数は6である必要はない。
【0075】
本実施形態の処理について説明する。以下では特徴探索部および結果比較部の処理ついて、左眼の処理として記述されているが右眼でも同様である。
本実施形態の特徴探索部151Lのフローチャートを図17に示す。
【0076】
なお、ステップS301からS305の機能は、第1の実施形態で説明した図13のステップS201からS205と同様である。
【0077】
本実施形態では、左右の撮像映像で異なる走査順にマーカ検出を行い、最終ラインに到達しなくても左右両方で画面全体の検出を終えたときにマーカ検出を終了する。そのため、ステップS307では、特徴探索部151Lが1ラインのマーカ検出が終わる度にコントロール部154に検出を終えた領域を通知する。
【0078】
コントロール部154は、特徴検出部151Lおよび151Rからマーカ検出を終えた領域を監視し、全領域を検出した時に、特徴探索部151L、151Rと結果比較部152L、152Rに停止命令を出力する。
【0079】
ステップS306では、特徴探索部151Lが停止命令の有無を確認し、停止命令がある場合、検出処理を終了する。本実施形態では左右で検出ラインが重ならないように説明したが、検出ラインが重なっても良い。
【0080】
本実施形態の結果比較部152Lのフローチャートを図18に示す。
【0081】
なお、S351からS356、S359からS363の機能は、第1の実施形態で説明した図14のS251からS256、S259からS263と同様である。
【0082】
ステップS364では、結果比較部152Lがコントロール部154からの停止命令を確認する。停止命令がある場合、ステップS362に進み現在のフレームの結果が確定する。
【0083】
ステップS365では、各過去フレームと個別マーカ情報を比較し終えた時に、コントロール部154に各過去フレームとの一致数を送信する。
【0084】
コントロール部154では、結果比較部152Lおよび152Rから送られてくる一致数を監視し、合わせて6以上の時、一致命令を結果比較部152L、152Rおよび特徴検出部151L、151Rに送信する。
【0085】
以上の処理により、左右独立にマーカ検出を行うことで広領域の現実空間を用いた比較を行い、精度よく過去のフレームの結果を用いることが出来、特徴検出の負荷を低減することが可能な装置を実現できる。
【0086】
〔第3の実施形態〕
本実施形態では、図19に示すように過去のフレーム(a)と現在のフレーム(b)が閾値より大きい場合、この過去フレームを比較の対象から外すことで処理の効率化が実現できる。この方法について説明する。
【0087】
なお、本実施形態では第1の実施形態で記述した過去のマーカ情報と個別マーカ情報の中心座標の比較時に使用する閾値と、比較対象から外すための閾値は同じ値を用いる。しかし、この限りではなく比較対象から外すための閾値を新たに追加し比較を行っても良い。以下では左眼の処理について記述されているが特に断りがない限り右眼でも同様である。
【0088】
図20の(a)は、特徴の履歴記録部153Lに記録されている過去フレームのマーカ情報の例である。この時に、特徴探索部151Lから結果比較部152Lに図20の(b)の個別マーカ情報送られた時、第1の実施形態と同様に比較処理が行われる。
【0089】
図20の(b)はIDを比べると図20の(a)のフレーム1、フレーム2とは閾値より大きいフレームと判断することが出来る。閾値より大きいと判断されたフレーム1、フレーム2は現在のフレームの比較対象フレームから削除され、次に特徴探索部151Lから受ける個別マーカ情報は図20の(c)に示すフレーム3のみと比較される。
【0090】
本実施形態の結果比較部152Lのフローチャートを図21に示す。
【0091】
図21のS451からS463の機能は、第1の実施形態で説明した図13のS251からS263と同様である。
【0092】
ステップS455にて個別マーカ情報が過去フレームと比べて閾値より大きい場合、ステップS464の処理を行う。ステップS464では、S455にて閾値より大きいと判定された過去フレームを、現在のフレームとの比較の対象から外す。
【0093】
以上の処理により、複数の入力映像信号からそれぞれ独立に特徴検出を行い、それぞれが効率よく過去のフレーム結果と比較することで、特徴検出の負荷を低減することが可能な装置を実現できる。
【0094】
以上、実施形態を記述したが探索対象となる特徴は特徴点であればよく、実施形態のマーカ以外でも適応可能である。例えば、自然特徴でもよい。
【0095】
〔その他の実施形態〕
図22は、コンピュータの構成例である。
【0096】
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク504、507又は各種記憶媒体502、503を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ501(CPUやMPU等)がプログラムを読み出して実行する処理である。また、そのプログラムをコンピュータ読み取り可能な記憶媒体に記憶して提供してもよい。なお、本装置のコンピュータには、入力部505から処理を実行する指示を入力し、表示部506で指示した処理の結果を表示してもよい。

【特許請求の範囲】
【請求項1】
ステレオ撮像した第1の映像と第2の映像から特徴点を検出する探索ラインを設定する設定手段と、
前記探索ラインに沿って、前記第1の映像と第2の映像の両方の現在のフレームから特徴点を検出する検出手段と、
前記フレームから検出した特徴点の位置を特徴点情報として記録する第1の記録手段と、
前記検出中に、現在のフレームから検出した特徴点の位置と、過去のフレームから検出した特徴点の位置とが、予め設定された閾値以内であるか否かを判定する第1の判定手段と、
前記閾値以内であると判定された数が、予め設定された個数以上であるか否かを判定する第2の判定手段と、
前記個数以上であると判定された場合に、特徴点の検出を中断し、前記過去のフレームの特徴点情報を現在のフレームの特徴点情報として記録する第2の記録手段と
を有することを特徴とする特徴検出装置。
【請求項2】
前記特徴点は、マーカであることを特徴とする請求項1に記載の特徴検出装置。
【請求項3】
前記第1の記録手段が、前記フレームから検出したマーカの位置および大きさを記録し、
前記閾値は、前記検出されたマーカの大きさに基づいて設定された閾値であることを特徴とする請求項2に記載の特徴検出装置。
【請求項4】
前記特徴点は、自然特徴であることを特徴とする請求項1に記載の特徴検出装置。
【請求項5】
前記検出手段が、前記設定した探索ラインの順方向に沿って前記第1の映像の現在のフレームから特徴点を検出し、当該探索ラインの逆方向に沿って前記第2の映像の現在のフレームから特徴点を検出することを特徴とする請求項1乃至4の何れか1項に記載の特徴検出装置。
【請求項6】
前記検出手段が、第1の映像から特徴点を検出した領域と第2の映像から特徴点を検出した領域を足し合わせて画面の全領域に相当する領域まで検出を行うことを特徴とする請求項3に記載の特徴検出装置。
【請求項7】
特徴検出装置が行う特徴検出方法であって、
前記特徴検出装置の設定手段が、ステレオ撮像した第1の映像と第2の映像から特徴点を検出する探索ラインを設定する設定工程と、
前記特徴検出装置の検出手段が、前記探索ラインに沿って、前記第1の映像と第2の映像の両方の現在のフレームから特徴点を検出する検出工程と、
前記特徴検出装置の第1の記録手段が、前記フレームから検出した特徴点の位置を特徴点情報として記録する第1の記録工程と、
前記特徴検出装置の第1の判定手段が、前記検出中に、現在のフレームから検出した特徴点の位置と、過去のフレームから検出した特徴点の位置とが、予め設定された閾値以内であるか否かを判定する第1の判定工程と、
前記特徴検出装置の第2の判定手段が、前記閾値以内であると判定された数が、予め設定された個数以上であるか否かを判定する第2の判定工程と、
前記特徴検出装置の第2の記録手段が、前記個数以上であると判定された場合に、特徴点の検出を中断し、前記過去のフレームの特徴点情報を現在のフレームの特徴点情報として記録する第2の記録工程と
を有することを特徴とする特徴検出方法。
【請求項8】
請求項7に記載の特徴検出方法の各工程をコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate


【公開番号】特開2012−129824(P2012−129824A)
【公開日】平成24年7月5日(2012.7.5)
【国際特許分類】
【出願番号】特願2010−279892(P2010−279892)
【出願日】平成22年12月15日(2010.12.15)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】