JP4826316B2 - Image processing apparatus and method, program, and recording medium - Google Patents

Image processing apparatus and method, program, and recording medium Download PDF

Info

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
Application number
JP2006099832A
Other languages
Japanese (ja)
Other versions
JP2007272734A (en
Inventor
直己 武田
哲二郎 近藤
知之 大月
健治 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2006099832A priority Critical patent/JP4826316B2/en
Publication of JP2007272734A publication Critical patent/JP2007272734A/en
Application granted granted Critical
Publication of JP4826316B2 publication Critical patent/JP4826316B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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 Patent Document 1 filed earlier that the tracking target is more reliably tracked by changing to the above candidate.

特開2005−303983号公報JP 2005-303983 A

しかしながら、特許文献1に記載のオブジェクト追尾においては、追尾結果をそのまま表示していた。したがって、追尾点を追尾候補に乗り換えた場合、その追尾結果の表示においては、乗り換えによる違和感が生じてしまうことがあった。この違和感は、特に、特許文献1に記載のオブジェクト追尾を、その追尾点を中心としてズームして表示するアプリケーションに適用させた場合に顕著に生じるものである。   However, in the object tracking described in Patent Document 1, the tracking result is displayed as it is. Therefore, when the tracking point is changed to a tracking candidate, there may be a sense of incongruity due to the change in the display of the tracking result. This sense of incongruity is particularly noticeable when the object tracking described in Patent Document 1 is applied to an application that zooms and displays the tracking point as a center.

本発明は、このような状況に鑑みてなされたものであり、追尾点を他の候補に乗り換えて追尾して表示する場合に、乗り換えにより生じる違和感を軽減することができるようにするものである。   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 television receiver 1 includes a tuner 21, an image processing unit 22, an object tracking unit 23, a zoom image creation unit 24, a selection unit 25, an image display 26, an audio processing unit 27, a speaker 28, a control unit 29, and a remote controller 30. , And a removable medium 31.

チューナ21は、RF信号を入力し、復調して画像信号と音声信号とに分離し、画像信号を画像処理部22に出力し、音声信号を音声処理部27に出力する。   The tuner 21 receives the RF signal, demodulates it and separates it into an image signal and an audio signal, outputs the image signal to the image processing unit 22, and outputs the audio signal to the audio processing unit 27.

画像処理部22は、チューナ21より入力された画像信号を復調し、オブジェクト追尾部23、ズーム画像作成部24、および選択部25に出力する。オブジェクト追尾部23は、入力画像からユーザにより指定されたオブジェクトの追尾点を追尾する処理を実行し、その追尾点に基づいて、追尾されたオブジェクトの提示の基準とする提示位置を求め、その提示位置に関する座標情報を、ズーム画像作成部24に出力する。ズーム画像作成部24は、提示位置に基づいて、ズーム画像(すなわち、ズームした表示画像)を作成する。選択部25は、画像処理部22より供給された画像またはズーム画像作成部24より供給された画像の一方をユーザからの指示に基づいて選択し、画像ディスプレイ26に出力し、表示させる。   The image processing unit 22 demodulates the image signal input from the tuner 21 and outputs the demodulated signal to the object tracking unit 23, the zoom image creation unit 24, and the selection unit 25. The object tracking unit 23 performs processing for tracking the tracking point of the object specified by the user from the input image, obtains a presentation position as a reference for presenting the tracked object based on the tracking point, The coordinate information regarding the position is output to the zoom image creation unit 24. The zoom image creation unit 24 creates a zoom image (that is, a zoomed display image) based on the presentation position. The selection unit 25 selects one of the image supplied from the image processing unit 22 or the image supplied from the zoom image creation unit 24 based on an instruction from the user, and outputs the selected image to the image display 26 for display.

音声処理部27は、チューナ21より入力された音声信号を復調し、スピーカ28に出力する。   The audio processing unit 27 demodulates the audio signal input from the tuner 21 and outputs it to the speaker 28.

制御部29は、例えば、マイクロコンピュータなどにより構成され、ユーザの指示に基づいて各部を制御する。リモートコントローラ30は、ユーザにより操作され、その操作に対応する信号を制御部29に出力する。リムーバブルメディア31は、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスクなどにより構成され、必要に応じて装着され、制御部29に、プログラム、その他各種のデータを提供する。   The control unit 29 is configured by, for example, a microcomputer and controls each unit based on a user instruction. The remote controller 30 is operated by the user and outputs a signal corresponding to the operation to the control unit 29. The removable medium 31 includes a semiconductor memory, a magnetic disk, an optical disk, a magneto-optical disk, and the like. The removable medium 31 is mounted as necessary, and provides the control unit 29 with a program and various other data.

次に、テレビジョン受像機1の処理について、図2のフローチャートを参照して説明する。   Next, processing of the television receiver 1 will be described with reference to the flowchart of FIG.

ステップS1において、チューナ21は、図示せぬアンテナを介して受信したRF信号から、ユーザにより指示されたチャンネルの信号を復調して、画像信号を画像処理部22に出力し、音声信号を音声処理部27に出力する。音声信号は、音声処理部27で復調された後、スピーカ28から出力される。   In step S1, the tuner 21 demodulates the signal of the channel designated by the user from the RF signal received via the antenna (not shown), outputs the image signal to the image processing unit 22, and processes the sound signal as sound processing. To the unit 27. The audio signal is demodulated by the audio processing unit 27 and then output from the speaker 28.

画像処理部22は、入力された画像信号を復調し、オブジェクト追尾部23、ズーム画像作成部24、および選択部25に出力する。   The image processing unit 22 demodulates the input image signal and outputs the demodulated image signal to the object tracking unit 23, zoom image creation unit 24, and selection unit 25.

ステップS2において、オブジェクト追尾部23は、追尾が指示されたか否かを判定し、追尾が指示されていないと判定された場合、ステップS3,S4の処理をスキップする。ステップS5において、選択部25は、画像処理部22より供給される画像信号と、ズーム画像作成部24より入力される画像信号のいずれか一方を制御部29からの制御に基づいて選択する。いまの場合、ユーザから特に指示がなされていないので、制御部29は、選択部25に画像処理部22からの画像信号を選択させる。ステップS6において画像ディスプレイ26は、選択部25により選択された画像を表示する。   In step S2, the object tracking unit 23 determines whether or not tracking is instructed. If it is determined that tracking is not instructed, the processing of steps S3 and S4 is skipped. In step S <b> 5, the selection unit 25 selects one of the image signal supplied from the image processing unit 22 and the image signal input from the zoom image creation unit 24 based on control from the control unit 29. In this case, since there is no specific instruction from the user, the control unit 29 causes the selection unit 25 to select the image signal from the image processing unit 22. In step S <b> 6, the image display 26 displays the image selected by the selection unit 25.

ステップS7において、制御部29は、ユーザの指示に基づいて画像表示処理を終了するか否かを判定する。すなわちユーザは、画像表示処理を終了するとき、リモートコントローラ30を操作して、制御部29にそれを指示する。ユーザから終了が指示されていない場合、処理はステップS1に戻り、それ以降の処理が繰り返し実行される。   In step S7, the control unit 29 determines whether or not to end the image display process based on a user instruction. That is, when ending the image display process, the user operates the remote controller 30 and instructs the control unit 29 to do so. If the user has not instructed termination, the process returns to step S1, and the subsequent processes are repeatedly executed.

以上のようにして、チューナ21により受信された信号に対応する画像をそのまま表示する通常の処理が実行される。   As described above, normal processing for displaying an image corresponding to the signal received by the tuner 21 as it is is executed.

ユーザは、画像ディスプレイ26に表示されている画像を見て追尾したいと思う画像が表示されたとき、リモートコントローラ30を操作することで、その画像を指定する。この操作がなされたとき、ステップS2において制御部29は、追尾が指示されたと判定し、オブジェクト追尾部23を制御する。オブジェクト追尾部23は、この制御に基づいて、ユーザにより指定された追尾点の追尾処理を開始する。   When an image desired to be tracked is displayed by looking at the image displayed on the image display 26, the user designates the image by operating the remote controller 30. When this operation is performed, in step S2, the control unit 29 determines that tracking is instructed, and controls the object tracking unit 23. Based on this control, the object tracking unit 23 starts tracking processing of the tracking point designated by the user.

追尾処理の詳細については、図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 image creation unit 24 as presentation position information.

ステップS4において、ズーム画像作成部24は、オブジェクト追尾部23により求められた提示位置に基づいて、ズーム画像を生成し、選択部25に出力する。すなわち、ズーム画像作成部24は、オブジェクト追尾部23により求められた提示位置を中心として、ズーム画像を生成する。すなわち、提示位置は、ズームの提示中心点とも言える。   In step S <b> 4, the zoom image creation unit 24 generates a zoom image based on the presentation position obtained by the object tracking unit 23 and outputs the zoom image to the selection unit 25. That is, the zoom image creating unit 24 generates a zoom image with the presentation position obtained by the object tracking unit 23 as the center. That is, the presentation position can also be said to be a zoom presentation center point.

このズーム画像作成処理は、本出願人が先に提案しているクラス分類適応処理を利用して行うことができる。例えば、特開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 image display 26 has a fixed number of pixels, the zoom image creation unit 24 converts the 525i signal into a 1080i signal and then centers the presentation position when creating a 9 / 4-fold image, for example. A zoom image can be created by selecting a predetermined number of pixels (number of pixels corresponding to the image display 26).

この原理に基づいて、任意の倍率のズーム画像を生成することができる。   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 selection unit 25 selects the zoom image created by the zoom image creation unit 24 in step S5. As a result, in step S6, the image display 26 displays the zoom image created by the zoom image creation unit 24.

以上のようにして、画像ディスプレイ26には、ユーザが指定した追尾点に基づいて求められる提示位置を中心とするズーム画像が表示される。なお、倍率が1に設定された場合には、提示位置を基準とした、ズームなしの表示画像が作成されて、表示される。   As described above, the image display 26 displays a zoom image centered on the presentation position obtained based on the tracking point designated by the user. When the magnification is set to 1, a display image without zooming is created and displayed based on the presentation position.

次に、図1のオブジェクト追尾部23の詳細な構成例と、その動作について説明する。図3はオブジェクト追尾部23の機能的構成例を示すブロック図である。この例では、オブジェクト追尾部23は、追尾処理部41と提示位置算出部42により構成されている。   Next, a detailed configuration example and operation of the object tracking unit 23 in FIG. 1 will be described. FIG. 3 is a block diagram illustrating a functional configuration example of the object tracking unit 23. In this example, the object tracking unit 23 includes a tracking processing unit 41 and a presentation position calculation unit 42.

追尾処理部41は、入力画像の動きを推定し、推定の結果得られた動きベクトルなどに基づいて、追尾点を算出する。そして、追尾処理部41は、算出した追尾点の位置情報などの追尾結果と、推定の結果得られた、追尾結果に対応する動きベクトルを提示位置算出部42に供給する。   The tracking processing unit 41 estimates the motion of the input image and calculates a tracking point based on the motion vector obtained as a result of the estimation. Then, the tracking processing unit 41 supplies the tracking result such as the calculated position information of the tracking point and the motion vector corresponding to the tracking result obtained as a result of the estimation to the presentation position calculating unit 42.

提示位置算出部42は、追尾処理部41により供給された追尾結果および動きベクトルに基づいて、オブジェクトの追尾(すなわち、追尾結果)を提示する際の基準となる提示位置を算出し、算出した提示位置に関する情報を、ズーム画像作成部24、および制御部29などに出力する。   The presentation position calculation unit 42 calculates a presentation position serving as a reference when presenting the tracking of the object (that is, the tracking result) based on the tracking result and the motion vector supplied from the tracking processing unit 41, and the calculated presentation Information about the position is output to the zoom image creation unit 24, the control unit 29, and the like.

次に、オブジェクト追尾部23の動作について説明する。図4は、図2のステップS3において、オブジェクト追尾部23が実行する追尾処理の詳細を説明するフローチャートである。   Next, the operation of the object tracking unit 23 will be described. FIG. 4 is a flowchart for explaining the details of the tracking process executed by the object tracking unit 23 in step S3 of FIG.

まず、ステップS21において、オブジェクト追尾部23の追尾処理部41は、ステップS2で指定された追尾点を追尾することで、追尾点を算出する追尾点算出処理を実行する。この追尾点算出処理は、図5に示されるように、基本的に通常処理と例外処理で構成される。   First, in step S21, the tracking processing unit 41 of the object tracking unit 23 executes tracking point calculation processing for calculating a tracking point by tracking the tracking point specified in step S2. This tracking point calculation process basically includes a normal process and an exception process, as shown in FIG.

すなわち、追尾処理部41は、まず、ステップS51において、通常処理を実行する。この通常処理の詳細は、図10を参照して後述するが、この処理によりユーザにより指定された追尾点を追尾する処理が実行される。ステップS51の通常処理において追尾点の乗り換えができなくなったとき、追尾処理部41は、ステップS52において、例外処理を実行する。この例外処理の詳細は、図25を参照して後述するが、この例外処理により、追尾点が画像から見えなくなったとき、テンプレートマッチングにより通常処理への復帰処理が実行される。   That is, the tracking processing unit 41 first executes normal processing in step S51. The details of this normal process will be described later with reference to FIG. 10, but a process for tracking a tracking point designated by the user is executed by this process. When the tracking point cannot be changed in the normal processing in step S51, the tracking processing unit 41 executes exception processing in step S52. Details of the exception processing will be described later with reference to FIG. 25. When the tracking point becomes invisible from the image by this exception processing, the return processing to the normal processing is executed by template matching.

例外処理によって追尾処理を継続することができなくなった(通常処理へ復帰することができなくなった)と判定された場合には処理が終了されるが、テンプレートによる復帰処理の結果、通常処理への復帰が可能と判定された場合には、処理は再びステップ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 human face 104 as a tracking target (object) is displayed in the frame n−1, and the human face 104 has a right eye 102 and a left eye 103. ing. It is assumed that the user designates, for example, the right eye 102 (exactly one pixel therein) as the tracking point 101. In the example of FIG. 6, in the next frame n, the person moves to the left in the figure, and in the next frame n + 1, the person's face 104 rotates clockwise. As a result, the right eye 102 that has been visible until now is not displayed, and tracking cannot be performed with the conventional method. Therefore, in the normal process of step S51 described above, the left eye 103 on the face 104 as the same object as the right eye 102 is selected, and the tracking point is switched (set) to the left eye 103. This enables tracking.

図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 ball 121 has moved from the left side of the face 104 in the drawing, and in the next frame n, the ball 121 has just covered the face 104. In this state, the face 104 including the right eye 102 designated as the tracking point 101 is not displayed. When such an occlusion occurs, the face 104 as the object is not displayed, so there is no transfer point to be tracked instead of the tracking point 101, and thereafter it becomes difficult to track the tracking point. However, in the present invention, the image of the frame n−1 (actually the earlier frame in time) is stored in advance as a template for the right eye 102 as the tracking point 101, and the ball 121 moves further to the right. When the right eye 102 designated as the tracking point 101 appears again in frame n + 1, it is confirmed that the right eye 102 as the tracking point 101 is displayed again by the exception processing in step S52 described above, and the right eye 102 is again tracked. The point 101 is tracked.

図8の例では、フレームn−1においては、顔104が表示されているが、次のフレームnにおいては、自動車111が人の顔を含む全体を覆い隠している。すなわち、この場合、シーンチェンジが起きたことになる。本発明では、このようにシーンチェンジが起きて追尾点101が画像から存在しなくなっても、自動車111が移動して、フレームn+1において再び右目102が表示されると、ステップS52の例外処理で、追尾点101としての右目102が再び出現したことがテンプレートに基づいて確認され、この右目102を再び追尾点101として追尾することが可能となる。   In the example of FIG. 8, the face 104 is displayed in the frame n−1, but in the next frame n, the automobile 111 covers and covers the whole including the human face. That is, in this case, a scene change has occurred. In the present invention, even if the scene change occurs and the tracking point 101 no longer exists in the image, if the automobile 111 moves and the right eye 102 is displayed again in the frame n + 1, the exception processing in step S52 It is confirmed based on the template that the right eye 102 as the tracking point 101 has appeared again, and the right eye 102 can be tracked again as the tracking point 101.

図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 position calculation unit 42.

ステップS22において、提示位置算出部42は、このステップS21で決定された追尾点に関する情報に基づいて、さらに、オブジェクトの追尾(すなわち、追尾結果)を提示する際の基準となる提示位置、すなわち、ズーム画像作成部24がズーム画像を作成するときに、その中心とする提示位置を算出する提示位置算出処理を実行する。   In step S22, the presentation position calculation unit 42 further provides a reference position when presenting the tracking of the object (that is, the tracking result) based on the information regarding the tracking point determined in step S21. When the zoom image creation unit 24 creates a zoom image, a presentation position calculation process is performed to calculate a presentation position as the center.

この提示位置算出処理の詳細は、図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 tracking processing unit 41 in FIG. 3 will be described. FIG. 9 is a block diagram illustrating a functional configuration example of the tracking processing unit 41. In this example, the tracking processing unit 41 includes a template matching unit 51, a motion estimation unit 52, a scene change detection unit 53, a background motion estimation unit 54, a region estimation related processing unit 55, a transfer candidate holding unit 56, and a tracking point determination unit 57. , A template holding unit 58 and a control unit 59.

テンプレートマッチング部51は、入力画像と、テンプレート保持部58に保持されているテンプレート画像のマッチング処理を行う。動き推定部52は、入力画像の動きを推定し、推定の結果得られた動きベクトルと、その動きベクトルの確度を、シーンチェンジ検出部53、背景動き推定部54、領域推定関連処理部55、および追尾点決定部57に出力する。シーンチェンジ検出部53は、動き推定部52より供給された確度に基づいて、シーンチェンジを検出する。   The template matching unit 51 performs a matching process between the input image and the template image held in the template holding unit 58. The motion estimation unit 52 estimates the motion of the input image, and obtains the motion vector obtained as a result of the estimation and the accuracy of the motion vector, the scene change detection unit 53, the background motion estimation unit 54, the region estimation related processing unit 55, And output to the tracking point determination unit 57. The scene change detection unit 53 detects a scene change based on the accuracy supplied from the motion estimation unit 52.

背景動き推定部54は、動き推定部52より供給された動きベクトルと確度に基づいて背景動きを推定する処理を実行し、推定結果を領域推定関連処理部55に供給する。領域推定関連処理部55は、動き推定部52より供給された動きベクトルと確度、背景動き推定部54より供給された背景動き、並びに追尾点決定部57より供給された追尾点情報に基づいて、領域推定処理を行う。また、領域推定関連処理部55は、入力された情報に基づいて乗り換え候補を生成し、乗り換え候補保持部56へ供給し、保持させる。さらに、領域推定関連処理部55は、入力画像に基づいてテンプレートを作成し、テンプレート保持部58に供給し、保持させる。   The background motion estimation unit 54 executes processing for estimating the background motion based on the motion vector and the accuracy supplied from the motion estimation unit 52, and supplies the estimation result to the region estimation related processing unit 55. The region estimation related processing unit 55 is based on the motion vector and accuracy supplied from the motion estimation unit 52, the background motion supplied from the background motion estimation unit 54, and the tracking point information supplied from the tracking point determination unit 57. Perform region estimation processing. Further, the region estimation related processing unit 55 generates a transfer candidate based on the input information, supplies the transfer candidate to the transfer candidate holding unit 56, and holds it. Further, the region estimation related processing unit 55 creates a template based on the input image, supplies the template to the template holding unit 58, and holds it.

追尾点決定部57は、動き推定部52より供給された動きベクトルと確度、並びに乗り換え候補保持部56より供給された乗り換え候補に基づいて、追尾点を決定し、決定された追尾点に関する情報を領域推定関連処理部55に出力する。   The tracking point determination unit 57 determines a tracking point based on the motion vector and accuracy supplied from the motion estimation unit 52 and the transfer candidate supplied from the transfer candidate holding unit 56, and information on the determined tracking point is obtained. The result is output to the region estimation related processing unit 55.

制御部59は、制御部29から指定された追尾点の情報に基づいて、テンプレートマッチング部51乃至テンプレート保持部58の各部を制御して、指示された追尾対象を追尾させるとともに、追尾点の画面上での位置の情報などの追尾結果と、決定された追尾点に対応する動きベクトルを、提示位置算出部42などに出力する。すなわち、追尾点決定部57により決定された追尾点に関する情報などの追尾結果と、決定された追尾点に対応する、動き推定部52からの動きベクトルが提示位置算出部42に供給される。   The control unit 59 controls each part of the template matching unit 51 to the template holding unit 58 based on the tracking point information specified by the control unit 29 to track the specified tracking target, and the tracking point screen. The tracking result such as the position information above and the motion vector corresponding to the determined tracking point are output to the presentation position calculation unit 42 and the like. That is, the tracking result such as information on the tracking point determined by the tracking point determination unit 57 and the motion vector from the motion estimation unit 52 corresponding to the determined tracking point are supplied to the presentation position calculation unit 42.

次に、図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 point determination unit 57 executes initialization processing of normal processing. The details will be described later with reference to FIG. 11, but an area estimation range based on the tracking point designated to be tracked by the user is designated by this processing. This area estimation range is the same object as the tracking point specified by the user (for example, when the tracking point is a human eye, a human face as a rigid body that moves like the eye, a human body, or the like) ) Is a range to be referred to when estimating the range of points belonging to. A transfer point is selected from points in the region estimation range.

次に、ステップS122において、制御部59は、次のフレームの画像の入力を待機するように各部を制御する。ステップS123において、動き推定部52は、追尾点の動きを推定する。すなわち、ユーザにより指定された追尾点を含むフレーム(前フレーム)より時間的に後のフレーム(後フレーム)をステップS122の処理で取り込むことで、結局連続する2フレームの画像が得られたことになるので、ステップS123において、前フレームの追尾点に対応する後フレームの追尾点の位置を推定することで、追尾点の動きが推定される。   Next, in step S122, the control unit 59 controls each unit to wait for input of an image of the next frame. In step S123, the motion estimation unit 52 estimates the tracking point motion. That is, by capturing the frame (following frame) temporally after the frame including the tracking point designated by the user (previous frame) in the process of step S122, an image of two consecutive frames is eventually obtained. Therefore, in step S123, the movement of the tracking point is estimated by estimating the position of the tracking point of the subsequent frame corresponding to the tracking point of the previous frame.

なお、時間的に前とは、処理の順番(入力の順番)をいう。通常、撮像の順番に各フレームの画像が入力されるので、その場合、より時間的に前に撮像されたフレームが前フレームとなるが、時間的に後に撮像されたフレームが先に処理(入力)される場合には、時間的に後に撮像されたフレームが前フレームとなる。   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 motion estimation unit 52 determines whether the tracking point can be estimated as a result of the process in step S123. Whether or not the tracking point can be estimated is determined, for example, by comparing the accuracy value of a motion vector (described later) generated and output by the motion estimation unit 52 with a preset threshold value. Specifically, it is possible to estimate if the accuracy of the motion vector is equal to or greater than a threshold, and it is determined that estimation is impossible if the accuracy is smaller than the threshold. In other words, the possibility here is determined relatively strictly, and if the estimation is not actually impossible but the accuracy is low, it is determined as impossible. As a result, more reliable tracking processing can be performed.

なお、ステップ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 right eye 102 is designated as the tracking point 101, the right eye 102 If the probability of being correctly tracked is relatively high), the process proceeds to step S125, and the tracking point determination unit 57 shifts the tracking point by the estimated motion (motion vector) obtained in the process of step S123. In other words, this determines the tracking position in the subsequent frame after tracking the tracking point of the previous frame.

そして、決定された追尾点に関する情報(例えば、追尾点の位置情報や、乗り換えの履歴情報など)が提示位置算出部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 position calculation unit 42, and in step S22 of FIG. 4 (FIGS. 41 and 42 described later). Used in the presentation position calculation process.

ステップ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 point determination unit 57 holds the transfer candidate generated in the region estimation-related processing in step S126 in the transfer candidate holding unit 56, and from among these, the transfer candidate closest to the original tracking point is stored. Select one. The tracking point determination unit 57 determines whether or not a transfer candidate has been selected in step S128. If a transfer candidate has been selected, the tracking point determination unit 57 proceeds to step S129 and sets the tracking point as the transfer candidate selected in the process of step S127. Change (change). That is, the transfer candidate point is set as a new tracking point. At this time, for example, transfer history information such as a transfer flag indicating that transfer has been performed is stored. Thereafter, the process returns to step S123, and the process of estimating the movement of the tracking point selected from the transfer candidates is executed.

ステップ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 control unit 59 determines whether or not the current process is a process for returning from the exception process. That is, after the exception process in step S52 of FIG. 5 is terminated, it is determined whether or not the process has returned to the normal process in step S51. In the process of the first frame, since the exception process of step S52 has not been executed yet, it is determined that the process has not returned from the exception process, and the process proceeds to step S142. In step S142, the tracking point determination unit 57 performs a process of setting the tracking point to the position of the tracking point instruction that is a predetermined point in the input image designated by the user.

なお、ユーザによる指定がない場合、入力画像の中で、例えば、最も輝度の高い点が追尾点として設定することもできる。追尾点決定部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 point determination unit 57 supplies the set tracking point information to the region estimation related processing unit 55.

ステップS143において、領域推定関連処理部55は、ステップS142の処理で設定された追尾点の位置に基づき、領域推定範囲を設定する。この領域推定範囲は、追尾点と同じ剛体上の点を推定する際の参照範囲であり、予め追尾点と同じ剛体部分が領域推定範囲の大部分を占めるように、より具体的には、追尾点と同じ剛体部分に推定領域範囲の位置や大きさが追随するように設定することで、領域推定範囲の中で最も多数を占める動きを示す部分を追尾点と同じ剛体部分であると推定できるようにするためのものである。ステップS143では初期値として、例えば、追尾点を中心とする予め設定された一定の範囲が領域推定範囲とされる。   In step S143, the region estimation related processing unit 55 sets a region estimation range based on the position of the tracking point set in the processing of step S142. This region estimation range is a reference range when estimating a point on the same rigid body as the tracking point, and more specifically, tracking so that the same rigid body portion as the tracking point occupies most of the region estimation range in advance. By setting the position and size of the estimated area range to follow the same rigid body part as the point, the part that shows the most movement in the estimated area range can be estimated as the same rigid body part as the tracking point It is for doing so. In step S143, as a default value, for example, a predetermined range centered on the tracking point is set as the region estimation range.

その後処理は、図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 point determination unit 57 refers to FIG. Then, the tracking point and the area estimation range are set based on the position matched with the template by the process described later. For example, a point on the current frame that matches the tracking point on the template is set as the tracking point, and a certain range set in advance from the point is set as the region estimation range. Thereafter, the processing proceeds to step S122 in FIG.

以上の処理を、図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 human eye 102 of the frame n−1 is designated as the tracking point 101, a predetermined region including the tracking point 101 is specified in step S143. Is designated as the area estimation range 133. In step S124, it is determined whether or not the sample points within the region estimation range 133 can be estimated in the next frame. In the case of the example of FIG. 12, in the frame n + 1 next to the frame n, the left half region 134 in the drawing including the left eye 102 in the region estimation range 133 is hidden by the ball 121. 101 motion cannot be estimated in the next frame n + 1. Therefore, in such a case, one of the points in the area designation range 133 (in the face 104 as a rigid body including the right eye 102) prepared in advance as a transfer candidate in the previous frame n-1 in time is selected. One point (for example, the left eye 103 included in the face 104 (exactly one pixel therein)) is selected, and that point is set as the tracking point in the frame n + 1.

領域推定関連処理部55は、図10のステップS126における領域推定関連処理を実行するために、図13に示されるような構成を有している。すなわち、領域推定関連処理部55の領域推定部161には、動き推定部52より動きベクトルと確度が入力され、背景動き推定部54より背景動きが入力され、そして追尾点決定部57より追尾点の位置情報が入力される。乗り換え候補抽出部162には、動き推定部52より動きベクトルと確度が供給される他、領域推定部161の出力が供給される。テンプレート作成部163には、入力画像が入力される他、領域推定部161の出力が入力される。   The region estimation related processing unit 55 has a configuration as shown in FIG. 13 in order to execute the region estimation related processing in step S126 of FIG. That is, the motion vector and the accuracy are input from the motion estimation unit 52, the background motion is input from the background motion estimation unit 54, and the tracking point from the tracking point determination unit 57 is input to the region estimation unit 161 of the region estimation related processing unit 55. Position information is input. In addition to the motion vector and the accuracy supplied from the motion estimation unit 52, the transfer candidate extraction unit 162 is also supplied with the output of the region estimation unit 161. In addition to the input image being input to the template creation unit 163, the output of the region estimation unit 161 is input.

領域推定部161は、入力に基づいて、追尾点を含む剛体の領域を推定し、推定結果を乗り換え候補抽出部162とテンプレート作成部163に出力する。乗り換え候補抽出部162は入力に基づき乗り換え候補を抽出し、抽出した乗り換え候補を乗り換え候補保持部56へ供給する。テンプレート作成部163は入力に基づきテンプレートを作成し、作成したテンプレートをテンプレート保持部58へ供給する。   The region estimation unit 161 estimates a rigid region including a tracking point based on the input, and outputs an estimation result to the transfer candidate extraction unit 162 and the template creation unit 163. The transfer candidate extraction unit 162 extracts transfer candidates based on the input, and supplies the extracted transfer candidates to the transfer candidate holding unit 56. The template creation unit 163 creates a template based on the input, and supplies the created template to the template holding unit 58.

図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 unit 55. First, in step S161, region estimation processing is executed by the region estimation unit 161. The details thereof will be described later with reference to FIG. 15. By this processing, the points of the region on the image that are estimated to belong to the same object (the rigid body that moves in synchronization with the tracking point) to which the tracking point belongs. Are extracted as points of the region estimation range.

ステップS162において、乗り換え候補抽出部162により乗り換え候補抽出処理が実行される。その処理の詳細は、図20を参照して後述するが、領域推定部161により領域推定範囲として推定された範囲の点から乗り換え候補の点が抽出され、乗り換え候補保持部56に保持される。   In step S162, the transfer candidate extraction unit 162 executes a transfer candidate extraction process. Details of the processing will be described later with reference to FIG. 20, but transfer candidate points are extracted from the points in the range estimated by the region estimation unit 161 as the region estimation range, and are held in the transfer candidate holding unit 56.

ステップS163においてテンプレート作成部163によりテンプレート作成処理が実行される。その詳細は、図21を参照して後述するが、この処理によりテンプレートが作成される。   In step S163, the template creation unit 163 executes template creation processing. Details thereof will be described later with reference to FIG. 21, but a template is created by this processing.

次に、図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 region estimation unit 161 determines a sample point as a candidate point of a point estimated to belong to the same target as the tracking point.

このサンプル点は、例えば図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 reference point 201 among the pixels in the entire screen of the frame indicated by the white square in the figure. Pixels at positions separated by the number of pixels can be used as sample points (represented by black squares in the figure). In the example of FIG. 16, the upper left pixel of each frame is set as a reference point 201 (the reference point 201 is indicated by a cross in the figure), and is separated by 5 in the horizontal direction and 5 in the vertical direction. The pixel at the position is taken as the sample point. That is, in the case of this example, pixels at positions dispersed throughout the entire screen are taken as sample points. In this example, the reference point is a point at the same position fixed in each frame n, n + 1.

なお、基準点201は、各フレームn,n+1毎に異なる位置の点となるように、動的に変化させることもできる。   Note that the reference point 201 can be dynamically changed so as to be a point at a different position for each of the frames n and n + 1.

また、図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 frame n + 1. It can also be variable with the pixel. As an interval reference at this time, an area of a region estimated to belong to the same object as the tracking point can be used. Specifically, if the area of the region estimation range is narrowed, the interval is also shortened.

あるいはまた、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 region estimation unit 161 then determines the region estimation range (steps S143 and S144 in FIG. 11 or steps S206 and S208 in FIG. 17 described later). The process of estimating the movement of the sample points within (determined in the process of (1)) is executed. That is, the region estimation unit 161 extracts the corresponding point of the next frame corresponding to the sample point within the region estimation range based on the motion vector supplied from the motion estimation unit 52.

ステップS183において、領域推定部161は、ステップS182の処理で推定したサンプル点のうち、確度が予め設定されている閾値より低い動きベクトルに基づく点を対象外とする処理を実行する。この処理に必要な動きベクトルの確度は、動き推定部52より供給される。これにより、領域推定範囲内のサンプル点のうち、確度が高い動きベクトルに基づいて推定された点だけが抽出される。   In step S183, the region estimation unit 161 executes processing for excluding points based on motion vectors whose accuracy is lower than a preset threshold value from the sample points estimated in step S182. The accuracy of the motion vector necessary for this processing is supplied from the motion estimation unit 52. Thereby, only the points estimated based on the motion vector with high accuracy are extracted from the sample points within the region estimation range.

ステップS184において、領域推定部161は、領域推定範囲内の動き推定結果での全画面動きを抽出する。全画面動きとは、同一の動きに対応する領域を考え、その面積が最大となる動きのことを意味する。具体的には、各サンプル点の動きに、そのサンプル点におけるサンプル点間隔に比例する重みを付けて動きのヒストグラムを生成し、この重み付け頻度が最大となる1つの動き(1つの動きベクトル)が全画面動きとして抽出される。なお、ヒストグラムを生成する場合、例えば、動きの代表値を画素精度で準備し、画素精度で1個となる値を持つ動きについてもヒストグラムへの加算を行うようにすることもできる。   In step S184, the region estimation unit 161 extracts the full screen motion in the motion estimation result within the region estimation range. The full screen motion means a motion that takes the area corresponding to the same motion and maximizes the area. Specifically, a motion histogram is generated by assigning a weight proportional to the sample point interval at each sample point to the motion of each sample point, and one motion (one motion vector) having the maximum weighting frequency is generated. Extracted as full screen motion. When generating a histogram, for example, a representative value of motion can be prepared with pixel accuracy, and a motion having a value with one pixel accuracy can be added to the histogram.

ステップS185において、領域推定部161は、全画面動きを持つ領域推定範囲内のサンプル点を領域推定の結果として抽出する。この場合における全画面動きを持つサンプル点としては、全画面動きと同一の動きを持つサンプル点はもちろんのこと、全画面動きとの動きの差が予め設定されている所定の閾値以下である場合には、そのサンプル点もここにおける全画面動きを持つサンプル点とすることも可能である。   In step S185, the region estimation unit 161 extracts sample points within the region estimation range having the full screen motion as a result of region estimation. In this case, the sample points having the full screen motion include not only the sample points having the same motion as the full screen motion but also the difference in motion from the full screen motion is equal to or less than a predetermined threshold value set in advance. The sample point can also be a sample point having full screen motion here.

このようにして、ステップ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 region estimation unit 161 executes a region estimation range update process. Thereafter, the processing proceeds to step S122 in FIG.

図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 region estimation unit 161 calculates the center of gravity of the region. This region means a region composed of sample points extracted in the process of step S185 in FIG. 15 (region composed of points estimated to belong to the same target as the tracking point). That is, one motion vector (full screen motion) corresponds to this area. For example, as shown in FIG. 18A, among sample points indicated by white squares in the drawing, sample points having full-screen motion in the process of step S185 in FIG. In FIG. 18A, sample points indicated by black squares are extracted, and an area constituted by the sample points is extracted (estimated) as an area 222. Then, the center of gravity 224 of the region 222 is further calculated. Specifically, the sample point centroid obtained by assigning the weight of the sample point interval to each sample point is obtained as the centroid of the region. This process has the meaning of obtaining the position of the region in the current frame.

次にステップS202において、領域推定部161は、領域の重心を全画面動きによりシフトする処理を実行する。この処理は、領域推定範囲221を領域の位置の動きに追従させ、次フレームにおける推定位置に移動させるという意味を有する。図18Bに示されるように、現フレームにおける追尾点223が、その動きベクトル238に基づいて次フレームにおいて追尾点233として出現する場合、全画面動きベクトル230が、追尾点の動きベクトル238にほぼ対応しているので、現フレームにおける重心224を動きベクトル230(全画面動き)に基づいてシフトすることで、追尾点233と同一のフレーム(次フレーム)上の点234が求められる。この点234を中心として領域推定範囲231を設定すれば、領域推定範囲221を領域222の位置の動きに追従させて、次のフレームにおける推定位置に移動させることになる。   Next, in step S202, the region estimation unit 161 executes a process of shifting the center of gravity of the region by full screen motion. This process has the meaning of causing the area estimation range 221 to follow the movement of the position of the area and to move to the estimated position in the next frame. As shown in FIG. 18B, when the tracking point 223 in the current frame appears as the tracking point 233 in the next frame based on the motion vector 238, the full-screen motion vector 230 substantially corresponds to the tracking point motion vector 238. Therefore, the point 234 on the same frame (next frame) as the tracking point 233 is obtained by shifting the center of gravity 224 in the current frame based on the motion vector 230 (full screen motion). If the area estimation range 231 is set around the point 234, the area estimation range 221 is moved to the estimated position in the next frame by following the movement of the position of the area 222.

ステップS203において、領域推定部161は、領域推定結果に基づき、次の領域推定範囲の大きさを決定する。具体的には、領域と推定された全てのサンプル点に関するサンプル点の間隔(図18Aにおける領域222の中の黒い四角形で示される点の間隔)の2乗和を領域222の面積と見なし、この面積よりも少し大きめの大きさとなるように、次フレームにおける領域推定範囲231の大きさが決定される。すなわち、領域推定範囲231の大きさは、領域222の中のサンプル点の数が多ければ広くなり、少なければ狭くなる。このようにすることで、領域222の拡大縮小に追従することができるばかりでなく、領域推定範囲221内の全画面領域が追尾対象の周辺領域となるのを防ぐことができる。   In step S203, the region estimation unit 161 determines the size of the next region estimation range based on the region estimation result. Specifically, the sum of squares of sample point intervals (intervals of points indicated by black squares in the region 222 in FIG. 18A) for all sample points estimated as the region is regarded as the area of the region 222. The size of the region estimation range 231 in the next frame is determined so that the size is slightly larger than the area. That is, the size of the region estimation range 231 increases when the number of sample points in the region 222 is large and decreases when the number of sample points is small. In this way, not only can the enlargement / reduction of the area 222 be followed, but also the entire screen area within the area estimation range 221 can be prevented from becoming a peripheral area to be tracked.

図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 motion estimation unit 54 always performs the background motion estimation process. In step S204, the region estimation unit 161 extracts the background motion supplied from the background motion estimation unit 54 and the process of step S184 in FIG. It is determined whether or not the full screen motion matches. If the full screen motion matches the background motion, in step S205, the region estimation unit 161 limits the size of the next region estimation range so that the current region estimation range is maximized. Thereby, it is suppressed that the background is erroneously recognized as the tracking target and the size of the area estimation range is enlarged.

ステップ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 region estimation unit 161 determines the size of the next region estimation range around the shifted region center of gravity. As a result, the area estimation range is determined such that the center of gravity coincides with the already obtained area centroid after the shift, and the size thereof is proportional to the area width.

図18Bの例では、領域推定範囲231が、動きベクトル(全画面動き)230に基づくシフト後の重心234を中心として、領域222の面積に応じた広さに決定されている。   In the example of FIG. 18B, the area estimation range 231 is determined to have a size corresponding to the area of the area 222 with the shifted center of gravity 234 based on the motion vector (full screen motion) 230 as the center.

領域推定範囲231内での全画面動きを有する領域が追尾対象(例えば、図12の顔104)の領域であることを担保する(確実にする)必要がある。そこで、ステップS207において、領域推定部161は、追尾点が次の領域推定範囲に含まれるか否かを判定し、含まれていない場合には、ステップS208において、追尾点を含むように次の領域推定範囲をシフトする処理を実行する。追尾点が次の領域推定範囲に含まれている場合には、ステップS208の処理は必要がないのでスキップされる。   It is necessary to ensure (ensure) that the region having the full screen motion within the region estimation range 231 is the region of the tracking target (for example, the face 104 in FIG. 12). Therefore, in step S207, the region estimation unit 161 determines whether or not the tracking point is included in the next region estimation range. If the tracking point is not included, in step S208, the region estimation unit 161 determines that the tracking point is included in the next region estimation range. A process for shifting the region estimation range is executed. If the tracking point is included in the next area estimation range, the process of step S208 is not necessary and is skipped.

この場合における具体的なシフトの方法としては、移動距離が最小となるようにする方法、シフト前の領域推定範囲の重心から追尾点に向かうベクトルに沿って追尾点が含まれるようになる最小距離だけ移動する方法などが考えられる。   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 region estimation range 231 does not include the tracking point 233, the region estimation range 241 is shifted to a position indicated as the region estimation range 241 (a position including the tracking point 233 at the upper left).

図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 area estimation range 221 are area points, the shift process in step S208 in FIG. 17 is not necessary.

図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 candidate extraction unit 162 holds, as transfer candidates, the point shift results of the estimated motion corresponding to each of the points estimated as the full screen motion region. That is, instead of using the points obtained as region estimation results as they are, a process for extracting the results shifted based on the respective motion estimation results is performed for use in the next frame. The changed transfer candidates are supplied to and held in the transfer candidate holding unit 56.

この処理を、図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 tracking point 101 exists in the frames n−1 and n, but in the frame n + 1, it is hidden by the ball 121 flying from the left side in the drawing, and the tracking point 101 does not exist. Therefore, in frame n + 1, it is necessary to change the tracking point to another point on the face 104 as a tracking target (for example, the left eye 103 (actually closer to the right eye 102)). Therefore, a transfer candidate is prepared in advance in a frame before transfer is actually required.

具体的には、図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 region estimation range 133 from frame n to frame n + 1 needs to be changed in the region estimation range 133, so that there is a high probability that it cannot be estimated correctly. Is expected. That is, in the example of FIG. 12, the transfer occurs because the tracking point and a part of the same object are hidden. As a result, in the region estimation range 133 in the frame n, regarding the portion 134 where the target is hidden in the frame n + 1 (the shaded portion in FIG. 12) 134, the motion is not estimated correctly, and it is estimated that the accuracy of the motion is low. It is estimated that the accuracy is not low and a motion estimation result is meaningless.

このような場合には、領域推定の際に用いることが可能な動き推定結果が減少する、あるいは誤った動き推定結果が混入するなどの理由で、領域推定が誤る可能性が高まる。一方、このような可能性は、一般的に、より時間的に前のフレーム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 frame n + 1. Expected to be lower.

そこで、リスク低減のため、領域推定結果をそのまま用いるのではなく、前のフレーム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 template creation unit 163 determines a small region corresponding to each of the points estimated as the region (region of full screen motion). In the example of FIG. 22, the small area 322 is determined corresponding to the area point 321.

ステップS282において、テンプレート作成部163は、ステップS281の処理で決定された小領域の和の領域をテンプレート範囲に設定する。図22の例においては、小領域322の和の領域がテンプレート範囲331とされている。   In step S282, the template creation unit 163 sets the area of the sum of the small areas determined in the process of step S281 as the template range. In the example of FIG. 22, the sum area of the small areas 322 is a template range 331.

次にステップS283において、テンプレート作成部163は、ステップS282において設定したテンプレート範囲の情報と画像情報からテンプレートを作成し、テンプレート保持部58に供給し、保持させる。具体的には、テンプレート範囲331内の画素データがテンプレートとされる。   In step S283, the template creation unit 163 creates a template from the template range information and image information set in step S282, supplies the template to the template holding unit 58, and holds the template. Specifically, pixel data in the template range 331 is used as a template.

図23は、領域の点321に対応する小領域341が、図22における小領域322に較べてより大きな面積とされている。その結果、小領域341の和の領域のテンプレート範囲351も、図22のテンプレート範囲331に較べてより広くなっている。   In FIG. 23, the small area 341 corresponding to the area point 321 has a larger area than the small area 322 in FIG. As a result, the template range 351 of the sum area of the small areas 341 is also wider than the template range 331 of FIG.

小領域の大きさは、サンプル点の間隔に比例させることが考えられるが、その際の比例定数は、面積がサンプル点間隔の自乗になるように決めることもできるし、それより大きくまたは小さく決めることも可能である。   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 template range 403 includes a tracking point 405. The upper left point of the circumscribed rectangle 401 circumscribing the template range 403 is a template reference point 404. The vector 406 from the template reference point 404 toward the tracking point 405 and the vector 407 from the template reference point 404 toward the upper left reference point 408 in the region estimation range 402 in the drawing are used as information of the template range 403. The template is composed of pixels included in the template range 403. The vectors 406 and 407 are used for returning to normal processing when the same image as the template is detected.

以上の処理においては、乗り換え候補の場合と異なり、範囲、画素ともに、現フレームに対応するものをテンプレートとする例を説明したが、乗り換え候補の場合と同様に、次フレームでの移動先をテンプレートとして用いることも可能である。   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 control unit 59 executes an exception process initialization process. Details of this processing are shown in the flowchart of FIG.

ステップS421において、制御部59は、追尾点の追尾ができなくなった際(追尾点の動きを推定することが不可能かつ、追尾点を乗り換える乗り換え候補が選択できなかった際)にシーンチェンジが起きていたか否かを判定する。シーンチェンジ検出部53は、動き推定部52の推定結果に基づいてシーンチェンがあったか否かを常に監視しており、制御部59は、そのシーンチェンジ検出部53の検出結果に基づいて、ステップS421の判定を実行する。シーンチェンジ検出部53の具体的処理については、図38と図39を参照して後述する。   In step S421, the control unit 59 causes a scene change when the tracking point cannot be tracked (when the movement of the tracking point cannot be estimated and a transfer candidate for changing the tracking point cannot be selected). It is determined whether it has been. The scene change detection unit 53 constantly monitors whether or not there is a scene chain based on the estimation result of the motion estimation unit 52, and the control unit 59 performs step S421 based on the detection result of the scene change detection unit 53. Execute the judgment. Specific processing of the scene change detection unit 53 will be described later with reference to FIGS. 38 and 39.

シーンチェンジが起きている場合、追尾ができなくなった理由が、シーンチェンジが発生したことによるものと推定して、ステップ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 control unit 59 sets the mode to scene change. In contrast, if it is determined in step S421 that no scene change has occurred, the control unit 59 sets the mode to another mode in step S423.

ステップ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 template matching unit 51 executes a process of selecting the oldest template in time in step S424. Specifically, as shown in FIG. 27, for example, when transition from frame n to frame n + 1 is performed, if exception processing is to be executed, a frame n−m + 1 is generated for frame n and is stored in the template holding unit 58. A template generated with respect to the frame mn + 1, which is the oldest template in time, is selected from the held m-frame templates.

このように例外処理への移行直前のテンプレート(図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 template matching unit 51 executes processing for setting a template search range. For example, the template search range is set such that the position of the tracking point immediately before the transition to the exception process is the center of the template search range.

すなわち、図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 right eye 102 of the subject's face 104 is designated as the tracking point 101 in the frame n, the ball 121 flies from the left direction in the figure, and the tracking point 101 in the frame n + 1. Is assumed, and the tracking point 101 appears again in the frame n + 2. In this case, a region centered on the tracking point 101 (included in the template range 411) is set as the template search range 412.

ステップS426において、テンプレートマッチング部51は、例外処理への移行後の経過フレーム数およびシーンチェンジ数を0にリセットする。このフレーム数とシーンチェンジ数は、後述する図25のステップS405における継続判定処理(図30のステップS461,S463,S465,S467)において使用される。   In step S426, the template matching unit 51 resets the number of elapsed frames and the number of scene changes after shifting to exception processing to zero. The number of frames and the number of scene changes are used in a continuation determination process (steps S461, S463, S465, and S467 in FIG. 30) in step S405 in FIG.

以上のようにして、例外処理の初期化処理が終了した後、図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 control unit 59 executes a process of waiting for the next frame. In step S403, the template matching unit 51 performs template matching processing within the template search range. In step S404, the template matching unit 51 determines whether it is possible to return to normal processing.

具体的には、テンプレートマッチング処理により、数フレーム前のテンプレート(図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 template range 411 in FIG. 28) and the matching target pixel in the template search range is calculated by the template matching process. More specifically, the sum of absolute values of differences between the pixels in the predetermined block in the template range 411 and the predetermined block in the template search range is calculated. The position of the block is sequentially moved within the template range 411, and the sum of absolute values of the differences of the respective blocks is added to obtain a value at the position of the template. Then, the position where the sum of absolute values of the differences becomes the smallest when the template is sequentially moved within the template search range and its value are searched. In step S404, the absolute sum of the minimum differences is compared with a predetermined threshold value set in advance. If the sum of absolute values of the differences is less than or equal to the threshold value, an image including the tracking point (included in the template) has appeared again, so it is determined that the normal processing can be restored, and the processing Returns to the normal processing of step S51 of FIG.

そして上述したように、図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 region estimation range 402 is set based on the vectors 406 and 407 with the tracking point 405 as a reference.

ただし、図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 activity calculation unit 602 in FIG.

あるいはまた、今回の最小の差分絶対値和を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 control unit 59 sets whether exception processing (tracking of the tracking point in exception processing) can be continued based on the result of the continuation determination processing (steps S466 and S468 in FIG. 30 described later). (Based on the flag that was set). If the exception process can be continued, the process returns to step S402, and the subsequent processes are repeatedly executed. That is, the process of waiting until the tracking point appears again is repeatedly executed.

これに対して、ステップ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 control unit 59 performs the exception process (tracking the tracking point in the exception process). Is determined based on the result of the continuation determination process (based on a flag set in steps S466 and S468 in FIG. 30 described later). If the exception process can be continued, the process returns to step S442, and the subsequent processes are repeatedly executed. That is, the process of waiting until the tracking point appears again is repeatedly executed.

これに対して、ステップ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 control unit 59 executes a process of adding 1 to the number of elapsed frames as a variable. The number of elapsed frames is previously reset to 0 in the exception process initialization process (step S426 in FIG. 26) in step S401 in FIG.

次にステップS462において、制御部59は、シーンチェンジがあるか否かを判定する。シーンチェンジがあるか否かは、シーンチェンジ検出部53が、常にその検出処理を実行しており、その検出結果に基づいて判定が可能である。シーンチェンジがある場合には、ステップS463に進み、制御部59は変数としてのシーンチェンジ数に1を加算する。このシーンチェンジ数も、図26のステップS426の初期化処理において0にリセットされている。通常処理から例外処理への移行時にシーンチェンジが発生していない場合には、ステップS463の処理はスキップされる。   Next, in step S462, the control unit 59 determines whether there is a scene change. Whether or not there is a scene change can be determined based on the detection result of the scene change detection unit 53 always executing the detection process. If there is a scene change, the process proceeds to step S463, and the control unit 59 adds 1 to the number of scene changes as a variable. The number of scene changes is also reset to 0 in the initialization process of step S426 in FIG. If no scene change has occurred during the transition from the normal process to the exception process, the process of step S463 is skipped.

次に、ステップS464において、制御部59は、現在設定されているモードがシーンチェンジであるか否かを判定する。このモードは、図26のステップS422,S423において設定されたものである。現在設定されているモードがシーンチェンジである場合には、ステップS467に進み、制御部59は、シーンチェンジ数が予め設定されている閾値THscより小さいか否かを判定する。シーンチェンジ数が閾値THscより小さい場合には、ステップS466に進み、制御部59は継続可のフラグを設定し、シーンチェンジ数が閾値THsc以上である場合には、ステップS468に進み、継続不可のフラグを設定する。   Next, in step S464, the control unit 59 determines whether or not the currently set mode is a scene change. This mode is set in steps S422 and S423 in FIG. When the currently set mode is a scene change, the process proceeds to step S467, and the control unit 59 determines whether or not the number of scene changes is smaller than a preset threshold value THsc. If the number of scene changes is smaller than the threshold value THsc, the process proceeds to step S466, and the control unit 59 sets a flag that allows continuation. If the number of scene changes is equal to or greater than the threshold value THsc, the process proceeds to step S468 and cannot be continued. Set the flag.

一方、ステップ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 control unit 59 determines whether or not the number of elapsed frames is smaller than the threshold value THfr. Determine whether. The number of elapsed frames is also reset to 0 in advance in step S426 of the exception process initialization process of FIG. If it is determined that the number of elapsed frames is smaller than the threshold value THfr, a continuation flag is set in step S466, and if it is determined that the number of elapsed frames is greater than or equal to the threshold value THfr, the process continues in step S468. A disabled flag is set.

このように、テンプレートマッチング処理時におけるシーンチェンジ数が閾値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 motion estimation unit 52 in FIG. 3 will be described with reference to FIG. In this embodiment, the input image is supplied to the evaluation value calculation unit 601, the activity calculation unit 602, and the motion vector detection unit 606. The evaluation value calculation unit 601 calculates an evaluation value related to the degree of coincidence between the two objects associated by the motion vector, and supplies the evaluation value to the normalization processing unit 604. The activity calculation unit 602 calculates the activity of the input image and supplies it to the threshold value determination unit 603 and the normalization processing unit 604. The motion vector detection unit 606 detects a motion vector from the input image and supplies it to the evaluation value calculation unit 601 and the integration processing unit 605.

正規化処理部604は、評価値算出部601より供給された評価値を、アクティビティ算出部602より供給されたアクティビティに基づいて正規化し、得られた値を統合処理部605に供給する。閾値判定部603は、アクティビティ算出部602より供給されたアクティビティを所定の閾値と比較し、その判定結果を統合処理部605に供給する。統合処理部605は、正規化処理部604から供給された正規化情報と、閾値判定部603より供給された判定結果に基づいて、動きベクトルの確度を演算し、得られた確度を動きベクトル検出部606より供給された動きベクトルとともに出力する。   The normalization processing unit 604 normalizes the evaluation value supplied from the evaluation value calculation unit 601 based on the activity supplied from the activity calculation unit 602, and supplies the obtained value to the integration processing unit 605. The threshold determination unit 603 compares the activity supplied from the activity calculation unit 602 with a predetermined threshold and supplies the determination result to the integration processing unit 605. The integration processing unit 605 calculates the accuracy of the motion vector based on the normalization information supplied from the normalization processing unit 604 and the determination result supplied from the threshold value determination unit 603, and the obtained accuracy is detected by the motion vector detection. This is output together with the motion vector supplied from the unit 606.

次に、図32のフローチャートを参照して、動き推定部52の動き推定処理について説明する。動きベクトルは、点に対するものとして求められているが、その確度は、動きベクトルにより対応付けられる2つの点の近傍の、例えば点を中心とする、小ブロックの画像データを用いて計算される。ステップS601において、動きベクトル検出部606は、入力画像から動きベクトルを検出する。この検出には、例えばブロックマッチング方式や勾配法が用いられる。検出された動きベクトルは、評価値算出部601と統合処理部605に供給される。   Next, the motion estimation process of the motion estimation unit 52 will be described with reference to the flowchart of FIG. Although the motion vector is obtained for a point, the accuracy is calculated using image data of a small block in the vicinity of two points associated by the motion vector, for example, centering on the point. In step S601, the motion vector detection unit 606 detects a motion vector from the input image. For this detection, for example, a block matching method or a gradient method is used. The detected motion vector is supplied to the evaluation value calculation unit 601 and the integration processing unit 605.

ステップS602において、評価値算出部601は評価値を算出する。具体的には、例えば、動きベクトルで対応付けられる2つの点を中心とする2つのブロックの画素値の差分絶対値和が算出される。すなわち、ステップS601で動きベクトル検出部606により検出された動きベクトルV(vx,vy)と、それに基づく時間的に前のフレームの画像Fi上の点P(Xp,Yp)、並びに時間的に後のフレームの画像Fj上の点Q(Xq,Yq)の関係は次式で表される。   In step S602, the evaluation value calculation unit 601 calculates an evaluation value. Specifically, for example, the sum of absolute differences of pixel values of two blocks centered on two points associated with motion vectors is calculated. That is, the motion vector V (vx, vy) detected by the motion vector detection unit 606 in step S601, the point P (Xp, Yp) on the image Fi of the previous frame based on the motion vector V (vx, vy), and the time later The relationship of the point Q (Xq, Yq) on the image Fj of the frame is expressed by the following equation.

Figure 0004826316
Figure 0004826316

評価値算出部601は点Pを中心とするブロックと、点Qを中心とするブロックについて、次式に基づいて評価値Eval(P,Q,i,j)を演算する。   The evaluation value calculation unit 601 calculates an evaluation value Eval (P, Q, i, j) for a block centered on the point P and a block centered on the point Q based on the following equation.

Figure 0004826316
Figure 0004826316

各ブロックは、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 value calculation unit 601 supplies the generated evaluation value to the normalization processing unit 604.

ステップS603において、アクティビティ算出部602は、入力画像からアクティビティを算出する。アクティビティは、画像の複雑さを表す特徴量であり、図33に示されるように、各画素毎に注目画素Y(x,y)と、それに隣接する8画素Y(x+i,y+j)との差分絶対値和の平均値が、注目画素位置のアクティビティActivity(x,y)として次式に基づいて演算される。   In step S603, the activity calculation unit 602 calculates an activity from the input image. The activity is a feature amount representing the complexity of the image. As shown in FIG. 33, the difference between the pixel of interest Y (x, y) and the adjacent 8 pixels Y (x + i, y + j) for each pixel is shown in FIG. The average value of the sum of absolute values is calculated based on the following formula as activity Activity (x, y) at the target pixel position.

Figure 0004826316
Figure 0004826316

図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.

Figure 0004826316
Figure 0004826316

なお、アクティビティとしては、この他、分散値、ダイナミックレンジなどとすることも可能である。   In addition, the activity may be a variance value, a dynamic range, or the like.

閾値判定部603は、ステップS604において、アクティビティ算出部602により算出されたブロックアクティビティを予め設定されている所定の閾値と比較する。そして、入力されたブロックアクティビティが閾値より大きいか否かを表すフラグを統合処理部605に出力する。   In step S604, the threshold determination unit 603 compares the block activity calculated by the activity calculation unit 602 with a predetermined threshold set in advance. Then, a flag indicating whether or not the input block activity is larger than the threshold value is output to the integration processing unit 605.

具体的には、実験の結果、ブロックアクティビティと評価値は、動きベクトルをパラメータとして、図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 curve 621 in the figure. On the other hand, if an incorrect motion (incorrect motion vector) is given, the block activity and the evaluation value are distributed in the region R2 on the left side of the figure from the curve 622 (the region above the curve 622). There is almost no distribution in the region other than R2 and the region other than the region R1 below the curve 621). Curves 621 and 622 intersect at point P. The value of the block activity at this point P is set as the threshold value THa. The threshold value THa means that if the value of the block activity is smaller than that, the corresponding motion vector may be incorrect (this will be described in detail later). The threshold determination unit 603 outputs a flag indicating whether the block activity value input from the activity calculation unit 602 is greater than the threshold THa to the integration processing block 605.

ステップS605において、正規化処理部604は、正規化処理を実行する。具体的には、正規化処理部604は、次式に従って動きベクトル確度VCを演算する。   In step S605, the normalization processing unit 604 executes normalization processing. Specifically, the normalization processing unit 604 calculates the motion vector accuracy VC according to the following equation.

Figure 0004826316
Figure 0004826316

但し、動きベクトル確度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 straight line 623 whose position on the graph of FIG. Therefore, it indicates whether the region is in the lower region or the upper region in the figure. That is, if the slope of the straight line 623 is 1, and the value obtained by dividing the evaluation value by the block activity is larger than 1, the points corresponding to the value are points distributed in the area above the straight line 623. Means that. The motion vector accuracy VC obtained by subtracting this value from 1 means that the smaller the value, the higher the possibility that the corresponding points are distributed in the region R2.

これに対して、評価値をブロックアクティビティで割り算して得られた値が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 straight line 623 in the figure. The motion vector accuracy VC at that time means that the larger the value (closer to 0), the corresponding points are distributed in the region R1. The normalization processing unit 604 outputs the motion vector accuracy VC obtained by the calculation in this way to the integration processing unit 605.

ステップS606において、統合処理部605は、統合処理を実行する。この統合処理の詳細は、図35のフローチャートに示されている。   In step S606, the integration processing unit 605 executes integration processing. Details of this integration processing are shown in the flowchart of FIG.

統合処理部605は、ステップS631において、ブロックアクティビティが閾値THa以下か否かを判定する。この判定は、閾値判定部603より供給されたフラグに基づいて行われる。ブロックアクティビティが閾値THa以下である場合には、ステップS632において統合処理部605は、正規化処理部604が算出した動きベクトル確度VCの値を0に設定する。ステップS631において、アクティビティの値が閾値THaより大きいと判定された場合には、ステップS632の処理はスキップされ、正規化処理部604で生成された動きベクトル確度VCの値が、そのまま動きベクトルとともに出力される。   In step S631, the integration processing unit 605 determines whether the block activity is equal to or less than the threshold value THa. This determination is performed based on the flag supplied from the threshold determination unit 603. If the block activity is equal to or less than the threshold THa, the integration processing unit 605 sets the value of the motion vector accuracy VC calculated by the normalization processing unit 604 to 0 in step S632. If it is determined in step S631 that the activity value is greater than the threshold value THa, the processing in step S632 is skipped, and the value of the motion vector accuracy VC generated by the normalization processing unit 604 is output as it is together with the motion vector. Is done.

これは、正規化処理部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 normalization processing unit 604 is positive. Because there is. That is, as shown in FIG. 34, between the origin O and the point P, the curve 622 protrudes below the curve 621 in the drawing (downward from the straight line 623). In a region R3 in which the value of the block activity is smaller than the threshold value Tha and surrounded by the curves 621 and 622, the value obtained by dividing the evaluation value by the block activity is distributed in both the regions R1 and R2. There is a high possibility that a correct motion vector is not obtained.

そこで、このような分布状態である場合には、動きベクトルの確度は低いものとして処理するようにする。このため、ステップ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 motion estimation unit 54 of FIG. In this configuration example, the background motion estimator 54 includes a frequency distribution calculator 651 and a background motion determiner 652.

頻度分布算出部651は、動きベクトルの頻度分布を算出する。ただし、この頻度には、動き推定部52より供給される動きベクトル確度VCを用いることで、確からしい動きに重みが与えられるように、重み付けが行われる。背景動き決定部652は、頻度分布算出部651により算出された頻度分布に基づいて、頻度が最大となる動きを背景動きとして決定する処理を行い、領域推定関連処理部55へ出力する。   The frequency distribution calculation unit 651 calculates a frequency distribution of motion vectors. However, this frequency is weighted so that a likely motion is weighted by using the motion vector accuracy VC supplied from the motion estimation unit 52. Based on the frequency distribution calculated by the frequency distribution calculation unit 651, the background motion determination unit 652 performs a process of determining a motion with the maximum frequency as a background motion, and outputs the background motion to the region estimation related processing unit 55.

図37を参照して、背景動き推定部54の背景動き推定処理について説明する。   The background motion estimation process of the background motion estimation unit 54 will be described with reference to FIG.

ステップS651において、頻度分布算出部651は、動き頻度分布を算出する。具体的には、頻度分布算出部651は、背景動きの候補としての動きベクトルのx座標とy座標がそれぞれ基準点から±16画素分の範囲で表されるとすると、1089個(=16×2+1)×(16×2+1))の箱、すなわち動きベクトルがとり得る値に対応する座標分の箱を用意し、動きベクトルが発生した場合、その動きベクトルに対応する座標に1を加算する。このようにすることで、動きベクトルの頻度分布を算出することができる。   In step S651, the frequency distribution calculation unit 651 calculates a motion frequency distribution. Specifically, the frequency distribution calculation unit 651 assumes that the x and y coordinates of the motion vector as a background motion candidate are expressed in a range of ± 16 pixels from the reference point, respectively (1089 (= 16 × 2 + 1) × (16 × 2 + 1)), that is, a box for coordinates corresponding to possible values of a motion vector, and when a motion vector is generated, 1 is added to the coordinates corresponding to the motion vector. In this way, the motion vector frequency distribution can be calculated.

ただし、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 distribution calculation unit 651 does not add a value 1 to a box (coordinates) corresponding to the motion vector, but a value obtained by multiplying the value 1 by the motion vector accuracy VC (= Motion vector accuracy VC). The value of the motion vector accuracy VC is normalized as a value between 0 and 1, and the closer the value is to 1, the higher the accuracy. Therefore, the frequency distribution obtained in this way is a frequency distribution obtained by weighting motion vectors based on their accuracy. This reduces the risk that a motion with low accuracy is determined as the background motion.

次に、ステップS652において、頻度分布算出部651は、動き頻度分布を算出する処理を全ブロックについて終了したか否かを判定する。まだ処理していないブロックが存在する場合には、ステップS651に戻り、次のブロックについてステップS651の処理が実行される。   Next, in step S652, the frequency distribution calculation unit 651 determines whether or not the process of calculating the motion frequency distribution has been completed for all blocks. If there is a block that has not yet been processed, the process returns to step S651, and the process of step S651 is executed for the next block.

以上のようにして、全画面に対して動き頻度分布算出処理が行われ、ステップ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 motion determination unit 652 selects the frequency having the maximum frequency from the frequencies calculated by the frequency distribution calculation unit 651, and determines the motion vector corresponding to the frequency as the motion vector of the background motion. The motion vector of the background motion is supplied to the region estimation related processing unit 55, and is used for, for example, a determination process of whether or not the full screen motion matches the background motion in step S204 of FIG.

図38は、図3のシーンチェンジ検出部53の詳細な構成例を表している。この例においては、動きベクトル確度平均算出部671と閾値判定部672によりシーンチェンジ検出部53が構成されている。   FIG. 38 shows a detailed configuration example of the scene change detection unit 53 of FIG. In this example, the scene change detection unit 53 is configured by the motion vector accuracy average calculation unit 671 and the threshold determination unit 672.

動きベクトル確度平均算出部671は、動き推定部52より供給された動きベクトル確度VCの全画面の平均値を算出し、閾値判定部672に出力する。閾値判定部672は、動きベクトル確度平均算出部671より供給された平均値を、予め定められている閾値と比較し、その比較結果に基づいて、シーンチェンジであるか否かを判定し、判定結果を制御部59に出力する。   The motion vector accuracy average calculation unit 671 calculates the average value of all the screens of the motion vector accuracy VC supplied from the motion estimation unit 52 and outputs the average value to the threshold determination unit 672. The threshold value determination unit 672 compares the average value supplied from the motion vector accuracy average calculation unit 671 with a predetermined threshold value, and determines whether it is a scene change based on the comparison result. The result is output to the control unit 59.

次に、図39のフローチャートを参照して、シーンチェンジ検出部53の動作について説明する。ステップS681において、動きベクトル確度平均算出部671は、ベクトル確度の総和を算出する。具体的には、動きベクトル確度平均算出部671は、動き推定部52の統合処理部605より出力された各ブロック毎に算出された動きベクトル確度VCの値を加算する処理を実行する。   Next, the operation of the scene change detection unit 53 will be described with reference to the flowchart of FIG. In step S681, the motion vector accuracy average calculation unit 671 calculates the sum of vector accuracy. Specifically, the motion vector accuracy average calculation unit 671 executes a process of adding the value of the motion vector accuracy VC calculated for each block output from the integration processing unit 605 of the motion estimation unit 52.

ステップS682において、動きベクトル確度平均算出部671は、ベクトル確度VCの総和を算出する処理が全ブロックについて終了したか否かを判定し、まだ終了していない場合には、ステップS681の処理を繰り返す。この処理を繰り返すことで、1画面分の各ブロックの動きベクトル確度VCの総和が算出される。ステップS682において1画面全部についての動きベクトル確度VCの総和の算出処理が終了したと判定された場合、ステップS683に進み、動きベクトル確度平均算出部671は、ベクトル確度VCの平均値を算出する処理を実行する。具体的には、ステップS681の処理で算出された1画面分のベクトル確度VCの総和を、足し込まれたブロック数で除算して得られた値が平均値として算出される。   In step S682, the motion vector accuracy average calculation unit 671 determines whether or not the processing for calculating the sum of the vector accuracy VC has been completed for all the blocks. If the processing has not yet been completed, the processing of step S681 is repeated. . By repeating this process, the sum of motion vector accuracy VC of each block for one screen is calculated. If it is determined in step S682 that the calculation process of the sum of motion vector accuracy VCs for all one screen has been completed, the process advances to step S683, and the motion vector accuracy average calculation unit 671 calculates the average value of the vector accuracy VC. Execute. Specifically, a value obtained by dividing the sum of the vector accuracy VC for one screen calculated in the process of step S681 by the number of added blocks is calculated as an average value.

ステップS684において、閾値判定部672は、ステップS683の処理で動きベクトル確度平均算出部671により算出された動きベクトル確度VCの平均値を、予め設定されている閾値と比較し、閾値より小さいか否かを判定する。一般的に、動画中の時刻が異なる2フレーム間でシーンチェンジが発生すると、対応する画像が存在しないため、動きベクトルを算出しても、その動きベクトルは確からしくないことになる。   In step S684, the threshold value determination unit 672 compares the average value of the motion vector accuracy VC calculated by the motion vector accuracy average calculation unit 671 in the process of step S683 with a preset threshold value, and whether or not the threshold value is smaller than the threshold value. Determine whether. In general, when a scene change occurs between two frames having different times in a moving image, there is no corresponding image, so even if a motion vector is calculated, the motion vector is not certain.

そこで、ベクトル確度VCの平均値が閾値より小さい場合には、ステップS685において、閾値判定部672はシーンチェンジフラグをオンし、閾値より小さくない場合(閾値以上である場合)、ステップS586において、シーンチェンジフラグをオフにする。シーンチェンジフラグのオンは、シーンチェンジがあったことを表し、そのオフは、シーンチェンジが無いことを表す。   Therefore, if the average value of the vector accuracy VC is smaller than the threshold value, the threshold value determination unit 672 turns on the scene change flag in step S685. If the average value of the vector accuracy VC is not smaller than the threshold value (if it is greater than or equal to the threshold value), in step S586 Turn off the change flag. When the scene change flag is on, it indicates that there is a scene change, and when the scene change flag is off, it indicates that there is no scene change.

このシーンチェンジフラグは、制御部59へ供給され、図26のステップS421におけるシーンチェンジの有無の判定に利用される。   The scene change flag is supplied to the control unit 59, and is used for determining whether or not there is a scene change in step S421 in FIG.

次に、図40を参照して、図3の提示位置算出部42の詳細な構成例と、その動作について説明する。図40は提示位置算出部42の機能的構成例を示すブロック図である。この例では、提示位置算出部42は、乗り換え量算出部701、追尾点記憶部702、反映乗り換え量算出部703、中心点設定部705、および中心点記憶部706により構成される。   Next, a detailed configuration example and operation of the presentation position calculation unit 42 in FIG. 3 will be described with reference to FIG. FIG. 40 is a block diagram illustrating a functional configuration example of the presentation position calculation unit 42. In this example, the presentation position calculation unit 42 includes a transfer amount calculation unit 701, a tracking point storage unit 702, a reflected transfer amount calculation unit 703, a center point setting unit 705, and a center point storage unit 706.

提示位置算出部42の乗り換え量算出部701および中心点設定部705には、追尾処理部41からの追尾点に関する情報(追尾点情報)およびその追尾点に対応する動きベクトル(すなわち、動き量)が入力される。追尾点に関する情報は、例えば、追尾点の位置情報やその乗り換えの履歴情報などで構成される。   In the transfer amount calculation unit 701 and the center point setting unit 705 of the presentation position calculation unit 42, information on the tracking point (tracking point information) from the tracking processing unit 41 and a motion vector (that is, a motion amount) corresponding to the tracking point. Is entered. The information regarding the tracking point includes, for example, position information of the tracking point and history information of the transfer.

乗り換え量算出部701は、入力に基づいて、追尾処理部41の追尾点決定部57により決定された追尾点が、乗り換え点に乗り換えられたものであるか否かを判定し、判定結果に応じて、追尾点決定部57により現フレームにおいて決定された追尾点(以下、現在追尾点とも称する)の位置情報、追尾点記憶部702に記憶される前フレームにおいて求められた追尾点(以下、過去追尾点とも称する)の位置情報、並びに、現在追尾点に対応する動きベクトルに基づき、乗り換えベクトルを算出する。   Based on the input, the transfer amount calculation unit 701 determines whether or not the tracking point determined by the tracking point determination unit 57 of the tracking processing unit 41 has been changed to a transfer point, and according to the determination result. Position information of the tracking point (hereinafter also referred to as the current tracking point) determined in the current frame by the tracking point determination unit 57 and the tracking point (hereinafter referred to as the past) determined in the previous frame stored in the tracking point storage unit 702. A transfer vector is calculated based on the position information of the tracking point) and the motion vector corresponding to the current tracking point.

すなわち、乗り換えベクトルとは、過去追尾点および乗り換え点に基づいて求められる、過去追尾点から乗り換え点への動き量である。なお、図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 tracking processing unit 41, and the transfer vector can be used.

追尾点記憶部702には、乗り換え量算出部701に入力された現在追尾点の位置情報が、次のフレームの演算のため、過去追尾点の位置情報として記憶される。   In the tracking point storage unit 702, the position information of the current tracking point input to the transfer amount calculation unit 701 is stored as the position information of the past tracking point for the calculation of the next frame.

反映乗り換え量算出部703は、乗り換え量算出部701により算出された乗り換えベクトル、乗り換え残り量記憶部704に記憶されている前フレームにおける乗り換え残りベクトル、および制御部29などにより予め設定されている1フレームの演算において反映可能な動き量、すなわち、最大反映乗り換えベクトルであるステップ量に基づいて、乗り換えベクトルのうち、現在のフレームに反映させる反映乗り換えベクトルと、次のフレームに残す乗り換え残りベクトルを算出する。   The reflected transfer amount calculation unit 703 is preset by the transfer vector calculated by the transfer amount calculation unit 701, the transfer remaining vector in the previous frame stored in the transfer remaining amount storage unit 704, the control unit 29, and the like. Based on the amount of motion that can be reflected in the frame calculation, that is, the step amount that is the maximum reflected transfer vector, the transfer change vector to be reflected in the current frame and the transfer remaining vector to be left in the next frame are calculated. To do.

反映乗り換え量算出部703により算出された乗り換え残りベクトルは、次のフレームの演算のために、乗り換え残り量記憶部704に記憶される。   The remaining transfer vector calculated by the reflected transfer amount calculation unit 703 is stored in the remaining transfer amount storage unit 704 for the calculation of the next frame.

乗り換え残り量記憶部704には、反映乗り換え量算出部703により前フレームにおいて算出された乗り換え残りベクトルが記憶されている。   The remaining transfer amount storage unit 704 stores the remaining transfer vector calculated in the previous frame by the reflected transfer amount calculation unit 703.

中心点設定部705は、反映乗り換え量算出部703により算出された反映乗り換えベクトルに基づいて、オブジェクトの追尾(すなわち、追尾結果)を提示する際の基準となる提示位置、すなわち、ズーム画像を作成する時のズームの中心となる提示中心点を算出する。   The center point setting unit 705 creates a presentation position, that is, a zoom image, which serves as a reference when presenting the tracking of the object (that is, the tracking result) based on the reflected transfer vector calculated by the reflected transfer amount calculating unit 703. The presentation center point that is the center of zooming when calculating is calculated.

具体的には、中心点設定部705は、反映乗り換え量算出部703により算出された反映乗り換えベクトルに基づいて、追尾処理部41の追尾点決定部57により決定された現在追尾点、または、中心点記憶部706に記憶されている前のフレームにおける提示中心点(以下、過去中心点と称する)、反映乗り換え量算出部703により算出された反映乗り換えベクトル、および、追尾処理部41の動き推定部52からの動きベクトルを用いて、現在のフレームにおける提示中心点(以下、現在中心点と称する)を算出する。中心点設定部705により算出された現在中心点の位置情報は、提示位置情報として、ズーム画像作成部24に出力される。   Specifically, the center point setting unit 705 determines the current tracking point or the center determined by the tracking point determination unit 57 of the tracking processing unit 41 based on the reflection transfer vector calculated by the reflection transfer amount calculation unit 703. The presentation center point (hereinafter referred to as past center point) in the previous frame stored in the point storage unit 706, the reflection transfer vector calculated by the reflection transfer amount calculation unit 703, and the motion estimation unit of the tracking processing unit 41 Using the motion vector from 52, the presentation center point in the current frame (hereinafter referred to as the current center point) is calculated. The position information of the current center point calculated by the center point setting unit 705 is output to the zoom image creating unit 24 as presentation position information.

中心点記憶部706には、算出された現在中心点の位置情報が、次のフレームの演算のため、過去中心点の位置情報として記憶される。   The center point storage unit 706 stores the calculated position information of the current center point as the position information of the past center point for the calculation of the next frame.

次に、図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 control unit 29 sets initial values for the remaining transfer vector f, the past center point Rn-1, and the past tracking point Pn-1. That is, 0 is set in the remaining transfer vector f in the remaining transfer amount storage unit 704, and the past center point Rn-1 in the center point storage unit 706 and the past tracking point Pn-1 in the tracking point storage unit 702 are initialized. The tracking set point is set.

図10のステップS125において追尾点決定部57より追尾点が決定されると、決定された追尾点に関する情報が入力される。すなわち、乗り換え量算出部701および中心点設定部705には、追尾点に関する情報として、上述したように、追尾点の位置情報、並びに、決定された追尾点が、図10のステップS129で乗り換えられたものであるか否かを示す追尾点の乗り換え履歴情報などが入力される。   When the tracking point is determined by the tracking point determination unit 57 in step S125 of FIG. 10, information regarding the determined tracking point is input. That is, as described above, the transfer amount calculation unit 701 and the center point setting unit 705 transfer the tracking point position information and the determined tracking point in step S129 of FIG. The tracking point transfer history information indicating whether or not the data has been updated is input.

ステップS702において、乗り換え量算出部701は、入力された追尾点に関する情報に基づいて、追尾点決定部57により決定された現在追尾点Pnが、乗り換えられたものであるか否かを判定する。ステップS702において、現在追尾点Pnが乗り換えられたものであると判定された場合、処理は、ステップS703に進み、乗り換え量算出部701は、現在追尾点Pn、追尾点記憶部702に記憶されている過去追尾点Pn-1、および、動き推定部52からの動きベクトルmを用いて、乗り換えベクトルdを算出する。   In step S702, the transfer amount calculation unit 701 determines whether or not the current tracking point Pn determined by the tracking point determination unit 57 has been changed based on the input information regarding the tracking point. If it is determined in step S702 that the current tracking point Pn has been changed, the process proceeds to step S703, and the transfer amount calculation unit 701 is stored in the current tracking point Pn and the tracking point storage unit 702. The transfer vector d is calculated using the past tracking point Pn−1 and the motion vector m from the motion estimation unit 52.

図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 amount calculation unit 701 sets 0 (0 vector) as the transfer vector d.

ステップS703またはS704で求められた乗り換えベクトルdは、反映乗り換え量算出部703に入力される。   The transfer vector d obtained in step S703 or S704 is input to the reflected transfer amount calculation unit 703.

ステップS705において、反映乗り換え量算出部703は、乗り換え量算出部701からの乗り換えベクトルdと、乗り換え残り量記憶部704から読み出した前フレームにおける乗り換え残りベクトルfn-1の和の絶対値が、ステップ量以上であるか否かを判定する。ステップS705において、乗り換えベクトルdと乗り換え残りベクトルfn-1の和の絶対値がステップ量以上であると判定された場合、処理は、ステップS706に進み、さらに、反映乗り換え量算出部703は、乗り換えベクトルdと乗り換え残りベクトルfn-1の和が0よりも大きいか否かを判定する。   In step S705, the reflected transfer amount calculation unit 703 determines that the absolute value of the sum of the transfer vector d from the transfer amount calculation unit 701 and the transfer remaining vector fn-1 in the previous frame read from the transfer remaining amount storage unit 704 is It is determined whether or not the amount is greater than or equal to the amount. 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 greater than or equal to the step amount, the process proceeds to step S706, and the reflected transfer amount calculation unit 703 further transfers the transfer amount. It is determined whether or not the sum of the vector d and the remaining transfer vector fn-1 is greater than zero.

ステップ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 amount calculation unit 703 Uses the step amount, which is the maximum reflected transfer vector to be reflected this time, to determine the reflected transfer vector e, and uses the difference obtained by subtracting the step amount from the sum of the transfer vector d and the transfer remaining vector fn-1 of the previous frame. Then, a transfer remaining vector fn is obtained.

すなわち、ステップ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 amount calculation unit 703 Uses the step amount to determine the reflected transfer vector e, and uses the sum of the transfer vector d and the remaining transfer vector fn-1 of the previous frame plus the step amount to determine the remaining transfer vector fn.

すなわち、ステップ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 point setting unit 705. At this time, the remaining transfer vector fn is stored in the remaining transfer amount storage unit 704 as the remaining transfer vector fn-1 of the previous frame.

図42のステップS710において、中心点設定部705は、反映乗り換え量算出部703により求められた反映乗り換えベクトルeが0であるか否かを判定し、反映乗り換えベクトルeが0であると判定した場合、ステップS711において、現在追尾点Pnを、現在中心点Rnとする。   In step S710 of FIG. 42, the center point setting unit 705 determines whether or not the reflected transfer vector e obtained by the reflected transfer amount calculation unit 703 is 0, and determines that the reflected transfer vector e is 0. In step S711, the current tracking point Pn is set as the current center point Rn.

すなわち、現在追尾点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 point determination unit 57 The tracking point Pn is set as it is as the current center point Rn.

一方、反映乗り換えベクトル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 point setting unit 705 reflects the current center point Rn on the past center point Rn-1 read from the center point storage unit 706. This is obtained based on the motion vector m from the motion estimation unit 52 while reflecting the transfer vector e.

すなわち、ステップ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 image creating unit 24 as presentation position information.

ステップS713において、中心点設定部705は、現在中心点Rnを、過去中心点Rn-1として、中心点記憶部706に記憶させ、乗り換え量算出部701は、現在追尾点Pnを、過去追尾点Pn-1として追尾点記憶部702に記憶させる。ステップS713の後、処理は、ステップS702に戻り、ユーザにより追尾終了が指示されるまで、次のフレームについての処理が繰り返される。   In step S713, the center point setting unit 705 stores the current center point Rn in the center point storage unit 706 as the past center point Rn-1, and the transfer amount calculation unit 701 stores the current tracking point Pn in the past tracking point. It is stored in the tracking point storage unit 702 as Pn-1. After step S713, the process returns to step S702, and the process for the next frame is repeated until the end of tracking is instructed by the user.

なお、上述したように、ステップ量を予め設定される今回反映させる最大反映乗り換えベクトルとして説明したが、ステップ量は、現時点で後どのくらいのステップで追尾点とズーム点が一致するかの度合いに応じて可変に算出することもできる。   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 object tracking unit 23 is provided with a presentation position that serves as a reference when presenting the tracking result (that is, when a zoom image is presented), separately from the tracking point, When changing tracking points, instead of reflecting all the amount of movement changed by the tracking point on the current frame presentation position, it is reflected step by step by a predetermined amount of the movement amount changed by the tracking point. Since it did in this way, the discomfort produced in the image displayed by changing the tracking point can be reduced.

図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 frame numbers 0 to 20 in the time direction, and the vertical axis represents coordinate values 0 to 450.

図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 object tracking unit 23 in FIG. 1, the object to be tracked is rotated (FIG. 6), occlusion occurs (FIG. 7), or the object tracking point is changed by a scene change. Even when the image is temporarily not displayed (FIG. 8), the moving object (tracking point) in the image can be accurately tracked.

そして、このようにして正確に追尾されるオブジェクトの追尾点に基づいて、提示位置を算出し、算出した提示位置の情報を、図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 image creation unit 24 as a tracking result by the object tracking unit 23 of FIG. As a result of the output, the zoom image creation unit 24 creates a zoom image centered on the presentation position determined to be reflected step by step. As a result, as described above with reference to the graph of FIG. 44, the user feels less uncomfortable with the image displayed on the image display 26.

すなわち、従来においては、ズーム率が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.

本発明を適用したテレビジョン受像機の構成例を示すブロック図である。It is a block diagram which shows the structural example of the television receiver to which this invention is applied. 図1のテレビジョン受像機の画像表示処理を説明するフローチャートである。It is a flowchart explaining the image display process of the television receiver of FIG. 図1のオブジェクト追尾部の構成例を示すブロック図である。It is a block diagram which shows the structural example of the object tracking part of FIG. 追尾処理を説明するフローチャートである。It is a flowchart explaining a tracking process. 追尾点算出処理を説明するフローチャートである。It is a flowchart explaining a tracking point calculation process. 追尾対象が回転する場合の追尾を説明する図である。It is a figure explaining tracking when a tracking object rotates. オクルージョンが起きる場合の追尾を説明する図である。It is a figure explaining the tracking when an occlusion occurs. シーンチェンジが起きる場合の追尾を説明する図である。It is a figure explaining the tracking when a scene change occurs. 図3の追尾処理部の構成例を示すブロック図である。It is a block diagram which shows the structural example of the tracking process part of FIG. 通常処理を説明するフローチャートである。It is a flowchart explaining a normal process. 通常処理の初期化処理を説明するフローチャートである。It is a flowchart explaining the initialization process of a normal process. 乗り換え候補抽出処理を説明する図である。It is a figure explaining a transfer candidate extraction process. 領域推定関連処理部の構成例を示すブロック図である。It is a block diagram which shows the structural example of an area | region estimation related process part. 領域推定関連処理を説明するフローチャートである。It is a flowchart explaining an area | region estimation related process. 領域推定処理を説明するフローチャートである。It is a flowchart explaining an area | region estimation process. サンプル点を決定する処理を説明する図である。It is a figure explaining the process which determines a sample point. 領域推定範囲の更新処理を説明するフローチャートである。It is a flowchart explaining the update process of an area estimation range. 領域推定範囲の更新を説明する図である。It is a figure explaining the update of a region estimation range. 領域推定範囲の更新を説明する図である。It is a figure explaining the update of a region estimation range. 乗り換え候補抽出処理を説明するフローチャートである。It is a flowchart explaining a transfer candidate extraction process. テンプレート作成処理を説明するフローチャートである。It is a flowchart explaining a template creation process. テンプレート作成を説明する図である。It is a figure explaining template creation. テンプレート作成を説明する図である。It is a figure explaining template creation. テンプレートと追尾点の位置関係を説明する図である。It is a figure explaining the positional relationship of a template and a tracking point. 例外処理を説明するフローチャートである。It is a flowchart explaining exception processing. 例外処理の初期化処理を説明するフローチャートである。It is a flowchart explaining the initialization process of an exception process. テンプレートの選択を説明する図である。It is a figure explaining selection of a template. 探索範囲の設定を説明する図である。It is a figure explaining the setting of a search range. 例外処理の初期化処理の他の例を説明するフローチャートである。It is a flowchart explaining the other example of the initialization process of an exception process. 継続判定処理を説明するフローチャートである。It is a flowchart explaining a continuation determination process. 動き推定部の構成例を示すブロック図である。It is a block diagram which shows the structural example of a motion estimation part. 動き推定処理を説明するフローチャートである。It is a flowchart explaining a motion estimation process. アクティビティの算出を説明する図である。It is a figure explaining calculation of activity. 評価値とアクティビティの関係を説明する図である。It is a figure explaining the relationship between an evaluation value and activity. 統合処理を説明するフローチャートである。It is a flowchart explaining an integration process. 背景動き推定部の構成例を示すブロック図である。It is a block diagram which shows the structural example of a background motion estimation part. 背景動き推定処理を説明するフローチャートである。It is a flowchart explaining a background motion estimation process. シーンチェンジ検出部53の構成例を示すブロック図である。5 is a block diagram illustrating a configuration example of a scene change detection unit 53. FIG. シーンチェンジ検出処理を説明するフローチャートである。It is a flowchart explaining a scene change detection process. 図3の提示位置算出部の構成例を示すブロック図である。It is a block diagram which shows the structural example of the presentation position calculation part of FIG. 提示位置算出処理を説明するフローチャートである。It is a flowchart explaining a presentation position calculation process. 提示位置算出処理を説明するフローチャートである。It is a flowchart explaining a presentation position calculation process. 提示位置算出処理を説明する図である。It is a figure explaining presentation position calculation processing. 提示位置の軌跡を説明する図である。It is a figure explaining the locus | trajectory of a presentation position.

符号の説明Explanation of symbols

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 SYMBOLS 1 Television receiver, 23 Object tracking part, 24 Zoom image creation part, 26 Image display, 29 Control part, 30 Remote controller, 41 Tracking process part, 42 Presentation position calculation part, 51 Template matching part, 52 Motion estimation part, 53 scene change detection unit, 54 background motion estimation unit, 55 region estimation related processing unit, 56 transfer candidate holding unit, 57 tracking point determination unit, 58 template holding unit, 59 control unit, 701 transfer amount calculation unit, 702 tracking point storage 703, reflected transfer amount calculation unit, 704 remaining transfer amount storage unit, 705 center point setting unit, 706 center point storage unit

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.
請求項に記載のプログラムが記録されている記録媒体。 A recording medium on which the program according to claim 3 is recorded.
JP2006099832A 2006-03-31 2006-03-31 Image processing apparatus and method, program, and recording medium Expired - Fee Related JP4826316B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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