JP4826316B2 - Image processing apparatus and method, program, and recording medium - Google Patents
Image processing apparatus and method, program, and recording medium Download PDFInfo
- Publication number
- JP4826316B2 JP4826316B2 JP2006099832A JP2006099832A JP4826316B2 JP 4826316 B2 JP4826316 B2 JP 4826316B2 JP 2006099832 A JP2006099832 A JP 2006099832A JP 2006099832 A JP2006099832 A JP 2006099832A JP 4826316 B2 JP4826316 B2 JP 4826316B2
- Authority
- JP
- Japan
- Prior art keywords
- point
- tracking
- unit
- transfer
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Closed-Circuit Television Systems (AREA)
- Image Analysis (AREA)
Description
本発明は、画像処理装置および方法、プログラム、並びに記録媒体に関し、特に、追尾点を他の候補に乗り換えて追尾して表示する場合に、乗り換えにより生じる違和感を軽減することができるようにした画像処理装置および方法、プログラム、並びに記録媒体に関する。 The present invention relates to an image processing apparatus and method, a program, and a recording medium, and in particular, an image that can reduce a sense of incongruity caused by a transfer when a tracking point is switched to another candidate and displayed. The present invention relates to a processing apparatus and method, a program, and a recording medium.
動画像中でユーザが指定した対象を追尾する技術は、従来から多く提案されている。しかしながら、従来の技術においては、追尾対象が他の物体により一時的に隠れてしまうオクルージョンが発生したり、あるいはシーンチェンジなどにより追尾対象が一時的に表示されなくなるような場合、ロバストな追尾を行うことが困難であった。 Many techniques for tracking an object designated by a user in a moving image have been proposed. However, in the conventional technique, when the occlusion that the tracking target is temporarily hidden by another object occurs or the tracking target is temporarily not displayed due to a scene change or the like, robust tracking is performed. It was difficult.
そこで、予め追尾点の候補を求めておき、追尾対象が回転して追尾点が一時的に見えなくなったり、オクルージョンやシーンチェンジが発生した場合などに、追尾点を、予め求められている追尾点の候補に乗り換えることで、追尾対象の追尾をより確実に行うことを、本出願人が、先に出願した特許文献1において提案している。
Therefore, a tracking point candidate is obtained in advance, and the tracking point is determined in advance when the tracking target rotates and the tracking point temporarily disappears, or when an occlusion or scene change occurs. This applicant proposes in
しかしながら、特許文献1に記載のオブジェクト追尾においては、追尾結果をそのまま表示していた。したがって、追尾点を追尾候補に乗り換えた場合、その追尾結果の表示においては、乗り換えによる違和感が生じてしまうことがあった。この違和感は、特に、特許文献1に記載のオブジェクト追尾を、その追尾点を中心としてズームして表示するアプリケーションに適用させた場合に顕著に生じるものである。
However, in the object tracking described in
本発明は、このような状況に鑑みてなされたものであり、追尾点を他の候補に乗り換えて追尾して表示する場合に、乗り換えにより生じる違和感を軽減することができるようにするものである。 The present invention has been made in view of such a situation, and makes it possible to reduce a sense of incongruity caused by a transfer when the tracking point is switched to another candidate for tracking and display. .
本発明の一側面の画像処理装置は、移動するオブジェクトを表示させる画像処理装置において、時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第1の点の時間的に後の処理単位における追尾点としての第2の点の位置への動きを推定する動き推定手段と、前記後の処理単位における前記第2の点の位置への動きが推定可能でない場合、前記第1の点の乗り換え候補としての推定点の中から他の第1の点を選択する選択手段と、前記選択手段により選択された前記他の第1の点について推定された前記第2の点の位置への動きに基づいて、前記後の処理単位における前記第2の点を決定する決定手段と、前記第1の点の位置および前記他の第1の点の位置に基づいて提示位置を算出する提示位置算出手段と、前記提示位置算出手段により算出された前記提示位置に基づいて表示画像を作成する表示画像作成手段と、前記表示画像作成手段により作成された前記表示画像の表示を制御する表示制御手段とを備え、前記提示位置算出手段は、前記第1の点の位置および前記他の第1の点の位置から得られる乗り換え量が所定量以上であるか否かを判定する比較判定手段と、前記比較判定手段により前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第1の点について推定された前記第2の点の位置への動きに基づき、前記提示位置を設定する提示位置設定手段とを備える。 An image processing apparatus according to an aspect of the present invention is an image processing apparatus that displays a moving object, and is temporally subsequent to the first point as the tracking point of the moving object on the image of the previous processing unit. A motion estimation means for estimating the movement to the position of the second point as the tracking point in the processing unit; and if the movement to the position of the second point in the subsequent processing unit cannot be estimated, the first Selecting means for selecting another first point from the estimated points as transfer candidates for the point, and the position of the second point estimated for the other first point selected by the selecting means Based on the movement, the determining means for determining the second point in the subsequent processing unit, and calculating the presentation position based on the position of the first point and the position of the other first point Presenting position calculating means and the presenting Includes a display image generating means for generating a display image based on the presentation position calculated by置算detecting means, and display control means for controlling display of the display image created by the display image generation unit, the presentation The position calculation means includes a comparison determination means for determining whether or not a transfer amount obtained from the position of the first point and the position of the other first point is a predetermined amount or more, and the comparison determination means by the comparison determination means. When it is determined that the transfer amount is greater than or equal to a predetermined amount, only the predetermined amount of the transfer amount is reflected, and the movement to the position of the second point estimated for the other first point And a presentation position setting means for setting the presentation position .
本発明の一側面の画像処理方法は、移動するオブジェクトを表示させる画像処理装置の画像処理方法において、時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第1の点の時間的に後の処理単位における追尾点としての第2の点の位置への動きを推定する動き推定ステップと、前記後の処理単位における前記第2の点の位置への動きが推定可能でない場合、前記第1の点の乗り換え候補としての推定点の中から他の第1の点を選択する選択ステップと、選択された前記他の第1の点について推定された前記第2の点の位置への動きに基づいて、前記後の処理単位における前記第2の点を決定する決定ステップと、前記第1の点の位置および前記他の第1の点の位置に基づいて提示位置を算出する提示位置算出ステップと、算出された前記提示位置に基づいて表示画像を作成する表示画像作成ステップと、作成された前記表示画像の表示を制御する表示制御ステップとを含み、前記提示位置算出ステップの処理によって、前記第1の点の位置および前記他の第1の点の位置から得られる乗り換え量が所定量以上であるか否かを判定し、前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第1の点について推定された前記第2の点の位置への動きに基づき、前記提示位置を設定する。 An image processing method according to one aspect of the present invention is an image processing method for an image processing apparatus that displays a moving object. A motion estimation step for estimating the movement to the position of the second point as the tracking point in the subsequent processing unit, and the movement to the position of the second point in the subsequent processing unit cannot be estimated A selection step of selecting another first point from the estimated points as transfer candidates for the first point, and the position of the second point estimated for the selected other first point based on the movement of the, calculates a determination step of determining a second point in the processing unit after said, the presentation position based on the position and the position of the other of the first point of the first point Presentation position calculation step A display image generation step of generating a display image based on the calculated presentation position, seen including a display control step for controlling the display of the display image generated by the processing of the presentation position calculation step, the It is determined whether or not the transfer amount obtained from the position of the first point and the position of the other first point is a predetermined amount or more, and when it is determined that the transfer amount is a predetermined amount or more, Only the predetermined amount of the transfer amount is reflected, and the presentation position is set based on the movement to the position of the second point estimated for the other first point.
本発明の一側面のプログラムは、移動するオブジェクトを表示させる画像処理装置の画像処理方法において、時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第1の点の時間的に後の処理単位における追尾点としての第2の点の位置への動きを推定する動き推定ステップと、前記後の処理単位における前記第2の点の位置への動きが推定可能でない場合、前記第1の点の乗り換え候補としての推定点の中から他の第1の点を選択する選択ステップと、選択された前記他の第1の点について推定された前記第2の点の位置への動きに基づいて、前記後の処理単位における前記第2の点を決定する決定ステップと、前記第1の点の位置および前記他の第1の点の位置に基づいて提示位置を算出する提示位置算出ステップと、算出された前記提示位置に基づいて表示画像を作成する表示画像作成ステップと、作成された前記表示画像の表示を制御する表示制御ステップとを含み、前記提示位置算出ステップの処理によって、前記第1の点の位置および前記他の第1の点の位置から得られる乗り換え量が所定量以上であるか否かを判定し、前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第1の点について推定された前記第2の点の位置への動きに基づき、前記提示位置を設定する。 According to another aspect of the present invention, there is provided a program according to an image processing method of an image processing apparatus for displaying a moving object. A motion estimation step for estimating the movement to the position of the second point as the tracking point in the subsequent processing unit, and the movement to the position of the second point in the subsequent processing unit cannot be estimated, A selection step of selecting another first point from the estimated points as transfer candidates for the first point, and the position of the second point estimated for the selected other first point A determination step for determining the second point in the subsequent processing unit based on movement, and a presentation position for calculating a presentation position based on the position of the first point and the position of the other first point a calculation step A display image generation step of generating a display image based on the calculated presentation position, seen including a display control step for controlling the display of the display image generated by the processing of the presentation position calculation step, the second It is determined whether or not the transfer amount obtained from the position of one point and the position of the other first point is greater than or equal to a predetermined amount, and when it is determined that the transfer amount is greater than or equal to a predetermined amount, Only the predetermined amount of the amount is reflected, and the presentation position is set based on the movement to the position of the second point estimated for the other first point.
本発明の一側面の記録媒体に記録されているプログラムは、移動するオブジェクトを表示させる画像処理装置の画像処理方法において、時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第1の点の時間的に後の処理単位における追尾点としての第2の点の位置への動きを推定する動き推定ステップと、前記後の処理単位における前記第2の点の位置への動きが推定可能でない場合、前記第1の点の乗り換え候補としての推定点の中から他の第1の点を選択する選択ステップと、選択された前記他の第1の点について推定された前記第2の点の位置への動きに基づいて、前記後の処理単位における前記第2の点を決定する決定ステップと、前記第1の点の位置および前記他の第1の点の位置に基づいて提示位置を算出する提示位置算出ステップと、算出された前記提示位置に基づいて表示画像を作成する表示画像作成ステップと、作成された前記表示画像の表示を制御する表示制御ステップとを含み、前記提示位置算出ステップの処理によって、前記第1の点の位置および前記他の第1の点の位置から得られる乗り換え量が所定量以上であるか否かを判定し、前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第1の点について推定された前記第2の点の位置への動きに基づき、前記提示位置を設定する。 A program recorded on a recording medium according to one aspect of the present invention is used as a tracking point of a moving object on an image of a previous processing unit in terms of time in an image processing method of an image processing apparatus that displays a moving object. A motion estimation step for estimating the movement of the first point to the position of the second point as the tracking point in the subsequent processing unit; and the movement to the position of the second point in the subsequent processing unit Is not estimable, a selection step of selecting another first point from the estimated points as transfer candidates of the first point, and the first point estimated for the selected other first point A determination step of determining the second point in the subsequent processing unit based on the movement of the second point to the position of the second point, and based on the position of the first point and the position of the other first point to calculate the present position A presentation position calculating step, a display image generation step of generating a display image based on the calculated presentation position, seen including a display control step for controlling the display of the display image created, the presentation position calculating step By determining whether or not the transfer amount obtained from the position of the first point and the position of the other first point is greater than or equal to a predetermined amount, the determination is that the change amount is greater than or equal to the predetermined amount. If it is, the presentation position is set based on the movement to the position of the second point estimated for the other first point, reflecting only the predetermined amount of the transfer amount.
本発明の一側面においては、時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第1の点の時間的に後の処理単位における追尾点としての第2の点の位置への動きが推定され、前記後の処理単位における前記第2の点の位置への動きが推定可能でない場合、前記第1の点の乗り換え候補としての推定点の中から他の第1の点が選択され、選択された前記他の第1の点について推定された前記第2の点の位置への動きに基づいて、前記後の処理単位における前記第2の点が決定される。そして、前記第1の点の位置および前記他の第1の点の位置に基づいて、提示位置が算出され、算出された前記提示位置に基づいて表示画像が作成され、作成された前記表示画像の表示が制御される。また、提示位置の算出の際には、前記第1の点の位置および前記他の第1の点の位置から得られる乗り換え量が所定量以上であるか否かが判定され、前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第1の点について推定された前記第2の点の位置への動きに基づき、前記提示位置が設定される。 In one aspect of the present invention, the position of the second point as the tracking point in the temporally subsequent processing unit of the first point as the tracking point of the moving object on the image of the temporally previous processing unit. If the movement to the position of the second point in the subsequent processing unit cannot be estimated, another first point is selected from the estimated points as transfer candidates for the first point. Is selected, and the second point in the subsequent processing unit is determined based on the movement to the position of the second point estimated for the selected other first point. Then, a presentation position is calculated based on the position of the first point and the position of the other first point, a display image is created based on the calculated presentation position, and the created display image The display of is controlled. Further, when calculating the presentation position, it is determined whether or not the transfer amount obtained from the position of the first point and the position of the other first point is equal to or greater than a predetermined amount, and the transfer amount is If it is determined that it is greater than or equal to a predetermined amount, only the predetermined amount of the transfer amount is reflected, and based on the movement to the position of the second point estimated for the other first point, The presentation position is set.
本発明によれば、追尾点を他の候補に乗り換えて追尾し表示する場合に、乗り換えにより生じる違和感を軽減することができる。これにより、追尾点をズームして表示する場合であっても、乗り換えによる違和感が緩和された表示を行うことができる。 According to the present invention, when the tracking point is switched to another candidate for tracking and display, the uncomfortable feeling caused by the switching can be reduced. Thereby, even when the tracking point is zoomed and displayed, it is possible to perform display in which the uncomfortable feeling due to the transfer is reduced.
以下、図面を参照して、本発明の実施の形態について説明する。 Embodiments of the present invention will be described below with reference to the drawings.
図1は、本発明をテレビジョン受像機に適用した場合の構成例を表している。このテレビジョン受像機1は、チューナ21、画像処理部22、オブジェクト追尾部23、ズーム画像作成部24、選択部25、画像ディスプレイ26、音声処理部27、スピーカ28、制御部29、リモートコントローラ30、およびリムーバブルメディア31で構成されている。
FIG. 1 shows a configuration example when the present invention is applied to a television receiver. The
チューナ21は、RF信号を入力し、復調して画像信号と音声信号とに分離し、画像信号を画像処理部22に出力し、音声信号を音声処理部27に出力する。
The
画像処理部22は、チューナ21より入力された画像信号を復調し、オブジェクト追尾部23、ズーム画像作成部24、および選択部25に出力する。オブジェクト追尾部23は、入力画像からユーザにより指定されたオブジェクトの追尾点を追尾する処理を実行し、その追尾点に基づいて、追尾されたオブジェクトの提示の基準とする提示位置を求め、その提示位置に関する座標情報を、ズーム画像作成部24に出力する。ズーム画像作成部24は、提示位置に基づいて、ズーム画像(すなわち、ズームした表示画像)を作成する。選択部25は、画像処理部22より供給された画像またはズーム画像作成部24より供給された画像の一方をユーザからの指示に基づいて選択し、画像ディスプレイ26に出力し、表示させる。
The
音声処理部27は、チューナ21より入力された音声信号を復調し、スピーカ28に出力する。
The
制御部29は、例えば、マイクロコンピュータなどにより構成され、ユーザの指示に基づいて各部を制御する。リモートコントローラ30は、ユーザにより操作され、その操作に対応する信号を制御部29に出力する。リムーバブルメディア31は、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスクなどにより構成され、必要に応じて装着され、制御部29に、プログラム、その他各種のデータを提供する。
The
次に、テレビジョン受像機1の処理について、図2のフローチャートを参照して説明する。
Next, processing of the
ステップS1において、チューナ21は、図示せぬアンテナを介して受信したRF信号から、ユーザにより指示されたチャンネルの信号を復調して、画像信号を画像処理部22に出力し、音声信号を音声処理部27に出力する。音声信号は、音声処理部27で復調された後、スピーカ28から出力される。
In step S1, the
画像処理部22は、入力された画像信号を復調し、オブジェクト追尾部23、ズーム画像作成部24、および選択部25に出力する。
The
ステップS2において、オブジェクト追尾部23は、追尾が指示されたか否かを判定し、追尾が指示されていないと判定された場合、ステップS3,S4の処理をスキップする。ステップS5において、選択部25は、画像処理部22より供給される画像信号と、ズーム画像作成部24より入力される画像信号のいずれか一方を制御部29からの制御に基づいて選択する。いまの場合、ユーザから特に指示がなされていないので、制御部29は、選択部25に画像処理部22からの画像信号を選択させる。ステップS6において画像ディスプレイ26は、選択部25により選択された画像を表示する。
In step S2, the
ステップS7において、制御部29は、ユーザの指示に基づいて画像表示処理を終了するか否かを判定する。すなわちユーザは、画像表示処理を終了するとき、リモートコントローラ30を操作して、制御部29にそれを指示する。ユーザから終了が指示されていない場合、処理はステップS1に戻り、それ以降の処理が繰り返し実行される。
In step S7, the
以上のようにして、チューナ21により受信された信号に対応する画像をそのまま表示する通常の処理が実行される。
As described above, normal processing for displaying an image corresponding to the signal received by the
ユーザは、画像ディスプレイ26に表示されている画像を見て追尾したいと思う画像が表示されたとき、リモートコントローラ30を操作することで、その画像を指定する。この操作がなされたとき、ステップS2において制御部29は、追尾が指示されたと判定し、オブジェクト追尾部23を制御する。オブジェクト追尾部23は、この制御に基づいて、ユーザにより指定された追尾点の追尾処理を開始する。
When an image desired to be tracked is displayed by looking at the image displayed on the
追尾処理の詳細については、図4を参照して後述するが、この処理により、ユーザにより指定された追尾点、例えば、画像の中の追尾対象となるオブジェクト(例えば、人、動物など)の中の追尾点(目、頭の中心など)が追尾され、その追尾点に基づいて、追尾を行ったオブジェクトを提示する際にその提示の基準となる提示位置が算出され、その提示位置を表す位置情報が、提示位置情報として、ズーム画像作成部24に出力される。
Details of the tracking process will be described later with reference to FIG. 4. By this process, the tracking point designated by the user, for example, an object to be tracked in the image (for example, a person, an animal, etc.) The tracking position (eye, center of head, etc.) is tracked, and based on the tracking point, when presenting the tracked object, the presentation position serving as the presentation reference is calculated, and the position representing the presentation position Information is output to the zoom
ステップS4において、ズーム画像作成部24は、オブジェクト追尾部23により求められた提示位置に基づいて、ズーム画像を生成し、選択部25に出力する。すなわち、ズーム画像作成部24は、オブジェクト追尾部23により求められた提示位置を中心として、ズーム画像を生成する。すなわち、提示位置は、ズームの提示中心点とも言える。
In step S <b> 4, the zoom
このズーム画像作成処理は、本出願人が先に提案しているクラス分類適応処理を利用して行うことができる。例えば、特開2002−196737公報には、予め学習して得た係数を用いて、525i信号を1080i信号に変換する処理が開示されている。この処理は、垂直方向と水平方向の両方に9/4倍に画像を拡大する処理と実質的に同様の処理である。ただし、画像ディスプレイ26は、画素数が一定であるため、ズーム画像作成部24は、例えば9/4倍の画像を作成する場合、525i信号を1080i信号に変換した後、提示位置を中心とする所定の数の画素(画像ディスプレイ26に対応する数の画素)を選択することでズーム画像を作成することができる。
This zoom image creation 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.
追尾が指示されている場合、ステップS5において選択部25は、ズーム画像作成部24により作成されたズーム画像を選択する。その結果、ステップS6において、画像ディスプレイ26は、ズーム画像作成部24により作成されたズーム画像を表示することになる。
If tracking is instructed, the
以上のようにして、画像ディスプレイ26には、ユーザが指定した追尾点に基づいて求められる提示位置を中心とするズーム画像が表示される。なお、倍率が1に設定された場合には、提示位置を基準とした、ズームなしの表示画像が作成されて、表示される。
As described above, the
次に、図1のオブジェクト追尾部23の詳細な構成例と、その動作について説明する。図3はオブジェクト追尾部23の機能的構成例を示すブロック図である。この例では、オブジェクト追尾部23は、追尾処理部41と提示位置算出部42により構成されている。
Next, a detailed configuration example and operation of the
追尾処理部41は、入力画像の動きを推定し、推定の結果得られた動きベクトルなどに基づいて、追尾点を算出する。そして、追尾処理部41は、算出した追尾点の位置情報などの追尾結果と、推定の結果得られた、追尾結果に対応する動きベクトルを提示位置算出部42に供給する。
The
提示位置算出部42は、追尾処理部41により供給された追尾結果および動きベクトルに基づいて、オブジェクトの追尾(すなわち、追尾結果)を提示する際の基準となる提示位置を算出し、算出した提示位置に関する情報を、ズーム画像作成部24、および制御部29などに出力する。
The presentation
次に、オブジェクト追尾部23の動作について説明する。図4は、図2のステップS3において、オブジェクト追尾部23が実行する追尾処理の詳細を説明するフローチャートである。
Next, the operation of the
まず、ステップS21において、オブジェクト追尾部23の追尾処理部41は、ステップS2で指定された追尾点を追尾することで、追尾点を算出する追尾点算出処理を実行する。この追尾点算出処理は、図5に示されるように、基本的に通常処理と例外処理で構成される。
First, in step S21, the
すなわち、追尾処理部41は、まず、ステップS51において、通常処理を実行する。この通常処理の詳細は、図10を参照して後述するが、この処理によりユーザにより指定された追尾点を追尾する処理が実行される。ステップS51の通常処理において追尾点の乗り換えができなくなったとき、追尾処理部41は、ステップS52において、例外処理を実行する。この例外処理の詳細は、図25を参照して後述するが、この例外処理により、追尾点が画像から見えなくなったとき、テンプレートマッチングにより通常処理への復帰処理が実行される。
That is, the
例外処理によって追尾処理を継続することができなくなった(通常処理へ復帰することができなくなった)と判定された場合には処理が終了されるが、テンプレートによる復帰処理の結果、通常処理への復帰が可能と判定された場合には、処理は再びステップS51に戻る。このようにして、ステップS51の通常処理とステップS52の例外処理が、フレーム毎に順次繰り返し実行される。 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 the return is possible, the process returns to step S51 again. In this way, the normal process in step S51 and the exception process in step S52 are sequentially repeated for each frame.
この通常処理と例外処理により、本発明においては、図6乃至図8に示されるように、追尾対象が回転したり、オクルージョンが発生したり、シーンチェンジが発生する等、追尾点が一時的に見えなくなった場合においても、追尾が可能となる。 With this normal processing and exception processing, in the present invention, as shown in FIGS. 6 to 8, the tracking point is temporarily changed such that the tracking target is rotated, occlusion occurs, a scene change occurs, and the like. Even when it becomes invisible, tracking is possible.
すなわち、例えば、図6に示されるように、フレームn−1には追尾対象(オブジェクト)としての人の顔104が表示されており、この人の顔104は、右目102と左目103を有している。ユーザが、このうちの、例えば右目102(正確には、その中の1つの画素)を追尾点101として指定したとする。図6の例においては、次のフレームnにおいて、人が図中左方向に移動しており、さらに次のフレームn+1においては、人の顔104が時計方向に回動している。その結果、今まで見えていた右目102が表示されなくなり、いままでの方法では、追尾ができなくなる。そこで、上述したステップS51の通常処理においては、右目102と同一の対象物としての顔104上の左目103が選択され、追尾点が左目103に乗り換えられる(設定される)。これにより追尾が可能となる。
That is, for example, as shown in FIG. 6, a
図7の表示例では、フレームn−1において、顔104の図中左側からボール121が移動してきて、次のフレームnにおいては、ボール121がちょうど顔104を覆う状態となっている。この状態において、追尾点101として指定されていた右目102を含む顔104が表示されていない。このようなオクルージョンが起きると、対象物としての顔104が表示されていないので、追尾点101に代えて追尾する乗り換え点もなくなり、以後、追尾点を追尾することが困難になる。しかし、本発明においては、追尾点101としての右目102をフレームn−1(実際には時間的にもっと前のフレーム)の画像がテンプレートとして予め保存されており、ボール121がさらに右側に移動し、フレームn+1において、追尾点101として指定された右目102が再び現れると、上述したステップS52の例外処理により、追尾点101としての右目102が再び表示されたことが確認され、右目102が再び追尾点101として追尾されることになる。
In the display example of FIG. 7, in the frame n−1, the
図8の例では、フレームn−1においては、顔104が表示されているが、次のフレームnにおいては、自動車111が人の顔を含む全体を覆い隠している。すなわち、この場合、シーンチェンジが起きたことになる。本発明では、このようにシーンチェンジが起きて追尾点101が画像から存在しなくなっても、自動車111が移動して、フレームn+1において再び右目102が表示されると、ステップS52の例外処理で、追尾点101としての右目102が再び出現したことがテンプレートに基づいて確認され、この右目102を再び追尾点101として追尾することが可能となる。
In the example of FIG. 8, the
図4に戻って、上述したようにステップS21の追尾点算出処理においては、例外処理により追尾処理を継続することができなくなるまで、ユーザにより指定された追尾点、あるいは、追尾点を乗り換えるべき点としての乗り換え点に乗り換えられた結果の追尾点が決定される。このとき、決定された追尾点に関する情報(例えば、追尾点の位置情報や、乗り換えの履歴情報など)と、その追尾点に対応する動きベクトルが、提示位置算出部42に供給される。
Returning to FIG. 4, as described above, in the tracking point calculation process in step S <b> 21, the tracking point designated by the user or the point to be switched is changed until the tracking process cannot be continued by the exception process. The tracking point resulting from the transfer to the transfer point is determined. At this time, information on the determined tracking point (for example, tracking point position information and transfer history information) and a motion vector corresponding to the tracking point are supplied to the presentation
ステップS22において、提示位置算出部42は、このステップS21で決定された追尾点に関する情報に基づいて、さらに、オブジェクトの追尾(すなわち、追尾結果)を提示する際の基準となる提示位置、すなわち、ズーム画像作成部24がズーム画像を作成するときに、その中心とする提示位置を算出する提示位置算出処理を実行する。
In step S22, the presentation
この提示位置算出処理の詳細は、図41を参照して後述するが、この処理により、ステップS21で求められた現在の追尾点が乗り換えられたものであり、過去の追尾点の位置から、乗り換え点の位置への動き量である乗り換えベクトルが、所定の動き量を超えている場合、過去の提示位置に、その乗り換えベクトルのうち、所定の動き量だけが反映されて、現在の提示位置が算出される。この場合、反映されなかった残りの動き量(以下、乗り換え残りベクトルとも称する)は、次のフレームの処理に反映される。 The details of the presentation position calculation process will be described later with reference to FIG. 41, but the current tracking point obtained in step S21 is changed by this process, and the transfer is performed from the position of the past tracking point. If the transfer vector, which is the amount of movement to the point position, exceeds the predetermined amount of movement, only the predetermined amount of movement is reflected in the past presentation position, and the current presentation position is Calculated. In this case, the remaining motion amount that has not been reflected (hereinafter also referred to as a transfer remaining vector) is reflected in the processing of the next frame.
一方、ステップS21で求められた現在の追尾点が乗り換えられたものでなく、かつ、前フレームからの乗り換え残りベクトルがない場合には、ステップS21で求められた現在の追尾点が、現在の提示位置として設定される。 On the other hand, if the current tracking point obtained in step S21 is not changed and there is no remaining transfer vector from the previous frame, the current tracking point obtained in step S21 is the current presentation point. Set as position.
この提示位置算出処理により、オブジェクトの追尾(すなわち、追尾結果)を提示する際の基準となる提示位置、すなわち、ズーム画像を作成する時のズームの中心となる提示位置が求められるので、本発明においては、追尾点が乗り換えられたことにより、表示される画像に従来生じていた違和感を軽減することができる。 By this presentation position calculation process, a presentation position serving as a reference when presenting tracking of an object (that is, a tracking result), that is, a presentation position serving as a zoom center when creating a zoom image is obtained. In, a sense of incongruity that has conventionally occurred in the displayed image can be reduced by changing the tracking point.
次に、図3の追尾処理部41の詳細な構成例と、その動作について説明する。図9は追尾処理部41の機能的構成例を示すブロック図である。この例では、追尾処理部41は、テンプレートマッチング部51、動き推定部52、シーンチェンジ検出部53、背景動き推定部54、領域推定関連処理部55、乗り換え候補保持部56、追尾点決定部57、テンプレート保持部58、および制御部59により構成されている。
Next, a detailed configuration example and operation of the
テンプレートマッチング部51は、入力画像と、テンプレート保持部58に保持されているテンプレート画像のマッチング処理を行う。動き推定部52は、入力画像の動きを推定し、推定の結果得られた動きベクトルと、その動きベクトルの確度を、シーンチェンジ検出部53、背景動き推定部54、領域推定関連処理部55、および追尾点決定部57に出力する。シーンチェンジ検出部53は、動き推定部52より供給された確度に基づいて、シーンチェンジを検出する。
The
背景動き推定部54は、動き推定部52より供給された動きベクトルと確度に基づいて背景動きを推定する処理を実行し、推定結果を領域推定関連処理部55に供給する。領域推定関連処理部55は、動き推定部52より供給された動きベクトルと確度、背景動き推定部54より供給された背景動き、並びに追尾点決定部57より供給された追尾点情報に基づいて、領域推定処理を行う。また、領域推定関連処理部55は、入力された情報に基づいて乗り換え候補を生成し、乗り換え候補保持部56へ供給し、保持させる。さらに、領域推定関連処理部55は、入力画像に基づいてテンプレートを作成し、テンプレート保持部58に供給し、保持させる。
The background
追尾点決定部57は、動き推定部52より供給された動きベクトルと確度、並びに乗り換え候補保持部56より供給された乗り換え候補に基づいて、追尾点を決定し、決定された追尾点に関する情報を領域推定関連処理部55に出力する。
The tracking
制御部59は、制御部29から指定された追尾点の情報に基づいて、テンプレートマッチング部51乃至テンプレート保持部58の各部を制御して、指示された追尾対象を追尾させるとともに、追尾点の画面上での位置の情報などの追尾結果と、決定された追尾点に対応する動きベクトルを、提示位置算出部42などに出力する。すなわち、追尾点決定部57により決定された追尾点に関する情報などの追尾結果と、決定された追尾点に対応する、動き推定部52からの動きベクトルが提示位置算出部42に供給される。
The
次に、図10のフローチャートを参照して、図5のステップS51の通常処理の詳細について説明する。ステップS121において、追尾点決定部57により通常処理の初期化処理が実行される。その詳細は、図11を参照して後述するが、この処理によりユーザから追尾するように指定された追尾点を基準とする領域推定範囲が指定される。この領域推定範囲は、ユーザにより指定された追尾点と同一の対象物(例えば、追尾点が人の目である場合、目と同様の動きをする剛体としての人の顔、または人の体など)に属する点の範囲を推定する際に参照する範囲である。乗り換え点は、この領域推定範囲の中の点から選択される。
Next, the details of the normal processing in step S51 in FIG. 5 will be described with reference to the flowchart in FIG. In step S121, the tracking
次に、ステップS122において、制御部59は、次のフレームの画像の入力を待機するように各部を制御する。ステップS123において、動き推定部52は、追尾点の動きを推定する。すなわち、ユーザにより指定された追尾点を含むフレーム(前フレーム)より時間的に後のフレーム(後フレーム)をステップS122の処理で取り込むことで、結局連続する2フレームの画像が得られたことになるので、ステップS123において、前フレームの追尾点に対応する後フレームの追尾点の位置を推定することで、追尾点の動きが推定される。
Next, in step S122, 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.
ステップS124において、動き推定部52は、ステップS123の処理の結果、追尾点が推定可能であったか否かを判定する。追尾点が推定可能であったか否かは、例えば、動き推定部52が生成、出力する動きベクトル(後述)の確度の値を、予め設定されている閾値と比較することで判定される。具体的には、動きベクトルの確度が閾値以上であれば推定が可能であり、閾値より小さければ推定が不可能であると判定される。すなわち、ここにおける可能性は比較的厳格に判定され、実際には推定が不可能ではなくても確度が低い場合には、不可能と判定される。これにより、より確実な追尾処理が可能となる。
In step S124, the
なお、ステップS124では、追尾点での動き推定結果と追尾点の近傍の点での動き推定結果が、多数を占める動きと一致する場合には推定可能、一致しない場合には推定不可能と判定するようにすることも可能である。 In step S124, it is determined that the motion estimation result at the tracking point and the motion estimation result at a point near the tracking point can be estimated if they match the motions that occupy the majority, and that they cannot be estimated if they do not match. It is also possible to do so.
追尾点の動きが推定可能であると判定された場合(追尾点が同一対象物上の対応する点上に正しく設定されている確率(右目102が追尾点101として指定された場合、右目102が正しく追尾されている確率)が比較的高い場合)、ステップS125に進み、追尾点決定部57は、ステップS123の処理で得られた推定動き(動きベクトル)の分だけ追尾点をシフトする。すなわち、これにより、前フレームの追尾点の追尾後の後フレームにおける追尾の位置が決定されることになる。
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
そして、決定された追尾点に関する情報(例えば、追尾点の位置情報や、乗り換えの履歴情報など)が提示位置算出部42に出力され、図4のステップS22(後述する図41および図42)の提示位置算出処理において用いられる。
Then, information on the determined tracking point (for example, tracking point position information, transfer history information, etc.) is output to the presentation
ステップS125の処理の後、ステップS126において、領域推定関連処理が実行される。この領域推定関連処理の詳細は、図14を参照して後述するが、この処理により、ステップS121の通常処理の初期化処理で指定された領域推定範囲が更新される。さらに、対象物体が回転するなどして、追尾点が表示されない状態になった場合に、追尾点を乗り換えるべき点としての乗り換え点としての候補(乗り換え候補)が、この状態(まだ追尾が可能な状態)において、予め抽出(作成)される。また、乗り換え候補への乗り換えもできなくなった場合、追尾は一旦中断されるが、再び追尾が可能になった(追尾点が再び出現した)ことを確認するために、テンプレートが予め作成される。 After step S125, region estimation related processing is executed in step S126. The details of the area estimation related process will be described later with reference to FIG. 14. By this process, the area estimation range designated in the initialization process of the normal process in step S121 is updated. 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).
ステップS126の領域推定関連処理が終了した後、処理は再びステップS122に戻り、それ以降の処理が繰り返し実行される。 After the region estimation related process in step S126 is completed, the process returns to step S122 again, and the subsequent processes are repeatedly executed.
すなわち、ユーザから指定された追尾点の動きが推定可能である限り、ステップS122乃至ステップS126の処理がフレーム毎に繰り返し実行され、追尾が行われることになる。 That is, as long as the movement of the tracking point designated by the user can be estimated, the processing from step S122 to step S126 is repeatedly executed for each frame, and tracking is performed.
これに対して、ステップS124において、追尾点の動きが推定可能ではない(不可能である)と判定された場合、すなわち、上述したように、例えば動きベクトルの確度が閾値以下であるような場合、処理はステップS127に進む。ステップS127において、追尾点決定部57は、ステップS126の領域推定関連処理で生成された乗り換え候補が乗り換え候補保持部56に保持されているので、その中から、元の追尾点に最も近い乗り換え候補を1つ選択する。追尾点決定部57は、ステップS128で乗り換え候補が選択できたか否かを判定し、乗り換え候補が選択できた場合には、ステップS129に進み、追尾点をステップS127の処理で選択した乗り換え候補に乗り換える(変更する)。すなわち、乗り換え候補の点が新たな追尾点として設定される。このとき、例えば、乗り換えを行ったことを示す乗り換えフラグなどの乗り換えの履歴情報が記憶される。その後、処理はステップS123に戻り、乗り換え候補の中から選ばれた追尾点の動きを推定する処理が実行される。
On the other hand, if it is determined in step S124 that the movement of the tracking point cannot be estimated (that is, 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 S127. In step S127, the tracking
ステップS124において新たに設定された追尾点の動きが推定可能であるか否かが再び判定され、推定可能であれば、ステップS125において追尾点を推定動き分だけシフトする処理が行われ、ステップS126において、領域推定関連処理が実行される。その後、処理は再びステップS122に戻り、それ以降の処理が繰り返し実行される。なお、
ステップS129の処理において記憶された乗り換えの履歴情報は、例えば、ステップS122に戻るときにリセットされる。
In step S124, 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 S125, and step S126. In, the area estimation related process is executed. Thereafter, the process returns to step S122 again, and the subsequent processes are repeatedly executed. In addition,
The transfer history information stored in step S129 is reset when returning to step S122, for example.
ステップS124において、新たに設定された追尾点も推定不可能であると判定された場合には、再びステップS127に戻り、乗り換え候補の中から、元の追尾点に次に最も近い乗り換え候補が選択され、ステップS129において、その乗り換え候補が新たな追尾点とされる。その新たな追尾点について、再びステップS123以降の処理が繰り返される。 If it is determined in step S124 that the newly set tracking point cannot be estimated, the process returns to step S127, and the next transfer candidate closest to the original tracking point is selected from the transfer candidates. In step S129, the transfer candidate is set as a new tracking point. The process after step S123 is repeated again for the new tracking point.
用意されているすべての乗り換え候補を新たな追尾点としても、追尾点の動きを推定することができなかった場合には、ステップS128において、乗り換え候補が選択できなかったと判定され、この通常処理は終了される。そして、図5のステップS52の例外処理に処理が進むことになる。 Even when 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 S128 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 S52 of FIG.
次に、図11のフローチャートを参照して、図10のステップS121の通常処理の初期化処理の詳細について説明する。 Next, details of the initialization process of the normal process in step S121 of FIG. 10 will be described with reference to the flowchart of FIG.
ステップS141において、制御部59は、今の処理は例外処理からの復帰の処理であるのか否かを判定する。すなわち、図5のステップS52の例外処理を終了した後、再びステップS51の通常処理に戻ってきたのか否かが判定される。最初のフレームの処理においては、まだステップS52の例外処理は実行されていないので、例外処理からの復帰ではないと判定され、処理はステップS142に進む。ステップS142において、追尾点決定部57は、追尾点を、ユーザにより指定された入力画像の中の所定の点である追尾点指示の位置に設定する処理を実行する。
In step S141, the
なお、ユーザによる指定がない場合、入力画像の中で、例えば、最も輝度の高い点が追尾点として設定することもできる。追尾点決定部57は、設定した追尾点の情報を領域推定関連処理部55に供給する。
In addition, when there is no designation | designated by a user, the point with the highest brightness | luminance can also be set as a tracking point in an input image, for example. The tracking
ステップS143において、領域推定関連処理部55は、ステップS142の処理で設定された追尾点の位置に基づき、領域推定範囲を設定する。この領域推定範囲は、追尾点と同じ剛体上の点を推定する際の参照範囲であり、予め追尾点と同じ剛体部分が領域推定範囲の大部分を占めるように、より具体的には、追尾点と同じ剛体部分に推定領域範囲の位置や大きさが追随するように設定することで、領域推定範囲の中で最も多数を占める動きを示す部分を追尾点と同じ剛体部分であると推定できるようにするためのものである。ステップS143では初期値として、例えば、追尾点を中心とする予め設定された一定の範囲が領域推定範囲とされる。
In step S143, the region estimation related processing
その後処理は、図10のステップS122に進むことになる。 Thereafter, the processing proceeds to step S122 in FIG.
一方、ステップS141において、現在の処理が、図5のステップS52の例外処理からの復帰の処理であると判定された場合、ステップS144に進み、追尾点決定部57は、後述する図25を参照して後述する処理により、テンプレートにマッチした位置に基づき追尾点と領域推定範囲を設定する。例えば、テンプレート上の追尾点とマッチした現フレーム上の点が追尾点とされ、その点から予め設定されている一定の範囲が領域推定範囲とされる。その後、処理は図10のステップS122に進む。
On the other hand, if it is determined in step S141 that the current process is a process for returning from the exception process in step S52 of FIG. 5, the process proceeds to step S144, and the tracking
以上の処理を、図12を参照して説明すると次のようになる。すなわち、図11のステップS142において、例えば、図12に示されるように、フレームn−1の人の目102が追尾点101として指定されると、ステップS143において、追尾点101を含む所定の領域が領域推定範囲133として指定される。ステップS124において、領域推定範囲133の範囲内のサンプル点が次のフレームにおいて推定可能であるか否かが判定される。図12の例の場合、フレームnの次のフレームn+1においては、領域推定範囲133のうち、左目102を含む図中左側半分の領域134がボール121で隠されているため、フレームnの追尾点101の動きを、次のフレームn+1において推定することができない。そこで、このような場合においては、時間的に前のフレームn−1で乗り換え候補として予め用意されていた領域指定範囲133内(右目102を含む剛体としての顔104内)の点の中から1つの点(例えば、顔104に含まれる左目103(正確には、その中の1つの画素))が選択され、その点がフレームn+1における、追尾点とされる。
The above process will be described with reference to FIG. That is, in step S142 of FIG. 11, for example, as shown in FIG. 12, when the
領域推定関連処理部55は、図10のステップS126における領域推定関連処理を実行するために、図13に示されるような構成を有している。すなわち、領域推定関連処理部55の領域推定部161には、動き推定部52より動きベクトルと確度が入力され、背景動き推定部54より背景動きが入力され、そして追尾点決定部57より追尾点の位置情報が入力される。乗り換え候補抽出部162には、動き推定部52より動きベクトルと確度が供給される他、領域推定部161の出力が供給される。テンプレート作成部163には、入力画像が入力される他、領域推定部161の出力が入力される。
The region estimation related processing
領域推定部161は、入力に基づいて、追尾点を含む剛体の領域を推定し、推定結果を乗り換え候補抽出部162とテンプレート作成部163に出力する。乗り換え候補抽出部162は入力に基づき乗り換え候補を抽出し、抽出した乗り換え候補を乗り換え候補保持部56へ供給する。テンプレート作成部163は入力に基づきテンプレートを作成し、作成したテンプレートをテンプレート保持部58へ供給する。
The
図14は、領域推定関連処理部55により実行される領域推定関連処理(図10のステップS126の処理)の詳細を表している。最初にステップS161において、領域推定部161により領域推定処理が実行される。その詳細は、図15を参照して後述するが、この処理により、追尾点が属する対象と同一の対象(追尾点と同期した動きをする剛体)に属すると推定される画像上の領域の点が領域推定範囲の点として抽出される。
FIG. 14 shows details of the area estimation related process (the process of step S126 in FIG. 10) executed by the area estimation related processing
ステップS162において、乗り換え候補抽出部162により乗り換え候補抽出処理が実行される。その処理の詳細は、図20を参照して後述するが、領域推定部161により領域推定範囲として推定された範囲の点から乗り換え候補の点が抽出され、乗り換え候補保持部56に保持される。
In step S162, the transfer
ステップS163においてテンプレート作成部163によりテンプレート作成処理が実行される。その詳細は、図21を参照して後述するが、この処理によりテンプレートが作成される。
In step S163, the
次に、図15のフローチャートを参照して、図14のステップS161の領域推定処理の詳細について説明する。 Next, details of the region estimation processing in step S161 in FIG. 14 will be described with reference to the flowchart in FIG.
最初に、ステップS181において、領域推定部161は、追尾点と同一の対象に属すると推定される点の候補の点としてのサンプル点を決定する。
First, in step S181, the
このサンプル点は、例えば図16に示されるように、図中、白い四角形で示されるフレームの全画面における画素のうち、固定された基準点201を基準として、水平方向および垂直方向に、所定の画素数ずつ離れた位置の画素をサンプル点(図中、黒い四角形で表されている)とすることができる。図16の例においては、各フレームの左上の画素が基準点201とされ(図中基準点201は×印で示されている)、水平方向に5個、並びに垂直方向に5個ずつ離れた位置の画素がサンプル点とされる。すなわち、この例の場合、全画面中に分散した位置の画素がサンプル点とされる。また、この例の場合、基準点は、各フレームn,n+1において固定された同一の位置の点とされる。
For example, as shown in FIG. 16, the sample points are predetermined in the horizontal direction and the vertical direction with reference to the fixed
なお、基準点201は、各フレームn,n+1毎に異なる位置の点となるように、動的に変化させることもできる。
Note that the
また、図16の例においては、サンプル点の間隔が各フレームにおいて固定された値とされているが、フレーム毎にサンプル点の間隔を、例えば、フレームnにおいては5画素、フレームn+1においては8画素と可変とすることもできる。このときの間隔の基準としては、追尾点と同一の対象に属すると推定される領域の面積を用いることができる。具体的には、領域推定範囲の面積が狭くなれば間隔も短くなる。
In the example of FIG. 16, the interval between sample points is a fixed value in each frame, but the interval between 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.
以上のようにしてサンプル点が決定されると、次にステップS182において、領域推定部161は、領域推定範囲(図11のステップS143,S144の処理、または、後述する図17のステップS206,S208の処理で決定されている)内のサンプル点の動きを推定する処理を実行する。すなわち、領域推定部161は、動き推定部52より供給された動きベクトルに基づいて、領域推定範囲内のサンプル点に対応する次のフレームの対応する点を抽出する。
When the sample points are determined as described above, in step S182, the
ステップS183において、領域推定部161は、ステップS182の処理で推定したサンプル点のうち、確度が予め設定されている閾値より低い動きベクトルに基づく点を対象外とする処理を実行する。この処理に必要な動きベクトルの確度は、動き推定部52より供給される。これにより、領域推定範囲内のサンプル点のうち、確度が高い動きベクトルに基づいて推定された点だけが抽出される。
In step S183, the
ステップS184において、領域推定部161は、領域推定範囲内の動き推定結果での全画面動きを抽出する。全画面動きとは、同一の動きに対応する領域を考え、その面積が最大となる動きのことを意味する。具体的には、各サンプル点の動きに、そのサンプル点におけるサンプル点間隔に比例する重みを付けて動きのヒストグラムを生成し、この重み付け頻度が最大となる1つの動き(1つの動きベクトル)が全画面動きとして抽出される。なお、ヒストグラムを生成する場合、例えば、動きの代表値を画素精度で準備し、画素精度で1個となる値を持つ動きについてもヒストグラムへの加算を行うようにすることもできる。
In step S184, the
ステップS185において、領域推定部161は、全画面動きを持つ領域推定範囲内のサンプル点を領域推定の結果として抽出する。この場合における全画面動きを持つサンプル点としては、全画面動きと同一の動きを持つサンプル点はもちろんのこと、全画面動きとの動きの差が予め設定されている所定の閾値以下である場合には、そのサンプル点もここにおける全画面動きを持つサンプル点とすることも可能である。
In step S185, the
このようにして、ステップS143,S144,S206,S208の処理で決定された領域推定範囲内のサンプル点のうち、全画面動きを有するサンプル点が、追尾点と同一対象に属すると推定される点として最終的に抽出(生成)される。 In this way, among the sample points within the area estimation range determined by the processing of steps S143, S144, S206, and S208, the sample point having the full screen motion is estimated to belong to the same target as the tracking point. Is finally extracted (generated).
次に、ステップS186において、領域推定部161は、領域推定範囲の更新処理を実行する。その後、処理は、図10のステップS122に進む。
Next, in step S186, the
図17は、図15のステップS186の領域推定範囲の更新処理の詳細を表している。ステップS201において、領域推定部161は、領域の重心を算出する。この領域とは、図15のステップS185の処理で抽出されたサンプル点で構成される領域(追尾点と同一対象に属すると推定される点で構成される領域)を意味する。すなわち、この領域には1つの動きベクトル(全画面動き)が対応している。例えば、図18Aに示されるように、図中白い四角形で示されるサンプル点のうち、領域推定範囲221内のサンプル点の中から、図15のステップS185の処理で全画面動きを持つサンプル点として、図18Aにおいて黒い四角形で示されるサンプル点が抽出され、そのサンプル点で構成される領域が、領域222として抽出(推定)される。そして、領域222の重心224がさらに算出される。具体的には、各サンプル点にサンプル点間隔の重みを付けたサンプル点重心が領域の重心として求められる。この処理は、現フレームにおける領域の位置を求めるという意味を有する。
FIG. 17 shows details of the region estimation range update processing in step S186 of FIG. In step S201, the
次にステップS202において、領域推定部161は、領域の重心を全画面動きによりシフトする処理を実行する。この処理は、領域推定範囲221を領域の位置の動きに追従させ、次フレームにおける推定位置に移動させるという意味を有する。図18Bに示されるように、現フレームにおける追尾点223が、その動きベクトル238に基づいて次フレームにおいて追尾点233として出現する場合、全画面動きベクトル230が、追尾点の動きベクトル238にほぼ対応しているので、現フレームにおける重心224を動きベクトル230(全画面動き)に基づいてシフトすることで、追尾点233と同一のフレーム(次フレーム)上の点234が求められる。この点234を中心として領域推定範囲231を設定すれば、領域推定範囲221を領域222の位置の動きに追従させて、次のフレームにおける推定位置に移動させることになる。
Next, in step S202, the
ステップS203において、領域推定部161は、領域推定結果に基づき、次の領域推定範囲の大きさを決定する。具体的には、領域と推定された全てのサンプル点に関するサンプル点の間隔(図18Aにおける領域222の中の黒い四角形で示される点の間隔)の2乗和を領域222の面積と見なし、この面積よりも少し大きめの大きさとなるように、次フレームにおける領域推定範囲231の大きさが決定される。すなわち、領域推定範囲231の大きさは、領域222の中のサンプル点の数が多ければ広くなり、少なければ狭くなる。このようにすることで、領域222の拡大縮小に追従することができるばかりでなく、領域推定範囲221内の全画面領域が追尾対象の周辺領域となるのを防ぐことができる。
In step S203, the
図15のステップS184で抽出された全画面動きが、背景動きと一致する場合には、動きにより背景と追尾対象を区別することができない。そこで、背景動き推定部54は背景動き推定処理を常に行っており、ステップS204において、領域推定部161は、背景動き推定部54より供給される背景動きと、図15のステップS184の処理で抽出された全画面動きとが一致するか否かを判定する。全画面動きと背景動きが一致する場合には、ステップS205において、領域推定部161は、次の領域推定範囲の大きさを、今の領域推定範囲の大きさが最大となるように制限する。これにより、背景が追尾対象として誤認識され、領域推定範囲の大きさが拡大してしまうようなことが抑制される。
When the full screen motion extracted in step S184 in FIG. 15 matches the background motion, the background and the tracking target cannot be distinguished by the motion. Therefore, the background
ステップS204において、全画面動きと背景動きが一致しないと判定された場合には、ステップS205の処理は必要がないのでスキップされる。 If it is determined in step S204 that the full screen motion and the background motion do not match, the processing in step S205 is not necessary and is skipped.
次に、ステップS206において、領域推定部161は、シフト後の領域重心を中心として次の領域推定範囲の大きさを決定する。これにより、領域推定範囲が、その重心が既に求めたシフト後の領域重心と一致し、かつ、その大きさが領域の広さに比例するように決定される。
Next, in step S <b> 206, the
図18Bの例では、領域推定範囲231が、動きベクトル(全画面動き)230に基づくシフト後の重心234を中心として、領域222の面積に応じた広さに決定されている。
In the example of FIG. 18B, the
領域推定範囲231内での全画面動きを有する領域が追尾対象(例えば、図12の顔104)の領域であることを担保する(確実にする)必要がある。そこで、ステップS207において、領域推定部161は、追尾点が次の領域推定範囲に含まれるか否かを判定し、含まれていない場合には、ステップS208において、追尾点を含むように次の領域推定範囲をシフトする処理を実行する。追尾点が次の領域推定範囲に含まれている場合には、ステップS208の処理は必要がないのでスキップされる。
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.
図18Cの例においては、領域推定範囲231が追尾点233を含んでいないので、領域推定範囲241として示される位置(追尾点233をその左上に含む位置)に領域推定範囲241がシフトされる。
In the example of FIG. 18C, since the
図18A乃至図18Cは、ステップS208のシフト処理が必要な場合を示しているが、図19A乃至図19Cは、ステップS208のシフト処理が必要でない場合(ステップS207において追尾点が次の領域推定範囲に含まれると判定された場合)の例を表している。 18A to 18C show the case where the shift process of step S208 is necessary, but FIGS. 19A to 19C show the case where the shift process of step S208 is not necessary (the tracking point is the next region estimation range in step S207). Example).
図19A乃至図19Cに示されるように、領域推定範囲221内のすべてのサンプル点が領域の点である場合には、図17のステップS208のシフト処理が必要なくなることになる。
As shown in FIGS. 19A to 19C, when all the sample points in the
図18A乃至図18Cと図19A乃至図19Cは、領域推定範囲が矩形である例を示したが、領域推定範囲は円形とすることも可能である。 18A to 18C and FIGS. 19A to 19C show an example in which the area estimation range is rectangular, but the area estimation range may be circular.
以上のようにして、図17(図15のステップS186)の領域推定範囲の更新処理により、次フレームのための領域推定範囲の位置と大きさが追尾点を含むように決定される。 As described above, the area estimation range update process in FIG. 17 (step S186 in FIG. 15) determines the position and size of the area estimation range for the next frame to include the tracking point.
図17の領域推定範囲の更新処理においては、領域推定範囲を矩形(または円形)の固定形状としたが、可変形状とすることも可能である。 In the update process of the area estimation range in FIG. 17, the area estimation range is a rectangular (or circular) fixed shape, but may be a variable shape.
次に図14のステップS162における乗り換え候補抽出処理について、図20のフローチャートを参照して説明する。 Next, the transfer candidate extraction process in step S162 of FIG. 14 will be described with reference to the flowchart of FIG.
ステップS261において、乗り換え候補抽出部162は、全画面動きの領域と推定されたすべての点につき、それぞれに対応する推定動きでの点のシフト結果を乗り換え候補として保持する。すなわち、領域推定結果として得られた点をそのまま用いるのではなく、それらを次のフレームでの使用のために、それぞれの動き推定結果に基づきシフトされた結果を抽出する処理が行われ、その抽出された乗り換え候補が、乗り換え候保持部56に供給され、保持される。
In step S261, the transfer
この処理を、図12を参照して説明すると、次のようになる。すなわち、図12の例において、フレームn−1,nでは追尾点101が存在するが、フレームn+1においては、図中左側から飛んできたボール121により隠されてしまい、追尾点101が存在しない。そこでフレームn+1において、追尾点を追尾対象としての顔104上の他の点(例えば、左目103(実際には右目102にもっと近接した点))に乗り換える必要が生じる。そこで、乗り換えが実際に必要になる前のフレームで、乗り換え候補を予め用意しておくのである。
This process will be described with reference to FIG. That is, in the example of FIG. 12, the
具体的には、図12の例の場合、フレームnからフレームn+1への領域推定範囲133内での動き推定結果は、領域推定範囲133において乗り換えが必要なことから、正しく推定できない確率が高いことが予想される。すなわち、図12の例では、乗り換えが追尾点と、それと同一の対象物の一部が隠れることに起因して起きる。その結果、フレームnでの領域推定範囲133のうち、フレームn+1で対象が隠れる部分(図12において影を付した部分)134については、動きが正しく推定されず、動きの確度が低いことが推定されるか、または確度が低くないと推定され、かつ、動き推定結果としては意味のないものが得られることになる。
Specifically, in the case of the example in FIG. 12, 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.
図21は、図14のステップS163におけるテンプレート作成処理の詳細を表している。ステップS281においてテンプレート作成部163は、領域(全画面動きの領域)と推定されたすべての点につき、それぞれに対応する小領域を決定する。図22の例においては、領域の点321に対応して小領域322が決定されている。
FIG. 21 shows details of the template creation processing in step S163 of FIG. In step S <b> 281, the
ステップS282において、テンプレート作成部163は、ステップS281の処理で決定された小領域の和の領域をテンプレート範囲に設定する。図22の例においては、小領域322の和の領域がテンプレート範囲331とされている。
In step S282, the
次にステップS283において、テンプレート作成部163は、ステップS282において設定したテンプレート範囲の情報と画像情報からテンプレートを作成し、テンプレート保持部58に供給し、保持させる。具体的には、テンプレート範囲331内の画素データがテンプレートとされる。
In step S283, the
図23は、領域の点321に対応する小領域341が、図22における小領域322に較べてより大きな面積とされている。その結果、小領域341の和の領域のテンプレート範囲351も、図22のテンプレート範囲331に較べてより広くなっている。
In FIG. 23, 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 becomes the square of the interval between the sample points, 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.
図24は、テンプレートと領域推定範囲の位置関係を表している。テンプレート範囲403には、追尾点405が含まれている。テンプレート範囲403に外接する外接矩形401の図中左上の点がテンプレート基準点404とされている。テンプレート基準点404から追尾点405に向かうベクトル406、並びにテンプレート基準点404から領域推定範囲402の図中左上の基準点408に向かうベクトル407が、テンプレート範囲403の情報とされる。テンプレートは、テンプレート範囲403に含まれる画素で構成される。ベクトル406,407は、テンプレートと同じ画像が検出された際の通常処理への復帰に用いられる。
FIG. 24 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.
以上に説明した図5のステップS51の通常処理に続いて行われるステップS52の例外処理の詳細について、図25のフローチャートを参照して説明する。この処理は、上述したように、図10のステップS124において追尾点の動きを推定することが不可能と判定され、さらにステップS128において追尾点を乗り換える乗り換え候補が選択できなかったと判定された場合に実行されることになる。 Details of the exception processing in step S52 performed following the normal processing in step S51 of FIG. 5 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 S124 in FIG. 10 that it is impossible to estimate the movement of the tracking point, and in step S128, it is determined that the transfer candidate for changing the tracking point cannot be selected. Will be executed.
ステップS401において、制御部59は、例外処理の初期化処理を実行する。この処理の詳細は図26のフローチャートに示されている。
In step S401, the
ステップS421において、制御部59は、追尾点の追尾ができなくなった際(追尾点の動きを推定することが不可能かつ、追尾点を乗り換える乗り換え候補が選択できなかった際)にシーンチェンジが起きていたか否かを判定する。シーンチェンジ検出部53は、動き推定部52の推定結果に基づいてシーンチェンがあったか否かを常に監視しており、制御部59は、そのシーンチェンジ検出部53の検出結果に基づいて、ステップS421の判定を実行する。シーンチェンジ検出部53の具体的処理については、図38と図39を参照して後述する。
In step S421, the
シーンチェンジが起きている場合、追尾ができなくなった理由が、シーンチェンジが発生したことによるものと推定して、ステップS422において制御部59は、モードをシーンチェンジに設定する。これに対して、ステップS421においてシーンチェンジが発生していないと判定された場合には、制御部59は、ステップS423においてモードをその他のモードに設定する。
If a scene change has occurred, it is presumed that the reason why tracking has become impossible is due to the occurrence of a scene change, and in step S422, the
ステップS422またはステップS423の処理の後、ステップS424においてテンプレートマッチング部51は、時間的に最も古いテンプレートを選択する処理を実行する。具体的には、図27に示されるように、例えばフレームnからフレームn+1に移行するとき、例外処理が実行されるものとすると、フレームn−m+1からフレームnに関して生成され、テンプレート保持部58に保持されているm個のフレームのテンプレートの中から、時間的に最も古いテンプレートであるフレームn−m+1に関して生成されたテンプレートが選択される。
After the process of step S422 or step S423, the
このように例外処理への移行直前のテンプレート(図27の例の場合フレームnに関して生成されたテンプレート)を用いずに、時間的に少し前のテンプレートを選択するのは、追尾対象のオクルージョンなどで例外処理への移行が発生した場合には、移行の直前には追尾対象が既にかなり隠れており、その時点のテンプレートでは、追尾対象を充分に大きく捉えることができない可能性が高いからである。従って、このように時間的に若干前のフレームにおけるテンプレートを選択することで、確実な追尾が可能となる。 In this way, the template just before the transition to exception processing (the template generated for the frame n in the case of FIG. 27) is not used, but the template slightly before in time is selected for 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.
次に、ステップS425において、テンプレートマッチング部51は、テンプレート探索範囲を設定する処理を実行する。テンプレート探索範囲は、例えば、例外処理に移行する直前の追尾点の位置がテンプレート探索範囲の中心となるように設定される。
Next, in step S425, the
すなわち、図28に示されるように、フレームnにおいて被写体の顔104の右目102が追尾点101として指定されている場合において、図中左方向からボール121が飛んできて、フレームn+1において追尾点101を含む顔104が隠れ、フレームn+2において、再び追尾点101が現れる場合を想定する。この場合において、追尾点101(テンプレート範囲411に含まれる)を中心とする領域がテンプレート探索範囲412として設定される。
That is, as shown in FIG. 28, when the
ステップS426において、テンプレートマッチング部51は、例外処理への移行後の経過フレーム数およびシーンチェンジ数を0にリセットする。このフレーム数とシーンチェンジ数は、後述する図25のステップS405における継続判定処理(図30のステップS461,S463,S465,S467)において使用される。
In step S426, the
以上のようにして、例外処理の初期化処理が終了した後、図25のステップS402において、制御部59は次のフレームを待つ処理を実行する。ステップS403において、テンプレートマッチング部51は、テンプレート探索範囲内においてテンプレートマッチング処理を行う。ステップS404においてテンプレートマッチング部51は、通常処理への復帰が可能であるか否かを判定する。
After the exception process initialization process is completed as described above, in step S402 in FIG. 25, the
具体的には、テンプレートマッチング処理により、数フレーム前のテンプレート(図28のテンプレート範囲411内の画素)と、テンプレート探索範囲内のマッチング対象の画素の差分の絶対値和が演算される。より詳細には、テンプレート範囲411内の所定のブロックと、テンプレート探索範囲内の所定のブロックにおけるそれぞれの画素の差分の絶対値和が演算される。ブロックの位置がテンプレート範囲411内で順次移動され、各ブロックの差分の絶対値和が加算され、そのテンプレートの位置における値とされる。そして、テンプレートをテンプレート探索範囲内で順次移動させた場合における差分の絶対値和が最も小さくなる位置とその値が検索される。ステップS404において、最小の差分の絶対値和が、予め設定されている所定の閾値と比較される。差分の絶対値和が閾値以下である場合には、追尾点(テンプレートに含まれている)を含む画像が再び出現したことになるので、通常処理への復帰が可能であると判定され、処理は図5のステップS51の通常処理に戻る。
Specifically, the absolute value sum of the difference between the template several frames before (the pixel in the
そして上述したように、図11のステップS141において、例外処理からの復帰であると判定され、ステップS144において、差分絶対値和が最小となる位置をテンプレートのマッチした位置として、このマッチした位置とテンプレートに対応して保持してあったテンプレート位置と追尾点領域推定範囲の位置関係から、追尾点と領域推定範囲の設定が行われる。すなわち、図24を参照して上述したように、追尾点405を基準とするベクトル406,407に基づいて、領域推定範囲402が設定される。
Then, as described above, in step S141 in FIG. 11, it is determined that the return from the exception processing is performed, and in step S144, the position where the difference absolute value sum is minimum is set as the matched position of the template, 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. 24, the
ただし、図14のステップS161の領域推定処理において、領域推定範囲を用いない手法を用いる場合には、領域推定範囲の設定は行われない。 However, in the region estimation process in step S161 of FIG. 14, when a method that does not use the region estimation range is used, the region estimation range is not set.
図25のステップS404における通常処理への復帰が可能であるか否かの判定は、最小の差分絶対値和をテンプレートのアクティビティで除算して得られる値を閾値と比較することで行うようにしてもよい。この場合におけるアクティビティは、後述する図31のアクティビティ算出部602により、図32のステップS603において算出された値を用いることができる。
The determination as to whether or not it is possible to return to normal processing in step S404 in FIG. 25 is performed 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 S603 in FIG. 32 by the
あるいはまた、今回の最小の差分絶対値和を1フレーム前における最小の差分絶対値和で除算することで得られた値を所定の閾値と比較することで、通常処理への復帰が可能であるか否かを判定するようにしてもよい。この場合、アクティビティの計算が不要となる。すなわち、ステップS404では、テンプレートとテンプレート探索範囲の相関が演算され、相関値と閾値の比較に基づいて判定が行われる。 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 S404, 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.
ステップS404において、通常処理への復帰が可能ではないと判定された場合、ステップS405に進み、継続判定処理が実行される。継続判定処理の詳細は、図30を参照して後述するが、これにより、例外処理が継続可能であるか否かの判定が行われる。 If it is determined in step S404 that it is not possible to return to the normal process, the process proceeds to step S405, and the continuation determination process is executed. Details of the continuation determination process will be described later with reference to FIG. 30, and thereby, it is determined whether or not the exception process can be continued.
ステップS406において、制御部59は、例外処理(例外処理での追尾点の追尾)が継続可能であるか否かを継続判定処理の結果に基づいて(後述する図30のステップS466,S468で設定されたフラグに基づいて)判定する。例外処理が継続可能である場合には、処理はステップS402に戻り、それ以降の処理が繰り返し実行される。すなわち、追尾点が再び出現するまで待機する処理が繰り返し実行される。
In step S406, the
これに対して、ステップS406において、例外処理が継続可能ではないと判定された場合(後述する図30のステップS465で、追尾点が消失した後の経過フレーム数が閾値THfr以上と判定されるか、または、ステップS467でシーンチェンジ数が閾値THsc以上と判定された場合)、最早、追尾処理は不可能として、追尾処理は終了される。なお、追尾処理を終了するのではなく、保持しておいた追尾点を用いて再度通常処理に戻るようにすることも考えられる。この場合の例外処理は、図29に示されている。なお、図29のステップS441乃至S445の処理は、図25のステップS401乃至S405と同様の処理であるので、その説明を省略する。 On the other hand, if it is determined in step S406 that the exception processing cannot be continued (whether it is determined in step S465 in FIG. 30 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, when it is determined in step S467 that the number of scene changes is equal to or greater than the threshold value THsc), the tracking process is terminated as the tracking process is no longer possible. 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. Note that the processing in steps S441 through S445 in FIG. 29 is the same as the processing in steps S401 through S405 in FIG.
すなわち、ステップS445の継続判定処理により、例外処理が継続可能であるか否かの判定が行われると、その後、ステップS446において、制御部59は、例外処理(例外処理での追尾点の追尾)が継続可能であるか否かを継続判定処理の結果に基づいて(後述する図30のステップS466,S468で設定されたフラグに基づいて)判定する。例外処理が継続可能である場合には、処理はステップS442に戻り、それ以降の処理が繰り返し実行される。すなわち、追尾点が再び出現するまで待機する処理が繰り返し実行される。
That is, when it is determined by the continuation determination process in step S445 whether or not the exception process can be continued, thereafter, in step S446, the
これに対して、ステップS446において、例外処理が継続可能ではないと判定された場合(後述する図30のステップS465で、追尾点が消失した後の経過フレーム数が閾値THfr以上と判定されるか、または、ステップS467でシーンチェンジ数が閾値THsc以上と判定された場合)、最早、例外処理は不可能として、処理は図5のステップS1051の通常処理に戻る。 On the other hand, if it is determined in step S446 that the exception processing cannot be continued (whether it is determined in step S465 in FIG. 30 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 S467 that the number of scene changes is equal to or greater than the threshold value THsc), the exception processing is no longer possible and the processing returns to the normal processing in step S1051 in FIG.
そして、この場合、上述したように、図11のステップS141において、例外処理からの復帰であると判定され、ステップS144において、保持しておいた例外処理に移行する直前の追尾点の位置に基づき、追尾点と領域推定範囲が設定される。 In this case, as described above, it is determined in step S141 in FIG. 11 that the process has returned from the exception process, and in step S144, 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.
図30は、図25のステップS405(または図29のステップS445)における継続判定処理の詳細を表している。ステップS461において、制御部59は、変数としての経過フレーム数に1を加算する処理を実行する。経過フレーム数は、図25のステップS401の例外処理の初期化処理(図26のステップS426)において、予め0にリセットされている。
FIG. 30 shows details of the continuation determination process in step S405 of FIG. 25 (or step S445 of FIG. 29). In step S461, the
次にステップS462において、制御部59は、シーンチェンジがあるか否かを判定する。シーンチェンジがあるか否かは、シーンチェンジ検出部53が、常にその検出処理を実行しており、その検出結果に基づいて判定が可能である。シーンチェンジがある場合には、ステップS463に進み、制御部59は変数としてのシーンチェンジ数に1を加算する。このシーンチェンジ数も、図26のステップS426の初期化処理において0にリセットされている。通常処理から例外処理への移行時にシーンチェンジが発生していない場合には、ステップS463の処理はスキップされる。
Next, in step S462, the
次に、ステップS464において、制御部59は、現在設定されているモードがシーンチェンジであるか否かを判定する。このモードは、図26のステップS422,S423において設定されたものである。現在設定されているモードがシーンチェンジである場合には、ステップS467に進み、制御部59は、シーンチェンジ数が予め設定されている閾値THscより小さいか否かを判定する。シーンチェンジ数が閾値THscより小さい場合には、ステップS466に進み、制御部59は継続可のフラグを設定し、シーンチェンジ数が閾値THsc以上である場合には、ステップS468に進み、継続不可のフラグを設定する。
Next, in step S464, the
一方、ステップS464において、モードがシーンチェンジではないと判定された場合(モードがその他であると判定された場合)、ステップS465に進み、制御部59は、経過フレーム数が閾値THfrより小さいか否かを判定する。この経過フレーム数も、図26の例外処理の初期化処理のステップS426において、予め0にリセットされている。経過フレーム数が閾値THfrより小さいと判定された場合には、ステップS466において、継続可のフラグが設定され、経過フレーム数が閾値THfr以上であると判定された場合には、ステップS468において、継続不可のフラグが設定される。
On the other hand, when it is determined in step S464 that the mode is not a scene change (when it is determined that the mode is other), the process proceeds to step S465, 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.
次に、図31を参照して、図3の動き推定部52の構成例について説明する。この実施の形態においては、入力画像が、評価値算出部601、アクティビティ算出部602、および動きベクトル検出部606に供給されている。評価値算出部601は、動きベクトルにより対応付けられる両対象の一致度に関する評価値を算出し、正規化処理部604に供給する。アクティビティ算出部602は、入力画像のアクティビティを算出し、閾値判定部603と正規化処理部604に供給する。動きベクトル検出部606は、入力画像から動きベクトルを検出し、評価値算出部601と統合処理部605に供給する。
Next, a configuration example of the
正規化処理部604は、評価値算出部601より供給された評価値を、アクティビティ算出部602より供給されたアクティビティに基づいて正規化し、得られた値を統合処理部605に供給する。閾値判定部603は、アクティビティ算出部602より供給されたアクティビティを所定の閾値と比較し、その判定結果を統合処理部605に供給する。統合処理部605は、正規化処理部604から供給された正規化情報と、閾値判定部603より供給された判定結果に基づいて、動きベクトルの確度を演算し、得られた確度を動きベクトル検出部606より供給された動きベクトルとともに出力する。
The
次に、図32のフローチャートを参照して、動き推定部52の動き推定処理について説明する。動きベクトルは、点に対するものとして求められているが、その確度は、動きベクトルにより対応付けられる2つの点の近傍の、例えば点を中心とする、小ブロックの画像データを用いて計算される。ステップS601において、動きベクトル検出部606は、入力画像から動きベクトルを検出する。この検出には、例えばブロックマッチング方式や勾配法が用いられる。検出された動きベクトルは、評価値算出部601と統合処理部605に供給される。
Next, the motion estimation process of the
ステップS602において、評価値算出部601は評価値を算出する。具体的には、例えば、動きベクトルで対応付けられる2つの点を中心とする2つのブロックの画素値の差分絶対値和が算出される。すなわち、ステップS601で動きベクトル検出部606により検出された動きベクトルV(vx,vy)と、それに基づく時間的に前のフレームの画像Fi上の点P(Xp,Yp)、並びに時間的に後のフレームの画像Fj上の点Q(Xq,Yq)の関係は次式で表される。
In step S602, the evaluation
評価値算出部601は点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.
評価値算出部601は、生成した評価値を正規化処理部604に供給する。
The evaluation
ステップS603において、アクティビティ算出部602は、入力画像からアクティビティを算出する。アクティビティは、画像の複雑さを表す特徴量であり、図33に示されるように、各画素毎に注目画素Y(x,y)と、それに隣接する8画素Y(x+i,y+j)との差分絶対値和の平均値が、注目画素位置のアクティビティActivity(x,y)として次式に基づいて演算される。
In step S603, the
図33の例の場合、3×3画素のうち、中央に位置する注目画素Y(x,y)の値は110であり、それに隣接する8個の画素の値は、それぞれ80,70,75,100,100,100,80,80であるから、アクティビティActivity(x,y)は次式で表される。 In the case of the example of FIG. 33, the value of the pixel of interest Y (x, y) located at the center among 3 × 3 pixels 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.
閾値判定部603は、ステップS604において、アクティビティ算出部602により算出されたブロックアクティビティを予め設定されている所定の閾値と比較する。そして、入力されたブロックアクティビティが閾値より大きいか否かを表すフラグを統合処理部605に出力する。
In step S604, the
具体的には、実験の結果、ブロックアクティビティと評価値は、動きベクトルをパラメータとして、図34に示される関係を有する。図34において、横軸はブロックアクティビティBlockactivity(i,j)を表し、縦軸は評価値Evalを表している。動きが正しく検出されている場合(正しい動きベクトルが与えられている場合)、そのブロックアクティビティと評価値の値は、曲線621より図中下側の領域R1に分布する。これに対して誤った動き(不正解の動きベクトル)が与えられた場合、そのブロックアクティビティと評価値の値は、曲線622より、図中左側の領域R2に分布する(曲線622より上側の領域R2以外の領域と曲線621より下側の領域R1以外の領域には殆ど分布がない)。曲線621と曲線622は、点Pにおいて交差する。この点Pにおけるブロックアクティビティの値が閾値THaとされる。閾値THaは、ブロックアクティビティの値がそれより小さい場合には、対応する動きベクトルが正しくない可能性があることを意味する(この点については後に詳述する)。閾値判定部603は、アクティビティ算出部602より入力されたブロックアクティビティの値が、この閾値THaより大きいか否かを表すフラグを統合処理ブロック605に出力する。
Specifically, as a result of the experiment, the block activity and the evaluation value have the relationship shown in FIG. 34 using the motion vector as a parameter. In FIG. 34, 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 value of the evaluation value are distributed in the region R1 below the
ステップS605において、正規化処理部604は、正規化処理を実行する。具体的には、正規化処理部604は、次式に従って動きベクトル確度VCを演算する。
In step S605, the
但し、動きベクトル確度VCの値が0未満となる場合にはその値を0に置き換える。動きベクトル確度VCのうち、評価値をブロックアクティビティで割り算して得られた値は、その値によって規定される図34のグラフ上の位置が、原点Oと点Pを結ぶ傾きが1の直線623より、図中下側の領域内であるのか、図中上側の領域内であるのかを表す。すなわち、直線623の傾きは1であり、評価値をブロックアクティビティで割り算して得られた値が1より大きければ、その値に対応する点は、直線623の上側の領域に分布する点であることを意味する。そしてこの値を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より小さければ、その値に対応する点は、直線623の図中下側の領域に分布することを意味する。そして、そのときの動きベクトル確度VCは、その値が大きい程(0に近い程)、対応する点が領域R1に分布することを意味する。正規化処理部604は、このようにして演算して得られた動きベクトル確度VCを統合処理部605に出力する。
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
ステップS606において、統合処理部605は、統合処理を実行する。この統合処理の詳細は、図35のフローチャートに示されている。
In step S606, the
統合処理部605は、ステップS631において、ブロックアクティビティが閾値THa以下か否かを判定する。この判定は、閾値判定部603より供給されたフラグに基づいて行われる。ブロックアクティビティが閾値THa以下である場合には、ステップS632において統合処理部605は、正規化処理部604が算出した動きベクトル確度VCの値を0に設定する。ステップS631において、アクティビティの値が閾値THaより大きいと判定された場合には、ステップS632の処理はスキップされ、正規化処理部604で生成された動きベクトル確度VCの値が、そのまま動きベクトルとともに出力される。
In step S631, the
これは、正規化処理部604において演算された動きベクトルの確度VCの値が正であったとしても、ブロックアクティビティの値が閾値THaより小さい場合には、正しい動きベクトルが得られていない可能性があるからである。すなわち、図34に示されるように、原点Oと点Pの間においては、曲線622が、曲線621より図中下側に(直線623より下側に)突出することになる。ブロックアクティビティの値が閾値Thaより小さい区間であって、曲線621と曲線622において囲まれる領域R3においては、評価値をブロックアクティビティで割り算して得られる値は、領域R1とR2の両方に分布し、正しい動きベクトルが得られていない可能性が高い。
This is because there is a possibility that a correct motion vector is not obtained if the block activity value is smaller than the threshold value THa even if the value of the motion vector accuracy VC calculated by the
そこで、このような分布状態である場合には、動きベクトルの確度は低いものとして処理するようにする。このため、ステップS632において、動きベクトル確度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. For this reason, in step S632, the motion vector accuracy VC is set to 0 if 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).
図36は,図3の背景動き推定部54の構成例を表している。この構成例においては、背景動き推定部54は、頻度分布算出部651と背景動き決定部652により構成されている。
FIG. 36 illustrates a configuration example of the background
頻度分布算出部651は、動きベクトルの頻度分布を算出する。ただし、この頻度には、動き推定部52より供給される動きベクトル確度VCを用いることで、確からしい動きに重みが与えられるように、重み付けが行われる。背景動き決定部652は、頻度分布算出部651により算出された頻度分布に基づいて、頻度が最大となる動きを背景動きとして決定する処理を行い、領域推定関連処理部55へ出力する。
The frequency
図37を参照して、背景動き推定部54の背景動き推定処理について説明する。
The background motion estimation process of the background
ステップS651において、頻度分布算出部651は、動き頻度分布を算出する。具体的には、頻度分布算出部651は、背景動きの候補としての動きベクトルのx座標とy座標がそれぞれ基準点から±16画素分の範囲で表されるとすると、1089個(=16×2+1)×(16×2+1))の箱、すなわち動きベクトルがとり得る値に対応する座標分の箱を用意し、動きベクトルが発生した場合、その動きベクトルに対応する座標に1を加算する。このようにすることで、動きベクトルの頻度分布を算出することができる。
In step S651, the frequency
ただし、1個の動きベクトルが発生した場合、1を加算していくと、確度が低い動きベクトルの発生頻度が多い場合、その確実性が低い動きベクトルが背景動きとして決定されてしまう恐れがある。そこで、頻度分布算出部651は、動きベクトルが発生した場合、その動きベクトルに対応する箱(座標)に、値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
次に、ステップS652において、頻度分布算出部651は、動き頻度分布を算出する処理を全ブロックについて終了したか否かを判定する。まだ処理していないブロックが存在する場合には、ステップS651に戻り、次のブロックについてステップS651の処理が実行される。
Next, in step S652, the frequency
以上のようにして、全画面に対して動き頻度分布算出処理が行われ、ステップS652において、全ブロックの処理が終了したと判定された場合、ステップS653に進み、背景動き決定部652は、頻度分布の最大値を検索する処理を実行する。すなわち、背景動き決定部652は、頻度分布算出部651により算出された頻度の中から最大の頻度のものを選択し、その頻度に対応する動きベクトルを背景動きの動きベクトルとして決定する。この背景動きの動きベクトルは、領域推定関連処理部55に供給され、例えば、図17のステップS204の全画面動きと背景動きが一致するか否かの判定処理に用いられる。
As described above, the motion frequency distribution calculation process is performed on the entire screen, and when it is determined in step S652 that the processing of all blocks has been completed, the process proceeds to step S653, and the background motion determination unit 652 A process for searching for the maximum value of the distribution is executed. That is, the background
図38は、図3のシーンチェンジ検出部53の詳細な構成例を表している。この例においては、動きベクトル確度平均算出部671と閾値判定部672によりシーンチェンジ検出部53が構成されている。
FIG. 38 shows a detailed configuration example of the scene
動きベクトル確度平均算出部671は、動き推定部52より供給された動きベクトル確度VCの全画面の平均値を算出し、閾値判定部672に出力する。閾値判定部672は、動きベクトル確度平均算出部671より供給された平均値を、予め定められている閾値と比較し、その比較結果に基づいて、シーンチェンジであるか否かを判定し、判定結果を制御部59に出力する。
The motion vector accuracy
次に、図39のフローチャートを参照して、シーンチェンジ検出部53の動作について説明する。ステップS681において、動きベクトル確度平均算出部671は、ベクトル確度の総和を算出する。具体的には、動きベクトル確度平均算出部671は、動き推定部52の統合処理部605より出力された各ブロック毎に算出された動きベクトル確度VCの値を加算する処理を実行する。
Next, the operation of the scene
ステップS682において、動きベクトル確度平均算出部671は、ベクトル確度VCの総和を算出する処理が全ブロックについて終了したか否かを判定し、まだ終了していない場合には、ステップS681の処理を繰り返す。この処理を繰り返すことで、1画面分の各ブロックの動きベクトル確度VCの総和が算出される。ステップS682において1画面全部についての動きベクトル確度VCの総和の算出処理が終了したと判定された場合、ステップS683に進み、動きベクトル確度平均算出部671は、ベクトル確度VCの平均値を算出する処理を実行する。具体的には、ステップS681の処理で算出された1画面分のベクトル確度VCの総和を、足し込まれたブロック数で除算して得られた値が平均値として算出される。
In step S682, the motion vector accuracy
ステップS684において、閾値判定部672は、ステップS683の処理で動きベクトル確度平均算出部671により算出された動きベクトル確度VCの平均値を、予め設定されている閾値と比較し、閾値より小さいか否かを判定する。一般的に、動画中の時刻が異なる2フレーム間でシーンチェンジが発生すると、対応する画像が存在しないため、動きベクトルを算出しても、その動きベクトルは確からしくないことになる。
In step S684, the threshold
そこで、ベクトル確度VCの平均値が閾値より小さい場合には、ステップS685において、閾値判定部672はシーンチェンジフラグをオンし、閾値より小さくない場合(閾値以上である場合)、ステップS586において、シーンチェンジフラグをオフにする。シーンチェンジフラグのオンは、シーンチェンジがあったことを表し、そのオフは、シーンチェンジが無いことを表す。
Therefore, if the average value of the vector accuracy VC is smaller than the threshold value, the threshold
このシーンチェンジフラグは、制御部59へ供給され、図26のステップS421におけるシーンチェンジの有無の判定に利用される。
The scene change flag is supplied to the
次に、図40を参照して、図3の提示位置算出部42の詳細な構成例と、その動作について説明する。図40は提示位置算出部42の機能的構成例を示すブロック図である。この例では、提示位置算出部42は、乗り換え量算出部701、追尾点記憶部702、反映乗り換え量算出部703、中心点設定部705、および中心点記憶部706により構成される。
Next, a detailed configuration example and operation of the presentation
提示位置算出部42の乗り換え量算出部701および中心点設定部705には、追尾処理部41からの追尾点に関する情報(追尾点情報)およびその追尾点に対応する動きベクトル(すなわち、動き量)が入力される。追尾点に関する情報は、例えば、追尾点の位置情報やその乗り換えの履歴情報などで構成される。
In the transfer
乗り換え量算出部701は、入力に基づいて、追尾処理部41の追尾点決定部57により決定された追尾点が、乗り換え点に乗り換えられたものであるか否かを判定し、判定結果に応じて、追尾点決定部57により現フレームにおいて決定された追尾点(以下、現在追尾点とも称する)の位置情報、追尾点記憶部702に記憶される前フレームにおいて求められた追尾点(以下、過去追尾点とも称する)の位置情報、並びに、現在追尾点に対応する動きベクトルに基づき、乗り換えベクトルを算出する。
Based on the input, the transfer
すなわち、乗り換えベクトルとは、過去追尾点および乗り換え点に基づいて求められる、過去追尾点から乗り換え点への動き量である。なお、図40の例においては、乗り換えベクトルを算出する例が示されているが、追尾処理部41から、乗り換えベクトルそのものを取得し、その乗り換えベクトルを用いることもできる。
That is, the transfer vector is the amount of movement from the past tracking point to the transfer point, which is obtained based on the past tracking point and the transfer point. In the example of FIG. 40, an example of calculating a transfer vector is shown. However, the transfer vector itself can be acquired from the
追尾点記憶部702には、乗り換え量算出部701に入力された現在追尾点の位置情報が、次のフレームの演算のため、過去追尾点の位置情報として記憶される。
In the tracking
反映乗り換え量算出部703は、乗り換え量算出部701により算出された乗り換えベクトル、乗り換え残り量記憶部704に記憶されている前フレームにおける乗り換え残りベクトル、および制御部29などにより予め設定されている1フレームの演算において反映可能な動き量、すなわち、最大反映乗り換えベクトルであるステップ量に基づいて、乗り換えベクトルのうち、現在のフレームに反映させる反映乗り換えベクトルと、次のフレームに残す乗り換え残りベクトルを算出する。
The reflected transfer
反映乗り換え量算出部703により算出された乗り換え残りベクトルは、次のフレームの演算のために、乗り換え残り量記憶部704に記憶される。
The remaining transfer vector calculated by the reflected transfer
乗り換え残り量記憶部704には、反映乗り換え量算出部703により前フレームにおいて算出された乗り換え残りベクトルが記憶されている。
The remaining transfer
中心点設定部705は、反映乗り換え量算出部703により算出された反映乗り換えベクトルに基づいて、オブジェクトの追尾(すなわち、追尾結果)を提示する際の基準となる提示位置、すなわち、ズーム画像を作成する時のズームの中心となる提示中心点を算出する。
The center
具体的には、中心点設定部705は、反映乗り換え量算出部703により算出された反映乗り換えベクトルに基づいて、追尾処理部41の追尾点決定部57により決定された現在追尾点、または、中心点記憶部706に記憶されている前のフレームにおける提示中心点(以下、過去中心点と称する)、反映乗り換え量算出部703により算出された反映乗り換えベクトル、および、追尾処理部41の動き推定部52からの動きベクトルを用いて、現在のフレームにおける提示中心点(以下、現在中心点と称する)を算出する。中心点設定部705により算出された現在中心点の位置情報は、提示位置情報として、ズーム画像作成部24に出力される。
Specifically, the center
中心点記憶部706には、算出された現在中心点の位置情報が、次のフレームの演算のため、過去中心点の位置情報として記憶される。
The center
次に、図41および図42のフローチャートを参照して、図4のステップS22の提示位置算出処理の詳細について説明する。 Next, details of the presentation position calculation process in step S22 of FIG. 4 will be described with reference to the flowcharts of FIGS.
ステップS701において、制御部29は、乗り換え残りベクトルf,過去中心点Rn-1,過去追尾点Pn-1に初期値を設定する。すなわち、乗り換え残り量記憶部704の乗り換え残りベクトルfには、0が設定され、中心点記憶部706の過去中心点Rn-1および追尾点記憶部702の過去追尾点Pn-1には、初期追尾設定点が設定される。
In step S701, the
図10のステップS125において追尾点決定部57より追尾点が決定されると、決定された追尾点に関する情報が入力される。すなわち、乗り換え量算出部701および中心点設定部705には、追尾点に関する情報として、上述したように、追尾点の位置情報、並びに、決定された追尾点が、図10のステップS129で乗り換えられたものであるか否かを示す追尾点の乗り換え履歴情報などが入力される。
When the tracking point is determined by the tracking
ステップS702において、乗り換え量算出部701は、入力された追尾点に関する情報に基づいて、追尾点決定部57により決定された現在追尾点Pnが、乗り換えられたものであるか否かを判定する。ステップS702において、現在追尾点Pnが乗り換えられたものであると判定された場合、処理は、ステップS703に進み、乗り換え量算出部701は、現在追尾点Pn、追尾点記憶部702に記憶されている過去追尾点Pn-1、および、動き推定部52からの動きベクトルmを用いて、乗り換えベクトルdを算出する。
In step S702, the transfer
図43に示されるように、現在追尾点Pnが乗り換えられたものである場合、現在追尾点Pnは、過去追尾点Pn-1が、図10のステップS124において推定可能ではないとされ、ステップS129において乗り換え点Qに乗り換えられて、ステップS123に戻って、乗り換え点Qについて動きベクトルmが推定され、ステップS125において、推定された動きベクトルmの分だけシフトされたものであり、乗り換えベクトルdは、現在追尾点Pnから、過去追尾点Pn-1を引き、さらに、動きベクトルmを引いて求められる。 As shown in FIG. 43, when the current tracking point Pn has been changed, the current tracking point Pn is determined not to be able to be estimated in step S124 in FIG. At step S123, the motion vector m is estimated for the transfer point Q. In step S125, the motion vector m is shifted by the estimated motion vector m. This is obtained by subtracting the past tracking point Pn-1 from the current tracking point Pn and further subtracting the motion vector m.
すなわち、現在追尾点Pnは、乗り換え点Qが動きベクトルmの分シフトされたものであることから、乗り換えベクトルdは、過去追尾点Pn-1と乗り換え点Qに基づいて求められる、過去追尾点Pn-1の位置から、乗り換え点Qの位置への動き量ともいえる。 That is, since the current tracking point Pn is the transfer point Q shifted by the motion vector m, the transfer vector d is obtained based on the past tracking point Pn-1 and the transfer point Q. It can also be said that the amount of movement from the position of Pn-1 to the position of the transfer point Q.
このように、ステップS703においては、乗り換えベクトルd(=現在追尾点Pn−過去追尾点Pn-1−動きベクトル)が算出される。 Thus, in step S703, the transfer vector d (= current tracking point Pn−past tracking point Pn−1−motion vector) is calculated.
一方、現在追尾点Pnが乗り換えられたものではない、すなわち、図10のステップS122乃至S125の処理が連続して行われた結果求められた追尾点である場合、処理は、ステップS704に進み、乗り換え量算出部701は、0(0ベクトル)を乗り換えベクトルdとする。
On the other hand, if the current tracking point Pn has not been changed, that is, if it is a tracking point obtained as a result of the processing in steps S122 to S125 of FIG. 10 being continuously performed, the process proceeds to step S704. The transfer
ステップS703またはS704で求められた乗り換えベクトルdは、反映乗り換え量算出部703に入力される。
The transfer vector d obtained in step S703 or S704 is input to the reflected transfer
ステップS705において、反映乗り換え量算出部703は、乗り換え量算出部701からの乗り換えベクトルdと、乗り換え残り量記憶部704から読み出した前フレームにおける乗り換え残りベクトルfn-1の和の絶対値が、ステップ量以上であるか否かを判定する。ステップS705において、乗り換えベクトルdと乗り換え残りベクトルfn-1の和の絶対値がステップ量以上であると判定された場合、処理は、ステップS706に進み、さらに、反映乗り換え量算出部703は、乗り換えベクトルdと乗り換え残りベクトルfn-1の和が0よりも大きいか否かを判定する。
In step S705, the reflected transfer
ステップS706において、乗り換えベクトルdと乗り換え残りベクトルfn-1の和が0よりも大きい(すなわち、マイナスの動きではない)と判定された場合、処理は、ステップS707に進み、反映乗り換え量算出部703は、今回反映させる最大反映乗り換えベクトルであるステップ量を用いて、反映乗り換えベクトルeを求め、乗り換えベクトルdと前フレームの乗り換え残りベクトルfn-1の和から、ステップ量を引いた差分を用いて、乗り換え残りベクトルfnを求める。
If it is determined in step S706 that the sum of the transfer vector d and the remaining transfer vector fn-1 is larger than 0 (that is, not a negative movement), the process proceeds to step S707, and the reflected transfer
すなわち、ステップS707においては、反映乗り換えベクトルe(=ステップ量)および乗り換え残りベクトルfn(=乗り換えベクトルd+乗り換え残りベクトルfn-1−ステップ量)が算出される。 That is, in step S707, the reflected transfer vector e (= step amount) and the remaining transfer vector fn (= transfer vector d + transfer remaining vector fn-1−step amount) are calculated.
ステップS706において、乗り換えベクトルdと乗り換え残りベクトルfn-1の和が0以下である(すなわち、動きがマイナスである)と判定された場合、処理は、ステップS708に進み、反映乗り換え量算出部703は、−ステップ量を用いて、反映乗り換えベクトルeを求め、乗り換えベクトルdと前フレームの乗り換え残りベクトルfn-1の和に、ステップ量を加算したものを用いて、乗り換え残りベクトルfnを求める。
If it is determined in step S706 that the sum of the transfer vector d and the remaining transfer vector fn-1 is 0 or less (that is, the motion is negative), the process proceeds to step S708, and the reflected transfer
すなわち、ステップS708においては、反映乗り換えベクトルe(=−ステップ量)および乗り換え残りベクトルfn(=乗り換えベクトルd+乗り換え残りベクトルfn-1+ステップ量)が算出される。 That is, in step S708, the reflected transfer vector e (= −step amount) and the remaining transfer vector fn (= transfer vector d + transfer remaining vector fn−1 + step amount) are calculated.
一方、ステップS705において、乗り換えベクトルdと乗り換え残りベクトルfn-1の和の絶対値がステップ量より小さいと判定された場合、処理は、ステップS709に進み、乗り換えベクトルdと前フレームの乗り換え残りベクトルfn-1の和を用いて、反映乗り換えベクトルeを求め、0(0ベクトル)を、乗り換え残りベクトルfnとする。 On the other hand, if it is determined in step S705 that the absolute value of the sum of the transfer vector d and the remaining transfer vector fn-1 is smaller than the step amount, the process proceeds to step S709, where the transfer vector d and the remaining transfer vector of the previous frame are transferred. The reflected transfer vector e is obtained using the sum of fn−1, and 0 (0 vector) is set as the remaining transfer vector fn.
すなわち、ステップS709においては、反映乗り換えベクトルe(=乗り換えベクトルd+乗り換え残りベクトルfn-1)および乗り換え残りベクトルfn(=0)が算出される。 That is, in step S709, the reflected transfer vector e (= transfer vector d + transfer remaining vector fn−1) and transfer remaining vector fn (= 0) are calculated.
ステップS707,708,または709で求められた反映乗り換えベクトルeは、中心点設定部705に入力される。なお、このとき、乗り換え残りベクトルfnは、前フレームの乗り換え残りベクトルfn-1として、乗り換え残り量記憶部704に記憶される。
The reflected transfer vector e obtained in step S707, 708, or 709 is input to the center
図42のステップS710において、中心点設定部705は、反映乗り換え量算出部703により求められた反映乗り換えベクトルeが0であるか否かを判定し、反映乗り換えベクトルeが0であると判定した場合、ステップS711において、現在追尾点Pnを、現在中心点Rnとする。
In step S710 of FIG. 42, the center
すなわち、現在追尾点Pnは、乗り換えられたものでないので、乗り換えベクトルdもなく、さらに、前フレーム以前からの乗り換え残りベクトルfn-1も残っていないので、追尾点決定部57により求められた現在追尾点Pnは、そのまま、現在中心点Rnとして設定される。
That is, since the current tracking point Pn has not been changed, there is no transfer vector d, and there is also no remaining transfer vector fn-1 from before the previous frame, so the current obtained by the tracking
一方、反映乗り換えベクトルeが0ではないと判定された場合、ステップS712において、中心点設定部705は、現在中心点Rnを、中心点記憶部706から読み出した過去中心点Rn-1に、反映乗り換えベクトルeを反映させて、動き推定部52からの動きベクトルmに基づいて求める。
On the other hand, when it is determined that the reflected transfer vector e is not 0, in step S712, the center
すなわち、ステップS712においては、現在中心点Rn(=過去中心点Rn-1+反映乗り換えベクトルe+動きベクトルm)が設定される。 That is, in step S712, the current center point Rn (= past center point Rn-1 + reflecting transfer vector e + motion vector m) is set.
図43の例においては、初回、または、前フレームのステップS711において現在中心点Rn=現在追尾点Pnと設定された場合が示されている。この場合には、過去追尾点Pn-1=過去中心点Rn-1であるので、反映乗り換えベクトルeが0ではない場合、図43に示されるように、過去追尾点Pn-1に、ステップ量、または、乗り換えベクトルdと前フレームの乗り換え残りベクトルfn-1の和から求められた反映乗り換えベクトルeと動きベクトルmが加算された点が、現在中心点Rnとして設定される。 In the example of FIG. 43, a case where the current center point Rn = current tracking point Pn is set for the first time or in step S711 of the previous frame is shown. In this case, since the past tracking point Pn−1 = the past center point Rn−1, when the reflected transfer vector e is not 0, as shown in FIG. 43, the step amount is set to the past tracking point Pn−1. Alternatively, a point obtained by adding the reflected transfer vector e and the motion vector m obtained from the sum of the transfer vector d and the remaining transfer vector fn−1 of the previous frame is set as the current center point Rn.
ただし、前フレームのステップS712において現在中心点Rn(=過去中心点Rn-1+反映乗り換えベクトルeと動きベクトルm)が設定された場合、現在のフレームのステップS712においても、過去追尾点Pn-1ではなく、過去中心点Rn-1に、反映乗り換えベクトルeと動きベクトルmが加算された点が、現在中心点Rnとして設定される。 However, if the current center point Rn (= past center point Rn-1 + reflecting transfer vector e and motion vector m) is set in step S712 of the previous frame, the past tracking point Pn-1 is also set in step S712 of the current frame. Instead, a point obtained by adding the reflected transfer vector e and the motion vector m to the past center point Rn−1 is set as the current center point Rn.
ステップ711またはステップS712において、設定された現在中心点Rnの位置情報は、提示位置情報として、ズーム画像作成部24に出力される。
In step 711 or step S712, the set position information of the current center point Rn is output to the zoom
ステップS713において、中心点設定部705は、現在中心点Rnを、過去中心点Rn-1として、中心点記憶部706に記憶させ、乗り換え量算出部701は、現在追尾点Pnを、過去追尾点Pn-1として追尾点記憶部702に記憶させる。ステップS713の後、処理は、ステップS702に戻り、ユーザにより追尾終了が指示されるまで、次のフレームについての処理が繰り返される。
In step S713, the center
なお、上述したように、ステップ量を予め設定される今回反映させる最大反映乗り換えベクトルとして説明したが、ステップ量は、現時点で後どのくらいのステップで追尾点とズーム点が一致するかの度合いに応じて可変に算出することもできる。 In addition, as described above, the step amount is described as the preset maximum reflection transfer vector that reflects this time, but the step amount depends on how many steps later the tracking point and the zoom point coincide with each other. And can be variably calculated.
また、ステップ量を、図11のステップS143,S144の処理、または、後述する図17のステップS206,S208の処理で決定されている領域推定範囲の大きさと連動した大きさにすることもできる。 Further, the step amount can be set to a size linked with the size of the area estimation range determined in the processing in steps S143 and S144 in FIG. 11 or the processing in steps S206 and S208 in FIG.
さらに、上記説明においては、動き量としてのベクトルを用いてズーム点を算出するように説明したが、絶対距離を用いてズーム点を算出することもできる。 Further, in the above description, the zoom point is calculated using a vector as the amount of motion, but the zoom point can also be calculated using an absolute distance.
以上のように、オブジェクト追尾部23に、追尾点とは別に、追尾結果を提示する際に基準となる(すなわち、ズーム画像が提示される場合には、その中心となる)提示位置を設け、追尾点の乗り換えの際には、追尾点が乗り換えた動き量すべてを、現在のフレームの提示位置に反映させるのではなく、追尾点が乗り換えた動き量のうちの所定量ずつ段階的に反映させるようにしたので、追尾点が乗り換えられたことにより、表示される画像に生じる違和感を軽減することができる。
As described above, the
図44は、従来の方法と本発明によるズーム画像における提示位置の座標軌跡が示されている。横軸は時間方向のフレーム番号0乃至20を表し、縦軸は0乃至450の座標値を表している。
FIG. 44 shows a coordinate locus of a presentation position in a conventional method and a zoom image according to the present invention. The horizontal axis represents
図44の例においては、点線は、上から順に、追尾点を提示位置とした従来の方法による提示位置のx座標およびy座標の軌跡をそれぞれ表し、実線は、上から順に本発明による提示位置のx座標およびy座標の軌跡をそれぞれ表している。 In the example of FIG. 44, the dotted line represents the locus of the x and y coordinates of the presentation position according to the conventional method with the tracking point as the presentation position in order from the top, and the solid line represents the presentation position according to the present invention in order from the top The trajectories of the x-coordinate and y-coordinate are respectively shown.
x座標およびy座標のどちらの軌跡についても、従来の方法の場合、点線に示されるように、座標値が急激に変化するフレームがあるのに対して、本発明の方法の場合、実線に示されるように、急激に変化することのない、なだらかな軌跡となっている。 For both the x-coordinate and y-coordinate trajectories, as shown by the dotted line in the conventional method, there is a frame in which the coordinate value changes abruptly, whereas in the method of the present invention, the solid line shows As you can see, it has a gentle trajectory that does not change rapidly.
すなわち、ステップS21の追尾点算出処理において求められた追尾点を、そのまま、画像を生成する際の基準となる提示位置(ズーム画像を拡大する際の中心となる提示位置)に用いる従来の方法では、追尾点の乗り換えの際には、提示位置が、過去の追尾点から現在の追尾点にそのまま乗り換えられてしまうため、図44の点線に示されるように、座標値が急激に変化してしまい、表示する際、特に拡大表示する際に、違和感を生じてしまうことがあった。 That is, in the conventional method that uses the tracking point obtained in the tracking point calculation process in step S21 as it is as a presentation position that serves as a reference when generating an image (presentation position that becomes the center when a zoomed image is enlarged). When the tracking point is changed, the presentation position is changed as it is from the past tracking point to the current tracking point, so that the coordinate value changes abruptly as shown by the dotted line in FIG. When displaying, particularly when displaying enlarged, a sense of incongruity may occur.
これに対して、本発明においては、追尾点とは別に、提示位置が設けられており、追尾点の乗り換えの際には、この提示位置が、過去の追尾点に対応する提示位置から、現在の追尾点に対応する提示位置に段階的に乗り換えられるように構成されている。これにより、本発明においては、図44の実線に示されるように、提示位置が急激に変化することがないので、従来の方法で追尾点の乗り換えの際に表示される画像に対してユーザが感じていた違和感を軽減することができる。これは、画像をズームさせて表示する場合に特に効果的である。 On the other hand, in the present invention, a presentation position is provided separately from the tracking point, and when the tracking point is changed, the presenting position is determined from the presenting position corresponding to the past tracking point. The presentation position corresponding to the tracking point can be changed step by step. As a result, in the present invention, as shown by the solid line in FIG. 44, the presentation position does not change abruptly. Therefore, the user can display the image displayed when switching the tracking point using the conventional method. The uncomfortable feeling felt can be reduced. This is particularly effective when an image is zoomed and displayed.
以上のように、図1のオブジェクト追尾部23を構成することにより、追尾すべきオブジェクトが回転したり(図6)、オクルージョンが発生したり(図7)、あるいはシーンチェンジにより、オブジェクトの追尾点が一時的に表示されなくなる(図8)ような場合でも、画像の中で移動するオブジェクト(追尾点)を正確に追尾することができる。
As described above, by configuring the
そして、このようにして正確に追尾されるオブジェクトの追尾点に基づいて、提示位置を算出し、算出した提示位置の情報を、図1のオブジェクト追尾部23による追尾結果としてズーム画像作成部24に出力されることにより、ズーム画像作成部24によって、段階的に反映させるように求められた提示位置を中心として、ズーム画像が作成される。これにより、図44のグラフを参照して上述したように、ユーザにおいては、画像ディスプレイ26に表示される画像に違和感を感じてしまうことが軽減される。
Then, the presentation position is calculated based on the tracking point of the object accurately tracked in this manner, and the calculated presentation position information is sent to the zoom
すなわち、従来においては、ズーム率が1で作成される画像の場合よりも、ズーム率が大きいズーム画像のほうが、より違和感が生じていたので、本発明は、ズーム率が1で作成される画像の場合よりも、ズーム率が大きいズーム画像に対して、より効果がある。 That is, in the prior art, a zoom image with a large zoom ratio is more uncomfortable than an image created with a zoom ratio of 1. Therefore, the present invention provides an image created with a zoom ratio of 1. This is more effective than a zoom image with a large zoom ratio.
本発明は、テレビジョン受像機に限らず、監視カメラシステムや、各種の画像処理装置に適応することが可能である。 The present invention can be applied not only to a television receiver but also to a surveillance camera system and various image processing apparatuses.
なお、以上においては、画像の処理単位をフレームとしたが、フィールドを処理単位とする場合にも本発明は適用が可能である。 In the above, the image processing unit 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.
1 テレビジョン受像機, 23 オブジェクト追尾部, 24 ズーム画像作成部, 26 画像ディスプレイ, 29 制御部, 30 リモートコントローラ, 41 追尾処理部, 42 提示位置算出部, 51 テンプレートマッチング部, 52 動き推定部, 53 シーンチェンジ検出部, 54 背景動き推定部, 55 領域推定関連処理部, 56 乗り換え候補保持部, 57 追尾点決定部, 58 テンプレート保持部, 59 制御部,701 乗り換え量算出部, 702 追尾点記憶部, 703 反映乗り換え量算出部, 704 乗り換え残り量記憶部, 705 中心点設定部, 706 中心点記憶部
DESCRIPTION OF
Claims (4)
時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第1の点の時間的に後の処理単位における追尾点としての第2の点の位置への動きを推定する動き推定手段と、
前記後の処理単位における前記第2の点の位置への動きが推定可能でない場合、前記第1の点の乗り換え候補としての推定点の中から他の第1の点を選択する選択手段と、
前記選択手段により選択された前記他の第1の点について推定された前記第2の点の位置への動きに基づいて、前記後の処理単位における前記第2の点を決定する決定手段と、
前記第1の点の位置および前記他の第1の点の位置に基づいて提示位置を算出する提示位置算出手段と、
前記提示位置算出手段により算出された前記提示位置に基づいて表示画像を作成する表示画像作成手段と、
前記表示画像作成手段により作成された前記表示画像の表示を制御する表示制御手段と
を備え、
前記提示位置算出手段は、
前記第1の点の位置および前記他の第1の点の位置から得られる乗り換え量が所定量以上であるか否かを判定する比較判定手段と、
前記比較判定手段により前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第1の点について推定された前記第2の点の位置への動きに基づき、前記提示位置を設定する提示位置設定手段とを備える
画像処理装置。 In an image processing apparatus for displaying a moving object,
Motion estimation for estimating the movement of the first point as the tracking point of the moving object on the image in the previous processing unit in time to the position of the second point as the tracking point in the subsequent processing unit in time Means,
If the movement to the position of the second point in the subsequent processing unit cannot be estimated, selection means for selecting another first point from the estimated points as transfer candidates for the first point;
Determining means for determining the second point in the subsequent processing unit based on the movement to the position of the second point estimated for the other first point selected by the selecting means;
Presenting position calculating means for calculating a presenting position based on the position of the first point and the position of the other first point;
Display image creation means for creating a display image based on the presentation position calculated by the presentation position calculation means;
Display control means for controlling the display of the display image created by the display image creating means ,
The presentation position calculation means includes
Comparison determination means for determining whether or not a transfer amount obtained from the position of the first point and the position of the other first point is equal to or greater than a predetermined amount;
When it is determined by the comparison determination means that the transfer amount is equal to or greater than a predetermined amount, only the predetermined amount of the transfer amount is reflected, and the second point estimated for the other first point is reflected. Presentation position setting means for setting the presentation position based on the movement of the point to the position
Image processing device.
時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第1の点の時間的に後の処理単位における追尾点としての第2の点の位置への動きを推定する動き推定ステップと、
前記後の処理単位における前記第2の点の位置への動きが推定可能でない場合、前記第1の点の乗り換え候補としての推定点の中から他の第1の点を選択する選択ステップと、
選択された前記他の第1の点について推定された前記第2の点の位置への動きに基づいて、前記後の処理単位における前記第2の点を決定する決定ステップと、
前記第1の点の位置および前記他の第1の点の位置に基づいて提示位置を算出する提示位置算出ステップと、
算出された前記提示位置に基づいて表示画像を作成する表示画像作成ステップと、
作成された前記表示画像の表示を制御する表示制御ステップと
を含み、
前記提示位置算出ステップの処理によって、
前記第1の点の位置および前記他の第1の点の位置から得られる乗り換え量が所定量以上であるか否かを判定し、
前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第1の点について推定された前記第2の点の位置への動きに基づき、前記提示位置を設定する
画像処理方法。 In an image processing method of an image processing apparatus for displaying a moving object,
Motion estimation for estimating the movement of the first point as the tracking point of the moving object on the image in the previous processing unit in time to the position of the second point as the tracking point in the subsequent processing unit in time Steps ,
When the movement to the position of the second point in the subsequent processing unit cannot be estimated, a selection step of selecting another first point from the estimated points as transfer candidates of the first point;
A determination step of determining the second point in the subsequent processing unit based on the movement to the position of the second point estimated for the selected other first point;
A presentation position calculating step of calculating a presentation position based on the position of the first point and the position of the other first point;
A display image creation step of creating a display image based on the calculated presentation position;
And a display control step for controlling the display of the display image generated seen including,
By the processing of the presentation position calculation step,
Determining whether the transfer amount obtained from the position of the first point and the position of the other first point is equal to or greater than a predetermined amount;
When it is determined that the transfer amount is equal to or greater than a predetermined amount, only the predetermined amount of the transfer amount is reflected, and the position of the second point estimated for the other first point is reflected. Set the presentation position based on movement
Image processing method.
時間的に前の処理単位の画像上の移動するオブジェクトの追尾点としての第1の点の時間的に後の処理単位における追尾点としての第2の点の位置への動きを推定する動き推定ステップと、
前記後の処理単位における前記第2の点の位置への動きが推定可能でない場合、前記第1の点の乗り換え候補としての推定点の中から他の第1の点を選択する選択ステップと、
選択された前記他の第1の点について推定された前記第2の点の位置への動きに基づいて、前記後の処理単位における前記第2の点を決定する決定ステップと、
前記第1の点の位置および前記他の第1の点の位置に基づいて提示位置を算出する提示位置算出ステップと、
算出された前記提示位置に基づいて表示画像を作成する表示画像作成ステップと、
作成された前記表示画像の表示を制御する表示制御ステップと
を含み、
前記提示位置算出ステップの処理によって、
前記第1の点の位置および前記他の第1の点の位置から得られる乗り換え量が所定量以上であるか否かを判定し、
前記乗り換え量が所定量以上であると判定された場合、前記乗り換え量のうちの前記所定量だけを反映させて、前記他の第1の点について推定された前記第2の点の位置への動きに基づき、前記提示位置を設定する
プログラム。 A program for causing a computer to display a moving object,
Motion estimation for estimating the movement of the first point as the tracking point of the moving object on the image in the previous processing unit in time to the position of the second point as the tracking point in the subsequent processing unit in time Steps ,
When the movement to the position of the second point in the subsequent processing unit cannot be estimated, a selection step of selecting another first point from the estimated points as transfer candidates of the first point;
A determination step of determining the second point in the subsequent processing unit based on the movement to the position of the second point estimated for the selected other first point;
A presentation position calculating step of calculating a presentation position based on the position of the first point and the position of the other first point;
A display image creation step of creating a display image based on the calculated presentation position;
And a display control step for controlling the display of the display image generated seen including,
By the processing of the presentation position calculation step,
Determining whether the transfer amount obtained from the position of the first point and the position of the other first point is equal to or greater than a predetermined amount;
When it is determined that the transfer amount is equal to or greater than a predetermined amount, only the predetermined amount of the transfer amount is reflected, and the position of the second point estimated for the other first point is reflected. Set the presentation position based on movement
program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006099832A JP4826316B2 (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 |
---|---|---|---|
JP2006099832A JP4826316B2 (en) | 2006-03-31 | 2006-03-31 | Image processing apparatus and method, program, and recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007272734A JP2007272734A (en) | 2007-10-18 |
JP4826316B2 true JP4826316B2 (en) | 2011-11-30 |
Family
ID=38675453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006099832A Expired - Fee Related JP4826316B2 (en) | 2006-03-31 | 2006-03-31 | Image processing apparatus and method, program, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4826316B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4623122B2 (en) * | 2008-04-03 | 2011-02-02 | ソニー株式会社 | Image signal processing apparatus, image signal processing method, and program |
KR101009881B1 (en) | 2008-07-30 | 2011-01-19 | 삼성전자주식회사 | Apparatus and method for zoom display of target area from reproducing image |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3182808B2 (en) * | 1991-09-20 | 2001-07-03 | 株式会社日立製作所 | Image processing system |
JP3440916B2 (en) * | 2000-03-30 | 2003-08-25 | 日本電気株式会社 | Automatic tracking device, automatic tracking method, and recording medium recording automatic tracking program |
JP4725105B2 (en) * | 2004-01-06 | 2011-07-13 | ソニー株式会社 | Image processing apparatus and method, program, and recording medium |
JP2005309992A (en) * | 2004-04-23 | 2005-11-04 | Toyota Motor Corp | Image processor and image processing method |
-
2006
- 2006-03-31 JP JP2006099832A patent/JP4826316B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2007272734A (en) | 2007-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101108634B1 (en) | Image processing device and image processing method and recording medium | |
JP3481430B2 (en) | Mobile tracking device | |
US9524562B2 (en) | Object tracking method and device | |
EP2344983B1 (en) | Method, apparatus and computer program product for providing adaptive gesture analysis | |
US7148913B2 (en) | Vision-based pointer tracking and object classification method and apparatus | |
US8379987B2 (en) | Method, apparatus and computer program product for providing hand segmentation for gesture analysis | |
JP6184271B2 (en) | Imaging management apparatus, imaging management system control method, and program | |
JP4725105B2 (en) | Image processing apparatus and method, program, and recording medium | |
JP4797753B2 (en) | Image processing apparatus and method, and program | |
JP5685837B2 (en) | Gesture recognition device, gesture recognition method and program | |
CN110008795B (en) | Image target tracking method and system and computer readable recording medium | |
JP2009199363A (en) | Tracking system using particle filtering | |
US10121251B2 (en) | Method for controlling tracking using a color model, corresponding apparatus and non-transitory program storage device | |
EP3629570A2 (en) | Image capturing apparatus and image recording method | |
JP7085812B2 (en) | Image processing device and its control method | |
JP2007274543A (en) | Image processing apparatus and method, program, and recording medium | |
JP4617883B2 (en) | Image processing apparatus and method, program, and recording medium | |
JP4826316B2 (en) | Image processing apparatus and method, program, and recording medium | |
JP2009010453A (en) | Image processing apparatus and method, and program | |
JP2007272735A (en) | Image processor and image processing method, program, and recording medium | |
JP2007510994A (en) | Object tracking in video images | |
JP4070558B2 (en) | Image tracking apparatus and method | |
JP2007272731A (en) | Image processing apparatus and method, and program | |
KR101886856B1 (en) | System and method for data combining based on result of non-rigid object tracking on multi-sensor seeker | |
JP2009171369A (en) | Image data processor and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090324 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110303 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110315 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110509 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110816 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110829 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140922 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140922 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |