JP2019020839A - 画像処理装置、画像処理方法、及びプログラム - Google Patents
画像処理装置、画像処理方法、及びプログラム Download PDFInfo
- Publication number
- JP2019020839A JP2019020839A JP2017136410A JP2017136410A JP2019020839A JP 2019020839 A JP2019020839 A JP 2019020839A JP 2017136410 A JP2017136410 A JP 2017136410A JP 2017136410 A JP2017136410 A JP 2017136410A JP 2019020839 A JP2019020839 A JP 2019020839A
- Authority
- JP
- Japan
- Prior art keywords
- feature point
- tracking
- image
- tracking destination
- destination feature
- 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.)
- Pending
Links
Images
Landscapes
- Image Analysis (AREA)
- Studio Devices (AREA)
Abstract
【課題】追跡先の特徴点が画像内で偏在した場合に、ベクトル検出精度の低下を抑えつつ、所定の期間内に処理を完了させることを可能にすることを課題とする。【解決手段】第1のRDDMAC(221)は画像を複数の領域に分割する。新規特徴点算出部(202)は、分割された各領域内の特徴点を抽出する。マッチング処理部(203)は、特徴点を基に動きベクトルの値を検出する。追跡先特徴点決定部(205)は、前フレームから得られた動きベクトルの値と特徴点とを基に、次のフレームの動きベクトル検出に用いられる追跡先特徴点を算出する。また、追跡先特徴点決定部(205)は、追跡先特徴点が予め定めた条件に該当する場合に追跡先特徴点の少なくとも一部を破棄し、新規特徴点を追跡先特徴点として補填する。【選択図】図2
Description
本発明は、画像の動きを検出する画像処理装置、画像処理方法、及びプログラムに関する。
デジタルスチルカメラやデジタルビデオカメラ等の撮像装置を用いて撮影された映像に対して手ぶれ補正を施すためには、フレーム画像間の動き量を検出して複数枚の画像に対して位置合わせを行う必要がある。フレーム画像間の動き量を検出する方法としては、ジャイロセンサのような外部機器の情報を用いたり、撮影されたフレーム画像から動き量を推定したりする方法等がある。
フレーム画像を用いた動き量推定の方法は従来から種々提案されているが、その代表的なものとしてテンプレートマッチングによる動きベクトル検出がある。テンプレートマッチングでは、まず映像中の連続した2枚のフレーム画像の一方を原画像、もう一方を参照画像とする。そして、原画像上に配置した所定の大きさの矩形領域をテンプレートブロックとし、参照画像の各位置においてテンプレートブロック内の画素値の分布との相関を求める。このとき、参照画像中で最も相関が高くなる位置がテンプレートブロックの移動先であり、原画像上でのテンプレートブロックの位置を基準とした時の移動先への向きと移動量が動きベクトルとなる。
動きベクトルの検出率を向上させるため、特徴点を抽出し、抽出した特徴点にテンプレートブロックを配置して、フレーム画像間でテンプレートマッチングを行う技術がある。ここで、画像全体で特徴点抽出を行うと、特徴点の分布は不均一になることが多い。分布が不均一な特徴点に対して得られた動きベクトルを手ぶれ補正の用途で使用する場合、特徴点の集中した領域が主となる手ぶれ補正となってしまう。
そこで、特徴点を均一に分布させるため、画像をグリッド状に分割して、特徴の大きさを表す特徴値を画素ごとに計算し、各グリッド内で特徴値が最も大きい画素を特徴点として抽出する技術がある(例えば特許文献1)。
さらに動きベクトルの検出率を向上させるため、特徴点を追跡する技術がある。特徴点追跡は、画像から抽出された特徴点の動きベクトルを、連続する複数のフレーム画像に渡って逐次検出することで実現できる(例えば特許文献2)。
さらに動きベクトルの検出率を向上させるため、特徴点を追跡する技術がある。特徴点追跡は、画像から抽出された特徴点の動きベクトルを、連続する複数のフレーム画像に渡って逐次検出することで実現できる(例えば特許文献2)。
ところで、前述したように特徴点の追跡処理が行われる場合、追跡先の特徴点が、画像内の一部の領域に偏在してしまうことがある。このように追跡先の特徴点が一部の領域に偏在すると、動きベクトル検出性能の低下や、所定の期間内に処理を完了させることができなくなるという問題が生ずることがある。
そこで、本発明は、追跡先の特徴点が画像内で偏在した場合に、ベクトル検出精度の低下を抑えつつ、所定の期間内に処理を完了させることを目的とする。
本発明は、フレームの画像を複数の領域に分割する分割手段と、前記複数に分割された各領域内で画像の特徴点を抽出する抽出手段と、前記特徴点を基に動きベクトルを検出する検出手段と、前フレームから検出された前記動きベクトルの値と特徴点とを基に、次のフレームの動きベクトル検出に用いられる追跡先特徴点を算出する算出手段と、前記追跡先特徴点が予め定めた条件に該当する場合に、前記追跡先特徴点の少なくとも一部を破棄して、前記抽出手段にて抽出された新規特徴点を追跡先特徴点として補填する補填手段と、を有することを特徴とする。
本発明によれば、追跡先の特徴点が画像内で偏在した場合に、ベクトル検出精度の低下を抑えつつ、所定の期間内に処理を完了させることが可能となる。
以下、添付図面を参照して本発明の好適な実施形態について説明する。
<第1の実施形態>
図1は実施形態の画像処理装置の一適用例としてのデジタルカメラの概略構成例を示す図である。なお、本実施形態の画像処理装置は、デジタルカメラの他にも、例えばデジタルビデオカメラ、カメラ機能を備えたスマートフォンやタブレット端末等の各種携帯端末、工業用カメラ、車載カメラ、医療用カメラ等の各種撮像装置にも適用可能である。また、図2は、本実施形態の画像処理装置に係る画像処理部104が有する動きベクトル検出部の概略構成を示した図である。なお、図2にはベクトル検出に関連した他の構成も含まれている。
<第1の実施形態>
図1は実施形態の画像処理装置の一適用例としてのデジタルカメラの概略構成例を示す図である。なお、本実施形態の画像処理装置は、デジタルカメラの他にも、例えばデジタルビデオカメラ、カメラ機能を備えたスマートフォンやタブレット端末等の各種携帯端末、工業用カメラ、車載カメラ、医療用カメラ等の各種撮像装置にも適用可能である。また、図2は、本実施形態の画像処理装置に係る画像処理部104が有する動きベクトル検出部の概略構成を示した図である。なお、図2にはベクトル検出に関連した他の構成も含まれている。
図1において、結像光学部101は、レンズ及び絞りなどを備えており、撮影の際にはフォーカス調節及び露出調節を行い、撮像素子102に光学像を結像させる。撮像素子102は、光学像を電気信号(アナログ画像信号)に変換する光電変換機能を有し、CCDやCMOSセンサ等で構成される。A/D変換部103は、撮像素子102からのアナログ画像信号をデジタル画像データに変換する。
DRAM107は、データを記憶するメモリであり、所定枚数の静止画像や所定時間の動画像、音声等のデータ、CPU112の動作用の定数、プログラム等を記憶するのに十分な記憶容量を備えている。メモリ制御部106は、CPU112或いはデータ転送部105からの指示に応じて、DRAM107へのデータ書き込みやデータ読み出しを行う。
不揮発性メモリ制御部108は、CPU112からの指示に応じて、ROM109へのデータの書き込みや読み出しを行う。ROM109は、電気的に消去・記録可能な不揮発性メモリであり、EEPROM等が用いられる。ROM109には、CPU112の動作用の定数、プログラム等が格納されている。
CPU112は、デジタルカメラ全体の制御を司るマイクロコンピュータ等で構成され、各機能ブロックに対して動作指示を行い、各種の制御処理を実行する。CPU112は、バス114を介して、画像処理部104、データ転送部105、メモリ制御部106、不揮発性メモリ制御部108、表示制御部110、操作部113、撮像素子102等を制御する。また、CPU112は、撮像素子102を制御してA/D変換部103にアナログ信号を読み出す際の設定を、読み出し順序設定としてROM109に記憶する。更にCPU112は、ROM109に記録されている読み出し順序設定を読み込み、その設定に応じて画像処理部104の各種画像処理を制御することができる。CPU112のマイクロコンピュータは、ROM109に記録されたプログラムを実行することにより、本実施形態に係る各処理の制御を実現する。バス114はシステムバスであり、バス115は画像データバスである。
表示部111は、液晶モニタ等から成り、表示制御部110により制御され、各種画像等を表示部111に表示する。操作部113は、ユーザにより操作されるスイッチやボタン等を含み、電源のON/OFF、シャッタのON/OFF等の操作に使用される。
画像処理部104は、各種の画像処理を行う構成及びバッファメモリ等を有して構成されており、各種画像処理には図2に示す動きベクトル検出部にて行われるベクトル検出処理も含まれる。図2に示すベクトル検出部の説明については後述する。データ転送部105は、データ転送を行う複数のDMAC(Direct Memory Access Controller)を有して構成されており、バス115を介して、DRAM107へのデータの書き込みや読み出しを行う。
以下、動きベクトル検出処理の概要について説明する。
動きベクトル検出処理としては、前述したようなテンプレートマッチングを用いた動きベクトル検出処理が知られている。動きベクトル検出処理の際には、ベクトル検出率を向上させるために、前述したように画像をグリッド状に分割して特徴点を抽出する処理、特徴点を追跡する処理等が行われる。
動きベクトル検出処理としては、前述したようなテンプレートマッチングを用いた動きベクトル検出処理が知られている。動きベクトル検出処理の際には、ベクトル検出率を向上させるために、前述したように画像をグリッド状に分割して特徴点を抽出する処理、特徴点を追跡する処理等が行われる。
図3は、ベクトル検出処理の際のグリッド配置と特徴点、テンプレートマッチング領域の関係説明に用いる図である。ベクトル検出処理の際には、フレームの画像が、複数のグリッドに分割される。各グリッドは、予め設定されたサイズの特徴抽出グリッド302及び周辺グリッド301(図3中のドット模様が付されたグリッド)として、水平,垂直方向にそれぞれ設定された個数分配置される。そして、特徴抽出グリッド302毎に、特徴点303が一つ抽出される。周辺グリッド301は、各特徴抽出グリッド302からなる特徴抽出グリッド群の周囲に配置される。周辺グリッド301は、テンプレートマッチングには使用されるが、特徴点の抽出は行われない。テンプレートマッチング処理の際には、特徴点303を中心として、予め決めたサイズの矩形状のサーチ領域305及びテンプレート領域304が設定される。なお、テンプレートマッチング処理の際のサーチ領域305及びテンプレート領域304は、撮像素子102のセンサ出力におけるいわゆるラスタスキャン順に合わせて順に設定される。
図4(a)は、抽出された特徴点を用いた追跡処理の概要説明に用いる図である。図4(a)において、特徴点追跡処理の際には、先ず、現フレームの画像に対し、前述した特徴抽出グリッド1010及び周辺グリッド1011が設定される。そして、特徴抽出グリッド1010内で特徴点1001が抽出され、さらにサーチ領域1005とテンプレート領域1003が設定されてテンプレートマッチングが行われることにより、動きベクトルのベクトル値1004が算出される。次のフレームの処理では、前フレームで算出されたベクトル値1004を特徴点1001に加算することで、追跡先となる特徴点(追跡先特徴点1002とする。)が算出され、その追跡先特徴点1002を中心にテンプレートマッチングが実施される。以後、複数のフレームにわたって順番に前述同様の処理が行われ、各フレームで順に算出された追跡先特徴点に対してベクトル値が順に加算されることにより、特徴点の追跡が実現される。
図5(a)は、撮像素子102の画像出力(以下、センサ出力とする。)からテンプレートマッチング処理の終了までのタイミングチャートを示す図である。また、図5(b)は、図4(a)と同様の特徴抽出グリッド1010、周辺グリッド1011、サーチ領域1005、テンプレート領域1003、追跡先特徴点1002を表した図である。図5(b)には、いわゆるラスタスキャン1020を表す矢印と、テンプレートマッチング処理を開始できる最初(一番初め)のテンプレート位置1101も示されている。図5(a)において、撮像素子102の画像出力(センサ出力)は1フレームの垂直同期信号VDのパルス間隔の周期内(フレーム周期)で行われ、そのセンサ出力の画像データを基にテンプレートマッチング用画像が生成される。テンプレートマッチング用画像の生成は、ラスタスキャン順のセンサ出力に合わせて開始され、画像生成処理に要する時間分だけ遅延したタイミングで完了する。テンプレートマッチング処理はテンプレートマッチング用画像を用いて行われ、図5(a)中の期間T1〜T8の各期間は、それぞれが追跡先特徴点に対応したテンプレートマッチングの処理に要する時間を表している。なお、テンプレートマッチング処理に要する時間は、テンプレート領域のサイズに応じて増減する。
図5(b)の例では、特徴抽出グリッド1010として8個のみを図示し、それら各特徴抽出グリッド1010にそれぞれ1個の追跡先特徴点1002が得られている。このため、図5(a)には、それら8個の追跡先特徴点1002のそれぞれに対するテンプレートマッチング処理に要する時間として、8個の期間T1〜T8が表されている。また、1フレームの期間におけるテンプレートマッチング処理は、図5(b)に示すように、ラスタスキャン順で最初(一番目)となる追跡先特徴点1002に対して設定されたテンプレート位置1101から開始される。そして、テンプレートマッチング処理は、8個の追跡先特徴点1002にそれぞれ対応した各期間T1〜T8の全ての処理が終了した時点で完了する。
ところで、前述のような特徴点追跡処理が行われた場合、複数の追跡先特徴点が、フレームの画像範囲内の例えば一部の領域に偏在してしまうようになることがある。図4(b)は、追跡先特徴点がフレームの画像範囲内の下部領域に集中するように偏在した例を示している。図4(b)に示すように、追跡先特徴点がフレームの画像範囲内の下部領域に集中するように偏在する状態は、例えばデジタルカメラの撮影時にカメラがチルティングされた場合などに生ずることが多い。なお、図4(b)には、図4(a)と同様の特徴抽出グリッド1010、周辺グリッド1011、サーチ領域1005、テンプレート領域1003、追跡先特徴点1002も示している。
図6(a)は、図5(a)と同様、センサ出力からテンプレートマッチング処理の終了までのタイミングチャートを示した図であり、図4(b)のように下部領域に多数の追跡先特徴点が集中した場合の処理タイミングを表している。図6(b)は、前述の図5(b)と同様の特徴抽出グリッド1010、周辺グリッド1011、サーチ領域1005、テンプレート領域1003、追跡先特徴点1002を表した図である。また、図6(b)には、図5(b)と同様に、ラスタスキャン1020を表す矢印と、テンプレートマッチング処理を開始できる最初(一番初め)のテンプレート位置1201も示されている。図6(b)の例では、8個の追跡先特徴点1002が、フレームの画像範囲内の下部領域に集中するように偏在している。そして、図6(a)の8個の期間T1〜T8は、図6(b)の8個の追跡先特徴点1002のそれぞれに対するテンプレートマッチング処理に要する時間を表している。
テンプレートマッチング処理は、前述のようにセンサ出力のラスタスキャン順に合わせて行われるため、フレームの画像範囲内の下部領域は、ラスタスキャン順では終盤に処理が行われる領域となる。図4(b)や図6(b)のように下部領域に多数の追跡先特徴点が集中した場合、図6(a)に示すように、垂直同期信号VDのパルス間隔の期間内に、期間T1〜T8の全てのテンプレートマッチング処理を完了できなくなることがある。つまり、下部領域に追跡先特徴点が集中した場合、図6(b)に示すように、テンプレートマッチング処理が開始される最初のテンプレート位置1201は、ラスタスキャン順の終盤に相当する位置になる。そして、ラスタスキャン順の終盤に相当するテンプレート位置1201からテンプレートマッチング処理が始まると、図6(a)に示すように、期間T1〜T8の処理の開始までの期間1200が長くなる。このため、期間T1〜T8の処理が完了する前に、垂直同期信号VDの次のパルスが来てしまって処理を完了できなくなることがある。
ここで、本実施形態のデジタルカメラのように、撮影時の手ぶれ補正に動きベクトルを用いる場合、1フレーム期間内にテンプレートマッチング処理を完了させて動きベクトルを検出し、その動きベクトルを次のフレームの処理にフィードバックする必要がある。
前述した図5(a)及び図5(b)の例の場合、1フレーム分の周期内で期間T1〜T8の全ての処理が終了し、テンプレートマッチング処理が完了している。このため、動きベクトルを次のフレームの処理にフィードバックでき、その結果、デジタルカメラの撮影時の手ぶれ補正も正しく行える。
これに対し、図6(a)及び図6(b)の例のように、1フレームの期間内でテンプレートマッチング処理を完了できない場合、正しい動きベクトルを次のフレームの処理にフィードバックすることができなくなる。この場合、ベクトル検出性能が低下し、その結果、デジタルカメラ等の撮影時の手ぶれ補正性能も低下してしまうことになる。
前述した図5(a)及び図5(b)の例の場合、1フレーム分の周期内で期間T1〜T8の全ての処理が終了し、テンプレートマッチング処理が完了している。このため、動きベクトルを次のフレームの処理にフィードバックでき、その結果、デジタルカメラの撮影時の手ぶれ補正も正しく行える。
これに対し、図6(a)及び図6(b)の例のように、1フレームの期間内でテンプレートマッチング処理を完了できない場合、正しい動きベクトルを次のフレームの処理にフィードバックすることができなくなる。この場合、ベクトル検出性能が低下し、その結果、デジタルカメラ等の撮影時の手ぶれ補正性能も低下してしまうことになる。
そこで、第1の実施形態に係るベクトル検出部では、フレームの画像範囲内で追跡先特徴点が偏在する場合、所定領域内の追跡先特徴点の数に応じた追跡先特徴点の破棄補填処理を行うことにより、1フレーム期間などの所定期間内に処理を完了させるようにする。
図7は、本実施形態に係る図2に示したベクトル検出部及び関連した構成における処理の流れを示すフローチャートである。なお、図7のフローチャートの処理は、ソフトウェア構成のみ、或いはハードウェア構成のみにより実行されてもよいし、一部がソフトウェア構成で残りがハードウェア構成により実現されてもよい。ソフトウェア構成により処理が実行される場合、図7のフローチャートの処理は、例えばROM109に記憶されているプログラムをCPU112が実行することにより実現されてもよい。本実施形態に係るプログラムは、ROM109に予め用意されていてもよく、また着脱可能な半導体メモリ等から読み出されたり、不図示のインターネット等のネットワークからダウンロードされたりしてもよい。また以下の説明では、図7の各処理のステップS401〜ステップS409をS401〜S409と略記する。これらのことは後述する他のフローチャートにおいても同様とする。
以下、図7のフローチャートを参照しながら、図2に示したベクトル検出部及び関連した構成により行われる処理の概要を説明する。
先ず、S401の処理として、図1のデータ転送部105が具備している第1のRDDMAC221は、バス115を介して、DRAM107からベクトル検出処理の対象となる現フレームの画像データ241を読み出す。なお、以下の説明では、データ転送部105から転送されるデータがバス115を介することの記載は省略する。このとき読み出されるデータは前述したグリッド単位のデータとなされ、図3に示した特徴抽出グリッド302や周辺グリッド301毎にデータの読み出しが行われる。なお、画像データ241には、画像処理部104による他の各種画像処理が実施されているとする。第1のRDDMAC221によりグリッド単位で読み出された画像データ241は、マッチング用画像生成部201及び新規特徴点算出部202に送られる。また、第1のRDDMAC221は、読み出したグリッドの座標位置を示すグリッド座標情報252を、後述する追跡先特徴点決定部205に出力する。S401の後、ベクトル検出部の処理は、S402に遷移する。
先ず、S401の処理として、図1のデータ転送部105が具備している第1のRDDMAC221は、バス115を介して、DRAM107からベクトル検出処理の対象となる現フレームの画像データ241を読み出す。なお、以下の説明では、データ転送部105から転送されるデータがバス115を介することの記載は省略する。このとき読み出されるデータは前述したグリッド単位のデータとなされ、図3に示した特徴抽出グリッド302や周辺グリッド301毎にデータの読み出しが行われる。なお、画像データ241には、画像処理部104による他の各種画像処理が実施されているとする。第1のRDDMAC221によりグリッド単位で読み出された画像データ241は、マッチング用画像生成部201及び新規特徴点算出部202に送られる。また、第1のRDDMAC221は、読み出したグリッドの座標位置を示すグリッド座標情報252を、後述する追跡先特徴点決定部205に出力する。S401の後、ベクトル検出部の処理は、S402に遷移する。
S402の処理として、マッチング用画像生成部201は、第1のRDDMAC221によりグリッド単位で読み出された画像データ241から、ベクトル検出時のテンプレートマッチングに使用するテンプレートマッチング用画像を生成する。マッチング用画像生成部201は、例えばバンドパスフィルタ回路を有し、画像データ241から、テンプレートマッチング処理に不要な画像信号の高周波成分と低周波成分とをカットする。そして、マッチング用画像生成部201は、現フレームについて生成したテンプレートマッチング用画像を、データ転送部105が具備するWRDMAC231に出力する。S402の後、ベクトル検出部の処理は、S403に遷移する。
S403の処理として、WRDMAC231は、現フレームで生成されたテンプレートマッチング用画像データ242を、DRAM107に対して書き込む処理を行う。なお、このときのDRAM107には、前フレームで生成されたテンプレートマッチング用画像データ243も格納されているとする。S403の後、ベクトル検出部の処理は、S405に遷移する。
また、前述したS402、S403の処理と並列に、S404の処理として、新規特徴点算出部202は、現フレームの画像から特徴抽出グリッド毎に新規特徴点を算出する。新規特徴点とは、前述した動きベクトル値の加算により算出される追跡先特徴点とは異なり、現フレームの画像から特徴抽出グリッド毎に一つずつ新規に抽出される特徴点である。S404の後、ベクトル検出部の処理は、S405に遷移する。
図8は、新規特徴点算出部202の概略的な構成例を示すブロック図である。新規特徴点算出部202は、特徴フィルタ部501、特徴評価部502、特徴点決定部503を有する。
図8は、新規特徴点算出部202の概略的な構成例を示すブロック図である。新規特徴点算出部202は、特徴フィルタ部501、特徴評価部502、特徴点決定部503を有する。
特徴フィルタ部501は、バンドパスフィルタ、水平微分フィルタ、垂直微分フィルタ、平滑化フィルタなど、複数のフィルタを有して構成される。特徴フィルタ部501は、バンドパスフィルタにより画像データ241から不要な高周波成分と低周波成分をカットし、さらに、そのバンドパスフィルタ処理後の画像データに対し、水平方向の微分フィルタ処理と、垂直方向の微分フィルタ処理とを施す。そして、特徴フィルタ部501は、水平方向の微分フィルタ処理を施した画像データと、垂直方向の微分フィルタ処理を施した画像データとの、各々に対して平滑化フィルタ処理を施し、特徴評価部502に出力する。
特徴評価部502は、特徴フィルタ部501によるフィルタ処理後のグリッド単位の画像データから特徴値を算出する。具体的には、特徴評価部502は、画素ごとに、所定の特徴評価式を用いた演算を行い、二つのエッジの交点や曲率が極大である曲線状の点など、画素の周辺の微分値が多方向に大きい点を、特徴点として算出する。
以下、例えばいわゆるShi and Tomasiの手法を例に挙げて、本実施形態の特徴評価部502における特徴値の算出例について説明する。
特徴評価部502は、先ず、前述した水平方向の微分フィルタ処理が施されたデータと垂直方向の微分フィルタ処理が施されたデータとを用い、式(1)に示す演算式により、自己相関行列Hを作成する。式(1)は、Ixが水平方向の微分フィルタ処理を施した結果を表し、Iyが垂直方向の微分フィルタを施した結果を表しており、ガウシアンフィルタGを畳み込む演算式となされている。
特徴評価部502は、先ず、前述した水平方向の微分フィルタ処理が施されたデータと垂直方向の微分フィルタ処理が施されたデータとを用い、式(1)に示す演算式により、自己相関行列Hを作成する。式(1)は、Ixが水平方向の微分フィルタ処理を施した結果を表し、Iyが垂直方向の微分フィルタを施した結果を表しており、ガウシアンフィルタGを畳み込む演算式となされている。
そして、特徴評価部502は、式(2)に示すShi and Tomasiの特徴評価式を用いて特徴値を算出する。式(2)は、式(1)の自己相関行列Hの固有値(λ1,λ2)のうち、小さい方の固有値を特徴値とすることを表している。
Shi and Tomasi=min(λ1,λ2) 式(2)
このようにして特徴評価部502にて画素ごとに算出された特徴値は、特徴点決定部503に送られる。
Shi and Tomasi=min(λ1,λ2) 式(2)
このようにして特徴評価部502にて画素ごとに算出された特徴値は、特徴点決定部503に送られる。
特徴点決定部503は、特徴評価部502にてグリッド内の各画素について算出された特徴値の中で最も大きい値を持つ画素を、そのグリッド内の特徴点として新規に決定する。本実施形態の場合、特徴点の情報は、グリッドの左上端を座標(0,0)とした相対座標(PX,PY)が用いられる。なお、特徴点の座標は、フレーム画像における座標により表現されてもよい。そして、特徴点決定部503により新規に決定された特徴点座標情報は、新規特徴点算出部202が具備している内部メモリに格納される。この内部メモリは、前フレームから取得された各特徴点座標情報と現フレームから取得された各特徴点座標情報とを格納できるだけの容量を有している。
新規特徴点算出部202は、マッチング処理部203にて対応するグリッドのテンプレートマッチング処理が開始される際に、前フレームと現フレームとで夫々算出した特徴点座標情報251を、内部メモリから読み出して追跡先特徴点決定部205に出力する。
追跡先特徴点決定部205は、その追跡先特徴点座標情報257を、データ転送部105が具備している第2のRDDMAC222に出力する。
追跡先特徴点決定部205は、その追跡先特徴点座標情報257を、データ転送部105が具備している第2のRDDMAC222に出力する。
図7のフローチャートと図2に説明を戻す。
S405の処理として、第2のRDDMAC222は、DRAM107内のテンプレートマッチング用画像データ242及び243から、追跡先特徴点座標情報257を中心とし、それぞれ予め設定されたサイズの矩形領域のデータを読み出す。すなわち、現フレームで生成されたテンプレートマッチング用画像データ242からは、図3のサーチ領域305のデータが、一方、前フレームで生成されたテンプレートマッチング用画像データ243からは、テンプレート領域304のデータが読み出される。そして、それら読み出されたサーチ領域画像データ253とテンプレート領域画像データ254は、マッチング処理部203へ送られる。ただし、最初のテンプレートマッチング処理では、前フレームから追跡先特徴点座標を算出することができないため、全て現フレームで算出された新規特徴点座標を用いた処理が実施される。S405の後、ベクトル検出部の処理は、S406に遷移する。
S405の処理として、第2のRDDMAC222は、DRAM107内のテンプレートマッチング用画像データ242及び243から、追跡先特徴点座標情報257を中心とし、それぞれ予め設定されたサイズの矩形領域のデータを読み出す。すなわち、現フレームで生成されたテンプレートマッチング用画像データ242からは、図3のサーチ領域305のデータが、一方、前フレームで生成されたテンプレートマッチング用画像データ243からは、テンプレート領域304のデータが読み出される。そして、それら読み出されたサーチ領域画像データ253とテンプレート領域画像データ254は、マッチング処理部203へ送られる。ただし、最初のテンプレートマッチング処理では、前フレームから追跡先特徴点座標を算出することができないため、全て現フレームで算出された新規特徴点座標を用いた処理が実施される。S405の後、ベクトル検出部の処理は、S406に遷移する。
S406の処理として、マッチング処理部203は、入力されたサーチ領域画像データ253、テンプレート領域画像データ254を用いて、相関値を算出し、その相関値を基にベクトル値を算出する。S406の後、ベクトル検出部の処理は、S407に遷移する。
式(3)において、f(i,j)はテンプレート領域画像データ254における座標(i,j)の画素値を表しており、g(i,j)はサーチ領域画像データ253において相関値算出の対象領域(以下、相関値算出領域とする。)内の各画素値を表している。相関値算出領域は、テンプレート領域画像データ254における領域と同じ大きさである。そして、マッチング処理部203は、それら領域の各画素値f(i,j)及びg(i,j)について差の絶対値を計算し、それらの総和を求めることで相関値S_SADを算出する。ここで、相関値S_SADの値が小さいほど両領域間の輝度値の差分が小さい、つまりテンプレート領域画像データ254と相関値算出領域内のテクスチャとが類似していることになる。なお、本実施形態では、相関値の一例としてSADを使用しているが、これに限るものではなく、例えば、差分二乗和(SSD)や正規化相互相関(NCC)等の他の相関値が用いられてもよい。
そして、マッチング処理部203は、相関値の最小値の位置を、グリッドの動きベクトル値として求める。マッチング処理部203は、前述のようにして算出したベクトル値及び相関値情報255を、精度判定部204に出力する。
S407の処理として、精度判定部204は、S406の処理で算出されたベクトル値及び相関値情報255のうち、相関値を用いて、相関値の最大値、最小値、平均値、極小値を求める。そして、精度判定部204は、それら相関値の最大値、最小値、平均値、極小値を用いて、以下に説明するような低コントラスト判定、画素値の最大値突出判定、繰り返しパターン判定の処理を行う。S407の後、ベクトル検出部の処理は、S408に遷移する。
図9(a)〜図9(d)は、相関値の最大値、最小値、平均値、極小値と、それらを用いた判定例との関係説明に用いるグラフである。ただし、本実施形態の場合、相関値が小さいほど類似度が高いことになるため、図9(a)〜図9(d)において、画素値の最大値は相関値では最小値、画素値の最小値は相関値では最大値、画素値の極大値は相関値では極小値を表す。
図9(a)は、それぞれの判定結果が良好な結果となる例を示している。
図9(a)は、それぞれの判定結果が良好な結果となる例を示している。
図9(b)は、低コントラスト判定において低コントラストと判定される例を示している。低コントラスト判定とは、相関値算出領域内が低コントラストであるか否かを判定する処理である。本実施形態における低コントラスト判定では、相関値算出領域内の相関値の最大値と最小値との差分が、予め設定されている所定の閾値よりも小さい場合に、相関値算出領域内は低コントラストであると判定される。図9(b)の場合、図9(a)と比べて、画素値の最大値と最小値との差が少なく、相関値算出領域内の相関値の最大値と最小値の差分も所定の閾値より小さいとする。したがって、図9(b)の場合、精度判定部204は、相関値算出領域内の相関値の最大値と最小値の差分が所定の閾値よりも小さいため、相関値算出領域内は低コントラストであると判定する。
図9(c)は、画素値の最大値突出判定において低ピークと判定される例を示している。画素値の最大値突出判定とは、相関値算出領域内の相関値の最小値がどれだけ際立っているかを判定する処理である。本実施形態における画素値の最大値突出判定では、画素値の最大値と平均値との差分と、画素値の最大値と最小値との差分との除算結果の値が、予め設定されている所定の閾値よりも小さい場合に、相関値算出領域内は低ピークであると判定される。一方、除算結果の値が所定の閾値よりも大きい場合、相関値算出領域内は高ピークであると判定される。図9(c)の場合、図9(a)と比べて、画素値の最大値と平均値との差分と、画素値の最大値と最小値との差分との除算結果の値が小さく、閾値よりも小さいとする。したがって、図9(c)の場合、精度判定部204は、除算結果の値が所定の閾値より小さいため、相関値算出領域内は低ピークであると判定する。
図9(d)は、繰り返しパターン判定で繰り返しパターンと判定される例を示している。繰り返しパターン判定とは、画素値が繰り返し変動しているか否かを判定する処理である。本実施形態における繰り返しパターン判定では、相関値算出領域内の画素値の最大値と極大値との差分が、予め設定されている所定の閾値よりも小さい場合に、繰り返しパターンであると判定される。図9(d)の場合、図9(a)と比べて、画素値の最大値と極大値との差分が小さく、所定の閾値よりも小さいとする。したがって、図9(d)の場合、精度判定部204は、相関値算出領域内の画素値の最大値と極大値との差分が所定の閾値より小さいため、繰り返しパターンであると判定する。
図7のフローチャートと図2に説明を戻す。
S408の処理として、精度判定部204は、前述した低コントラスト、低ピーク、繰り返しパターンの各判定情報及びベクトル情報256を、SRAM206に書き込む。これにより、SRAM206の格納領域244にはそれら各情報が格納される。S408の後、ベクトル検出部の処理は、S409に遷移する。
S408の処理として、精度判定部204は、前述した低コントラスト、低ピーク、繰り返しパターンの各判定情報及びベクトル情報256を、SRAM206に書き込む。これにより、SRAM206の格納領域244にはそれら各情報が格納される。S408の後、ベクトル検出部の処理は、S409に遷移する。
S409の処理として、追跡先特徴点決定部205は、次フレームのテンプレートマッチング処理に用いるための追跡先特徴点の算出を行う。
ここで、図10は、図2の追跡先特徴点決定部205の概略構成例を示すブロック図である。図10に示すように、追跡先特徴点決定部205は、カウント部701、カウント数比較部702、新規特徴点補填部703を有する。なお、図10には、追跡先特徴点決定部205における追跡先特徴点決定処理に関連した他の構成(新規特徴点算出部202、SRAM206、第2のRDDMAC222)も示されている。また、図11は、追跡先特徴点決定部205が処理する追跡先特徴点と新規特徴点の位置関係を示す図である。さらに、図12は、本実施形態に係る追跡先特徴点決定部205の処理のフローチャートである。図13は、本実施形態の画像処理装置における処理タイミングチャートを示す図である。
ここで、図10は、図2の追跡先特徴点決定部205の概略構成例を示すブロック図である。図10に示すように、追跡先特徴点決定部205は、カウント部701、カウント数比較部702、新規特徴点補填部703を有する。なお、図10には、追跡先特徴点決定部205における追跡先特徴点決定処理に関連した他の構成(新規特徴点算出部202、SRAM206、第2のRDDMAC222)も示されている。また、図11は、追跡先特徴点決定部205が処理する追跡先特徴点と新規特徴点の位置関係を示す図である。さらに、図12は、本実施形態に係る追跡先特徴点決定部205の処理のフローチャートである。図13は、本実施形態の画像処理装置における処理タイミングチャートを示す図である。
以下、図10〜図13を参照しながら、追跡先特徴点決定部205における追跡先特徴点決定処理の概要を説明する。なお、図11のグリッド配置では、特徴抽出グリッドの個数が25となる例が示されている。したがって、新規特徴点算出部202では、グリッド数と同数の25個の新規特徴点座標と、それら各座標における特徴値とが算出される。同様にテンプレートマッチング処理では、各追跡先特徴点座標を中心として、グリッド数と同数の25個のベクトル値が算出されるとする。また、図11において、各特徴点901,902,903はそれぞれ追跡先特徴点を表しており、各特徴点901は後述するように追跡先特徴点として補填される新規特徴点を、各特徴点903は後述するように破棄される追跡先特徴点を表しているとする。
先ず、図12のS901の処理として、追跡先特徴点決定部205は、SRAM206からベクトル値及び前述の判定情報258を取得する。追跡先特徴点決定部205は、取得したベクトル値を用いて現フレームの追跡先特徴点を算出し、更にその追跡先特徴点座標を中心としてテンプレートマッチング処理を行い算出したベクトル値を加算して、次フレームの追跡先特徴点の座標を算出する。図11に示したグリッド配置の例の場合、合計25個の追跡先特徴点座標が算出される。S901の後、追跡先特徴点決定部205の処理はS902に遷移する。
次に、S902の処理として、追跡先特徴点決定部205は、SRAM206から取得した前述の判定情報を基に、S901で算出された追跡先特徴点が、次フレームのテンプレートマッチング処理に使用可能な有効な追跡先特徴点であるか否かを判定する。追跡先特徴点決定部205は、低コントラスト判定で低コントラストと判定、又は、画素値の最大値突出判定で低ピークと判定、又は、繰り返しパターン判定で繰り返しパターンと判定されている場合、追跡先特徴点は有効でないと判定(NG判定)する。一方、追跡先特徴点決定部205は、低コントラスト、低ピーク、繰り返しパターンの何れでもない場合には、追跡先特徴点は有効であると判定(OK判定)する。そして、追跡先特徴点決定部205は、S902において、NG判定とした場合(NO)にはS904に処理を進め、一方、OK判定とした場合(YES)にはS903に処理を進める。
S903の処理として、追跡先特徴点決定部205は、S901で算出された追跡先特徴点座標が、フレームの画像範囲内(画角内)であるか否か判定する。具体的には、追跡先特徴点決定部205は、追跡先特徴点座標を中心とするテンプレート領域が周辺グリッドの内側に収まっている場合にはOK判定とし、周辺グリッドの内側に収まっていない場合にはNG判定とする。そして、追跡先特徴点決定部205は、S903において、NG判定とした場合(NO)にはS904に処理を進め、一方、OK判定とした場合(YES)にはS905に処理を進める。
S904に進むと、追跡先特徴点決定部205は、S902又はS903でNG判定された座標位置に該当する追跡先特徴点座標を削除する。そして、追跡先特徴点決定部205は、削除された追跡先特徴点座標を、現フレームにおいて一番初めに新規特徴点が算出された位置の特徴点抽出グリッドの該当位置で算出された新規特徴点座標により置き換える処理を行う。S904の後、追跡先特徴点決定部205の処理は、ステップS905に遷移する。
S905に進むと、追跡先特徴点決定部205は、特徴抽出グリッド数分の全ての追跡先特徴点座標が算出されたか否か判定する。S905において、追跡先特徴点決定部205は、全ての追跡先特徴点座標が算出されたと判定(YES)した場合にはS906に処理を進める。一方、追跡先特徴点決定部205は、S905において、全ての追跡先特徴点座標が算出されていないと判定(NO)した場合にはS901に処理を戻して前述の処理を行う。S901からS905までの処理は、S905において全ての追跡先特徴点座標が算出されたと判定(YES)されるまで反復される。図11の例の場合、25個の追跡先特徴点座標の算出処理が行われるため、S901から905までの処理は25回反復されることになる。
次に、S906に進むと、追跡先特徴点決定部205が具備するカウント部701は、所定の領域区分内に追跡先特徴点座標が何個あるかを計数する。本実施形態の場合、図11の各特徴抽出グリッド群が、図中の破線957よりも下側の領域区分と、図中の破線954よりも上側の領域区分とに区分けされる。そして、カウント部701は、所定の領域区分として、破線957より下側の領域区分(以下、計数領域区分とする。)内にある追跡先特徴点座標の数をカウントする。すなわち、破線957より下側の計数領域区分は、ラスタスキャン順で終盤に処理が行われる領域であり、この領域内に多数の追跡先特徴点が集中した場合、1フレーム期間内にテンプレートマッチング処理を完了できなくなる可能性のある領域である。図11の例の場合、計数領域区分の追跡先特徴点座標数は、合計17個となっている。後述するように、これら17個の追跡先特徴点は、後に破棄対象となる追跡先特徴点903と、破棄対象ではない追跡先特徴点902とに分けられる。なお、図11中の破線954より上側の領域区分の詳細については後述する。
図13のタイミングチャートを用いて、追跡先特徴点決定部205における処理の詳細を説明する。図13の時刻1953〜1959は、図11の各々破線953〜959で示される各領域がDRAM107上に順に生成されるタイミングを表している。
ここで、一つのテンプレート領域に対してテンプレートマッチング処理を実施するために必要な時間は、テンプレート領域のサイズにより一意に決まる。図13内の期間920内の各区切りで表される各期間は、それぞれが個々のテンプレートマッチング処理に要する処理期間を表している。前述した図11の例の場合、破線957より下側の計数領域区分にある追跡先特徴点座標数は合計17個であり、このためテンプレート領域としては17個が設定される。しがたって、図13の期間920の各区切りの数(処理期間数)は、それら17個のテンプレート領域に対するテンプレートマッチング処理数に相当する17個となっている。
一方で、1フレーム分の全テンプレートマッチング処理は、垂直同期信号VDのパルス間隔の周期内(1フレーム期間内)、つまり次のフレームの処理が開始される前に完了させなければならない。図13のタイミング例の場合、次のフレームの処理が開始される前に処理を終了できるのは、期間920内の12処理期間分までとなる。すなわち、図13のタイミング例の場合、図11の破線957より下側の計数領域区分内の追跡先特徴点座標数が12個までであるならば次のフレームの処理開始前にテンプレートマッチング処理を完了することができる。しかしながら、図11の例の場合、追跡先特徴点座標数が17個であるため、図13の期間921に示すように、13個目以降の5個分の処理期間に相当するテンプレートマッチング処理については、次のフレームの処理開始前に完了させることができない。
このため、本実施形態において、追跡先特徴点決定部205のカウント数比較部702は、S907の処理として、S906でカウントされた追跡先特徴点座標数(前述した計数領域区分内の追跡先特徴点座標数)が所定の設定数以下か否かを判定する。図11及び図13の例では、次フレームの処理開始前に処理可能な追跡先特徴点座標数は12個であるため、所定の設定数としては12が用いられる。そして、S907において、カウント数比較部702により追跡先特徴点座標数が設定数以下(12以下)であると判定(NO)された場合、追跡先特徴点決定部205は、図12のフローチャートの処理を終了する。一方、S907において、カウント数比較部702により追跡先特徴点座標数が設定数を超える(13以上)と判定(YES)された場合、追跡先特徴点決定部205の処理は、S908に遷移する。なお、図11及び図13の例の場合、追跡先特徴点座標数は17であり、設定数の12を超えるため、追跡先特徴点決定部205の処理はS908に進むことになる。
S908に進むと、追跡先特徴点決定部205の新規特徴点補填部703は、追跡先特徴点の破棄と新規特徴点の補填とを行う破棄補填処理を実施する。図11及び図13の例の場合、新規特徴点補填部703は、計数領域区分内の各追跡先特徴点の中から、所定の設定数(12個)を越える個数(5個)の追跡先特徴点(追跡先特徴点903)を選定して破棄する。そして、新規特徴点補填部703は、新規特徴点算出部202にて算出された新規特徴点を、指定された領域に追跡先特徴点として補填する。図11の例の場合、新規特徴点補填部703は、図11中の破線954より上側である領域区分(以下、補填領域区分とする。)に、破棄された数に対応した5個の新規特徴点901を補填する。破線954より上側の補填領域区分は、ラスタスキャン順で初期に処理が行われる領域であり、この領域区分内に新規特徴点を補填したとしても、1フレーム期間内にテンプレートマッチング処理を完了できなくなることは無いと考えられる領域である。
このような破棄補填処理により追跡先特徴点として補填された5個の新規特徴点901の各特徴点座標に対するテンプレートマッチング処理に要する処理期間は、図13中の期間930で表すことができる。すなわち、前述した期間920の17処理期間分の処理は、1フレーム期間の前半部にて行われる5処理期間分の期間930と、1フレーム期間の後半部にて行われる残りの12処理期間分の期間931とに分散されることになる。したがって、本実施形態において、合計17個分の追跡先特徴点座標数に相当するテンプレート処理は、次のフレームの処理が開始される前に完了することになる。
なお、図11中の破線957より下側の計数領域区分内の各追跡先特徴点のなかで、何れの追跡先特徴点を破棄対象にするか決定する場合、例えば、各追跡先特徴点の有する特徴値の小さいものから順に破棄対象として選定する手法を用いることができる。また、補填対象となる特徴点を決定する際には、例えば、図11中の破線954より上側の補填領域区分にある新規特徴点のなかで、特徴値の大きいものから順に補填対象として選定するような手法を用いることができる。
以上が、第1の実施形態におけるベクトル検出処理の流れである。本実施形態では、1フレーム分の処理を例に挙げて説明したが、前述した1フレーム分の処理は毎フレームに対して同様に行われ、毎フレームでベクトル値が算出される。
また、本実施形態において、前述した特徴点座標数をカウントする際の対象領域(計数領域区分)や前述の設定数は、画像処理装置の処理能力に応じて決めることができる。例えば、画像処理装置におけるテンプレートマッチング用画像の生成処理速度やテンプレートマッチングの処理速度を基に、画像処理装置が一定処理期間内に処理を完了できるように、計数領域区分や設定数を決めることができる。
また本実施形態では、図11中の破線957より下側の計数領域区分において追跡先特徴点座標数をカウントして、1フレーム期間内に処理が完了するか否かを判定していたが、この例には限定されるものではない。例えば、追跡先特徴点決定部205は、図11の破線955から破線956まで、破線956から破線957まで、破線957から破線958までの3領域区分内の追跡先特徴点数をカウントして、それら領域区分ごとに設定数と比較してもよい。そして、追跡先特徴点決定部205は、それらカウントした各領域区間の追跡先特徴点数が設定数より大きい場合に、前述同様に追跡先特徴点の破棄補填処理を行うようにする。また、追跡先特徴点決定部205は、領域区分の数を増やして領域を細かく区分けして、1フレーム期間内におけるテンプレートマッチング処理をフレームの画像範囲内(画角内)で、より均一に分散させることようにしてもよい。これにより、より多くのテンプレートマッチング数や、より大きいテンプレートサイズでの処理が行われる場合であっても、1フレーム期間内に処理が完了させることが可能となる。
また本実施形態では、撮像素子102の読み出し順がラスタスキャン順である場合を例に挙げたため、特徴点座標数をカウントする計数領域区分がフレームの画像範囲(画角)の下側の領域区分となされたが、これには限定されない。例えば撮像素子102の読み出し順が左側から垂直方向に順に走査される場合、特徴点座標数をカウントする計数領域区分は、フレームの画像範囲内の右側の領域区分となされてもよい。同様に、撮像素子102の読み出し順が左側から垂直方向に順に走査される場合、新規特徴点を追跡先特徴点として補填する補填領域区分は、フレームの画像範囲内の左側の領域区分となされてもよい。すなわち、本実施形態においては、追跡先特徴点の破棄補填の際、動きベクトルの検出に使用される画像の生成が先に行われる領域区分が、補填領域区分として設定される。一方、本実施形態においては、追跡先特徴点の破棄補填の際、動きベクトルの検出で使用される画像の生成が補填領域区分よりも後に行われる領域区分が、計数領域区分として設定される。
第1の実施形態の画像処理装置は、特徴点追跡を行うベクトル検出において、フレームの画像範囲内で追跡先特徴点が偏在した場合、所定領域内の追跡先特徴点数をカウントして破棄補填処理を行うことにより、所定期間内に処理を完了させることができる。したがって、第1の実施形態の画像処理装置によれば、追跡先特徴点がフレームの画像範囲内で偏在した場合でも、ベクトル検出性能の低下を防止しつつ、ベクトル検出を高速化し、所定期間内に処理を完了させることが可能となる。
<第2の実施形態>
以下、第2の実施形態について説明する。
第2の実施形態の画像処理装置が適用されるデジタルカメラの構成は、図1に示した第1の実施形態のデジタルカメラと同様であるため、その図示と説明は省略する。
第2の実施形態の画像処理装置は、抽出された特徴点を基に追跡する範囲を設定し、その設定された範囲内から追跡先特徴点を算出する。すなわち、第2の実施形態では、特徴点追跡を行うベクトル検出において特徴点の初期座標から追跡範囲を設定し、追跡範囲を超えた場合に追跡先特徴点の破棄補填処理を行うことで、1フレーム期間内など所定期間内に処理を完了させる。第2の実施形態における追跡範囲とは、特徴点の追跡が行われる範囲を表しており、追跡範囲を外れた追跡先特徴点は破棄される。
以下、第2の実施形態について説明する。
第2の実施形態の画像処理装置が適用されるデジタルカメラの構成は、図1に示した第1の実施形態のデジタルカメラと同様であるため、その図示と説明は省略する。
第2の実施形態の画像処理装置は、抽出された特徴点を基に追跡する範囲を設定し、その設定された範囲内から追跡先特徴点を算出する。すなわち、第2の実施形態では、特徴点追跡を行うベクトル検出において特徴点の初期座標から追跡範囲を設定し、追跡範囲を超えた場合に追跡先特徴点の破棄補填処理を行うことで、1フレーム期間内など所定期間内に処理を完了させる。第2の実施形態における追跡範囲とは、特徴点の追跡が行われる範囲を表しており、追跡範囲を外れた追跡先特徴点は破棄される。
図14は、第2の実施形態の画像処理部104に含まれるベクトル検出部の概略構成例を示すブロック図である。なお、図14において、第1の実施形態の図2に示した構成と同じ構成には同一の参照符号を付してそれらの説明は省略する。また、第2の実施形態のベクトル検出部における処理のフローチャートは、前述した第1の実施形態の図7のフローチャートと概ね同様であり、また前述の図8、図9についても第1の実施形態と同様であるためそれらの図示と説明は省略する。
第2の実施形態の場合、図7のS401において、第1のRDDMAC221は、DRAM107から読み出したグリッドの左上座標位置を示すグリッド座標情報252を、第2のRDDMAC222に出力する。
また、第2の実施形態のベクトル検出部の場合、図7のS409において、追跡先特徴点決定部205は、算出した追跡先特徴点の座標情報を、追跡先特徴点座標情報257として第2のRDDMAC222に出力するとともに、SRAM206へも出力する。
また、第2の実施形態のベクトル検出部の場合、図7のS409において、追跡先特徴点決定部205は、算出した追跡先特徴点の座標情報を、追跡先特徴点座標情報257として第2のRDDMAC222に出力するとともに、SRAM206へも出力する。
以下、図14に示した第2の実施形態の追跡先特徴点決定部205の構成とその処理内容について、図15から図18を参照しながら説明する。図15は、第2の実施形態における追跡先特徴点決定部205の概略構成を示すブロック図である。図15に示すように、第2の実施形態の追跡先特徴点決定部205は、特徴点管理部801、範囲設定部802、範囲判定部803、新規特徴点補填部804を有する。図16(a)及び図16(b)は、図15の追跡先特徴点決定部205が備えている範囲判定部803の処理の説明に用いる図である。図17は、第2の実施形態の追跡先特徴点決定部205の処理を示すフローチャートである。図18は、図15の追跡先特徴点決定部205が備えている範囲判定部803と新規特徴点補填部804の処理の説明に用いる図である。
先ず、図17のS1701の処理として、特徴点管理部801は、SRAM206から入力された現フレームのベクトル情報と前フレームの追跡先特徴点座標情報とを基に、現フレームの追跡先特徴点座標情報の更新を行う。具体的には、特徴点管理部801は、前フレームの追跡先特徴点座標に対して現フレームのベクトル値を加算することにより、現フレームの追跡先特徴点座標情報の更新を行う。そして、特徴点管理部801は、その更新した現フレームの追跡先特徴点座標情報を内部のメモリに格納する。なお、特徴点管理部801の内部メモリは、少なくとも現フレームの追跡先特徴点座標情報と、その追跡先特徴点座標情報に関連付けられた特徴点の初期座標とを格納できる容量を有している。
次のS1702の処理として、特徴点管理部801は、S1701で更新した追跡先特徴点座標情報に関連付けられた特徴点の初期座標が、内部メモリ内に格納されているか否かを判定する。特徴点管理部801は、S1702において、関連付けられた特徴点の初期座標が存在する(内部メモリ内に格納されている)と判定(YES)した場合にはS1704に処理を進める。一方、特徴点管理部801は、S1702において、関連付けられた特徴点の初期座標が存在しないと判定(NO)した場合にはS1703に処理を進める。
S1703に進むと、特徴点管理部801は、今回更新した追跡先特徴点座標情報が初期座標であると判断し、S1701で更新した現フレームの追跡先特徴点座標を初期座標とし、今回更新した追跡先特徴点座標情報と関連付けた後、S1704に遷移する。具体的には、特徴点管理部801は、関連付けの処理として、初期座標と今回更新した追跡先特徴点座標情報に共通のIDを付加する処理を行う。これにより、特徴点管理部801は、追跡先特徴点座標情報に付加されているIDを参照することで、関連付けられた特徴点の初期座標が存在するか否かを判定することができる。
S1704に進むと、特徴点管理部801は、内部のメモリに格納されている現フレームの追跡先特徴点座標情報を範囲判定部803と新規特徴点補填部804とに出力し、特徴点の初期座標を範囲設定部802に出力する。S1704の後、追跡先特徴点決定部205の処理は、S1705に遷移する。
S1705に進むと、範囲設定部802は、入力された特徴点の初期座標を基に、追跡範囲(SX,SY)〜(EX,EY)を設定する。この設定された追跡範囲の情報は、範囲判定部803に送られる。S1705の後、追跡先特徴点決定部205の処理は、S1706に遷移する。
ここで、図16(a)及び図16(b)を用いて、第2の実施形態における追跡範囲(SX,SY)〜(EX,EY)の設定方法を具体的に説明する。
図16(a)は、現フレームの画像を水平方向に5分割、垂直方向に5分割して計25個のグリッドを設定した場合の座標系と、現フレームの画像読み出し順序を示す概念図である。各グリッドは、前述した特徴抽出グリッド302、周辺グリッド301からなる。図16(a)の場合、水平方向GX、垂直方向GYの座標(gx,gy)毎にグリッドが区切られている。図16(a)の座標系では、左上角の特徴抽出グリッドの左上端の座標が(0,0)、右上角の特徴抽出グリッドの右上端の座標が(5gx,0)となる。また、左下角の特徴抽出グリッドの左下端の座標が(0,5gy)、右下角の特徴抽出グリッドの右下端の座標が(5gx,5gy)となる。なお、現フレームにおけるグリッドの画像読み出し順は、図16(a)中の矢印1601で示すようにラスタスキャン方式に応じた読み出し順となされる。
図16(a)は、現フレームの画像を水平方向に5分割、垂直方向に5分割して計25個のグリッドを設定した場合の座標系と、現フレームの画像読み出し順序を示す概念図である。各グリッドは、前述した特徴抽出グリッド302、周辺グリッド301からなる。図16(a)の場合、水平方向GX、垂直方向GYの座標(gx,gy)毎にグリッドが区切られている。図16(a)の座標系では、左上角の特徴抽出グリッドの左上端の座標が(0,0)、右上角の特徴抽出グリッドの右上端の座標が(5gx,0)となる。また、左下角の特徴抽出グリッドの左下端の座標が(0,5gy)、右下角の特徴抽出グリッドの右下端の座標が(5gx,5gy)となる。なお、現フレームにおけるグリッドの画像読み出し順は、図16(a)中の矢印1601で示すようにラスタスキャン方式に応じた読み出し順となされる。
図16(b)は、範囲設定部802が、図1のROM109に記録されている読み出し順序設定を読み込んで、追跡範囲を設定した一例を示した図である。図16(b)では、現フレームを水平方向に5分割、垂直方向に5分割した計25個のグリッドに区切った場合の各グリッドにおける垂直方向の追跡範囲が、SYとEYの値により設定される例を示している。第2の実施形態の場合、例えば追跡先特徴点が垂直方向の下部領域に集中して所定期間内に処理が終了しなくなるのを防止するために、ラスタスキャン方式の読み出し順序設定に従って垂直方向下部で特徴点の追跡が行われる範囲を狭めている。言い換えると、第2の実施形態における追跡範囲は、ラスタスキャン順で終盤に処理が行われる領域では追跡が行われないようにする範囲として設定されている。
図16(b)のグリッド441を例に挙げた場合、範囲設定部802は、入力された特徴点の初期座標の属するグリッド441に設定された追跡範囲の値を読み出して、追跡範囲(SX,SY)〜(EX,EY)を設定する。図16(b)の例では、グリッド441の追跡範囲の値としてSY:0、EY:3gyが設定されているため、範囲設定部802は、追跡範囲(SX,SY)〜(EX,EY)を(0,0)〜(5gx,3gy)に設定する。つまり、追跡範囲は、図16(a)の座標系の特徴抽出グリッド群の範囲(0,0)〜(5gx,5gy)よりも狭められた、追跡範囲(0,0)〜(5gx,3gy)に設定される。
なお、第2の実施形態では、撮像素子102の読み出し順がラスタスキャン(水平方向)の場合を説明したが、これには特に限定しない。例えば撮像素子102の読み出し順が左側から垂直方向に順に走査される場合、範囲設定部802は、その読み出し順に応じて水平方向の追跡範囲を狭めてもよい。この例の場合、例えば追跡先特徴点が水平方向の右側領域に集中した場合であっても、水平方向の追跡範囲を狭めることで、所定の期間内に処理が終了しなくなることを防止することができる。
図17に説明を戻す。
図17のS1706の処理に進むと、範囲判定部803は、入力された現フレームの追跡先特徴点座標が追跡範囲を超えるか否か(追跡範囲を外れるか否か)を判断する。そして、S1706において、範囲判定部803は、追跡範囲を超えると判断した場合には判定結果NGの情報を、一方、追跡範囲を超えないと判断した場合には判定結果OKの情報を、新規特徴点補填部804に出力する。
図17のS1706の処理に進むと、範囲判定部803は、入力された現フレームの追跡先特徴点座標が追跡範囲を超えるか否か(追跡範囲を外れるか否か)を判断する。そして、S1706において、範囲判定部803は、追跡範囲を超えると判断した場合には判定結果NGの情報を、一方、追跡範囲を超えないと判断した場合には判定結果OKの情報を、新規特徴点補填部804に出力する。
図18を参照し、追跡範囲(0,0)〜(5gx,3gy)の例を用いて、範囲判定部803における判断処理を説明する。図18では、図中の斜線部分の各グリッドが追跡範囲のグリッドを表し、それ以外は追跡範囲外のグリッドを表している。また、図18の例において、入力された現フレームの追跡先特徴点座標1803は追跡範囲外であるとする。したがって、図18の例の場合、範囲判定部803は、現フレームの追跡先特徴点座標1803については判定結果NGとし、その判定結果NGの情報を、新規特徴点補填部804に出力する。S1706の後、追跡先特徴点決定部205の処理は、S1707に遷移する。
S1707に進むと、新規特徴点補填部804は、範囲判定部803から送られてきた判定結果に基づいて、現フレームの追跡先特徴点座標情報に対して補填処理を行うか否かを判定する。そして、新規特徴点補填部804は、範囲判定部803から判定結果OKが送られてきた場合にはS1709に処理を進め、判定結果NGが送られてきた場合にはS1708に処理を進める。
S1708の処理に進むと、新規特徴点補填部804は、現フレームの追跡先特徴点座標から追跡先特徴点を破棄して、新規特徴点座標情報で補填して、S1709に処理を進める。前述した図18の例の場合、新規特徴点補填部804は、現フレームの追跡先特徴点座標1803を破棄して、図16(b)のグリッド441の位置で算出された新規特徴点座標1804を追跡先特徴点座標として補填する。S1708の後、追跡先特徴点決定部205の処理は、S1709に遷移する。
S1709に進むと、追跡先特徴点決定部205は、現フレームの全ての追跡先特徴点座標(特徴抽出グリッド数分の追跡先特徴点座標)が算出されたか否かを判定する。そして、追跡先特徴点決定部205は、全ての追跡先特徴点座標が算出されたと判定(YES)した場合には図17のフローチャートの処理を終了する。一方、S1709において、現フレームの全ての追跡先特徴点座標が算出されていないと判定(NO)した場合、追跡先特徴点決定部205は、S1701に処理を戻し、S1701以降の前述した処理を行う。S1701からS1709までの処理は、S1709において全ての追跡先特徴点座標が算出されたと判定(YES)されるまで反復される。
以上が、第2の実施形態の追跡先特徴点決定部205における処理の流れである。本実施形態では、1フレーム分の処理を例に挙げて説明したが、前述した1フレーム分の処理は毎フレームに対して同様に行われ、毎フレームでベクトル値が算出される。
また、第2の実施形態における追跡範囲設定は、画像処理装置の処理能力に応じて決めることができる。例えば、画像処理装置におけるテンプレートマッチング用画像の生成処理速度やテンプレートマッチングの処理速度を基に、画像処理装置が一定処理期間内に処理を完了できるように、追跡範囲の設定を行うことができる。
また、第2の実施形態における追跡範囲設定は、画像処理装置の処理能力に応じて決めることができる。例えば、画像処理装置におけるテンプレートマッチング用画像の生成処理速度やテンプレートマッチングの処理速度を基に、画像処理装置が一定処理期間内に処理を完了できるように、追跡範囲の設定を行うことができる。
第2の実施形態の画像処理装置は、特徴点追跡を行うベクトル検出において特徴点の初期座標を基に追跡範囲を設定し、追跡範囲を超えた場合に、追跡先特徴点の破棄補填処理を行うことで、1フレーム期間など所定期間内に処理を完了させることができる。したがって、第2の実施形態の画像処理装置によれば、追跡先特徴点がフレームの画像範囲内で偏在した場合でも、ベクトル検出性能の低下を防止しつつ、ベクトル検出を高速化し、所定期間内に処理を完了させることが可能となる。
<第3の実施形態>
以下、第3の実施形態について説明する。
第3の実施形態の画像処理装置が適用されるデジタルカメラの構成は、図1に示した第1の実施形態のデジタルカメラと同様であるため、その図示と説明は省略する。
第3の実施形態の画像処理装置は、各追跡先特徴点の座標情報を基に追跡先特徴点間の距離を算出し、その算出した距離に基づいて追跡先特徴点の破棄補填処理を行うことにより、1フレーム期間内など所定期間内に処理を完了させる。第3の実施形態の場合、例えば二つの追跡先特徴点間の距離が近い場合に一方を破棄し、新規特徴点を追跡先特徴点として補填する。
以下、第3の実施形態について説明する。
第3の実施形態の画像処理装置が適用されるデジタルカメラの構成は、図1に示した第1の実施形態のデジタルカメラと同様であるため、その図示と説明は省略する。
第3の実施形態の画像処理装置は、各追跡先特徴点の座標情報を基に追跡先特徴点間の距離を算出し、その算出した距離に基づいて追跡先特徴点の破棄補填処理を行うことにより、1フレーム期間内など所定期間内に処理を完了させる。第3の実施形態の場合、例えば二つの追跡先特徴点間の距離が近い場合に一方を破棄し、新規特徴点を追跡先特徴点として補填する。
図19は、第3の実施形態の画像処理部104に含まれるベクトル検出部の概略構成例を示すブロック図である。なお、図19において、第1の実施形態の図2に示した構成と同じ構成には同一の参照符号を付してそれらの説明は省略する。図19では図示していないが、図14と同様、グリッド座標情報は、第2のRDDMAC222を介してマッチング処理部203に送られる。また、第3の実施形態のベクトル検出部の処理フローチャートは、前述した図7のフローチャートと概ね同様であり、前述の図8、図9についても前述同様であるためそれらの図示と説明は省略する。
図20は、第3の実施形態におけるベクトル検出処理の際のグリッド配置と、特徴点、テンプレートマッチング領域の関係説明に用いる図である。図20において、特徴抽出グリッド302、周辺グリッド301、サーチ領域305、テンプレート領域304は、前述した図3で説明したものと同様である。図20の図中斜線部分で表された各グリッドからなる領域は、新規特徴点が追跡先特徴点として補填される領域であり、第3の実施形態ではこの領域を補填領域区分310と表記する。補填領域区分310は、動きベクトルの検出に使用される画像の生成が先に行われる領域(ラスタスキャン順で初期に処理が行われる領域)に設定される。
図21は、第3の実施形態に係る追跡先特徴点決定部205の概略構成例を示すブロック図である。第3の実施形態の追跡先特徴点決定部205は、距離算出部715、処理判定部716、新規特徴点補填部717を有する。なお、図21において、前述した図10と同じ構成には同一の参照符号を付してそれらの説明は省略する。また、図22は、第3の実施形態の追跡先特徴点決定部205が処理する追跡先特徴点の位置関係の説明に用いる図である。図22の例では、図を見やすくするために、1グリッド分とその周囲のグリッドの一部のみを図示している。さらに、図23は、第3の実施形態に係る追跡先特徴点決定部205の処理フローチャートである。第3の実施形態における処理タイミングは、前述の図13の例と同様であるため、その図示と説明は諸略する。
以下、図20から図23を参照して、第3の実施形態の追跡先特徴点決定部205における構成と処理の概要を説明する。なお、図23のS901〜S905までの処理は前述の図12のS901〜S905の処理と同様であるためそれらの説明は省略し、図12とは異なる処理であるS2301〜S2304について説明を行う。
図23のフローチャートにおいて、S905の後、追跡先特徴点決定部205の処理は、S2301に遷移する。
図23のフローチャートにおいて、S905の後、追跡先特徴点決定部205の処理は、S2301に遷移する。
S2301に進むと、追跡先特徴点決定部205の距離算出部715は、各追跡先特徴点の2点間の距離を算出する。具体的には、図22に示すように、2点の追跡先特徴点2210,2211の座標をそれぞれ(X1,Y1)、(X2,Y2)とした場合、距離算出部715は、それら2点の追跡先特徴点間の距離Dを、下記の式(4)により算出する。S2301の後、追跡先特徴点決定部205の処理は、S2302に遷移する。
S2302に進むと、追跡先特徴点決定部205の処理判定部716は、距離算出部715で求めた2点の追跡先特徴点間の距離Dに基づき、それら2点の追跡先特徴点に対する破棄補填処理を行うか否か判定する。具体的には、処理判定部716は、S2301で求めた2点の追跡先特徴点の距離Dが所定の閾値Dthより小さいか否かを判定する。閾値Dthは、2点の追跡先特徴点について破棄補填処理を行うかどうかを判断する際の指標である。第3の実施形態の場合、閾値Dthは、例えば図22のテンプレート領域304の一辺の長さの半分の距離2202とする。なお、本実施形態において、閾値Dthを距離2202としたのは、2点の追跡先特徴点間の距離Dがテンプレート領域の一辺の長さの半分より短ければ(近ければ)、一つのテンプレート領域内に2点の特徴点が入ることになるためである。そして、S2302において、処理判定部716は、2点の追跡先特徴点間の距離Dが、閾値以上(D≧Dth)である場合(NO)にS2304へ処理を進め、一方、閾値未満(D<Dth)である場合(YES)にはS2303へ処理を進める。
なお、テンプレートマッチング処理を1フレーム期間内に完了できるように、閾値Dthを調整してもよい。例えば、テンプレートマッチング処理を分散させるように、複数の追跡先特徴点の密集度合いを評価し、密集度が高いほど閾値Dthの値を大きくして、追跡先特徴点に対する破棄補填処理がなされ易くしてもよい。また、テンプレートマッチング処理がフレームの画像範囲内(画角内)の下部領域に集中しないように、追跡先特徴点の座標を評価し、フレームの画像範囲の下端部に近づくほど閾値Dthを大きくして、追跡先特徴点に対する破棄補填処理がなされ易くしてもよい。
S2303に進むと、追跡先特徴点決定部205の新規特徴点補填部717は、第3の実施形態における追跡先特徴点の破棄、及び新規特徴点を追跡先特徴点として補填する破棄補填処理を実施する。先ず、新規特徴点補填部717は、2点の追跡先特徴点における特徴値の大小比較を行う。そして、新規特徴点補填部717は、特徴値が小さい方の追跡先特徴点を破棄対象とする。なお、特徴値ではなく、2点の追跡先特徴点の座標を基に破棄対象を選定してもよい。例えば、2点の追跡先特徴点の座標を基に、何れの追跡先特徴点座標がフレームの画像範囲の下部領域側になっているかを判断し、下部領域側となっている方を破棄対象として選定する。そして、新規特徴点補填部717は、追跡先特徴点の1点を破棄した後、図20に示した補填領域区分310の特徴抽出グリッドに対し、新規特徴点を追跡先特徴点として補填する。この破棄補填処理により、前述した図13で説明したのと同様に、補填された追跡先特徴点に対するテンプレートマッチング処理に要する期間930が、1フレーム期間の前半に分散されることになる。S2303の後、追跡先特徴点決定部205の処理は、S2304に遷移する。
S2304に進むと、追跡先特徴点決定部205は、S2301からS2303までの処理を全ての追跡先特徴点間に対して実施したか否か判定する。そして、S2304において、全ての追跡先特徴点間に対する処理が実施されていないと判定(NO)した場合、追跡先特徴点決定部205は、S2301に処理を戻してS2301からS2303までの前述した破棄補填処理を行う。一方、S2304において、全ての追跡先特徴点間に対する処理が実施されたと判定(YES)した場合、追跡先特徴点決定部205は、図23の処理を終了する。
以上が、第3の実施形態の追跡先特徴点決定部205における処理の流れである。本実施形態では、1フレーム分の処理を例に挙げて説明したが、前述した1フレーム分の処理は毎フレームに対して同様に行われ、毎フレームでベクトル値が算出される。
第3の実施形態における破棄補填処理の指標となる閾値Dthや補填領域区分310は、画像処理装置の処理能力に応じて決めることができる。例えば、画像処理装置におけるテンプレートマッチング用画像の生成処理速度やテンプレートマッチングの処理速度を基に、画像処理装置が一定処理期間内に処理を完了できるように、閾値Dthや補填領域区分310の設定を行うことができる。
また、追跡先特徴点決定部205は、複数の追跡先特徴点のうち、距離を算出する2点の追跡先特徴点を選定する際、例えば特徴値の小さい追跡先特徴点から優先的に破棄されるように、特徴値が小さい追跡先特徴点順の2点の追跡先特徴点から選定してもよい。
また、追跡先特徴点決定部205は、複数の追跡先特徴点の全ての追跡先特徴点間の距離を求めなくてもよい。例えば、追跡先特徴点決定部205は、テンプレートマッチング処理の完了時間に影響を及ぼし易い、前述した下部領域の追跡先特徴点群のみを距離算出の対象とされてもよい。また例えば、一部の領域のみで追跡先特徴点が密集し、それ以外の画像範囲では追跡先特徴点が広く分散している場合、追跡先特徴点決定部205は、図23のS2301〜S2304の処理をスキップして破棄補填処理を実施しないようにしてもよい。このように、破棄補填処理をスキップした場合、画像処理部104の処理負担が軽減され、処理の高速化が可能となる。
その他にも、追跡先特徴点決定部205は、補填領域区分に新規特徴点を補填する際、特徴値が大きなものから優先的に補填するようにしてもよい。また、追跡先特徴点決定部205は、補填領域区分に新規特徴点を補填する際、追跡先特徴点の分布をより広く分散させるように、上部領域側のグリッドから優先的に新規特徴点を補填するようにしてもよい。
また、追跡先特徴点決定部205は、複数の追跡先特徴点の全ての追跡先特徴点間の距離を求めなくてもよい。例えば、追跡先特徴点決定部205は、テンプレートマッチング処理の完了時間に影響を及ぼし易い、前述した下部領域の追跡先特徴点群のみを距離算出の対象とされてもよい。また例えば、一部の領域のみで追跡先特徴点が密集し、それ以外の画像範囲では追跡先特徴点が広く分散している場合、追跡先特徴点決定部205は、図23のS2301〜S2304の処理をスキップして破棄補填処理を実施しないようにしてもよい。このように、破棄補填処理をスキップした場合、画像処理部104の処理負担が軽減され、処理の高速化が可能となる。
その他にも、追跡先特徴点決定部205は、補填領域区分に新規特徴点を補填する際、特徴値が大きなものから優先的に補填するようにしてもよい。また、追跡先特徴点決定部205は、補填領域区分に新規特徴点を補填する際、追跡先特徴点の分布をより広く分散させるように、上部領域側のグリッドから優先的に新規特徴点を補填するようにしてもよい。
第3の実施形態の画像処理装置は、複数の追跡先特徴点間の距離を基に、追跡先特徴点の破棄補填処理を行うことで、1フレーム期間など所定期間内に処理を完了させることができる。したがって、第3の実施形態の画像処理装置によれば、追跡先特徴点がフレームの画像範囲内で偏在した場合でも、ベクトル検出性能の低下を防止しつつ、ベクトル検出を高速化し、所定期間内に処理を完了させることが可能となる。
<第4の実施形態>
以下、第4の実施形態について説明する。
第4の実施形態の画像処理装置が適用されるデジタルカメラの構成は、図1に示した第1の実施形態のデジタルカメラと同様であるため、その図示と説明は省略する。
第4の実施形態の画像処理装置は、前述した複数の特徴抽出グリッドを、非追跡領域区分と追跡領域区分とに区分けし、追跡領域区分では追跡先特徴点を基に動きベクトルを検出し、非追跡領域区分では新規特徴点を基に動きベクトルを検出する。
以下、第4の実施形態について説明する。
第4の実施形態の画像処理装置が適用されるデジタルカメラの構成は、図1に示した第1の実施形態のデジタルカメラと同様であるため、その図示と説明は省略する。
第4の実施形態の画像処理装置は、前述した複数の特徴抽出グリッドを、非追跡領域区分と追跡領域区分とに区分けし、追跡領域区分では追跡先特徴点を基に動きベクトルを検出し、非追跡領域区分では新規特徴点を基に動きベクトルを検出する。
第4の実施形態の画像処理部104に含まれるベクトル検出部の構成は、前述した第3の実施形態の図19に示したものと同様であるため、その図示と説明は省略する。また、第4の実施形態のベクトル検出部における処理フローチャートは、前述した図7のフローチャートと概ね同様であり、また前述の図8、図9についても前述同様であるためそれらの図示と説明は省略する。
図24は、第4の実施形態の追跡先特徴点決定部205の概略構成例を示すブロック図である。第4の実施形態の追跡先特徴点決定部205は、領域判定部720、新規特徴点補填部721を有する。なお、図24において、前述した図10と同じ構成には同一の参照符号を付してそれらの説明は省略する。図25は、第4の実施形態の追跡先特徴点決定部205が処理する追跡先特徴点と新規特徴点、並びに追跡領域区分と非追跡領域区分の位置関係の説明に用いる図である。なお、図25の特徴点2501、追跡先特徴点2502、ベクトル値2503、特徴抽出グリッド2504、周辺グリッド2505は前述同様のものである。
また、第4の実施形態では、図25の下部領域の複数の特徴抽出グリッド群が非追跡領域区分2506となされ、それ以外の特徴抽出グリッド群が追跡領域区分となされる。第4の実施形態の追跡先特徴点決定部205は、追跡先特徴点が、非追跡領域区分2506内に入った場合には、その追跡先特徴点を破棄する。また、本実施形態の場合、マッチング処理部203は、非追跡領域区分2506の各グリッド(図25の例では5個の特徴抽出グリッド)については、新規特徴点算出部202で算出した新規特徴点座標2507を中心としたテンプレートマッチングを実施する。
図26は、第4の実施形態に係る追跡先特徴点決定部205の処理フローチャートである。さらに、図27は、第4の実施形態における処理タイミングチャートを示す図である。なお、図26において、前述の図12と同様の処理については図12と同一の参照符号を付してそれらの説明は省略する。また、図27においても前述の図13と同じ部分については図13と同一の参照符号を付してそれらの説明は省略する。
図27に示した処理タイミングにおいて、一つのテンプレート領域に対してテンプレートマッチング処理を実施するために必要な時間は、前述したようにテンプレート領域のサイズにより一意に決まる。例えば前述した図11の例のように、フレームの画像範囲内の下部領域(第4の実施形態の非追跡領域区分)に17個の追跡先特徴点が集中した場合、それら17個分のテンプレートマッチング処理は、図27の時刻1959のタイミングで開始する。また、前述したように、時刻1959からフレーム期間が終わるまでの時間910(次のフレーム期間が開始するまでの時間)内では、それら17個分の全てのテンプレートマッチング処理は完了しない。図27の例の場合、期間921に示すように、少なくとも5個分の追跡先特徴点におけるテンプレートマッチング処理が終了しないことになる。
このため、第4の実施形態の追跡先特徴点決定部205は、図25に示した5グリッド分の非追跡領域区分2506を設定し、この非追跡領域区分2506の追跡先特徴点を破棄する。したがって、非追跡領域区分2506の追跡先特徴点が破棄された場合、テンプレートマッチング処理は、非追跡領域区分2506を除く追跡領域区分内の追跡先特徴点のみを用いたテンプレートマッチング処理となる。非追跡領域区分2506を除く追跡領域区分内の追跡先特徴点のみを用いたテンプレートマッチング処理は、最大でも(最も時間がかかったとしても)期間2000のタイミングで完了することになる。つまり、非追跡領域区分に17個の追跡先特徴点が在った場合、それら追跡先特徴点が破棄されて処理不要となるため、追跡領域区分の追跡先特徴点の処理に、ある程度時間が掛かったとしても、期間2000までには処理は終了する。
一方、第4の実施形態の場合、追跡先特徴点決定部205は、非追跡領域区分2506の5個のグリッドで新規特徴点算出部202がそれぞれ一つ抽出した新規特徴点(5個)を基に動きベクトルを検出してテンプレートマッチング処理が行われる。図27の場合、期間930が、5個の新規特徴点に基づくテンプレートマッチング処理に要する期間を表している。そして、期間2000からフレーム期間の終了までの時間2010(次フレーム期間開始までの時間)は、非追跡領域区分2506の5個の新規特徴点についてテンプレートマッチング処理(期間930の処理)を行うのには十分な時間である。したがって、第4の実施形態の場合、1フレーム期間内に、テンプレートマッチング処理による動きベクトル値の検出までの処理を終えることができる。
以下、図24から図27を参照しながら、第4の実施形態の追跡先特徴点決定部205における構成と処理の概要を説明する。図26のS901〜S905までの処理は前述の図12の処理と同様であり、ここでは図12とは異なっている処理であるS2601〜S2603について説明を行う。
なお、図11の例は非追跡領域区分2506に17個の追跡先特徴点が存在する例であったが、以下、説明を判り易くするために、非追跡領域区分2506の5グリッドに計5個の追跡先特徴点が入り、それら5個の追跡先特徴点を破棄する例を挙げる。このため、追跡領域区分内に在って追跡対象となる追跡先特徴点の数は20個であるとする。したがって、S901で算出される追跡先特徴点座標は20個となる。一方、非追跡領域区分2506の5個のグリッドからは、新規特徴点算出部202により5個の新規特徴点が抽出される。したがって、ベクトル値については、非追跡領域区分2506で抽出された5個の新規特徴点と、追跡領域区分内の20個の追跡先特徴点とを用いたテンプレートマッチング処理の実施により、25個分が算出されることになる。
図26のS903でYESと判定された場合、又は、S904の処理の後、追跡先特徴点決定部205の処理は、S2601に遷移する。
S2601に進むと、追跡先特徴点決定部205の領域判定部720は、S901で算出された追跡先特徴点座標が、図25の非追跡領域区分2506内に侵入したか否かを判定する。具体的には、領域判定部720は、追跡先特徴点の垂直座標の値が、非追跡領域区分2506の上端座標の値以上である場合に、非追跡領域区分2506内にあると判定(YES)してS2602に処理を進める。一方、領域判定部720は、追跡先特徴点の垂直座標が、非追跡領域区分2506の上端座標の値未満である場合、非追跡領域区分2506内にないと判定(NO)してS2603に処理を進める。
S2601に進むと、追跡先特徴点決定部205の領域判定部720は、S901で算出された追跡先特徴点座標が、図25の非追跡領域区分2506内に侵入したか否かを判定する。具体的には、領域判定部720は、追跡先特徴点の垂直座標の値が、非追跡領域区分2506の上端座標の値以上である場合に、非追跡領域区分2506内にあると判定(YES)してS2602に処理を進める。一方、領域判定部720は、追跡先特徴点の垂直座標が、非追跡領域区分2506の上端座標の値未満である場合、非追跡領域区分2506内にないと判定(NO)してS2603に処理を進める。
S2602に進んだ場合、新規特徴点補填部721は、S2601で非追跡領域区分2506内にあると判定された追跡先特徴点座標を破棄し、新規特徴点算出部202にて算出された新規特徴点座標に置き換える。なお、追跡先特徴点決定部205は、削除された追跡先特徴点座標を、現フレームにおいて一番初めに新規特徴点が算出された位置の特徴点抽出グリッドの該当位置で算出された新規特徴点座標により置き換えてもよい。S2602の後、追跡先特徴点決定部205の処理は、S2603に遷移する。
S2603に進むと、追跡先特徴点決定部205は、全ての追跡先特徴点座標の算出が終わったか否か判定する。そして、S2603において、追跡先特徴点決定部205は、全ての追跡先特徴点座標の算出が終わっていないと判定(NO)した場合には、S901に処理を戻して、S901以降の処理を行う。図25の例の場合、20個の追跡先特徴点座標の算出処理が行われるため、S901からステップ2603までの処理は20回反復されることになる。一方、追跡先特徴点決定部205は、S2603において、全ての追跡先特徴点座標の算出が終わったと判定(YES)した場合、図26のフローチャートの処理を終了する。
以上が、第4の実施形態の追跡先特徴点決定部205における処理の流れである。本実施形態では、1フレーム分の処理を例に挙げて説明したが、前述した1フレーム分の処理は毎フレームに対して同様に行われ、毎フレームでベクトル値が算出される。
第4の実施形態における非追跡領域区分や追跡領域区分は、画像処理装置の処理能力に応じて決めることができる。例えば、画像処理装置におけるテンプレートマッチング用画像の生成処理速度やテンプレートマッチングの処理速度を基に、画像処理装置が一定処理期間内に処理を完了できるように、非追跡領域区分や追跡領域区分の設定を行うことができる。
また、第4の実施形態では、非追跡領域区分を設けることでテンプレートマッチング処理期間を分散させるようにしており、非追跡領域区分は下部領域となされている。非追跡領域区分は、任意の領域に設定することも可能であり、例えば、フレームの画像範囲の上部領域、右部領域、左部領域、中央部領域等の、少なくとも一つに設定可能である。さらに、記非追跡領域区分は、フレームの画像範囲内に分散して配置されてもよい。
また、第4の実施形態において、補填する新規特徴点は、新規特徴点が補填される領域内のグリッドのうち特徴値が大きなものから優先的に補填してもよいし、分散し易いように上部領域のグリッドで算出したものから優先的に補填してもよい。
また、第4の実施形態において、補填する新規特徴点は、新規特徴点が補填される領域内のグリッドのうち特徴値が大きなものから優先的に補填してもよいし、分散し易いように上部領域のグリッドで算出したものから優先的に補填してもよい。
第4の実施形態の画像処理装置は、追跡領域区分と非追跡領域区分とを設け、追跡領域区分では追跡先特徴点を基に動きベクトルを検出され、非追跡領域区分では新規特徴点を基に動きベクトルを検出する。これにより、第4の実施形態の画像処理装置は、追跡先特徴点がフレームの画像範囲内で偏在した場合でも、ベクトル検出性能の低下を防止しつつ、ベクトル検出を高速化し、所定期間内に処理を完了させることが可能となる。
<第5の実施形態>
以下、第5の実施形態について説明する。
第5の実施形態の画像処理装置が適用されるデジタルカメラの構成は、図1に示した第1の実施形態のデジタルカメラと同様であるため、その図示と説明は省略する。
第5の実施形態の画像処理装置は、複数の特徴抽出グリッド群を第1の領域区分と第2の領域区分の少なくとも二つの領域区分に、区分けする。そして、第5の実施形態の画像処理装置は、追跡先特徴点のベクトル値と他のベクトル値を基に、追跡先特徴点が、何れの領域区分に属するかを判定し、その判定結果に応じてテンプレートマッチング処理に用いるテンプレートサイズ(大きさ)を決定する。
以下、第5の実施形態について説明する。
第5の実施形態の画像処理装置が適用されるデジタルカメラの構成は、図1に示した第1の実施形態のデジタルカメラと同様であるため、その図示と説明は省略する。
第5の実施形態の画像処理装置は、複数の特徴抽出グリッド群を第1の領域区分と第2の領域区分の少なくとも二つの領域区分に、区分けする。そして、第5の実施形態の画像処理装置は、追跡先特徴点のベクトル値と他のベクトル値を基に、追跡先特徴点が、何れの領域区分に属するかを判定し、その判定結果に応じてテンプレートマッチング処理に用いるテンプレートサイズ(大きさ)を決定する。
第5の実施形態の画像処理部104のベクトル検出部の構成は、例えば前述した第2の実施形態の図14に示したものと同様であるため、その図示と説明は省略する。また、第5の実施形態のベクトル検出部における処理のフローチャートは、前述した図7のフローチャートと概ね同様であり、また前述の図8、図9についても前述同様であるためそれらの図示と説明は省略する。
図28は、第5の実施形態におけるマッチング処理部203の概略構成を示した図である。図28に示すように、第5の実施形態のマッチング処理部203は、領域区分部2801、カウント部2802、サイズ変更部2803、推定部2804、処理実行部2805を有する。図29は、第5の実施形態のマッチング処理部203におけるテンプレートマッチング処理の流れを示すフローチャートである。図30(a)、図30(b)は、マッチング処理部203内の領域区分部2801の処理の説明に用いる図である。図31(a)、図31(b)は、マッチング処理部203内のサイズ変更部2803と推定部2804の処理の説明に用いる図である。
以下、図28から図31を参照しながら、第5の実施形態のマッチング処理部203における構成と処理の概要について説明する。
第5の実施形態において、第2のRDDMAC222からは、前述したサーチ領域画像データ253、テンプレート領域画像データ254とともに、グリッド座標情報252も読み出されて、マッチング処理部203にも送られる。
第5の実施形態において、第2のRDDMAC222からは、前述したサーチ領域画像データ253、テンプレート領域画像データ254とともに、グリッド座標情報252も読み出されて、マッチング処理部203にも送られる。
マッチング処理部203の領域区分部2801は、S2901の処理として、現フレームの複数の特徴抽出グリッドを、第1の領域区分と第2の領域区分の少なくとも二つの領域区分に、区分けする。具体的には、領域区分部2801は、現フレームのグリッド座標情報を基に、それぞれ特徴抽出グリッドが属する領域区分を算出する。S2901の後、マッチング処理部203の処理は、S2902に遷移する。
ここで、図30(a)、図30(b)を用いて、領域区分部2801における領域区分の算出設定方法について具体的に説明する。図30(a)は、現フレームを水平方向に5分割、垂直方向に5分割して計25個のグリッドに区切った場合の画像読み出し順序を示す概念図である。また図30(a)に示すように、現フレームの画像読み出しは、図中の矢印に示すようにラスタスキャン方式により行われる。図30(b)は、ラスタスキャン方式において、25個の各グリッドに対して割り当てられる領域区分を示す概念図である。領域区分部2801は、図30(b)の下端より上側の2行分の特徴抽出グリッド群(ラスタスキャンの後半部)を第1の領域区分として設定する。すなわち、第1の領域区分は、前記動きベクトルの検出に使用される画像の生成が後に行われる領域区分であり、言い換えると画像読み出し順の終盤に読み出しが行われる領域区分である。また、領域区分部2801は、図30(b)の上端より下側の3行分の特徴抽出グリッド群(ラスタスキャンの前半部)を第2の領域区分として設定する。すなわち、第2の領域区分は、前記動きベクトルの検出に使用される画像の生成が先に後に行われる領域区分であり、言い換えると画像読み出し順の初期に読み出しが行われる領域区分である。なお、図30(b)の例では、下端より上側の2行分の特徴抽出グリッド群を第1の領域区分としたが、これには限定されず、任意の領域を第1の領域区分、第2の領域区分に設定することも可能である。
S2902に処理に進むと、マッチング処理部203は、テンプレートマッチング処理対象となっているテンプレート領域画像データが属している特徴抽出グリッドが、第1の領域区分内の特徴抽出グリッドであるか否かを判定する。マッチング処理部203は、第1の領域区分でないと判別(NO)した場合には、現状のテンプレート領域画像データを、サイズ変更部2803を介して処理実行部2805に送る。その後、マッチング処理部203の処理はS2909に遷移する。一方、マッチング処理部203は、S2902にて第1の領域区分であると判別(YES)した場合には、S2903に処理を進める。なお、特徴抽出グリッドが第1の領域区分か否かの判定は、図1のCPU112により行われてもよい。
マッチング処理部203のカウント部2802は、グリッドごとに追跡先特徴点を計数するカウンタである。S2903の処理に進んだ場合、カウント部2802は、現フレームのグリッド座標情報から、該当するグリッド内の追跡先特徴点を計数してカウンタ値を更新する。S2903の後、マッチング処理部203の処理はS2904に遷移する。
S2904に進むと、マッチング処理部203は、図1のROM109内に格納されている所定の閾値を用い、カウント部2802によりグリッド内で計数された追跡先特徴点数が所定の閾値を超えるか否かを判断する。マッチング処理部203は、グリッド内の追跡先特徴点数が閾値を超えないと判定(NO)した場合には、サイズ変更部2803を介して、現状のテンプレート領域画像データを処理実行部2805に送った後、S2909に処理を進める。一方、マッチング処理部203は、グリッド内の追跡先特徴点数が閾値を超えると判定(YES)した場合には、S2905に処理を進める。なお、グリッド内の追跡先特徴点数が閾値を超えるか否かの判定は、図1のCPU112により行われてもよい。また、閾値は、予めグリッド毎に設定されており、撮影条件などに応じて適宜更新可能となされている。なお、撮影条件などに応じた閾値の更新は、図1のCPU112により行われる。
S2905に進むと、マッチング処理部203は、入力されたテンプレート領域画像データのテンプレートサイズが、予め決められた最少サイズか否かを判定する。マッチング処理部203は、テンプレートサイズが最少サイズであると判定(YES)した場合、所定期間内に処理を完了させることはできないと判断して、図29のフローチャートの処理を終了する。一方、マッチング処理部203は、テンプレートサイズが最少サイズではないと判定(NO)場合にはS2906に処理を進める。なお、テンプレートサイズが予め決められた最少サイズか否かの判断は、CPU112により行われてもよい。
S2906に進むと、サイズ変更部2803は、入力されたテンプレート領域画像データのサイズ(つまりテンプレートの大きさ)を縮小し、その縮小したテンプレート領域画像データを推定部2804に出力する。S2906の後、マッチング処理部203の処理はS2907に遷移する。
図31(a)を用いて、サイズ変更部2803におけるテンプレートサイズの変更処理について説明する。図31(a)はテンプレートサイズの例を表した図である。本実施形態においてテンプレートマッチングで使用するテンプレート領域は例えば正方形であり、図31(a)の例では1辺がn、2n、3n(nは複数の画素数)となる計3種類をサイズ例に挙げている。サイズ変更部2803は、入力されたテンプレート領域画像データが1辺3nのテンプレート領域である場合、S2907において、テンプレート領域の中心に対して上下左右の領域をトリミングして1辺2nのテンプレート領域画像に縮小する。なお、サイズ変更部2803は、1辺3nのテンプレート領域を1辺nのテンプレート領域画像に縮小してもよい。
S2907の処理に進むと、推定部2804は、入力されたテンプレート領域画像のサイズを基に、処理時間を推定するための処理時間係数を算出する。S2907の後、マッチング処理部203の処理はS2908に遷移する。
図31(b)を用いて、推定部2804における時間算出の処理について説明する。図31(b)は、推定部2804における処理時間係数算出例の説明に用いる図である。本実施形態においてテンプレート領域は、図31(a)に示したように正方形であり、図31(b)のn、2n、3nはテンプレート領域の1辺のサイズを表している。また、図31(b)のSAD演算量は、テンプレートマッチングで相関値を算出する際の演算量を示しており、SAD演算は前述した式(3)により行われる。相関値算出ではテンプレート領域内の全画素値に対する演算が行われるため、テンプレートサイズの1辺がn、2n、3nのように大きくなるにつれて、SAD演算量は、図31(b)のn、4n、9nで表されるように増加する。また、図31(b)の処理時間係数は、テンプレート領域の1辺のサイズがnの場合のテンプレートマッチング処理の処理時間係数を1として表している。したがって、テンプレート領域の1辺がn、2n、3nのように大きくなるにつれて、処理時間係数は1、4、9のように多く(時間が長く)なる。一方、サイズ変更部2803よりテンプレート領域が例えば1辺3nのサイズから1辺nのサイズに変更されたとすると、テンプレートマッチング処理の処理時間係数は1から9に減り、処理時間が1/9に短縮されることになる。
S2908の処理に進むと、マッチング処理部203は、推定部2804にて算出された処理時間係数を基に、追跡先特徴点を中心としたテンプレートマッチングの処理が所定の時間内(1フレーム期間内)に終了するか否かを判断する。マッチング処理部203は、所定の時間内に処理が終了すると判断(YES)した場合、サイズ変更部2803にて縮小されたテンプレート領域画像データを、処理実行部2805に送った後、S2909に処理を進める。一方、マッチング処理部203は、所定の時間内に終了しないと判断(NO)した場合には、更にテンプレートサイズを縮小する処理を継続するために、S2905に処理を戻す。すなわち、S2905からS2908までで行われるテンプレートサイズの変更の処理は、テンプレートマッチングに要する処理時間が1フレーム期間のような所定の時間に収まるようになるまで繰り返される。なお、テンプレートマッチングの処理が所定の時間内に終了するか否かの判断は、CPU112により行われてもよい。
S2909の処理に進むと、処理実行部2805は、入力されたテンプレート領域画像データとサーチ領域画像データとを用いて相関値を算出し、その相関値を基に動きベクトルを検出する。そして、マッチング処理部203は、その検出した動きベクトルのベクトル値情報と相関値情報とを、前述の精度判定部204に出力する。その後、マッチング処理部203は、図29のフローチャートの処理を終了する。
以上が、第5の実施形態のマッチング処理部203における処理の流れである。本実施形態では、1フレーム分の処理を例に挙げて説明したが、前述した1フレーム分の処理は毎フレームに対して同様に行われ、毎フレームでベクトル値が算出される。
以上説明したように、第5の実施形態の画像処理装置は、サイズ変更部2803によりテンプレート領域のサイズを縮小することで前述した相関値算出領域を縮小することにより、SAD計算量を削減する。これにより、第5の実施形態の画像処理装置は、1フレームの期間内にテンプレートマッチング処理を完了することができるようになる。したがって、第5の実施形態の画像処理装置は、追跡先の特徴点がフレームの画像範囲内で偏在した場合でも、ベクトル検出性能の低下を防止しつつ、ベクトル検出を高速化し、所定期間内に処理を完了させることが可能となる。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
104:画像処理部、107:DRAM、112:CPU、221:第1のRDDMAC、201:マッチング用画像生成部、202:新規特徴点算出部、203:マッチング処理部、204:精度判定部、205:追跡先特徴点決定部、206:SRAM、222:第2のRDDMAC、231:WRDMAC
Claims (30)
- フレームの画像を複数の領域に分割する分割手段と、
前記複数に分割された各領域内で画像の特徴点を抽出する抽出手段と、
前記特徴点を基に動きベクトルを検出する検出手段と、
前フレームから検出された前記動きベクトルの値と特徴点とを基に、次のフレームの動きベクトル検出に用いられる追跡先特徴点を算出する算出手段と、
前記追跡先特徴点が予め定めた条件に該当する場合に、前記追跡先特徴点の少なくとも一部を破棄して、前記抽出手段にて抽出された新規特徴点を追跡先特徴点として補填する補填手段と、
を有することを特徴とする画像処理装置。 - 前記分割された複数の領域を計数領域区分と補填領域区分とに区分けする区分手段と、
前記計数領域区分のなかの前記追跡先特徴点の数を計数する計数手段と、をさらに有し、
前記補填手段は、前記計数領域区分のなかの前記追跡先特徴点の数が所定の設定数を超えた場合、前記計数領域区分のなかで追跡先特徴点を破棄して、前記抽出手段にて抽出された新規特徴点を追跡先特徴点として前記補填領域区分のなかに補填することを特徴とする請求項1に記載の画像処理装置。 - 前記補填手段は、前記計数領域区分のなかで前記設定数を超えた数の追跡先特徴点を破棄し、前記破棄された追跡先特徴点の数に応じた前記新規特徴点を前記補填領域区分のなかに補填することを特徴とする請求項2に記載の画像処理装置。
- 前記区分手段は、前記動きベクトルの検出に使用される画像の生成が先に行われる領域区分を、前記補填領域区分として設定することを特徴とする請求項2または3に記載の画像処理装置。
- 前記区分手段は、前記動きベクトルの検出で使用される画像の生成が前記補填領域区分よりも後に行われる領域区分を、前記計数領域区分として設定することを特徴とする請求項4に記載の画像処理装置。
- 前記動きベクトルの検出に使用される画像の生成はラスタスキャン順に行われることを特徴とする請求項4または5に記載の画像処理装置。
- 前記補填手段は、前記破棄の対象となる追跡先特徴点を、前記計数領域区分のなかの複数の追跡先特徴点のうち特徴値が低い順に選定するすることを特徴とする請求項2から6の何れか1項に記載の画像処理装置。
- 前記補填手段は、前記補填の対象となる新規特徴点を、前記補填領域区分のなかの複数の新規特徴点のうち特徴値が高い順に選定することを特徴とする請求項2から7の何れか1項に記載の画像処理装置。
- 前記抽出された特徴点を基に追跡範囲を設定する範囲設定手段を、さらに有し、
前記算出手段は、前記追跡範囲のなかから前記追跡先特徴点を算出し、
前記補填手段は、前記算出した前記追跡先特徴点が前記追跡範囲を外れる場合、前記追跡範囲から外れた追跡先特徴点を破棄して、前記追跡範囲のなかで前記抽出手段にて抽出された新規特徴点を追跡先特徴点として前記追跡範囲のなかに補填することを特徴とする請求項1に記載の画像処理装置。 - 前記範囲設定手段は、前記フレームの画像の読み出し順序の設定に応じて、前記追跡範囲を設定することを特徴とする請求項9に記載の画像処理装置。
- 前記範囲設定手段は、前記フレームの画像の読み出し順序の設定に応じて、前記追跡範囲を前記フレームの画像範囲よりも狭めるように設定することを特徴とする請求項10に記載の画像処理装置。
- 前記範囲設定手段は、前記フレームの画像の読み出し順序の設定が、前記画像の水平方向への読み出し順序の設定である場合、前記水平方向への読み出し順序の設定に応じて、前記画像の垂直方向で前記追跡範囲を前記狭めるように設定することを特徴とする請求項11に記載の画像処理装置。
- 前記範囲設定手段は、前記フレームの画像の読み出し順序の設定が、前記画像の垂直方向への読み出し順序の設定である場合、前記垂直方向への読み出し順序の設定に応じて、前記画像の水平方向で前記追跡範囲を前記狭めるように設定することを特徴とする請求項11に記載の画像処理装置。
- 前記画像の読み出し順序の設定は、前記フレームの画像を撮像する撮像手段からの読み出し順序の設定であることを特徴とする請求項9から13の何れか1項に記載の画像処理装置。
- 複数の追跡先特徴点間の距離を算出する距離算出手段を、さらに有し、
前記算出手段は、前記追跡先特徴点間で算出された前記距離に基づいて前記追跡先特徴点を算出し、
前記補填手段は、前記追跡先特徴点間で算出された前記距離が所定の閾値未満である場合に、前記距離が算出された2点の追跡先特徴点のうち一方を破棄し、前記抽出手段にて抽出された新規特徴点を追跡先特徴点として所定の領域区分のなかに補填することを特徴とする請求項1に記載の画像処理装置。 - 前記破棄される追跡先特徴点は、前記算出された距離が前記閾値未満となっている2点の追跡先特徴点の、特徴値と座標位置との少なくとも一方に基づいて、決定されることを特徴とする請求項15に記載の画像処理装置。
- 前記閾値は、前記動きベクトルを検出するのに用いる矩形領域の大きさに基づいて決定された値であることを特徴とする請求項15または16に記載の画像処理装置。
- 前記閾値は、複数の追跡先特徴点の座標位置に基づいて決定された値であることを特徴とする請求項15または16に記載の画像処理装置。
- 前記分割された複数の領域を追跡領域区分と非追跡領域区分とに区分けする区分手段を、さらに有し、
前記検出手段は、前記追跡領域区分では前記追跡先特徴点に基づいて動きベクトルを検出し、前記非追跡領域区分では前記抽出手段にて抽出された新規特徴点に基づいて動きベクトルを算出し、
前記補填手段は、前記追跡先特徴点が前記非追跡領域区分のなかにある場合には前記追跡先特徴点を破棄して、前記抽出手段により抽出された前記新規特徴点を補填することを特徴とする請求項1に記載の画像処理装置。 - 前記補填手段は、前記追跡領域区分から前記抽出手段により抽出された前記新規特徴点を前記補填することを特徴とする請求項19に記載の画像処理装置。
- 前記非追跡領域区分は、フレームの画像範囲の下部の領域、左部の領域、上部の領域、右部の領域の、少なくとも一つである、ことを特徴とする請求項19または20に記載の画像処理装置。
- 前記非追跡領域区分は、フレームの画像範囲内に分散して配置されることを特徴とする請求項19から21の何れか1項に記載の画像処理装置。
- 画像を複数の領域に分割する分割手段と、
前記複数に分割された各領域内で画像の特徴点を抽出する抽出手段と、
前記特徴点に基づくテンプレートマッチングにより動きベクトルを検出する検出手段と、
前フレームから検出された前記動きベクトルの値と特徴点とを基に、次のフレームの動きベクトル検出に用いられる追跡先特徴点を算出する算出手段と、
前記分割された複数の領域を第1の領域区分と第2の領域区分とに区分けする区分手段と、を有し、
前記検出手段は、前記追跡先特徴点が前記第1の領域区分と第2の領域区分の何れの領域区分に属するかに応じて、前記動きベクトルの検出のテンプレートマッチングに用いるテンプレートの大きさを決定することを特徴とする画像処理装置。 - 前記区分手段は、
画像読み出し順の終盤に読み出しが行われる領域区分を、前記第1の領域区分として設定し、
画像読み出し順の初期に読み出しが行われる領域区分を、前記第2の領域区分として設定することを特徴とする請求項23に記載の画像処理装置。 - 前記検出手段は、前記追跡先特徴点が前記第1の領域区分に属する場合に、前記テンプレートマッチングに用いるテンプレートの大きさを変更することを特徴とする請求項23または24に記載の画像処理装置。
- 前記分割された領域ごとに追跡先特徴点の数を計数する計数手段を有し、
前記検出手段は、前記分割された領域の追跡先特徴点が前記第1の領域区分に属し、且つ、前記領域について計数された追跡先特徴点の数が所定の閾値を超えた場合に、テンプレートマッチングを用いるテンプレートの大きさを小さく変更することを特徴とする請求項24または25に記載の画像処理装置。 - ベクトル検出の処理時間を算出する時間算出手段を有し、
前記検出手段は、前記算出された処理時間が所定の時間内に収まるようになるまで前記テンプレートの大きさの変更を繰り返すことを特徴とする請求項23から26の何れか1項に記載の画像処理装置。 - フレームの画像を複数の領域に分割する分割工程と、
前記複数に分割された各領域内で画像の特徴点を抽出する抽出工程と、
前記特徴点を基に動きベクトルを検出する検出工程と、
前フレームから検出された前記動きベクトルの値と特徴点とを基に、次のフレームの動きベクトル検出に用いられる追跡先特徴点を算出する算出工程と、
前記追跡先特徴点が予め定めた条件に該当する場合に、前記追跡先特徴点の少なくとも一部を破棄して、前記抽出工程にて抽出された新規特徴点を追跡先特徴点として補填する補填工程と、
を有することを特徴とする画像処理装置の画像処理方法。 - 画像を複数の領域に分割する分割工程と、
前記複数に分割された各領域内で画像の特徴点を抽出する抽出工程と、
前記特徴点に基づくテンプレートマッチングにより動きベクトルを検出する検出工程と、
前フレームから検出された前記動きベクトルの値と特徴点とを基に、次のフレームの動きベクトル検出に用いられる追跡先特徴点を算出する算出工程と、
前記分割された複数の領域を第1の領域区分と第2の領域区分とに区分けする区分工程と、を有し、
前記検出工程では、前記追跡先特徴点が前記第1の領域区分と第2の領域区分の何れの領域区分に属するかに応じて、前記動きベクトルの検出のテンプレートマッチングに用いるテンプレートの大きさを決定することを特徴とする画像処理装置の画像処理方法。 - コンピュータを、請求項1から27の何れか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017136410A JP2019020839A (ja) | 2017-07-12 | 2017-07-12 | 画像処理装置、画像処理方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017136410A JP2019020839A (ja) | 2017-07-12 | 2017-07-12 | 画像処理装置、画像処理方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019020839A true JP2019020839A (ja) | 2019-02-07 |
Family
ID=65354737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017136410A Pending JP2019020839A (ja) | 2017-07-12 | 2017-07-12 | 画像処理装置、画像処理方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019020839A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020253618A1 (zh) * | 2019-06-21 | 2020-12-24 | 苏宁云计算有限公司 | 一种视频抖动的检测方法及装置 |
CN112465050A (zh) * | 2020-12-04 | 2021-03-09 | 广东拓斯达科技股份有限公司 | 一种图像模板选择方法、装置、设备及存储介质 |
-
2017
- 2017-07-12 JP JP2017136410A patent/JP2019020839A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020253618A1 (zh) * | 2019-06-21 | 2020-12-24 | 苏宁云计算有限公司 | 一种视频抖动的检测方法及装置 |
CN112465050A (zh) * | 2020-12-04 | 2021-03-09 | 广东拓斯达科技股份有限公司 | 一种图像模板选择方法、装置、设备及存储介质 |
CN112465050B (zh) * | 2020-12-04 | 2024-02-09 | 广东拓斯达科技股份有限公司 | 一种图像模板选择方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9251589B2 (en) | Depth measurement apparatus, image pickup apparatus, and depth measurement program | |
JP5980294B2 (ja) | データ処理装置、撮像装置、およびデータ処理方法 | |
KR101634562B1 (ko) | 저해상도 비디오로부터 고해상도 비디오를 생성하는 방법 | |
JP6579868B2 (ja) | 画像処理装置、撮像装置、画像処理方法およびプログラム | |
JP6570296B2 (ja) | 画像処理装置、画像処理方法およびプログラム | |
US20210099646A1 (en) | Method and Apparatus for Detecting Subject, Electronic Device, and Computer Readable Storage Medium | |
JP7032871B2 (ja) | 画像処理装置及び画像処理方法、プログラム、記憶媒体 | |
CN110866486B (zh) | 主体检测方法和装置、电子设备、计算机可读存储介质 | |
US11836903B2 (en) | Subject recognition method, electronic device, and computer readable storage medium | |
US9942477B2 (en) | Image processing apparatus and method | |
US9842260B2 (en) | Image processing apparatus and image processing method of performing image segmentation | |
CN109257540B (zh) | 多摄镜头组的摄影校正方法及摄影装置 | |
JP2019020839A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP2019175112A (ja) | 画像処理装置、撮像装置、画像処理方法、及びプログラム | |
US20140152862A1 (en) | Image processing apparatus, image pickup apparatus, image pickup system, image processing method, and non-transitory computer-readable storage medium | |
JP6576179B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
US11847784B2 (en) | Image processing apparatus, head-mounted display, and method for acquiring space information | |
JP2019021990A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP7077115B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP2019192048A (ja) | 撮像装置 | |
JP2010039968A (ja) | オブジェクト検出装置及び検出方法 | |
JP2018180964A (ja) | 画像処理装置及び画像処理方法 | |
JP2018072941A (ja) | 画像処理装置、画像処理方法、プログラム、記憶媒体 | |
JP2020046744A (ja) | 画像処理装置、背景画像の生成方法およびプログラム | |
JP2018132946A (ja) | 視差算出装置 |