JP7077115B2 - Image processing equipment, image processing methods, and programs - Google Patents
Image processing equipment, image processing methods, and programs Download PDFInfo
- Publication number
- JP7077115B2 JP7077115B2 JP2018081147A JP2018081147A JP7077115B2 JP 7077115 B2 JP7077115 B2 JP 7077115B2 JP 2018081147 A JP2018081147 A JP 2018081147A JP 2018081147 A JP2018081147 A JP 2018081147A JP 7077115 B2 JP7077115 B2 JP 7077115B2
- Authority
- JP
- Japan
- Prior art keywords
- processing
- area
- subject
- image
- feature point
- 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.)
- Active
Links
Images
Landscapes
- Studio Devices (AREA)
- Image Analysis (AREA)
Description
本発明は、画像の被写体等の動きを検出して追跡する技術に関する。 The present invention relates to a technique for detecting and tracking the movement of a subject or the like in an image.
デジタルスチルカメラやデジタルビデオカメラ等の撮像装置においては、例えば、撮影された映像のフレーム画像間の動き量を検出して複数枚の各フレーム画像の位置合わせを行うことで、手ぶれ等による画像のぶれを補正することがある。フレーム画像間の動き量を検出する方法としては、例えば撮影されたフレーム画像から動き量を推定するような方法等が知られている。フレーム画像を用いて動き量を推定する方法は従来から種々提案されているが、その代表的なものとして、テンプレートマッチングによる動きベクトル検出がある。テンプレートマッチングでは、先ず、映像中の時間的に隣接した2枚のフレーム画像のうち一方を原画像とし、他方を参照画像とする。そして、原画像上に配置した所定の大きさの矩形領域をテンプレートブロックとし、参照画像の各位置において、テンプレートブロック内の画素値の分布との相関を求める。このとき、参照画像の中で最も相関が高くなる位置がテンプレートブロックの移動先であり、原画像上でのテンプレートブロックの位置を基準とした時の移動先への向きと移動量が動きベクトルとして検出される。 In an image pickup device such as a digital still camera or a digital video camera, for example, by detecting the amount of movement between frame images of a captured image and aligning each of a plurality of frame images, an image due to camera shake or the like can be obtained. May correct blur. As a method of detecting the amount of movement between frame images, for example, a method of estimating the amount of movement from a captured frame image is known. Various methods for estimating the amount of motion using a frame image have been conventionally proposed, and a typical example thereof is motion vector detection by template matching. In template matching, first, one of two temporally adjacent frame images in a video is used as an original image, and the other is used as a reference image. Then, a rectangular area of a predetermined size arranged on the original image is used as a template block, and a correlation with the distribution of pixel values in the template block is obtained at each position of the reference image. At this time, the position where the correlation is highest in the reference image is the movement destination of the template block, and the direction and movement amount to the movement destination when the position of the template block on the original image is used as a reference is used as the motion vector. Detected.
また、動きベクトルの検出率を向上させるための技術として、例えば、画像から特徴点を抽出し、その抽出した特徴点に基づいてテンプレートブロックを配置してテンプレートマッチングを行う技術が知られている。ただし、画像全体で特徴点抽出を行うと、特徴点の分布が不均一になることがある。このように特徴点の不均一な分布から得られた動きベクトルを画像のぶれ補正に使用した場合、特徴点の分布が集中した領域が主となるぶれ補正になってしまうことがある。これに対し、特許文献1には、画像を複数のグリッドに分割し、各グリッド内で画素ごとに特徴の大きさを表す特徴値を計算し、特徴値が最も大きい画素を該当グリッドの特徴点として抽出することで、特徴点の分布を略々均一にする技術が開示されている。 Further, as a technique for improving the detection rate of a motion vector, for example, a technique of extracting feature points from an image and arranging template blocks based on the extracted feature points to perform template matching is known. However, when feature point extraction is performed on the entire image, the distribution of feature points may become uneven. When the motion vector obtained from the non-uniform distribution of the feature points is used for the blur correction of the image, the region where the distribution of the feature points is concentrated may be the main blur correction. On the other hand, in Patent Document 1, an image is divided into a plurality of grids, feature values representing the size of features are calculated for each pixel in each grid, and the pixel with the largest feature value is the feature point of the corresponding grid. Disclosed is a technique for making the distribution of feature points substantially uniform by extracting as.
さらに、動きベクトルの検出率を向上させるための技術として、例えば、特徴点を追跡するような技術が知られている。例えば、特許文献2には、画像から抽出された特徴点の動きベクトルを、連続する複数のフレーム画像に渡って逐次検出することにより、特徴点の追跡を実現する技術が開示されている。ただし、特徴点追跡の際に、例えば特徴点が消失したり数が減ってしまったりして追跡に失敗してしまうことがある。このように追跡対象の特徴点が消失したり数が減ってしまったりした場合には、別の特徴点を追跡対象として設定する(補填する)ことが必要となる。その他にも、例えば特許文献3には、追跡対象の移動方向などから追跡の範囲を制限する技術が開示されている。 Further, as a technique for improving the detection rate of a motion vector, for example, a technique for tracking a feature point is known. For example, Patent Document 2 discloses a technique for realizing tracking of feature points by sequentially detecting motion vectors of feature points extracted from an image over a plurality of consecutive frame images. However, when tracking feature points, for example, the number of feature points may disappear or decrease, resulting in tracking failure. When the feature points of the tracking target disappear or the number decreases in this way, it is necessary to set (supplement) another feature point as the tracking target. In addition, for example, Patent Document 3 discloses a technique for limiting the range of tracking from the moving direction of the tracking target and the like.
ところで、動きベクトルの検出精度を更に高める手法として、例えば1つの画像に2つの処理領域を設定し、それら2つの処理領域に各々対応した動きベクトル検出部により多数の動きベクトルを検出するような手法もある。しかしながらこの手法を適用して特徴点追跡を行うようにした場合、例えば隣接する処理領域の境界を被写体が跨いで移動した際に、追跡対象となる特徴点が消失してしまうことになる。この場合、例えば特許文献3のように追跡対象の移動方向が分かっていたとしても特徴点の追跡が実施できなくなり、追跡性能が低下してしまうことになる。 By the way, as a method for further improving the motion vector detection accuracy, for example, two processing areas are set in one image, and a large number of motion vectors are detected by a motion vector detection unit corresponding to each of the two processing areas. There is also. However, when the feature point tracking is performed by applying this method, for example, when the subject moves across the boundary of the adjacent processing area, the feature point to be tracked disappears. In this case, for example, even if the moving direction of the tracking target is known as in Patent Document 3, the feature points cannot be tracked, and the tracking performance is deteriorated.
そこで、本発明は、動きベクトルの検出性能を向上させると共に、特徴点追跡の際の特徴点消失を防いで追跡性能をも向上可能にすることを目的とする。 Therefore, it is an object of the present invention to improve the detection performance of the motion vector, prevent the vanishing point disappearing at the time of tracking the feature point, and improve the tracking performance.
本発明の画像処理装置は、撮影された画像から被写体を検出する被写体検出手段と、前記画像に対して複数の処理領域を設定する設定手段と、前記処理領域ごとに対応して設けられ、前記対応した処理領域を複数に分けた抽出枠領域ごとに特徴点を抽出して前記特徴点を用いた動きベクトル検出を行い、前記特徴点と動きベクトルとを基に前記特徴点の追跡を行う処理手段と、前記被写体が前記処理領域の境界を跨いで移動する場合、前記移動する被写体の少なくとも移動先の処理領域に対応した処理手段が新たな特徴点を抽出する際の設定を制御する制御手段と、を有することを特徴とする。 The image processing apparatus of the present invention is provided with a subject detecting means for detecting a subject from a captured image, a setting means for setting a plurality of processing areas for the image, and a corresponding processing area for each of the processing areas. Processing in which feature points are extracted for each extraction frame area in which the corresponding processing area is divided into a plurality of areas, motion vector detection is performed using the feature points, and the feature points are tracked based on the feature points and the motion vector. When the subject moves across the boundary of the processing area, the means and the control means for controlling the setting when the processing means corresponding to at least the moving destination processing area of the moving subject extracts a new feature point. And, characterized by having.
本発明によれば、動きベクトルの検出性能を向上させると共に、特徴点追跡の際の特徴点消失を防いで追跡性能をも向上可能となる。 According to the present invention, it is possible to improve the detection performance of the motion vector, prevent the vanishing point disappearing at the time of tracking the feature point, and improve the tracking performance.
以下、本発明の好ましい実施の形態を、添付の図面に基づいて詳細に説明する。
図1は、本発明の実施形態の画像処理装置の一適用例であるデジタルカメラの概略構成を示す図である。
図1において、結像光学部101は、レンズ及び絞りなどを備えている。撮影の際、結像光学部101は、フォーカス調節及び露出調節を行い、撮像素子102に光学像を結像させる。
撮像素子102は、光学像を電気信号(アナログ画像信号)に変換する光電変換機能を有し、CCDやCMOSセンサ等で構成される。
A/D変換部103は、撮像素子102からのアナログ画像信号をデジタル画像信号に変換する。
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.
FIG. 1 is a diagram showing a schematic configuration of a digital camera which is an application example of the image processing apparatus according to the embodiment of the present invention.
In FIG. 1, the imaging
The
The A /
DRAM(メモリ)107は、データ等を記憶するメモリであり、所定枚数の静止画像や所定時間分の動画像、音声等のデータや、CPU112の動作用の定数、展開されたプログラム等を格納するのに十分な記憶容量を備える。本実施形態の場合、DRAM107は、少なくとも、後述するテンプレートマッチング処理における原画像と参照画像とを記憶可能となされている。後述する動きベクトル検出が行われる場合、原画像と参照画像は時間軸上で隣接するフレーム画像であり、例えば参照画像が現在のフレーム画像(現フレーム)である場合、原画像は参照画像に対して時間的に前のフレーム画像(前フレーム)である。
メモリ制御部106は、CPU112或いはデータ転送部105からの指示に応じて、DRAM107に対するデータ書き込みや読み出しを行う。
ROM109は、電気的に消去・記録可能なメモリであり、EEPROM等が用いられる。ROM109には、CPU112の動作用の定数、プログラム等が記憶される。
不揮発性メモリ制御部108は、CPU112からの指示に応じて、ROM109(不揮発性メモリ)に対するデータの書き込みや読み出しを行う。
The DRAM (memory) 107 is a memory for storing data and the like, and stores a predetermined number of still images, moving images for a predetermined time, data such as audio, constants for operation of the
The
The
The non-volatile
CPU112は、画像処理装置全体(デジタルカメラ全体)の制御を司るマイクロコンピュータ等で構成され、各部に対して動作指示を行い、各種の制御処理を実行する。CPU112は、バス114を介して、画像処理部104、データ転送部105、メモリ制御部106、不揮発性メモリ制御部108、表示制御部110、操作部113、撮像素子102を制御する。CPU112は、ROM109に格納されているプログラムを実行することにより各部の制御や処理を実現する。
The
バス114は、システムバスであり、バス115は画像データバスである。
表示部111は、液晶モニタ等からなり、表示制御部110により制御され、各種画像やユーザインターフェース画面等を表示する。
操作部113は、ユーザーにより操作されるスイッチやボタン等を含み、電源のオン/オフ、シャッターのオン/オフ等の操作等に使用される。
ジャイロセンサ116は、カメラの姿勢(横位置、縦位置など)や動き方向を検出し、CPU112へ通知する。ジャイロセンサ116から動き等の検出信号を受け取ることで、CPU112は、手ぶれ等に起因するカメラのぶれ方向やぶれ量等を算出することも可能である。
The
The
The
The
画像処理部104は、各種画像処理を行う回路やプロセッサー、バッファメモリ等から構成されている。また本実施形態の場合、画像処理部104は、1つの撮影画像に対して設定された複数の処理領域を、それぞれに対応して設けられた動きベクトル検出部により処理し、動きベクトル検出および特徴点追跡を行う機能を備えている。ここで、特徴点と動きベクトルを基に被写体追跡等を行う場合において、多数の動きベクトルを精度良く検出でき、また多数の特徴点を追跡できれば、被写体の追跡精度の向上を図ることができる。一方で、動画等のリアルタイム処理において、1つの動きベクトル検出部で検出できる動きベクトル数には限りがある。そこで本実施形態では、1つの撮影画像について複数の処理領域を設定し、各処理領域をそれぞれ個々に対応した動きベクトル検出部にて処理することで、動きベクトルの検出精度を向上させつつ、多数の特徴点を精度良く追跡することを実現可能としている。このため、本実施形態の画像処理部104は、被写体検出部123と、第1のベクトル検出部121および第2のベクトル検出部122の2つのベクトル検出部を備えている。被写体検出部123は、撮像された画像から、被写体の顔部分や物体部分などの特徴量や動き量を検出し、それらを基に、主となる被写体を検出する。第1のベクトル検出部121と第2のベクトル検出部122は、同一の機能を有し、各々独立して動きベクトル検出を行う。本実施形態の場合、1つの画像について第1の領域と第2の領域の2つの処理領域を設定し、第1のベクトル検出部121は第1の領域を、第2のベクトル検出部122は第2の領域を処理する。すなわち、画像処理部104は、第1の領域と第2の領域に対して並列して処理を行うことで、多数の特徴点と多数の動きベクトルを高い精度で検出可能とし、それらを基に特徴点追跡を行うことにより、追跡精度の向上を図っている。本実施形態の画像処理部104における処理領域の設定、特徴点の抽出、動きベクトルの検出、および特徴点追跡の詳細な説明は後述する。
The
データ転送部105は、データ転送を行う複数のDMAC(Direct Memory Access Controller)で構成されている。
画像処理部104やデータ転送部105は、ハードウェア構成であってもよいし、マイクロコンピュータ等が実行するソフトウェア構成により実現されてもよい。画像処理部104やデータ転送部105がマイクロコンピュータにより構成されている場合、それら画像処理部104やデータ転送部105の処理は、ROM109に格納されているプログラムを実行することにより実現される。
The
The
以下、画像処理部104の第1,第2のベクトル検出部121,122の構成およびデータ転送部105の動作について、図2~図9を参照して概要を説明する。その後、図10以降の各図を参照して本実施形態に係る詳細な構成と動作について説明する。なお、第1,第2のベクトル検出部121,122は同一の機能を有するため、以下、それらの区別が必要な場合を除き、ベクトル検出部とのみ表記する。
Hereinafter, the configuration of the first and second
図2は、ベクトル検出部(121,122)の概略構成および動作の説明に用いる図である。ベクトル検出部は、CPU112にて制御され、またデータ転送部105を介してメモリにアクセスして動きベクトル検出処理および特徴点追跡処理を実行する。このため、図2には、動きベクトル検出および特徴点追跡に係る機能構成の他に、それらに関連したCPU112の機能構成とデータ転送部105およびメモリの機能構成も示されている。図2において、動きベクトル検出および特徴点追跡に係る主要な構成は、マッチング画像生成部201、特徴点算出部202、マッチング処理部203、精度判定部204、追跡先決定部205である。また図2において、CPU112に含まれる機能構成は処理領域設定部260であり、データ転送部105に含まれる機能構成はRDDMACa221、RDDMACb222、WRDMAC231となっている。RDDMACa221、RDDMACb222は、DRAM107に対してデータの読み出しを行う際のDMAC機能を表し、WRDMAC231は、DRAM107に対してデータの書き込みを行う際のDMAC機能を表している。メモリとしては、DRAM107と図1には不図示のSRAM206が含まれる。
FIG. 2 is a diagram used for explaining the schematic configuration and operation of the vector detection unit (121, 122). The vector detection unit is controlled by the
図3は、ベクトル検出部が、データ転送部105を介してDRAM107からグリッド毎に画像データを読み出して特徴点を抽出する際の各グリッドの配置および特徴点と、テンプレートマッチング領域及びサーチ領域との関係を示す図である。
テンプレートマッチングによる動きベクトル検出の際、データ転送部105は、DRAM107から、図3に示すようにフレーム画像を複数分割したグリッド毎に画像データを読み出して、ベクトル検出部に転送する。各グリッドのサイズは予め設定されており、また、フレーム画像から分割される各グリッドの個数は水平,垂直方向について予め設定された個数となされている。フレーム画像を複数分割したグリッドには、特徴点の抽出およびテンプレートマッチングに用いられる抽出枠領域としてのグリッドと、特徴点抽出は実施されないがテンプレートマッチングには使用される非抽出枠領域としてのグリッドとがある。図3の例では、図中の白色のグリッド302が、特徴点抽出が行われる抽出枠領域としてのグリッドである。これら特徴点抽出が行われる各グリッド302からなるグリッド群の周囲には周辺グリッド301が配置される。周辺グリッド301は、特徴点抽出は実施されないが、テンプレートマッチングでは使用される、非抽出枠領域としてのグリッドである。
FIG. 3 shows an arrangement and feature points of each grid when the vector detection unit reads image data for each grid from the
At the time of motion vector detection by template matching, the
ベクトル検出部は、抽出枠領域のグリッド302内で画像の特徴の大きさを表す特徴値を画素毎に計算し、特徴値が最も大きい画素を、該当グリッド302の特徴点303として取得する。これにより、各グリッド302につき一つの特徴点303が取得される。また、そのグリッド302の特徴点303の特徴量は、特徴点303となされた画素の特徴値に相当する。そして、ベクトル検出部は、特徴点303を中心として、予め設定されたサイズの矩形領域をテンプレート領域304として決定する。ベクトル検出部は、これらグリッド302毎に得られた特徴点303とテンプレート領域304のデータをDRAM107に格納する。DRAM107に格納されたテンプレート領域304は、テンプレートマッチングにおける原画像(前フレーム)のテンプレート領域304として用いられる。そして、ベクトル検出部は、テンプレートマッチングにおける参照画像(現フレーム)のグリッド302に対して、前フレーム内で対応した位置のグリッド302から得られたテンプレート領域304を用いたサーチを行う。
The vector detection unit calculates a feature value representing the size of the feature of the image in the
このサーチの際、ベクトル検出部は、現フレーム(参照画像)のグリッド302内において、特徴点303を中心として、テンプレート領域304より大きく予め設定されたサイズの矩形領域を、サーチ領域305として設定する。ベクトル検出部は、テンプレート領域304の画像を用い、サーチ領域305内を順に走査することでテンプレートマッチングを行う。テンプレートマッチングの際の走査手法は公知の技術であるためその詳細な説明は省略する。テンプレートマッチングの際、ベクトル検出部は、テンプレート領域304内の画素値と、サーチ領域305内でテンプレート領域304と同じ大きさの矩形領域内の画素値との相関を求める相関演算処理を行う。そして、ベクトル検出部は、現フレームのグリッド302のサーチ領域305の中で、前フレームのグリッド302のテンプレート領域304と最も相関が高い矩形領域の位置を、そのテンプレート領域304の移動先として検出する。さらに、ベクトル検出部は、前フレームのグリッド302内のテンプレート領域304の位置を基準位置とし、その基準位置に対し、現フレームのグリッド302のサーチ領域305内におけるテンプレート領域304の移動先の向きと移動量を求める。ベクトル検出部は、このようにして求めた向きと移動量を、グリッド302におけるベクトル値として検出する。
At the time of this search, the vector detection unit sets a rectangular area having a preset size larger than the
図4には、図2に示されたデータ転送部105の各DMAC(221,222,231)機能によるグリッド分割から、ベクトル検出部における特徴点と動きベクトルに基づく追跡先特徴点算出までの処理のフローチャートを示す。以下、図4のフローチャートを参照しながら、図2に示したベクトル検出部の構成とデータ転送部105のデータ転送動作について、より詳細な説明を行う。なおこのフローチャートの処理は、ハードウェア構成により実行されてもよいし、マイクロコンピュータ等が実行するプログラムに基づくソフトウェア構成により実現されてもよく、一部がハードウェア構成で残りがソフトウェア構成により実現されてもよい。マイクロコンピュータ等が実行するプログラムは、例えばROM109に格納されていてもよいし、不図示の外部メモリ等の記録媒体から取得されてもよく、或いは不図示のネットワーク等を介して取得されてもよい。以下の説明では、各処理のステップS400~ステップS409をS400~S409と略記する。これらのことは後述する他のフローチャートにおいても同様であるとする。
In FIG. 4, processing from grid division by each DMAC (221, 222, 231) function of the
先ずS400において、CPU112は、ジャイロセンサ116からの検出情報や被写体検出部123からの情報を統合する。そして、CPU112は、処理領域設定部260における処理領域設定として、第1,第2のベクトル検出部121,122で各々独立して動きベクトル検出処理と特徴点追跡が行われる処理領域を設定する。なお、処理領域の設定方法の詳細については、後述する第1の実施形態及び第2の実施形態の項目で説明する。
First, in S400, the
次にS401において、データ転送部105のRDDMACa221は、バス115を介し、DRAM107から、動きベクトル検出対象となる現フレームの入力画像データ241を読み出す。この時、データ転送部105のRDDMACa221は、図3に示したグリッド302および周辺グリッド301のグリッド単位毎に画像データを読み出す。なお、入力画像データ241は、画像処理部104で既に各種画像処理が施された後のデータである。そして、RDDMACa221は、グリッド単位毎に読み出された入力画像データ241を、ベクトル検出部のマッチング画像生成部201および特徴点算出部202に出力する。また、RDDMACa221は、それぞれ読み出したグリッドの座標位置を示すグリッド座標情報252を、後述する追跡先決定部205に送る。S401の後は、マッチング画像生成部201にて行われるS402の処理と、特徴点算出部202にて行われるS404の処理に移行する。
Next, in S401, the RDDMACa221 of the
S402に移行すると、マッチング画像生成部201は、動きベクトル検出のためのテンプレートマッチングに使用するマッチング用画像データ242を生成し、データ転送部105のWRDMAC231に出力する。具体的には、マッチング画像生成部201は、バンドパスフィルタ回路であり、テンプレートマッチング処理に不要な、画像信号の高周波成分と低周波成分を除去して、マッチング用画像データ242を生成する。S402の後は、データ転送部105のWRDMAC231にて行われるS403の処理に移行する。
Upon shifting to S402, the matching
S403に移行すると、WRDMAC231は、バス115を介し、DRAM107に対して、マッチング画像生成部201から送られてきたマッチング用画像データ242を書き込む。このマッチング用画像データ242は、現フレームから生成されたデータであり、テンプレートマッチングの際に参照される画像データである。また、DRAM107には、現フレームに対して時間軸上で一つ前のフレーム画像から生成されたマッチング用画像データ243も格納されている。このマッチング用画像データ243は、前フレームにおいて生成されたデータであり、テンプレートマッチングにおける原画像データである。S403の後は、データ転送部105のRDDMACb222にて行われるS405の処理に移行する。
Upon shifting to S403, the
特徴点算出部202にて行われるS404の処理は、前述したS402及びその後のS403の処理と並列に行われる。S404において、特徴点算出部202は、現フレームについて新規特徴点を算出する。
The processing of S404 performed by the feature
図5には、特徴点算出部202の構成例を示す。特徴点算出部202は、図5に示すように、特徴フィルタ部501、特徴評価部502、特徴点決定部503を有する。
特徴フィルタ部501は、バンドパスフィルタ、水平微分フィルタ、垂直微分フィルタ、平滑化フィルタなど、複数のフィルタから構成される。特徴フィルタ部501は、バンドパスフィルタにより画像データから不要な高周波成分と低周波成分を除去した後、水平方向の微分フィルタ処理と垂直方向の微分フィルタ処理を施す。さらに、特徴フィルタ部501は、それら水平方向と垂直方向の微分フィルタ処理を施したデータに対して、平滑化フィルタ処理を施す。これら水平,垂直方向について各々微分フィルタ処理と平滑化フィルタ処理が施されたデータは、特徴評価部502に送られる。
FIG. 5 shows a configuration example of the feature
The
特徴評価部502は、特徴フィルタ部501で処理されたグリッドの画像から、2つのエッジの交点の画素や、曲率が極大となっている曲線部分の点の画素のように、周辺の各画素の微分値が多方向に大きくなっている画素の値を、特徴値として算出する。なお、グリッド内に、2つのエッジの交点や曲率が極大となっている曲線部分の点等が存在していない場合には、特徴値は算出されない。以下、グリッドから特徴点を検出する方法の一例として、Shi and Tomasiの手法を例に挙げて説明する。Shi and Tomasiについては公知の手法であるため、ここでは概要のみ説明する。
From the image of the grid processed by the
特徴評価部502は、特徴フィルタ部501により水平,垂直方向に各々微分フィルタ処理を施した画素の値から、自己相関行列Hを作成する。自己相関行列Hの式は、式(1)にて表される。
The
式(1)において、Ixは水平微分フィルタが施された後の画素の値、Iyは垂直微分フィルタが施された後の画素の値であり、自己相関行列Hは、ガウシアンフィルタGを畳み込むことで求められる。そして、特徴評価部502は、式(2)に示すShi and Tomasiの特徴評価式により、特徴値を求める。なお、式(2)に示したShi and Tomasiの特徴評価式は、式(1)の自己相関行列Hの固有値λ1、λ2のうち小さい方の固有値を特徴値とすることを表している。
In the equation (1), Ix is the value of the pixel after the horizontal differential filter is applied, Iy is the value of the pixel after the vertical differential filter is applied, and the autocorrelation matrix H convolves the Gaussian filter G. Is sought after. Then, the
Shi and Tomasi=min(λ1,λ2) 式(2) Shi and Tomasi = min (λ1, λ2) Equation (2)
特徴評価部502によりグリッド毎に求められた特徴値のデータは、特徴点決定部503に送られる。
特徴点決定部503は、グリッドから特徴評価部502により画素毎に算出された特徴値の中で最も大きい値を持つ画素を、該当グリッドの特徴点として決定する。なお、特徴評価部502にて特徴値が算出されなかった場合には、特徴点決定部503では、そのグリッドの特徴点は取得されない。そして、グリッドにおいて取得された特徴点の座標情報は、特徴点決定部503が備えているメモリに格納される。本実施形態において、特徴点の座標は、グリッドの左上端の座標(x,y)を原点(0,0)とした場合の相対座標(PX,PY)により表される。なお、特徴点の座標は、相対座標(PX,PY)の他に、フレーム画像内における画素位置を表す座標で表現されてもよい。また、特徴点決定部503が備えているメモリは、前フレームの各グリッドで決定された特徴点の座標情報と、現フレームの各グリッドで決定された特徴点の座標情報とを格納可能な容量を有している。特徴点決定部503に格納された特徴点の座標情報のうち、前フレームのグリッドにおける特徴点の座標情報251は、後述するマッチング処理部203でテンプレートマッチング処理が開始される際にRDDMACb222に出力される。ただし、最初のテンプレートマッチング処理では、前フレームから追跡先の特徴点座標を算出することができないため、全て新規の特徴点座標を用いた処理が実施されることになる。
The feature value data obtained for each grid by the
The feature
図4のフローチャートに説明を戻す。S404の後は、データ転送部105のRDDMACb222にて行われるS405の処理に移行する。
S405において、RDDMACb222は、DRAM107からテンプレート領域304とサーチ領域305の画像データを読み出す。具体的には、RDDMACb222は、前フレームで算出された座標情報251とグリッド座標情報252を基に、マッチング用画像データ243から、特徴点303を中心としたテンプレート領域304の画像データ254を読み出す。また、RDDMACb222は、前フレームで算出された座標情報251とグリッド座標情報252を基に、マッチング用画像データ242から、特徴点303を中心としたサーチ領域305の画像データ253を読み出す。そして、RDDMACb222は、サーチ領域305の画像データ253とテンプレート領域304の画像データ254を、マッチング処理部203へ出力する。S405の後は、ベクトル検出部のマッチング処理部203にて行われるS406の処理に移行する。
The explanation is returned to the flowchart of FIG. After S404, the process proceeds to the process of S405 performed by the RDDMACb222 of the
In S405, the RDDMACb222 reads the image data of the
S406において、マッチング処理部203は、サーチ領域の画像データ253とテンプレート領域の画像データ254とを用い、それら画像の画素毎に相関値を算出する相関演算を行い、その相関値からベクトル値を算出する。具体的には、マッチング処理部203は、相関値として、各画素の差分絶対値和(Sum of Absolute Difference、以下SADと略す。)を求める。マッチング処理部203がSADの演算により相関値S_SADを求める際の演算式を式(3)に示す。
In S406, the matching
なお、式(3)において、f(i,j)はテンプレート領域内の座標(i,j)における画素値を表し、g(i,j)はサーチ領域内において相関値算出の対象となる矩形領域内の各画素値を表している。サーチ領域内で相関値算出の対象となる矩形領域とは、テンプレート領域と同じサイズの領域であり、テンプレートマッチングの際にサーチ領域内で左上端部から順に走査される領域である。以下、サーチ領域内で相関値算出の対象となる矩形領域を「相関値算出領域」と表記する。マッチング処理部203は、それらテンプレート領域の画素値f(i,j)と相関値算出領域の画素値g(i,j)の差の絶対値を計算して、その総和を求めることにより、相関値S_SADを求める。なお、この時に用いられる画素値は例えば輝度値である。この相関値S_SADは、その値が小さいほど、両領域の画像間の輝度値の差分が小さいこと、つまり、テンプレート領域の画像とサーチ領域内の相関値算出領域の画像のテクスチャが類似していることを表す。ここでは、SADにより相関値を求める例を挙げたが、これに限るものではなく、例えば差分二乗和(SSD)や正規化相互相関(NCC)等の他の相関値を用いてもよい。
In the equation (3), f (i, j) represents a pixel value at the coordinates (i, j) in the template area, and g (i, j) is a rectangle to be calculated for the correlation value in the search area. Represents each pixel value in the area. The rectangular area for which the correlation value is calculated in the search area is an area having the same size as the template area, and is an area scanned in order from the upper left end portion in the search area during template matching. Hereinafter, the rectangular area for which the correlation value is calculated in the search area is referred to as a “correlation value calculation area”. The matching
そして、マッチング処理部203は、相関値が最小値となる座標位置を求める。相関値が最小値となる座標位置は、現フレームのグリッドのサーチ領域の中で、前フレームのグリッドのテンプレート領域と最も相関が高い矩形領域の位置であると考えられる。さらに、サーチ領域の中でテンプレート領域と最も相関が高い矩形領域の位置は、前フレームのテンプレート領域が、現フレーム内では何れの位置になっているのかを示す移動先を表している。マッチング処理部203は、前フレームのグリッド内のテンプレート領域の位置を基準位置とし、その基準位置に対し、前述の移動先の向きと移動量を、グリッドにおけるベクトル値とする。そして、マッチング処理部203は、ベクトル値および相関値情報255を、精度判定部204に出力する。
Then, the matching
精度判定部204は、S407の処理として、前フレームのグリッドのテンプレート領域や現フレームのグリッドのサーチ領域の画像が、動きベクトル検出に適した画像であるか否かを判定する。具体的には、S407において、精度判定部204は、S406で算出された画素毎の相関値情報255を用いて、それら相関値の最大値、最小値、平均値、極小値を求める。そして、精度判定部204は、それら相関値の最大値、最小値、平均値、極小値に基づいて、低コントラスト判定、画素値の最大値突出判定、繰り返しパターン判定を行う。
As the process of S407, the
図6(a)~図6(d)には、相関値の最大値、最小値、平均値、極小値による、低コントラスト判定、画素値の最大値突出判定、繰り返しパターン判定と、画素値との関係をグラフとして示している。ただし、相関値が小さいほど画像間の類似度は高いことになるため、図6(a)~図6(d)における画素値の最大値は相関値では最小値を表し、画素値の最小値は相関値では最大値を表し、画素値の極大値は相関値では極小値を表すことになる。 6 (a) to 6 (d) show a low contrast determination based on the maximum value, a minimum value, an average value, and a minimum value of the correlation value, a maximum value protrusion determination of the pixel value, a repeat pattern determination, and a pixel value. The relationship between is shown as a graph. However, the smaller the correlation value, the higher the similarity between the images. Therefore, the maximum value of the pixel values in FIGS. 6 (a) to 6 (d) represents the minimum value in the correlation value, and the minimum value of the pixel values. Represents the maximum value in the correlation value, and the maximum value of the pixel value represents the minimum value in the correlation value.
精度判定部204は、低コントラスト判定において、相関値算出領域内の相関値の最大値と最小値の差分が、予め設定されている閾値よりも小さい場合、その相関値算出領域内は低コントラストであると判定する。また、精度判定部204は、画素値の最大値突出判定では、相関値算出領域内の相関値の最小値がどれだけ際立っているかを判定する。例えば、画素値の最大値と平均値の差分と、画素値の最大値と最小値の差分とを除算した値が、予め設定されている閾値よりも小さい場合、精度判定部204は、相関値算出領域内は低ピークであると判定する。一方、画素値の最大値と平均値の差分と、画素値の最大値と最小値の差分とを除算した値が、閾値よりも大きい場合、精度判定部204は、相関値算出領域内は高ピークであると判定する。また、精度判定部204は、繰り返しパターン判定において、相関値算出領域内の画素値の最小値と極小値の差分が、予め設定されている閾値よりも小さい場合には、繰り返しパターンであると判定する。
In the low contrast determination, the
図6(a)は、精度判定部204における低コントラスト判定、画素値の最大値突出判定、繰り返しパターン判定が、それぞれ良好な場合の例を挙げている。これに対し、図6(b)は、低コントラスト判定において低コントラストであると判定される例を示しており、図6(a)の例に比べて図6(b)では、画素値の最大値と最小値の差が少ない。図6(c)は、画素値の最大値突出判定において低ピークであると判定される例を示しており、図6(a)の例に比べて図6(c)では、画素値の最大値と平均値の差分と、画素値の最大値と最小値の差分との除算値が小さい。図6(d)は、繰り返しパターン判定において繰り返しパターンであると判定される例を示しており、図6(a)の例に比べて図6(d)では、画素値の最大値と極大値の差分が小さい。
FIG. 6A gives an example in which the
精度判定部204は、前述のような低コントラスト判定、最大値突出判定、繰り返しパターン判定を各グリッドについて行う。そして、精度判定部204は、低コントラスト、最大値突出、繰り返しパターンの何れかにも該当しないと判定した場合、テンプレート領域とサーチ領域の画像は、動きベクトル検出に適した画像であると判定する。一方、精度判定部204は、低コントラスト、最大値突出、繰り返しパターンの何れかであると判定した場合には、テンプレート領域とサーチ領域の画像は、動きベクトル検出に適さない画像であると判定する。
The
そして、CPU112は、S408において、低コントラスト、低ピーク、繰り返しパターンの判定結果を表す判定情報およびベクトル情報256を、SRAM206に送って書き込ませる。
次に、S409の処理として、追跡先決定部205では、次フレームのテンプレートマッチング処理に用いるための、後述する追跡先特徴点を決定する処理を行う。
Then, in S408, the
Next, as the process of S409, the tracking
図7は、追跡先決定部205における追跡先特徴点決定処理の流れを示すフローチャートである。以下、図7のフローチャートを参照しながら、追跡先特徴点の決定処理の概要を説明する。
S701において、追跡先決定部205は、SRAM206から入力された現フレームのベクトル情報と、現フレームの追跡先特徴点の座標とを基に、次フレームの追跡先特徴点の座標を算出する。つまり、追跡先決定部205は、現フレームの追跡先特徴点の座標をベクトル始点とし、ベクトル情報のベクトル値で表される方向と大きさに相当する分だけ移動した先のベクトル終点の座標を、次フレームの追跡先特徴点の座標として決定する。
FIG. 7 is a flowchart showing the flow of the tracking destination feature point determination process in the tracking
In S701, the tracking
次にS702において、追跡先決定部205は、SRAM206から入力された判定情報がOK判定であったか否かを判断する。つまり、追跡先決定部205は、S701で算出した追跡先特徴点が次フレームのテンプレートマッチング処理に使用可能である有効な追跡先特徴点であったかどうかを判定する。SRAM206から入力された判定情報は、前述したように、低コントラスト判定で低コントラストと判定されるか、画素値の最大値突出判定で低ピークと判定されるか、繰り返しパターン判定で繰り返しパターンであると判定された場合にはNG判定となる。一方、それらの何れにも該当しない場合にはOK判定とされる。そして、追跡先決定部205は、S702において、判定情報がNG判定であった場合にはS704に遷移し、OK判定であった場合にはS703に遷移する。
Next, in S702, the tracking
S703に遷移した場合、追跡先決定部205は、S701で算出した追跡先特徴点座標が、フレームの画角内であるかどうかを判定する。具体的には追跡先決定部205は、追跡先特徴点座標を中心とするテンプレート領域が周辺グリッドの内側に収まっている場合にはフレーム画角内にあると判定(OK判定)してS705に遷移し、一方、収まっていない場合はNGと判定してS704に遷移する。
When transitioning to S703, the tracking
S704に遷移した場合、追跡先決定部205は、S702またはS703でNG判定された位置に該当する追跡先特徴点座標を破棄して、新規特徴点座標に置き換える。具体的には、追跡先決定部205は、破棄された追跡先特徴点が一番初めに新規特徴点として算出された位置の抽出枠領域のグリッドに該当する位置で算出された現フレームの新規特徴点座標で置き換える処理を行う。このS704の後、追跡先決定部205の処理は、S705に遷移する。
When the transition to S704 occurs, the tracking
S705に遷移すると、追跡先決定部205は、抽出枠領域のグリッド数分の全ての追跡先特徴点座標が算出されたか否かを判定する。そして、追跡先決定部205は、全ての追跡先特徴点座標が算出されたと判定した場合は図7のフローチャートの処理を終了し、一方、算出されていないと判定した場合にはS701に処理を戻して、S701以降の前述した処理を行う。
Upon transition to S705, the tracking
以上が、図4のフローチャートにおけるグリッド分割から動きベクトル検出および追跡先特徴点決定までの大まかな流れである。なお、図4のフローチャートでは、1フレーム分の処理を示しているが、ベクトル検出部とデータ転送部105は、毎フレームに対して同様のグリッド分割から動きベクトル検出および追跡先特徴点決定までの処理を行う。
The above is a rough flow from grid division in the flowchart of FIG. 4 to motion vector detection and tracking destination feature point determination. Although the flowchart of FIG. 4 shows the processing for one frame, the vector detection unit and the
次に、図8と図9(a)および図9(b)を参照し、特徴点追跡の概要と、動きベクトルの検出精度の向上を目的とした処理領域設定を行った場合の特徴点追跡で生ずる課題について説明する。
図8は、特徴点追跡処理の概略を示す図であり、前述した図3と同様の、抽出枠領域のグリッド1404、テンプレート領域1403、サーチ領域1406、周辺グリッド1405を示している。動きベクトル検出の際には、図8に示すように抽出枠領域のグリッド1404内で特徴点1401が算出され、テンプレート領域1403によるテンプレートマッチングが行われることでベクトル値1407が算出される。そして次のフレームの処理では、特徴点1401をベクトル始点とし、ベクトル値1407による方向と大きさ分だけ離れた点を追跡先特徴点1402とし、その追跡先特徴点1402を中心としたテンプレートマッチングが行われる。以後、複数フレームに渡って、前述同様の特徴点追跡が行われる。
Next, with reference to FIGS. 8 and 9 (a) and 9 (b), the outline of the feature point tracking and the feature point tracking when the processing area is set for the purpose of improving the detection accuracy of the motion vector. I will explain the problems that arise in.
FIG. 8 is a diagram showing an outline of the feature point tracking process, and shows the
ここで、動きベクトルの検出精度を向上させるために、1つの画像について複数の処理領域を設定し、それら複数の処理領域に各々対応して個別に設けたベクトル検出部により特徴点の抽出と動きベクトルの検出、および特徴点の追跡を行うとする。
図9(a)は、1つの画像を第1,第2の領域1502,1501の2つの処理領域に分け、第1の領域1502を第1のベクトル検出部で処理し、第2の領域1501を第2のベクトル検出部で処理する場合の抽出特徴点と追跡先特徴点を示した図である。このように第1,第2のベクトル検出部でそれぞれ処理を行う場合、第1,第2の領域1502,1501にはそれぞれ特徴点抽出が実施される抽出枠領域のグリッドと、特徴点抽出が実施されない周辺グリッドとが設定される。また、第1の領域1502と第2の領域1501には重なり領域1500が設けられる。そして、図9(a)に示すように、動きベクトルが例えば右方向へのベクトルであった場合、追跡先特徴点は右側に移動していくことになる。しかしながら、第1の領域1502の右端部の追跡先特徴点1510~1514までの追跡がされた場合、その更に右側の領域は、第1の領域1502外の第2の領域1501となる。この場合、第1の動きベクトル検出部では特徴点を追跡できず特徴点が消失することになり、特徴点追跡性能が低下してしまうことになる。
Here, in order to improve the detection accuracy of the motion vector, a plurality of processing areas are set for one image, and feature points are extracted and motion is extracted by a vector detection unit individually provided corresponding to each of the plurality of processing areas. It is assumed that the vector is detected and the feature points are tracked.
In FIG. 9A, one image is divided into two processing regions of the first and
図9(b)は、図9(a)と同様に、1つの画像に第1,第2の領域1502,1501の2つの処理領域が設定され、その画像内に例えば矢印1503に示すように右側に移動する被写体1504が写っている例を表している。つまり、図9(b)の例において、被写体1504は、第1の領域1502から、第1の領域1502と第2の領域1501との境界を跨いで、第2の領域1501に移動しているとする。また、第1のベクトル検出部により、第1の領域1502からは被写体1504を検出可能な優良な各特徴点1520~1527が抽出または追跡されているとする。しかしながら、各特徴点1520~1527は、被写体1504の移動に伴って右側に移動するため、重なり領域1500付近まで追跡された後は第1の領域1502から外れて消失してしまうことになる。このように被写体1504の移動を検出可能な優良な特徴点が存在していても、例えば被写体1504が第1の領域1502と第2の領域1501の境界を跨ぐ場合には、特徴点が消失してしまい、その結果、特徴点追跡性能が低下してしまうようになる。
In FIG. 9B, similarly to FIG. 9A, two processing regions of the first and
そこで、本実施形態では、被写体が処理領域の境界を跨いで移動することで特徴点が消失する場合、被写体の少なくとも移動元の処理領域に対応するベクトル検出部が、新たな特徴点を抽出する際の設定を制御し、新たな追跡先特徴点を設定(補填)し易くする。 Therefore, in the present embodiment, when the feature points disappear due to the subject moving across the boundary of the processing area, the vector detection unit corresponding to at least the processing area of the moving source of the subject extracts new feature points. It controls the setting of the time and makes it easy to set (supplement) a new tracking destination feature point.
<第1の実施形態>
以下、被写体が処理領域の境界を跨いで移動することで特徴点が消失する場合に、新たな追跡先特徴点を設定(補填)し易くするような処理を実施する第1の実施形態の画像処理装置について、図10から図13を参照しながら説明する。前述の図9(a)と図9(b)の例では1つの画像を左右方向(水平方向)に分けて処理領域を設定した例を挙げたが、以降の説明では画像を上下方向(垂直方向)に分けて処理領域を設定する例を挙げる。第1の実施形態に係る画像処理装置の構成および概略的な処理は前述の図1~図7で説明したのと同様である。
<First Embodiment>
Hereinafter, when the feature point disappears due to the subject moving across the boundary of the processing area, the image of the first embodiment is subjected to the processing for facilitating the setting (supplement) of the new tracking destination feature point. The processing apparatus will be described with reference to FIGS. 10 to 13. In the above-mentioned examples of FIGS. 9 (a) and 9 (b), an example in which one image is divided into the left-right direction (horizontal direction) and the processing area is set is given, but in the following description, the image is moved in the vertical direction (vertical direction). An example of setting the processing area separately for each direction) will be given. The configuration and schematic processing of the image processing apparatus according to the first embodiment are the same as those described with reference to FIGS. 1 to 7 above.
図10は、第1の実施形態に係る画像処理装置おいて、1つの画像を上下方向に分けるように処理領域を設定した場合の一例を示した図である。第1の実施形態の画像処理装置において、処理領域設定部260は、図10に示すように、撮影により得られた撮影画像805に対し、上下方向に分けた処理領域を設定する。なお図10の例では、被写体804とその周辺の動きベクトルを多く検出可能にするため、撮影画像805内で被写体804とその周辺の画像領域に対し、上側の第1の領域801と下側の第2の領域802の2つの処理領域を設定した例を示している。また図10には、被写体804が、矢印803に示すように上方向に動いていて、第1の領域801と第2の領域802との境界(以下、処理領域境界とする。)を跨るように移動する場合の例を示している。
FIG. 10 is a diagram showing an example of a case where a processing area is set so as to divide one image in the vertical direction in the image processing apparatus according to the first embodiment. In the image processing apparatus of the first embodiment, as shown in FIG. 10, the processing
図11(a)と図11(b)は、撮影画像に対する処理領域の設定と各処理領域内に設定されるグリッドの配置例とを示した図である。第1の実施形態の画像処理装置は、図11(a)に示すように撮影画像900に対して第1の領域901と第2の領域902を設定し、同様に、図11(b)に示すように撮影画像910に対して第1の領域911と第2の領域912を設定する。また、画像処理装置は、それら第1,第2の領域に対し、特徴点抽出が実施される抽出枠領域のグリッドと、特徴点抽出が実施されない周辺グリッドとを設定し、さらに、第1の領域と第2の領域との処理領域境界には前述同様に重なり領域が設けられる。図11(a)の例は、被写体903が第2の領域902内に存在していて、第1の領域901と第2の領域902の処理領域境界を未だ跨いでいない状態を表している。一方、図11(b)の例は、図11(a)では第2の領域912内に存在していた被写体913が、第1の領域911と第2の領域912の処理領域境界を跨いで、被写体913の位置まで移動した状態を表している。
11 (a) and 11 (b) are diagrams showing the setting of the processing area for the captured image and the arrangement example of the grid set in each processing area. The image processing apparatus of the first embodiment sets the
本実施形態の画像処理装置は、図11(b)に示すように、被写体913が処理領域境界を跨いで移動する場合、その移動後に被写体が出現する位置を予測し、その予測出現位置に対して抽出枠領域のグリッドを密に配置するようにグリッド配置の設定を制御する。 As shown in FIG. 11B, when the subject 913 moves across the boundary of the processing area, the image processing apparatus of the present embodiment predicts the position where the subject appears after the movement, and the predicted appearance position is reached. The grid layout setting is controlled so that the grid of the extraction frame area is densely arranged.
図12は、被写体が処理領域境界を跨ぐ位置に移動する際に、移動後の被写体位置を予測してグリッド配置を制御し、動きベクトルを検出するまでの処理の流れを示したフローチャートである。図12のS1001からS1005までは、移動後の被写体位置を予測してグリッド配置を制御するまでの処理ステップであり、これらの処理は図4のS400においてCPU112(処理領域設定部260を含む)により行われる。なお、図12のS1007の動きベクトル検出処理は、図4のS401以降の処理に相当する。 FIG. 12 is a flowchart showing the flow of processing until the motion vector is detected by predicting the subject position after the movement and controlling the grid arrangement when the subject moves to the position straddling the boundary of the processing area. S1001 to S1005 in FIG. 12 are processing steps until the subject position after movement is predicted and the grid arrangement is controlled, and these processes are performed by the CPU 112 (including the processing area setting unit 260) in S400 of FIG. Will be done. The motion vector detection process of S1007 in FIG. 12 corresponds to the process after S401 in FIG.
S1001において、CPU112は、画像処理部104の処理モードを、撮影画像を複数の処理領域に分けてそれぞれベクトル検出部で処理するモードに遷移させる。本実施形態の場合、画像処理部104は、撮影画像に対して第1,第2の領域を設定し、第1の領域を第1のベクトル検出部121で処理し、第2の領域を第2のベクトル検出部122で処理するモードに遷移する。
In S1001, the
次にS1002において、CPU112の処理領域設定部260は、被写体検出部123による被写体の検出情報に基づき、現時点における被写体の位置を表す座標を算出する。被写体の座標としては、被写体位置上にある追跡特徴点座標を用いるとする。複数の追跡特徴点がある場合には、処理領域境界に最も近い追跡特徴点の座標とする。その他にも、被写体位置上の追跡特徴点座標は、被写体の重心位置、複数の追跡特徴点位置の中間位置、最も特徴量の大きい追跡特徴点の座標等でもよい。図13は図10や図11(a)、図11(b)に示した被写体が移動している様子を表した図である。図13には、第2の領域1112から第1の領域1111の方向(下から上方向)に順に移動している途中の各フレームにおける被写体1101~1103を示している。図13の例では、被写体1102が現フレームの被写体を表し、被写体1101が現フレームの1V(垂直同期)前のフレームの被写体を、被写体1101が現フレームの1V後のフレームで予測される位置の被写体を表している。
Next, in S1002, the processing
次にS1003において、処理領域設定部260は、第1のベクトル検出部121および第2のベクトル検出部122がそれぞれ現フレームと1V前のフレームとから算出した動きベクトルを基に、被写体位置にある特徴点の移動量1104を算出する。なお、複数の追跡先特徴点から動きベクトルが算出される場合、被写体の移動量は、各動きベクトルの平均値、最頻値、中央値のいずれかで求めればよい。本実施形態では、算出した被写体の移動量1104を、1V後の予測移動量1105として使用する。その他にも、処理領域設定部260は、過去フレームの被写体移動量を記憶しておき、それら過去の移動量を加味して予測移動量1105を算出してもよい。
Next, in S1003, the processing
次にS1004において、処理領域設定部260は、S1002で算出した被写体位置と、S1003で算出した被写体の予測移動量とに基づき、次フレームで被写体が処理領域境界を跨ぐか否かを判定する。本実施形態の場合、上下方向に処理領域を設定するため、処理領域設定部260は、処理領域境界跨ぎの判定の際、処理領域境界の垂直座標Lyと、被写体の垂直座標Pyと、垂直方向の予測移動量Myを用いた下記の式(4)、式(5)による判定を行う。
Next, in S1004, the processing
Ly<(Py+My) 式(4)
Ly>(Py+My) 式(5)
Ly <(Py + My) equation (4)
Ly> (Py + My) Equation (5)
なお、式(4)は、被写体が下から上方向に移動して処理領域境界を跨ぐ場合(図13のように被写体1103が第2の領域1112から第1の領域1111に移動する場合)の判定式である。一方、式(5)は、被写体が上から下方向に移動して処理領域を跨ぐ場合(被写体が第1の領域から第2の領域に移動する場合)の判定式である。そして、処理領域設定部260は、S1004において、被写体が処理領域境界を跨ぐと判定した場合にはS1005へ遷移し、被写体が処理領域境界を跨がないと判定した場合にはS1006へ遷移する。
In the equation (4), when the subject moves from the bottom to the top and crosses the processing region boundary (when the subject 1103 moves from the
S1005に遷移すると、処理領域設定部260は、図11(b)に示したように、被写体913が処理領域境界を跨いで移動する移動先の第1の領域911と、被写体913が移動する前の移動元の第2の領域912とについてそれぞれグリッド配置を制御する。処理領域設定部260は、移動先の第1の領域911内で被写体913が移動すると予測される位置に対し、特徴点抽出が実施される抽出枠領域のグリッドの大きさを小さくし且つ密集させるようにグリッド配置を設定し、それら以外を周辺グリッドにする。ここで、被写体が上下方向(垂直方向)に移動した後に出現する予測出現位置をOyとすると、その予測出現位置Oyは下記の式(6)、式(7)で算出できる。
After transitioning to S1005, as shown in FIG. 11B, the processing
Oy=Ly-Py+My 式(6)
Oy=Py+My-Ly 式(7)
Oy = Ly-Py + My equation (6)
Oy = Py + My-Ly equation (7)
なお、式(6)は、被写体が下から上方向に移動して処理領域境界を跨ぐ場合の算出式である。一方、式(7)は、被写体が上から下方向に移動して処理領域境界を跨ぐ場合の算出式である。 The formula (6) is a calculation formula when the subject moves from the bottom to the top and straddles the processing area boundary. On the other hand, the formula (7) is a calculation formula when the subject moves from the top to the bottom and straddles the processing area boundary.
このように、本実施形態の画像処理装置は、被写体の予測出現位置に基づいて、特徴点抽出が実施される抽出枠領域のグリッドを細かく配置する。ここで、被写体が処理領域境界を跨ぐことによって移動先の処理領域で追跡対象の特徴点が消失した場合には、新たな特徴点を追跡対象の特徴点として設定する(補填する)ことが必要となる。本実施形態では、被写体の予測出現位置で特徴点抽出が実施される抽出枠領域のグリッドを細かく密に配置するように設定することで、移動先の処理領域で追跡対象となる特徴点が設定され易く(補填され易く)なるような補填のための設定制御を行う。そして、被写体の予測出現位置で細かく配置された抽出枠領域のグリッドでは、前述の図7のS704で説明した新規特徴点を用いた置き換え処理によって、新たな特徴点が設定される(つまり追跡対象の特徴点が補填される)。このように本実施形態において、消失した特徴点の補填は、処理領域境界を跨いで移動先に出現が予測される被写体領域に対応して密に配置した抽出枠領域のグリッドから得られる新規特徴点群の中の特徴点で置き換える処理により行われる。 As described above, the image processing apparatus of the present embodiment finely arranges the grid of the extraction frame region in which the feature point extraction is performed, based on the predicted appearance position of the subject. Here, when the feature point of the tracking target disappears in the processing area of the movement destination due to the subject straddling the boundary of the processing area, it is necessary to set (supplement) a new feature point as the feature point of the tracking target. It becomes. In the present embodiment, the feature points to be tracked are set in the processing area of the movement destination by setting the grid of the extraction frame area where the feature point extraction is performed at the predicted appearance position of the subject to be finely and densely arranged. The setting control for compensation is performed so that it is easy to be compensated (easily compensated). Then, in the grid of the extraction frame area finely arranged at the predicted appearance position of the subject, a new feature point is set (that is, a tracking target) by the replacement process using the new feature point described in S704 of FIG. 7 described above. The feature points of are compensated). As described above, in the present embodiment, the compensation of the disappeared feature points is a new feature obtained from the grid of the extraction frame area densely arranged corresponding to the subject area which is predicted to appear at the moving destination across the boundary of the processing area. It is performed by the process of replacing with the feature points in the point cloud.
一方、処理領域設定部260は、被写体913の移動元である第2の領域912については処理領域境界を跨ぐ被写体913を避けるような(特徴点抽出処理から外すような)グリッド配置とする。例えば図13に示したように、第2の領域912において処理領域境界を跨ぐ被写体913の領域については、特徴点抽出が実施されない周辺グリッドを設定する。これにより、第2の領域912を出ていく被写体913の位置に対応したグリッドでは、S704における新規特徴点による置き換え処理が行われないようになる。このように、本実施形態では、被写体の移動元の処理領域については処理領域境界を跨ぐ被写体を避けるようなグリッド配置とすることで、移動元の被写体にかかるグリッドから追跡対象の特徴点が抽出されないように設定する補填の制御が行われる。
On the other hand, the processing
図12のフローチャートに説明を戻す。
S1004で被写体913が処理領域境界を跨がないと判定されてS1006に遷移すると、処理領域設定部260は、図11(a)の例と同様に、第1,第2の領域901,902共に、処理領域全体で均等なグリッド配置とする。これにより、S704で説明した新規特徴点による置き換え処理は、該当する処理領域の画面全体より求められた新規特徴点群の中の特徴点により行われることになる。
The explanation is returned to the flowchart of FIG.
When it is determined in S1004 that the subject 913 does not cross the processing region boundary and the transition to S1006 occurs, the processing
前述したS1005またはS1006の後、CPU112は、画像処理部104の処理をS1007に遷移させ、図4のS401からS409の処理を実行させる。すなわち、S1007において、画像処理部104は、前述のように設定された第1の領域を第1のベクトル検出部121にて処理し、第2の領域を第2のベクトル検出部122にて処理する。
After the above-mentioned S1005 or S1006, the
以上説明したように、第1の実施形態の画像処理装置は、被写体が処理領域境界を跨いで移動する場合、被写体の移動先の処理領域において被写体が出現すると予測される領域には特徴点抽出を実施するグリッドを密集させて配置する。また、画像処理装置は、被写体の移動元の領域には特徴点抽出が実施されないグリッドを配置して、被写体領域から特徴点抽出を実施するグリッドを外す配置とする。これにより第1の実施形態の画像処理装置によれば、被写体の領域で検出される優良な特徴点が処理領域境界で消失したとしても、移動先の処理領域で新たな追跡対象の特徴点による追跡を継続できる確率が高まり、特徴点追跡性能を向上させることが可能となる。 As described above, in the image processing apparatus of the first embodiment, when the subject moves across the boundary of the processing area, feature points are extracted in the area where the subject is predicted to appear in the processing area to which the subject is moved. Arrange the grids that carry out the above densely. Further, the image processing device arranges a grid in which the feature point extraction is not performed in the area where the subject moves, and removes the grid from which the feature point extraction is performed from the subject area. As a result, according to the image processing apparatus of the first embodiment, even if the excellent feature points detected in the area of the subject disappear at the boundary of the processing area, the feature points of the new tracking target in the processing area of the moving destination are used. The probability that tracking can be continued increases, and it becomes possible to improve the feature point tracking performance.
前述した図12のフローチャートでは、被写体が処理領域境界を跨いだ瞬間のフレームのみS1005に分岐する例を挙げたが、被写体が複数V期間をかけて処理領域境界を跨ぐ場合、処理領域境界を跨ぐ複数V期間、S1005に分岐する制御としてもよい。また、被写体が処理領域境界を跨ぐのに合わせて、グリッド配置を細かく調整してもよい。 In the flowchart of FIG. 12 described above, an example is given in which only the frame at the moment when the subject crosses the processing area boundary is branched to S1005, but when the subject crosses the processing area boundary over a plurality of V periods, the processing area boundary is crossed. It may be controlled to branch to S1005 for a plurality of V periods. Further, the grid arrangement may be finely adjusted so that the subject straddles the boundary of the processing area.
なお、第1の実施形態では上下方向に処理領域を設定の例を挙げて説明したが、左右方向に処理領域を設定する場合も同様のグリッド配置制御を行うことができる。また本実施形態において、処理領域を設定する方向は、画像を撮影する撮影装置(カメラ)の位置情報と被写体の動き情報の少なくともいずれか、に基づいて設定される。例えばカメラの位置情報あるいは被写体の動き情報が変化した場合には、その変化後のカメラの位置情報と被写体の動き情報の少なくともいずれかに、基づいて処理領域を設定する方向を切り替えてもよい。そしてカメラの位置情報ならびに被写体の動き情報に基づいて、処理領域を設定する方向を切り替えた上で、図12に示したグリッド配置制御の処理に移行してもよい。 In the first embodiment, an example of setting the processing area in the vertical direction has been described, but the same grid layout control can be performed when the processing area is set in the horizontal direction. Further, in the present embodiment, the direction for setting the processing area is set based on at least one of the position information of the photographing device (camera) for capturing the image and the movement information of the subject. For example, when the position information of the camera or the movement information of the subject changes, the direction for setting the processing area may be switched based on at least one of the position information of the camera and the movement information of the subject after the change. Then, after switching the direction for setting the processing area based on the position information of the camera and the movement information of the subject, the process may shift to the grid arrangement control processing shown in FIG.
<第2の実施形態>
以下、第2の実施形態に係る画像処理装置における処理について図14と図15を参照して説明する。なお、第2の実施形態に係る画像処理装置の構成および主要な処理は前述の図1から図7で説明したのと同様である。第2の実施形態では、図4のS400で行われる処理領域設定と、S404で特徴点算出部202により行われる現フレームの新規特徴点算出、図7のS704で追跡先特徴点座標を新規特徴点の座標で置き換える処理について説明する。
<Second embodiment>
Hereinafter, the processing in the image processing apparatus according to the second embodiment will be described with reference to FIGS. 14 and 15. The configuration and main processing of the image processing apparatus according to the second embodiment are the same as those described with reference to FIGS. 1 to 7 above. In the second embodiment, the processing area setting performed in S400 of FIG. 4, the new feature point calculation of the current frame performed by the feature
図14は、第2の実施形態の画像処理装置において、撮影画像1200に対し第1の領域1201と第2の領域1202の処理領域を設定し、被写体1203が処理領域境界を跨ぐ場合のグリッド配置制御の事例を示した図である。図14の例においても前述同様に、第1の領域1201と第2の領域1202には、特徴点抽出が実施されるグリッドと、特徴点抽出が実施されない周辺グリッドが設定され、また重なり領域が設けられる。図14の例は、被写体1203が処理領域境界を跨いで第2の領域1202から第1の領域1201に入る例を示している。
FIG. 14 shows a grid arrangement in which the processing areas of the
第2の実施形態でも、被写体が処理領域の境界を跨いで移動する場合、移動先の処理領域で被写体が出現する位置を予測し、その出現予測位置に対して、追跡対象となる特徴点が設定され易く(補填され易く)なるような補填の設定制御を行う。また、第2の実施形態でも、移動元の処理領域では被写体領域からは追跡対象の特徴点として設定されない(補填されない)ようにする補填の制御を行う。ただし、第2の実施形態の場合、前述した第1の実施形態のように、被写体が処理領域境界を跨ぐか、跨がないかでグリッド配置を変更するようなことは行わない。 Also in the second embodiment, when the subject moves across the boundary of the processing area, the position where the subject appears in the destination processing area is predicted, and the feature point to be tracked with respect to the predicted appearance position is Compensation setting control is performed so that it is easy to set (easy to be compensated). Further, also in the second embodiment, compensation control is performed so that the processing area of the movement source is not set (compensated) as a feature point of the tracking target from the subject area. However, in the case of the second embodiment, unlike the first embodiment described above, the grid arrangement is not changed depending on whether or not the subject straddles the boundary of the processing area.
第2の実施形態では、被写体が処理領域境界を跨いで入る処理領域内の被写体領域を含むグリッドと、被写体が出て行く処理領域内で被写体領域を含むグリッドとにおいて算出される特徴点の特徴量を調整するような補填の設定制御を行う。図14の例の場合、第1の領域1201内のグリッド1204が、処理領域境界を跨いで入る被写体1203を含むグリッドであり、第2の領域1202内のグリッド1205が、処理領域境界を跨いで出て行く被写体1203を含むグリッドである。第2の実施形態の画像処理装置は、被写体1203が処理領域境界を跨ぐ場合に、それらグリッド1204およびグリッド1205において算出される特徴点の特徴量を調整する。
In the second embodiment, the features of the feature points calculated in the grid including the subject area in the processing area where the subject enters across the boundary of the processing area and the grid including the subject area in the processing area where the subject leaves. The compensation setting control is performed so as to adjust the amount. In the case of the example of FIG. 14, the
図15は、第2の実施形態の画像処理装置における特徴点の調整制御の流れを示すフローチャートである。以下、図15のフローチャートと、図4のS404とを参照して、第2の実施形態において各グリッドで求められる特徴点の調整制御について説明する。
S1301~S1304は、図12のS1001~S1004と概ね同じ処理であるため、その説明は省略する。CPU112は、S1304において、被写体が処理領域境界を跨ぐと判定した場合にはS1305に遷移し、処理領域境界を跨がないと判定した場合にはS1306に遷移する。
FIG. 15 is a flowchart showing a flow of adjustment control of feature points in the image processing apparatus of the second embodiment. Hereinafter, the adjustment control of the feature points required in each grid in the second embodiment will be described with reference to the flowchart of FIG. 15 and S404 of FIG.
Since S1301 to S1304 are substantially the same processing as S1001 to S1004 in FIG. 12, the description thereof will be omitted. In S1304, the
S1305に移ると、CPU112は、図14に示したように、第1の領域1201(被写体の移動先)で被写体1203を含むグリッド1204と、第2の領域1202(移動元)で被写体1203を含むグリッド1205との情報を記憶する。なお、記憶する情報は、グリッド番号でもよいし、グリッド座標でもよく、それら両方でもよい。CPU112は、被写体が垂直方向(上下方向)に移動し、処理領域境界を跨いで移動先で出現する予測出現位置Oyを、前述の式(6)または式(7)により算出し、予測出現位置に該当する座標を有するグリッドとその周辺グリッドの情報を記憶する。また、CPU112は、被写体の移動元の処理領域についても、処理領域境界を跨ぐ被写体の位置に該当する座標を有するグリッドとその周辺のグリッドの情報を記憶する。
Moving to S1305, as shown in FIG. 14, the
S1305の後、CPU112は、画像処理部104の処理をS1306に遷移させ、図4のS401からS409の処理を実行させる。すなわち、S1307において、画像処理部104は、第1の領域を第1のベクトル検出部121にて処理し、第2の領域を第2のベクトル検出部122にて処理する。第2の実施形態の場合、S404とS409以外の処理は第1の実施形態で説明した処理と同様であるため、ここではS404とS409について説明する。
After S1305, the
第2の実施形態において、S404で実行される処理のうち、特徴点算出部202による各グリッドの特徴点算出処理までは第1の実施形態で説明したのと同様である。また、マッチング処理部203に特徴点座標情報がRDDMACb222に出力されるタイミングも第1の実施形態の例と同様である。
In the second embodiment, among the processes executed in S404, up to the feature point calculation process of each grid by the feature
第2の実施形態の場合、S404において、CPU112は、特徴点算出部202が算出した新規特徴点の座標(PX,PY)と共に、その新規特徴点の特徴量PcをもSRAM206に格納する。このため、第2の実施形態の場合、SRAM206は、前フレームの特徴点と現フレームの特徴点を格納可能な容量を有している。
In the case of the second embodiment, in S404, the
そして、CPU112は、S1305で被写体を含むグリッドについて記憶されたグリッドの情報に基づいて、新規特徴点の特徴量Pcを調整して特徴量Pc'を生成する。図14の例を用いて説明すると、CPU112は、処理領域境界を跨いだ移動先の第1の領域1201内で被写体1203が含まれるグリッド1204について、下記の式(8)の計算式により、調整後の特徴量Pc'を求める。
Then, the
Pc'=Pc×Gu 式(8) Pc'= Pc × Gu formula (8)
式(8)において、Guは調整値であり、特徴量を大きくするために予め設定されたゲイン値である。本実施形態の場合、GuはGu>1.0の値となされている。すなわち、処理領域境界を跨いだ移動先の被写体を含むグリッドについては、優先的に特徴点の特徴量を大きくするような調整処理が行われる。なお、移動先の処理領域における調整後の特徴量Pc'は、Guをオフセット値として加算することで求めてもよい。 In the formula (8), Gu is an adjustment value, which is a gain value set in advance for increasing the feature amount. In the case of this embodiment, Gu is set to a value of Gu> 1.0. That is, for the grid including the moving destination subject that straddles the boundary of the processing area, the adjustment processing that preferentially increases the feature amount of the feature point is performed. The adjusted feature amount Pc'in the processing area of the moving destination may be obtained by adding Gu as an offset value.
一方、CPU112は、処理領域境界を跨ぐ際の移動元の第2の領域1202内で被写体1203が含まれるグリッド1205について、下記の式(9)の計算式により、調整後の特徴量Pc'を求める。
On the other hand, the
Pc'=Pc×Gl 式(9) Pc'= Pc × Gl equation (9)
式(9)において、Glは調整値であり、特徴量を小さくするために予め設定されたゲイン値である。本実施形態の場合、GlはGl<1.0の値となされている。すなわち、処理領域境界を跨ぐ際の移動元の被写体を含むグリッドについては、特徴量を小さくするような調整処理が行われる。なお、移動元の処理領域における調整後の特徴量Pc'は、Glをオフセット値として減算することで求められてもよい。 In the formula (9), Gl is an adjustment value, which is a gain value set in advance for reducing the feature amount. In the case of this embodiment, Gl is set to a value of Gl <1.0. That is, for the grid including the moving source subject when straddling the processing area boundary, adjustment processing is performed so as to reduce the feature amount. The adjusted feature amount Pc'in the processing area of the movement source may be obtained by subtracting Gl as an offset value.
また第2の実施形態において、S409に遷移した場合、追跡先決定部205では追跡先特徴点を決定する処理を行う。第2の実施形態の場合、追跡先決定部205により実行される図7のフローチャートの処理のうち、第1の実施形態と異なる処理はS704のみであるため、以下、S704の処理について説明する。
Further, in the second embodiment, when the transition to S409 occurs, the tracking
第2の実施形態の追跡先決定部205は、S704において、S702またはS703でNGと判定された位置に該当する追跡先特徴点座標を破棄して、新規特徴点座標に置き換える。具体的には、追跡先決定部205は、S404で算出されてSRAM206に記憶された新規特徴点のうち、最も特徴量が大きい新規特徴点の現フレームの座標で置き換える処理を行う。したがって、処理領域境界を跨いだ移動先の被写体を含むグリッドについて優先的に特徴点の特徴量を大きくする調整処理が行われた場合、当該特徴量が大きく調整された特徴点は、新規特徴点の現フレームの座標で置き換える処理が行われ易くなる。すなわち、処理領域境界を跨いだ移動先の被写体を含むグリッドの特徴点は、追跡先特徴点として選ばれ易くなる。一方、処理領域境界を跨ぐ際の移動元の被写体を含むグリッドについて特徴量を小さくするような調整処理が行われた場合、その特徴量が小さく調整された特徴点は、新規特徴点の現フレームの座標で置き換える処理が行われなくなる。すなわち、処理領域境界を跨ぐ際の移動元の被写体を含むグリッドの特徴点は、追跡先特徴点として選ばれなくなる。
The tracking
以上説明したように、第2の実施形態においては、被写体が移動して処理領域境界を跨ぐかどうかを予測し、跨いだ場合には、跨いだ後の移動先の処理領域内で被写体が含まれるグリッドについて優先的に追跡対象の特徴点が補填される。また、第2の実施形態において、移動元の処理領域では、被写体が含まれるグリッドに対し、追跡対象の特徴点が補填されないようになされている。これにより、第2の実施形態によれば、被写体で検出される優良な特徴点が、処理領域境界で消失したとしても追跡できる確率が高まり、特徴点追跡性能を高めることが可能となる。なお、第2の実施形態においても上下方向(垂直方向)の処理領域設定の事例を挙げて説明したが、左右方向(水平方向)の処理領域設定が行われる場合にも同様の考え方で制御すればよい。 As described above, in the second embodiment, it is predicted whether or not the subject moves and crosses the processing area boundary, and if it straddles, the subject is included in the processing area of the destination after straddling. The feature points to be tracked are preferentially supplemented for the grid to be tracked. Further, in the second embodiment, in the processing area of the moving source, the feature points of the tracking target are not supplemented to the grid including the subject. As a result, according to the second embodiment, the probability that the excellent feature points detected in the subject can be tracked even if they disappear at the boundary of the processing area is increased, and the feature point tracking performance can be improved. In the second embodiment, the example of setting the processing area in the vertical direction (vertical direction) has been described, but when the processing area is set in the horizontal direction (horizontal direction), control is performed by the same concept. Just do it.
また、前述した第1,第2の実施形態では、動きベクトル検出部を2個具備する例を挙げて説明したが、3個以上の動きベクトル検出部を具備する場合も本発明は適用可能である。例えば3個の場合、撮影画像に対して上下方向あるいは左右方向に3つの処理領域が設定される。そして、隣接する処理領域の境界を被写体が跨いで移動するかどうかに応じて、前述同様のグリッド配置制御や特徴量の調整等を行うことで、前述した実施形態と同様の効果を得ることができる。さらに、1つの撮影画像に対して複数の処理領域を設定する場合、上下方向あるいは左右方向だけでなく、上下左右方向に処理領域を設定してもよい。この場合、動きベクトル検出部もそれら上下左右方向に設定された処理領域に応じた数が設けられることになる。
また、前述した第1,第2の実施形態で説明した処理は、それぞれ個々に行う場合だけでなく、それらを組み合わせて行うようにしてもよい。
Further, in the first and second embodiments described above, an example in which two motion vector detection units are provided has been described, but the present invention can also be applied when three or more motion vector detection units are provided. be. For example, in the case of three, three processing areas are set in the vertical direction or the horizontal direction with respect to the captured image. Then, the same effect as that of the above-described embodiment can be obtained by performing the same grid arrangement control and adjustment of the feature amount as described above according to whether or not the subject moves across the boundary of the adjacent processing area. can. Further, when setting a plurality of processing areas for one captured image, the processing areas may be set not only in the vertical direction or the horizontal direction but also in the vertical and horizontal directions. In this case, the number of motion vector detection units is also provided according to the processing areas set in the vertical and horizontal directions.
Further, the processes described in the first and second embodiments described above may be performed not only individually but also in combination.
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
また、本実施形態では、画像処理装置の一例としてデジタルカメラを挙げたが、撮影画像を処理可能なタブレット端末、スマートフォン、電子ゲーム機、ドライブレコーダ、ナビゲーション装置、パーソナルコンピュータなど様々な装置であってもよい。この場合のそれら置は、その装置自身に搭載されているカメラ機能により撮影された画像、又は、デジタルカメラ等により撮影された画像を取得し、その画像データに対して前述した実施形態に係る各処理を実行する。また、これらの装置における実施形態に係る処理は、内部のマイクロコンピュータ等においてコンピュータプログラムを実行することにより実現されてもよい。実施形態に係る処理を実現するためのコンピュータプログラムは、記録媒体や各種ネットワークや通信回線を介して提供される。
The present invention supplies a program that realizes one or more functions of the above-described embodiment to a system or device via a network or storage medium, and one or more processors in the computer of the system or device reads and executes the program. It can also be realized by the processing to be performed. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
Further, in the present embodiment, a digital camera is mentioned as an example of an image processing device, but various devices such as a tablet terminal, a smartphone, an electronic game machine, a drive recorder, a navigation device, and a personal computer capable of processing captured images are used. May be good. In this case, those arrangements acquire an image taken by a camera function mounted on the device itself, or an image taken by a digital camera or the like, and the image data is obtained from each of the above-described embodiments. Execute the process. Further, the processing according to the embodiment in these devices may be realized by executing a computer program on an internal microcomputer or the like. The computer program for realizing the processing according to the embodiment is provided via a recording medium, various networks, or a communication line.
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。 The above-mentioned embodiments are merely examples of embodiment in carrying out the present invention, and the technical scope of the present invention should not be construed in a limited manner by these. That is, the present invention can be implemented in various forms without departing from its technical idea or its main features.
104:画像処理部、105:データ転送部、106:メモリ制御部、107:DRAM(メモリ)、108:不揮発性メモリ制御部、109:ROM(不揮発性メモリ)、112:CPU、121:第1のベクトル検出部113、122:第2のベクトル検出部、123:被写体検出部
104: Image processing unit, 105: Data transfer unit, 106: Memory control unit, 107: DRAM (memory), 108: Non-volatile memory control unit, 109: ROM (nonvolatile memory), 112: CPU, 121: First
Claims (13)
前記画像に対して複数の処理領域を設定する設定手段と、
前記処理領域ごとに対応して設けられ、前記対応した処理領域を複数に分けた抽出枠領域ごとに特徴点を抽出して前記特徴点を用いた動きベクトル検出を行い、前記特徴点と動きベクトルとを基に前記特徴点の追跡を行う処理手段と、
前記被写体が前記処理領域の境界を跨いで移動する場合、前記移動する被写体の少なくとも移動先の処理領域に対応した処理手段が新たな特徴点を抽出する際の設定を制御する制御手段と、
を有することを特徴とする画像処理装置。 Subject detection means that detects the subject from the captured image,
A setting means for setting a plurality of processing areas for the image, and
Feature points are extracted for each extraction frame area that is provided corresponding to each of the processing areas and the corresponding processing areas are divided into a plurality of areas, motion vector detection is performed using the feature points, and the feature points and motion vectors are detected. A processing means for tracking the feature points based on
When the subject moves across the boundary of the processing area, the control means for controlling the setting when the processing means corresponding to at least the moving destination processing area of the moving subject extracts a new feature point, and the control means.
An image processing device characterized by having.
前記対応した処理領域を複数に分けた抽出枠領域ごとに特徴点を抽出する抽出手段と、
時間軸上で隣接する2枚のフレームの一方を原画像とし、もう一方を参照画像として、前記特徴点を中心とする、前記参照画像の矩形領域内の画素値と前記原画像の矩形領域内の画素値とで相関演算を行って動きベクトルを検出するベクトル検出手段と、
前記動きベクトルと前記特徴点とを基に、次のフレームの画像内で追跡対象となる特徴点を算出する追跡先決定手段と、を有し、
前記制御手段は、前記抽出手段における特徴点の抽出に関する設定を制御することを特徴とする請求項1に記載の画像処理装置。 The processing means is
An extraction means for extracting feature points for each extraction frame area in which the corresponding processing areas are divided into a plurality of areas.
One of two adjacent frames on the time axis is used as the original image, and the other is used as the reference image. The pixel value in the rectangular area of the reference image and the rectangular area of the original image centered on the feature point. A vector detection means that detects a motion vector by performing a correlation operation with the pixel value of
It has a tracking destination determining means for calculating a feature point to be tracked in an image of the next frame based on the motion vector and the feature point.
The image processing apparatus according to claim 1, wherein the control means controls settings related to extraction of feature points in the extraction means.
前記被写体が前記処理領域の境界を跨いで移動する場合の移動元の処理領域内の被写体の位置と前記動きベクトルとを基に、前記境界を跨いだ移動先の処理領域で前記被写体が出現する位置を予測し、
前記移動先の処理領域に対応した処理手段に対し、前記予測した位置に応じて前記抽出枠領域を密に配置するように設定させる制御を行うことを特徴とする請求項1または2に記載の画像処理装置。 The control means is
When the subject moves across the boundary of the processing area, the subject appears in the processing area of the movement destination across the boundary based on the position of the subject in the processing area of the movement source and the motion vector. Predict the position,
The first or second aspect of the present invention, wherein the processing means corresponding to the processing area of the moving destination is controlled to set the extraction frame area to be densely arranged according to the predicted position. Image processing device.
前記被写体が前記処理領域の境界を跨いで移動する場合の移動元の処理領域内の被写体の位置と前記動きベクトルとを基に、前記境界を跨いだ移動先で前記被写体が出現する位置を予測し、
前記移動先の処理領域に対応した処理手段に対し、前記予測した位置に応じた前記抽出枠領域の特徴点の特徴量を調整するように設定を制御することを特徴とする請求項1から3のいずれか1項に記載の画像処理装置。 The control means is
Based on the position of the subject in the processing area of the movement source when the subject moves across the boundary of the processing area and the motion vector, the position where the subject appears at the movement destination across the boundary is predicted. death,
Claims 1 to 3 are characterized in that the setting is controlled so as to adjust the feature amount of the feature point of the extraction frame region according to the predicted position with respect to the processing means corresponding to the processing region of the movement destination. The image processing apparatus according to any one of the above items.
撮影された画像から被写体を検出する被写体検出工程と、
前記画像に対して複数の処理領域を設定する設定工程と、
前記処理領域ごとに対応して設けられ、前記対応した処理領域を複数に分けた抽出枠領域ごとに特徴点を抽出して前記特徴点を用いた動きベクトル検出を行い、前記特徴点と動きベクトルとを基に前記特徴点の追跡を行う処理工程と、
前記被写体が前記処理領域の境界を跨いで移動する場合、前記移動する被写体の少なくとも移動先の処理領域に対応した処理工程で新たな特徴点を抽出する際の設定を制御する制御工程と、
を有することを特徴とする画像処理方法。 An image processing method executed by an image processing device.
The subject detection process that detects the subject from the captured image,
A setting process for setting a plurality of processing areas for the image, and
Feature points are extracted for each extraction frame area that is provided corresponding to each of the processing areas and the corresponding processing areas are divided into a plurality of areas, motion vector detection is performed using the feature points, and the feature points and motion vectors are detected. A processing process for tracking the feature points based on
When the subject moves across the boundary of the processing area, a control step for controlling the setting when extracting a new feature point in the processing step corresponding to at least the processing area of the moving subject and the control step.
An image processing method characterized by having.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018081147A JP7077115B2 (en) | 2018-04-20 | 2018-04-20 | Image processing equipment, image processing methods, and programs |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018081147A JP7077115B2 (en) | 2018-04-20 | 2018-04-20 | Image processing equipment, image processing methods, and programs |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019191724A JP2019191724A (en) | 2019-10-31 |
JP7077115B2 true JP7077115B2 (en) | 2022-05-30 |
Family
ID=68390285
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018081147A Active JP7077115B2 (en) | 2018-04-20 | 2018-04-20 | Image processing equipment, image processing methods, and programs |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7077115B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7406695B2 (en) * | 2019-12-17 | 2023-12-28 | 株式会社竹中工務店 | Image processing device and image processing program |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014027462A (en) | 2012-07-26 | 2014-02-06 | Canon Inc | Image encoder, image encoding system, image encoding method, program, image decoder, image decoding system, image decoding method and program |
JP2015015666A (en) | 2013-07-08 | 2015-01-22 | ルネサスエレクトロニクス株式会社 | Moving image encoding device and operation method thereof |
JP2015115903A (en) | 2013-12-13 | 2015-06-22 | キヤノン株式会社 | Imaging apparatus, control method of imaging apparatus, and computer program |
JP2017054431A (en) | 2015-09-11 | 2017-03-16 | キヤノン株式会社 | Image processing device, image processing method, and program |
-
2018
- 2018-04-20 JP JP2018081147A patent/JP7077115B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014027462A (en) | 2012-07-26 | 2014-02-06 | Canon Inc | Image encoder, image encoding system, image encoding method, program, image decoder, image decoding system, image decoding method and program |
JP2015015666A (en) | 2013-07-08 | 2015-01-22 | ルネサスエレクトロニクス株式会社 | Moving image encoding device and operation method thereof |
JP2015115903A (en) | 2013-12-13 | 2015-06-22 | キヤノン株式会社 | Imaging apparatus, control method of imaging apparatus, and computer program |
JP2017054431A (en) | 2015-09-11 | 2017-03-16 | キヤノン株式会社 | Image processing device, image processing method, and program |
Also Published As
Publication number | Publication date |
---|---|
JP2019191724A (en) | 2019-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101624450B1 (en) | Image processing device, image processing method, and storage medium | |
EP2698766B1 (en) | Motion estimation device, depth estimation device, and motion estimation method | |
JP5803467B2 (en) | Image processing apparatus, imaging apparatus, and image processing method | |
US11153479B2 (en) | Image processing apparatus, capable of detecting an amount of motion between images by tracking a point across one or more images, image capturing apparatus, image processing method, and storage medium | |
JP2010114752A (en) | Device and method of imaging and program | |
JP6602141B2 (en) | Image processing apparatus and method | |
JP6320053B2 (en) | Image processing apparatus, image processing method, and computer program | |
JP6564284B2 (en) | Image processing apparatus and image processing method | |
JP7077115B2 (en) | Image processing equipment, image processing methods, and programs | |
JP6576179B2 (en) | Image processing apparatus, image processing method, and program | |
US11196925B2 (en) | Image processing apparatus that detects motion vectors, method of controlling the same, and storage medium | |
US10880457B2 (en) | Image processing apparatus, image capturing apparatus, image processing method, and storage medium | |
JP2019020839A (en) | Image processing apparatus, image processing method and program | |
JP6556033B2 (en) | Image processing apparatus, image processing method, and program | |
JP2023165555A (en) | Image processing apparatus, imaging apparatus, control method, and program | |
JP6316030B2 (en) | Imaging apparatus and control method thereof | |
JP7013205B2 (en) | Image shake correction device and its control method, image pickup device | |
JP7580914B2 (en) | Image processing device, image processing method, and program | |
JP2022099120A (en) | Subject tracking device and control method for the same | |
JP2009027437A (en) | Image processor, image processing method and imaging device | |
JP2018072941A (en) | Image processing device, image processing method, program, and storage medium | |
JP2019192048A (en) | Imaging apparatus | |
JP6454112B2 (en) | Blur correction apparatus, blur correction method and program, and imaging apparatus | |
JP2021108035A (en) | Image processing device, image processing method, and program | |
JP5853369B2 (en) | Image processing apparatus, image processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210415 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220325 |
|
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: 20220419 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220518 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7077115 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |