JP2007274543A - Image processing apparatus and method, program, and recording medium - Google Patents
Image processing apparatus and method, program, and recording medium Download PDFInfo
- Publication number
- JP2007274543A JP2007274543A JP2006099831A JP2006099831A JP2007274543A JP 2007274543 A JP2007274543 A JP 2007274543A JP 2006099831 A JP2006099831 A JP 2006099831A JP 2006099831 A JP2006099831 A JP 2006099831A JP 2007274543 A JP2007274543 A JP 2007274543A
- Authority
- JP
- Japan
- Prior art keywords
- tracking
- candidate
- image
- unit
- display
- 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.)
- Withdrawn
Links
Images
Landscapes
- Closed-Circuit Television Systems (AREA)
- Image Analysis (AREA)
Abstract
Description
本発明は、画像処理装置および方法、プログラム、並びに記録媒体に関し、特に、追尾対象を、容易に再設定することができるようにした画像処理装置および方法、プログラム、並びに記録媒体に関する。 The present invention relates to an image processing apparatus and method, a program, and a recording medium, and more particularly, to an image processing apparatus and method, a program, and a recording medium that can easily reset a tracking target.
動画像中でユーザが指定した対象を追尾する技術は、従来から多くあり、本出願人も先に出願した特許文献1において提案を行っている。そして、それらの殆どは、最初に追尾対象を指定した後、全自動で追尾処理を行うというものである。
There have been many techniques for tracking an object designated by a user in a moving image, and the applicant has also proposed in
しかしながら、実際には、こうした追尾対象の多くは、激しい変形を伴ったり、比較的長時間のオクルージョンを受けたり、あるいは、画像自体にノイズが乗るなど、様々な外乱を受けることがあり、全自動処理で所望の追尾結果を得ることは、困難であった。 However, in reality, many of these tracking targets are subject to various disturbances such as severe deformation, relatively long occlusion, or noise on the image itself. It was difficult to obtain a desired tracking result by processing.
これに対して、特許文献2においては、予め追尾アルゴリズムを選択可能にし、各シーンに最適なアルゴリズムを選択することや、再生を停止、または一時停止して対象を設定し直すことで、所望の追尾結果を得ることが提案されている。
On the other hand, in
しかしながら、特許文献2に記載の提案では、予め追尾アルゴリズムを選択する場合、最適なアルゴリズムが見つかるまで、繰り返し試行しなければならないため、ユーザに多大な負荷を強いることになってしまっていた。
However, in the proposal described in
また、再生を停止または一時停止して対象を設定し直すためには、膨大な蓄積装置が必要であるためコストが増大してしまうだけでなく、さらに、入力動画像に同期して追尾結果を出力するアプリケーションには、適用することが難しく、汎用的ではなかった。 Also, in order to stop or pause playback and reset the target, a huge storage device is required, which not only increases the cost, but also tracks the tracking result in synchronization with the input video. It was difficult to apply to the output application and it was not general purpose.
本発明は、このような状況に鑑みてなされたものであり、再生を停止または一時停止することなく、追尾対象を容易に再設定することができるようにするものである。 The present invention has been made in view of such a situation, and makes it possible to easily reset a tracking target without stopping or pausing playback.
本発明の一側面の画像処理装置は、移動するオブジェクトを表示させる画像処理装置において、ユーザの操作に対応して、画像上の移動するオブジェクトを追尾対象として追尾を行う追尾手段と、前記追尾手段による前記追尾対象の候補としての候補位置を算出する候補算出手段と、前記候補算出手段により算出された前記候補位置の表示を制御する表示制御手段と、ユーザの操作に対応して、表示される前記候補位置を、前記追尾手段の次のフレームにおける前記追尾対象として設定する対象設定手段とを備える。 An image processing apparatus according to an aspect of the present invention includes a tracking unit that tracks a moving object on an image as a tracking target in response to a user operation in the image processing apparatus that displays a moving object, and the tracking unit. The candidate calculation means for calculating the candidate position as the tracking target candidate according to the above, the display control means for controlling the display of the candidate position calculated by the candidate calculation means, and displayed in response to the user's operation Target setting means for setting the candidate position as the tracking target in the next frame of the tracking means.
前記候補算出手段は、予め記憶される画面内の所定の位置を読み出して、前記候補位置を算出することができる。 The candidate calculation means can read a predetermined position in a screen stored in advance and calculate the candidate position.
前記候補算出手段は、前記画像の特徴量に基づいて、前記候補位置を算出することができる。 The candidate calculation means can calculate the candidate position based on the feature amount of the image.
前記候補算出手段は、複数の前記追尾手段による追尾結果に基づいて、前記候補位置を算出することができる。 The candidate calculation means can calculate the candidate position based on the tracking results of the plurality of tracking means.
前記複数の追尾手段は、複数の異なる種類の追尾方式を用いて、それぞれ追尾を行うことができる。 The plurality of tracking units can each track using a plurality of different types of tracking methods.
前記対象設定手段は、ユーザの操作に対応して、表示される前記候補位置を、前記複数の追尾手段の次のフレームにおける前記追尾対象としてそれぞれ設定することができる。 The target setting unit can set the displayed candidate position as the tracking target in the next frame of the plurality of tracking units in response to a user operation.
前記複数の追尾手段は、前記オブジェクト上の複数の異なる近傍位置をそれぞれ追尾対象として追尾を行うことができる。 The plurality of tracking units can track a plurality of different neighboring positions on the object as tracking targets.
前記対象設定手段は、ユーザの操作に対応して、表示される前記候補位置に基づいて、前記候補位置を含む複数の異なる近傍位置を、前記複数の追尾手段の次のフレームにおける前記追尾対象としてそれぞれ設定することができる。 The target setting unit is configured to select a plurality of different neighboring positions including the candidate position as the tracking target in the next frame of the plurality of tracking units based on the displayed candidate position in response to a user operation. Each can be set.
前記複数の追尾手段の中の1の追尾手段による追尾結果に基づいて、前記複数の追尾手段のうちの一部または全部の追尾手段による追尾結果を更新する更新手段をさらに備えることができる。 Update means for updating the tracking results of some or all of the plurality of tracking means based on the tracking results of one of the plurality of tracking means can be further provided.
前記更新手段は、所定の時間が経過する毎に、前記複数の追尾手段の中の1の追尾手段による追尾結果に基づいて、前記複数の追尾手段のうちの一部または全部の追尾手段による追尾結果を更新することができる。 The updating unit is configured to track a part or all of the plurality of tracking units based on a tracking result by one of the plurality of tracking units every time a predetermined time elapses. Results can be updated.
前記更新手段は、所定時間が経過した第1のタイミング毎に、前記複数の追尾手段の中の1の追尾手段による追尾結果に基づいて、前記複数の追尾手段のうちの一部の追尾手段による追尾結果を更新し、前記第1のタイミングとは異なる、前記所定時間が経過した第2のタイミング毎に、前記複数の追尾手段の中の1の追尾手段による追尾結果で、前記複数の追尾手段のうちの他の一部の追尾手段による追尾結果を更新することができる。 The updating means is based on a result of tracking by one of the plurality of tracking means at a first timing when a predetermined time has elapsed, and is based on a part of the plurality of tracking means. The plurality of tracking means are updated with a tracking result by one tracking means of the plurality of tracking means at each second timing at which the predetermined time has elapsed, which is different from the first timing. The tracking result by some other tracking means can be updated.
前記更新手段は、前記複数の追尾手段の追尾結果が大きく異なるときに、前記複数の追尾手段の中の1の追尾手段による追尾結果に基づいて、前記複数の追尾手段のうちの一部または全部の追尾手段による追尾結果を更新することができる。 The updating unit is configured to perform a part or all of the plurality of tracking units based on a tracking result of one tracking unit among the plurality of tracking units when the tracking results of the plurality of tracking units are greatly different. The tracking result by the tracking means can be updated.
前記表示制御手段は、ユーザの操作による選択中の候補位置が、他の候補位置と区別されて前記画像上に示される前記候補位置の一覧表示を制御することができる。 The display control unit can control a list display of the candidate positions that are displayed on the image while the candidate positions being selected by a user operation are distinguished from other candidate positions.
前記表示制御手段は、前記画像上の前記選択中の候補位置の上に第1の小画像を重畳し、前記画像上の前記他の候補位置の上に前記第1の小画像とは異なる第2の小画像を重畳して、前記候補位置の一覧表示を制御することができる。 The display control means superimposes a first small image on the selected candidate position on the image, and differs from the first small image on the other candidate position on the image. The list display of the candidate positions can be controlled by superimposing two small images.
前記表示制御手段は、前記候補位置を中心としたズーム画像を生成する画像生成手段をさらに備え、前記画像生成手段により生成された前記候補位置を中心としたズーム画像の表示を制御することができる。 The display control means further includes an image generation means for generating a zoom image centered on the candidate position, and can control the display of the zoom image centered on the candidate position generated by the image generation means. .
前記表示制御手段は、前記画像生成手段により生成された複数の前記候補位置をそれぞれ中心とした複数のズーム画像の表示を制御することができる。 The display control unit can control display of a plurality of zoom images centered on the plurality of candidate positions generated by the image generation unit.
前記表示制御手段は、前記画像生成手段により生成された前記候補位置を中心としたズーム画像に、ユーザの操作による選択中の候補位置が、他の候補位置と区別されて前記画像上に示される前記候補位置の一覧表示が重畳された表示を制御することができる。 In the zoom image centered on the candidate position generated by the image generating means, the display control means shows the candidate position being selected by the user's operation on the image, distinguished from other candidate positions. The display on which the list of candidate positions is superimposed can be controlled.
前記表示制御手段は、ユーザの操作による選択中の候補位置が、他の候補位置と区別されて前記画像上に示される前記候補位置の一覧表示上に、前記画像生成手段により生成された前記候補位置を中心としたズーム画像が重畳された表示を制御することができる。 The display control means includes the candidate generated by the image generation means on a list display of the candidate positions, the candidate positions being selected by a user operation being distinguished from other candidate positions and displayed on the image. The display on which the zoom image centered on the position is superimposed can be controlled.
本発明の一側面の画像処理方法は、移動する対象を表示させる画像処理装置の画像処理方法において、ユーザの操作に対応して、画像上の移動するオブジェクトを追尾対象として追尾を行う追尾手段の前記追尾対象の候補としての候補位置を算出し、算出された前記候補位置の表示を制御し、ユーザの操作に対応して、表示される前記候補位置を、前記追尾手段の次のフレームにおける前記追尾対象として設定するステップを含む。 An image processing method according to an aspect of the present invention is an image processing method of an image processing apparatus that displays a moving target, and is a tracking unit that tracks a moving object on an image as a tracking target in response to a user operation. The candidate position as the tracking target candidate is calculated, the display of the calculated candidate position is controlled, and the displayed candidate position in response to a user operation is displayed in the next frame of the tracking means. Including a step of setting as a tracking target.
本発明の一側面のプログラムは、移動する対象を表示させる処理をコンピュータに行わせるプログラムであって、ユーザの操作に対応して、画像上の移動するオブジェクトを追尾対象として追尾を行う追尾手段の前記追尾対象の候補としての候補位置を算出し、算出された前記候補位置の表示を制御し、ユーザの操作に対応して、表示される前記候補位置を、前記追尾手段の次のフレームにおける前記追尾対象として設定するステップを含む。 A program according to one aspect of the present invention is a program that causes a computer to perform a process of displaying a moving target, and is a tracking unit that performs tracking using a moving object on an image as a tracking target in response to a user operation. The candidate position as the tracking target candidate is calculated, the display of the calculated candidate position is controlled, and the displayed candidate position in response to a user operation is displayed in the next frame of the tracking means. Including a step of setting as a tracking target.
本発明の一側面の記録媒体に記録されているプログラムは、移動する対象を表示させる処理をコンピュータに行わせるプログラムであって、ユーザの操作に対応して、画像上の移動するオブジェクトを追尾対象として追尾を行う追尾手段の前記追尾対象の候補としての候補位置を算出し、算出された前記候補位置の表示を制御し、ユーザの操作に対応して、表示される前記候補位置を、前記追尾手段の次のフレームにおける前記追尾対象として設定するステップを含む。 A program recorded on a recording medium according to an aspect of the present invention is a program that causes a computer to perform a process of displaying a moving target, and that tracks a moving object on an image in response to a user operation. The candidate position as the tracking target candidate of the tracking means that performs tracking is calculated, the display of the calculated candidate position is controlled, and the candidate position displayed in response to a user operation is Setting as the tracking target in the next frame of the means.
本発明の一側面においては、ユーザの操作に対応して、画像上の移動するオブジェクトを追尾対象として追尾を行う追尾手段の前記追尾対象の候補としての候補位置が算出され、算出された前記候補位置の表示が制御される。そして、ユーザの操作に対応して、表示される前記候補位置が、前記追尾手段の次のフレームにおける前記追尾対象として設定される。 In one aspect of the present invention, in response to a user operation, a candidate position as the tracking target candidate of a tracking unit that performs tracking with a moving object on the image as a tracking target is calculated, and the calculated candidate The position display is controlled. In response to the user's operation, the displayed candidate position is set as the tracking target in the next frame of the tracking means.
本発明によれば、追尾を継続しながら、追尾対象を容易に再設定することができる。 According to the present invention, it is possible to easily reset the tracking target while continuing tracking.
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書または図面に記載されていることを確認するためのものである。従って、明細書または図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。 Embodiments of the present invention will be described below. Correspondences between constituent elements of the present invention and the embodiments described in the specification or the drawings are exemplified as follows. This description is intended to confirm that the embodiments supporting the present invention are described in the specification or the drawings. Therefore, even if there is an embodiment which is described in the specification or the drawings but is not described here as an embodiment corresponding to the constituent elements of the present invention, that is not the case. It does not mean that the form does not correspond to the constituent requirements. Conversely, even if an embodiment is described here as corresponding to a configuration requirement, that means that the embodiment does not correspond to a configuration requirement other than the configuration requirement. It's not something to do.
本発明の一側面の画像処理装置は、移動するオブジェクトを表示させる画像処理装置(例えば、図1の追尾装置12)において、ユーザの操作に対応して、画像上の移動するオブジェクトを追尾対象として追尾を行う追尾手段(例えば、図3の追尾処理部71)と、前記追尾手段による前記追尾対象の候補としての候補位置を算出する候補算出手段(例えば、図3の位置算出部82)と、前記候補算出手段により算出された前記候補位置の表示を制御する表示制御手段(例えば、図2の表示画像生成部54)と、ユーザの操作に対応して、表示される前記候補位置を、前記追尾手段の次のフレームにおける前記追尾対象として設定する対象設定手段(例えば、図3の対象位置設定部83)とを備える。
According to an image processing apparatus of one aspect of the present invention, in an image processing apparatus (for example, the
前記候補算出手段(例えば、図5のステップS32の処理を行う図3の位置算出部82)は、予め記憶される画面内の所定の位置を読み出して、前記候補位置を算出することができる。
The candidate calculation means (for example, the
前記候補算出手段(例えば、図8のステップS52の処理を行う図7の画像特徴量算出部131)は、前記画像の特徴量に基づいて、前記候補位置を算出することができる。
The candidate calculation means (for example, the image feature
前記候補算出手段(例えば、図10のステップS72の処理を行う図9の位置算出部82)は、複数の前記追尾手段(例えば、図9の追尾処理部71−1乃至71−n)による追尾結果に基づいて、前記候補位置を算出することができる。
The candidate calculation means (for example, the
前記複数の追尾手段の中の1の追尾手段による追尾結果に基づいて、前記複数の追尾手段のうちの一部または全部の追尾手段による追尾結果を更新する更新手段(例えば、図12の追尾結果更新部161)をさらに備えることができる。 Update means (for example, the tracking result of FIG. 12) for updating the tracking results of some or all of the plurality of tracking means based on the tracking results of one tracking means of the plurality of tracking means. An updating unit 161) can be further provided.
前記表示制御手段は、ユーザの操作による選択中の候補位置が、他の候補位置と区別されて前記画像上に示される前記候補位置の一覧表示(例えば、図25の候補一覧画像241の表示)を制御することができる。
The display control means displays a list of candidate positions that are displayed on the image with candidate positions being selected by a user operation distinguished from other candidate positions (for example, display of
前記表示制御手段は、前記画像上の前記選択中の候補位置の上に第1の小画像(例えば、図25のカーソルP)を重畳し、前記画像上の前記他の候補位置の上に前記第1の小画像とは異なる第2の小画像(例えば、図25の点R)を重畳して、前記候補位置の一覧表示を制御することができる。 The display control means superimposes a first small image (for example, the cursor P in FIG. 25) on the selected candidate position on the image, and the other control position on the other candidate position on the image. A list display of the candidate positions can be controlled by superimposing a second small image (for example, point R in FIG. 25) different from the first small image.
前記表示制御手段は、前記候補位置を中心としたズーム画像を生成する画像生成手段(例えば、図27の拡大信号処理部301)をさらに備え、前記画像生成手段により生成された前記候補位置を中心としたズーム画像(例えば、図30のズーム画像351−1)の表示を制御することができる。
The display control unit further includes an image generation unit (for example, an enlarged
前記表示制御手段は、前記画像生成手段により生成された複数の前記候補位置をそれぞれ中心とした複数のズーム画像(例えば、図32の複数ズーム画像371−1)の表示を制御することができる。 The display control unit can control display of a plurality of zoom images (for example, a plurality of zoom images 371-1 in FIG. 32) centered on the plurality of candidate positions generated by the image generation unit.
前記表示制御手段は、前記画像生成手段により生成された前記候補位置を中心としたズーム画像に、ユーザの操作による選択中の候補位置が、他の候補位置と区別されて前記画像上に示される前記候補位置の一覧表示が重畳された表示(図31の表示画像361−1の表示)を制御することができる。 In the zoom image centered on the candidate position generated by the image generating means, the display control means shows the candidate position being selected by the user's operation on the image, distinguished from other candidate positions. The display on which the list display of the candidate positions is superimposed (display of the display image 361-1 in FIG. 31) can be controlled.
前記表示制御手段は、ユーザの操作による選択中の候補位置が、他の候補位置と区別されて前記画像上に示される前記候補位置の一覧表示上に、前記画像生成手段により生成された前記候補位置を中心としたズーム画像が重畳された表示(図33の表示画像391−1の表示)を制御することができる。 The display control means includes the candidate generated by the image generation means on a list display of the candidate positions, the candidate positions being selected by a user operation being distinguished from other candidate positions and displayed on the image. The display in which the zoom image centered on the position is superimposed (display of the display image 391-1 in FIG. 33) can be controlled.
本発明の一側面の画像処理方法またはプログラムは、移動する対象を表示させる画像処理装置の画像処理方法またはプログラムにおいて、ユーザの操作に対応して、画像上の移動するオブジェクトを追尾対象として追尾を行う追尾手段の前記追尾対象の候補としての候補位置を算出し(例えば、図4のステップS3)、算出された前記候補位置の表示を制御し(例えば、図4のステップS9)、ユーザの操作に対応して、表示される前記候補位置を、前記追尾手段の次のフレームにおける前記追尾対象として設定する(例えば、図4のステップS7またはS8)ステップを含む。 According to an image processing method or program of an aspect of the present invention, in the image processing method or program of an image processing apparatus for displaying a moving target, tracking is performed using a moving object on the image as a tracking target in response to a user operation. The candidate position as the tracking target candidate of the tracking means to be performed is calculated (for example, step S3 in FIG. 4), the display of the calculated candidate position is controlled (for example, step S9 in FIG. 4), and the user's operation The candidate position to be displayed is set as the tracking target in the next frame of the tracking means (for example, step S7 or S8 in FIG. 4).
以下、図面を参照して、本発明の実施の形態について説明する。 Embodiments of the present invention will be described below with reference to the drawings.
図1は、本発明を監視システムに適用した場合の構成例を表している。この監視システムにおいては、CCD(Charge Coupled Devices)ビデオカメラ等よりなる撮像装置11と、撮像装置11と接続され、LCD(Liquid Crystal Display)などからなる表示部21を有する追尾装置12を用いて、撮像装置11により撮像され、表示部21に表示される画像を見ながら、監視者であるユーザAにより所定の空間内に不審者がいないかが監視される。
FIG. 1 shows a configuration example when the present invention is applied to a monitoring system. In this monitoring system, using an
撮像装置11は、設置された空間において、監視する領域を撮像し、その画像31を追尾装置12に入力する。例えば、監視する領域内に侵入者Bがいれば、その侵入者Bが撮像された画像31が追尾装置12に入力される。
The
追尾装置12は、入力された画像31を用い、ユーザAの指示に対応して、侵入者Bを追尾対象として追尾を行ったり、追尾対象からずれてしまった侵入者Bを、再度、ユーザAの指示に対応して、追尾対象と再設定して追尾を行い、その追尾結果に基づいて、例えばズームされた画像32を生成し、表示部21に表示させる。
The
表示部21は、追尾装置12により追尾結果に基づいて生成された画像32を表示する。
The
なお、図1の監視システムに、追尾装置12からの制御に基づいて、撮像装置11が追尾対象を中心とする画像を撮像するように撮像装置11を駆動するカメラ駆動部などを構成することも可能である。
In the monitoring system of FIG. 1, a camera driving unit that drives the
図2は、図1の追尾装置12の構成例を示すブロック図である。この追尾装置12は、入力端子51、オブジェクト追尾部52、全体システム制御部53、表示画像生成部54、表示部21、リモートコントローラ55、およびリムーバブルメディア56により構成される。
FIG. 2 is a block diagram illustrating a configuration example of the
撮像装置11により撮像された画像は、入力端子51を介して、入力画像として、オブジェクト追尾部52および表示画像生成部54に入力される。オブジェクト追尾部52は、入力画像から、ユーザにより追尾対象として指定されたオブジェクトを追尾する処理を実行し、その追尾結果に基づく表示用追尾情報を、全体システム制御部53を介して表示画像生成部54に出力する。
An image captured by the
全体システム制御部53は、例えば、マイクロコンピュータなどにより構成され、リモートコントローラ55を介して入力されるユーザ操作情報を受け取り、オブジェクト追尾部52および表示画像生成部54に供給することで、ユーザの指示に基づいて各部を制御する。また、全体システム制御部53は、オブジェクト追尾部52からの表示用追尾情報を、表示画像生成部54に供給する。
The overall
表示画像生成部54は、入力画像を用いて、全体システム制御部53からのユーザ操作情報と、オブジェクト追尾部52の追尾処理により得られる表示用追尾情報に応じて、表示画像を生成し、表示画像を、表示部21に表示させる。
The display
リモートコントローラ55は、ユーザにより操作され、ユーザの操作に対応するユーザ操作情報(例えば、座標位置や候補選択の情報)を、赤外線などの光や電波を用いて、全体システム制御部53に送信する。なお、リモートコントローラ55を、例えば、キーボードやマウスなどで構成することもできる。
The
リムーバブルメディア56は、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスクなどにより構成され、必要に応じて装着され、全体システム制御部53に、プログラム、その他各種のデータを提供する。
The
図3は、オブジェクト追尾部52の詳細な構成例を示すブロック図である。図3のオブジェクト追尾部52は、追尾処理部71および追尾処理制御部72で構成される。
FIG. 3 is a block diagram illustrating a detailed configuration example of the
追尾処理部71は、追尾処理制御部72により生成された設定情報に基づいて追尾を行い、追尾結果を追尾処理制御部72に出力する。追尾処理の詳細は、後述するが、例えば、追尾処理部71による追尾方式としては、輝度波形ブロックマッチング方式、色波形ブロックマッチング方式、特許文献1に記載の乗り換え付き点追尾方式、動き領域重心追尾方式、または、過去動きで一定時間外挿を行う方式などが挙げられる。
The
追尾処理制御部72は、例えば、追尾結果記憶部81、位置算出部82、および対象位置設定部83により構成され、ユーザ操作情報に基づいて、追尾処理部71を制御するとともに、追尾処理部71による追尾結果に基づいて、表示用追尾情報を生成し、表示用追尾時情報を、全体システム制御部53に出力する処理を行う。表示用追尾情報は、例えば、追尾中の追尾対象の領域または点の位置情報、および少なくとも1つの追尾対象候補の領域または点の位置情報などで構成される。
The tracking
追尾結果記憶部81は、追尾処理部71の追尾結果を記憶する。位置算出部82は、追尾結果記憶部81の追尾結果に基づいて、現在のフレーム(現フレーム)より時間的に後に入力される、次のフレーム(次フレーム)の追尾対象の位置と、追尾対象の候補となる位置(以下、適宜、候補位置とも称する)を算出して、表示用追尾情報を生成し、その表示追尾情報を、全体システム制御部53に出力する。
The tracking
また、位置算出部82は、生成した表示用追尾情報とユーザ操作情報に基づいて、ユーザにより選択され、変更が指示された候補位置情報を、対象位置設定部83に供給する。対象位置設定部83は、ユーザ操作情報が示す位置、または位置算出部82からの候補位置または追尾対象の位置を、次のフレームの追尾対象の位置として設定し、その設定情報を、追尾処理部71に出力する。
Further, the
なお、変更が指示されていない場合、位置算出部82からは、追尾結果に基づいて算出された追尾対象の位置情報が対象位置設定部83に供給される。すなわち、対象位置設定部83においては、追尾処理部71の追尾結果が、そのまま次のフレームの追尾対象の位置として設定される。
When the change is not instructed, the
次に、追尾装置12の処理について、図4のフローチャートを参照して説明する。図1の監視システムの電源がオンされているとき、撮像装置11は監視する領域を撮像する。その撮像して得られた画像は、追尾装置12に入力され、表示画像生成部54を介して表示部21に表示される。
Next, the processing of the
ユーザAは、表示部21に表示される画像を参照して、リモートコントローラ55を操作することで、画像上の追尾をしたいオブジェクトを追尾対象として指定し、追尾開始を指示する。この操作がなされたとき、全体システム制御部53は、図4の処理を開始する。すなわち、全体システム制御部53は、ユーザ操作情報を、追尾処理制御部72に供給する。
The user A refers to the image displayed on the
追尾処理制御部72の対象位置設定部83は、ステップS1において、ユーザ操作情報が示す位置を、追尾対象の位置に設定し、その設定情報を追尾処理部71に出力する。ステップS2において、追尾処理部71は、次フレームの入力を待ち、入力される次フレームと現フレームとの間で、対象位置設定部83からの設定情報に基づいて、ユーザにより指定された追尾対象の追尾処理を開始する。
In step S <b> 1, the target
追尾処理の詳細については、図35または図39を参照して後述するが、この処理により、ユーザにより指定された追尾対象、すなわち、画像の中の追尾対象となるオブジェクト(例えば、人、動物など)の追尾点(または追尾領域)が追尾され、その追尾結果が、追尾処理制御部72に出力されて、追尾結果記憶部81に記憶される。
The details of the tracking process will be described later with reference to FIG. 35 or 39. By this process, the tracking target specified by the user, that is, the object to be tracked in the image (for example, a person, an animal, etc.) ) Tracking point (or tracking area) is tracked, and the tracking result is output to the tracking
ステップS3において、追尾処理制御部72の位置算出部82は、追尾処理部71による追尾結果に基づいて、追尾対象および追尾対象候補の位置を算出する位置算出処理を行う。位置算出処理の詳細については、図5を参照して後述するが、この処理により、追尾対象の位置および追尾対象候補の位置が算出されて、表示用追尾情報が生成され、表示用追尾情報が、全体システム制御部53を介して、表示画像生成部54に供給される。
In step S <b> 3, the
位置算出部82は、ステップS4において、ユーザから候補位置選択表示の指示があるか否かを判定し、候補位置選択表示の指示があると判定した場合、すなわち、候補位置選択表示が指示されているとして、ステップS5において、ユーザから候補位置選択の指示があるか否かを判定する。
In step S4, the
ステップS5において、候補位置選択の指示があると判定された場合、処理は、ステップS6に進み、ステップS6において、位置算出部82は、ユーザから候補位置への変更の指示があるか否かを判定する。ステップS6において、ユーザから候補位置への変更の指示があると判定された場合、ステップS7において、対象位置設定部83は、候補位置を、次フレームの追尾対象の位置と設定する。
If it is determined in step S5 that there is an instruction to select a candidate position, the process proceeds to step S6. In step S6, the
すなわち、ユーザの候補位置選択表示の指示により、現在、表示部21においては、候補位置を選択するための表示である候補位置選択表示が行われており、さらに、ユーザにより1つの候補位置が選択されている。位置算出部82は、選択されている候補位置情報を、対象位置設定部83に供給してくるので、対象位置設定部83は、選択されている候補位置を、次フレームの追尾対象の位置として設定し、その設定情報を、追尾処理部71に出力する。
That is, according to a user's instruction for selecting and displaying a candidate position, the
一方、ステップS4において、ユーザから候補位置選択表示の指示はないと判定された場合、ステップS5において、ユーザから候補位置選択の指示はないと判定された場合、または、ステップS6において、ユーザから候補位置への更新指示がないと判定された場合、処理は、ステップS8に進む。 On the other hand, when it is determined in step S4 that there is no instruction for candidate position selection display from the user, in step S5, when it is determined that there is no instruction for candidate position selection from the user, or in step S6, the candidate is selected from the user. If it is determined that there is no instruction to update the position, the process proceeds to step S8.
ステップS8において、対象位置設定部83は、追尾対象の位置を、そのまま次フレームの追尾対象の位置として設定する。
In step S8, the target
すなわち、現在、表示部21に、候補位置選択表示が行われてなかったり、仮に、表示部21に、候補位置選択表示が行われていても、候補位置が選択されていなかったり、また、仮に、候補位置が選択されていても、その候補位置への更新指示がない場合、位置算出部82は、ステップS3において算出された追尾対象の位置情報を、対象位置設定部83に供給してくる。これに対応して、ステップS8において、対象位置設定部83は、ステップS3において算出された追尾対象の位置を、そのまま次フレームの追尾対象の位置として設定し、その設定情報を、追尾処理部71に出力する。
That is, at present, the candidate position selection display is not performed on the
ステップS9において、表示画像生成部54は、ユーザの指示に応じた表示画像を生成し、表示部21に出力する。
In step S <b> 9, the display
すなわち、表示画像生成部54は、ユーザから候補位置選択表示の指示がない場合には、入力画像を用いて、追尾対象の位置のみを示した表示画像を生成し、ユーザから候補位置選択表示の指示がある場合には、入力画像を用いて、追尾対象の位置とともに、候補位置を示した表示画像を生成する。また、表示画像生成部54は、ユーザから候補位置選択の指示がある場合には、入力画像を用いて、例えば、選択された候補位置上に、選択を示すマークなどを重畳させて、追尾対象の位置と候補位置を示した表示画像を生成する。表示画像の詳細は、ユーザによるリモートコントローラ55の操作方法とともに、図24乃至図26を参照して説明する。
In other words, when there is no instruction for candidate position selection display from the user, the display
ステップS10において、全体システム制御部53は、ユーザからの指示に基づいて処理を終了するか否かを判定し、ユーザから追尾終了が指示されていない場合には、ステップS2に戻り、それ以降の処理を繰り返し実行する。すなわち、ステップS2において、入力される次フレームと現フレームとの間で、ステップS7またはS8において設定された追尾対象の位置を設定した設定情報に基づいて、ユーザにより指定された追尾対象の追尾処理が開始される。ユーザから追尾終了が指示された場合、ステップS10において終了すると判定され、全体システム制御部53は処理を終了する。
In step S10, the overall
次に、図5のフローチャートを参照して、図4のステップS3の位置算出処理を説明する。図5の例においては、画面内の固定位置が候補位置として算出される例を説明する。 Next, the position calculation process in step S3 in FIG. 4 will be described with reference to the flowchart in FIG. In the example of FIG. 5, an example in which a fixed position in the screen is calculated as a candidate position will be described.
なお、この場合、図3の位置算出部82に内蔵されるレジスタ(図示せぬ)には、予め、候補位置として、画面内の固定位置の座標が記憶されている。具体的には、例えば、画面内の中央の座標や、画面がn個(例えば、4個)に分割されたものである各分割画面内の中心の座標などが候補位置として記憶されている。そして、ユーザにより候補位置選択および変更指示がある場合、これらの固定位置のいずれか(選択されたもの)が、追尾対象の位置に設定される。
In this case, the coordinates of the fixed position in the screen are stored in advance as candidate positions in a register (not shown) built in the
ステップS31において、位置算出部82は、追尾結果記憶部81に記憶される追尾結果をそのまま用いて、追尾対象の位置を算出する。ステップS32において、位置算出部82は、図示せぬレジスタから固定位置の座標を読み出すことで、候補位置を算出する。
In step S31, the
ステップS33において、位置算出部82は、ステップS31において算出された追尾対象の位置、およびステップS32において算出された候補位置を用いて、表示用追尾情報を生成し、全体システム制御部53に出力する。ステップS33において出力された表示用追尾情報は、全体システム制御部53を介して、表示画像生成部54に出力される。
In step S <b> 33, the
これにより、上述した図4のステップS9において、ユーザにより候補位置選択表示が指示されている場合には、表示画像生成部54によりステップS33において出力された表示用追尾情報に応じて生成された表示画像102が表示部21に表示される。
Thereby, when the candidate position selection display is instructed by the user in step S9 of FIG. 4 described above, the display generated by the display
図6は、表示部21に表示される表示画像の例を示している。図6の例においては、追尾処理開始時に表示される表示画像101と、追尾処理中に表示される表示画像102が示されている。
FIG. 6 shows an example of a display image displayed on the
表示画像101の左下部には、追尾の対象位置を示すカーソルPが、ユーザが追尾対象として指示した人物のオブジェクト(以下、単に人物と称する)111上に表示されている。
In the lower left portion of the
一方、表示画像102の左上部、左下部、右上部、および右下部には、木のオブジェクト(以下、単に木と称する)121、球のオブジェクト(以下、単に球と称する)122、人物111、および犬のオブジェクト(以下、単に犬と称する)123がそれぞれ表示されている。すなわち、表示画像102において、ユーザが追尾対象として指示した人物111は、右上部に移動して表示されており、追尾の対象位置を示すカーソルPは、人物111とは離れて、表示画像102の左上部に表示されている。
On the other hand, in the upper left, lower left, upper right, and lower right of the
また、表示画像102には、それぞれ候補位置を示す点Q1乃至Q5が、位置算出部82に内蔵されるレジスタから読み出されることで算出された候補位置である、画面内の中心の位置、並びに、画面が4等分された、各左上、右上、左下、および右下の分割画面の中心の位置上に表示されている。なお、表示画像102においては、各点Q1乃至点Q5と共に、点Q1乃至点Q5が候補位置を示していることをユーザに認識させるため、「候補1」乃至「候補5」の文字が表示されている。これらの文字の表示は、非表示にすることも可能である。
Further, in the
すなわち、追尾処理開始時には、表示画像101に示されるように、ユーザが追尾対象として指示した人物111上のカーソルPの位置が、追尾対象の位置として設定されて処理が開始されるが、所定の時間が経過した後の追尾処理中には、表示画像102に示されるように、オクルージョンなどの何かしらの外乱により、追尾対象の位置は、ユーザが追尾対象として指示した人物111から外れてしまい、その結果、木121および犬123の間のカーソルPが示す位置が追尾対象の位置になってしまっている。
That is, at the start of the tracking process, as shown in the
このとき、追尾対象111上には、ちょうど、候補位置を示す点Q3が表示されているので、ユーザは、点Q3が示している候補位置を選択し、変更を指示する。これに対応して、位置算出部82は、点Q3が示している候補位置、すなわち、レジスタから読み出されたものである右上の分割画面の中心の位置を、追尾対象の位置として、対象位置設定部83に設定させる。これにより、次フレームからは、点Q3が示している位置が含まれるオブジェクト、すなわち、人物111が追尾対象として追尾が再開され、表示部21には、追尾が行われた追尾結果を用いて算出された追尾対象の位置が、カーソルPにより示される。
At this time, since the point Q3 indicating the candidate position is just displayed on the
以上のように、追尾対象の候補となる候補位置を予め算出して表示させることにより、追尾対象の位置が、処理開始時に設定された追尾対象から外れたとしても、ちょうど、ユーザが追尾対象としたいオブジェクト上に候補位置が示されている場合には、ユーザは、表示部21に表示される表示画像の候補位置を選択し、変更するだけで、細かい調整などを行わなくても、容易に、追尾対象の再設定を行うことができる。
As described above, by calculating and displaying the candidate positions that are candidates for the tracking target in advance, even if the position of the tracking target deviates from the tracking target set at the start of processing, the user is determined to be the tracking target. When the candidate position is indicated on the object to be desired, the user can easily select the candidate position of the display image displayed on the
すなわち、追尾対象の位置として信頼性がある候補位置が算出できれば、その候補位置は、必然的に、ユーザが追尾対象として所望するオブジェクト上に表示されるようになる。次に、より信頼性のある候補位置の算出方法について説明する。 That is, if a reliable candidate position can be calculated as the tracking target position, the candidate position is necessarily displayed on the object desired by the user as the tracking target. Next, a more reliable method for calculating candidate positions will be described.
図7は、図3のオブジェクト追尾部52の他の構成例を示している。図7のオブジェクト追尾部52は、追尾処理部71および追尾処理制御部72を備えている点は、図3のオブジェクト追尾部52と共通しているが、画像特徴量算出部131が追加された点が異なっている。
FIG. 7 shows another configuration example of the
すなわち、図7の例において、候補位置は、画像特徴量算出部131により算出されるので、位置算出部82は、追尾結果記憶部81の追尾結果に基づいて、次フレームの追尾対象の位置を算出し、算出した追尾対象の位置と、画像特徴量算出部131により算出された候補位置を用いて、表示用追尾情報を生成し、その表示追尾情報を、全体システム制御部53に出力する。
That is, in the example of FIG. 7, the candidate position is calculated by the image feature
画像特徴量算出部131は、入力画像を用いて画像特徴量を求め、画像特徴量に基づいて、候補位置を算出し、その位置情報を、位置算出部82に出力する。
The image feature
具体的には、例えば、画像特徴として、色で領域分割が行われ、画像内の代表的な色で、かつ、ある程度面積が大きい領域が抽出される。そして、抽出された各領域の重心が、対象候補の位置とされる。なお、領域分割を行う上で、領域の数が多くなりすぎる恐れがあるため、候補数に制限を設けるなどの考慮が必要となる。 Specifically, for example, as an image feature, region division is performed by color, and a region having a large area to some extent is extracted with a representative color in the image. Then, the center of gravity of each extracted region is set as the target candidate position. It should be noted that, when performing area division, there is a possibility that the number of areas may be too large, so it is necessary to consider setting a limit on the number of candidates.
このとき、さらに、ディテイルや、動きの大きさなどの特徴量も抽出し、それらの条件を追加することで、よりユーザが選択しやすそうな、すなわち、追尾対象としてより信頼性のある候補位置を算出することができる。 At this time, further, feature quantities such as details and magnitude of movement are also extracted, and by adding these conditions, candidate positions that are likely to be selected by the user, that is, more reliable candidate positions for tracking Can be calculated.
次に、図8のフローチャートを参照して、図7の追尾処理制御部72が実行する位置算出処理を説明する。
Next, the position calculation process executed by the tracking
ステップS51において、位置算出部82は、追尾結果記憶部81に記憶される追尾結果をそのまま用いて、追尾対象の位置を算出する。ステップS52において、画像特徴量算出部131は、入力画像を用いて画像特徴量を求め、画像特徴量に基づいて、候補位置を算出する。すなわち、画像特徴量に基づいて抽出される領域から、候補位置が算出されて、その位置情報が位置算出部82に出力される。
In step S <b> 51, the
ステップS53において、位置算出部82は、ステップS51において算出された追尾対象の位置、およびステップS52において画像特徴量算出部131により算出された候補位置を用いて、表示用追尾情報を生成し、全体システム制御部53に出力する。ステップS53において出力された表示用追尾情報は、全体システム制御部53を介して、表示画像生成部54に出力される。
In step S53, the
これにより、上述した図4のステップS9において、ユーザにより候補位置選択表示が指示されている場合には、表示画像生成部54によりステップS53において出力された表示用追尾情報に応じて生成された表示画像が表示部21に表示される。
Accordingly, in the above-described step S9 of FIG. 4, when the candidate position selection display is instructed by the user, the display generated according to the display tracking information output in step S53 by the display
以上のように、入力される画像の特徴量に基づいて候補位置が算出されるので、画面の固定位置の場合よりもさらに、ユーザにより選択され得る、すなわち、追尾対象として信頼性のある候補位置を表示することができる。 As described above, since the candidate position is calculated based on the feature amount of the input image, the candidate position can be selected by the user more than in the case of the fixed position of the screen, that is, the candidate position that is reliable as the tracking target. Can be displayed.
図9は、図3のオブジェクト追尾部52のさらに他の構成例を示している。図9のオブジェクト追尾部52は、追尾処理部71および追尾処理制御部72を備えている点は、図3のオブジェクト追尾部52と共通しているが、図9の追尾処理部71が、複数の追尾処理部71−1乃至71−n(n>1)により構成されていることが異なっている。
FIG. 9 shows still another configuration example of the
すなわち、n個の追尾処理部71−1乃至71−nは、追尾処理制御部72により生成された設定情報に基づいて、図3を参照して上述した追尾方式のうちの、それぞれ、種類の異なる追尾方式(例えば、簡単のために、追尾方式A、追尾方式B、…とする)で、それぞれ追尾を行い、追尾結果を追尾処理制御部72に出力する。これらの追尾処理部71の詳細は、図34または図38を参照して後述する。
That is, each of the n tracking processing units 71-1 to 71-n is based on the setting information generated by the tracking
追尾結果記憶部81には、追尾処理部71−1乃至71−nからのn個の追尾結果が記憶されるので、位置算出部82は、ユーザ操作情報に基づいて、追尾結果記憶部81の追尾結果の中から、1つの追尾結果を用いて、次のフレームの追尾対象の位置を求め、その他の追尾結果を用いて、候補位置を算出して、表示用追尾情報を生成し、その表示追尾情報を、全体システム制御部53に出力する。また、位置算出部82は、生成した表示用追尾情報とユーザ操作情報に基づいて、ユーザにより選択され、変更が指示された候補位置情報を、対象位置設定部83に供給する。
Since the tracking
対象位置設定部83は、ユーザ操作情報が示す位置、または位置算出部82からの候補位置または追尾対象の位置を、次のフレームの追尾対象の位置として設定し、その設定情報を、各追尾処理部71−1乃至71−nにそれぞれ出力する。
The target
なお、変更が指示されていない場合、位置算出部82からは、算出した追尾対象の位置情報が、対応する1の追尾処理部に対するものとして、対象位置設定部83に供給され、算出された候補位置情報が、対応するその他の追尾処理部に対するものとして、対象位置設定部83に供給される。すなわち、対象位置設定部83においては、各追尾処理部71の追尾結果が、そのまま次のフレームの追尾対象の位置としてそれぞれ設定される。
If no change is instructed, the
次に、図10のフローチャートを参照して、図9の追尾処理制御部72が実行する位置算出処理を説明する。
Next, the position calculation process executed by the tracking
ステップS71において、位置算出部82は、追尾結果記憶部81に記憶される追尾結果の中から、1つの追尾結果(すなわち、ユーザにより指定された候補位置が対応する追尾結果)を用いて、追尾対象の位置を算出する。なお、初回には、ユーザ、または追尾装置12内において予め設定されている追尾方式での追尾処理を行う追尾処理部71による追尾結果が用いられて、追尾対象の位置が算出される。
In step S71, the
ステップS72において、位置算出部82は、追尾結果記憶部81に記憶される追尾結果の中から、残りの追尾結果を用いて、候補位置を算出する。
In step S <b> 72, the
ステップS73において、位置算出部82は、ステップS71において算出された追尾対象の位置、およびステップS72において算出された候補位置を用いて、表示用追尾情報を生成し、全体システム制御部53に出力する。ステップS73において出力された表示用追尾情報は、全体システム制御部53を介して、表示画像生成部54に出力される。
In step S73, the
これにより、上述した図4のステップS9において、ユーザにより候補位置選択表示が指示されている場合には、表示画像生成部54によりステップS73において出力された表示用追尾情報に応じて生成された表示画像が表示部21に表示される。
Thereby, when the candidate position selection display is instructed by the user in step S9 of FIG. 4 described above, the display generated according to the display tracking information output in step S73 by the display
図11は、表示部21に表示される表示画像の例を示している。図11の例においては、図6の例の場合と同様に、例えば、追尾処理開始時に表示される表示画像101と、追尾処理中に表示される表示画像151が示されている。
FIG. 11 shows an example of a display image displayed on the
例えば、図11の表示画像101に示されるように、追尾処理開始時に、ユーザが人物111上のカーソルPが示す位置を追尾対象として指示した場合、対象位置設定部83は、カーソルPの位置を、追尾対象の位置として設定し、設定情報を、各追尾方式A乃至追尾方式Eでの追尾処理をそれぞれ行う追尾処理部71−1乃至71−nに供給する。これに対応して、追尾処理部71−1乃至71−nは、カーソルPが示す位置を追尾の対象位置として、追尾方式A乃至Eによる追尾を行っていく。
For example, as shown in the
なお、図11の例の場合、追尾方式Aでの追尾処理を行う追尾処理部71−1の追尾結果から、追尾対象の位置が算出され、他の追尾処理部71−2乃至71−5の追尾結果から、候補位置が算出される。 In the case of the example in FIG. 11, the position of the tracking target is calculated from the tracking result of the tracking processing unit 71-1 that performs the tracking process in the tracking method A, and the other tracking processing units 71-2 to 71-5 A candidate position is calculated from the tracking result.
処理開始から所定の時間の経過後の表示画像151においては、表示画像102の場合と同様に、ユーザが追尾対象として指示した人物111は、右上部に移動しており、左上部、左下部、および右下部には、木121、球122、および犬123がそれぞれ表示されている。
In the
そして、表示画像151において、追尾方式A(追尾処理部71−1)の追尾結果から算出される追尾対象の位置を示すカーソルPは、ユーザが追尾対象として指示した人物111から外れた位置である、木121および犬123の間の位置に表示されている。追尾方式B(追尾処理部71−2)の追尾結果から算出される候補位置を示す点Q2は、ユーザが追尾対象として指示した人物111上の位置に表示されている。追尾方式C(追尾処理部71−3)の追尾結果から算出される候補位置を示す点Q3は、ユーザが追尾対象として指示した人物111から外れた位置である、木121および球122の間の位置に表示されている。
In the
追尾方式D(追尾処理部71−4)の追尾結果から算出される候補位置を示す点Q4は、ユーザが追尾対象として指示した人物111から外れた位置である、犬123上の位置に表示されている。追尾方式E(追尾処理部71−5)の追尾結果から算出される候補位置を示す点Q5は、ユーザが追尾対象として指示した人物111から外れた位置である、球122上の位置に表示されている。
A point Q4 indicating a candidate position calculated from the tracking result of the tracking method D (tracking processing unit 71-4) is displayed at a position on the
すなわち、追尾処理開始時から、所定の時間が経過した後の追尾処理中には、追尾方式Aによる追尾は、表示画像151中のカーソルPの位置に示されるように、例えば、変形やオクルージョンなどの原因により、ユーザが追尾対象として指示した人物111から外れてしまっている。
That is, during the tracking process after a predetermined time has elapsed since the start of the tracking process, tracking by the tracking method A is performed, for example, as shown by the position of the cursor P in the
同様に、その他の追尾方式C乃至Eによる追尾も、表示画像151中の点Q3乃至Q5の位置に示されるように、例えば、変形やオクルージョンなどの原因により、ユーザが追尾対象として指示した人物111から外れてしまっている。
Similarly, in tracking by other tracking methods C to E, as indicated by the positions of points Q3 to Q5 in the
このとき、追尾方式Bを用いての追尾処理が正しく行われており、ユーザが追尾対象として指示した人物111上には、追尾方式Bを用いての追尾結果から算出された候補位置を示す点Q2が表示されている。これにより、ユーザは、点Q2が示している候補位置を選択し、変更を指示することができる。
At this time, the tracking process using the tracking method B is correctly performed, and a point indicating a candidate position calculated from the tracking result using the tracking method B is displayed on the
そして、位置算出部82は、ユーザの指示に応じて、点Q2が示している候補位置、すなわち、追尾方式Bの追尾結果から算出された候補位置を、追尾方式A乃至Eの追尾対象の位置として、対象位置設定部83に設定させる。これにより、次フレームからは、点Q2の位置が含まれるオブジェクト、すなわち、人物111が追尾対象として、再度、追尾方式A乃至Eを用いての各追尾が開始され、表示部21には、そのうちの追尾方式Bの追尾結果を用いて算出された追尾対象の位置がカーソルPにより示される。
Then, the
なお、図11の例の表示画像151には、カーソルPと共に、カーソルPが示す位置を追尾した追尾方式Aを示す「方式A」の文字が表示されており、各点Q2乃至点Q5と共に、点Q2乃至点Q5が示す位置を追尾した追尾方式B乃至Eを示す「方式B」乃至「方式E」の文字が表示されているが、これらの文字の表示は、非表示にすることも可能である。
In the
以上のように、例えば、方式Aで追尾を行ったときに、何らかの外乱により、追尾対象が外れてしまった場合であっても、他の方式で求められた追尾結果が候補位置として示されている。 As described above, for example, when tracking is performed by method A, even if the tracking target is removed due to some disturbance, the tracking result obtained by another method is indicated as a candidate position. Yes.
すなわち、追尾結果の傾向が互いに異なる複数の追尾方式により追尾を行う場合、1つの追尾方式の追尾ができなくなったとしても、他の追尾方式で正確な追尾ができている可能性が高い。したがって、追尾結果の傾向が互いに異なる複数の追尾方式の追尾結果を、候補位置として表示させることにより、ユーザが追尾対象としたいオブジェクト上にその候補位置が表示される可能性が高い。 That is, when tracking is performed by a plurality of tracking methods having different tracking result tendencies, even if tracking of one tracking method cannot be performed, there is a high possibility that accurate tracking is achieved by another tracking method. Therefore, by displaying the tracking results of a plurality of tracking methods having different tracking result tendencies as candidate positions, it is highly likely that the candidate positions are displayed on the object that the user wants to be tracked.
これにより、ユーザは、表示部21に表示される表示画像の候補位置を選択し、変更するだけで、細かい調整などを行わなくても、容易に、追尾対象の再設定を行うことができる
Accordingly, the user can easily reset the tracking target without performing fine adjustments by selecting and changing the candidate position of the display image displayed on the
ここで、上述した図9のオブジェクト追尾部52においては、基本的にユーザから候補位置の変更指示があるときには、全n個の追尾方式は、それぞれ、ユーザが選択する候補位置を追尾対象として追尾を再開することで、追尾対象の位置の変更が行われているが、各追尾方式の追尾結果を完全に独立に制御した場合、長く時間が経過すると、実際には、追尾対象の変形やオクルージョンを受けるなどの理由で、それぞれの追尾方式による追尾では、すでに追尾対象の位置が、ユーザが指示した追尾対象から外れている恐れがある。すなわち、ユーザが所望する追尾対象に、どの候補位置も表示されない恐れがある。
Here, in the
そこで、次に、追尾方式毎に独立して追尾を行わせるのではなく、追尾結果に所定の拘束条件を与えて、所定の拘束条件で拘束される追尾結果に基づいて、次フレームの追尾対象の位置を更新する例を説明する。 Therefore, next, the tracking target of the next frame is based on the tracking result constrained by the predetermined constraint condition by giving a predetermined constraint condition to the tracking result instead of performing tracking independently for each tracking method. An example of updating the position of will be described.
図12は、図9のオブジェクト追尾部52の他の構成例を示している。図12の例においては、追尾処理部71は共通しているが、追尾処理制御部72の詳細な構成が異なっている。すなわち、図12の追尾処理制御部72には、追尾結果記憶部81、位置算出部82、および位置対象設定部83の他に、追尾結果更新部161が追加されている。
FIG. 12 shows another configuration example of the
追尾結果更新部161は、追尾結果記憶部81に記憶される複数の追尾結果のうち、1つを基本追尾方式の追尾結果として設定し、所定の拘束条件を満たしたとき、基本追尾方式の追尾結果の位置で、他の追尾方式の一部、または全部の追尾結果の位置を更新する。
The tracking
追尾結果更新部161における、所定の拘束条件としては、例えば、時間の経過や、基本追尾方式の追尾結果と他の全ての追尾結果の差異の大きさなどが用いられる。
As the predetermined constraint condition in the tracking
位置算出部82は、ユーザ操作情報に基づいて、追尾結果記憶部81の追尾結果の中から、1つの追尾結果を用いて、次のフレームの追尾対象の位置を求め、その他の追尾結果を用いて、候補位置を算出して、表示用追尾情報を生成し、その表示追尾情報を、全体システム制御部53に出力する。すなわち、図12の位置算出部82は、少なくとも他の追尾方式の一部の追尾結果の位置が更新されている追尾結果を用いて候補位置を算出することとなる。
Based on the user operation information, the
次に、図13のフローチャートを参照して、図12の追尾処理制御部72が実行する位置算出処理を説明する。なお、以降のステップS92乃至S94の処理は、図10のステップS71乃至S73と基本的に同様の処理を行うため繰り返しになるので、その説明は適宜省略する。
Next, the position calculation process executed by the tracking
図4のステップS2の追尾処理により、追尾結果記憶部81には、各追尾処理部71−1乃至71−nによる追尾結果が記憶されている。ステップS91において、追尾結果更新部161は、追尾結果更新処理を実行する。この追尾結果更新処理は、図14のフローチャートに示されている。
By the tracking process in step S2 of FIG. 4, the tracking
ステップS111において、追尾結果更新部161は、内蔵するタイマで計時動作を行い、所定の時間が経過したか否かを判定する。ステップS111において、所定の時間が経過したと判定された場合、ステップS112において、追尾結果更新部161は、追尾結果記憶部81に記憶される、少なくとも一部の他の追尾方式の追尾結果の位置を、基本追尾方式の追尾結果に基づいて更新させる。すなわち、少なくとも一部の他の追尾方式の追尾結果の位置が、基本追尾方式の追尾結果の位置で更新される。
In step S111, the tracking
ステップS111において、所定の時間が経過していないと判定された場合、ステップS112の処理はスキップされ、処理は、図13のステップS91に戻り、ステップS92に進む。 If it is determined in step S111 that the predetermined time has not elapsed, the process of step S112 is skipped, and the process returns to step S91 of FIG. 13 and proceeds to step S92.
ステップS92において、位置算出部82は、追尾結果記憶部81に記憶される追尾結果の中から、1つの追尾結果(すなわち、ユーザにより指定された候補位置に対応する追尾結果を追尾した追尾処理部71の次フレームの追尾結果)を用いて、追尾対象の位置を算出する。
In step S92, the
ステップS93において、位置算出部82は、追尾結果記憶部81に記憶される追尾結果の中から、残りの追尾結果を用いて、候補位置を算出する。なお、ステップS91において、所定の時間が経過した場合には、少なくとも一部の他の追尾方式の追尾結果の位置が、基本追尾方式の追尾結果の位置で更新されているため、更新時のフレームにおいては、更新された追尾結果から算出される候補位置は、基本追尾方式の追尾結果から算出される候補位置と同じ位置を示すこととなる。
In step S <b> 93, the
ステップS94において、位置算出部82は、ステップS92において算出された追尾対象の位置、およびステップS93において算出された候補位置を用いて、表示用追尾情報を生成し、全体システム制御部53に出力する。ステップS94において出力された表示用追尾情報は、全体システム制御部53を介して、表示画像生成部54に出力される。
In step S94, the
上述した図14の追尾結果の更新処理を、図15を参照して詳しく説明する。 The tracking result update process of FIG. 14 described above will be described in detail with reference to FIG.
図15の例においては、時刻Tにおける2つの追尾方式(追尾方式Aおよび追尾方式B)による追尾結果が、説明の便宜上、1次元で示されている。すなわち、横軸は時間tの経過を表し、縦軸は、位置xを表している。ここでは、追尾方式Aを基本追尾方式として、時刻T毎に、他の追尾方式Bの追尾結果を更新する例を説明する。 In the example of FIG. 15, the tracking results by the two tracking methods (tracking method A and tracking method B) at time T are shown in one dimension for convenience of explanation. That is, the horizontal axis represents the passage of time t, and the vertical axis represents the position x. Here, an example will be described in which the tracking method A is the basic tracking method, and the tracking result of another tracking method B is updated every time T.
まず、ユーザが指示する追尾対象の位置で、追尾方式Aおよび追尾方式Bによる追尾が共に開始されるが、時間の経過に伴って、実線で示される追尾方式Aと、点線で示される追尾方式Bの追尾結果の各位置は、異なる種類の追尾方式での追尾を行っていることから、離れていってしまうことがある。 First, tracking by the tracking method A and the tracking method B is started at the tracking target position designated by the user. The tracking method A indicated by a solid line and the tracking method indicated by a dotted line with the passage of time. Each position of the tracking result of B may be separated because tracking is performed using a different type of tracking method.
そこで、追尾開始から時間Tが経過した時刻Tにおいて、追尾方式Bによる追尾結果の位置を、追尾方式Aによる追尾結果の位置で更新するようにする。時刻2Tおよび時刻3Tにおいても、同様に、追尾方式Bによる追尾結果の位置が、追尾方式Aによる追尾結果の位置で更新される。
Therefore, the position of the tracking result by the tracking method B is updated with the position of the tracking result by the tracking method A at the time T when the time T has elapsed from the start of tracking. Similarly, at the
以上のように、ユーザが追尾対象を変更しようとしなければ、時間の経過に伴って、どんどん離れていってしまう追尾結果(軌跡)を、ある追尾方式の追尾結果に拘束させる、換言するに、一致させることにより、常に信頼できる候補位置を得ることができる。 As described above, if the user does not attempt to change the tracking target, the tracking result (trajectory) that moves away with time is restrained to the tracking result of a certain tracking method. By matching, it is possible to always obtain a reliable candidate position.
なお、図15の例においては、追尾方式Aを基本追尾方式に固定した例が示されているが、例えば、図16の例に示されるように、基本追尾方式を、途中で、他の追尾方式に切り替えることも可能である。 In the example of FIG. 15, an example in which the tracking method A is fixed to the basic tracking method is shown, but for example, as shown in the example of FIG. 16, the basic tracking method is changed to another tracking in the middle. It is also possible to switch to the method.
すなわち、図16の例においては、時刻2Tの直後に、基本追尾方式を、追尾方式Aから、追尾方式Bに切り替えている例が示されている。
That is, in the example of FIG. 16, an example in which the basic tracking method is switched from the tracking method A to the tracking method B immediately after
これにより、時刻Tおよび時刻2Tにおいては、点線に示される追尾方式Bによる追尾結果の位置が、実線に示される追尾方式Aによる追尾結果の位置で更新されているが、基本追尾方式が追尾方式Bに切り替えられた後の時刻3Tにおいては、実線に示される追尾方式Aによる追尾結果の位置が、点線に示される追尾方式Bによる追尾結果の位置で更新されている。
Thereby, at time T and
なお、図15および図16の例においては、更新間隔が一定の例が示されているが、一定ではなく、可変にすることも可能である。 In the example of FIGS. 15 and 16, an example in which the update interval is constant is shown, but it is not constant and can be made variable.
さらに、図17のフローチャートを参照して、図13のステップS91の追尾結果更新処理の例を説明する。すなわち、図17の処理は、図14の追尾結果更新処理の他の例である。 Further, an example of the tracking result update process in step S91 in FIG. 13 will be described with reference to the flowchart in FIG. That is, the process of FIG. 17 is another example of the tracking result update process of FIG.
図4のステップS2の追尾処理により、追尾結果記憶部81には、各追尾処理部71−1乃至71−nによる追尾結果が記憶されている。ステップS131において、追尾結果更新部161は、基本追尾方式の追尾結果の位置と他の追尾方式の追尾結果の位置の距離を求め、その距離が所定の閾値以上であるか否かを判定する。
By the tracking process in step S2 of FIG. 4, the tracking
ステップS131において、基本追尾方式の追尾結果の位置との距離が所定の閾値以上であると判定された場合、ステップS132において、追尾結果更新部161は、追尾結果記憶部81に記憶される、少なくとも一部の他の追尾方式の追尾結果の位置を、基本追尾方式の追尾結果に基づいて更新させる。
When it is determined in step S131 that the distance from the position of the tracking result of the basic tracking method is equal to or greater than a predetermined threshold, the tracking
ステップS131において、基本追尾方式の追尾結果との距離が所定の閾値以上ではないと判定された場合、ステップS132の処理はスキップされ、処理は、図13のステップS91に戻る。 If it is determined in step S131 that the distance from the tracking result of the basic tracking method is not equal to or greater than the predetermined threshold, the process in step S132 is skipped, and the process returns to step S91 in FIG.
上述した図17の追尾結果の更新処理を、図18を参照して詳しく説明する。 The tracking result update process of FIG. 17 described above will be described in detail with reference to FIG.
図18の例においては、時刻Tにおける3つの追尾方式(追尾方式A乃至C)による追尾結果が、説明の便宜上、1次元で示されている。すなわち、横軸は時間tの経過を表し、縦軸は、位置xを表している。ここでは、追尾方式Aを基本追尾方式として、他の追尾方式との追尾結果との追尾結果の距離が大きく離れた場合に、他の追尾方式BおよびCを更新する例を説明する。 In the example of FIG. 18, the tracking results by the three tracking methods (tracking methods A to C) at time T are shown in one dimension for convenience of explanation. That is, the horizontal axis represents the passage of time t, and the vertical axis represents the position x. Here, an example will be described in which the tracking method A is the basic tracking method, and the other tracking methods B and C are updated when the distance of the tracking result from the tracking result with the other tracking method is greatly separated.
まず、ユーザが指示する追尾対象の位置で、追尾方式A乃至Cによる追尾が共に開始されるが、時間の経過に伴って、実線で示される追尾方式A、点線で示される追尾方式B、および一点鎖線で示される追尾方式Cの追尾結果の各位置は離れていってしまう。 First, tracking by tracking methods A to C is started at the tracking target position designated by the user, and as time passes, tracking method A indicated by a solid line, tracking method B indicated by a dotted line, and Each position of the tracking result of the tracking method C indicated by the alternate long and short dash line is separated.
そこで、時刻tにおける、各追尾方式A乃至Cの追尾結果の位置をそれぞれxa(t),xb(t),xc(t)として、他の追尾方式BおよびCの各位置と、追尾方式Aの位置との距離の平均Dを求める。 Therefore, the positions of the tracking results of the tracking methods A to C at time t are respectively xa (t), xb (t), and xc (t), and the positions of the other tracking methods B and C are compared with the tracking method A. The average D of the distance to the position is obtained.
他の追尾方式BおよびCの各位置と、追尾方式Aの位置との距離の平均Dが、図19に示されるように、所定の閾値(Dth)以上になったとき(すなわち、時刻T)で、追尾方式BおよびCの追尾結果の位置を、追尾方式Aの追尾結果の位置で更新するようにする。これにより、図19の例においては、距離の平均Dが、所定の閾値(Dth)以上になった時刻Tにおいて、その距離の平均Dが一旦0になり(すなわち、リセットされ)、再度、距離の平均Dは、その0から時間の経過に伴い加算されていく。 When the average D of the distances between the positions of the other tracking methods B and C and the position of the tracking method A is equal to or greater than a predetermined threshold (Dth) as shown in FIG. 19 (that is, time T) Thus, the position of the tracking result of the tracking methods B and C is updated with the position of the tracking result of the tracking method A. Accordingly, in the example of FIG. 19, at the time T when the average distance D becomes equal to or greater than the predetermined threshold (Dth), the average distance D once becomes 0 (that is, is reset), and the distance again The average D is added over time from 0.
なお、この判定式は、次の式(1)で表すことができる。 This determination formula can be expressed by the following formula (1).
この場合も、図16の例の場合と同様に、基本追尾方式を途中で切り替えることができる。なお、他には、他の追尾方式BおよびCの追尾結果の各位置と、追尾方式Aの追尾結果の位置との距離の分散を計算し、分散が大きくなったときに更新するようにすることもできる。 Also in this case, as in the example of FIG. 16, the basic tracking method can be switched halfway. In addition, the variance of the distance between the tracking result positions of the other tracking methods B and C and the tracking result position of the tracking method A is calculated and updated when the variance becomes large. You can also.
なお、以上においては、追尾結果を拘束する条件として、図15および図16を参照して時間を用いる例、並びに、図18を参照して追尾結果の差の大きさを用いる例を説明したが、拘束条件は、どちらか一方でもよいし、両方を用いることもできる。 In the above description, the example of using time with reference to FIGS. 15 and 16 and the example of using the magnitude of the difference in tracking results with reference to FIG. 18 have been described as conditions for constraining the tracking result. Either one or both of the constraint conditions may be used.
また、例えば、追尾処理部71−1において、基本追尾方式としての追尾方式Aが行われる場合に、追尾処理部71−2と追尾処理部71−3に、同じ追尾方式Bによる追尾を行わせ、図20に示されるように、追尾処理部71−2については、第1のタイミング(例えば、時刻T,3T,5T,…)で2T時間毎に、追尾方式Aの追尾結果で更新を行わせ、追尾処理部71−3については、第1のタイミングとは異なる第2のタイミング(例えば、時刻2T,4T,6T,…)で2T時間毎に、追尾方式Aの追尾結果で更新を行わせることもできる。 Also, for example, when the tracking method A as the basic tracking method is performed in the tracking processing unit 71-1, the tracking processing unit 71-2 and the tracking processing unit 71-3 perform tracking by the same tracking method B. As shown in FIG. 20, the tracking processing unit 71-2 is updated with the tracking result of the tracking method A every 2T time at the first timing (for example, time T, 3T, 5T,...). The tracking processing unit 71-3 is updated with the tracking result of the tracking method A every 2T time at a second timing different from the first timing (for example, times 2T, 4T, 6T,...). It can also be made.
図20の例においては、時刻Tにおける2つの追尾方式(追尾方式AおよびB)による追尾結果が、説明の便宜上、1次元で示されている。すなわち、横軸は時間tの経過を表し、縦軸は、位置xを表している。ここでは、追尾方式Aを基本追尾方式として、時刻2T毎に、他の追尾方式Bの更新タイミングの異なるもの2つ(以下、追尾方式B−1および追尾方式B−2とする)を、それぞれタイミングをずらして更新する例を説明する。
In the example of FIG. 20, the tracking results by the two tracking methods (tracking methods A and B) at time T are shown in one dimension for convenience of explanation. That is, the horizontal axis represents the passage of time t, and the vertical axis represents the position x. Here, with tracking method A as the basic tracking method, two different update methods of tracking method B (hereinafter referred to as tracking method B-1 and tracking method B-2) at each
まず、ユーザが指示する追尾対象の位置で、追尾方式Aおよび追尾方式B−1による追尾が共に開始され、追尾方式Aの追尾が開始してから時間Tが経過した時刻Tにおいて、追尾方式Aの追尾結果の位置から追尾方式B−2による追尾も開始される。 First, the tracking method A and the tracking method B-1 are both started at the tracking target position designated by the user, and at the time T when the tracking method A has started tracking, the tracking method A Tracking by the tracking method B-2 is also started from the position of the tracking result.
そして、追尾方式AおよびB−1の追尾が開始されてから時間2Tが経過した時刻2Tにおいて、点線で示される追尾方式B−1による追尾結果の位置を、実線で示される追尾方式Aによる追尾結果の位置で更新するようにする。このとき、一点鎖線で示される追尾方式B−2による追尾結果の位置は、更新されず、更新されない追尾方式B−2による追尾結果の位置が、候補位置として算出される。
Then, at the
さらに、追尾方式Aの追尾が開始されてから時間3T(追尾方式B−2による追尾が更新されてから時間2T)が経過した時刻3Tにおいて、一点鎖線で示される追尾方式B−2による追尾結果の位置を、実線で示される追尾方式Aによる追尾結果の位置で更新するようにする。このとき、点線で示される追尾方式B−1による追尾結果の位置は、更新されず、更新されない追尾方式B−1による追尾結果の位置が、候補位置として算出される。
Furthermore, at
ここで、例えば、時刻2Tにおける追尾方式B−2の更新直後に、基本追尾方式である追尾方式Aで所望の追尾結果が得られなくなってしまった場合、次に、時刻3Tにおいて追尾方式Aの追尾結果で更新される追尾方式B−1は、所望の追尾結果を得られなくなった基本追尾方式に合わせられてしまう。これに対して、このとき更新されない追尾方式B−2は、所望の追尾結果が得られなくなってしまう前の追尾方式Aの追尾結果で更新されており、正しく追尾できている可能性が高い。したがって、この追尾方式B−2の追尾結果を候補位置として算出することで、信頼性の高い候補位置を表示させることができる。
Here, for example, immediately after the tracking method B-2 is updated at the
以上のように、更新タイミングがすべて同じであると、他の追尾方式が、例えば、更新直後に所望の追尾結果を得られなくなってしまった場合の基本追尾方式にすべて合わせられてしまうことが起こり得るが、それを回避することができる。 As described above, if the update timings are all the same, other tracking methods may be all adapted to the basic tracking method when a desired tracking result cannot be obtained immediately after the update, for example. You can get around it.
これにより、より信頼できる候補位置を得ることができる。なお、以上の効果を得るためには、複数の追尾処理部71−1乃至71−nで用いられる追尾方式を限定するものではなく、互いに追尾結果の傾向が異なる追尾方式を複数用意することが必要である。 Thereby, a more reliable candidate position can be obtained. In order to obtain the above effects, the tracking method used in the plurality of tracking processing units 71-1 to 71-n is not limited, and a plurality of tracking methods having different tracking result tendencies may be prepared. is necessary.
例えば、追尾方式としては、輝度波形に基づいてブロックマッチングを行う輝度波形ブロックマッチング方式、色波形に基づいてブロックマッチングを行う色波形ブロックマッチング方式、特許文献1に記載の乗り換え付き点追尾方式、動き領域重心追尾方式、または、過去動きで一定時間外挿を行う方式などが挙げられる。
For example, as a tracking method, a luminance waveform block matching method that performs block matching based on a luminance waveform, a color waveform block matching method that performs block matching based on a color waveform, a point tracking method with transfer described in
色波形ブロックマッチング方式は、用いる情報が輝度の代わりに色である以外は、輝度波形ブロックマッチング方式と同様の処理を行う。輝度波形ブロックマッチング方式では、追尾対象に輝度変化があった場合、対象から外れてしまう恐れが多かったが、色波形ブロックマッチング方式においては、輝度の成分を排除した色情報を用いることで、輝度変化があった場合であっても、正しく追尾できている可能性が高い。 The color waveform block matching method performs the same processing as the luminance waveform block matching method except that the information used is a color instead of a luminance. In the luminance waveform block matching method, if there is a change in luminance in the tracking target, there is a high possibility that it will be excluded from the target, but in the color waveform block matching method, the luminance information is eliminated by using the color information excluding the luminance component. Even if there is a change, there is a high possibility that it has been tracked correctly.
乗り換え付き点追尾方式は、図38を参照して詳しく後述するが、予め前フレームにおいて追尾点の乗り換え候補を求めておき、例えば、ブロックマッチングにより追尾点に動きが求められなくなったとき、追尾点を、その乗り換え候補に乗り換えさせることで、追尾対象が回転したり、オクルージョンが発生したり、シーンチェンジが発生する等、追尾点が一時的に見えなくなる場合に対応させるようにしたものである。 The point tracking method with transfer will be described in detail later with reference to FIG. 38, but a tracking point transfer candidate is obtained in advance in the previous frame. For example, when no movement is found at the tracking point by block matching, the tracking point By changing to the transfer candidate, the tracking point is temporarily invisible, such as when the tracking target rotates, occlusion occurs, or a scene change occurs.
動き領域重心追尾方式は、図34を参照して詳しく後述するが、固定領域内のあるサンプリング間隔毎に動き検出(例えば、ブロックマッチング)を行い、領域内で多数を占める動きと類似する動きを示す領域を追尾対象の領域と定義し、領域の重心を追尾対象の位置として追尾するものである。 The motion region center-of-gravity tracking method will be described in detail later with reference to FIG. 34. However, motion detection (for example, block matching) is performed at a certain sampling interval in the fixed region, and motion similar to the motion occupying the majority in the region is detected. The area to be shown is defined as a tracking target area, and the center of gravity of the area is tracked as the tracking target position.
過去動きで一定時間外挿を行う方式は、上述した追尾方式のうちの、ある追尾方式の過去の動きに基づいて、対象の動きを予測するものである。例えば、輝度波形ブロックマッチング方式などで追尾された追尾結果が、オクルージョンで前景に追尾対象が移ったときなどには、図21に示されるような軌跡を示すことがある。 The method of performing extrapolation for a certain period of time with the past motion predicts the target motion based on the past motion of a certain tracking method among the tracking methods described above. For example, the tracking result tracked by the luminance waveform block matching method or the like may show a locus as shown in FIG. 21 when the tracking target is moved to the foreground by occlusion.
図21の例においては、時刻t-5乃至時刻t+4における追尾結果の軌跡が示されている。追尾位置x(t-5)乃至追尾位置x(t+4)は、時刻t-5乃至時刻t+4における追尾結果をそれぞれ表しており、各追尾位置間の矢印は、各時刻間の動きを表している。追尾位置x(t-5)乃至追尾位置x(t)に示されるように、時刻t-5乃至時刻tでは、なだらかな動きが連続しているが、時刻t+1において、オクルージョンで前景に追尾対象が移ったなどの原因により、追尾位置x(t)から追尾位置x(t+1)への動きが不連続になってしまっている。
In the example of FIG. 21, the locus of the tracking result from time t-5 to time t + 4 is shown. Tracking position x (t-5) to tracking position x (t + 4) represent the tracking results from time t-5 to
そこで、このような場合に、図22に示されるように、時刻t-5乃至時刻t間の実線に示される過去の動きの履歴に基づいて、一点鎖線に示される外挿動きと、外挿するタイミングを決定し、決定されたタイミング(いまの場合、時刻tの後)から、過去の動きの履歴に基づいて求められた外挿動きを、点線で示される実際に求められる動き(図21)の代わりに、一定時間代用し続けさせるという方式である。 Therefore, in such a case, as shown in FIG. 22, based on the past movement history shown by the solid line between time t-5 and time t, extrapolation movement shown by the alternate long and short dash line, extrapolation The extrapolated motion determined based on the past motion history from the determined timing (in this case, after the time t in this case) is the actually determined motion indicated by the dotted line (FIG. 21). In place of), the system continues to substitute for a certain time.
このとき決定される外挿するタイミングとしては、例えば、ユーザが追尾対象を指示してから、一定時間毎(例えば、120フレーム毎など)としたり、あるいは、過去の動きの履歴を見て、動きが不連続になるとき(例えば、過去、数フレームの平均動きから大きく異なるとき)などが挙げられる。 As the extrapolation timing determined at this time, for example, after the user designates the tracking target, the extrapolation timing may be set at regular intervals (for example, every 120 frames), or by looking at the past movement history, Is discontinuous (for example, when it differs greatly from the average motion of several frames in the past).
また、このとき決定される外挿動きとしては、外挿するタイミングの数フレーム前の動きや、過去、数フレームの平均動きなどが挙げられる。なお、外挿するタイミングの数フレーム前でなくても、直前動きも考えられるが、直前の動きはオブジェクトの境界での動きになっている可能性があり、適切ではない場合もある。 Further, the extrapolation motion determined at this time includes a motion several frames before the extrapolation timing, an average motion of past and several frames, and the like. Note that the previous movement may be possible even if it is not several frames before the extrapolation timing, but the previous movement may be a movement at the boundary of the object and may not be appropriate.
なお、輝度波形ブロックマッチング方式を用いて追尾する場合を説明したが、追尾方式は限定されず、どの追尾方式であってもよい。 Although the case of tracking using the luminance waveform block matching method has been described, the tracking method is not limited, and any tracking method may be used.
以上のように、追尾結果の傾向が相互に異なる複数の追尾方式を用いて追尾を行い、それらの追尾結果を候補位置とするようにしたので、さまざまな外乱に対応した信頼性のある候補を表示させることができる。これにより、ユーザは、表示部21に表示される表示画像の候補位置を選択し、変更するだけで、細かい調整などを行わなくても、容易に、追尾対象の再設定を行うことができる。
As described above, tracking is performed using multiple tracking methods with different trends in tracking results, and the tracking results are set as candidate positions, so reliable candidates corresponding to various disturbances can be selected. Can be displayed. As a result, the user can easily reset the tracking target without making fine adjustments by selecting and changing the candidate position of the display image displayed on the
なお、上記説明においては、複数の追尾処理部71−1乃至71−nにそれぞれ異なる追尾方式での追尾を行わせるようにしたが、例えば、追尾方式は同じとして、それぞれの追尾処理部71−1乃至71−nに、初期設定の位置として、異なる追尾対象の位置で追尾処理を行わせることもできる。なお、追尾方式は、すべてが同じであってもよいし、少なくとも1以上異なっていてもよい。 In the above description, the plurality of tracking processing units 71-1 to 71-n are made to perform tracking using different tracking methods. However, for example, the tracking processing method is the same, and each tracking processing unit 71- It is also possible to cause 1 to 71-n to perform tracking processing at different tracking target positions as the default positions. Note that all tracking methods may be the same, or at least one or more may be different.
例えば、図23の表示画像101に示されるように、追尾処理開始時に、ユーザが人物111上のカーソルPが示す位置を追尾対象として指示した場合、対象位置設定部83は、カーソルPの位置と、カーソルPと同じオブジェクトに含まれ、カーソルPを中心とする近傍の異なる位置を、それぞれの追尾処理部71−1乃至71−nの追尾対象の位置として設定し、設定情報を、対応する追尾処理部71−1乃至71−nに供給する。
For example, as shown in the
なお、図23の例においては、n=5の場合の例を説明する。 In the example of FIG. 23, an example in the case of n = 5 will be described.
例えば、人物111上のカーソルPの位置が、追尾処理部71−1の追尾対象の位置として設定され、人物111上のカーソルPの上部近傍に位置する点Q2の位置が、追尾処理部71−2の追尾対象の位置として設定され、人物111上のカーソルPの右側近傍に位置する点Q3の位置が、追尾処理部71−3の追尾対象の位置として設定され、人物111上のカーソルPの下部近傍に位置する点Q4の位置が、追尾処理部71−4の追尾対象の位置として設定され、人物111上のカーソルPの左側近傍に位置する点Q5の位置が、追尾処理部71−5の追尾対象の位置として設定される。
For example, the position of the cursor P on the
これに対応して、追尾処理部71−1乃至71−5は、カーソルP、点Q2乃至点Q5が示す位置を追尾の対象位置として、それぞれ、追尾を行っていく。 In response to this, the tracking processing units 71-1 to 71-5 perform tracking with the positions indicated by the cursor P and the points Q2 to Q5 as tracking target positions, respectively.
なお、図23の例の場合、カーソルPの位置について追尾処理を行う追尾処理部71−1の追尾結果から、追尾対象の位置が算出され、他の追尾処理部71−2乃至71−5の追尾結果から、候補位置が算出される。 In the case of the example in FIG. 23, the position of the tracking target is calculated from the tracking result of the tracking processing unit 71-1 that performs the tracking process for the position of the cursor P, and the other tracking processing units 71-2 to 71-5 A candidate position is calculated from the tracking result.
処理開始から所定の時間の経過後には、表示画像181において、表示画像151の場合と同様に、ユーザが追尾対象として指示した人物111は、右上部に移動しており、左上部、左下部、右上部、および右下部には、木121、球122、人物111、および犬123がそれぞれ表示されている。
After a predetermined time has elapsed from the start of processing, in the
そして、表示画像101におけるカーソルPの位置を所定時間追尾した(追尾処理部71−1の)追尾結果から算出される、表示画像181上の追尾対象の位置を示すカーソルPは、ユーザが追尾対象として指示した人物111から外れ、木121および犬123の間の位置に表示されている。表示画像101における点Q2の位置を所定時間追尾した(追尾処理部71−2)の追尾結果から算出される、表示画像181上の候補位置を示す点Q2は、ユーザが追尾対象として指示した人物111上の位置に表示されている。表示画像101における点Q3の位置を所定時間追尾した(追尾処理部71−3)の追尾結果から算出される、表示画像181上の候補位置を示す点Q3は、ユーザが追尾対象として指示した人物111から外れて、犬123上の位置に表示されている。
The cursor P indicating the position of the tracking target on the
表示画像101における点Q4の位置を所定時間追尾した(追尾処理部71−4)の追尾結果から算出される、表示画像181上の候補位置を示す点Q4は、ユーザが追尾対象として指示した人物111から外れて、球122の境界上の位置に表示されている。表示画像101における点Q5の位置を所定時間追尾した(追尾処理部71−5)の追尾結果から算出される、表示画像181上の候補位置を示す点Q5は、ユーザが追尾対象として指示した人物111から外れて、木121および球122の間の位置に表示されている。
The point Q4 indicating the candidate position on the
すなわち、追尾処理開始時から、所定の時間が経過した後の追尾処理中には、カーソルPの位置についての追尾は、表示画像181中のカーソルPの位置に示されるように、例えば、変形やオクルージョンなどの原因により、ユーザが追尾対象として指示した人物111から外れてしまっている。
That is, during the tracking process after a predetermined time has elapsed since the start of the tracking process, the tracking of the position of the cursor P is, for example, as shown in the position of the cursor P in the
同様に、その他の点Q3乃至点Q5の位置についての追尾も、表示画像181中の点Q3乃至点Q5の位置に示されるように、例えば、変形やオクルージョンなどの原因により、ユーザが追尾対象として指示した人物111から外れてしまっている。
Similarly, the tracking of the positions of the other points Q3 to Q5 is also performed by the user as a tracking target due to, for example, deformation or occlusion, as indicated by the positions of the points Q3 to Q5 in the
このとき、点Q2の位置についての追尾処理が略正しく行われており、表示画像181中の追尾対象111上には、点Q2の位置についての追尾結果から算出された候補位置を示す点Q2が表示されているので、ユーザは、表示画像181において、点Q2が示している候補位置を選択し、変更を指示する。
At this time, the tracking process for the position of the point Q2 is performed substantially correctly, and the point Q2 indicating the candidate position calculated from the tracking result for the position of the point Q2 is displayed on the
これに対応して、位置算出部82は、点Q2が示している候補位置、すなわち、追尾方式Bの追尾結果から算出された候補位置を、追尾対象の位置として、対象位置設定部83に出力する。対象位置設定部83は、点Q2が示している候補位置を、追尾処理部71−1の追尾対象の位置として設定し、人物111上の点Q2の上部、右側、下部、および左側の各近傍に位置する図示せぬ位置を、追尾処理部71−2乃至72−5の追尾対象の位置として設定する。
In response to this, the
これにより、次のフレームからは、点Q2の位置が含まれるオブジェクト、すなわち、人物111が追尾対象として、追尾処理部71−1により追尾が開始され、表示部21には、その追尾結果を用いて算出された追尾対象の位置がカーソルPにより示される。
Thereby, from the next frame, tracking is started by the tracking processing unit 71-1 with the object including the position of the point Q2, that is, the
なお、図23の例の表示画像101および181には、カーソルPおよび各点Q2乃至点Q5と共に、カーソルPおよび点Q2乃至点Q5が示す位置と、カーソルPの位置との位置関係を示す「中心」、「上」、「右」、「下」、および「左」の文字が表示されているが、これらの文字の表示は、非表示にすることも可能である。
The
以上のように、ユーザの指示した追尾対象の位置を含めたその近傍の異なる複数の位置を、各追尾対象位置として、複数の追尾を行い、それらの追尾結果を候補位置とすることでも、さまざまな外乱に対応した信頼性のある候補を表示させることができる。これにより、ユーザは、表示部21に表示される表示画像の候補位置を選択し、変更するだけで、細かい調整などを行わなくても、容易に、追尾対象の再設定を行うことができる。
As described above, a plurality of different positions in the vicinity including the position of the tracking target instructed by the user are set as the tracking target positions, and a plurality of tracking is performed. Reliable candidates corresponding to various disturbances can be displayed. As a result, the user can easily reset the tracking target without making fine adjustments by selecting and changing the candidate position of the display image displayed on the
次に、上述したようにして求められる複数の候補位置の表示例とその操作方法について詳しく説明する。図4のステップS4乃至S6を参照して上述した位置算出部82の判定処理に示されるように、ユーザは、所望の追尾結果が得られていないと判断したときに、追尾装置12に対して、図24に示されるようなリモートコントローラ55を用いて、候補位置選択表示を指示し、対応する候補位置を選択して決定することで、追尾対象の位置を、所望の候補位置に変更するように、指示を入力することができる。
Next, a display example of a plurality of candidate positions obtained as described above and an operation method thereof will be described in detail. As shown in the determination process of the
図24は、図2のリモートコントローラ55の構成例を示している。図24の例においては、リモートコントローラ55には、上から順に9個の候補選択ボタン221−1乃至221−9、機能選択ボタン222−1乃至222−4、および決定ボタン223が備えられている。
FIG. 24 shows a configuration example of the
機能選択ボタン222−1乃至222−4は、追尾装置12に所定の機能を指示するためのボタンである。例えば、機能選択ボタン222−4は、候補位置選択表示を指示するためのボタンであり、ユーザにより機能選択ボタン222−4が指示された場合には、上述した図4のステップS9において、表示画像生成部54により、追尾対象の位置とともに、候補位置を示した表示画像、すなわち、図25に示される、候補位置が一覧できる候補一覧画像241が生成され、表示部21に表示される。
The function selection buttons 222-1 to 222-4 are buttons for instructing the
図25の候補一覧画像241は、図6の表示画像102と同様に、左上部に木121、左下部に球122、右上部に人物111、および右下部に犬123が撮像されて入力された画像に、追尾対象の位置および複数の候補位置を示すため、候補名を示す文字とともにカーソルPと点Rなどの小画像(アイコン)が重畳されて構成されている。
The
木121および球122の間に位置する候補位置には、「候補1」の文字と点Rが重畳されており、木121および犬123の間に位置する候補位置には、「候補2」の文字とカーソルPが重畳されており、人物111上に位置する候補位置には、「候補3」の文字と点Rが重畳されており、球122の境界上に位置する候補位置には、「候補4」の文字と点Rが重畳されており、犬123上に位置する候補位置には、「候補5」の文字と点Rが重畳されている。
The candidate position located between the
すなわち、図25の例においては、ユーザによる選択中の候補位置と他の候補位置の判別可能を目的として、選択中の候補位置には、候補名を示す文字とともに十字のカーソルP、他の候補位置には、候補名を示す文字とともに点Rが表示されるように、マークの形状を変えて表示させている。例えば、マークの形状を変える以外に、例えば、マークの大きさや、色などを変えて、選択中の候補位置との判別を可能にさせることもできる。 That is, in the example of FIG. 25, for the purpose of distinguishing the candidate position being selected by the user from other candidate positions, the candidate position being selected includes a cross cursor P and other candidates at the selected candidate position along with characters indicating the candidate names. At the position, the mark shape is changed so that the point R is displayed together with the characters indicating the candidate names. For example, in addition to changing the shape of the mark, for example, the size or color of the mark can be changed to enable discrimination from the currently selected candidate position.
なお、図25の例の場合、候補一覧画像241が表示された直後(すなわち、ユーザによる選択の指示がまだないとき)が示されているので、追尾対象の位置が選択されていることとして、追尾対象である「候補2」の位置に、カーソルPが表示されており、その他の候補位置(「候補1」、および「候補3」乃至「候補5」の位置)には、点Rがそれぞれ表示されている。
In the case of the example of FIG. 25, since the
図24に戻って、候補選択ボタン221−1乃至221−9は、候補一覧画像241に表示される候補位置に1対1で対応するボタンであり、例えば、候補選択ボタン221−1乃至221−5は、それぞれ、「候補1」乃至「候補5」の文字で示される各候補位置に対応している。
Returning to FIG. 24, the candidate selection buttons 221-1 to 221-9 are buttons corresponding to the candidate positions displayed in the
したがって、ユーザが候補選択ボタン221−3を押下した場合、「候補3」の文字で示される候補位置にカーソルPが表示され、「候補3」の文字で示される候補位置が選択される。このとき、「候補2」の文字で示される候補位置には、他の候補位置と同様の点Rが表示される。ユーザが他の候補選択ボタン221−1,221−2,221−4,および221−5を押下した場合にも同様に、対応する候補位置にカーソルPが表示され、いままでカーソルPが表示されていた候補位置には、点Rが表示される。
Therefore, when the user presses the candidate selection button 221-3, the cursor P is displayed at the candidate position indicated by the characters “
なお、図24の例の場合、候補選択ボタン221−6乃至221−9は、対応する候補位置がないので、押下されたとしても追尾装置12に対しての指示は送信されない。
In the case of the example in FIG. 24, the candidate selection buttons 221-6 to 221-9 do not have corresponding candidate positions, so that the instruction to the
決定ボタン223は、候補選択ボタン221−1乃至221−9が押下されることで選択されている候補位置を、追尾対象として決定するためのボタンである。
The
したがって、例えば、「候補3」の文字で示される候補位置にカーソルPが表示されている場合、すなわち、「候補3」の文字で示される候補位置が選択されている場合に、ユーザにより、リモートコントローラ55の決定ボタン223が押下されると、追尾装置12においては、「候補3」の文字で示されている候補位置が、追尾対象の位置として設定される。
Therefore, for example, when the cursor P is displayed at the candidate position indicated by the characters “
これにより、例えば、「候補3」の文字で示されている候補位置またはその位置が含まれる候補領域が、追尾対象の位置として設定されるので、候補位置または候補領域を含んで構成されるオブジェクトである人物111が追尾対象として追尾される。
Thereby, for example, the candidate position indicated by the characters “
なお、候補位置の選択については、候補位置に1対1に対応する候補選択ボタン221−1乃至221−9を押下する場合を説明したが、候補選択ボタン221−1乃至221−9を設けずに、例えば、図24の機能選択ボタン222−3を、候補を選択するためのボタンとして構成し、機能選択ボタン222−3を押下する度に、例えば、図26に示されるように、選択される候補位置が順番に切り替わるようにすることもできる。 As for the selection of the candidate position, the case where the candidate selection buttons 221-1 to 221-9 corresponding to the one-to-one correspondence with the candidate positions has been described, but the candidate selection buttons 221-1 to 221-9 are not provided. For example, the function selection button 222-3 in FIG. 24 is configured as a button for selecting a candidate, and the function selection button 222-3 is selected as shown in FIG. 26 each time the function selection button 222-3 is pressed. The candidate positions can be switched in order.
また、これらの候補選択ボタン221−1乃至221−9と機能選択ボタン222−3とを両方装備してリモートコントローラ55を構成することもできるし、候補選択ボタン221−1乃至221−9または機能選択ボタン222−3のどちらか一方だけを装備してリモートコントローラ55を構成することも可能である。
Also, the
図26の例においては、5つの候補位置が選択されることによる候補一覧画像251−1乃至251−5の遷移の例が示されている。 In the example of FIG. 26, an example of transition of candidate list images 251-1 to 251-5 by selecting five candidate positions is shown.
まず、表示部21には、候補一覧画像251−1が表示画像として表示されている。候補一覧画像251−1においては、「候補1」の文字で示される候補位置には、図25で上述したように、選択中を示すカーソルPが表示され、その他の候補位置には点Rが表示されている。
First, the candidate list image 251-1 is displayed on the
例えば、「候補1」の文字で示される候補位置が選択中である候補一覧画像251−1が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、表示部21には、矢印に示されるように、「候補1」の文字で示される候補位置に点Rが表示され、「候補2」の文字で示される候補位置にカーソルPが表示される、すなわち、「候補2」の文字で示される候補位置が選択中である候補一覧画像251−2が、表示画像として表示される。
For example, when the candidate list image 251-1 in which the candidate position indicated by the characters “
候補一覧画像251−2が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、表示部21には、矢印に示されるように、「候補2」の文字で示される候補位置に点Rが表示され、「候補3」の文字で示される候補位置にカーソルPが表示される、すなわち、「候補3」の文字で示される候補位置が選択中である候補一覧画像251−3が、表示画像として表示される。候補一覧画像251−3が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、表示部21には、矢印に示されるように、「候補3」の文字で示される候補位置に点Rが表示され、「候補4」の文字で示される候補位置にカーソルPが表示される、すなわち、「候補4」の文字で示される候補位置が選択中である候補一覧画像251−4が、表示画像として表示される。
If the user presses the function selection button 222-3 once while the candidate list image 251-2 is displayed, the
候補一覧画像251−4が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、表示部21には、矢印に示されるように、「候補4」の文字で示される候補位置に点Rが表示され、「候補5」の文字で示される候補位置にカーソルPが表示される、すなわち、「候補5」の文字で示される候補位置が選択中である候補一覧画像251−5が、表示画像として表示される。候補一覧画像251−5が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、表示部21には、矢印に示されるように、「候補5」の文字で示される候補位置に点Rが表示され、「候補1」の文字で示される候補位置にカーソルPが表示される、すなわち、再度、「候補1」の文字で示される候補位置が選択中である候補一覧画像251−1が、表示画像として表示される。
If the user presses the function selection button 222-3 once while the candidate list image 251-4 is displayed, the
したがって、「候補1」の文字で示される候補位置が選択中である候補一覧画像251−1が表示されているときに、例えば、人物111を追尾対象としたいときには、ユーザは、機能選択ボタン222−3を2度押下すればよい。
Therefore, when the candidate list image 251-1 in which the candidate position indicated by the characters “
これにより、「候補3」の文字で示される候補位置が選択中である候補一覧画像251−3が表示画像として表示される。ここで、ユーザによりリモートコントローラ55の決定ボタン223が押下されれば、追尾装置12においては、「候補3」の文字で示されている候補位置が、追尾対象の位置として設定される。
As a result, the candidate list image 251-3 in which the candidate position indicated by the characters “
すなわち、ユーザは、リモートコントローラ55の機能選択ボタン222−3を押下して、所望の候補位置を選択し、その後、リモートコントローラ55の決定ボタン223を押下するだけで、「候補3」の文字で示されている候補位置または候補領域を含んで構成されるオブジェクトである人物111を追尾対象として追尾させることができる。
That is, the user simply presses the function selection button 222-3 of the
次に、図2の表示画像生成部54の他の構成例とその動作について説明する。図27は、ズーム画像を生成する表示画像生成部54の詳細な構成例である。
Next, another configuration example and operation of the display
図27の表示画像生成部54は、拡大信号処理部301および追尾結果選択候補表示制御部302により構成される。
27 includes an enlarged
拡大信号処理部301は、入力画像を用いて、全体システム制御部53からのユーザ操作情報と、オブジェクト追尾部52の追尾処理により得られる表示用追尾情報に応じて、ズーム画像を生成し、生成したズーム画像を、追尾結果選択候補表示部302に出力する。
The enlarged
追尾結果選択候補表示部302は、拡大信号処理部301からのズーム画像を用いて、必要に応じて、入力画像も用いて、表示画像を生成し、生成した表示画像を、表示部21に表示させる。例えば、追尾結果選択候補表示部302は、ズーム画像に、必要に応じて、入力画像を用いて、全体システム制御部53からのユーザ操作情報と、オブジェクト追尾部52の追尾処理により得られる表示用追尾情報に応じて生成した追尾対象の位置と候補位置を示した縮小画像(すなわち、図25を参照して上述した候補一覧画像を縮小したもの)を重畳して、表示画像を生成し、生成した表示画像を、表示部21に表示させる。
The tracking result selection
次に、図27の表示画像生成部54の動作について説明する。図28は、図27の表示画像生成部54の表示画像生成処理の詳細を説明するフローチャートである。なお、この表示画像生成処理は、図4のステップS9の表示画像生成処理の他の例である。
Next, the operation of the display
ステップS301において、拡大信号処理部301は、入力画像を用いて、全体システム制御部53からのユーザ操作情報と、オブジェクト追尾部52の追尾処理により得られる表示用追尾情報に応じて、ズーム画像を生成する。
In step S301, the enlarged
例えば、ユーザにより候補位置選択表示が指示されていない場合には、図29の表示画像101に示されるように、追尾処理開始時に、ユーザが人物111上のカーソルPが示す位置を追尾対象として指示した場合、対象位置設定部83により、カーソルPの位置が、追尾対象の位置として設定されるとともに、位置算出部82は、追尾対象の位置および候補位置の情報を、表示用追尾情報として、表示画像生成部54に送信してくる。
For example, when the candidate position selection display is not instructed by the user, the user indicates the position indicated by the cursor P on the
したがって、拡大信号処理部301は、追尾対象の位置(すなわち、ユーザが追尾対象として指示した人物111)、を中心としたズーム画像321を生成し、生成したズーム画像321を、追尾結果選択候補表示部302に出力する。
Therefore, the enlarged
このズーム画像生成処理は、本出願人が先に提案しているクラス分類適応処理を利用して行うことができる。例えば、特開2002−196737公報には、予め学習して得た係数を用いて、525i信号を1080i信号に変換する処理が開示されている。この処理は、垂直方向と水平方向の両方に9/4倍に画像を拡大する処理と実質的に同様の処理である。ただし、表示部21は、画素数が一定であるため、拡大信号処理部301は、例えば9/4倍の画像を作成する場合、525i信号を1080i信号に変換した後、追尾点を中心とする所定の数の画素(表示部21に対応する数の画素)を選択することでズーム画像を生成することができる。
This zoom image generation processing can be performed using the class classification adaptation processing previously proposed by the present applicant. For example, Japanese Patent Laid-Open No. 2002-196737 discloses a process for converting a 525i signal into a 1080i signal using a coefficient obtained by learning in advance. This process is substantially the same as the process of enlarging the image 9/4 times in both the vertical direction and the horizontal direction. However, since the
この原理に基づいて、任意の倍率のズーム画像を生成することができる。 Based on this principle, a zoom image with an arbitrary magnification can be generated.
ステップS302において、追尾結果選択候補表示部302は、拡大信号処理部301からのズーム画像を用いて、表示画像を生成し、生成した表示画像を、表示部21に表示させる。すなわち、追尾結果選択候補表示部302は、ズーム画像に、必要に応じて、入力画像を用いて、全体システム制御部53からのユーザ操作情報と、オブジェクト追尾部52の追尾処理により得られる表示用追尾情報に応じて生成した追尾対象の位置と候補位置を示した候補一覧画像を縮小したものを重畳して、表示画像を生成する。
In step S <b> 302, the tracking result selection
なお、いまの場合、ユーザにより候補位置選択表示が指示されていないので、図29に示されるように、追尾対象である人物111の位置を中心に生成されたズーム画像321が、表示画像として表示部21に表示される。
In this case, since the candidate position selection display is not instructed by the user, as shown in FIG. 29, a
一方、ユーザにより候補位置選択表示が指示されている場合には、例えば、選択中の候補位置を中心に生成されたズーム画像が生成されて、図30に示されるように、表示画像として表示部21に表示することもできる。 On the other hand, when the candidate position selection display is instructed by the user, for example, a zoom image generated centering on the selected candidate position is generated, and as shown in FIG. 21 can also be displayed.
例えば、図25の候補一覧画像241を参照して説明すると、図25の候補一覧画像241において、「候補1」の文字で示される候補位置(すなわち、木121および球122の間に位置する候補位置)が選択されている場合、拡大信号処理部301においては、木121および球122の間に位置する候補位置を中心としたズーム画像351−1が生成されて、表示部21には、図30に示されるように、生成されたズーム画像351−1が表示画像として表示される。
For example, with reference to the
ここで、例えば、図26の例の場合と同様に、ユーザにより、リモートコントローラ55に備えられた、押下する度に選択される候補位置が順番に切り替わる機能を有する機能選択ボタン222−3が用いられるとする。
Here, for example, as in the case of the example of FIG. 26, the function selection button 222-3 provided in the
すなわち、図30のズーム画像351−1が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補1」の文字で示される候補位置から、例えば、「候補2」の文字で示される候補位置(すなわち、木121および犬123の間に位置する候補位置)に選択が切り替わり、拡大信号処理部301においては、木121および犬123の間に位置する候補位置を中心としたズーム画像351−2が生成されて、表示部21には、矢印に示されるように、生成されたズーム画像351−2が表示画像として表示される。
That is, when the zoom button 351-1 of FIG. 30 is displayed and the function selection button 222-3 is pressed once by the user, it is indicated by the characters “
図30のズーム画像351−2が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補2」の文字で示される候補位置から、例えば、「候補3」の文字で示される候補位置(すなわち、人物111上に位置する候補位置)に選択が切り替わり、拡大信号処理部301においては、人物111上に位置する候補位置を中心としたズーム画像351−3が生成されて、表示部21には、矢印に示されるように、生成されたズーム画像351−3が表示画像として表示される。
When the zoom image 351-2 of FIG. 30 is displayed and the user presses the function selection button 222-3 once, the candidate indicated by the characters “
図30のズーム画像351−3が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補3」の文字で示される候補位置から、例えば、「候補4」の文字で示される候補位置(すなわち、球122の境界上に位置する候補位置)に選択が切り替わり、拡大信号処理部301においては、球122の境界上に位置する候補位置を中心としたズーム画像351−4が生成されて、表示部21には、矢印に示されるように、生成されたズーム画像351−4が表示画像として表示される。
When the zoom image 351-3 in FIG. 30 is displayed and the function selection button 222-3 is pressed once by the user, candidates indicated by the characters “
図30のズーム画像351−4が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補4」の文字で示される候補位置から、例えば、「候補5」の文字で示される候補位置(すなわち、犬123上に位置する候補位置)に選択が切り替わり、拡大信号処理部301においては、犬123上に位置する候補位置を中心としたズーム画像351−5が生成されて、表示部21には、矢印に示されるように、生成されたズーム画像351−5が表示画像として表示される。
When the zoom image 351-4 in FIG. 30 is displayed and the function selection button 222-3 is pressed once by the user, candidates indicated by the characters “
図30のズーム画像351−5が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補5」の文字で示される候補位置から、例えば、「候補1」の文字で示される候補位置(すなわち、木121および球122の間に位置する候補位置)に選択が切り替わり、拡大信号処理部301においては、木121および球122の間に位置する候補位置を中心としたズーム画像351−1が生成されて、表示部21には、矢印に示されるように、生成されたズーム画像351−1が表示画像として表示される。
When the zoom image 351-5 in FIG. 30 is displayed and the user presses the function selection button 222-3 once, the candidate indicated by the characters “
なお、上述したようなズーム画像だけでは、選択中の候補位置がわかりにくくなることも考えられるので、図31に示されるように、図30の各ズーム画像に、例えば、図26を参照して説明した候補一覧画像を縮小して重畳し、選択中の候補位置を中心としたズーム画像と、選択中の候補位置にカーソルPが重畳される候補一覧画像を同時に表示させるようにすることもできる。 Note that it is conceivable that the candidate position being selected can be difficult to understand with only the zoom image as described above. Therefore, as shown in FIG. 31, each zoom image in FIG. The described candidate list image can be reduced and superimposed so that a zoom image centered on the selected candidate position and a candidate list image on which the cursor P is superimposed on the selected candidate position can be displayed simultaneously. .
例えば、図25の候補一覧画像241を参照して説明すると、図25の候補一覧画像241において、「候補1」の文字で示される候補位置(すなわち、木121および球122の間に位置する候補位置)が選択されている場合、表示部21には、木121および球122の間に位置する候補位置を中心としたズーム画像351−1に、木121および球122の間に位置する候補位置にカーソルPが表示される図26の候補一覧画像251−1が縮小されて、重畳された表示画像361−1が表示される。
For example, with reference to the
これにより、ユーザは、ズーム画像351−1が、候補一覧画像251−1上のカーソルPの位置を中心として拡大されたものであることを認識することができる。 Thereby, the user can recognize that the zoom image 351-1 is enlarged around the position of the cursor P on the candidate list image 251-1.
ここで、例えば、図26の例の場合と同様に、ユーザにより、リモートコントローラ55に備えられた、押下する度に選択される候補位置が順番に切り替わる機能を有する機能選択ボタン222−3が用いられるとする。
Here, for example, as in the case of the example of FIG. 26, the function selection button 222-3 provided in the
すなわち、図31の表示画像361−1が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補1」の文字で示される候補位置から、例えば、「候補2」の文字で示される候補位置(すなわち、木121および犬123の間に位置する候補位置)に選択が切り替わる。これに対応して、矢印に示されるように、表示部21には、木121および犬123の間に位置する候補位置を中心としたズーム画像351−2に、木121および犬123の間に位置する候補位置にカーソルPが表示される図26の候補一覧画像251−2が縮小されて、重畳された表示画像361−2が表示される。
That is, when the user presses the function selection button 222-3 once while the display image 361-1 in FIG. 31 is displayed, it is indicated by the characters “
図31の表示画像361−2が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補2」の文字で示される候補位置から、例えば、「候補3」の文字で示される候補位置(すなわち、人物111上に位置する候補位置)に選択が切り替わる。これに対応して、矢印に示されるように、表示部21には、人物111上に位置する候補位置を中心としたズーム画像351−3に、人物111上に位置する候補位置にカーソルPが表示される図26の候補一覧画像251−3が縮小されて、重畳された表示画像361−3が表示される。
When the function selection button 222-3 is pressed once by the user while the display image 361-2 of FIG. 31 is displayed, candidates indicated by the characters “
図31の表示画像361−3が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補3」の文字で示される候補位置から、例えば、「候補4」の文字で示される候補位置(すなわち、球122の境界上に位置する候補位置)に選択が切り替わる。これに対応して、矢印に示されるように、表示部21には、球122の境界上に位置する候補位置を中心としたズーム画像351−4に、球122の境界上に位置する候補位置にカーソルPが表示される図26の候補一覧画像251−4が縮小されて、重畳された表示画像361−4が表示される。
When the function selection button 222-3 is pressed once by the user while the display image 361-3 of FIG. 31 is displayed, candidates indicated by the characters “
図31のズーム画像361−4が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補4」の文字で示される候補位置から、例えば、「候補5」の文字で示される候補位置(すなわち、犬123上に位置する候補位置)に選択が切り替わる。これに対応して、矢印に示されるように、表示部21には、犬123上に位置する候補位置を中心としたズーム画像351−5に、犬123上に位置する候補位置にカーソルPが表示される図26の候補一覧画像251−5が縮小されて、重畳された表示画像361−5が表示される。
If the user presses the function selection button 222-3 once while the zoom image 361-4 in FIG. 31 is displayed, the candidates indicated by the characters “
図31のズーム画像361−5が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補5」の文字で示される候補位置から、例えば、「候補1」の文字で示される候補位置(すなわち、木121および球122の間に位置する候補位置)に選択が切り替わる。これに対応して、矢印に示されるように、表示部21には、木121および球122の間に位置する候補位置を中心としたズーム画像351−1に、木121および球122の間に位置する候補位置にカーソルPが表示される図26の候補一覧画像251−1が縮小されて、重畳された表示画像361−1が再度表示される。
When the function selection button 222-3 is pressed once by the user while the zoom image 361-5 of FIG. 31 is displayed, candidates indicated by the characters “
なお、図31の例においては、ズーム画像351−1に、候補一覧画像251−1を縮小させて重畳させる場合を説明したが、例えば、候補一覧画像251−1を大きく表示させ、ズーム画像351−1を縮小させて、重畳表示させることも可能である。 In the example of FIG. 31, the case has been described in which the candidate list image 251-1 is reduced and superimposed on the zoom image 351-1. For example, the candidate list image 251-1 is displayed large and the zoom image 351 is displayed. -1 can be reduced and superimposed display can be performed.
また、図32に示されるように、各候補位置を中心とした図30のズーム画像を同時に表示させることもできる。 Further, as shown in FIG. 32, the zoom image of FIG. 30 centering on each candidate position can be displayed simultaneously.
図32は、候補位置が4つの場合、すなわち、図25の候補一覧画像241における「候補2」乃至「候補5」で示される4つの候補位置で構成される場合の例を示している。
FIG. 32 shows an example of the case where there are four candidate positions, that is, the case where the
図32の例においては、図25の候補一覧画像241における「候補2」の文字で示される候補位置(すなわち、木121および犬123の間に位置する候補位置)を中心に生成されたズーム画像351−2、図25の候補一覧画像241における「候補3」の文字で示される候補位置(すなわち、人物111上に位置する候補位置)を中心に生成されたズーム画像351−3、図25の候補一覧画像241における「候補4」の文字で示される候補位置(すなわち、球122の境界上に位置する候補位置)を中心に生成されたズーム画像351−4、並びに、図25の候補一覧画像241における「候補5」の文字で示される候補位置(すなわち、犬123上に位置する候補位置)を中心に生成されたズーム画像351−5により構成される複数ズーム画像371−1乃至371−4が示されている。
In the example of FIG. 32, a zoom image generated around the candidate position indicated by the characters “
例えば、ユーザにより、リモートコントローラ55における、「候補2」の文字に対応している候補選択ボタン221−2が押下された場合、表示部21には、例えば、枠381が重畳されることで、「候補2」の文字で示される候補位置を中心として生成されたズーム画像351−2がフォーカスされた複数ズーム画像371−1が表示画像として表示される。
For example, when the candidate selection button 221-2 corresponding to the character “
ユーザにより、リモートコントローラ55における、「候補3」の文字に対応している候補選択ボタン221−3が押下された場合、表示部21には、例えば、枠381が重畳されることで、「候補3」の文字で示される候補位置を中心として生成されたズーム画像351−3がフォーカスされた複数ズーム画像371−2が表示画像として表示される。
When the user presses the candidate selection button 221-3 corresponding to the character “
ユーザにより、リモートコントローラ55における、「候補4」の文字に対応している候補選択ボタン221−4が押下された場合、表示部21には、例えば、枠381が重畳されることで、「候補4」の文字で示される候補位置を中心として生成されたズーム画像351−4がフォーカスされた複数ズーム画像371−3が表示画像として表示される。
When the user presses the candidate selection button 221-4 corresponding to the character “
同様に、ユーザにより、リモートコントローラ55における、「候補5」の文字に対応している候補選択ボタン221−5が押下された場合、表示部21には、例えば、枠381が重畳されることで、「候補5」の文字で示される候補位置を中心として生成されたズーム画像351−5がフォーカスされた複数ズーム画像371−4が表示画像として表示される。
Similarly, when the user presses the candidate selection button 221-5 corresponding to the character “
以上のように、リモートコントローラ55を操作し、枠381でフォーカスされるズーム画像を切り替えて見ることで、ユーザは、自分が選択する候補位置を確認することができる。
As described above, by operating the
さらに、図33に示されるように、図32の複数ズーム画像を縮小して、図26の候補一覧画像に重畳して表示させることもできる。 Furthermore, as shown in FIG. 33, the multiple zoom images of FIG. 32 can be reduced and displayed superimposed on the candidate list image of FIG.
例えば、図25の候補一覧画像241において、「候補2」の文字で示される候補位置(すなわち、木121および犬123の間に位置する候補位置)が選択されている場合、表示部21には、木121および球122の間に位置する候補位置にカーソルPが表示される図26の候補一覧画像251−1に、枠381が重畳されることで、木121および球122の間に位置する候補位置を中心として生成されたズーム画像351−2がフォーカスされた図32の複数ズーム画像371−1が縮小して重畳された表示画像391−1が表示される。
For example, in the
ここで、例えば、図26の例の場合と同様に、ユーザにより、リモートコントローラ55に備えられた、押下する度に選択される候補位置が順番に切り替わる機能を有する機能選択ボタン222−3が用いられるとする。
Here, for example, as in the case of the example of FIG. 26, the function selection button 222-3 provided in the
図33の表示画像391−1が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補2」の文字で示される候補位置から、例えば、「候補3」の文字で示される候補位置(すなわち、人物111上に位置する候補位置)に選択が切り替わる。これに対応して、矢印に示されるように、表示部21には、人物111上に位置する候補位置にカーソルPが表示される図26の候補一覧画像251−3に、人物111上に位置する候補位置を中心としたズーム画像351−3がフォーカスされた図32の複数ズーム画像371−2が縮小して重畳された表示画像391−2が表示される。
When the function selection button 222-3 is pressed once by the user while the display image 391-1 shown in FIG. 33 is displayed, candidates indicated by the characters “
図33の表示画像361−2が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補3」の文字で示される候補位置から、例えば、「候補4」の文字で示される候補位置(すなわち、球122の境界上に位置する候補位置)に選択が切り替わる。これに対応して、矢印に示されるように、表示部21には、球122の境界上に位置する候補位置にカーソルPが表示される図26の候補一覧画像251−4に、球122の境界上に位置する候補位置を中心としたズーム画像351−4がフォーカスされた図32の複数ズーム画像371−3が縮小して重畳された表示画像391−3が表示される。
When the function selection button 222-3 is pressed once by the user while the display image 361-2 of FIG. 33 is displayed, candidates indicated by the characters “
図33のズーム画像391−3が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補4」の文字で示される候補位置から、例えば、「候補5」の文字で示される候補位置(すなわち、犬123上に位置する候補位置)に選択が切り替わる。これに対応して、矢印に示されるように、表示部21には、犬123上に位置する候補位置にカーソルPが表示される図26の候補一覧画像251−5に、犬123上に位置する候補位置を中心としたズーム画像351−5がフォーカスされた図32の複数ズーム画像371−4が縮小して重畳された表示画像391−4が表示される。
When the zoom image 391-3 of FIG. 33 is displayed and the function selection button 222-3 is pressed once by the user, candidates indicated by the characters “
そして、図33のズーム画像391−4が表示されているときに、ユーザにより機能選択ボタン222−3が1度押下されると、図25の候補一覧画像241における「候補5」の文字で示される候補位置から、例えば、「候補2」の文字で示される候補位置(すなわち、木121および犬123の間に位置する候補位置)に選択が切り替わる。これに対応して、矢印に示されるように、表示部21には、木121および犬123の間に位置する候補位置にカーソルPが表示される図26の候補一覧画像251−2に、木121および犬123の間に位置する候補位置を中心としたズーム画像351−2がフォーカスされた図32の複数ズーム画像371−1が縮小して重畳された表示画像391−4に表示が戻る。
When the function selection button 222-3 is pressed once by the user while the zoom image 391-4 of FIG. 33 is displayed, it is indicated by the characters “
なお、図30、図31、および図33においては、機能選択ボタン222−3を用いて操作する例を説明し、図32においては、候補選択ボタン221−1乃至221−9を用いて操作する例を説明したが、図30、図31、および図33における表示は、候補選択ボタン221−1乃至221−9を用いて操作することもできるし、図32における表示も、機能選択ボタン222−3を用いて操作することができる。 30, 31, and 33, an example in which operation is performed using the function selection button 222-3 will be described, and in FIG. 32, operation is performed using candidate selection buttons 221-1 to 221-9. Although the example has been described, the display in FIGS. 30, 31, and 33 can be operated using the candidate selection buttons 221-1 to 221-9, and the display in FIG. 32 is also the function selection button 222-. 3 can be operated.
以上のように、候補位置を明確に表示することで、ユーザは、所望の候補位置を簡単に選択することができる。 As described above, the user can easily select a desired candidate position by clearly displaying the candidate position.
なお、上記説明においては、追尾対象の候補位置を表示させるタイミングとして、ユーザにより、図24のリモートコントローラ55の機能ボタン222−4が押下されることで、追尾対象の候補位置を表示する例を説明したが、例えば、追尾開始と共に、常に、追尾対象の候補位置(すなわち、図9のオブジェクト追尾部52の場合には、全追尾結果)を表示させたり、あるいは、ユーザに候補選択を促すために、所定時間(例えば、10秒)毎に、追尾対象の候補位置を表示させることもできる。
In the above description, as an example of displaying the tracking target candidate position, the function button 222-4 of the
さらに、追尾装置12においては、ユーザが所望した追尾結果ではないと推定されたタイミングで、追尾対象の候補位置を表示させることもできる。
Further, the
この推定は、以下に説明するようにして、図2の全体システム制御部53で実行される。まず、例えば、図9のオブジェクト追尾部52において、基本追尾方式をブロックマッチングで行う場合に、ブロックマッチング方式で追尾する追尾処理部71−1において検出された動きベクトルの信頼性の数値が低いと判定されたとき(例えば、後述する図43のステップS1124における判定がNoの場合)、全体システム制御部53は、追尾結果がユーザの所望した追尾結果ではないと推定し、表示画像生成部54を制御して、追尾対象の候補位置を表示させることができる。
This estimation is executed by the overall
また、追尾処理部71に、図38を参照して後述するシーンチェンジを検出するシーンチェンジ検出部1053を構成させて、そのシーンチェンジ検出部1053によりシーンチェンジが検出されたときに、全体システム制御部53は、例えば、追尾結果がユーザの所望した追尾結果ではないと推定し、表示画像生成部54を制御し、追尾対象の候補位置を表示させることができる。
Further, the
さらに、図9のオブジェクト追尾部52の場合に、図18を参照して上述したように、基本追尾方式とその他の追尾方式の追尾結果の平均距離が大きいと判定されたり、あるいは、全追尾結果の分散が大きいと判定されるなど、複数の追尾方式による追尾結果が大きく異なると判定されたときに、全体システム制御部53は、例えば、追尾結果がユーザの所望した追尾結果ではないと推定して、表示画像生成部54を制御し、追尾対象の候補位置を表示させることができる。
Further, in the case of the
また、図9のオブジェクト追尾部52において、図23を参照して上述したように、各追尾処理部71−1乃至71−nに、複数の異なる追尾対象の位置で追尾処理を行わせる場合に、その追尾結果が大きく異なると判定されたときに、全体システム制御部53は、例えば、追尾結果がユーザの所望した追尾結果ではないと推定して、表示画像生成部54を制御し、追尾対象の候補位置を表示させることができる。
In the case where the
これにより、ユーザは、所望した追尾対象から追尾が外れていることをすぐに認識することができる。そして、ユーザは、候補位置を選択するだけの容易な操作で、すぐに、追尾対象を修正することができる。 As a result, the user can immediately recognize that the tracking is out of the desired tracking target. Then, the user can immediately correct the tracking target with an easy operation of selecting a candidate position.
次に、図3の追尾処理部71の詳細な構成例と、その動作について説明する。図34は、動き領域重心追尾方式による追尾処理部71の機能的構成例を示すブロック図である。この例では、追尾処理部71は、動きベクトル検出部501、頻度分布算出部502、サンプル点抽出部503、重心算出部504、および追尾点更新部505により構成されている。
Next, a detailed configuration example and operation of the
入力端子51からの入力画像は、動きベクトル検出部501およびサンプル点抽出部503に入力される。動きベクトル検出部501は、入力画像における追尾点を中心とした領域内で動きベクトルを検出する。頻度分布算出部502は、動きベクトル検出部501により検出された動きベクトルを用いて、その領域内の動きベクトルの頻度分布を算出する。
An input image from the
サンプル点抽出部503は、動きベクトルの頻度分布に基づいて、入力画像における追尾点を中心とした領域内で、多数を占める動きと類似する動きを示すサンプル点を抽出し、それを追尾対象上の点とする。重心算出部504は、領域内の点が、サンプル点抽出部503により抽出された追尾対象のサンプル点であるか否かに基づいて、サンプル点の重心を算出する。
Based on the motion vector frequency distribution, the sample
追尾点更新部505は、重心算出部504により算出された重心に、頻度最大の動きを加算して、追尾点を更新し、更新された追尾点の情報を、追尾結果として、追尾処理制御部72に出力する。
The tracking
次に、図34の追尾処理部71の動作について説明する。図35は、図2のステップS3において、追尾処理部71が実行する追尾処理の詳細を説明するフローチャートである。
Next, the operation of the
ステップS501において、動きベクトル検出部501は、次のフレームの画像の入力を待機し、ステップS502において、入力画像における追尾点を中心とした領域内で動きベクトルを検出する。
In step S501, the motion
すなわち、その追尾点を含むフレーム(前フレーム)より時間的に次(後)のフレーム(次フレーム)をステップS501の処理で取り込むことで、結局連続する2フレームの画像が得られたことになる。 That is, by capturing the next frame (next frame) temporally from the frame including the tracking point (previous frame) in the process of step S501, two consecutive frames of images are obtained. .
動きベクトル検出部501は、図4のステップS7またはS8において対象位置設定部83により設定された追尾対象の位置(例えば、ユーザが追尾対象として指定した人物のオブジェクト522上の位置)を、追尾点Pとし、図36に示されるように、時間的に前に入力された前フレームの入力画像511における追尾点Pを中心とした領域521内で、サンプリング間隔(Sx,Sy)のサンプル点毎に、対応する後フレームのサンプル点を推定することで、動きベクトルを検出する。領域521の大きさは、サンプル数をm,nとすると、m*Sx×n*Sy(*は乗算を表す)となる。
The motion
ステップS503において、頻度分布算出部502は、動きベクトル検出部501により検出された動きベクトルを用いて、領域521内の動きベクトルの頻度分布を算出する。
In step S <b> 503, the frequency
例えば、領域521内の動きの候補を、Vx(水平動き:-16≦Vx≦16)、Vy(垂直動き:-16≦Vy≦16)とすると、33×33=1089の箱、すなわち動きベクトルがとり得る値に対応する座標分の箱を用意しておき、動きベクトルが発生した場合、その動きベクトルに対応する座標に1を加算する。例えば、あるサンプル点で(Vx,Vy)=(2,2)のとき、(2,2)の箱に1を足しこむ。これを、領域521内の全サンプル点に対して行うことで、領域521内の動きベクトルの頻度分布が算出される。
For example, if the motion candidates in the
ステップS504において、サンプル点抽出部503は、頻度分布算出部502により算出された動きベクトルの頻度分布に基づいて、入力画像における追尾点Pを中心とした領域521内で、多数を占める動きと類似する動きを示すサンプル点を抽出し、それを追尾対象上の点とする。
In step S504, the sample
すなわち、図36の領域521を拡大して図37に示すように、前フレームの入力画像511における人物のオブジェクト522を追尾対象とするように設定された追尾対象の位置である、追尾点Pを中心とした領域521内においては、人物のオブジェクト522が占める割合が多いので、人物のオブジェクト522上のサンプル点から検出される動きベクトル(太線矢印)が多数を占める。
That is, as shown in FIG. 37 by enlarging the
したがって、サンプル点抽出部503は、追尾点Pを中心とした領域521内で、多数を占める動きと類似する動きを示すサンプル点を抽出し、追尾対象上の点とする。
Therefore, the sample
ステップS505において、重心算出部504は、領域521内の点が、サンプル点抽出部503により抽出された追尾対象のサンプル点であるか否かに基づいて、サンプル点Sa(x,y)の重心G(x,y)を算出する。この算出式は、次の式(2)で表される。
In step S505, the center-of-
ここで、flag(i,j)(1≦i≦m,1≦j≦n)は、追尾対象のサンプル点であるか否かを示すフラグであり、サンプル点である場合には、1となり、サンプル点でない場合には、0となる。 Here, flag (i, j) (1 ≦ i ≦ m, 1 ≦ j ≦ n) is a flag indicating whether or not the sample point is a tracking target, and is 1 when it is a sample point. If it is not a sample point, it is 0.
ステップS506において、追尾点更新部505は、重心算出部504により算出された重心G(x,y)に、頻度最大の動きを加算して、追尾点を更新する。
In step S <b> 506, the tracking
そして、更新された追尾点の情報は、追尾結果として、追尾処理制御部72に出力され、追尾処理は終了し、処理は、図4のステップS2に戻り、その後、ステップS3において、追尾結果記憶部81に記憶される追尾結果に基づいて、追尾処理制御部72による位置算出処理が実行される。
The updated tracking point information is output as a tracking result to the tracking
次に、図3の追尾処理部71の詳細な他の構成例と、その動作について説明する。図38は、乗り換え付き点追尾方式による追尾処理を行う追尾処理部71の機能的構成例を示すブロック図である。この例では、追尾処理部71は、テンプレートマッチング部1051、動き推定部1052、シーンチェンジ検出部1053、背景動き推定部1054、領域推定関連処理部1055、乗り換え候補保持部1056、追尾点決定部1057、テンプレート保持部1058、および制御部1059により構成されている。
Next, another detailed configuration example and operation of the
テンプレートマッチング部1051は、入力画像と、テンプレート保持部1058に保持されているテンプレート画像のマッチング処理を行う。動き推定部1052は、入力画像の動きを推定し、推定の結果得られた動きベクトルと、その動きベクトルの確度を、シーンチェンジ検出部1053、背景動き推定部1054、領域推定関連処理部1055、および追尾点決定部1057に出力する。シーンチェンジ検出部1053は、動き推定部1052より供給された確度に基づいて、シーンチェンジを検出する。
The
背景動き推定部1054は、動き推定部1052より供給された動きベクトルと確度に基づいて背景動きを推定する処理を実行し、推定結果を領域推定関連処理部1055に供給する。領域推定関連処理部1055は、動き推定部1052より供給された動きベクトルと確度、背景動き推定部1054より供給された背景動き、並びに追尾点決定部1057より供給された追尾点情報に基づいて、領域推定処理を行う。また、領域推定関連処理部1055は、入力された情報に基づいて乗り換え候補を生成し、乗り換え候補保持部1056へ供給し、保持させる。さらに、領域推定関連処理部1055は、入力画像に基づいてテンプレートを作成し、テンプレート保持部1058に供給し、保持させる。
The background
追尾点決定部1057は、動き推定部1052より供給された動きベクトルと確度、並びに乗り換え候補保持部1056より供給された乗り換え候補に基づいて、追尾点を決定し、決定された追尾点に関する情報を領域推定関連処理部1055に出力する。
The tracking
制御部1059は、追尾処理制御部72からの設定情報(すなわち、追尾対象の位置情報)に基づいて、テンプレートマッチング部1051乃至テンプレート保持部1058の各部を制御して、設定された追尾対象を追尾させるとともに、追尾により求められた追尾点の画面上での位置の情報などの追尾結果を、追尾処理制御部72に出力する。
The
次に、追尾処理部71の動作について説明する。図39は、図4のステップS2において、追尾処理部71が実行する追尾処理の詳細を説明するフローチャートである。
Next, the operation of the
図39に示されるように、追尾処理部71は、基本的に通常処理と例外処理を実行する。すなわち、ステップS1051で通常処理が行われる。この通常処理の詳細は、図43を参照して後述するが、この処理により追尾処理制御部72により設定された追尾対象の位置情報に基づく、追尾点を追尾する処理が実行される。
As shown in FIG. 39, the
ステップS1051の通常処理において追尾点の乗り換えができなくなったとき、ステップS1052において、例外処理が実行される。この例外処理の詳細は、図58のフローチャートを参照して後述するが、この例外処理により、追尾点が画像から見えなくなったとき、テンプレートマッチングにより通常処理への復帰処理が実行される。例外処理によって追尾処理を継続することができなくなった(通常処理へ復帰することができなくなった)と判定された場合には処理が終了されるが、テンプレートによる復帰処理の結果、通常処理への復帰が可能と判定された場合には、処理は再びステップS1051に戻る。このようにして、ステップS1051の通常処理とステップS1052の例外処理が、フレーム毎に順次繰り返し実行される。 When the tracking point cannot be changed in the normal processing in step S1051, exception processing is executed in step S1052. The details of the exception processing will be described later with reference to the flowchart of FIG. 58. When the tracking point becomes invisible from the image by the exception processing, the return processing to the normal processing is executed by template matching. If it is determined that the tracking process cannot be continued due to the exception process (cannot return to the normal process), the process is terminated. If it is determined that recovery is possible, the process returns to step S1051. In this way, the normal process in step S1051 and the exception process in step S1052 are repeatedly executed sequentially for each frame.
図38の追尾処理部71においては、この通常処理と例外処理により、図40乃至図42に示されるように、追尾対象が回転したり、オクルージョンが発生したり、シーンチェンジが発生する等、追尾点が一時的に見えなくなった場合においても、追尾が可能となる。
In the
すなわち、例えば、図40に示されるように、フレームn−1には追尾対象(オブジェクト)としての人の顔1104が表示されており、この人の顔1104は、右目1102と左目1103を有している。ユーザが、このうちの、例えば右目1102(正確には、その中の1つの画素)を追尾点1101として指定したとする。図40の例においては、次のフレームnにおいて、人が図中左方向に移動しており、さらに次のフレームn+1においては、人の顔1104が時計方向に回動している。その結果、今まで見えていた右目1102が表示されなくなり、いままでの方法では、追尾ができなくなる。そこで、上述したステップS1051の通常処理においては、右目1102と同一の対象物としての顔1104上の左目1103が選択され、追尾点が左目1103に乗り換えられる(設定される)。これにより追尾が可能となる。
That is, for example, as shown in FIG. 40, a person's
図41の表示例では、フレームn−1において、顔1104の図中左側からボール1121が移動してきて、次のフレームnにおいては、ボール1121がちょうど顔1104を覆う状態となっている。この状態において、追尾点1101として指定されていた右目1102を含む顔1104が表示されていない。このようなオクルージョンが起きると、対象物としての顔1104が表示されていないので、追尾点1101に代えて追尾する乗り換え点もなくなり、以後、追尾点を追尾することが困難になる。しかし、本発明においては、追尾点1101としての右目1102をフレームn−1(実際には時間的にもっと前のフレーム)の画像がテンプレートとして予め保存されており、ボール1121がさらに右側に移動し、フレームn+1において、追尾点1101として指定された右目1102が再び現れると、上述したステップS1052の例外処理により、追尾点1101としての右目1102が再び表示されたことが確認され、右目1102が再び追尾点1101として追尾されることになる。
In the display example of FIG. 41, the
図42の例では、フレームn−1においては、顔1104が表示されているが、次のフレームnにおいては、自動車1111が人の顔を含む全体を覆い隠している。すなわち、この場合、シーンチェンジが起きたことになる。本発明では、このようにシーンチェンジが起きて追尾点1101が画像から存在しなくなっても、自動車1111が移動して、フレームn+1において再び右目1102が表示されると、ステップS1052の例外処理で、追尾点1101としての右目1102が再び出現したことがテンプレートに基づいて確認され、この右目1102を再び追尾点1101として追尾することが可能となる。
In the example of FIG. 42, the
次に、図43のフローチャートを参照して、図39のステップS1051の通常処理の詳細について説明する。ステップS1121において、追尾点決定部1057により通常処理の初期化処理が実行される。その詳細は、図44を参照して後述するが、この処理により、図4のステップS7またはS8で設定された追尾対象制御部72からの設定情報に基づく、ユーザから追尾するように指定された追尾点を基準とする領域推定範囲が指定される。この領域推定範囲は、ユーザにより指定された追尾点と同一の対象物(例えば、追尾点が人の目である場合、目と同様の動きをする剛体としての人の顔、または人の体など)に属する点の範囲を推定する際に参照する範囲である。乗り換え点は、この領域推定範囲の中の点から選択される。
Next, the details of the normal processing in step S1051 in FIG. 39 will be described with reference to the flowchart in FIG. In step S1121, the tracking
次に、ステップS1122において、制御部1059は、次のフレームの画像の入力を待機するように各部を制御する。ステップS1123において、動き推定部1052は、追尾点の動きを推定する。すなわち、追尾対象制御部72からの設定情報に基づく、ユーザにより指定された追尾点を含むフレーム(前フレーム)より時間的に後のフレーム(後フレーム)をステップS1122の処理で取り込むことで、結局連続する2フレームの画像が得られたことになるので、ステップS1123において、前フレームの追尾点に対応する後フレームの追尾点の位置を推定することで、追尾点の動きが推定される。
Next, in step S1122, the
なお、時間的に前とは、処理の順番(入力の順番)をいう。通常、撮像の順番に各フレームの画像が入力されるので、その場合、より時間的に前に撮像されたフレームが前フレームとなるが、時間的に後に撮像されたフレームが先に処理(入力)される場合には、時間的に後に撮像されたフレームが前フレームとなる。 Note that “preceding in time” means the processing order (input order). Normally, images of each frame are input in the order of imaging. In this case, the frame captured earlier in time becomes the previous frame, but the frame captured later in time is processed (input) first. ), The frame imaged later in time becomes the previous frame.
ステップS1124において、動き推定部1052は、ステップS1123の処理の結果、追尾点が推定可能であったか否かを判定する。追尾点が推定可能であったか否かは、例えば、動き推定部1052が生成、出力する動きベクトル(後述)の確度の値を、予め設定されている閾値と比較することで判定される。具体的には、動きベクトルの確度が閾値以上であれば推定が可能であり、閾値より小さければ推定が不可能であると判定される。すなわち、ここにおける可能性は比較的厳格に判定され、実際には推定が不可能ではなくても確度が低い場合には、不可能と判定される。これにより、より確実な追尾処理が可能となる。
In step S1124, the
なお、ステップS1124では、追尾点での動き推定結果と追尾点の近傍の点での動き推定結果が、多数を占める動きと一致する場合には推定可能、一致しない場合には推定不可能と判定するようにすることも可能である。 In step S1124, it is determined that the motion estimation result at the tracking point and the motion estimation result at a point in the vicinity of the tracking point can be estimated if they match the motions that occupy the majority, and if they do not match, it is determined that the estimation is impossible. It is also possible to do so.
追尾点の動きが推定可能であると判定された場合(追尾点が同一対象物上の対応する点上に正しく設定されている確率(右目1102が追尾点1101として指定された場合、右目1102が正しく追尾されている確率)が比較的高い場合)、ステップS1125に進み、追尾点決定部1057は、ステップS1123の処理で得られた推定動き(動きベクトル)の分だけ追尾点をシフトする。すなわち、これにより、前フレームの追尾点の追尾後の後フレームにおける追尾の位置が決定されることになる。ステップS1125において決定された追尾の位置情報は、追尾結果として、追尾処理制御部72に出力される。
When it is determined that the movement of the tracking point can be estimated (the probability that the tracking point is correctly set on the corresponding point on the same object (if the
ステップS1125の処理の後、ステップS1126において、領域推定関連処理が実行される。この領域推定関連処理の詳細は、図47を参照して後述するが、この処理により、ステップS1121の通常処理の初期化処理で指定された領域推定範囲が更新される。さらに、対象物体が回転するなどして、追尾点が表示されない状態になった場合に、追尾点を乗り換えるべき点としての乗り換え点としての候補(乗り換え候補)が、この状態(まだ追尾が可能な状態)において、予め抽出(作成)される。また、乗り換え候補への乗り換えもできなくなった場合、追尾は一旦中断されるが、再び追尾が可能になった(追尾点が再び出現した)ことを確認するために、テンプレートが予め作成される。 After step S1125, region estimation related processing is executed in step S1126. The details of this area estimation related process will be described later with reference to FIG. 47, and this process updates the area estimation range specified in the initialization process of the normal process in step S1121. Furthermore, if the tracking point is not displayed because the target object rotates, for example, the candidate as a switching point (transfer candidate) as a point to be switched to is the state (can still be tracked). In the state), it is extracted (created) in advance. Further, when the transfer to the transfer candidate cannot be performed, the tracking is temporarily interrupted, but a template is created in advance in order to confirm that the tracking is possible again (the tracking point appears again).
ステップS1126の領域推定関連処理が終了した後、処理は再びステップS1121に戻り、それ以降の処理が繰り返し実行される。 After the region estimation related processing in step S1126 is completed, the processing returns to step S1121 again, and the subsequent processing is repeatedly executed.
すなわち、図4のステップS7またはS8で設定された追尾対象制御部72からの設定情報に基づく、通常処理の初期化処理が行われ、ユーザから指定された追尾点の動きが推定可能である限り、ステップS1121乃至ステップS1126の処理がフレーム毎に繰り返し実行され、追尾が行われることになる。
That is, as long as the initialization process of the normal process is performed based on the setting information from the tracking
これに対して、ステップS1124において、追尾点の動きが推定可能ではない(不可能である)と判定された場合、すなわち、上述したように、例えば動きベクトルの確度が閾値以下であるような場合、処理はステップS1127に進む。ステップS1127において、追尾点決定部1057は、ステップS1126の領域推定関連処理で生成された乗り換え候補が乗り換え候補保持部1056に保持されているので、その中から、元の追尾点に最も近い乗り換え候補を1つ選択する。追尾点決定部1057は、ステップS1128で乗り換え候補が選択できたか否かを判定し、乗り換え候補が選択できた場合には、ステップS1129に進み、追尾点をステップS1127の処理で選択した乗り換え候補に乗り換える(変更する)。すなわち、乗り換え候補の点が新たな追尾点として設定される。その後、処理はステップS1123に戻り、乗り換え候補の中から選ばれた追尾点の動きを推定する処理が実行される。
On the other hand, when it is determined in step S1124 that the movement of the tracking point cannot be estimated (impossible), that is, as described above, for example, the accuracy of the motion vector is equal to or less than the threshold value. The process proceeds to step S1127. In step S1127, the tracking
ステップS1124において新たに設定された追尾点の動きが推定可能であるか否かが再び判定され、推定可能であれば、ステップS1125において追尾点を推定動き分だけシフトする処理が行われ、ステップS1126において、領域推定関連処理が実行される。その後、処理は再びステップS1121に戻り、それ以降の処理が繰り返し実行される。 In step S1124, it is determined again whether or not the movement of the newly set tracking point can be estimated. If it can be estimated, a process of shifting the tracking point by the estimated movement is performed in step S1125, and step S1126. In, the area estimation related process is executed. Thereafter, the processing returns to step S1121 again, and the subsequent processing is repeatedly executed.
ステップS1124において、新たに設定された追尾点も推定不可能であると判定された場合には、再びステップS1127に戻り、乗り換え候補の中から、元の追尾点に次に最も近い乗り換え候補が選択され、ステップS1129において、その乗り換え候補が新たな追尾点とされる。その新たな追尾点について、再びステップS1123以降の処理が繰り返される。 If it is determined in step S1124 that the newly set tracking point cannot be estimated, the process returns to step S1127, and the next transfer candidate closest to the original tracking point is selected from the transfer candidates. In step S1129, the transfer candidate is set as a new tracking point. The process after step S1123 is repeated for the new tracking point.
用意されているすべての乗り換え候補を新たな追尾点としても、追尾点の動きを推定することができなかった場合には、ステップS1128において、乗り換え候補が選択できなかったと判定され、この通常処理は終了される。そして、図39のステップS1052の例外処理に処理が進むことになる。 Even if all the prepared transfer candidates are used as new tracking points, if the movement of the tracking point cannot be estimated, it is determined in step S1128 that the transfer candidate cannot be selected, and this normal process is performed. Is terminated. Then, the process proceeds to the exception process in step S1052 of FIG.
次に、図44のフローチャートを参照して、図43のステップS1121の通常処理の初期化処理の詳細について説明する。 Next, details of the initialization process of the normal process in step S1121 of FIG. 43 will be described with reference to the flowchart of FIG.
ステップS1141において、制御部1059は、今の処理は例外処理からの復帰の処理であるのか否かを判定する。すなわち、ステップS1052の例外処理を終了した後、再びステップS1051の通常処理に戻ってきたのか否かが判定される。最初のフレームの処理においては、まだステップS1052の例外処理は実行されていないので、例外処理からの復帰ではないと判定され、処理はステップS1142に進む。ステップS1142において、追尾点決定部1057は、追尾点を追尾点指示の位置に設定する処理を実行する。追尾点決定部1057は、設定した追尾点の情報を領域推定関連処理部1055に供給する。
In step S1141, the
ステップS1143において、領域推定関連処理部1055は、ステップS1142の処理で設定された追尾点の位置に基づき、領域推定範囲を設定する。この領域推定範囲は、追尾点と同じ剛体上の点を推定する際の参照範囲であり、予め追尾点と同じ剛体部分が領域推定範囲の大部分を占めるように、より具体的には、追尾点と同じ剛体部分に推定領域範囲の位置や大きさが追随するように設定することで、領域推定範囲の中で最も多数を占める動きを示す部分を追尾点と同じ剛体部分であると推定できるようにするためのものである。ステップS1143では初期値として、例えば、追尾点を中心とする予め設定された一定の範囲が領域推定範囲とされる。
In step S1143, the region estimation related
その後処理は、図43のステップS1122に進むことになる。 Thereafter, the processing proceeds to step S1122 in FIG.
一方、ステップS1141において、現在の処理が、ステップS1052の例外処理からの復帰の処理であると判定された場合、ステップS1144に進み、追尾点決定部1057は、後述する図58を参照して後述する例外処理により、テンプレートにマッチした位置に基づき追尾点と領域推定範囲を設定する。例えば、テンプレート上の追尾点とマッチした現フレーム上の点が追尾点とされ、その点から予め設定されている一定の範囲が領域推定範囲とされる。その後、処理は図43のステップS1122に進む。
On the other hand, if it is determined in step S1141 that the current process is a process for returning from the exception process in step S1052, the process proceeds to step S1144, and the tracking
以上の処理を、図45を参照して説明すると次のようになる。すなわち、図44のステップS1142において、例えば、図45に示されるように、フレームn−1の人の目102が追尾点1101として指定されると、ステップS1143において、追尾点1101を含む所定の領域が領域推定範囲1133として指定される。ステップS1124において、領域推定範囲1133の範囲内のサンプル点が次のフレームにおいて推定可能であるか否かが判定される。図45の例の場合、フレームnの次のフレームn+1においては、領域推定範囲1133のうち、左目1102を含む図中左側半分の領域1134がボール1121で隠されているため、フレームnの追尾点1101の動きを、次のフレームn+1において推定することができない。そこで、このような場合においては、時間的に前のフレームn−1で乗り換え候補として予め用意されていた領域指定範囲1133内(右目1102を含む剛体としての顔1104内)の点の中から1つの点(例えば、顔1104に含まれる左目1103(正確には、その中の1つの画素))が選択され、その点がフレームn+1における、追尾点とされる。
The above process will be described with reference to FIG. That is, in step S1142 of FIG. 44, for example, as shown in FIG. 45, when the
領域推定関連処理部1055は、図43のステップS1126における領域推定関連処理を実行するために、図46に示されるような構成を有している。すなわち、領域推定関連処理部1055の領域推定部1161には、動き推定部1052より動きベクトルと確度が入力され、背景動き推定部1054より背景動きが入力され、そして追尾点決定部1057より追尾点の位置情報が入力される。乗り換え候補抽出部1162には、動き推定部1052より動きベクトルと確度が供給される他、領域推定部1161の出力が供給される。テンプレート作成部1163には、入力画像が入力される他、領域推定部1161の出力が入力される。
The region estimation related
領域推定部1161は、入力に基づいて、追尾点を含む剛体の領域を推定し、推定結果を乗り換え候補抽出部1162とテンプレート作成部1163に出力する。乗り換え候補抽出部1162は入力に基づき乗り換え候補を抽出し、抽出した乗り換え候補を乗り換え候補保持部1056へ供給する。テンプレート作成部1163は入力に基づきテンプレートを作成し、作成したテンプレートをテンプレート保持部1058へ供給する。
The
図47は、領域推定関連処理部1055により実行される領域推定関連処理(図43のステップS1126の処理)の詳細を表している。最初にステップS1161において、領域推定部1161により領域推定処理が実行される。その詳細は、図48を参照して後述するが、この処理により、追尾点が属する対象と同一の対象(追尾点と同期した動きをする剛体)に属すると推定される画像上の領域の点が領域推定範囲の点として抽出される。
FIG. 47 shows details of the region estimation related processing (the processing in step S1126 of FIG. 43) executed by the region estimation related
ステップS1162において、乗り換え候補抽出部1162により乗り換え候補抽出処理が実行される。その処理の詳細は、図53を参照して後述するが、領域推定部1161により領域推定範囲として推定された範囲の点から乗り換え候補の点が抽出され、乗り換え候補保持部1056に保持される。
In step S1162, the transfer
ステップS1163においてテンプレート作成部1163によりテンプレート作成処理が実行される。その詳細は、図54を参照して後述するが、この処理によりテンプレートが作成される。
In step S1163, the
次に、図48のフローチャートを参照して、図47のステップS1161の領域推定処理の詳細について説明する。 Next, the details of the region estimation processing in step S1161 in FIG. 47 will be described with reference to the flowchart in FIG.
最初に、ステップS1181において、領域推定部1161は、追尾点と同一の対象に属すると推定される点の候補の点としてのサンプル点を決定する。
First, in step S1181, the
このサンプル点は、例えば図49に示されるように、図中、白い四角形で示されるフレームの全画面における画素のうち、固定された基準点1201を基準として、水平方向および垂直方向に、所定の画素数ずつ離れた位置の画素をサンプル点(図中、黒い四角形で表されている)とすることができる。図49の例においては、各フレームの左上の画素が基準点1201とされ(図中基準点1201は×印で示されている)、水平方向に5個、並びに垂直方向に5個ずつ離れた位置の画素がサンプル点とされる。すなわち、この例の場合、全画面中に分散した位置の画素がサンプル点とされる。また、この例の場合、基準点は、各フレームn,n+1において固定された同一の位置の点とされる。
For example, as shown in FIG. 49, the sample points are predetermined in a horizontal direction and a vertical direction with reference to a fixed
なお、基準点1201は、各フレームn,n+1毎に異なる位置の点となるように、動的に変化させることもできる。
Note that the
また、図49の例においては、サンプル点の間隔が各フレームにおいて固定された値とされているが、フレーム毎にサンプル点の間隔を、例えば、フレームnにおいては5画素、フレームn+1においては8画素と可変とすることもできる。このときの間隔の基準としては、追尾点と同一の対象に属すると推定される領域の面積を用いることができる。具体的には、領域推定範囲の面積が狭くなれば間隔も短くなる。
In the example of FIG. 49, the interval between the sample points is a fixed value in each frame, but the interval between the sample points for each frame is, for example, 5 pixels in frame n and 8 in
あるいはまた、1つのフレーム内においてサンプル点の間隔を可変とすることもできる。このときの間隔の基準としては、追尾点からの距離を用いることができる。すなわち、追尾点に近いサンプル点ほど間隔が小さく、追尾点から遠くなるほど間隔が大きくなる。 Alternatively, the interval between sample points can be made variable in one frame. The distance from the tracking point can be used as a reference for the interval at this time. That is, the sample point closer to the tracking point has a smaller interval, and the farther from the tracking point, the larger the interval.
以上のようにしてサンプル点が決定されると、次にステップS1182において、領域推定部1161は、領域推定範囲(図44のステップS1143,S1144の処理、または、後述する図50のステップS1206,S1208の処理で決定されている)内のサンプル点の動きを推定する処理を実行する。すなわち、領域推定部1161は、動き推定部1052より供給された動きベクトルに基づいて、領域推定範囲内のサンプル点に対応する次のフレームの対応する点を抽出する。
When the sample points are determined as described above, in step S1182, the
ステップS1183において、領域推定部1161は、ステップS1182の処理で推定したサンプル点のうち、確度が予め設定されている閾値より低い動きベクトルに基づく点を対象外とする処理を実行する。この処理に必要な動きベクトルの確度は、動き推定部1052より供給される。これにより、領域推定範囲内のサンプル点のうち、確度が高い動きベクトルに基づいて推定された点だけが抽出される。
In step S1183, the
ステップS1184において、領域推定部1161は、領域推定範囲内の動き推定結果での全画面動きを抽出する。全画面動きとは、同一の動きに対応する領域を考え、その面積が最大となる動きのことを意味する。具体的には、各サンプル点の動きに、そのサンプル点におけるサンプル点間隔に比例する重みを付けて動きのヒストグラムを生成し、この重み付け頻度が最大となる1つの動き(1つの動きベクトル)が全画面動きとして抽出される。なお、ヒストグラムを生成する場合、例えば、動きの代表値を画素精度で準備し、画素精度で1個となる値を持つ動きについてもヒストグラムへの加算を行うようにすることもできる。
In step S1184, the
ステップS1185において、領域推定部1161は、全画面動きを持つ領域推定範囲内のサンプル点を領域推定の結果として抽出する。この場合における全画面動きを持つサンプル点としては、全画面動きと同一の動きを持つサンプル点はもちろんのこと、全画面動きとの動きの差が予め設定されている所定の閾値以下である場合には、そのサンプル点もここにおける全画面動きを持つサンプル点とすることも可能である。
In step S1185, the
このようにして、ステップS1143,S1144,S1206,S1208の処理で決定された領域推定範囲内のサンプル点のうち、全画面動きを有するサンプル点が、追尾点と同一対象に属すると推定される点として最終的に抽出(生成)される。 In this way, among the sample points within the region estimation range determined by the processing of steps S1143, S1144, S1206, and S1208, the sample points that have full screen motion are estimated to belong to the same target as the tracking points. Is finally extracted (generated).
次に、ステップS1186において、領域推定部1161は、領域推定範囲の更新処理を実行する。その後、処理は、図43のステップS122に進む。
Next, in step S1186, the
図50は、図48のステップS1186の領域推定範囲の更新処理の詳細を表している。ステップS1201において、領域推定部1161は、領域の重心を算出する。この領域とは、図48のステップS1185の処理で抽出されたサンプル点で構成される領域(追尾点と同一対象に属すると推定される点で構成される領域)を意味する。すなわち、この領域には1つの動きベクトル(全画面動き)が対応している。例えば、図51Aに示されるように、図中白い四角形で示されるサンプル点のうち、領域推定範囲1221内のサンプル点の中から、図48のステップS1185の処理で全画面動きを持つサンプル点として、図51Aにおいて黒い四角形で示されるサンプル点が抽出され、そのサンプル点で構成される領域が、領域1222として抽出(推定)される。そして、領域1222の重心1224がさらに算出される。具体的には、各サンプル点にサンプル点間隔の重みを付けたサンプル点重心が領域の重心として求められる。この処理は、現フレームにおける領域の位置を求めるという意味を有する。
FIG. 50 shows details of the region estimation range update processing in step S1186 of FIG. In step S1201, the
次にステップS202において、領域推定部1161は、領域の重心を全画面動きによりシフトする処理を実行する。この処理は、領域推定範囲1221を領域の位置の動きに追従させ、次フレームにおける推定位置に移動させるという意味を有する。図51Bに示されるように、現フレームにおける追尾点1223が、その動きベクトル1238に基づいて次フレームにおいて追尾点1233として出現する場合、全画面動きベクトル1230が、追尾点の動きベクトル1238にほぼ対応しているので、現フレームにおける重心1224を動きベクトル1230(全画面動き)に基づいてシフトすることで、追尾点1233と同一のフレーム(次フレーム)上の点1234が求められる。この点1234を中心として領域推定範囲1231を設定すれば、領域推定範囲1221を領域1222の位置の動きに追従させて、次のフレームにおける推定位置に移動させることになる。
Next, in step S202, the
ステップS1203において、領域推定部1161は、領域推定結果に基づき、次の領域推定範囲の大きさを決定する。具体的には、領域と推定された全てのサンプル点に関するサンプル点の間隔(図51Aにおける領域1222の中の黒い四角形で示される点の間隔)の2乗和を領域1222の面積と見なし、この面積よりも少し大きめの大きさとなるように、次フレームにおける領域推定範囲1231の大きさが決定される。すなわち、領域推定範囲1231の大きさは、領域1222の中のサンプル点の数が多ければ広くなり、少なければ狭くなる。このようにすることで、領域1222の拡大縮小に追従することができるばかりでなく、領域推定範囲1221内の全画面領域が追尾対象の周辺領域となるのを防ぐことができる。
In step S1203, the
図48のステップS1184で抽出された全画面動きが、背景動きと一致する場合には、動きにより背景と追尾対象を区別することができない。そこで、背景動き推定部1054は背景動き推定処理を常に行っており、ステップS1204において、領域推定部1161は、背景動き推定部1054より供給される背景動きと、図48のステップS1184の処理で抽出された全画面動きとが一致するか否かを判定する。全画面動きと背景動きが一致する場合には、ステップS1205において、領域推定部1161は、次の領域推定範囲の大きさを、今の領域推定範囲の大きさが最大となるように制限する。これにより、背景が追尾対象として誤認識され、領域推定範囲の大きさが拡大してしまうようなことが抑制される。
When the full screen motion extracted in step S1184 in FIG. 48 matches the background motion, the background and the tracking target cannot be distinguished by the motion. Therefore, the background
ステップS1204において、全画面動きと背景動きが一致しないと判定された場合には、ステップS1205の処理は必要がないのでスキップされる。 If it is determined in step S1204 that the full screen motion and the background motion do not match, the processing in step S1205 is not necessary and is skipped.
次に、ステップS1206において、領域推定部1161は、シフト後の領域重心を中心として次の領域推定範囲の大きさを決定する。これにより、領域推定範囲が、その重心が既に求めたシフト後の領域重心と一致し、かつ、その大きさが領域の広さに比例するように決定される。
Next, in step S1206, the
図51Bの例では、領域推定範囲1231が、動きベクトル(全画面動き)1230に基づくシフト後の重心1234を中心として、領域1222の面積に応じた広さに決定されている。
In the example of FIG. 51B, the
領域推定範囲1231内での全画面動きを有する領域が追尾対象(例えば、図45の顔1104)の領域であることを担保する(確実にする)必要がある。そこで、ステップS1207において、領域推定部1161は、追尾点が次の領域推定範囲に含まれるか否かを判定し、含まれていない場合には、ステップS1208において、追尾点を含むように次の領域推定範囲をシフトする処理を実行する。追尾点が次の領域推定範囲に含まれている場合には、ステップS1208の処理は必要がないのでスキップされる。
It is necessary to ensure (ensure) that the region having the full screen motion within the
この場合における具体的なシフトの方法としては、移動距離が最小となるようにする方法、シフト前の領域推定範囲の重心から追尾点に向かうベクトルに沿って追尾点が含まれるようになる最小距離だけ移動する方法などが考えられる。 As a specific method of shifting in this case, a method of minimizing the moving distance, a minimum distance at which the tracking point is included along a vector from the center of gravity of the region estimation range before the shift to the tracking point A way to move only is considered.
なお、追尾のロバスト性を重視するために、領域に追尾点を含むようにするためのシフトを行わない方法も考えられる。 In order to emphasize the robustness of tracking, a method of not performing a shift to include a tracking point in the region is also conceivable.
図51Cの例においては、領域推定範囲1231が追尾点1233を含んでいないので、領域推定範囲1241として示される位置(追尾点1233をその左上に含む位置)に領域推定範囲1241がシフトされる。
In the example of FIG. 51C, since the
図51A乃至図51Cは、ステップS1208のシフト処理が必要な場合を示しているが、図52A乃至図52Cは、ステップS1208のシフト処理が必要でない場合(ステップS1207において追尾点が次の領域推定範囲に含まれると判定された場合)の例を表している。 51A to 51C show the case where the shift process of step S1208 is necessary, but FIGS. 52A to 52C show the case where the shift process of step S1208 is not necessary (the tracking point is the next area estimation range in step S1207). Example).
図52A乃至図52Cに示されるように、領域推定範囲1221内のすべてのサンプル点が領域の点である場合には、図50のステップS1208のシフト処理が必要なくなることになる。
As shown in FIGS. 52A to 52C, when all the sample points in the
図51A乃至図51Cと図52A乃至図52Cは、領域推定範囲が矩形である例を示したが、領域推定範囲は円形とすることも可能である。 51A to 51C and FIGS. 52A to 52C show an example in which the region estimation range is a rectangle, the region estimation range may be a circle.
以上のようにして、図50(図48のステップS1186)の領域推定範囲の更新処理により、次フレームのための領域推定範囲の位置と大きさが追尾点を含むように決定される。 As described above, the position estimation range position and size for the next frame are determined to include the tracking point by the region estimation range update process of FIG. 50 (step S1186 in FIG. 48).
図50の領域推定範囲の更新処理においては、領域推定範囲を矩形(または円形)の固定形状としたが、可変形状とすることも可能である。 In the update process of the area estimation range in FIG. 50, the area estimation range is a rectangular (or circular) fixed shape, but may be a variable shape.
次に図47のステップS1162における乗り換え候補抽出処理について、図53のフローチャートを参照して説明する。 Next, the transfer candidate extraction process in step S1162 of FIG. 47 will be described with reference to the flowchart of FIG.
ステップS1261において、乗り換え候補抽出部1162は、全画面動きの領域と推定されたすべての点につき、それぞれに対応する推定動きでの点のシフト結果を乗り換え候補として保持する。すなわち、領域推定結果として得られた点をそのまま用いるのではなく、それらを次のフレームでの使用のために、それぞれの動き推定結果に基づきシフトされた結果を抽出する処理が行われ、その抽出された乗り換え候補が、乗り換え候保持部56に供給され、保持される。
In step S <b> 1261, the transfer
この処理を、図45を参照して説明すると、次のようになる。すなわち、図45の例において、フレームn−1,nでは追尾点1101が存在するが、フレームn+1においては、図中左側から飛んできたボール1121により隠されてしまい、追尾点1101が存在しない。そこでフレームn+1において、追尾点を追尾対象としての顔1104上の他の点(例えば、左目1103(実際には右目1102にもっと近接した点))に乗り換える必要が生じる。そこで、乗り換えが実際に必要になる前のフレームで、乗り換え候補を予め用意しておくのである。
This process will be described as follows with reference to FIG. That is, in the example of FIG. 45, the
具体的には、図45の例の場合、フレームnからフレームn+1への領域推定範囲1133内での動き推定結果は、領域推定範囲1133において乗り換えが必要なことから、正しく推定できない確率が高いことが予想される。すなわち、図45の例では、乗り換えが追尾点と、それと同一の対象物の一部が隠れることに起因して起きる。その結果、フレームnでの領域推定範囲1133のうち、フレームn+1で対象が隠れる部分(図45において影を付した部分)1134については、動きが正しく推定されず、動きの確度が低いことが推定されるか、または確度が低くないと推定され、かつ、動き推定結果としては意味のないものが得られることになる。
Specifically, in the case of the example in FIG. 45, the motion estimation result in the
このような場合には、領域推定の際に用いることが可能な動き推定結果が減少する、あるいは誤った動き推定結果が混入するなどの理由で、領域推定が誤る可能性が高まる。一方、このような可能性は、一般的に、より時間的に前のフレームn−1からフレームnの間での領域推定においては、フレームnからフレームn+1での間での推定に比較して低くなることが予想される。
In such a case, there is a high possibility that the region estimation is erroneous due to a decrease in motion estimation results that can be used in region estimation or a mixture of erroneous motion estimation results. On the other hand, such a possibility is generally greater in the region estimation between the previous frame n−1 and the frame n in comparison with the estimation between the frame n and the
そこで、リスク低減のため、領域推定結果をそのまま用いるのではなく、前のフレームn−1(あるいは、時間的にもっと前のフレーム)で求めた領域推定結果を、その次のフレームでの移動先の乗り換え候補として用いるのが性能向上の上で望ましい。 Therefore, in order to reduce the risk, the region estimation result is not used as it is, but the region estimation result obtained in the previous frame n-1 (or a frame earlier in time) is used as the movement destination in the next frame. It is desirable to use as a transfer candidate for improving the performance.
ただし、領域推定結果をそのまま用いることも可能である。 However, the region estimation result can be used as it is.
図54は、図47のステップS1163におけるテンプレート作成処理の詳細を表している。ステップS1281においてテンプレート作成部1163は、領域(全画面動きの領域)と推定されたすべての点につき、それぞれに対応する小領域を決定する。図55の例においては、領域の点1321に対応して小領域1322が決定されている。
FIG. 54 shows details of the template creation processing in step S1163 of FIG. In step S1281, the
ステップS1282において、テンプレート作成部1163は、ステップS1281の処理で決定された小領域の和の領域をテンプレート範囲に設定する。図55の例においては、小領域1322の和の領域がテンプレート範囲1331とされている。
In step S1282, the
次にステップS1283において、テンプレート作成部1163は、ステップS1282において設定したテンプレート範囲の情報と画像情報からテンプレートを作成し、テンプレート保持部1058に供給し、保持させる。具体的には、テンプレート範囲1331内の画素データがテンプレートとされる。
In step S1283, the
図56は、領域の点1321に対応する小領域1341が、図55における小領域1322に較べてより大きな面積とされている。その結果、小領域1341の和の領域のテンプレート範囲1351も、図55のテンプレート範囲1331に較べてより広くなっている。
56, the
小領域の大きさは、サンプル点の間隔に比例させることが考えられるが、その際の比例定数は、面積がサンプル点間隔の自乗になるように決めることもできるし、それより大きくまたは小さく決めることも可能である。 It is conceivable that the size of the small region is proportional to the interval between the sample points, but the proportionality constant at that time can be determined so that the area is the square of the sample point interval, or larger or smaller than that. It is also possible.
なお、領域推定結果を用いず、例えば追尾点を中心とする固定の大きさや形状の範囲をテンプレート範囲として用いることも可能である。 For example, a fixed size or shape range centered on the tracking point may be used as the template range without using the region estimation result.
図57は、テンプレートと領域推定範囲の位置関係を表している。テンプレート範囲1403には、追尾点1405が含まれている。テンプレート範囲1403に外接する外接矩形1401の図中左上の点がテンプレート基準点1404とされている。テンプレート基準点1404から追尾点1405に向かうベクトル1406、並びにテンプレート基準点1404から領域推定範囲1402の図中左上の基準点1408に向かうベクトル1407が、テンプレート範囲1403の情報とされる。テンプレートは、テンプレート範囲1403に含まれる画素で構成される。ベクトル1406,1407は、テンプレートと同じ画像が検出された際の通常処理への復帰に用いられる。
FIG. 57 shows the positional relationship between the template and the area estimation range. The
以上の処理においては、乗り換え候補の場合と異なり、範囲、画素ともに、現フレームに対応するものをテンプレートとする例を説明したが、乗り換え候補の場合と同様に、次フレームでの移動先をテンプレートとして用いることも可能である。 In the above processing, unlike the case of the transfer candidate, the example in which both the range and the pixel correspond to the current frame is used as the template. However, as in the case of the transfer candidate, the destination in the next frame is set as the template. Can also be used.
以上のようにして、追尾点を含む画素データからなるテンプレートが乗り換え候補と同様に、通常処理中に、予め作成される。 As described above, a template made up of pixel data including a tracking point is created in advance during normal processing in the same manner as a transfer candidate.
以上に説明した図39のステップS1051の通常処理に続いて行われるステップS1052の例外処理の詳細について、図58のフローチャートを参照して説明する。この処理は、上述したように、図43のステップS1124において追尾点の動きを推定することが不可能と判定され、さらにステップS1128において追尾点を乗り換える乗り換え候補が選択できなかったと判定された場合に実行されることになる。 Details of the exception processing in step S1052 performed following the normal processing in step S1051 of FIG. 39 described above will be described with reference to the flowchart of FIG. As described above, this process is performed when it is determined in step S1124 in FIG. 43 that it is impossible to estimate the movement of the tracking point, and further, in step S1128, it is determined that the transfer candidate for changing the tracking point cannot be selected. Will be executed.
ステップS1401において、制御部1059は、例外処理の初期化処理を実行する。この処理の詳細は図59のフローチャートに示されている。
In step S1401, the
ステップS1421において、制御部1059は、追尾点の追尾ができなくなった際(追尾点の動きを推定することが不可能かつ、追尾点を乗り換える乗り換え候補が選択できなかった際)にシーンチェンジが起きていたか否かを判定する。シーンチェンジ検出部1053は、動き推定部1052の推定結果に基づいてシーンチェンがあったか否かを常に監視しており、制御部1059は、そのシーンチェンジ検出部1053の検出結果に基づいて、ステップS1421の判定を実行する。シーンチェンジ検出部1053の具体的処理については、図71と図72を参照して後述する。
In step S1421, the
シーンチェンジが起きている場合、追尾ができなくなった理由が、シーンチェンジが発生したことによるものと推定して、ステップS1422において制御部1059は、モードをシーンチェンジに設定する。これに対して、ステップS1421においてシーンチェンジが発生していないと判定された場合には、制御部1059は、ステップS1423においてモードをその他のモードに設定する。
If a scene change has occurred, it is presumed that the reason why tracking is not possible is that a scene change has occurred, and in step S1422, the
ステップS1422またはステップS1423の処理の後、ステップS1424においてテンプレートマッチング部1051は、時間的に最も古いテンプレートを選択する処理を実行する。具体的には、図60に示されるように、例えばフレームnからフレームn+1に移行するとき、例外処理が実行されるものとすると、フレームn−m+1からフレームnに関して生成され、テンプレート保持部1058に保持されているm個のフレームのテンプレートの中から、時間的に最も古いテンプレートであるフレームn−m+1に関して生成されたテンプレートが選択される。
After the process of step S1422 or step S1423, in step S1424, the
このように例外処理への移行直前のテンプレート(図60の例の場合フレームnに関して生成されたテンプレート)を用いずに、時間的に少し前のテンプレートを選択するのは、追尾対象のオクルージョンなどで例外処理への移行が発生した場合には、移行の直前には追尾対象が既にかなり隠れており、その時点のテンプレートでは、追尾対象を充分に大きく捉えることができない可能性が高いからである。従って、このように時間的に若干前のフレームにおけるテンプレートを選択することで、確実な追尾が可能となる。 In this way, the template just before the transition to exception processing (the template generated for frame n in the case of FIG. 60) is not used, but the template slightly before in time is selected by the occlusion to be tracked or the like. This is because when the transition to exception processing occurs, the tracking target is already considerably hidden immediately before the transition, and it is highly likely that the tracking target cannot be captured sufficiently large in the template at that time. Therefore, reliable tracking is possible by selecting a template in a frame slightly before in time.
次に、ステップS1425において、テンプレートマッチング部1051は、テンプレート探索範囲を設定する処理を実行する。テンプレート探索範囲は、例えば、例外処理に移行する直前の追尾点の位置がテンプレート探索範囲の中心となるように設定される。
Next, in step S1425, the
すなわち、図61に示されるように、フレームnにおいて被写体の顔1104の右目1102が追尾点1101として指定されている場合において、図中左方向からボール1121が飛んできて、フレームn+1において追尾点1101を含む顔1104が隠れ、フレームn+2において、再び追尾点1101が現れる場合を想定する。この場合において、追尾点1101(テンプレート範囲1411に含まれる)を中心とする領域がテンプレート探索範囲1412として設定される。
That is, as shown in FIG. 61, when the
ステップS1426において、テンプレートマッチング部1051は、例外処理への移行後の経過フレーム数およびシーンチェンジ数を0にリセットする。このフレーム数とシーンチェンジ数は、後述する図58のステップS1405における継続判定処理(図63のステップS1461,S1463,S1465,S1467)において使用される。
In step S1426, the
以上のようにして、例外処理の初期化処理が終了した後、図58のステップS1402において、制御部1059は次のフレームを待つ処理を実行する。ステップS1403において、テンプレートマッチング部1051は、テンプレート探索範囲内においてテンプレートマッチング処理を行う。ステップS1404においてテンプレートマッチング部1051は、通常処理への復帰が可能であるか否かを判定する。
After the exception process initialization process is completed as described above, in step S1402 of FIG. 58, the
具体的には、テンプレートマッチング処理により、数フレーム前のテンプレート(図61のテンプレート範囲1411内の画素)と、テンプレート探索範囲内のマッチング対象の画素の差分の絶対値和が演算される。より詳細には、テンプレート範囲1411内の所定のブロックと、テンプレート探索範囲内の所定のブロックにおけるそれぞれの画素の差分の絶対値和が演算される。ブロックの位置がテンプレート範囲1411内で順次移動され、各ブロックの差分の絶対値和が加算され、そのテンプレートの位置における値とされる。そして、テンプレートをテンプレート探索範囲内で順次移動させた場合における差分の絶対値和が最も小さくなる位置とその値が検索される。ステップS1404において、最小の差分の絶対値和が、予め設定されている所定の閾値と比較される。差分の絶対値和が閾値以下である場合には、追尾点(テンプレートに含まれている)を含む画像が再び出現したことになるので、通常処理への復帰が可能であると判定され、処理は図39のステップS1051の通常処理に戻る。
Specifically, the absolute value sum of the difference between the template several frames before (a pixel in the
そして上述したように、図44のステップS1141において、例外処理からの復帰であると判定され、ステップS1144において、差分絶対値和が最小となる位置をテンプレートのマッチした位置として、このマッチした位置とテンプレートに対応して保持してあったテンプレート位置と追尾点領域推定範囲の位置関係から、追尾点と領域推定範囲の設定が行われる。すなわち、図57を参照して上述したように、追尾点1405を基準とするベクトル1406,1407に基づいて、領域推定範囲1402が設定される。
Then, as described above, in step S1141 of FIG. 44, it is determined that the process returns from the exception process. In step S1144, the position where the difference absolute value sum is minimum is set as the template-matched position. The tracking point and area estimation range are set based on the positional relationship between the template position and the tracking point area estimation range held corresponding to the template. That is, as described above with reference to FIG. 57, the
ただし、図47のステップS1161の領域推定処理において、領域推定範囲を用いない手法を用いる場合には、領域推定範囲の設定は行われない。 However, in the region estimation process in step S1161 of FIG. 47, when a method that does not use the region estimation range is used, the region estimation range is not set.
図58のステップS1404における通常処理への復帰が可能であるか否かの判定は、最小の差分絶対値和をテンプレートのアクティビティで除算して得られる値を閾値と比較することで行うようにしてもよい。この場合におけるアクティビティは、後述する図64のアクティビティ算出部1602により、図65のステップS1603において算出された値を用いることができる。
In step S1404 in FIG. 58, it is determined whether or not it is possible to return to normal processing by comparing the value obtained by dividing the minimum sum of absolute differences by the activity of the template with a threshold value. Also good. As the activity in this case, the value calculated in step S1603 in FIG. 65 by the
あるいはまた、今回の最小の差分絶対値和を1フレーム前における最小の差分絶対値和で除算することで得られた値を所定の閾値と比較することで、通常処理への復帰が可能であるか否かを判定するようにしてもよい。この場合、アクティビティの計算が不要となる。すなわち、ステップS1404では、テンプレートとテンプレート探索範囲の相関が演算され、相関値と閾値の比較に基づいて判定が行われる。 Alternatively, it is possible to return to the normal processing by comparing a value obtained by dividing the current minimum absolute difference sum by the minimum absolute difference sum one frame before with a predetermined threshold. It may be determined whether or not. In this case, it is not necessary to calculate the activity. That is, in step S1404, the correlation between the template and the template search range is calculated, and determination is performed based on the comparison between the correlation value and the threshold value.
ステップS1404において、通常処理への復帰が可能ではないと判定された場合、ステップS1405に進み、継続判定処理が実行される。継続判定処理の詳細は、図63のフローチャートを参照して後述するが、これにより、例外処理が継続可能であるか否かの判定が行われる。 If it is determined in step S1404 that it is not possible to return to the normal process, the process proceeds to step S1405, and the continuation determination process is executed. The details of the continuation determination process will be described later with reference to the flowchart of FIG. 63, whereby it is determined whether or not the exception process can be continued.
ステップS1406において、制御部1059は、例外処理(例外処理での追尾点の追尾)が継続可能であるか否かを継続判定処理の結果に基づいて(後述する図63のステップS1466,S1468で設定されたフラグに基づいて)判定する。例外処理が継続可能である場合には、処理はステップS1402に戻り、それ以降の処理が繰り返し実行される。すなわち、追尾点が再び出現するまで待機する処理が繰り返し実行される。
In step S1406, the
これに対して、ステップS1406において、例外処理が継続可能ではないと判定された場合(後述する図63のステップS1465で、追尾点が消失した後の経過フレーム数が閾値THfr以上と判定されるか、または、ステップS1467でシーンチェンジ数が閾値THsc以上と判定された場合)、最早、例外処理は不可能として、追尾処理は終了される。なお、追尾処理を終了するのではなく、保持しておいた追尾点を用いて再度通常処理に戻るようにすることも考えられる。この場合の例外処理は、図62に示されている。なお、図62のステップS1441乃至S1445の処理は、図58のステップS1401乃至S1405と同様の処理であるので、その説明を省略する。 On the other hand, if it is determined in step S1406 that exception processing cannot be continued (whether it is determined in step S1465 in FIG. 63 described later that the number of frames that have elapsed after the tracking point disappears is equal to or greater than the threshold value THfr. Or, if it is determined in step S1467 that the number of scene changes is equal to or greater than the threshold value THsc), the exception process is no longer possible and the tracking process is terminated. Instead of ending the tracking process, it may be possible to return to the normal process again using the tracking point that has been held. The exception handling in this case is shown in FIG. 62 are the same as steps S1401 to S1405 in FIG. 58, and thus the description thereof is omitted.
すなわち、ステップS1445の継続判定処理により、例外処理が継続可能であるか否かの判定が行われると、その後、ステップS1446において、制御部1059は、例外処理(例外処理での追尾点の追尾)が継続可能であるか否かを継続判定処理の結果に基づいて(後述する図63のステップS1466,S1468で設定されたフラグに基づいて)判定する。例外処理が継続可能である場合には、処理はステップS1442に戻り、それ以降の処理が繰り返し実行される。すなわち、追尾点が再び出現するまで待機する処理が繰り返し実行される。
That is, when it is determined whether or not exception processing can be continued by the continuation determination processing in step S1445, then in step S1446, the
これに対して、ステップS1446において、例外処理が継続可能ではないと判定された場合(後述する図63のステップS1465で、追尾点が消失した後の経過フレーム数が閾値THfr以上と判定されるか、または、ステップS1467でシーンチェンジ数が閾値THsc以上と判定された場合)、最早、例外処理は不可能として、処理は図39のステップS1051の通常処理に戻る。 On the other hand, if it is determined in step S1446 that the exception processing cannot be continued (whether it is determined in step S1465 in FIG. 63 described later that the number of elapsed frames after the tracking point disappears is equal to or greater than the threshold value THfr. Or, when it is determined in step S1467 that the number of scene changes is equal to or greater than the threshold THsc), the exception processing is no longer possible and the processing returns to the normal processing in step S1051 of FIG.
そして、この場合、上述したように、図44のステップS1141において、例外処理からの復帰であると判定され、ステップS1144において、保持しておいた例外処理に移行する直前の追尾点の位置に基づき、追尾点と領域推定範囲が設定される。 In this case, as described above, in step S1141 in FIG. 44, it is determined that the process returns from the exception process, and in step S1144, based on the position of the tracking point immediately before the transition to the exception process held. The tracking point and the area estimation range are set.
図63は、図58のステップS1405(または図62のステップS1445)における継続判定処理の詳細を表している。ステップS1461において、制御部1059は、変数としての経過フレーム数に1を加算する処理を実行する。経過フレーム数は、図58のステップS1401の例外処理の初期化処理(図59のステップS1426)において、予め0にリセットされている。
FIG. 63 shows details of the continuation determination process in step S1405 (or step S1445 in FIG. 62) in FIG. In step S1461, the
次にステップS1462において、制御部1059は、シーンチェンジがあるか否かを判定する。シーンチェンジがあるか否かは、シーンチェンジ検出部1053が、常にその検出処理を実行しており、その検出結果に基づいて判定が可能である。シーンチェンジがある場合には、ステップS1463に進み、制御部1059は変数としてのシーンチェンジ数に1を加算する。このシーンチェンジ数も、図59のステップS1426の初期化処理において0にリセットされている。通常処理から例外処理への移行時にシーンチェンジが発生していない場合には、ステップS1463の処理はスキップされる。
Next, in step S1462, the
次に、ステップS1464において、制御部1059は、現在設定されているモードがシーンチェンジであるか否かを判定する。このモードは、図59のステップS1422,S1423において設定されたものである。現在設定されているモードがシーンチェンジである場合には、ステップS1467に進み、制御部1059は、シーンチェンジ数が予め設定されている閾値THscより小さいか否かを判定する。シーンチェンジ数が閾値THscより小さい場合には、ステップS1466に進み、制御部1059は継続可のフラグを設定し、シーンチェンジ数が閾値THsc以上である場合には、ステップS1468に進み、継続不可のフラグを設定する。
Next, in step S1464, the
一方、ステップS1464において、モードがシーンチェンジではないと判定された場合(モードがその他であると判定された場合)、ステップS1465に進み、制御部1059は、経過フレーム数が閾値THfrより小さいか否かを判定する。この経過フレーム数も、図59の例外処理の初期化処理のステップS1426において、予め0にリセットされている。経過フレーム数が閾値THfrより小さいと判定された場合には、ステップS1466において、継続可のフラグが設定され、経過フレーム数が閾値THfr以上であると判定された場合には、ステップS1468において、継続不可のフラグが設定される。
On the other hand, when it is determined in step S1464 that the mode is not a scene change (when it is determined that the mode is other), the process proceeds to step S1465, and the
このように、テンプレートマッチング処理時におけるシーンチェンジ数が閾値THsc以上になるか、または経過フレーム数が閾値THfr以上になった場合には、それ以上の例外処理は不可能とされる。 As described above, when the number of scene changes at the time of template matching processing is equal to or greater than the threshold value THsc, or when the number of elapsed frames is equal to or greater than the threshold value THfr, further exception processing is impossible.
なお、モードがその他である場合には、シーンチェンジ数が0であるという条件も加えて、継続が可能であるか否かを判定するようにしてもよい。 When the mode is other, a condition that the number of scene changes is 0 may be added to determine whether or not continuation is possible.
以上においては、画像のフレームを処理単位とし、すべてのフレームを用いることを前提としたが、フィールド単位で処理したり、すべてのフレームまたはフィールドを利用するのではなく、所定の間隔で間引いて抽出されたフレームまたはフィールドを用いるようにすることも可能である。 In the above, it is assumed that the frame of the image is used as a processing unit and all frames are used. However, processing is not performed in units of fields or using all frames or fields, but is extracted by thinning out at a predetermined interval. It is also possible to use a modified frame or field.
また、以上においては、乗り換え候補として、推定した領域内の点の移動先を用いるようにしたが、この場合、全画面動きが(0,0)であったとしても、領域内の各点が、(−1,1)、(1,0)等の動きを持っているときは、それぞれの動きの分だけシフトされる。移動先の点をそのまま乗り換え候補として用いるのではなく、予め求められたサンプル点のうち、最も近い点を乗り換え候補とすることも可能である。勿論、処理負荷軽減のため、各点を、全画面動きの分だけシフトしてもよい。 Further, in the above, the estimated movement destination of the point in the area is used as the transfer candidate. However, in this case, even if the whole screen motion is (0, 0), each point in the area is , (-1, 1), (1, 0), etc., the movement is shifted by the amount of each movement. Instead of using the destination point as a transfer candidate as it is, it is also possible to set the closest point among sample points obtained in advance as a transfer candidate. Of course, in order to reduce the processing load, each point may be shifted by the amount corresponding to the full screen movement.
さらに、乗り換え候補として、推定した領域内の点の移動先を用いるのではなく、領域内の点をそのまま用いるようにすることも可能である。 Further, instead of using the estimated destination of the point in the area as the transfer candidate, it is possible to use the point in the area as it is.
次に、図64を参照して、図38の動き推定部1052の構成例について説明する。この実施の形態においては、入力画像が、評価値算出部1601、アクティビティ算出部1602、および動きベクトル検出部1606に供給されている。評価値算出部1601は、動きベクトルにより対応付けられる両対象の一致度に関する評価値を算出し、正規化処理部1604に供給する。アクティビティ算出部1602は、入力画像のアクティビティを算出し、閾値判定部1603と正規化処理部1604に供給する。動きベクトル検出部1606は、入力画像から動きベクトルを検出し、評価値算出部1601と統合処理部1605に供給する。
Next, a configuration example of the
正規化処理部1604は、評価値算出部1601より供給された評価値を、アクティビティ算出部1602より供給されたアクティビティに基づいて正規化し、得られた値を統合処理部1605に供給する。閾値判定部1603は、アクティビティ算出部1602より供給されたアクティビティを所定の閾値と比較し、その判定結果を統合処理部1605に供給する。統合処理部1605は、正規化処理部1604から供給された正規化情報と、閾値判定部1603より供給された判定結果に基づいて、動きベクトルの確度を演算し、得られた確度を動きベクトル検出部1606より供給された動きベクトルとともに出力する。
The
次に、図65のフローチャートを参照して、動き推定部1052の動き推定処理について説明する。動きベクトルは、点に対するものとして求められているが、その確度は、動きベクトルにより対応付けられる2つの点の近傍の、例えば点を中心とする、小ブロックの画像データを用いて計算される。ステップS1601において、動きベクトル検出部11606は、入力画像から動きベクトルを検出する。この検出には、例えばブロックマッチング方式や勾配法が用いられる。検出された動きベクトルは、評価値算出部1601と統合処理部1605に供給される。
Next, the motion estimation process of the
ステップS1602において、評価値算出部1601は評価値を算出する。具体的には、例えば、動きベクトルで対応付けられる2つの点を中心とする2つのブロックの画素値の差分絶対値和が算出される。すなわち、ステップS1601で動きベクトル検出部1606により検出された動きベクトルV(vx,vy)と、それに基づく時間的に前のフレームの画像Fi上の点P(Xp,Yp)、並びに時間的に後のフレームの画像Fj上の点Q(Xq,Yq)の関係は次式で表される。
In step S1602, the evaluation
評価値算出部1601は点Pを中心とするブロックと、点Qを中心とするブロックについて、次式に基づいて評価値Eval(P,Q,i,j)を演算する。
The evaluation
各ブロックは、1辺が2L+1画素の正方形とされている。上記式における総和ΣΣは、xが−LからLについて、yが−LからLについて、対応する画素同士で行われる。従って、例えば、L=2である場合、9個の差分が得られ、その絶対値の総和が演算される。評価値は、その値が0に近づくほど、2つのブロックがよく一致していることを表している。 Each block is a square having 2L + 1 pixels on one side. The summation ΣΣ in the above equation is performed between corresponding pixels when x is from −L to L and y is from −L to L. Therefore, for example, when L = 2, nine differences are obtained, and the sum of the absolute values is calculated. The evaluation value indicates that the two blocks match well as the value approaches zero.
評価値算出部1601は、生成した評価値を正規化処理部1604に供給する。
The evaluation
ステップS1603において、アクティビティ算出部1602は、入力画像からアクティビティを算出する。アクティビティは、画像の複雑さを表す特徴量であり、図66に示されるように、各画素毎に注目画素Y(x,y)と、それに隣接する8画素Y(x+i,y+j)との差分絶対値和の平均値が、注目画素位置のアクティビティActivity(x,y)として次式に基づいて演算される。
In step S1603, the
図66の例の場合、3×3画素のうち、中央に位置する注目画素Y(x,y)の値は110であり、それに隣接する8個の画素の値は、それぞれ80,70,75,100,100,100,80,80であるから、アクティビティActivity(x,y)は次式で表される。 In the example of FIG. 66, among 3 × 3 pixels, the value of the pixel of interest Y (x, y) located at the center is 110, and the values of eight pixels adjacent to it are 80, 70, and 75, respectively. , 100, 100, 100, 80, 80, the activity Activity (x, y) is expressed by the following equation.
Activity(x,y) ={|80−110|+|70−110|+|75−110|+|100−110|+|100−110|+|100−110|+|80−110|+|80−110|}/8 =24.375となる。 Activity (x, y) = {| 80-110 | + | 70-110 | + | 75-110 | + | 100-110 | + | 100-110 | + | 80-110 | + | 80−110 |} /8=24.375.
同様の処理が、そのフレームのすべての画素について実行される。 Similar processing is performed for all pixels in the frame.
ブロック単位で動きベクトル確度を算出するため、次式で表されるブロック内の全画素のアクティビティの総和が、そのブロックのアクティビティ(ブロックアクティビティ)Blockactivity(i,j)と定義される。 In order to calculate the motion vector accuracy in units of blocks, the sum of the activities of all the pixels in the block expressed by the following equation is defined as the activity (block activity) Blockactivity (i, j) of the block.
なお、アクティビティとしては、この他、分散値、ダイナミックレンジなどとすることも可能である。 In addition, the activity may be a variance value, a dynamic range, or the like.
閾値判定部1603は、ステップS1604において、アクティビティ算出部1602により算出されたブロックアクティビティを予め設定されている所定の閾値と比較する。そして、入力されたブロックアクティビティが閾値より大きいか否かを表すフラグを統合処理部1605に出力する。
In step S1604, the
具体的には、実験の結果、ブロックアクティビティと評価値は、動きベクトルをパラメータとして、図67に示される関係を有する。図67において、横軸はブロックアクティビティBlockactivity(i,j)を表し、縦軸は評価値Evalを表している。動きが正しく検出されている場合(正しい動きベクトルが与えられている場合)、そのブロックアクティビティと評価値の値は、曲線1621より図中下側の領域R1に分布する。これに対して誤った動き(不正解の動きベクトル)が与えられた場合、そのブロックアクティビティと評価値の値は、曲線1622より、図中左側の領域R2に分布する(曲線1622より上側の領域R2以外の領域と曲線1621より下側の領域R1以外の領域には殆ど分布がない)。曲線1621と曲線1622は、点Pにおいて交差する。この点Pにおけるブロックアクティビティの値が閾値THaとされる。閾値THaは、ブロックアクティビティの値がそれより小さい場合には、対応する動きベクトルが正しくない可能性があることを意味する(この点については後に詳述する)。閾値判定部1603は、アクティビティ算出部1602より入力されたブロックアクティビティの値が、この閾値THaより大きいか否かを表すフラグを統合処理ブロック1605に出力する。
Specifically, as a result of the experiment, the block activity and the evaluation value have the relationship shown in FIG. 67 using the motion vector as a parameter. In FIG. 67, the horizontal axis represents block activity Blockactivity (i, j), and the vertical axis represents the evaluation value Eval. When the motion is correctly detected (when the correct motion vector is given), the block activity and the evaluation value are distributed in a region R1 below the
ステップS1605において、正規化処理部1604は、正規化処理を実行する。具体的には、正規化処理部1604は、次式に従って動きベクトル確度VCを演算する。
In step S1605, the
但し、動きベクトル確度VCの値が0未満となる場合にはその値を0に置き換える。動きベクトル確度VCのうち、評価値をブロックアクティビティで割り算して得られた値は、その値によって規定される図67のグラフ上の位置が、原点Oと点Pを結ぶ傾きが1の直線1623より、図中下側の領域内であるのか、図中上側の領域内であるのかを表す。すなわち、直線1623の傾きは1であり、評価値をブロックアクティビティで割り算して得られた値が1より大きければ、その値に対応する点は、直線1623の上側の領域に分布する点であることを意味する。そしてこの値を1から減算して得られる動きベクトル確度VCは、その値が小さい程、対応する点が領域R2に分布する可能性が高いことを意味する。
However, if the value of the motion vector accuracy VC is less than 0, the value is replaced with 0. Of the motion vector accuracy VC, the value obtained by dividing the evaluation value by the block activity is a
これに対して、評価値をブロックアクティビティで割り算して得られた値が1より小さければ、その値に対応する点は、直線1623の図中下側の領域に分布することを意味する。そして、そのときの動きベクトル確度VCは、その値が大きい程(0に近い程)、対応する点が領域R1に分布することを意味する。正規化処理部1604は、このようにして演算して得られた動きベクトル確度VCを統合処理部1605に出力する。
On the other hand, if the value obtained by dividing the evaluation value by the block activity is smaller than 1, it means that the points corresponding to the value are distributed in the lower area of the
ステップS1606において、統合処理部1605は、統合処理を実行する。この統合処理の詳細は、図68のフローチャートに示されている。
In step S1606, the
統合処理部1605は、ステップS1631において、ブロックアクティビティが閾値THa以下か否かを判定する。この判定は、閾値判定部1603より供給されたフラグに基づいて行われる。ブロックアクティビティが閾値THa以下である場合には、ステップS1632において統合処理部1605は、正規化処理部1604が算出した動きベクトル確度VCの値を0に設定する。ステップS1631において、アクティビティの値が閾値THaより大きいと判定された場合には、ステップS1632の処理はスキップされ、正規化処理部1604で生成された動きベクトル確度VCの値が、そのまま動きベクトルとともに出力される。
In step S1631, the
これは、正規化処理部1604において演算された動きベクトルの確度VCの値が正であったとしても、ブロックアクティビティの値が閾値THaより小さい場合には、正しい動きベクトルが得られていない可能性があるからである。すなわち、図67に示されるように、原点Oと点Pの間においては、曲線1622が、曲線1621より図中下側に(直線1623より下側に)突出することになる。ブロックアクティビティの値が閾値Thaより小さい区間であって、曲線1621と曲線1622において囲まれる領域R3においては、評価値をブロックアクティビティで割り算して得られる値は、領域R1とR2の両方に分布し、正しい動きベクトルが得られていない可能性が高い。
This is because even if the value of the motion vector accuracy VC calculated by the
そこで、このような分布状態である場合には、動きベクトルの確度は低いものとして処理するようにする。このため、ステップS1632において、動きベクトル確度VCは、その値が正であったとしても、閾値Thaより小さい場合には、0に設定される。このようにすることで、動きベクトル確度VCの値が正である場合には、正しい動きベクトルが得られている場合であることを確実に表すことが可能となる。しかも、動きベクトル確度VCの値が大きい程、正しい動きベクトルが得られている確率が高くなる(分布が領域R1に含まれる確率が高くなる)。 Therefore, in such a distribution state, processing is performed assuming that the accuracy of the motion vector is low. Therefore, in step S1632, the motion vector accuracy VC is set to 0 when the value is positive even if the value is positive. In this way, when the value of the motion vector accuracy VC is positive, it is possible to reliably represent that the correct motion vector is obtained. In addition, the larger the value of the motion vector accuracy VC, the higher the probability that a correct motion vector is obtained (the probability that the distribution is included in the region R1 increases).
このことは、一般的に、輝度変化が少ない領域(アクティビティが小さい領域)では信頼性が高い動きベクトルを検出することが困難であるとの経験上の法則とも一致する。 This coincides with an empirical rule that, in general, it is difficult to detect a motion vector with high reliability in a region where the luminance change is small (region where the activity is small).
図69は,図38の背景動き推定部1054の構成例を表している。この構成例においては、背景動き推定部1054は、頻度分布算出部1651と背景動き決定部1652により構成されている。
FIG. 69 shows a configuration example of the background
頻度分布算出部1651は、動きベクトルの頻度分布を算出する。ただし、この頻度には、動き推定部1052より供給される動きベクトル確度VCを用いることで、確からしい動きに重みが与えられるように、重み付けが行われる。背景動き決定部1652は、頻度分布算出部1651により算出された頻度分布に基づいて、頻度が最大となる動きを背景動きとして決定する処理を行い、領域推定関連処理部1055へ出力する。
The frequency
図70を参照して、背景動き推定部54の背景動き推定処理について説明する。
The background motion estimation process of the background
ステップS1651において、頻度分布算出部1651は、動き頻度分布を算出する。具体的には、頻度分布算出部1651は、背景動きの候補としての動きベクトルのx座標とy座標がそれぞれ基準点から±16画素分の範囲で表されるとすると、1089個(=16×2+1)×(16×2+1))の箱、すなわち動きベクトルがとり得る値に対応する座標分の箱を用意し、動きベクトルが発生した場合、その動きベクトルに対応する座標に1を加算する。このようにすることで、動きベクトルの頻度分布を算出することができる。
In step S1651, the frequency
ただし、1個の動きベクトルが発生した場合、1を加算していくと、確度が低い動きベクトルの発生頻度が多い場合、その確実性が低い動きベクトルが背景動きとして決定されてしまう恐れがある。そこで、頻度分布算出部1651は、動きベクトルが発生した場合、その動きベクトルに対応する箱(座標)に、値1を加算するのではなく、値1に動きベクトル確度VCを乗算した値(=動きベクトル確度VCの値)を加算する。動きベクトル確度VCの値は、0から1の間の値として正規化されており、その値が1に近いほど確度が高い値である。従って、このようにして得られた頻度分布は、動きベクトルをその確度に基づいて重み付けした頻度分布となる。これにより、確度の低い動きが背景動きとして決定される恐れが少なくなる。
However, when one motion vector is generated, if 1 is added, if the frequency of occurrence of a motion vector with low accuracy is high, a motion vector with low certainty may be determined as the background motion. . Therefore, when a motion vector is generated, the frequency
次に、ステップS1652において、頻度分布算出部1651は、動き頻度分布を算出する処理を全ブロックについて終了したか否かを判定する。まだ処理していないブロックが存在する場合には、ステップS1651に戻り、次のブロックについてステップS1651の処理が実行される。
Next, in step S1652, the frequency
以上のようにして、全画面に対して動き頻度分布算出処理が行われ、ステップS1652において、全ブロックの処理が終了したと判定された場合、ステップS1653に進み、背景動き決定部1652は、頻度分布の最大値を検索する処理を実行する。すなわち、背景動き決定部1652は、頻度分布算出部1651により算出された頻度の中から最大の頻度のものを選択し、その頻度に対応する動きベクトルを背景動きの動きベクトルとして決定する。この背景動きの動きベクトルは、領域推定関連処理部1055に供給され、例えば、図50のステップS1204の全画面動きと背景動きが一致するか否かの判定処理に用いられる。
As described above, the motion frequency distribution calculation process is performed on the entire screen, and if it is determined in step S1652 that the processing of all blocks has been completed, the process proceeds to step S1653, and the background motion determination unit 1652 A process for searching for the maximum value of the distribution is executed. That is, the background
図71は、図38のシーンチェンジ検出部1053の詳細な構成例を表している。この例においては、動きベクトル確度平均算出部1671と閾値判定部1672によりシーンチェンジ検出部1053が構成されている。
FIG. 71 shows a detailed configuration example of the scene
動きベクトル確度平均算出部1671は、動き推定部1052より供給された動きベクトル確度VCの全画面の平均値を算出し、閾値判定部1672に出力する。閾値判定部1672は、動きベクトル確度平均算出部1671より供給された平均値を、予め定められている閾値と比較し、その比較結果に基づいて、シーンチェンジであるか否かを判定し、判定結果を制御部1059に出力する。
The motion vector accuracy
次に、図72のフローチャートを参照して、シーンチェンジ検出部1053の動作について説明する。ステップS1681において、動きベクトル確度平均算出部1671は、ベクトル確度の総和を算出する。具体的には、動きベクトル確度平均算出部1671は、動き推定部1052の統合処理部1605より出力された各ブロック毎に算出された動きベクトル確度VCの値を加算する処理を実行する。
Next, the operation of the scene
ステップS1682において、動きベクトル確度平均算出部1671は、ベクトル確度VCの総和を算出する処理が全ブロックについて終了したか否かを判定し、まだ終了していない場合には、ステップS1681の処理を繰り返す。この処理を繰り返すことで、1画面分の各ブロックの動きベクトル確度VCの総和が算出される。ステップS1682において1画面全部についての動きベクトル確度VCの総和の算出処理が終了したと判定された場合、ステップS1683に進み、動きベクトル確度平均算出部1671は、ベクトル確度VCの平均値を算出する処理を実行する。具体的には、ステップS1681の処理で算出された1画面分のベクトル確度VCの総和を、足し込まれたブロック数で除算して得られた値が平均値として算出される。
In step S1682, the motion vector accuracy
ステップS1684において、閾値判定部1672は、ステップS1683の処理で動きベクトル確度平均算出部1671により算出された動きベクトル確度VCの平均値を、予め設定されている閾値と比較し、閾値より小さいか否かを判定する。一般的に、動画中の時刻が異なる2フレーム間でシーンチェンジが発生すると、対応する画像が存在しないため、動きベクトルを算出しても、その動きベクトルは確からしくないことになる。
In step S1684, the threshold
そこで、ベクトル確度VCの平均値が閾値より小さい場合には、ステップS1685において、閾値判定部1672はシーンチェンジフラグをオンし、閾値より小さくない場合(閾値以上である場合)、ステップS1586において、シーンチェンジフラグをオフにする。シーンチェンジフラグのオンは、シーンチェンジがあったことを表し、そのオフは、シーンチェンジが無いことを表す。
Therefore, if the average value of the vector accuracy VC is smaller than the threshold value, the threshold
このシーンチェンジフラグは、制御部1059へ供給され、図59のステップS1421におけるシーンチェンジの有無の判定に利用される。
This scene change flag is supplied to the
以上のように、図3の追尾処理部71を構成することにより、追尾すべきオブジェクトが回転したり(図40)、オクルージョンが発生したり(図41)、あるいはシーンチェンジにより、オブジェクトの追尾点が一時的に表示されなくなる(図42)ような場合でも、画像の中で移動するオブジェクト(追尾点)を正確に追尾することができる。
As described above, by configuring the
このようにして追尾されるオブジェクトの追尾点の位置情報が、図1の追尾処理部71による追尾結果として追尾処理制御部72に出力される。そして、追尾処理制御部72により、図4のステップS3において、追尾結果記憶部81に記憶される追尾結果に基づいて、追尾処理制御部72による位置算出処理が実行される。
The position information of the tracking point of the object tracked in this way is output to the tracking
以上のように、表示画面上の固定点、画像特徴量に基づく画像上の点、または複数の追尾処理により得られた追尾結果などから、追尾処理の対象となる候補位置が算出されるので、信頼性の高い候補位置を、表示部21に表示させることができる。
As described above, the candidate position that is the target of the tracking process is calculated from a fixed point on the display screen, a point on the image based on the image feature amount, or a tracking result obtained by a plurality of tracking processes. Candidate positions with high reliability can be displayed on the
これにより、実行されている追尾方式がオクルージョンなどの発生により正確に追尾を行うことができないものであったり、あるいは、比較的長時間のオクルージョンなどの発生により、所望の追尾が行われていない場合であっても、ユーザは、表示部21に表示される候補位置を選んで指示するだけで、容易に、所望の追尾対象を再設定することができる。
As a result, the tracking method being used cannot be accurately tracked due to the occurrence of occlusion, or the desired tracking is not being performed due to the occurrence of a relatively long occlusion, etc. Even so, the user can easily reset the desired tracking target simply by selecting and instructing the candidate position displayed on the
したがって、図1の監視システムにおいて、撮像装置11が光学的なズーム機能を持たない非常に安価なカメラであり、仮に、侵入者Bが追尾対象から外れてしまったとしても、従来のように、再生を停止または一時停止することなく、追尾を継続させたまま、監視者であるユーザAは、すばやく追尾対象の位置を修正することが可能となるので、簡単な操作で侵入者Bが追尾されてズームされた画像32を見ることができる。
Accordingly, in the monitoring system of FIG. 1, the
これにより、従来に較べて安価で、かつ、安全性の高い監視システムを提供することが可能になる。 As a result, it is possible to provide a monitoring system that is cheaper and more secure than the prior art.
図73は、本発明を動物鑑賞システムに適用した場合の構成例を表している。この動物鑑賞システムにおいては、撮像装置11と、撮像装置11と接続され、表示部21を有する追尾装置12を用いて、撮像装置11により撮像され、表示部21に表示される画像を見ながら、鑑賞者であるユーザCにより動物園の所定の領域を動き回る猿2001がじっくり鑑賞される。
FIG. 73 shows a configuration example when the present invention is applied to an animal appreciation system. In this animal appreciation system, the
撮像装置11は、動物園の所定の領域を撮像し、その画像2002を追尾装置12に入力する。すなわち、所定の領域内を動き回る猿2001が撮像された画像2002が追尾装置12に入力される。
The
追尾装置12は、入力された画像2002を用い、ユーザCの指示に対応して、猿2001を追尾対象として追尾を行い、その追尾結果に基づいて、例えばズームされた画像2003を生成し、表示部21に表示させる。猿2001が動き回るため、長時間、正確な追尾を行うことは困難である。そして、猿2001が追尾対象からずれてしまった場合には、追尾装置12に、追尾対象の候補位置の表示を指示する。
The
追尾装置12においては、上述したように、表示画面上の固定点、画像特徴量に基づく画像上の点、または複数の追尾処理により得られた追尾結果などから、追尾処理の対象となる候補位置が算出されるので、信頼性の高い候補位置を、表示部21に表示させることができる。これにより、ユーザは、表示部21に表示された候補位置を選択指示するだけで、容易に、所望の猿2001を、追尾対象として再設定することができる。
In the
このように、追尾装置12においては、追尾対象が外れた場合にも、その修正がすぐに可能であるので、ユーザCは、貴重な機会を逃すことなく、猿2001の鑑賞を楽しむことができる。
Thus, in the
予め撮像装置により撮像された映像を記録しておき、その後、追尾ズームを行うことも可能ではあるが、リアルタイム(現実世界)でしか体験できないその場の雰囲気が失われてしまうので、楽しさは、激減する恐れがある。 It is possible to record the video captured by the imaging device in advance, and then perform tracking zoom, but the atmosphere that can only be experienced in real time (real world) will be lost, so the fun is There is a risk of drastic decrease.
すなわち、本発明は、リアルタイムにユーザの操作結果が追尾結果に反映されるシステムに、特に効果を発揮する。 That is, the present invention is particularly effective for a system in which a user operation result is reflected in a tracking result in real time.
なお、本発明は、監視システムや、動物鑑賞システムに限らず、テレビジョン受像機や、各種の画像処理装置に適応することが可能である。 The present invention can be applied not only to a monitoring system and an animal appreciation system but also to a television receiver and various image processing apparatuses.
また、以上においては、画像の処理単位をフレームとしたが、フィールドを処理単位とする場合にも本発明は適用が可能である。 In the above description, the processing unit of an image is a frame, but the present invention can also be applied to a case where a field is a processing unit.
なお、上述した一連の処理をハードウェアで実現するか、ソフトウェアで実現するかは問わない。上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、汎用のパーソナルコンピュータなどに、ネットワークやリムーバブルメディアなどの記録媒体からインストールされる。 It does not matter whether the above-described series of processing is realized by hardware or software. When the above-described series of processing is executed by software, a program constituting the software executes various functions by installing a computer incorporated in dedicated hardware or various programs. It is installed on a general-purpose personal computer or the like from a recording medium such as a network or a removable medium.
また、本明細書において上述した一連の処理を実行するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。 In addition, the steps of executing the series of processes described above in this specification are performed in parallel or individually even if they are not necessarily processed in time series, as well as processes performed in time series in the order described. The processing to be performed is also included.
11 撮像装置, 12 追尾装置, 21 表示部, 52 オブジェクト追尾部, 53 全体システム制御部, 54 表示画像生成部, 55 リモートコントローラ, 71,71−1乃至71−n 追尾処理部, 72 追尾処理制御部, 81 追尾結果記憶部, 82 位置算出部, 83 対象位置設定部, 131 画像特徴量算出部, 161 追尾結果更新部, 301 拡大信号処理部, 302 追尾結果選択候補表示部
DESCRIPTION OF
Claims (21)
ユーザの操作に対応して、画像上の移動するオブジェクトを追尾対象として追尾を行う追尾手段と、
前記追尾手段による前記追尾対象の候補としての候補位置を算出する候補算出手段と、
前記候補算出手段により算出された前記候補位置の表示を制御する表示制御手段と、
ユーザの操作に対応して、表示される前記候補位置を、前記追尾手段の次のフレームにおける前記追尾対象として設定する対象設定手段と
を備える画像処理装置。 In an image processing apparatus for displaying a moving object,
In response to a user operation, tracking means for tracking a moving object on the image as a tracking target;
Candidate calculation means for calculating a candidate position as the tracking target candidate by the tracking means;
Display control means for controlling the display of the candidate position calculated by the candidate calculation means;
An image processing apparatus comprising: a target setting unit configured to set the displayed candidate position as the tracking target in a frame next to the tracking unit in response to a user operation.
予め記憶される画面内の所定の位置を読み出して、前記候補位置を算出する
請求項1に記載の画像処理装置。 The candidate calculation means includes
The image processing apparatus according to claim 1, wherein a predetermined position in a screen stored in advance is read to calculate the candidate position.
前記画像の特徴量に基づいて、前記候補位置を算出する
請求項1に記載の画像処理装置。 The candidate calculation means includes
The image processing apparatus according to claim 1, wherein the candidate position is calculated based on a feature amount of the image.
複数の前記追尾手段による追尾結果に基づいて、前記候補位置を算出する
請求項1に記載の画像処理装置。 The candidate calculation means includes
The image processing apparatus according to claim 1, wherein the candidate position is calculated based on tracking results obtained by a plurality of tracking units.
請求項4に記載の画像処理装置。 The image processing apparatus according to claim 4, wherein the plurality of tracking units perform tracking using a plurality of different types of tracking methods.
ユーザの操作に対応して、表示される前記候補位置を、前記複数の追尾手段の次のフレームにおける前記追尾対象としてそれぞれ設定する
請求項5に記載の画像処理装置。 The target setting means includes
The image processing apparatus according to claim 5, wherein the candidate position to be displayed is set as the tracking target in a next frame of the plurality of tracking units in response to a user operation.
請求項4に記載の画像処理装置。 The image processing apparatus according to claim 4, wherein the plurality of tracking units perform tracking using a plurality of different neighboring positions on the object as tracking targets.
ユーザの操作に対応して、表示される前記候補位置に基づいて、前記候補位置を含む複数の異なる近傍位置を、前記複数の追尾手段の次のフレームにおける前記追尾対象としてそれぞれ設定する
請求項7に記載の画像処理装置。 The target setting means includes
8. A plurality of different neighboring positions including the candidate position are set as the tracking target in the next frame of the plurality of tracking means based on the displayed candidate position in response to a user operation. An image processing apparatus according to 1.
請求項4に記載の画像処理装置。 5. The updating device according to claim 4, further comprising: an updating unit configured to update a tracking result of a part or all of the plurality of tracking units based on a tracking result of one tracking unit among the plurality of tracking units. Image processing apparatus.
請求項9に記載の画像処理装置。 The updating unit is configured to track a part or all of the plurality of tracking units based on a tracking result by one of the plurality of tracking units every time a predetermined time elapses. The image processing apparatus according to claim 9, wherein the result is updated.
前記第1のタイミングとは異なる、前記所定時間が経過した第2のタイミング毎に、前記複数の追尾手段の中の1の追尾手段による追尾結果で、前記複数の追尾手段のうちの他の一部の追尾手段による追尾結果を更新する
請求項9に記載の画像処理装置。 The updating means is based on a result of tracking by one of the plurality of tracking means at a first timing when a predetermined time has elapsed, and is based on a part of the plurality of tracking means. Update tracking results,
Different from the first timing, at every second timing when the predetermined time has elapsed, the tracking result by one tracking means of the plurality of tracking means is another one of the plurality of tracking means. The image processing apparatus according to claim 9, wherein the tracking result by the tracking unit of the unit is updated.
請求項9に記載の画像処理装置。 The updating unit is configured to perform a part or all of the plurality of tracking units based on a tracking result of one tracking unit among the plurality of tracking units when the tracking results of the plurality of tracking units are greatly different. The image processing apparatus according to claim 9, wherein the tracking result by the tracking unit is updated.
請求項1に記載の画像処理装置。 The image processing apparatus according to claim 1, wherein the display control unit controls a list display of the candidate positions that are displayed on the image while distinguishing candidate positions being selected by a user operation from other candidate positions.
請求項13に記載の画像処理装置。 The display control means superimposes a first small image on the selected candidate position on the image, and differs from the first small image on the other candidate position on the image. The image processing apparatus according to claim 13, wherein a list display of the candidate positions is controlled by superimposing two small images.
前記候補位置を中心としたズーム画像を生成する画像生成手段をさらに備え、
前記画像生成手段により生成された前記候補位置を中心としたズーム画像の表示を制御する
請求項1に記載の画像処理装置。 The display control means includes
An image generating means for generating a zoom image centered on the candidate position;
The image processing apparatus according to claim 1, wherein display of a zoom image centered on the candidate position generated by the image generation unit is controlled.
前記画像生成手段により生成された複数の前記候補位置をそれぞれ中心とした複数のズーム画像の表示を制御する
請求項15に記載の画像処理装置。 The display control means includes
The image processing apparatus according to claim 15, wherein display of a plurality of zoom images centered on the plurality of candidate positions generated by the image generation unit is controlled.
前記画像生成手段により生成された前記候補位置を中心としたズーム画像に、ユーザの操作による選択中の候補位置が、他の候補位置と区別されて前記画像上に示される前記候補位置の一覧表示が重畳された表示を制御する
請求項15に記載の画像処理装置。 The display control means includes
In the zoom image centered on the candidate position generated by the image generation means, the candidate position being selected by the user's operation is displayed as a list of candidate positions displayed on the image in distinction from other candidate positions. The image processing apparatus according to claim 15, wherein the display is controlled.
ユーザの操作による選択中の候補位置が、他の候補位置と区別されて前記画像上に示される前記候補位置の一覧表示上に、前記画像生成手段により生成された前記候補位置を中心としたズーム画像が重畳された表示を制御する
請求項15に記載の画像処理装置。 The display control means includes
The candidate position currently selected by the user's operation is distinguished from other candidate positions on the list display of the candidate position shown on the image, and the zoom centered on the candidate position generated by the image generation means The image processing apparatus according to claim 15, wherein display on which an image is superimposed is controlled.
ユーザの操作に対応して、画像上の移動するオブジェクトを追尾対象として追尾を行う追尾手段の前記追尾対象の候補としての候補位置を算出し、
算出された前記候補位置の表示を制御し、
ユーザの操作に対応して、表示される前記候補位置を、前記追尾手段の次のフレームにおける前記追尾対象として設定するステップ
を含む画像処理方法。 In an image processing method of an image processing apparatus for displaying a moving object,
In response to the user's operation, the candidate position as the tracking target candidate of the tracking means for tracking the moving object on the image as the tracking target is calculated,
Controlling the display of the calculated candidate position;
An image processing method including a step of setting the displayed candidate position as the tracking target in the next frame of the tracking unit in response to a user operation.
ユーザの操作に対応して、画像上の移動するオブジェクトを追尾対象として追尾を行う追尾手段の前記追尾対象の候補としての候補位置を算出し、
算出された前記候補位置の表示を制御し、
ユーザの操作に対応して、表示される前記候補位置を、前記追尾手段の次のフレームにおける前記追尾対象として設定するステップ
を含むプログラム。 A program for causing a computer to perform processing for displaying a moving object,
In response to the user's operation, the candidate position as the tracking target candidate of the tracking means for tracking the moving object on the image as the tracking target is calculated,
Controlling the display of the calculated candidate position;
A program comprising the step of setting the displayed candidate position as the tracking target in the next frame of the tracking means in response to a user operation.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006099831A JP2007274543A (en) | 2006-03-31 | 2006-03-31 | Image processing apparatus and method, program, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006099831A JP2007274543A (en) | 2006-03-31 | 2006-03-31 | Image processing apparatus and method, program, and recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007274543A true JP2007274543A (en) | 2007-10-18 |
Family
ID=38676836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006099831A Withdrawn JP2007274543A (en) | 2006-03-31 | 2006-03-31 | Image processing apparatus and method, program, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007274543A (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090296986A1 (en) * | 2008-05-30 | 2009-12-03 | Sony Corporation | Image processing device and image processing method and program |
EP2131329A2 (en) | 2008-06-06 | 2009-12-09 | Sony Corporation | Tracking point detecting device and method, program, and recording medium |
JP2010050934A (en) * | 2008-08-25 | 2010-03-04 | Canon Inc | Image processing device, imaging apparatus, control method of the image processing device and program |
JP2010140425A (en) * | 2008-12-15 | 2010-06-24 | Hitachi Kokusai Electric Inc | Image processing system |
JP2012505471A (en) * | 2008-10-08 | 2012-03-01 | ストライダー ラブス,インコーポレイテッド | System and method for building a 3D scene model from an image |
JP2012099975A (en) * | 2010-10-29 | 2012-05-24 | Keyence Corp | Video tracking apparatus, video tracking method and video tracking program |
US8363107B2 (en) | 2008-12-04 | 2013-01-29 | Sony Corporation | Image processing device and method, image processing system, and image processing program |
KR20170048209A (en) * | 2015-10-23 | 2017-05-08 | 가부시키가이샤 모르포 | Image processing divice, electronic device, image processing method and non-transitory computer readable recording medium |
WO2019070011A1 (en) * | 2017-10-05 | 2019-04-11 | パナソニックIpマネジメント株式会社 | Mobile entity tracking device and method for tracking mobile entity |
-
2006
- 2006-03-31 JP JP2006099831A patent/JP2007274543A/en not_active Withdrawn
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8494216B2 (en) * | 2008-05-30 | 2013-07-23 | Sony Corporation | Image processing device and image processing method and program |
EP2131327A1 (en) | 2008-05-30 | 2009-12-09 | Sony Corporation | User-based selection of tracking point candidates |
US20090296986A1 (en) * | 2008-05-30 | 2009-12-03 | Sony Corporation | Image processing device and image processing method and program |
EP2131329A2 (en) | 2008-06-06 | 2009-12-09 | Sony Corporation | Tracking point detecting device and method, program, and recording medium |
JP2010050934A (en) * | 2008-08-25 | 2010-03-04 | Canon Inc | Image processing device, imaging apparatus, control method of the image processing device and program |
JP2012505471A (en) * | 2008-10-08 | 2012-03-01 | ストライダー ラブス,インコーポレイテッド | System and method for building a 3D scene model from an image |
US9886770B2 (en) | 2008-12-04 | 2018-02-06 | Sony Corporation | Image processing device and method, image processing system, and image processing program |
US8363107B2 (en) | 2008-12-04 | 2013-01-29 | Sony Corporation | Image processing device and method, image processing system, and image processing program |
US8957971B2 (en) | 2008-12-04 | 2015-02-17 | Sony Corporation | Image processing device and method, image processing system, and image processing program |
US9786144B2 (en) | 2008-12-04 | 2017-10-10 | Sony Corporation | Image processing device and method, image processing system, and image processing program |
JP2010140425A (en) * | 2008-12-15 | 2010-06-24 | Hitachi Kokusai Electric Inc | Image processing system |
JP2012099975A (en) * | 2010-10-29 | 2012-05-24 | Keyence Corp | Video tracking apparatus, video tracking method and video tracking program |
KR20170048209A (en) * | 2015-10-23 | 2017-05-08 | 가부시키가이샤 모르포 | Image processing divice, electronic device, image processing method and non-transitory computer readable recording medium |
KR101889470B1 (en) * | 2015-10-23 | 2018-08-20 | 가부시키가이샤 모르포 | Image processing divice, electronic device, image processing method and non-transitory computer readable recording medium |
US10319097B2 (en) | 2015-10-23 | 2019-06-11 | Morpho, Inc. | Image processing device, method and non-transitory computer readable recording medium for tracking a target in a motion picture using color information |
WO2019070011A1 (en) * | 2017-10-05 | 2019-04-11 | パナソニックIpマネジメント株式会社 | Mobile entity tracking device and method for tracking mobile entity |
JPWO2019070011A1 (en) * | 2017-10-05 | 2020-11-05 | パナソニックIpマネジメント株式会社 | Mobile tracking device and mobile tracking method |
JP7246005B2 (en) | 2017-10-05 | 2023-03-27 | パナソニックIpマネジメント株式会社 | Mobile tracking device and mobile tracking method |
US11638068B2 (en) | 2017-10-05 | 2023-04-25 | Panasonic Intellectual Property Management Co., Ltd. | Mobile entity tracking device and method for tracking mobile entity |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2007274543A (en) | Image processing apparatus and method, program, and recording medium | |
JP4575829B2 (en) | Display screen position analysis device and display screen position analysis program | |
JP4797753B2 (en) | Image processing apparatus and method, and program | |
JP5274216B2 (en) | Monitoring system and monitoring method | |
JP2009253505A (en) | Image signal processing apparatus, image signal processing method, and program | |
JP4725105B2 (en) | Image processing apparatus and method, program, and recording medium | |
JP2008109552A (en) | Imaging device with chasing function | |
GB2554111A (en) | Image processing apparatus, imaging apparatus, and image processing method | |
JP7223079B2 (en) | IMAGE PROCESSING APPARATUS, CONTROL METHOD THEREOF, AND IMAGING APPARATUS | |
JP2008241707A (en) | Automatic monitoring system | |
JP2007272733A (en) | Image processing device and method, and program | |
JP2008009849A (en) | Person tracking device | |
JP2010114752A (en) | Device and method of imaging and program | |
WO2014103673A1 (en) | Information processing system, information processing method, and program | |
JP4464902B2 (en) | Camera control apparatus and camera control program | |
JP2005346425A (en) | Automatic tracking system and automatic tracking method | |
US8471872B2 (en) | Image display controlling apparatus, image display controlling method and integrated circuit | |
JP2009010453A (en) | Image processing apparatus and method, and program | |
JP4664878B2 (en) | Image processing device | |
JP2007068008A (en) | Automatic tracking apparatus | |
JP2012198802A (en) | Intrusion object detection system | |
JP3828096B2 (en) | Object tracking device | |
JP2007272731A (en) | Image processing apparatus and method, and program | |
JP2013179614A (en) | Imaging apparatus | |
JP4826316B2 (en) | Image processing apparatus and method, program, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20090602 |