JP6260215B2 - 特徴点追跡装置、及び、特徴点追跡方法 - Google Patents

特徴点追跡装置、及び、特徴点追跡方法 Download PDF

Info

Publication number
JP6260215B2
JP6260215B2 JP2013235363A JP2013235363A JP6260215B2 JP 6260215 B2 JP6260215 B2 JP 6260215B2 JP 2013235363 A JP2013235363 A JP 2013235363A JP 2013235363 A JP2013235363 A JP 2013235363A JP 6260215 B2 JP6260215 B2 JP 6260215B2
Authority
JP
Japan
Prior art keywords
image
time
point
feature point
tracking
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
Application number
JP2013235363A
Other languages
English (en)
Other versions
JP2015095179A (ja
Inventor
中山 收文
收文 中山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013235363A priority Critical patent/JP6260215B2/ja
Priority to US14/536,936 priority patent/US9734395B2/en
Priority to EP14192634.5A priority patent/EP2874101A3/en
Publication of JP2015095179A publication Critical patent/JP2015095179A/ja
Application granted granted Critical
Publication of JP6260215B2 publication Critical patent/JP6260215B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)
  • Closed-Circuit Television Systems (AREA)

Description

本発明は、特徴点追跡装置、及び、特徴点追跡方法に関する。
移動体に取り付けたカメラで撮影した映像から特徴点を抽出し、時系列映像から特徴点の位置を追跡する技術がある。
移動体追跡のための画像処理方法として、次のような方法が知られている。第一時刻の映像から特徴点が抽出され、得られた各々の特徴点を中心として小領域が設定される。第二時刻以降の各時刻の映像について、個々の小領域ごとの映像輝度パターンの類似性(一致性)を用いた照合が行われることによって、第一時刻で定めた特徴点の追跡が行われる(第1の方法)。特徴点は、通常、追跡を正確に行うために物体の角を示すコーナー点である。
また、時系列の各時刻での映像について、あらかじめコーナー点(特徴点)を抽出しておき、コーナー点を対象に、コーナー点を中心に小領域を設けて、小領域内の映像輝度パターンの類似性を用いて照合を行い、追跡を行う画像処理方法(第2の方法)も知られている。
特開2010−039617号公報
しかし、第1の方法では、第一時刻で特徴点を定めておき、第二時刻以降の時刻では小領域の映像輝度パターンの類似性を用いて追跡を行う。そのため、長時間に渡った追跡では、移動体の移動にともない対象物と移動体とのカメラとの相対的な位置関係が変化することがある。これによって、小領域内の輝度映像パターンの見え方が徐々に変化し、追跡している小領域の中心位置(追跡位置)が、第一時刻で定めた特徴点の位置とずれることがある。その結果、追跡位置が徐々にずれてしまうという問題がある。
図1は、特徴点と追跡位置との関係の例を示す図である。図1の例では、時刻t1の画像、時刻t2の画像、時刻t3の画像、時刻t4の画像が表される。ここで、t1<t2<t3<t4である。図1の例では、直方体状の物体の一部が画像に現れている。時刻t=t1の画像において、直方体の角の1つを特徴点とする。図1の例では、画像の一致度に基づいて追跡を行うので、追跡位置が特徴点である直方体の角の位置から徐々にずれている。
また、第2の方法では、あらかじめ定めたコーナー点(特徴点)を対象に照合を行うので、照合で得られた追跡結果には、時系列的に追跡位置がずれてしまう問題は生じない。しかしながら、一般に、コーナー点が得られるか否かは周囲の輝度パターンの変化に敏感で、移動体の移動に伴って対象物の見え方が変化すると、周期の輝度パターンが変化し、コーナー点が得られなくなることが多い。コーナー点は、着目位置を中心とする小領域内でのコーナー度が極大となる箇所として定められる。コーナー度は、着目位置を中心とする小領域内で輝度映像の水平方向微分値と垂直方向微分値とから定められる。安定したコーナー点を定めるには、着目位置周辺の小領域の大きさを大きく定めることが求められ、
見え方に変化が生じると輝度映像の微分値が大きく変動するため、小領域内の起動映像の微分値から定めるコーナー度が敏感に変化する。さらに、検出されていたコーナー点のコーナー度が極大を示さなくなり、コーナー点が検出されにくくなる。よって、移動体が移動しながら長時間で追跡を行う場合には、途中でコーナー点が得られなくなり、追跡に失敗することがある。
本発明の一態様は、時系列映像から特徴点の位置を追跡する場合に、より正確な追跡をすることを課題とする。
本発明の一態様は、
第1時刻の画像の横方向微分値と縦方向微分値とに基づいて、前記第1時刻の画像内の点のコーナーらしさを示すコーナー度を前記第1時刻の画像内の点毎に算出するコーナー度算出部と、
前記第1時刻の1時刻前である第2時刻の画像内の特徴点を中心とする第1の大きさの範囲の輝度値と、前記第2時刻の画像内の特徴点に対する前記第1時刻の画像における予測位置を中心とする第2の大きさの範囲内の点を中心点とする前記第1の大きさの範囲の輝度値とに基づく輝度の一致度、及び、前記第1時刻の画像内の前記第1の大きさの範囲の中心点におけるコーナー度に基づく総合一致度を算出し、前記総合一致度が最大となる前記第1の大きさの範囲の中心点を、前記第2時刻の画像内の特徴点に対する前記第1時刻の画像内の追跡位置とする照合処理部と、
を備える特徴点追跡装置とする。
開示の態様は、プログラムが情報処理装置によって実行されることによって実現されてもよい。即ち、開示の構成は、上記した態様における各手段が実行する処理を、情報処理装置に対して実行させるためのプログラム、或いは当該プログラムを記録したコンピュータ読み取り可能な記録媒体として特定することができる。また、開示の構成は、上記した各手段が実行する処理を情報処理装置が実行する方法をもって特定されてもよい。
本発明の一態様によれば、時系列映像から特徴点の位置を追跡する場合に、より正確な追跡をすることができる。
図1は、特徴点と追跡位置との関係の例を示す図である。 図2は、実施形態1の特徴点追跡装置の構成例を示す図である。 図3は、特徴点抽出装置を実現するコンピュータの例を示す図である。 図4は、特徴点抽出装置100の時系列での追跡処理の動作フローの例を示す図である。 図5は、Sobelの横微分オペレータの例を示す図である。 図6は、Sobelの縦微分オペレータの例を示す図である。 図7は、新規コーナー点リストNLISTの例を示す図である。 図8は、照合処理部114における照合処理の動作フローの例(1)を示す図である。 図9は、照合処理部114における照合処理の動作フローの例(2)を示す図である。 図10は、照合処理部114における照合処理の動作フローの例(3)を示す図である。 図11は、照合処理部114における照合処理の動作フローの例(4)を示す図である。 図12は、照合処理部114における照合処理の動作フローの例(5)を示す図である。 図13は、1時刻前の画像I1及び現時刻での画像I2の例を示す図である。 図14は、特徴点追加削除部の動作フローの例を示す図である。 図15は、特徴点追加削除部における特徴点の削除処理の動作フローの例(1)を示す図である。 図16は、特徴点追加削除部における特徴点の削除処理の動作フローの例(2)を示す図である。 図17は、特徴点追加削除部における特徴点の削除処理の動作フローの例(3)を示す図である。 図18は、特徴点追加削除部における特徴点の追加処理の動作フローの例(1)を示す図である。 図19は、特徴点追加削除部における特徴点の追加処理の動作フローの例(2)を示す図である。 図20は、特徴点追加削除部における特徴点の追加処理の動作フローの例(3)を示す図である。 図21は、実施形態2の特徴点追跡装置の構成例を示す図である。 図22は、特徴点抽出装置200の時系列での追跡処理の動作フローの例を示す図である。 図23は、照合処理部214における照合処理の動作フローの例(1)を示す図である。 図24は、照合処理部214における照合処理の動作フローの例(2)を示す図である。 図25は、照合処理部214における照合処理の動作フローの例(3)を示す図である。 図26は、照合処理部214における照合処理の動作フローの例(4)を示す図である。 図27は、照合処理部214における照合処理の動作フローの例(5)を示す図である。 図28は、照合処理部214における照合処理の動作フローの例(6)を示す図である。 図29は、照合処理部214における照合処理の動作フローの例(7)を示す図である。 図30は、照合処理部214における照合処理の動作フローの例(8)を示す図である。 図31は、照合処理部214における照合処理の動作フローの例(9)を示す図である。 図32は、仮追跡処理における照合範囲の例を示す図である。 図33は、真追跡処理における照合範囲の例を示す図である。 図34は、実施形態3の特徴点追跡装置の構成例を示す図である。 図35は、特徴点抽出装置300の時系列での追跡処理の動作フローの例を示す図である。 図36は、実施形態4の特徴点追跡装置の構成例を示す図である。 図37は、特徴点抽出装置400の時系列での追跡処理の動作フローの例を示す図である。
以下、図面を参照して実施形態について説明する。実施形態の構成は例示であり、開示の構成は、開示の実施形態の具体的構成に限定されない。開示の構成の実施にあたって、
実施形態に応じた具体的構成が適宜採用されてもよい。
〔実施形態1〕
画像において、物体の角をなす部分は、コーナー点としての特性、すなわち、コーナー度が局所的に極大値を取るという条件を満たさなくとも、コーナー度としては高い値を取る。そこで、本実施形態の方法は、特徴点の追跡において、着目位置を中心とする小領域内の輝度パターンの一致性に加えて、当該小領域内でコーナー度も高い値を示す箇所を最良一致箇所とする。従来の輝度パターンの一致性に基づく照合では、元の特徴点(コーナー点)を位置ずれなく追跡するための仕組みが無い。これに対して、本実施形態の方法は、画像の一致性とともに、コーナー度も高いことを考慮することで、元の特徴点の選定基準であるコーナーとしての特性を保証し、追跡結果としてコーナー点からのずれを抑えるものである。
本実施形態の方法では、コーナーである特性の保証に、コーナー度の小領域内の分布パターンではなく、各照合中心位置でのコーナー度値を用いることが特徴である。これは、対象物の見え方の変化に伴いコーナー度の分布は敏感に変化するため、真に対応する箇所であっても画像のパターン一致性は高くないためである。
具体的には、ある時刻(時刻t1とする)の映像から特徴点(コーナー点)を定める。時刻t2(t2>t1)の映像を対象に、コーナー度分布を定めておき、前時刻(時刻t1)の特徴点各々について、現時刻(時刻t2)での映像内を走査する。そして、前時刻の特徴点位置を中心とする小領域内の映像パターンと現時刻の各走査位置を中心とする小領域内の映像パターンとの一致性S1と、その走査位置でのコーナー度値との積として定められる総合一致度S2とする。走査の結果、総合一致度S2が最も高くなる箇所を最良一致箇所として定め、特徴点の追跡を行う。
(構成例)
図2は、実施形態1の特徴点追跡装置の構成例を示す図である。特徴点追跡装置100は、映像入力部102、映像DB(Data Base、データベース)104、コーナー度算出
部106、コーナー点検出部108、特徴点追加削除部110、特徴点DB112、照合処理部114を含む。
映像入力部102は、カメラで撮影された外界映像を入力し所望のデジタル映像データに変換し、コーナー度算出部106、照合処理部114、および、映像DB104に送出する。
映像DB104は、現時刻の映像データと、1時刻前の映像データとを保持する。1時刻とは、例えば、フレームレートが30フレーム/秒の映像データにおいては、1/30秒である。
コーナー度算出部106は、映像データから映像の各位置でのコーナーらしさを表すコーナー度の分布を算出しコーナー点検出部108および照合処理部114に出力する。
コーナー点検出部108は、コーナー度分布を入力にして、コーナー点(特徴点)を抽出する。
特徴点追加削除部110は、抽出されたコーナー点列と特徴点DB112に保存される時系列的な追跡点とから新規の特徴点を追加するとともに追跡不適な点を削除する。
特徴点DB112は、時系列的に追跡する特徴点を保存する。
照合処理部114は、現時刻の映像と映像DB104に保持される1時刻前の映像とについて、特徴点DB112に保持される特徴点各々について、両映像とコーナー度分布とを用いて照合処理によって追跡を行う。
特徴点追跡装置100は、映像中の特徴点を時系列的に追跡した追跡結果(画像中の特徴点の位置)を外部に出力する。
特徴点抽出装置100は、パーソナルコンピュータ(PC、Personal Computer)のよ
うな汎用のコンピュータまたはサーバマシンのような専用のコンピュータを使用して実現可能である。また、特徴点抽出装置100は、ワークステーション(WS、Work Station)、PDA(Personal Digital Assistant)のような専用または汎用のコンピュータ、あるいは、コンピュータを搭載した電子機器を使用して実現可能である。また、特徴点抽出装置100は、スマートフォン、携帯電話、カーナビゲーション装置のような専用または汎用のコンピュータ、あるいは、コンピュータを搭載した電子機器を使用して実現可能である。カーナビゲーション装置は、例えば、自動車等に搭載される。
図3は、特徴点抽出装置を実現するコンピュータの例を示す図である。図3のコンピュータ1000は、プロセッサ1002、主記憶装置1004、及び、二次記憶装置1006や、通信インタフェース装置のような周辺装置2000とのインタフェース装置1008を含む。主記憶装置1004及び二次記憶装置1006は、コンピュータ読み取り可能な記録媒体である。
コンピュータ1000は、プロセッサが記録媒体に記憶されたプログラムを主記憶装置1004の作業領域にロードして実行し、プログラムの実行を通じて周辺機器が制御されることによって、所定の目的に合致した機能を実現することができる。
プロセッサ1002は、例えば、CPU(Central Processing Unit)やDSP(Digital Signal Processor)である。主記憶装置1004は、例えば、RAM(Random Access
Memory)やROM(Read Only Memory)を含む。
二次記憶装置1006は、例えば、EPROM(Erasable Programmable ROM)、ハー
ドディスクドライブ(HDD、Hard Disk Drive)である。また、二次記憶装置1006
は、リムーバブルメディア、即ち可搬記録媒体を含むことができる。リムーバブルメディアは、例えば、USB(Universal Serial Bus)メモリ、あるいは、CD(Compact Disc)やDVD(Digital Versatile Disc)のようなディスク記録媒体である。
インタフェース装置1008は、例えば、LAN(Local Area Network)インタフェースボードや、無線通信のための無線通信回路である。
周辺装置2000は、上記の二次記憶装置や通信インタフェース装置の他、キーボードやポインティングデバイスのような入力装置や、ディスプレイ装置やプリンタのような出力装置を含む。また、入力装置は、カメラのような映像や画像の入力装置や、マイクロフォンのような音声の入力装置を含むことができる。また、出力装置は、スピーカのような音声の出力装置を含むことができる。カメラは、例えば、自動車等に搭載されるカメラである。
特徴点抽出装置100を実現するコンピュータは、プロセッサが二次記憶装置に記憶されているプログラムを主記憶装置にロードして実行することによって、映像入力部102、コーナー度算出部106、コーナー点検出部108、特徴点追加削除部110、照合処
理部114としての機能を実現する。一方、映像DB104および特徴点DB112は、主記憶装置または二次記憶装置の記憶領域に設けられる。
特徴点抽出装置100の各ユニットは、ハードウェアの構成要素、ソフトウェアの構成要素、又は、これらの組み合わせとして、それぞれ実現され得る。
ハードウェアの構成要素は、ハードウェア回路であり、例えば、FPGA(Field Programmable Gate Array)、特定用途向け集積回路(ASIC)、ゲートアレイ、論理ゲー
トの組み合わせ、アナログ回路等がある。
ソフトウェアの構成要素は、ソフトウェアとして所定の処理を実現する部品である。ソフトウェアの構成要素は、ソフトウェアを実現する言語、開発環境等を限定する概念ではない。
プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくても、並列的または個別に実行される処理を含む。
(動作例)
図4は、特徴点抽出装置100の時系列での追跡処理の動作フローの例を示す図である。
ステップS101では、特徴点抽出装置100の映像入力部102は、外界を撮影するカメラ等から映像を取得し、デジタル映像に変換して映像DB104に現時刻の映像を登録するとともに、デジタル映像を次ステップ処理に出力する。
ステップS102では、コーナー度算出部106は、現時刻のデジタル映像から映像中の各位置でコーナーらしさを表すコーナー度を算出し、コーナー度分布を生成する。生成されたコーナー度分布は、コーナー点検出部108および照合処理部114に送られる。
ステップS103では、コーナー点検出部108は、コーナー度分布を用いてコーナー度が局所的に極大となる箇所を特定し、特定した箇所をコーナー点として次段処理に送る。
ステップS104では、照合処理部114は、映像情報として現時刻の入力映像と映像DBに保持する1時刻前の映像と、前段処理で求まったコーナー度分布と、特徴点DB112に保持される1時刻前までの追跡特徴点情報を取得する。照合処理部114は、取得した情報を用いて、1時刻前の追跡特徴点に対する現時刻での対応する位置を算出し、装置出力として装置外に追跡位置(画像の座標値)を出力するとともに、後段処理に追跡結果を出力する。
ステップS103及びステップS104は、並列に実行されても、ステップS104が先に実行されてもよい。
ステップS105では、特徴点追加削除部110は、ステップS103で得られた現時刻で得られた特徴点列と、ステップS104で得られた現時刻での追跡特徴点列を入力として、新規特徴点の追加と追跡不要な特徴点の削除を行うことで特徴点DB112を更新し、次時刻での照合処理の準備を行う。
ステップS106では、特徴点抽出装置100は、映像の入力が終了したか否かを判定
する。映像の入力が終了した場合(S106;YES)、処理が終了する。映像の入力が終了していない場合(S106;NO)、処理がステップS101に戻って、繰り返される。
次に、図4の動作フローの各処理について、詳細に説明する。
映像入力部102は、映像入力・DB登録処理を行う。映像入力部102は、時系列的に入力される映像を、所望のデジタル形式映像(デジタル映像データ)に変換し、映像DB104に登録する。映像入力部102は、後段処理に、デジタル形式映像を出力する。映像DB104は、2つの時刻の映像データを保持する。即ち、映像DB104は、現時刻の映像データと1時刻前の映像データとを保持する。映像入力部102は、映像DB104内にあるその時点での“1時刻前”の映像データを破棄し、映像DB104内のその時点での“現時刻”の映像データを、映像DB104内の“1時刻前”の映像データに移す。さらに、映像入力部102は、現時刻で入力された新たな映像データを、映像DB104内の“現時刻”の映像データとして保存する。
なお、所望のデジタル形式映像とは、後段のコーナー度算出に適した映像のことを指し、たとえば、画像の各位置(画素)でモノクロの8ビットの諧調を持つ格子状の映像データなどである。
コーナー度算出部106は、モノクロ映像データを入力として、各画素位置でコーナーらしさの度合いを表すコーナー度を算出する。
コーナー度算出部106は、画像内の各点について、映像の縦方向及び横方向の微分処理を行う。コーナー度算出部106は、画像中の各画素位置を中心として、例えばSobelオペレータのような縦方向と横方向のそれぞれの微分オペレータを作用させ、画素位置(x,y)ごとに縦方向及び横方向の微分値(それぞれdx(x,y)、dy(x,y)とする)を算出する。具体的には、入力画像をI(x,y)とし、Sobelの横方向微分オペレータをfx(a,b)、縦方向微分オペレータをfy(a,b)とするとき、次の式により画像の各位置(x,y)での横微分値dx(x,y)と縦微分値dy(x,y)が得られる。
図5は、Sobelの横微分オペレータの例を示す図である。Sobelの横微分オペレータfx(a,b)は、−1≦a≦1,−1≦b≦1の3×3で定義され、図5で示されるような係数を有する。
図6は、Sobelの縦微分オペレータの例を示す図である。Sobelの縦微分オペレータfy(a,b)は、−1≦a≦1,−1≦b≦1の3×3で定義され、図6で示さ
れるような係数を有する。
ただし、dx(x,y)、dy(x,y)は、映像の各画素位置での微分量であればよく、Sobelオペレータ以外のオペレータが使用されてもよい。
次に、コーナー度算出部106は、微分値の局所積分量の算出を行う。コーナー度算出部106は、画像の各点(x,y)の位置に対して、N×Nの矩形領域の積分値として次の3変量(g11,g12,g13)を算出する。ただし、Nは奇数値で、N=2×n+1とする。すなわち、nは矩形領域の1辺の大きさの1/2相当の大きさを表す。一例として、n=2、N=5である。ただし、nおよびNの大きさは、これらに限定されるものではない。

コーナー度算出部106は、3変量(g11,g12,g13)を用いて、画像各点(x,y)の位置に対して、コーナー度C(x,y)を、次のように、算出する。
コーナー点検出部108は、コーナー点検出処理を行う。コーナー度が3画素×3画素の領域の中心点で極大となるとき、当該中心点がコーナー点である。コーナー点検出部108は、先に求めたコーナー度C(x,y)を入力として、画像各点(x,y)の位置に対して、その位置を中心とする3×3の範囲内を調べる。コーナー点検出部108は、範囲内で着目画素位置のコーナー度が極大となる場合に、その位置(x,y)を現時刻の新規コーナー点として、新規コーナー点リスト(新規特徴点リスト)NLISTに画素位置(x,y)を追加すると共に、新規コーナー点数NNを1だけ増やす。
図7は、新規コーナー点リストNLISTの例を示す図である。新規コーナー点リストNLISTは、コーナー点を識別する番号と、当該コーナー点のx座標およびy座標とを対応づけて格納する。NNは、新規コーナー点リストNLISTに格納されるコーナー点の数である。
照合処理部114は、特徴点の照合処理を行う。映像DB104に保存されている1時刻前の映像をI1(x,y)、現時刻の映像をI2(x,y)とする。I1及びI2は、例えば、映像の輝度である。また、コーナー度算出部106で得られた現時刻の映像に対するコーナー度の分布をC(x,y)とし、特徴点DB112に保存されている1時刻前までの追跡特徴点リストをFLISTとする。なお、FLISTは、特徴点数NFで、FLISTリスト内のi番目の追跡特徴点を取り出す操作として、FGET(FLIST,i)を定義する。また、FGET(FLIST,i)は、FLISTリスト内のi番目の追跡特徴点の画像上での座標値(Pxi,Pyi)を返す。また、FSET(FLIST,i,x,y)は、FLISTリスト内のi番目の追跡特徴点の位置を、(x,y)に設定するものとする。ここで、FLISTは、先のNLISTと同じ形式のリストである。
図8、図9、図10、図11、図12は、照合処理部114における照合処理の動作フローの例を示す図である。図8の「A1」、「A2」、「A3」は、それぞれ、図9の「A1」、「A2」、「A3」と接続する。図9の「B1」、「B2」、「B3」、「B4」、「B5」、「B6」、「B7」は、それぞれ、図10の「B1」、「B2」、「B3」、「B4」、「B5」、「B6」、「B7」と接続する。図10の「C1」、「C2」、「C3」、「C4」、「C5」、「C6」、「C7」、「C8」、「C9」は、それぞれ、図11の「C1」、「C2」、「C3」、「C4」、「C5」、「C6」、「C7」、「C8」、「C9」と接続する。図11の「D1」、「D2」、「D3」は、それぞれ、図12の「D1」、「D2」、「D3」と接続する。
ステップS1101では、照合処理部114は、iに0を、NMに0を代入する。iは、追跡する特徴点の番号に相当する。ステップS1102では、照合処理部114は、iが特徴点数NF未満であるか否かを判定する。ここで、照合処理部114は、すべての追跡特徴点について探索を行ったか否かを確認する。iが特徴点数NF以上である(iが特徴点数NFになった)場合(S1102;NO)、処理が終了する。iが特徴点数NF未満である場合(S1102;YES)、処理がステップS1103に進む。
ステップS1103では、照合処理部114は、i番目の追跡特徴点の座標を、FLISTから取得する。FLISTは、特徴点DB112に格納される。照合処理部114は、取得した追跡特徴点の座標を、(Pxi,Pyi)とする。ここで取得した、i番目の追跡特徴点の座標(Pxi,Pyi)は、1時刻前の座標である。
ステップS1104では、照合処理部114は、S1maxに−1を代入し、S2maxに−1を代入する。また、i番目の特徴点(追跡特徴点)の現時刻での予測位置(qx,qy)は、PR(i,Pxi,Pyi)で与えられるものとする。照合処理部114は、PR(i,Pxi,Pyi)を算出する。PRは、位置予測のための手続きを表す。予測位置(qx,qy)は、例えば、2時刻前の追跡特徴点の位置を(rx2,ry2)、1時刻前の追跡特徴点の位置を(rx1,ry1)とするとき、線形予測値としてqx=rx1+(rx1−rx2)、qy=ry1+(ry1−ry2)等で与えられる。位置予測を用いない場合、qx=Pxi,qy=Pyiとすればよい。
ステップS1105では、照合処理部114は、syにqy−Myを代入する。座標(sx,sy)は、探索している座標(走査位置)を表す。照合処理部114は、予測位置(qx,qy)を中心に、横、縦、それぞれ、Mx、Myの変動幅で現時刻の画像I2内での探索を行う。探索範囲は、予測位置(qx,qy)を中心に、横幅2Mx、縦幅2Myである。
探索に際しては、照合処理部114は、先の探索範囲内を走査しながら、探索範囲内の
探索(走査)位置(sx,sy)を中心に幅2R、高さ2Rの映像比較用の小領域を設ける。照合処理部114は、当該小領域と同じ大きさの小領域を1時刻前での画像I1の追跡特徴点位置(Pxi,Pyi)を中心に設ける。照合処理部114は、探索範囲内の各走査位置において、小領域内の映像一致度S1(=定数−SAD(Sum of absolute difference)値)を算出する。SAD値は、小領域内での各位置での輝度差の絶対値和を表す。映像一致度S1は、定数からSAD値を引くことで、一致度が高いほど、大きな値を取るように調整している。映像一致度S1は、これに限定されず、例えば、SAD値の逆数でもよい。さらに、照合処理部114は、小領域内の各位置での輝度差に小領域の中心位置におけるコーナー度を掛けたものの総和S2(総合一致度)を算出する。そして、照合処理部114は、各走査位置において、S1が閾値TH以上の場合、一致性が十分で照合として信頼性が高いので、探索範囲内において総合一致度S2が最大となる位置(mx,my)を算出し、照合済特徴点リストMLISTに追加する。一方、照合処理部114は、総合一致度S1が閾値TH未満のときは、一致性が低く特徴点として信頼性が低いので、i番目の特徴点は追跡失敗とみなし、照合済特徴点リストMLISTに追加しない。
照合処理部114は、総合一致度S2の算出において、小領域内での各位置での一致度を求める際に、輝度の一致度v及びコーナーらしさcを求める。輝度の一致度v及びコーナーらしさcは、次のように求められる。
ここで、(j1,i1)は1時刻前の追跡特徴点(Pxi,Pyi)を中心として小領域を設けた場合の小領域内での位置を表す。(j2,i2)は、現時刻の探索走査における同小領域内での位置を表す。(sx,sy)は、現時刻の探索走査の中心位置を表す。また、Aは、所定の正の定数である。I1(x,y)は、1時刻前の画像I1における座標(x,y)の輝度値である。I2(x,y)は、現時刻の画像I2における座標(x,y)の輝度値である。
具体的には、照合処理部114は、次のように処理する。
ステップS1106では、照合処理部114は、syがqy+My以下であるか否かを判定する。syがqy+Myを超えると、座標(sx,sy)は探索範囲外である。syがqy+Myを超えている場合(S1106;NO)、処理がステップS1122に進む。syがqy+My以下である場合(S1106;YES)、処理がステップS1107に進む。ステップS1107では、照合処理部114は、sxにqx−Mxを代入する。
ステップS1108では、照合処理部114は、sxがqx+Mx以下であるか否かを判定する。sxがqy+Mxを超えると、座標(sx,sy)は探索範囲外である。sxがqx+Mxを超えている場合(S1108;NO)、処理がステップS1121に進む。sxがqx+Mx以下である場合(S1108;YES)、処理がステップS1109に進む。
ステップS1109では、照合処理部114は、S1に0、S2に0を代入する。ステップS1110では、照合処理部114は、i1にPyi−R、i2にsy−Rを代入する。ステップS1111では、照合処理部114は、i1がPyi+R以下であるか否かを判定する。i1がPyi+Rより大きい場合(S1111;NO)、処理がS1118
に進む。i1がPyi+R以下である場合(S1111;YES)、処理がS1112に進む。
ステップS1112では、照合処理部114は、j1にPxi−R、j2にsx−Rを代入する。
ステップS1113では、照合処理部114は、j1がPxi+R以下であるか否かを判定する。j1がPxi+Rより大きい場合(S1113;NO)、処理がS1117に進む。j1がPxi+R以下である場合(S1113;YES)、処理がS1114に進む。
ステップS1114では、照合処理部114は、vにA−|I1(j1,i1)−I2(j2,i2)|、cにC(sx,sy)を代入する。vは、輝度の一致度である。vが大きいほど輝度の一致度が高い。cは、コーナーらしさである。
ステップS1115では、照合処理部114は、S1にS1+v、S2にS2+v×cを代入する。ステップS1116では、照合処理部114は、j1にj1+1、j2にj2+1を代入し、処理がステップS1113に戻る。
ステップS1117では、照合処理部114は、i1にi1+1、i2にi2+1を代入し、処理がS1111に戻る。
ステップS1118では、照合処理部114は、S2がS2maxを超えているか否かを判定する。S2がS2maxを超えていない場合(S1118;NO)、処理がステップS1120に進む。S2がS2maxを超えている場合(S1118;YES)、処理がステップS1119に進む。
ステップS1119では、照合処理部114は、S1maxにS1、S2maxにS2を代入する。また、照合処理部114は、mxにsx、myにsyを代入する。
ステップS1120では、照合処理部114は、sxにsx+1を代入し、処理がステップS1108に戻る。
ステップS1121では、照合処理部114は、syにsy+1を代入し、処理がステップS1106に戻る。
ステップS1122では、照合処理部114は、S1maxが所定の閾値THを超えているか否かを判定する。S1maxが所定の閾値を超えていない場合(S1122;NO)、処理がステップS1124に進む。この場合、i番目の特徴点は追跡失敗とみなされ、照合済特徴点リストMLISTに追加されない。S1maxが所定の閾値を超えている場合(S1122;YES)、処理がステップS1123に進む。
ステップS1123では、照合処理部114は、i番目の追跡特徴点の座標(mx,my)を、照合済み特徴点リストMLISTに追加する。NMは、当該特徴点に付けられる新たな番号である。照合処理部114は、NMにNM+1を代入し、処理がステップS1124に進む。
ステップS1124では、照合処理部114は、iにi+1を代入し、処理がステップS1102に戻る。
図13は、1時刻前の画像I1及び現時刻での画像I2の例を示す図である。図13の1時刻前の画像I1は、1時刻前の追跡特徴点(Pxi,Pyi)を中心として、幅2R高さ2Rの照合の小領域を有する。図13の現時刻の画像I2は、予測位置(qx,qy)を中心として、幅2Mx高さ2Myの探索範囲を含む。また、図13の現時刻の画像I2は、探索範囲の一部を含む幅2R高さ2Rの照合の小領域を有する。
特徴点追加削除部110は、時系列での照合済み特徴点リストMLIST(特徴点数NM)、現時刻での新規特徴点リストNLIST(特徴点数NN)を入力として、特徴点の追加および削除を行う。
図14は、特徴点追加削除部の動作フローの例を示す図である。特徴点追加削除部110は、特徴点の削除処理を行い(S1201)、特徴点の追加処理を行う(S1202)。
次に、特徴点追加削除部110における特徴点の削除処理について説明する。
図15、図16、図17は、特徴点追加削除部における特徴点の削除処理の動作フローの例を示す図である。図15の「E1」、「E2」、「E3」、「E4」は、それぞれ、図16の「E1」、「E2」、「E3」、「E4」と接続する。図16の「F1」、「F2」、「F3」、「F4」、「F5」、「F6」、「F7」は、それぞれ、図17の「F1」、「F2」、「F3」、「F4」、「F5」、「F6」、「F7」と接続する。
ステップS1301では、特徴点追加削除部110は、iに0、NFに0を代入する。
ステップS1302では、特徴点追加削除部110は、iがNM未満であるか否かを判定する。iがNM以上である場合(S1302;NO)、処理が終了する。iがNM未満である場合(S1302;YES)、処理がステップS1303に進む。
ステップS1303では、特徴点追加削除部110は、特徴点DB112のMLISTからi番目の照合特徴点の座標を取得し、(Pxi,Pyi)とする。
ステップS1304では、特徴点追加削除部110は、Pxiが0未満、かつ、Pyiが0未満であるか否かを判定する。Pxiが0未満、かつ、Pyiが0未満である場合(S1304;YES)、処理がステップS1314に進む。Pxiが0以上、または、Pyiが0以上である場合(S1304;NO)、処理がステップS1305に進む。Pxiが0未満、かつ、Pyiが0未満であることは、当該座標で示される特徴点が無効点であることを示す。
ステップS1305では、特徴点追加削除部110は、jにi+1を代入する。
スッテプS1306では、特徴点追加削除部110は、jがNM未満であるか否かを判定する。jがNM未満でない場合(S1306;NO)、処理がステップS1313に進む。jがNM未満である場合(S1306;YES)、処理がステップS1307に進む。
ステップS1307では、特徴点追加削除部110は、特徴点DB112のMLISTからj番目の照合特徴点の座標を取得し、(Pxj,Pyj)とする。
ステップS1308では、特徴点追加削除部110は、Pxjが0未満、かつ、Pyjが0未満であるか否かを判定する。Pxjが0未満、かつ、Pyjが0未満である場合(
S1308;YES)、処理がステップS1312に進む。Pxjが0以上、または、Pyjが0以上である場合(S1308;NO)、処理がステップS1309に進む。Pxjが0未満、かつ、Pyjが0未満であることは、当該座標で示される特徴点が無効点であることを示す。
ステップS1309では、特徴点追加削除部110は、i番目の照合特徴点とj番目の照合特徴点との距離Lを算出する。距離Lは次のように求められる。
ステップS1310では、特徴点追加削除部110は、ステップS1309で求めた距離Lが所定の閾値TH_L未満であるか否かを判定する。距離Lが閾値TH_L以上である場合(S1310;NO)、処理がステップS1312に進む。距離Lが閾値TH_L未満である場合(S1310;YES)、処理がステップS1311に進む。
ステップS1311では、特徴点追加削除部110は、j番目の照合特徴点を無効値に設定する。具体的には、特徴点追加削除部110は、MLISTのj番目の点の座標を無効値である(−1,−1)に設定する。このように設定された当該j番目の特徴点は、無効点となる。
ステップS1312では、特徴点追加削除部110は、jにj+1を代入し、処理がステップS1306に戻る。
ステップS1313では、特徴点追加削除部110は、i番目の照合特徴点をFLISTに追加する。具体的には、特徴点追加削除部110は、FLISTのNF番目の特徴点として座標(Pxi,Pyi)を追加する。また、特徴点追加削除部110は、NFにNF+1を代入する。
ステップS1314では、特徴点追加削除部110は、iにi+1を代入して、処理がステップS1302に戻る。
図15、図16、図17の削除処理によって、特徴点追加削除部110は、追跡によって正しく照合された特徴点の中で、すべての他の特徴点との間の距離が閾値TH_L以上離れたものについて、最終的に追跡特徴点リストFLISTに登録する(特徴点数NF)。
次に、特徴点追加削除部110における特徴点の追加処理について説明する。
図18、図19、図20は、特徴点追加削除部における特徴点の追加処理の動作フローの例を示す図である。図18の「G1」、「G2」、「G3」、「G4」、「G5」は、それぞれ、図19の「G1」、「G2」、「G3」、「G4」、「G5」と接続する。図19の「H1」、「H2」、「H3」、「H4」は、それぞれ、図20の「H1」、「H2」、「H3」、「H4」と接続する。
ステップS1401では、特徴点追加削除部110は、iに0を代入する。
ステップS1402では、特徴点追加削除部110は、iがNN未満であるか否かを判定する。iがNN以上である場合(S1402;NO)、処理が終了する。iがNN未満
である場合(S1402;YES)、処理がステップS1403に進む。
ステップS1403では、特徴点追加削除部110は、NLISTからi番目の新規特徴点の座標を取得し、(Pxi,Pyi)とする。
ステップS1404では、特徴点追加削除部110は、jに0を代入する。
ステップS1405では、特徴点追加削除部110は、jがNF未満であるか否かを判定する。jがNF以上である場合(S1405;NO)、処理がステップS1410に進む。jがNF未満である場合(S1405;YES)、処理がステップS1406に進む。
ステップS1406では、特徴点追加削除部110は、FLISTからj番目の追跡特徴点の座標を取得し、(Pxj,Pyj)とする。
ステップS1407では、特徴点追加削除部110は、i番目の新規点とj番目の追跡特徴点との距離Lを算出する。距離Lは次のように求められる。
ステップS1408では、特徴点追加削除部110は、ステップS1408で求めた距離Lが所定の閾値TH_L未満であるか否かを判定する。距離Lが閾値TH_L以上である場合(S1408;NO)、処理がステップS1411に進む。距離Lが閾値TH_L未満である場合(S1408;YES)、処理がステップS1409に進む。
ステップS1409では、特徴点追加削除部110は、jにj+1を代入して、処理がステップS1405に戻る。
ステップS1410では、特徴点追加削除部110は、i番目の新規特徴点を追跡特徴点リストFLISTに追加する。具体的には、特徴点追加削除部110は、NF番目の特徴点として、座標(Pxi,Pyi)をFLISTに登録する。また、特徴点追加削除部110は、NFにNF+1を代入する。
ステップS1411では、特徴点追加削除部110は、iにi+1を代入して、処理がステップS1402に戻る。
図18、図19、図20の追加処理によって、特徴点追加削除部110は、NLISTに含まれる新規特徴点の中で、すべての他の特徴点(FLISTに含まれる特徴点)との間の距離が閾値TH_L以上離れたものについて、追跡特徴点リストFLISTに登録する。
(実施形態1の作用、効果)
特徴点追跡装置100は、時系列で入力される画像からコーナー度を算出し、コーナー点を検出する。特徴点追跡装置100は、小領域の画像(輝度)の一致度と小領域の中心点のコーナー度とに基づいて総合一致度を算出し、特徴点を追跡する。特徴点追跡装置100は、小領域の輝度の一致度が高く、かつ、小領域の中心点のコーナー度が高い小領域の中心点を、追跡特徴点とすることで、特徴点を追跡する。
コーナーらしさcは、コーナー度分布C(x,y)を用いて、設定した小領域の中心位置(sx,sy)に対して求めてられており、小領域内でのコーナー度の分布形状を用いていない。ある点のコーナー度の値は、当該ある点の周囲の縦横それぞれの微分パターンを評価して求めるので、対象の映り方の変化に対して敏感である。コーナー度分布のある位置に小領域を設けた場合、対象の移動によってその小領域内のコーナー度の分布パターンは大きく変化する。そのため、小領域内のすべての点のコーナー度を反映させると、例え、輝度の一致度が大きくても、コーナー度が小さくなり総合一致度S2が低下する。
一方、コーナー度は、周辺のコーナー度分布のパターン形状は異なっても、各位置での値は定性的にコーナーらしさを評価する指標として意味があるものである。そこで、照合処理部114は、探索範囲内の走査で着目している中心位置(sx,sy)でのコーナーらしさ(=元のコーナー特徴としての度合い)を用いて総合一致度S2を算出する。これによって、特徴点追跡装置100は、周囲のコーナー度分布の形状の変化が大きくとも、コーナーとしての特性を維持しつつ映像パターンとして最も一致する箇所を定めることをでき、時系列での追跡においても位置ずれを抑えた追跡することをできる。
特徴点追跡装置100によれば、移動体に取り付けたカメラ等で撮影した映像から特徴点を検出し時系列映像から特徴点の位置を追跡する場合、時系列的な見え方の変化に追従しつつ、追跡する特徴点の位置のずれを抑えて、長時間に渡るより正確な追跡を実現できる。
〔実施形態2〕
次に実施形態2について説明する。実施形態2は、実施形態1との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
(構成例)
図21は、本実施形態の特徴点追跡装置の構成例を示す図である。特徴点追跡装置200は、映像入力部202、映像DB204、コーナー度算出部206、コーナー点検出部208、特徴点追加削除部210、特徴点DB212、照合処理部214を含む。照合処理部214は、仮追跡処理部222、真追跡処理部224を含む。
映像入力部202は、カメラで撮影された外界映像を入力し所望のデジタル映像データに変換し、コーナー度算出部206、照合処理部214、および、映像DB204に送出する。
映像DB204は、現時刻と1時刻前の映像データを保持する。
コーナー度算出部206は、映像データから映像の各位置でのコーナーらしさを表すコーナー度の分布を算出しコーナー点検出部208および照合処理部214に出力する。
コーナー点検出部208は、コーナー度分布を入力にして、コーナー点(特徴点)を抽出する。
特徴点追加削除部210は、抽出されたコーナー点列と特徴点DB212に保存される時系列的な追跡点とから新規の特徴点を追加するとともに追跡不適な点を削除する。
特徴点DB212は、時系列的に追跡する特徴点を保存する。
照合処理部214は、仮追跡処理部222及び真追跡処理部224を含む。仮追跡処理部222は、1時刻前の映像と現時刻の映像とを用いて仮の追跡対応位置を算出する。真
追跡処理部224は、仮追跡処理部222で求めた仮の対応位置を中心に局所的な範囲で1時刻前の映像と現時刻の映像とコーナー度とを用いて最良一致箇所を定める。
特徴点追跡装置200は、映像中の特徴点を時系列的に追跡した追跡結果(画像中の特徴点の位置)を外部に出力する。
(動作例)
図22は、特徴点抽出装置200の時系列での追跡処理の動作フローの例を示す図である。
ステップS201では、特徴点抽出装置200の映像入力部202は、外界を撮影するカメラ等から映像を取得し、デジタル映像に変換して映像DB204に現時刻の映像を登録するとともに、デジタル映像を次ステップ処理に出力する。
ステップS202では、コーナー度算出部206は、現時刻のデジタル映像から映像中の各位置でコーナーらしさを表すコーナー度を算出し、コーナー度分布を生成する。生成されたコーナー度分布は、コーナー点検出部208および照合処理部214に送られる。
ステップS203では、コーナー点検出部208は、コーナー度分布を用いてコーナー度が局所的に極大となる箇所を特定し、特定した箇所をコーナー点として次段処理に送る。
ステップS204では、照合処理部214の仮追跡処理部222は、映像情報として現時刻の入力映像と映像DB104に保持する1時刻前の映像と、特徴点DB212に保持される1時刻前までの追跡特徴点情報とを取得する。仮追跡処理部222は、取得した情報を用いて、映像情報の類似性に基づき1時刻前の追跡特徴点に対する現時刻での仮の対応位置を算出する。
ステップS205では、照合処理部214の真追跡処理部224は、仮の対応位置を中心とした局所的な探索を行う。真追跡処理部224は、局所的な探索によって、映像情報の類似性に加えて前段処理で求まったコーナー度分布から得られるコーナー度を加味した総合類似性に基づき1時刻前の追跡特徴点に対する現時刻での真の対応位置を算出する。真追跡処理部224は、装置出力として装置外に追跡位置(画像の座標値)を出力するとともに、後段処理に追跡結果を出力する。
ステップS203と、ステップS204及びステップS205とは、並列に実行されても、ステップS204及びステップS205が先に実行されてもよい。
ステップS206では、特徴点追加削除部210は、ステップS203で得られた現時刻で得られた特徴点列と、ステップS204及びステップS205で得られた現時刻での追跡特徴点列を受信する。特徴点追加削除部210は、これらの特徴点列および追跡特徴点列を入力として、新規特徴点の追加と追跡不要な特徴点の削除を行うことで特徴点DB212を更新し、次時刻での照合処理の準備を行う。
ステップS207では、特徴点抽出装置200は、映像の入力が終了したか否かを判定する。映像の入力が終了した場合(S207;YES)、処理が終了する。映像の入力が終了していない場合(S207;NO)、処理がステップS201に戻って、繰り返される。
次に、図22の動作フローの各処理について、詳細に説明する。
映像入力部202における映像入力・DB登録処理は、実施形態1の映像入力部102における映像入力・DB登録処理と同様である。コーナー度算出部206におけるコーナー度算出処理は、実施形態1のコーナー度算出部106におけるコーナー度算出処理と同様である。コーナー点検出部208におけるコーナー点検出処理は、実施形態1のコーナー点検出部108におけるコーナー点検出処理と同様である。
照合処理部214は、特徴点の照合処理を行う。映像DB204に保存されている1時刻前の映像をI1(x,y)、現時刻の映像をI2(x,y)とする。I1及びI2は、例えば、映像の輝度である。また、コーナー度算出部206で得られた現時刻の映像に対するコーナー度の分布をC(x,y)とし、特徴点DB212に保存されている1時刻前までの追跡特徴点リストをFLISTとする。なお、FLISTは、特徴点数NFで、FLIST内のi番目の追跡特徴点を取り出す操作として、FGET(FLIST,i)を定義する。また、FGET(FLIST,i)は、FLIST内のi番目の追跡特徴点の画像上での座標値(Pxi,Pyi)を返す。また、FSET(FLIST,i,x,y)は、FLIST内のi番目の追跡特徴点の位置を、(x,y)に設定するものとする。
図23、図24、図25、図26、図27、図28、図29、図30、図31は、照合処理部214における照合処理の動作フローの例を示す図である。図23の「I1」、「I2」、「I3」は、それぞれ、図24の「I1」、「I2」、「I3」と接続する。図24の「J1」、「J2」、「J3」、「J4」、「J5」、「J6」、「J7」は、それぞれ、図25の「J1」、「J2」、「J3」、「J4」、「J5」、「J6」、「J7」と接続する。図25の「K1」、「K2」、「K3」、「K4」、「K5」、「K6」、「K7」、「K8」、「K9」は、それぞれ、図26の「K1」、「K2」、「K3」、「K4」、「K5」、「K6」、「K7」、「K8」、「K9」と接続する。図26の「L1」、「L2」、「L3」は、それぞれ、図27の「L1」、「L2」、「L3」と接続する。図27の「M1」、「M2」、「M3」、「M4」、「M5」、「M6」は、それぞれ、図28の「M1」、「M2」、「M3」、「M4」、「M5」、「M6」と接続する。図28の「N1」、「N2」、「N3」、「N4」、「N5」、「N6」、「N7」、「N8」、「N9」、「NA」は、それぞれ、図29の「N1」、「N2」、「N3」、「N4」、「N5」、「N6」、「N7」、「N8」、「N9」、「NA」と接続する。図29の「O1」、「O2」、「O3」、「O4」、「O5」、「O6」、「O7」、「O8」は、それぞれ、図30の「O1」、「O2」、「O3」、「O4」、「O5」、「O6」、「O7」、「O8」と接続する。図30の「P1」、「P2」、「P3」、「P4」は、それぞれ、図31の「P1」、「P2」、「P3」、「P4」と接続する。
ステップS2101では、照合処理部214の仮追跡処理部222は、iに0を、NMに0を代入する。ステップS2102では、照合処理部214の仮追跡処理部222は、iが特徴点数NF未満であるか否かを判定する。ここで、照合処理部214の仮追跡処理部222は、すべての追跡特徴点について探索を行ったか否かを確認する。iが特徴点数NF以上である(iが特徴点数NFになった)場合(S2102;NO)、処理が終了する。iが特徴点数NF未満である場合(S2102;YES)、処理がステップS2103に進む。
ステップS2103では、照合処理部214の仮追跡処理部222は、i番目の追跡特徴点の座標を、FLISTから取得する。FLISTは、特徴点DB212に格納される。照合処理部214の仮追跡処理部222は、取得した追跡特徴点の座標を、(Pxi,Pyi)とする。ここで取得した、i番目の追跡特徴点の座標(Pxi,Pyi)は、1時刻前の座標である。
ステップS2104では、照合処理部214の仮追跡処理部222は、S1maxに−1を代入し、S2maxに−1を代入する。また、i番目の特徴点(追跡特徴点)の現時刻での予測位置(qx,qy)は、PR(i,Pxi,Pyi)で与えられるものとする。照合処理部214の仮追跡処理部222は、PR(i,Pxi,Pyi)を算出する。PRは、位置予測のための手続きを表す。予測位置(qx,qy)は、例えば、2時刻前の追跡特徴点の位置を(rx2,ry2)、1時刻前の追跡特徴点の位置を(rx1,ry1)とするとき、線形予測値としてqx=rx1+(rx1−rx2)、qy=ry1+(ry1−ry2)等で与えられる。位置予測を用いない場合、qx=Pxi,qy=Pyiとすればよい。
ステップS2105では、照合処理部214の仮追跡処理部222は、syにqy−Myを代入する。座標(sx,sy)は、探索している座標(走査位置)を表す。照合処理部214の仮追跡処理部222は、予測位置(qx,qy)を中心に、横、縦、それぞれ、Mx、Myの変動幅で現時刻の画像I2内での探索を行う。探索範囲は、予測位置(qx,qy)を中心に、横幅2Mx、縦幅2Myである。当該探索範囲は、仮追跡の探索範囲である。
探索に際しては、照合処理部214の仮追跡処理部222は、仮追跡の探索範囲内を走査しながら、探索範囲内の探索(走査)位置(sx,sy)を中心に幅2R,高さ2Rの映像比較用の小領域を設ける。照合処理部214の仮追跡処理部222は、当該小領域と同じ大きさの小領域を1時刻前での画像I1の追跡位置(Pxi,Pyi)を中心に設ける。照合処理部214の仮追跡処理部222は、探索範囲内の各走査位置において、小領域内の映像一致度S1(=定数−SAD値)を算出する。照合処理部214の仮追跡処理部222は、仮追跡の探索範囲内を走査しながら、最大のS1値を与える位置を仮の追跡位置(mx,my)として取得する。ただし、最大のS1が閾値TH未満のときは、一致性が低く照合として信頼性が低いので、i番目の特徴点は追跡失敗とみなし、照合済特徴点リストMLISTに追加しない。一方、最大のS1が閾値TH以上の場合、一致性が十分で照合として信頼性が高いので、第2ステップの真追跡処理に移る。
具体的には、照合処理部214の仮追跡処理部222は、次のように処理する。
ステップS2106では、仮追跡処理部222は、syがqy+My以下であるか否かを判定する。syがqy+Myを超えると、座標(sx,sy)は探索範囲外である。syがqy+Myを超えている場合(S2106;NO)、処理がステップS2122に進む。syがqy+My以下である場合(S2106;YES)、処理がステップS2107に進む。ステップS2107では、照合処理部114は、sxにqx−Mxを代入する。
ステップS2108では、仮追跡処理部222は、sxがqx+Mx以下であるか否かを判定する。sxがqy+Mxを超えると、座標(sx,sy)は探索範囲外である。sxがqx+Mxを超えている場合(S2108;NO)、処理がステップS2121に進む。sxがqx+Mx以下である場合(S2108;YES)、処理がステップS2109に進む。
ステップS2109では、仮追跡処理部222は、S1に0を代入する。ステップS2110では、仮追跡処理部222は、i1にPyi−R、i2にsy−Rを代入する。ステップS2111では、仮追跡処理部222は、i1がPyi+R以下であるか否かを判定する。i1がPyi+Rより大きい場合(S2111;NO)、処理がS2118に進む。i1がPyi+R以下である場合(S2111;YES)、処理がS2112に進む
ステップS2112では、仮追跡処理部222は、j1にPxi−R、j2にsx−Rを代入する。
ステップS2113では、仮追跡処理部222は、j1がPxi+R以下であるか否かを判定する。j1がPxi+Rより大きい場合(S2113;NO)、処理がS2117に進む。j1がPxi+R以下である場合(S2113;YES)、処理がS2114に進む。
ステップS2114では、仮追跡処理部222は、vにA−|I1(j1,i1)−I2(j2,i2)|、cにC(sx,sy)を代入する。vは、輝度の一致度である。cは、コーナーらしさである。
ステップS2115では、仮追跡処理部222は、S1にS1+vを代入する。ステップS2116では、仮追跡処理部222は、j1にj1+1、j2にj2+1を代入し、処理がステップS2113に戻る。
ステップS2117では、仮追跡処理部222は、i1にi1+1、i2にi2+1を代入し、処理がS2111に戻る。
ステップS2118では、仮追跡処理部222は、S1がS1maxを超えているか否かを判定する。S1がS1maxを超えていない場合(S2118;NO)、処理がステップS2120に進む。S1がS1maxを超えている場合(S2118;YES)、処理がステップS2119に進む。
ステップS2119では、仮追跡処理部222は、S1maxにS1を代入する。また、仮追跡処理部222は、mxにsx、myにsyを代入する。
ステップS2120では、仮追跡処理部222は、sxにsx+1を代入し、処理がステップS2108に戻る。
ステップS2121では、仮追跡処理部222は、syにsy+1を代入し、処理がステップS2106に戻る。
ステップS2122では、仮追跡処理部222は、S1maxが所定の閾値THを超えているか否かを判定する。S1maxが所定の閾値を超えていない場合(S2122;NO)、処理がステップS2142に進む。この場合、i番目の特徴点は追跡失敗とみなされ、照合済特徴点リストMLISTに追加されない。S1maxが所定の閾値を超えている場合(S2122;YES)、処理がステップS2123に進む。
ステップS2123以降は、照合処理部214の真追跡処理部224による真追跡処理である。真追跡処理では、真追跡処理部224は、仮の追跡位置(仮追跡点)(mx,my)を中心に縦横それぞれにLx,Lyの変動幅(真追跡の探索範囲)で現時刻の画像I2内での探索を行う。ただし、仮の追跡位置(仮追跡点)の近傍が探索されれば十分であるので、Lx,Lyは、Mx,Myに比べて小さい値となる。例えば、Lx=Ly=1とすることができる。探索に際しては、真追跡処理部224は、先の真追跡の探索範囲内を走査しながら、その位置を中心に幅2R,高さ2Rの映像比較用の小領域を設ける。真追跡処理部224は、当該小領域と同じ大きさの小領域を1時刻前での画像I1の追跡位置(Pxi,Pyi)を中心に設ける。真追跡処理部224は、探索範囲内の各走査位置に
おいて、小領域内の映像一致度S1(=定数−SAD値)に小領域の中心位置におけるコーナー度Cを掛けたものの総和S2(総合一致度)を算出する。真追跡処理部224は、先の真追跡の探索範囲内を走査しながら、最大のS2値を与える位置を真の追跡位置(tx,ty)として取得する。
真追跡処理部224は、総合一致度S2の算出において、小領域内での各位置での一致度を求める際に、輝度の一致度v及びコーナーらしさcを求める。輝度の一致度v及びコーナーらしさcは、次のように求められる。
ここで、(j1,i1)は1時刻前の追跡特徴点(Pxi,Pyi)を中心として小領域を設けた場合の小領域内での位置を表す。(j2,i2)は、現時刻の探索走査における同小領域内での位置を表す。(sx,sy)は、現時刻の探索走査の中心位置を表す。また、Aは、所定の正の定数である。I1(x,y)は、1時刻前の画像I1における座標(x,y)の輝度値である。I2(x,y)は、現時刻の画像I2における座標(x,y)の輝度値である。
具体的には、照合処理部214の真追跡処理部224は、次のように処理する。
ステップS2123では、真追跡処理部224は、S2maxに−1を代入する。ステップS2124では、真追跡処理部224は、syにmy−Lyを代入する。
ステップS2125では、真追跡処理部224は、syがmy+Ly以下であるか否かを判定する。syがmy+Lyを超えると、座標(sx,sy)は探索範囲外である。syがmy+Lyを超えている場合(S2125;NO)、処理がステップS2141に進む。syがmy+Ly以下である場合(S2125;YES)、処理がステップS2126に進む。ステップS2126では、照合処理部114は、sxにmx−Lxを代入する。
ステップS2127では、真追跡処理部224は、sxがmx+Lx以下であるか否かを判定する。sxがmy+Lxを超えると、座標(sx,sy)は探索範囲外である。sxがmx+Lxを超えている場合(S2127;NO)、処理がステップS2140に進む。sxがmx+Lx以下である場合(S2127;YES)、処理がステップS2128に進む。
ステップS2128では、真追跡処理部224は、S2に0を代入する。ステップS2129では、真追跡処理部224は、i1にPyi−R、i2にsy−Rを代入する。ステップS2130では、真追跡処理部224は、i1がPyi+R以下であるか否かを判定する。i1がPyi+Rより大きい場合(S2130;NO)、処理がS2137に進む。i1がPyi+R以下である場合(S2130;YES)、処理がS2131に進む。
ステップS2131では、真追跡処理部224は、j1にPxi−R、j2にsx−Rを代入する。
ステップS2132では、真追跡処理部224は、j1がPxi+R以下であるか否か
を判定する。j1がPxi+Rより大きい場合(S2132;NO)、処理がS2136に進む。j1がPxi+R以下である場合(S2132;YES)、処理がS2133に進む。
ステップS2133では、真追跡処理部224は、vにA−|I1(j1,i1)−I2(j2,i2)|、cにC(sx,sy)を代入する。vは、輝度の一致度である。cは、コーナーらしさである。
ステップS2134では、真追跡処理部224は、S2にS2+v×cを代入する。ステップS2135では、真追跡処理部224は、j1にj1+1、j2にj2+1を代入し、処理がステップS2132に戻る。
ステップS2136では、真追跡処理部224は、i1にi1+1、i2にi2+1を代入し、処理がS2130に戻る。
ステップS2137では、真追跡処理部224は、S2がS2maxを超えているか否かを判定する。S2がS2maxを超えていない場合(S2137;NO)、処理がステップS2139に進む。S2がS2maxを超えている場合(S2137;YES)、処理がステップS2138に進む。
ステップS2138では、真追跡処理部224は、S1maxにS1、S2maxにS2を代入する。また、真追跡処理部224は、txにsx、tyにsyを代入する。
ステップS2139では、真追跡処理部224は、sxにsx+1を代入し、処理がステップS2127に戻る。
ステップS2140では、真追跡処理部224は、syにsy+1を代入し、処理がステップS2125に戻る。
ステップS2141では、真追跡処理部224は、i番目の追跡特徴点の座標(tx,ty)を、照合済み特徴点リストMLISTに追加する。NMは、当該特徴点に付けられる新たな番号である。真追跡処理部224は、NMにNM+1を代入し、処理がステップS2142に進む。
ステップS2142では、真追跡処理部224は、iにi+1を代入し、処理がステップS2102に戻る。
図32は、仮追跡処理における照合範囲の例を示す図である。図32の例では、1時刻前の画像I1では、1時刻前のi番目の追跡位置(特徴点)(Pxi,Pyi)を中心とし、幅2R高さ2Rの領域が照合の小領域となる。現時刻の画像I2では、i番目の予測位置(qx,qy)を中心として幅2Mx、高さ2Myの領域が仮追跡での探索範囲となる。また、仮追跡での探索範囲の一部を含む幅2R高さ2Rの領域が照合の小領域となる。
図33は、真追跡処理における照合範囲の例を示す図である。図33の例では、1時刻前の画像I1では、1時刻前のi番目の追跡位置(特徴点)(Pxi,Pyi)を中心とし、幅2R高さ2Rの領域が照合の小領域となる。現時刻の画像I2では、i番目の仮追跡位置(mx,my)を中心として幅2Lx、高さ2Lyの領域が真追跡での探索範囲となる。また、真追跡での探索範囲の一部を含む幅2R高さ2Rの領域が照合の小領域となる。現時刻の画像では、i番目の予測位置(qx,qy)を中心として幅2Mx、高さ2
Myの領域が仮追跡での探索範囲となる。また、真追跡での探索範囲の一部を含む幅2R高さ2Rの領域が照合の小領域となる。
特徴点追加削除部210における削除処理、追加処理は、実施形態1の特徴点追加削除部110における削除処理、追加処理と同様である。
(実施形態2の作用、効果)
特徴点追跡装置200は、1時刻前の画像の特徴点を中心とする小領域と、現時刻の画像の予測位置を中心とする探索範囲内の点を中心とする小領域との輝度の一致度を算出する。特徴点追跡装置200は、輝度の一致点がもっとも大きい点を仮の追跡位置として取得する。特徴点追跡装置200は、仮の追跡位置を中心とする所定の領域内で、総合一致度S2が最大となる点を探索し、最大となる点を追跡位置とする。即ち、特徴点追跡装置200は、輝度の一致度を求める領域(範囲)を段階的に絞り込む。特徴点追跡装置200は、総合一致度S2を算出する範囲を小さくすることで、計算負荷を削減することができる。
〔実施形態3〕
次に実施形態3について説明する。実施形態3は、実施形態1、実施形態2との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
図34は、実施形態3の特徴点追跡装置の構成例を示す図である。特徴点追跡装置300は、映像入力部302、エッジ検出部303、映像DB304、コーナー度算出部306、コーナー点検出部308、特徴点追加削除部310、特徴点DB312、照合処理部314を含む。
映像入力部302は、カメラで撮影された外界映像を入力し所望のデジタル映像データに変換し、エッジ検出部303に出力する。
エッジ検出部303は、入力された画像から映像の縦および横のエッジを検出する。エッジ検出部303は、検出したエッジ画像を、コーナー度算出部306、照合処理部314、および、映像DB304に送出する。
映像DB304は、現時刻と1時刻前のエッジ画像データを保持する。
コーナー度算出部306は、エッジ画像データから映像の各位置でのコーナーらしさを表すコーナー度の分布を算出しコーナー点検出部308および照合処理部314に出力する。
コーナー点検出部308は、コーナー度分布を入力にして、コーナー点(特徴点)を抽出する。
特徴点追加削除部310は、抽出されたコーナー点列と特徴点DB312に保存される時系列的な追跡点とから新規の特徴点を追加するとともに追跡不適な点を削除する。
特徴点DB312は、時系列的に追跡する特徴点を保存する。
照合処理部314は、現時刻のエッジ画像と映像DB304に保持される1時刻前のエッジ画像とについて、特徴点DB312に保持される特徴点各々について、両エッジ画像とコーナー度分布とを用いて照合処理によって追跡を行う。
特徴点追跡装置300は、エッジ画像中の特徴点を時系列的に追跡した追跡結果(画像中の特徴点の位置)を外部に出力する。
(動作例)
図35は、特徴点抽出装置300の時系列での追跡処理の動作フローの例を示す図である。
ステップS301では、特徴点抽出装置300の映像入力部302は、外界を撮影するカメラ等から映像を取得し、デジタル映像に変換して、後段に出力する。
ステップS302では、エッジ検出部303は、入力された映像からエッジを検出して、映像DB104に現時刻のエッジ画像を登録するとともに、エッジ画像を次ステップ処理に出力する。
ステップS303では、コーナー度算出部306は、現時刻のエッジ画像から映像中の各位置でコーナーらしさを表すコーナー度を算出し、コーナー度分布を生成する。生成されたコーナー度分布は、コーナー点検出部308および照合処理部314に送られる。
ステップS304では、コーナー点検出部308は、コーナー度分布を用いてコーナー度が局所的に極大となる箇所を特定し、特定した箇所をコーナー点として次段処理に送る。
ステップS305では、照合処理部314は、映像情報として現時刻の入力映像と映像DBに保持する1時刻前の映像と、前段処理で求まったコーナー度分布と、特徴点DB312に保持される1時刻前までの追跡特徴点情報を取得する。照合処理部314は、取得した情報を用いて、1時刻前の追跡特徴点に対する現時刻での対応する位置を算出し、装置出力として装置外に追跡位置(画像の座標値)を出力するとともに、後段処理に追跡結果を出力する。
ステップS304及びステップS305は、並列に実行されても、ステップS305が先に実行されてもよい。
ステップS306では、特徴点追加削除部310は、ステップS304で得られた現時刻で得られた特徴点列と、ステップS305で得られた現時刻での追跡特徴点列を入力として、新規特徴点の追加と追跡不要な特徴点の削除を行うことで特徴点DB312を更新し、次時刻での照合処理の準備を行う。
ステップS307では、特徴点抽出装置300は、映像の入力が終了したか否かを判定する。映像の入力が終了した場合(S307;YES)、処理が終了する。映像の入力が終了していない場合(S307;NO)、処理がステップS301に戻って、繰り返される。
次に、図35の動作フローの各処理について、詳細に説明する。
映像入力部302は、映像入力処理を行う。映像入力部302は、時系列的に入力される映像を、所望のデジタル形式映像(デジタル映像データ)に変換し、エッジ検出部303に出力する。
なお、所望のデジタル形式映像とは、後段のコーナー度算出に適した映像のことを指し
、たとえば、画像の各位置(画素)でモノクロの8ビットの諧調を持つ格子状の映像データなどである。
エッジ検出部303は、入力される濃淡を示すデジタル映像から、映像の各点位置での縦方向および横方向の微分値を算出して、エッジ画像を生成し、当該エッジ画像を映像DB304に登録する。エッジ検出部303は、生成したエッジ画像を、コーナー度算出部306、照合処理部314に出力する。
エッジ検出部303は、入力された画像内の各点について、縦方向および横方向の微分処理を行う。エッジ検出部303は、画像中の各画素位置を中心として、例えばSobelオペレータのような縦方向と横方向のそれぞれの微分オペレータを作用させ、画素位置(x,y)ごとに縦方向及び横方向の微分値(それぞれdx(x,y)、dy(x,y)とする)を算出する。具体的には、入力画像をI(x,y)とし、Sobelの横方向微分オペレータをfx(a,b)、縦方向微分オペレータをfy(a,b)とするとき、次の式により画像の各位置(x,y)での横微分値dx(x,y)と縦微分値dy(x,y)が得られる。
横微分オペレータfx(a,b)は、例えば、図5に示されるSobelの横微分オペレータと同様である。立て微分オペレータfy(a,b)は、例えば、図6に示されるSobelの横微分オペレータと同様である。dx(x,y)、dy(x,y)は、映像の各画素位置での微分量であればよく、Sobelオペレータ以外のオペレータが使用されてもよい。
このようにして、エッジ検出部303は、横微分値dx(x,y)を画素値として有する横微分映像Dx(横方向エッジ画像)を出力する。また、エッジ検出部303は、縦微分画像dy(x,y)を画素値として有する縦微分映像Dy(縦方向エッジ画像)を出力する。横方向エッジ画像及び縦方向エッジ画像を総称して、エッジ画像ともいう。
映像DB304は、2つの時刻のエッジ画像データを保持する。即ち、映像DB304は、現時刻のエッジ画像データと1時刻前のエッジ画像データとを保持する。エッジ検出部303は、映像DB304内にあるその時点での“1時刻前”のエッジ画像データを破棄し、映像DB304内のその時点での“現時刻”のエッジ画像データを、映像DB304内の“1時刻前”のエッジ画像データに移す。さらに、エッジ検出部303は、現時刻で入力された新たなエッジ画像データを、映像DB304内の“現時刻”のエッジ画像データとして保存する。
コーナー度算出部306は、微分値の局所積分量の算出を行う。コーナー度算出部306は、画像の各点(x,y)の位置に対して、N×Nの矩形領域の積分値として次の3変
量(g11,g12,g13)を算出する。コーナー度算出部306は、横方向エッジ画像Dxの画素値dx(x,y)及び縦方向エッジ画像Dyの画素値dy(x,y)を用いて、実施形態1のコーナー度算出部106と同様に、3変量(g11,g12,g13)を算出する。
コーナー度算出部306は、3変量(g11,g12,g13)を用いて、画像各点(x,y)の位置に対して、コーナー度C(x,y)を、次のように、算出する。コーナー度算出部306は、実施形態1のコーナー度算出部106と同様に、コーナー度C(x,y)を算出する。
コーナー点検出部308は、実施形態1のコーナ点検出部108と同様にして、コーナー点検出処理を行う。
照合処理部314は、特徴点の照合処理を行う。映像DB304に保存されている1時刻前のエッジ画像をDx1(x,y)及びDy1(x,y)、現時刻のエッジ画像をDx2(x,y)及びDy2(x,y)とする。また、コーナー度算出部306で得られた現時刻のエッジ画像に対するコーナー度の分布をC(x,y)とし、特徴点DB312に保存されている1時刻前までの追跡特徴点リストをFLISTとする。なお、FLISTは、特徴点数NFで、FLISTリスト内のi番目の追跡特徴点を取り出す操作として、FGET(FLIST,i)を定義する。また、FGET(FLIST,i)は、FLISTリスト内のi番目の追跡特徴点の画像上での座標値(Pxi,Pyi)を返す。また、FSET(FLIST,i,x,y)は、FLISTリスト内のi番目の追跡特徴点の位置を、(x,y)に設定するものとする。ここで、FLISTは、NLISTと同じ形式のリストである。
照合処理部314における照合処理の動作フローは、実施形態1の照合処理部114における照合処理の動作フロー(図8、図9、図10、図11、図12)と共通点を有する。ここでは、相違点について説明する。
照合処理部314には、映像I1、I2の代わりに、エッジ画像Dx1、Dy1、Dx2、Dy2が入力される。また、輝度の一致度vの代わりにエッジ形状の一致度vが使用される。エッジの形状の一致度vは、次のように定義される。
特徴点追加削除部310における削除処理、追加処理は、実施形態1の特徴点追加削除部110における削除処理、追加処理と同様である。
(実施形態3の作用、効果)
特徴点追跡装置300は、入力画像からエッジ画像を生成する。特徴量追跡装置300は、エッジ画像を用いて、コーナー度算出処理、照合処理を行う。特徴点追跡装置300は、小領域のエッジ画像の一致度と小領域の中心点のコーナー度とに基づいて総合一致度を算出し、特徴点を追跡する。特徴点追跡装置100は、小領域のエッジ画像の一致度が高く、かつ、小領域の中心点のコーナー度が高い小領域の中心点を、追跡特徴点とすることで、特徴点を追跡する。
コーナーらしさcは、コーナー度分布C(x,y)を用いて、設定した小領域の中心位置(sx,sy)に対して求めてられており、小領域内でのコーナー度の分布形状を用いていない。ある点のコーナー度の値は、当該ある点の周囲の縦横それぞれの微分パターン
を評価して求めるので、対象の映り方の変化に対して敏感である。コーナー度分布のある位置に小領域を設けた場合、対象の移動によってその小領域内のコーナー度の分布パターンは大きく変化する。そのため、小領域内のすべての点のコーナー度を反映させると、例え、エッジ画像の一致度が大きくても、コーナー度が小さくなり総合一致度S2が低下する。
一方、コーナー度は、周辺のコーナー度分布のパターン形状は異なっても、各位置での値は定性的にコーナーらしさを評価する指標として意味があるものである。そこで、照合処理部314は、探索範囲内の走査で着目している中心位置(sx,sy)でのコーナーらしさ(=元のコーナー特徴としての度合い)を用いて総合一致度S2を算出する。これによって、特徴点追跡装置300は、周囲のコーナー度分布の形状の変化が大きくとも、コーナーとしての特性を維持しつつエッジ画像のパターンとして最も一致する箇所を定めることをでき、時系列での追跡においても位置ずれを抑えた追跡することをできる。
〔実施形態4〕
次に実施形態4について説明する。実施形態4は、実施形態1、実施形態2、実施形態3との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
(構成例)
図36は、本実施形態の特徴点追跡装置の構成例を示す図である。特徴点追跡装置400は、映像入力部402、エッジ検出部403、映像DB404、コーナー度算出部406、コーナー点検出部408、特徴点追加削除部410、特徴点DB412、照合処理部414を含む。
映像入力部402は、カメラで撮影された外界映像を入力し所望のデジタル映像データに変換し、エッジ検出部403に出力する。
エッジ検出部403は、入力された画像から映像の縦および横のエッジを検出する。エッジ検出部403は、検出したエッジ画像を、コーナー度算出部406、照合処理部414、および、映像DB404に送出する。
映像DB404は、現時刻と1時刻前のエッジ画像データを保持する。
コーナー度算出部406は、エッジ画像データから映像の各位置でのコーナーらしさを表すコーナー度の分布を算出しコーナー点検出部408および照合処理部414に出力する。
コーナー点検出部408は、コーナー度分布を入力にして、コーナー点(特徴点)を抽出する。
特徴点追加削除部410は、抽出されたコーナー点列と特徴点DB412に保存される時系列的な追跡点とから新規の特徴点を追加するとともに追跡不適な点を削除する。
特徴点DB412は、時系列的に追跡する特徴点を保存する。
照合処理部414は、仮追跡処理部422及び真追跡処理部424を含む。仮追跡処理部422は、1時刻前の映像と現時刻の映像とを用いて仮の追跡対応位置を算出する。真追跡処理部424は、仮追跡処理部422で求めた仮の対応位置を中心に局所的な範囲で1時刻前の映像と現時刻の映像とコーナー度とを用いて最良一致箇所を定める。
特徴点追跡装置400は、エッジ画像中の特徴点を時系列的に追跡した追跡結果(画像中の特徴点の位置)を外部に出力する。
(動作例)
図37は、特徴点抽出装置400の時系列での追跡処理の動作フローの例を示す図である。
ステップS401では、特徴点抽出装置400の映像入力部402は、外界を撮影するカメラ等から映像を取得し、デジタル映像に変換して、後段に出力する。
ステップS402では、エッジ検出部403は、入力された映像からエッジを検出して、映像DB404に現時刻のエッジ画像を登録するとともに、エッジ画像を次ステップ処理に出力する。
ステップS403では、コーナー度算出部406は、現時刻のエッジ画像から映像中の各位置でコーナーらしさを表すコーナー度を算出し、コーナー度分布を生成する。生成されたコーナー度分布は、コーナー点検出部408および照合処理部414に送られる。
ステップS404では、コーナー点検出部408は、コーナー度分布を用いてコーナー度が局所的に極大となる箇所を特定し、特定した箇所をコーナー点として次段処理に送る。
ステップS405では、照合処理部414の仮追跡処理部422は、映像情報として現時刻の入力映像と映像DB404に保持する1時刻前のエッジ画像と、特徴点DB412に保持される1時刻前までの追跡特徴点情報とを取得する。仮追跡処理部422は、取得した情報を用いて、映像情報の類似性に基づき1時刻前の追跡特徴点に対する現時刻での仮の対応位置を算出する。
ステップS406では、照合処理部414の真追跡処理部424は、仮の対応位置を中心とした局所的な探索を行う。真追跡処理部424は、局所的な探索によって、映像情報の類似性に加えて前段処理で求まったコーナー度分布から得られるコーナー度を加味した総合類似性に基づき1時刻前の追跡特徴点に対する現時刻での真の対応位置を算出する。真追跡処理部424は、装置出力として装置外に追跡位置(画像の座標値)を出力するとともに、後段処理に追跡結果を出力する。
ステップS404と、ステップS405及びステップS406とは、並列に実行されても、ステップS405及びステップS406が先に実行されてもよい。
ステップS407では、特徴点追加削除部410は、ステップS404で得られた現時刻で得られた特徴点列と、ステップS405及びステップS406で得られた現時刻での追跡特徴点列を受信する。特徴点追加削除部410は、これらの特徴点列および追跡特徴点列を入力として、新規特徴点の追加と追跡不要な特徴点の削除を行うことで特徴点DB312を更新し、次時刻での照合処理の準備を行う。
ステップS408では、特徴点抽出装置400は、映像の入力が終了したか否かを判定する。映像の入力が終了した場合(S408;YES)、処理が終了する。映像の入力が終了していない場合(S408;NO)、処理がステップS401に戻って、繰り返される。
次に、図37の動作フローの各処理について、詳細に説明する。
映像入力部402における映像入力処理は、実施形態3の映像入力部302における映像入力処理と同様である。
エッジ検出部403におけるエッジ検出、DB登録処理は、実施形態3のエッジ検出部303におけるエッジ検出、DB登録処理と同様である。
コーナー度算出部406におけるコーナー度算出処理は、実施形態3のコーナー度算出部306におけるコーナー度算出処理と同様である。
照合処理部414における照合処理の動作フローは、実施形態2の照合処理部214における照合処理の動作フロー(図23、図24、図25、図26、図27、図28、図29、図30、図31)と共通点を有する。ここでは、相違点について説明する。
照合処理部414には、映像I1、I2の代わりに、エッジ画像Dx1、Dy1、Dx2、Dy2が入力される。また、輝度の一致度vの代わりにエッジ形状の一致度vが使用される。エッジの形状の一致度vは、次のように定義される。
特徴点追加削除部410における削除処理、追加処理は、実施形態1の特徴点追加削除部110における削除処理、追加処理と同様である。
(実施形態4の作用、効果)
特徴点追跡装置400は、1時刻前の画像の特徴点を中心とする小領域と、現時刻の画像の予測位置を中心とする探索範囲内の点を中心とする小領域とのエッジ画像の一致度を算出する。特徴点追跡装置200は、エッジ画像の一致点がもっとも大きい点を仮の追跡位置として取得する。特徴点追跡装置200は、仮の追跡位置を中心とする所定の領域内で、総合一致度S2が最大となる点を探索し、最大となる点を追跡位置とする。特徴点追跡装置400は、総合一致度S2を算出する範囲を小さくすることで、計算負荷を削減することができる。
以上の各実施形態は、可能な限りこれらを組み合わせて実施され得る。
100 特徴点追跡装置
102 映像入力部
104 映像DB
106 コーナー度算出部
108 コーナー点検出部
110 特徴点追加削除部
112 特徴点DB
114 照合処理部
200 特徴点追跡装置
202 映像入力部
204 映像DB
206 コーナー度算出部
208 コーナー点検出部
210 特徴点追加削除部
212 特徴点DB
214 照合処理部
222 仮追跡処理部
224 真追跡処理部
300 特徴点追跡装置
302 映像入力部
303 エッジ検出部
304 映像DB
306 コーナー度算出部
308 コーナー点検出部
310 特徴点追加削除部
312 特徴点DB
314 照合処理部
400 特徴点追跡装置
402 映像入力部
403 エッジ検出部
404 映像DB
406 コーナー度算出部
408 コーナー点検出部
410 特徴点追加削除部
412 特徴点DB
414 照合処理部
422 仮追跡処理部
424 真追跡処理部

Claims (10)

  1. 第1時刻の画像の横方向微分値と縦方向微分値とに基づいて、前記第1時刻の画像内の点のコーナーらしさを示すコーナー度を前記第1時刻の画像内の点毎に算出するコーナー度算出部と、
    前記第1時刻の1時刻前である第2時刻の画像内の特徴点を中心とする第1の大きさの範囲の輝度値と前記第2時刻の画像内の特徴点に対する前記第1時刻の画像における予測位置を中心とする第2の大きさの範囲内の点を中心点とする前記第1の大きさの範囲の輝度値とに基づく輝度の一致度、及び、前記第1時刻の画像内の前記第1の大きさの範囲の中心点におけるコーナー度、の積による総合一致度を算出し、前記総合一致度が最大となる前記第1の大きさの範囲の中心点を、前記第2時刻の画像内の特徴点に対する前記第1時刻の画像内の追跡位置とする照合処理部と、
    を備える特徴点追跡装置。
  2. 前記照合処理部は、前記輝度の一致度が最大となる前記第1の大きさの範囲の中心点を仮追跡点として算出し、
    前記照合処理部は、前記総合一致度を、前記第1時刻の1時刻前である第2時刻の画像内の特徴点を中心とする第1の大きさの範囲の輝度値と前記第1時刻の画像の前記仮追跡点を中心点とする第3の大きさの範囲内の点を中心点とする前記第1の大きさの範囲の輝度値とに基づく輝度の一致度、及び、前記第1時刻の画像内の前記第1の大きさの範囲の中心点におけるコーナー度、の積により算出し、
    前記第3の大きさの範囲は、前記第2の大きさの範囲よりも小さい
    請求項1に記載の特徴点追跡装置。
  3. 第1時刻及び前記第1時刻の1時刻前である第2時刻の画像の横方向微分値を画素値とする横方向エッジ画像と縦方向微分値を画素値とする縦方向エッジ画像とを取得し、前記第1時刻の前記横方向エッジ画像と前記第1時刻の前記縦方向エッジ画像とに基づいて、前記第1時刻の画像内の点のコーナーらしさを示すコーナー度を前記第1時刻の画像内の点毎に算出するコーナー度算出部と、
    前記第2時刻の画像内の特徴点を中心とする第1の大きさの範囲の横方向微分値及び縦方向微分値と前記第2時刻の画像内の特徴点に対する前記第1時刻の画像における予測位
    置を中心とする第2の大きさの範囲内の点を中心とする前記第1の大きさの範囲の横方向微分値及び縦方向微分値とに基づくエッジ形状の一致度、及び、前記第1時刻の画像内の前記第1の大きさの範囲の中心点におけるコーナー度、の積による総合一致度を算出し、前記総合一致度が最大となる前記第1の大きさの範囲の中心点を、前記第2時刻の画像内の特徴点に対する追跡位置とする照合処理部と、
    を備える特徴点追跡装置。
  4. 前記照合処理部は、前記エッジ形状の一致度が最大となる前記第1の大きさの範囲の中心点を仮追跡点として算出し、
    前記照合処理部は、前記総合一致度を、前記第1時刻の1時刻前である第2時刻の画像内の特徴点を中心とする第1の大きさの範囲の横方向微分値及び縦方向微分値と前記第1時刻の画像の前記仮追跡点を中心点とする第3の大きさの範囲内の点を中心点とする前記第1の大きさの範囲の横方向微分値及び縦方向微分値とに基づくエッジ形状の一致度、及び、前記第1時刻の画像内の前記第1の大きさの範囲の中心点におけるコーナー度、の積により算出し、
    前記第3の大きさの範囲は、前記第2の大きさの範囲よりも小さい
    請求項3に記載の特徴点追跡装置。
  5. 前記第1時刻の画像の横方向微分値を画素値とする横方向エッジ画像を生成し、前記第1時刻の画像の縦方向微分値を画素値とする縦方向エッジ画像を生成し、前記第2時刻の画像の横方向微分値を画素値とする横方向エッジ画像を生成し、前記第2時刻の画像の縦方向微分値を画素値とする縦方向エッジ画像を生成するエッジ検出部を備える請求項3または4に記載の特徴点追跡装置。
  6. コンピュータが、
    第1時刻の画像の横方向微分値と縦方向微分値とに基づいて、前記第1時刻の画像内の点のコーナーらしさを示すコーナー度を前記第1時刻の画像内の点毎に算出し、
    前記第1時刻の1時刻前である第2時刻の画像内の特徴点を中心とする第1の大きさの範囲の輝度値と前記第2時刻の画像内の特徴点に対する前記第1時刻の画像における予測位置を中心とする第2の大きさの範囲内の点を中心点とする前記第1の大きさの範囲の輝度値とに基づく輝度の一致度、及び、前記第1時刻の画像内の前記第1の大きさの範囲の中心点におけるコーナー度、の積による総合一致度を算出し、前記総合一致度が最大となる前記第1の大きさの範囲の中心点を、前記第2時刻の画像内の特徴点に対する前記第1時刻の画像内の追跡位置とする
    ことを実行する特徴点追跡方法。
  7. コンピュータが、
    前記輝度の一致度が最大となる前記第1の大きさの範囲の中心点を仮追跡点として算出し、
    前記総合一致度を、前記第1時刻の1時刻前である第2時刻の画像内の特徴点を中心とする第1の大きさの範囲の輝度値と前記第1時刻の画像の前記仮追跡点を中心点とする第3の大きさの範囲内の点を中心点とする前記第1の大きさの範囲の輝度値とに基づく輝度の一致度、及び、前記第1時刻の画像内の前記第1の大きさの範囲の中心点におけるコーナー度、の積により算出することを実行し、
    前記第3の大きさの範囲は、前記第2の大きさの範囲よりも小さい
    請求項6に記載の特徴点追跡方法。
  8. コンピュータが、
    第1時刻及び前記第1時刻の1時刻前である第2時刻の画像の横方向微分値を画素値とする横方向エッジ画像と縦方向微分値を画素値とする縦方向エッジ画像とを取得し、
    前記第1時刻の前記横方向エッジ画像と前記第1時刻の前記縦方向エッジ画像とに基づいて、前記第1時刻の画像内の点のコーナーらしさを示すコーナー度を前記第1時刻の画像内の点毎に算出し、
    前記第2時刻の画像内の特徴点を中心とする第1の大きさの範囲の横方向微分値及び縦方向微分値と前記第2時刻の画像内の特徴点に対する前記第1時刻の画像における予測位置を中心とする第2の大きさの範囲内の点を中心とする前記第1の大きさの範囲の横方向微分値及び縦方向微分値とに基づくエッジ形状の一致度、及び、前記第1時刻の画像内の前記第1の大きさの範囲の中心点におけるコーナー度、の積による総合一致度を算出し、前記総合一致度が最大となる前記第1の大きさの範囲の中心点を、前記第2時刻の画像内の特徴点に対する追跡位置とする
    ことを実行する特徴点追跡方法。
  9. コンピュータが、
    前記エッジ形状の一致度が最大となる前記第1の大きさの範囲の中心点を仮追跡点として算出し、
    前記総合一致度を、前記第1時刻の1時刻前である第2時刻の画像内の特徴点を中心とする第1の大きさの範囲の横方向微分値及び縦方向微分値と前記第1時刻の画像の前記仮追跡点を中心点とする第3の大きさの範囲内の点を中心点とする前記第1の大きさの範囲の横方向微分値及び縦方向微分値とに基づくエッジ形状の一致度、及び、前記第1時刻の画像内の前記第1の大きさの範囲の中心点におけるコーナー度、の積により算出することを実行し、
    前記第3の大きさの範囲は、前記第2の大きさの範囲よりも小さい
    請求項8に記載の特徴点追跡方法。
  10. コンピュータが、さらに、
    前記第1時刻の画像の横方向微分値を画素値とする横方向エッジ画像を生成し、前記第1時刻の画像の縦方向微分値を画素値とする縦方向エッジ画像を生成し、前記第2時刻の画像の横方向微分値を画素値とする横方向エッジ画像を生成し、前記第2時刻の画像の縦方向微分値を画素値とする縦方向エッジ画像を生成する
    こと実行する請求項8または9に記載の特徴点追跡方法。
JP2013235363A 2013-11-13 2013-11-13 特徴点追跡装置、及び、特徴点追跡方法 Expired - Fee Related JP6260215B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013235363A JP6260215B2 (ja) 2013-11-13 2013-11-13 特徴点追跡装置、及び、特徴点追跡方法
US14/536,936 US9734395B2 (en) 2013-11-13 2014-11-10 Tracking device and tracking method
EP14192634.5A EP2874101A3 (en) 2013-11-13 2014-11-11 Tracking device, tracking method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013235363A JP6260215B2 (ja) 2013-11-13 2013-11-13 特徴点追跡装置、及び、特徴点追跡方法

Publications (2)

Publication Number Publication Date
JP2015095179A JP2015095179A (ja) 2015-05-18
JP6260215B2 true JP6260215B2 (ja) 2018-01-17

Family

ID=52006792

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013235363A Expired - Fee Related JP6260215B2 (ja) 2013-11-13 2013-11-13 特徴点追跡装置、及び、特徴点追跡方法

Country Status (3)

Country Link
US (1) US9734395B2 (ja)
EP (1) EP2874101A3 (ja)
JP (1) JP6260215B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9437009B2 (en) * 2011-06-20 2016-09-06 University Of Southern California Visual tracking in video images in unconstrained environments by exploiting on-the-fly context using supporters and distracters
JP6657622B2 (ja) * 2015-07-07 2020-03-04 株式会社リコー 画像処理装置及び画像処理方法
EP3435330B1 (en) * 2017-07-24 2021-09-29 Aptiv Technologies Limited Vehicule based method of object tracking
CN108399381B (zh) * 2018-02-12 2020-10-30 北京市商汤科技开发有限公司 行人再识别方法、装置、电子设备和存储介质
EP3576007B1 (en) 2018-05-28 2023-09-20 Aptiv Technologies Limited Method for validation of obstacle candidate
CN111127508B (zh) * 2018-10-31 2023-05-02 杭州海康威视数字技术股份有限公司 一种基于视频的目标跟踪方法及装置
KR102060567B1 (ko) * 2019-05-13 2019-12-30 호서대학교 산학협력단 심층신경망을 이용한 선박 주변 객체 인식 방법 및 시스템
KR102407044B1 (ko) * 2021-04-09 2022-06-10 국방과학연구소 객체의 위험 추정 방법 및 장치, 컴퓨터 판독 가능한 기록 매체 및 컴퓨터 프로그램

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3684606B2 (ja) * 1995-03-11 2005-08-17 日産自動車株式会社 パターン認識方法
JP3486613B2 (ja) * 2001-03-06 2004-01-13 キヤノン株式会社 画像処理装置およびその方法並びにプログラム、記憶媒体
TWI258312B (en) * 2001-03-22 2006-07-11 Kuang-Yao Lo Monitoring method for comparing image frames
US7116823B2 (en) * 2002-07-10 2006-10-03 Northrop Grumman Corporation System and method for analyzing a contour of an image by applying a Sobel operator thereto
US20040100563A1 (en) * 2002-11-27 2004-05-27 Sezai Sablak Video tracking system and method
US7382897B2 (en) * 2004-04-27 2008-06-03 Microsoft Corporation Multi-image feature matching using multi-scale oriented patches
US20060182339A1 (en) * 2005-02-17 2006-08-17 Connell Jonathan H Combining multiple cues in a visual object detection system
US7639891B2 (en) * 2005-12-23 2009-12-29 Xerox Corporation Corner sharpening using look-up table edge pixel identification
US7565015B2 (en) * 2005-12-23 2009-07-21 Xerox Corporation Edge pixel identification
US8098889B2 (en) * 2007-01-18 2012-01-17 Siemens Corporation System and method for vehicle detection and tracking
JP2008194239A (ja) * 2007-02-13 2008-08-28 Toshiba Corp 画像処理装置及びその方法
JP2009087238A (ja) 2007-10-02 2009-04-23 Fujitsu Ltd 画像追尾プログラム、装置、及び方法
JP5048609B2 (ja) 2008-08-01 2012-10-17 株式会社豊田中央研究所 対象物追跡装置及びプログラム
JP4964852B2 (ja) * 2008-09-24 2012-07-04 富士フイルム株式会社 画像処理装置、方法及びプログラム
US8462987B2 (en) * 2009-06-23 2013-06-11 Ut-Battelle, Llc Detecting multiple moving objects in crowded environments with coherent motion regions
JP2011170554A (ja) 2010-02-17 2011-09-01 Fuji Electric Co Ltd 物体認識装置、物体認識方法及び物体認識プログラム
WO2012040099A1 (en) * 2010-09-20 2012-03-29 Qualcomm Incorporated An adaptable framework for cloud assisted augmented reality
US8744196B2 (en) * 2010-11-26 2014-06-03 Hewlett-Packard Development Company, L.P. Automatic recognition of images
US8582821B1 (en) * 2011-05-23 2013-11-12 A9.Com, Inc. Tracking objects between images
GB2506338A (en) * 2012-07-30 2014-04-02 Sony Comp Entertainment Europe A method of localisation and mapping

Also Published As

Publication number Publication date
US20150131858A1 (en) 2015-05-14
US9734395B2 (en) 2017-08-15
JP2015095179A (ja) 2015-05-18
EP2874101A3 (en) 2016-01-27
EP2874101A2 (en) 2015-05-20

Similar Documents

Publication Publication Date Title
JP6260215B2 (ja) 特徴点追跡装置、及び、特徴点追跡方法
JP6904346B2 (ja) 画像処理装置、画像処理システム、および画像処理方法、並びにプログラム
US9076221B2 (en) Removing an object from an image
KR101617681B1 (ko) 히스토그램들을 갖는 다중 층 연결 요소들을 사용하는 텍스트 검출
JP5685837B2 (ja) ジェスチャ認識装置、ジェスチャ認識方法およびプログラム
JP5878924B2 (ja) 画像処理装置、撮像装置および画像処理方法
US20100182480A1 (en) Image processing apparatus, image matching method, and computer-readable recording medium
JP2013122763A (ja) 映像処理装置及び映像処理方法
WO2017221644A1 (ja) 画像処理装置、画像処理システム、および画像処理方法、並びにプログラム
CN107085699B (zh) 信息处理设备、信息处理设备的控制方法和存储介质
JP6351350B2 (ja) 三次元モデル検索システム、及び三次元モデル検索方法
EP2692140A2 (en) Real-time depth extraction using stereo correspondence
JP2021521542A (ja) 適応的前景マスクアップサンプリングに基づく一連のカラー画像フレームのオブジェクトセグメンテーション
CN104573085B (zh) 图像检索方法、图像检索装置和终端
WO2017170875A1 (ja) 画像認識装置、及び画像認識プログラム
JP6326622B2 (ja) 人物検出装置
US9792675B1 (en) Object recognition using morphologically-processed images
Kim et al. Pothole detection method in asphalt pavement
US20250095285A1 (en) Generation of a dense point cloud of a physical object
JP2010113562A (ja) 物体検知追跡装置,物体検知追跡方法および物体検知追跡プログラム
US8363941B2 (en) Method and program for extracting silhouette image and method and program for constructing three dimensional model
Jaiswal et al. Creative exploration of scaled product family 3D models using gesture based conceptual computer aided design (C-CAD) tool
Mashtalir et al. Improved segmentation model to identify object instances based on textual prompts
KR101528906B1 (ko) 이미지 처리 방법 및 장치
Dinga An Investigation of the Influences of Training Data Properties on Aerial Image Segmentation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160705

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170511

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170523

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170718

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: 20171114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171127

R150 Certificate of patent or registration of utility model

Ref document number: 6260215

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees