WO2005098752A1 - 画像処理装置および方法、記録媒体、並びにプログラム - Google Patents

画像処理装置および方法、記録媒体、並びにプログラム Download PDF

Info

Publication number
WO2005098752A1
WO2005098752A1 PCT/JP2005/006931 JP2005006931W WO2005098752A1 WO 2005098752 A1 WO2005098752 A1 WO 2005098752A1 JP 2005006931 W JP2005006931 W JP 2005006931W WO 2005098752 A1 WO2005098752 A1 WO 2005098752A1
Authority
WO
WIPO (PCT)
Prior art keywords
pixel
vector
motion vector
block
frame
Prior art date
Application number
PCT/JP2005/006931
Other languages
English (en)
French (fr)
Inventor
Takashi Horishi
Norifumi Yoshiwara
Yukihiro Nakamura
Akihiko Kaino
Kunio Kawaguchi
Yasuaki Takahashi
Yuta Choki
Tetsujiro Kondo
Original Assignee
Sony Corporation
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 Corporation filed Critical Sony Corporation
Priority to JP2006512129A priority Critical patent/JP4692845B2/ja
Priority to KR1020067020963A priority patent/KR101118981B1/ko
Priority to EP05728519A priority patent/EP1734478A4/en
Publication of WO2005098752A1 publication Critical patent/WO2005098752A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • H04N5/145Movement estimation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4007Interpolation-based scaling, e.g. bilinear interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/254Analysis of motion involving subtraction of images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0135Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes
    • H04N7/014Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes involving the use of motion vectors

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Television Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Analysis (AREA)

Abstract

 本発明は、勾配法による動きベクトルの検出精度を向上させることができるようにする画像処理装置および方法、記録媒体、並びにプログラムに関する。有効画素判定部403は、演算ブロック内の各画素について、時間方向の画素差分Δtに所定の画素差分値を設定し、時間方向の画素差分Δtが、設定された所定の画素差分値よりも小さい場合には、その画素は、動きベクトル検出に寄与する(有効である)と判定し、動きベクトルを検出する際の勾配法の演算に用いるが、時間方向の画素差分Δtが、設定された所定の画素差分値以上である場合には、その画素は、動きの乱れを発生させる恐れがあるとして、動きベクトルを検出する際の勾配法演算部404による勾配法の演算から除外する。24P信号から60P信号へのフレーム周波数変換処理を行う信号処理装置に適用できる。

Description

明 細 書
画像処理装置および方法、記録媒体、並びにプログラム
技術分野
[0001] 本発明は、画像処理装置および方法、記録媒体、並びにプログラムに関し、特に、 動きベクトル検出の精度を向上することができるようにした画像処理装置および方法 、記録媒体、並びにプログラムに関する。
背景技術
[0002] 画像のフレーム周波数を変換する画像処理装置にお!/、て、着目ブロックの動きべ タトルを検出する 1つの方法として、特許文献 1に示されるような勾配法が用いられる 。この勾配法は、簡単な演算で画素以下の動きを検出できる特徴がある一方、画素 単位の検出では、精度が悪いため、通常の場合、ブロック単位で値を積算して、動き ベクトル検出が行われることが多い。
[0003] したがって、従来においては、動きベクトルを検出する対象となる着目画素、または 、着目ブロックの周辺に設定した演算ブロック内すベての画素を用いて勾配法演算 が行われていた。理想的には、この演算ブロック内部の画素がほぼ同等な動きを持 つて 、る場合には、確力もし 、動きベクトルが検出される。
特許文献 1 :特開昭 60— 158786公報
発明の開示
発明が解決しょうとする課題
[0004] し力しながら、この演算ブロックに、着目画素または着目ブロックのものとは異なる動 きを持つオブジェクトの画素が混入する場合があり、この場合には、確からしくない動 きベクトルが検出されることが多ぐ動きベクトルの検出精度が著しく悪くなるといった 課題があった。また、この結果得られた動きベクトルを用いて、フレーム周波数変換を 行った画像は、特に、そのオブジェクトの境界付近に、ノイズが生じたり、不連続にな つてしまうなど、著しい視覚劣化をもたらす課題があった。
[0005] 本発明は、このような状況に鑑みてなされたものであり、勾配法による動きベクトル の検出精度を向上することができるようにするものである。 課題を解決するための手段
[0006] 本発明の画像処理装置は、動きベクトルを検出するための勾配法演算の対象とな る演算ブロック内の画素力 動きベクトルの検出に有効である力否かを判断する有効 画素判断手段と、演算ブロック内の画素のうち、有効画素判断手段により動きべタト ルの検出に有効であると判断された画素のみを用いて、勾配法演算を行う勾配法演 算手段とを備えることを特徴とする。
[0007] 有効画素判断手段は、動きベクトルを検出する対象の第 1のフレーム、および、第 1 のフレームの次の第 2のフレーム上の演算ブロック内の画素の時間方向の画素差分 を算出する時間差分算出手段を備え、時間差分算出手段により算出された時間方 向の画素差分に基づき、演算ブロック内の画素力 動きベクトルの検出に有効である と判断する
ようにすることができる。
[0008] 有効画素判断手段は、時間差分算出手段により算出された時間方向の画素差分 が所定のしきい値より小さいか否かを判断する時間差分判断手段をさらに備え、時 間差分判断手段により時間方向の画素差分が所定のしきい値より小さいと判断され た場合、演算ブロック内の画素が、動きベクトルの検出に有効であると判断するように することができる。
[0009] 有効画素判断手段は、動きベクトルを検出する対象の第 1のフレーム上の演算プロ ック内の画素の第 1の空間方向の画素差分を算出する第 1の空間差分算出手段と、 第 1のフレームの次の第 2のフレーム上の演算ブロック内の画素の第 2の空間方向の 画素差分を算出する第 2の空間差分算出手段と、第 1のフレームおよび第 2のフレー ム上の演算ブロック内の画素の時間方向の画素差分を算出する時間差分算出手段 とを備え、第 1および第 2の空間差分算出手段、並びに、時間差分算出手段により算 出された第 1および第 2空間方向、並びに、時間方向の画素差分に基づき、演算ブ ロック内の画素力 動きベクトルの検出に有効であると判断するようにすることができ る。
[0010] 有効画素判断手段は、第 1および第 2の空間差分算出手段、並びに、時間差分算 出手段により算出された第 1および第 2空間方向、並びに、時間方向の画素差分に 基づぐ画素の勾配の類似性が所定のしきい値よりも小さいか否かを判断する勾配 類似性判断手段をさらに備え、勾配類似性判断手段により画素の勾配の類似性が 所定のしきい値よりも小さいと判断された場合、演算ブロック内の画素が、動きべタト ルの検出に有効であると判断するようにすることができる。
[0011] 勾配類似性判断手段は、第 1および第 2空間方向、並びに、時間方向の画素差分 に基づぐ画素の水平方向の勾配の類似性、垂直方向の勾配の類似性、および水 平垂直方向の勾配の類似性が所定のしきい値よりも小さいか否かを判断し、画素の 水平方向の勾配の類似性、垂直方向の勾配の類似性、および水平垂直方向の勾配 の類似性の少なくとも一方が所定のしき!、値よりも小さ!、と判断した場合、演算ブロッ ク内の画素力 動きベクトルの検出に有効であると判断するようにすることができる。
[0012] 勾配類似性判断手段は、第 1および第 2空間方向、並びに、時間方向の画素差分 に基づぐ画素の水平方向の勾配の類似性、および垂直方向の勾配の類似性が所 定のしきい値よりも小さいか否かを判断し、画素の水平方向の勾配の類似性、および 垂直方向の勾配の類似性の両方が所定のしきい値よりも小さいと判断した場合、演 算ブロック内の画素力 S、動きベクトルの検出に有効であると判断するようにすることが できる。
[0013] 演算ブロックにおける、有効画素判断手段により動きベクトルの検出に有効であると 判断された画素の数が所定の数より少ないか否かを判断する画素数判断手段と、画 素数判断手段による判断結果を基に、有効画素判断手段または勾配法演算手段の 処理を制御する演算制御手段とをさらに備えるようにすることができる。
[0014] 画素数判断手段により、演算ブロックにおける、動きベクトルの検出に有効であると 判断された画素の数が所定の数より少ないと判断された場合、演算制御手段は、勾 配法演算手段による勾配法演算を停止させる制御を行うようにすることができる。
[0015] 演算制御手段により勾配法演算手段による勾配法演算を停止させる制御が行われ た結果、検出される動きベクトルには、 0ベクトルが割り当てられるようにすることがで きる。
[0016] 演算ブロックは、ブロック単位で動きベクトルを検出する場合の第 1の演算ブロック、 および、画素単位で動きベクトルを検出する場合の第 2の演算ブロックにより構成さ れ、有効画素判断手段は、第 1の演算ブロック内の画素が、動きベクトルの検出に有 効であるか否かを判断し、画素数判断手段は、第 1の演算ブロックにおける、有効画 素判断手段により動きベクトルの検出に有効であると判断された画素の数が所定の 数より少ないか否かを判断し、演算制御手段は、画素数判断手段により、第 1の演算 ブロックにおいて、動きベクトルの検出に有効であると判断された画素の数が所定の 数より少ないと判断された場合、第 1の演算ブロックを対象とした処理を、第 2の演算 ブロックを対象とした処理に切り替えさせるように、有効画素判断手段および勾配法 演算手段の処理を制御するようにすることができる。
[0017] 演算ブロックは、ブロック単位で動きベクトルを検出する場合の第 1の演算ブロック、 および、画素単位で動きベクトルを検出する場合の第 2の演算ブロックにより構成さ れ、有効画素判断手段は、第 1の演算ブロック内の画素が、動きベクトルの検出に有 効であるか否かを判断し、画素数判断手段は、第 1の演算ブロックにおける、有効画 素判断手段により動きベクトルの検出に有効であると判断された画素の数が所定の 数より少ないか否かを判断し、演算制御手段は、画素数判断手段により、第 1の演算 ブロックにおいて、動きベクトルの検出に有効であると判断された画素の数が所定の 数より多いと判断された場合、有効画素判断手段により動きベクトルの検出に有効で はないと判断された画素に対して、第 1の演算ブロックを対象とした処理を、第 2の演 算ブロックを対象とした処理に切り替えさせるように、有効画素判断手段および勾配 法演算手段の処理を制御するようにすることができる。
[0018] 本発明の画像処理方法は、動きベクトルを検出するための勾配法演算の対象とな る演算ブロック内の画素力 動きベクトルの検出に有効である力否かを判断する有効 画素判断ステップと、演算ブロック内の画素のうち、有効画素判断ステップの処理に より動きベクトルの検出に有効であると判断された画素のみを用いて、勾配法演算を 行う勾配法演算ステップとを含むことを特徴とする。
[0019] 本発明の記録媒体に記録されているプログラムは、動きベクトルを検出するための 勾配法演算の対象となる演算ブロック内の画素が、動きベクトルの検出に有効である か否かを判断する有効画素判断ステップと、演算ブロック内の画素のうち、有効画素 判断ステップの処理により動きベクトルの検出に有効であると判断された画素のみを 用いて、勾配法演算を行う勾配法演算ステップとを含むことを特徴とする。
[0020] 本発明のプログラムは、動きベクトルを検出するための勾配法演算の対象となる演 算ブロック内の画素力 S、動きベクトルの検出に有効であるか否かを判断する有効画素 判断ステップと、演算ブロック内の画素のうち、有効画素判断ステップの処理により動 きベクトルの検出に有効であると判断された画素のみを用いて、勾配法演算を行う勾 配法演算ステップとを含むことを特徴とする。
[0021] 本発明においては、動きベクトルを検出するための勾配法演算の対象となる演算ブ ロック内の画素が、動きベクトルの検出に有効である力否かが判断される。そして、演 算ブロック内の画素のうち、有動きベクトルの検出に有効であると判断された画素の みを用いて、勾配法演算が行われる。
発明の効果
[0022] 本発明によれば、勾配法による動きベクトルの検出精度を向上させることができる。
さらに、本発明によれば、生成される画像の、特に、動きのある境界付近における著 LV、視覚劣化を抑制することができる。
図面の簡単な説明
[0023] [図 1]本発明の信号処理装置の構成例を示すブロック図である。
[図 2]信号処理装置の構成を示すブロック図である。
[図 3]本発明の処理の原理を説明する図である。
[図 4]本発明の処理を具体的に説明する図である。
[図 5]信号処理装置において用いられる動きベクトルの評価値を説明する図である。
[図 6]信号処理装置のフレーム周波数変換処理を説明するフローチャートである。
[図 7]画像補間部の構成を示すブロック図である。
[図 8]画像補間処理を説明するフローチャートである。
[図 9]ベクトル検出部の構成を示すブロック図である。
[図 10]ベクトル検出部で用いられる勾配法を説明する図である。
[図 11]初期ベクトルを用いた反復勾配法を説明する図である。
[図 12]動きベクトル検出処理を説明するフローチャートである。
[図 13]シフト初期ベクトル割付部の構成を示すブロック図である。 [図 14]シフト初期ベクトルの概念を説明する図である。
圆 15]シフト初期ベクトルを具体的に説明する図である。
圆 16]シフト初期ベクトルを具体的に説明する図である。
[図 17]シフト初期ベクトルの決定方法を説明する図である。
[図 18]シフト初期ベクトルの割り付けの例を説明する図である。
[図 19]動きベクトルが競合する場合のシフト初期ベクトルの例を説明する図である。
[図 20]シフト初期ベクトル割付処理を説明するフローチャートである。
[図 21]初期ベクトル選択部の構成を示すブロック図である。
[図 22]初期ベクトルの周辺領域を示す図である。
[図 23]初期ベクトルの候補ブロックを示す図である。
[図 24]初期ベクトル選択処理を説明するフローチャートである。
[図 25]反復勾配法演算部の構成を示すブロック図である。
[図 26]有効画素判定部の構成を示すブロック図である。
[図 27]勾配法演算部の構成を示すブロック図である。
[図 28]動きベクトルの検出対象ブロックと演算ブロックを説明する図である。
[図 29]検出対象ブロックにおけるオブジェクトの動きを説明する図である。
圆 30]同じ動きのオブジェクトを有する検出対象ブロックにおける輝度の状態を説明 する図である。
[図 31]異なる動きのオブジェクトを有する検出対象ブロックにおける輝度の状態を説 明する図である。
[図 32]画素単位処理の演算ブロックの例を説明する図である。
[図 33]図 29の検出対象ブロックにおける画素単位処理を説明する図である。
[図 34A]反復勾配法演算処理の例を説明するフローチャートである。
[図 34B]反復勾配法演算処理の他の例を説明するフローチャートである。
[図 34C]反復勾配法演算処理のさらに他の例を説明するフローチャートである。 圆 35]有効画素判定処理を説明するフローチャートである。
[図 36]勾配法演算処理を説明するフローチャートである。
圆 37]画素単位の反復勾配法演算処理を説明するフローチャートである。 [図 38]有効画素判定部の他の構成を示すブロック図である。
[図 39]勾配法演算部の他の構成を示すブロック図である。
[図 40]検出対象ブロックと演算ブロックの他の例を説明する図である。
[図 41]図 38の有効画素判定方法を説明する図である。
[図 42]演算ブロックにおける有効画素の構成を説明する図である。
[図 43]有効画素判定処理の他の処理を説明するフローチャートである。
[図 44]有効画素判定処理の他の処理を説明するフローチャートである。
[図 45]ベクトル割付部の構成を示すブロック図である。
圆 46]本発明の 4点補間処理の概念を説明する図である。
[図 47]ベクトル割付処理の概要を説明する図である。
[図 48]動きベクトルと内挿フレームの交点の近傍画素の例を説明する図である。 圆 49]割付候補の動きベクトルの評価方法を説明する図である。
[図 50]ベクトル割付における 4点補間の例を説明する図である。
[図 51]ベクトル割付処理を説明するフローチャートである。
[図 52]画素位置演算処理を説明するフローチャートである。
[図 53]割付ベクトル評価処理を説明するフローチャートである。
[図 54]割付補償部の構成を示すブロック図である。
[図 55]ベクトル補償部の構成を示すブロック図である。
圆 56]割付補償処理の原理を説明する図である。
圆 57]動き相関の原理を説明する図である。
圆 58]着目画素の周囲画素の構成例を説明する図である。
[図 59]着目画素の動きベクトルの補償候補ベクトルの例を説明する図である。
[図 60]着目画素の動きベクトルの補償候補ベクトルの例を説明する図である。
[図 61]着目画素の動きベクトルの補償候補ベクトルの例を説明する図である。
圆 62]補償候補ベクトルを評価する例を説明する図である。
圆 63]補償候補ベクトルを評価する例を説明する図である。
圆 64]補償候補ベクトルを評価する例を説明する図である。
圆 65]補償候補ベクトルを着目画素の動きベクトルとして選択する例を説明する図で ある。
[図 66]割付補償処理を説明するフローチャートである。
[図 67]ベクトル補償処理を説明するフローチャートである。
符号の説明
[0024] 1 信号処理装置, 11 CPU, 12 ROM, 13 RAM, 31 磁気ディスク, 32 光 ディスク, 33 光磁気ディスク, 34 半導体メモリ, 51 フレームメモリ, 52 ベクトル 検出部, 53 検出ベクトルメモリ, 54 ベクトル割付部, 55 割付ベクトルメモリ, 56 割付フラグメモリ, 57 割付補償部, 58 画像補間部, 101 初期ベクトル選択部, 1 03 反復勾配法演算部, 104 ベクトル評価部, 105 シフト初期ベクトル割付部, 1 06 評価値メモリ, 107 シフト初期ベクトルメモリ, 201 割付対象位置演算部, 202 評価値比較部, 203 シフト初期ベクトル置換部, 204 評価値置換部, 251 候補 ベクトル位置演算部, 252 検出ベクトル取得部, 253 シフト初期ベクトル取得部, 2 54 オフセット位置演算部, 255 評価値演算部, 256 評価値比較部, 257 最適 候補格納用レジスタ, 401 モード選択部, 402 セレクタ, 403 有効画素判定部, 404 勾配法演算部, 405 遅延部, 411 時間画素差分算出部, 412 画素差分 値判定部, 413 有効画素数カウンタ, 414 勾配法継続判定部, 421 時間画素差 分算出部, 422 画素差分値判定部, 423 水平垂直画素差分算出部, 424 勾配 積算部, 425 ベクトル算出部, 501 第 1空間勾配画素差分算出部, 502 第 2空 間勾配画素差分算出部, 503 時間方向画素差分算出部, 504 演算判定部, 521 第 1空間勾配画素差分算出部, 522 第 2空間勾配画素差分算出部, 523 時間 方向画素差分算出部, 524 演算判定部, 701 画素情報演算部, 702 評価値演 算部, 703 着目画素差分演算部, 704 ベクトル評価部, 705 ベクトル選択部, 7 11 画素差分判断部, 712 評価値判断部, 801 割付ベクトル判定部, 802 ベタ トル割付部, 811 補償処理部, 812 評価値演算部, 821 メモリ
発明を実施するための最良の形態
[0025] 以下、図を参照して本発明の実施の形態について説明する。
[0026] 図 1は、本発明を適用した信号処理装置 1の構成例を表している。信号処理装置 1 は、例えば、パーソナルコンピュータなどで構成される。図 1において、 CPU (Central Processing Unit) 11は、 ROM (Read Only Memory) 12、または記憶部 18に記憶さ れているプログラムに従って各種の処理を実行する。 RAM (Random Access Memory ) 13には、 CPU11が実行するプログラムやデータなどが適宜記憶される。これらの C PU11、 ROM12、および RAM13は、バス 14により相互に接続されている。
[0027] CPU11にはまた、バス 14を介して入出力インタフェース 15が接続されている。入 出力インタフェース 15には、キーボード、マウス、マイクロフォンなどよりなる入力部 1 6、ディスプレイ、スピーカなどよりなる出力部 17が接続されている。 CPU11は、入力 部 16から入力される指令に対応して各種の処理を実行する。そして、 CPU11は、処 理の結果、得られた画像や音声等を出力部 17に出力する。
[0028] 入出力インタフェース 15に接続されている記憶部 18は、例えばノヽードディスクなど で構成され、 CPU11が実行するプログラムや各種のデータを記憶する。通信部 19 は、インターネット、その他のネットワークを介して外部の装置と通信する。また、通信 部 19を介してプログラムを取得し、記憶部 18に記憶してもよ 、。
[0029] 入出力インタフェース 15に接続されているドライブ 20は、磁気ディスク 31、光デイス ク 32、光磁気ディスク 33、或いは半導体メモリ 34などが装着されたとき、それらを駆 動し、そこに記録されているプログラムやデータなどを取得する。取得されたプロダラ ムゃデータは、必要に応じて記憶部 18に転送され、記憶される。
[0030] なお、信号処理装置 1は、例えば、テレビジョン受像機、光ディスクプレーヤなど、ま たは、それらの信号処理部とすることもできる。
[0031] 図 2は、信号処理装置 1を示すブロック図である。
[0032] なお、信号処理装置 1の各機能をハードウェアで実現するか、ソフトウェアで実現す るかは問わない。つまり、本明細書の各ブロック図は、ハードウェアのブロック図と考 えても、ソフトウェアによる機會ブロック図と考えてもよい。
[0033] 図 2に構成を示す信号処理装置 1においては、例えば、フレーム周波数 24Hzのプ ログレツシブ画像信号 (以下、 24P信号と称する)の画像が入力され、入力された画 像 (入力画像)力 フレーム周波数 60Hzのプログレッシブ画像信号 (以下、 60P信号 と称する)の画像に変換されて、出力される。すなわち、図 2は、画像処理装置である 信号処理装置の構成を示す図である。 [0034] 信号処理装置 1に入力された 24P信号の入力画像は、フレームメモリ 51、ベクトル 検出部 52、ベクトル割付部 54、割付補償部 57、および画像補間部 58に供給される 。フレームメモリ 51は、入力画像をフレーム単位で記憶する。フレームメモリ 51は、時 刻 t+ 1の入力画像の 1つ前の時刻 tのフレームを記憶する。フレームメモリ 51に記憶 される時刻 tのフレームは、ベクトル検出部 52、ベクトル割付部 54、割付補償部 57、 および画像補間部 58に供給される。なお、以下、フレームメモリ 51上の時刻 tのフレ ームをフレーム tと称し、時刻 t+ 1の入力画像のフレームを、フレーム t+ 1と称する。
[0035] ベクトル検出部 52は、フレームメモリ 51上のフレーム tの着目ブロックと、入力画像 のフレーム t+ 1の対象ブロックの間で動きベクトルを検出し、検出した動きベクトルを 、検出ベクトルメモリ 53に記憶する。この 2フレーム間の動きベクトルの検出方法には 、勾配法またはブロックマッチング法などが用いられる。ベクトル検出部 52の構成の 詳細は、後述する。検出ベクトルメモリ 53は、フレーム tにおいて、ベクトル検出部 52 により検出された動きベクトルを記憶する。
[0036] ベクトル割付部 54は、 24P信号のフレーム t上において求められた動きベクトルを、 割付ベクトルメモリ 55上の、補間する 60P信号のフレーム(以下、 60P信号のフレー ムは、 24P信号のフレームと区別するため、内挿フレームとも称する)上の画素に割り 付け、動きベクトルが割り付けられた画素の割付フラグメモリ 56の割付フラグを 1 (True)に書き換える。ベクトル割付部 54の構成の詳細は、後述する。
[0037] 割付ベクトルメモリ 55は、ベクトル割付部 54により割り付けられた動きベクトルを、内 挿フレームの各画素に対応させて記憶する。割付フラグメモリ 56は、内挿フレームの 画素毎に、割り付けられる動きベクトルの有無を示す割付フラグを記憶している。例え ば、 True(l)である割付フラグは、対応する画素に動きベクトルが割り付けられている ことを示し、 False(O)である割付フラグは、対応する画素に動きベクトルが割り付けられ ていないことを示す。
[0038] 割付補償部 57は、割付フラグメモリ 56の割付フラグを参照し、ベクトル割付部 54に より動きベクトルが割り付けられな力つた着目画素に対して、その着目画素の周辺画 素の動きベクトルを補い、割付ベクトルメモリ 55の内挿フレーム上に割り付ける。この とき、割付補償部 57は、動きベクトルを割り付けた着目画素の割付フラグを l(True)に 書き換える。割付補償部 57の構成の詳細は、後述する。
[0039] 画像補間部 58は、割付ベクトルメモリ 55の内挿フレームに割り付けられた動きべク トルと、フレーム tおよび次のフレーム t+ 1の画素値を用いて、内挿フレームの画素 値を補間生成する。そして、画像補間部 58は、生成された内挿フレームを出力し、そ の次に、必要に応じて、フレーム t+ 1を出力することにより、 60P信号の画像を、図 示せぬ後段に出力する。なお、以下においては、画素値を、適宜、輝度値とも称する
[0040] 図 3は、本発明に係る信号処理装置 1における処理の原理を説明する図である。図 3の例においては、点線が、信号処理装置 1に入力される、時刻 t, t+ 1,および t+ 2における 24P信号のフレームを表しており、実線が、入力された 24P信号力も信号 処理装置 1により、生成される時刻 t, t+O. 4, t+O. 8, t+ 1. 2, t+ 1. 6,および t + 2における 60P信号の内挿フレームを表して!/、る。
[0041] 一般に、 24P信号を、 60P信号に変換するためには、 5Z2倍のフレームが必要に なる。すなわち、 2枚の 24P信号の画像から 5枚の 60P信号の画像が生成されなけれ ばならない。このとき、生成される 60P信号の内挿フレームは、そのフレーム間隔を等 しくするために、 24P信号上での時間位ネ目カ SO. 0, 0. 4, 0. 8, 1. 2,および 1. 6と なる位置に配置される。この中で、時間位相が 0. 0である時刻 tの 1フレームを除く 4 フレーム(t+O. 4, t+O. 8, t+ 1. 2,および t+ 1. 6のフレーム)は、 24P信号上に は存在しない画像である。したがって、信号処理装置 1は、 24P信号の画像が入力さ れると、 24P信号の時刻 tおよび時刻 t+ 1の 2枚のフレームから、 4つの内挿フレーム を生成する。したがって、信号処理装置 1からは、時刻 t, t+O. 4, t+O. 8, t+ 1. 2 ,および t+ 1. 6の 5枚のフレームからなる 60P信号の画像が出力される。
[0042] 以上のようにして、信号処理装置 1は、 24P信号の画像から 60P信号の画像に、フ レーム周波数を変換する処理を実行する。
[0043] なお、原理的には、上述したように、 24P信号の時刻 tおよび時刻 t+ 1の 2枚のフレ ームから、時刻 t, t+O. 4, t+O. 8, t+ 1. 2,および t+ 1. 6の 5枚の 60P信号のフ レームが新しく生成される力 実際には、図 3の例の場合、 24P信号の時刻 tおよび 時刻 t+ 1の 2枚のフレームに基づいて、 t, t+O. 4, t+O. 8の 60P信号のフレーム が生成され、 24P信号の時刻 t+ 1および t+ 2の 2枚のフレームに基づいて、 t+ 1. 2 , t+ 1. 6,および t+ 2の 60P信号のフレームが生成される。
[0044] 図 4は、本発明の処理をより具体的に説明する図である。図 4の例においては、太 線矢印は、各状態への遷移を表しており、矢印 Tは、状態 81乃至 85における時間の 経過方向を表している。また、状態 81乃至 85は、信号処理装置 1を構成する各部へ の入出力時の、 24P信号の時刻 tのフレーム t、時刻 tの次の時刻 t+ 1のフレーム t+ 1、または、フレーム tおよびフレーム t+ 1の間に生成される 60P信号の内挿フレーム Fの状態を概念的に表している。すなわち、実際には、例えば、状態 82に示されるよ うな動きベクトルが検出されたフレームは入力されず、フレームと動きベクトルは、別 々に入力される。
[0045] 状態 81は、ベクトル検出部 52に入力される、 24P信号のフレーム tおよびフレーム t
+ 1の状態を表している。状態 81のフレーム t上の黒点は、フレーム t上の画素を表し ている。ベクトル検出部 52は、状態 81のフレーム t上の画素力 次の時刻のフレーム t+ 1において、どの位置に移動するかを検出し、その動きを、状態 82のフレーム t上 に示されるように、各画素に対応する動きベクトルとして出力する。この 2フレーム間 の動きベクトルの検出方法には、ブロックマッチング法または勾配法などが用いられ る。なお、このとき、画素に複数の動きベクトルが検出された場合、ベクトル検出部 52 は、各動きベクトルについて、後述する評価値を求め、その評価値に基づいて動きべ タトルを選択する。
[0046] 状態 82は、ベクトル割付部 54に入力される、フレーム tおよびフレーム t+ 1の状態 を表している。状態 82において、フレーム tの各画素の矢印は、ベクトル検出部 52に より検出された動きベクトルを表している。
[0047] ベクトル割付部 54は、状態 82のフレーム tの各画素に対して検出された動きべタト ルを、次のフレーム t+ 1まで延長させ、予め設定されている時間位相(例えば、図 3 の t+O. 4)にある内挿フレーム F上のどの位置を通過するかを求める。これは、フレ ーム tおよびフレーム t+ 1の間が一定動きであると仮定すると、動きベクトルが内揷フ レーム Fを通過した点力 そのフレームでの画素位置となるためである。したがって、 ベクトル割付部 54は、この通過する動きベクトルを、状態 83の内挿フレーム F上の近 傍 4画素に割り付ける。また、このとき、内挿フレームの画素によっては、動きベクトル が存在しない場合、あるいは、複数の動きベクトルが、割付候補となりうる場合がある 。後者のような場合には、ベクトル割付部 54は、ベクトル検出部 52と同様に、各動き ベクトルについての評価値を求め、その評価値に基づいて割り付ける動きベクトルを 選択する。
[0048] 状態 83は、割付補償部 57に入力される、フレーム tおよびフレーム t+ 1、並びに動 きベクトルが割り付けられた内挿フレーム Fの状態を表している。状態 83の内揷フレ ーム Fにおいては、ベクトル割付部 54により動きベクトルが割り付けられている画素と 、動きベクトルが割り付けられな力つた画素が示されて 、る。
[0049] 割付補償部 57は、状態 83の動きベクトルが割り付けられていない画素に対して、 その画素の周辺画素に割り付けられている動きベクトルを用いて補う。これは、ある着 目画素の近傍領域が同じ動きであるという仮定が成り立つならば、着目画素の周辺 画素の動きベクトルと、その着目画素の動きベクトルは似たものであるからである。こ れにより、動きベクトルが割り付けられな力つた画素にも、ある程度正確な動きべタト ルが与えられ、状態 84の内挿フレーム F上のすべての画素に動きベクトルが割り付 けられる。なお、この場合にも、複数の周辺画素の動きベクトルが候補として存在する ため、割付補償部 57は、ベクトル割付部 54と同様に、各動きベクトルについての評 価値を求め、その評価値に基づ!/、て割り付ける動きベクトルを選択する。
[0050] 状態 84は、画像補間部 58に入力される、フレーム tおよびフレーム t+ 1、並びに、 すべての画素に動きベクトルが割り付けられた内挿フレーム Fの状態を表している。こ れらのすベての画素に割り付けられた動きベクトルにより、画像補間部 58は、内挿フ レーム F上の画素と、 2枚のフレーム tおよびフレーム t+ 1の画素の位置関係を決定 することができる。したがって、画像補間部 58は、内挿フレーム F上に割り付けられた 動きベクトルと、フレーム tおよびフレーム t+ 1の画素値を用いて、状態 85の内揷フ レーム Fの黒点に示されるように、内挿フレーム F上の画素値を補間生成する。そして 、画像補間部 58は、生成された内挿フレームを出力し、その次に、必要に応じて、フ レーム t+ 1を出力することにより、 60P信号の画像を、図示せぬ後段に出力する。
[0051] 次に、図 5を参照して、本発明に係る信号処理装置 1において用いられる動きべタト ルの評価値を説明する。図 4を参照して上述したように、信号処理装置 1の各部(ベタ トル検出部 52、ベクトル割付部 54、および割付補償部 57)において、後段の処理に 最適な動きベクトルが選択される。このとき、信号処理装置 1の各部においては、動き ベクトルに対する評価値として、 2つのフレームの注目するベクトル量分ずらしたブロ ック間の相関値を表す差分絶対値和(DFD(Displaced Frame Difference))が用いら れる。
[0052] 図 5の例においては、時刻 tのフレーム t上の画素位置 pを中心とした m X nのブロッ ク、および、時刻 t+ 1のフレーム t+ 1上の画素位置 pから注目する動きベクトル Vの ベクトル量分ずらした画素位置 p+vを中心とした mX nのブロックの 2つのブロックが 示されている。これら 2つのブロック間において求められる差分絶対値和 DFDt (p)は 、次の式(1)で表される。
[0053] [数 1]
m x n
DFDt (p) =∑ | Ft +i (Px, y+v) -Ft (px, y) I
x- y
•••(l)
[0054] ここで、 Ft (p)は、時刻 tにおける画素位置 pの輝度値を表しており、 mX nは、差分 絶対値和を求めるための DFD演算範囲(ブロック)を表して 、る。この差分絶対値和 は、 2つのフレームにおける DFD演算範囲(ブロック)間の相関値を表しているため、 一般的には、この差分絶対値和が小さいほどフレーム間のブロックの波形が一致し ており、差分絶対値和が小さいほど、動きベクトル Vの信頼度が高いと判定される。こ れにより、この差分絶対値和は、複数の候補の中から、最も確からしい動きベクトルを 選ぶ場合などに用いられる。
[0055] したがって、以降、信号処理装置 1の各部(ベクトル検出部 52、ベクトル割付部 54、 および割付補償部 57)においては、動きベクトルが選択される場合の評価値として、 特に言及しない場合には、差分絶対値和(以下、評価値 DFDと称する)が用いられ ることとする。
[0056] 次に、図 6のフローチャートを参照して、信号処理装置 1のフレーム周波数を変換 する処理を説明する。 [0057] ステップ SIにおいて、ベクトル検出部 52は、時刻 t+ 1の入力画像のフレーム t+ 1 と、フレームメモリ 51の入力画像の 1つ前の時刻 tのフレーム tの画素値を入力し、ス テツプ S2に進む。なお、このとき、ベクトル割付部 54、割付補償部 57および画像補 間部 58は、時刻 t+ 1の入力画像のフレーム t+ 1と、フレームメモリ 51の入力画像の 1つ前の時刻 tのフレーム tの画素値を入力する。
[0058] ステップ S2において、ベクトル検出部 52は、動きベクトル検出処理を実行し、ステツ プ S3に進む。すなわち、ベクトル検出部 52は、フレームメモリ 51上のフレーム tの着 目ブロックと、入力画像である次のフレーム t+ 1の対象ブロックの間で動きベクトルを 検出し、検出した動きベクトルを、検出ベクトルメモリ 53に記憶し、ステップ S3に進む 。この 2フレーム間の動きベクトルの検出方法には、勾配法またはブロックマッチング 法などが用いられる。また、動きベクトルの候補が複数ある場合には、各動きベクトル に対して、評価値 DFDが求められ、求められた評価値 DFDに基づいた信頼度の高 い動きベクトルが検出される。すなわち、この場合、動きベクトルを検出する着目プロ ックにおいて、最も確力もしい動きベクトルが選択され、検出される。ステップ S2にお ける、動きベクトル検出処理の詳細は、後述する。
[0059] ステップ S3にお 、て、ベクトル割付部 54は、ベクトル割付処理を実行し、ステップ S 4に進む。すなわち、ベクトル割付部 54は、ステップ S3において、フレーム t上におい て求められた動きベクトルを、割付ベクトルメモリ 55上の、補間する内挿フレーム上の 着目画素に割り付け、動きベクトルが割り付けられた画素の割付フラグメモリ 56の割 付フラグを l(True)に書き換える。例えば、 Trueである割付フラグは、対応する画素に 動きベクトルが割り付けられていることを示し、 Falseである割付フラグは、対応する画 素に動きベクトルが割り付けられていないことを示す。なお、各画素において、動きべ タトルの候補が複数ある場合には、各動きベクトルに対して、評価値 DFDが求められ 、求められた評価値 DFDに基づ ヽた信頼度の高!、動きベクトルが割り付けられる。 すなわち、この場合、動きベクトルを割り付ける着目画素において、最も確カゝらしい動 きベクトルが選択され、割り付けられる。ステップ S3における、ベクトル割付処理の詳 細は、後述する。
[0060] ステップ S4にお 、て、割付補償部 57は、割付補償処理を実行し、ステップ S5に進 む。すなわち、割付補償部 57は、ステップ S4において、割付フラグメモリ 56の割付フ ラグを参照し、ベクトル割付部 54により動きベクトルが割り付けられな力つた着目画素 に対して、その着目画素の周辺画素の動きベクトルを補い、割付ベクトルメモリ 55の 内挿フレーム上に割り付ける。このとき、割付補償部 57は、動きベクトルを補い、割付 けた着目画素の割付フラグを l(True)に書き換える。なお、周辺画素の動きベクトル が複数ある場合には、各動きベクトルに対して、評価値 DFDが求められ、求められた 評価値 DFDに基づいた、信頼度の高い動きベクトルが割り付けられる。すなわち、こ の場合、動きベクトルを割り付ける着目画素において、最も確からしい動きベクトルが 選択され、割り付けられる。ステップ S4における、割付補償処理の詳細は、後述する
[0061] ステップ S5にお ヽて、画像補間部 58は、画像補間処理を実行する。すなわち、画 像補間部 58は、ステップ S5において、割付ベクトルメモリ 55の内挿フレームに割り付 けられた動きベクトルと、フレーム tおよびフレーム t+ 1の画素値を用いて、内揷フレ ームの画素値を補間生成し、ステップ S6に進む。ステップ S5〖こおける、画像補間処 理の詳細は後述する。画像補間部 58は、ステップ S6において、生成された内挿フレ ームを出力し、その次に、必要に応じて、フレーム t+ 1を出力することにより、 60P信 号の画像を、図示せぬ後段に出力し、ステップ S7に進む。
[0062] ステップ S7において、ベクトル検出部 52は、すべてのフレームの処理が終了したか 否かを判断し、すべてのフレームの処理が終了していないと判断した場合、ステップ S1に戻り、それ以降の処理を繰り返す。一方、ベクトル検出部 52は、ステップ S7〖こ おいて、すべてのフレームの処理が終了したと判断した場合、フレーム周波数を変換 する処理を終了する。
[0063] 以上のように、本発明に係る信号処理装置 1は、 24P信号の入力画像のフレームか ら動きベクトルを検出し、検出した動きベクトルを、 60P信号のフレーム上の画素に割 付け、割付けられた動きベクトルに基づいて、 60P信号のフレーム上の画素値を生成 する。このとき、信号処理装置 1は、各処理において、評価値 DFD (差分絶対値和) に基づぐより信頼度の高い動きベクトルを選択し、後段に出力する。したがって、信 号処理装置 1においては、動きが破綻することなどが抑制され、より精度のよい画像 を生成することができる。
[0064] 次に、画像補間部 58の構成の詳細について説明する。
[0065] 図 7は、画像補間部 58の構成を示すブロック図である。図 7に構成を示す画像補間 部 58は、割付ベクトルメモリ 55の内挿フレームに割り付けられた動きベクトルと、フレ ーム tおよびフレーム t+ 1の画素値を用いて、内挿フレームの画素値を補間生成し、 60P信号の画像を出力する処理を行う。
[0066] 図 7の例において、時刻 tの画像のフレーム tは、空間フィルタ 92— 1に入力され、 時刻 t+ 1の画像のフレーム t+ 1は、空間フィルタ 92— 2およびバッファ 95に入力さ れる。
[0067] 補間制御部 91は、割付ベクトルメモリ 55の内挿フレームの画素を選択し、選択した 画素に割り付けられている動きベクトルに基づいて、内挿フレーム上の画素と、 2枚の フレーム tおよびフレーム t+ 1の画素との位置関係(空間シフト量)をそれぞれ求める 。すなわち、補間制御部 91は、内挿フレームの画素を基準に、その動きベクトルで対 応付けられるフレーム t上の位置と、内挿フレームの画素に対応するフレーム t上の画 素の位置から、それらの空間シフト量を求め、求めた空間シフト量を空間フィルタ 92 —1に供給する。同様に、補間制御部 91は、内挿フレームの画素を基準に、その動 きベクトルで対応付けられるフレーム t+ 1上の位置と、内挿フレームの画素に対応す るフレーム t+ 1上の画素の位置から、それらの空間シフト量を求め、求めた空間シフ ト量を空間フィルタ 92— 2に供給する。
[0068] また、補間制御部 91は、予め設定されている内挿フレームの時間位相(時刻)に基 づいて、フレーム tとフレーム t+ 1の間における補間重みを求め、求めた補間重みを 、乗算器 93— 1および 93— 2に設定する。例えば、内挿フレームの時刻力 フレーム t+ 1の時刻 t+ 1から「k」離れた時刻で、かつ、フレーム tの時刻 tから「1 k」離れた 時刻である場合 (すなわち、内挿フレームが時刻 tと時刻 t+ 1を「1— k」:「k」に内分 する時刻に生成される場合)、補間制御部 91は、乗算器 93— 1に「1— k」の補間重 みを設定し、乗算器 93— 2に「k」の補間重みを設定する。
[0069] 空間フィルタ 92— 1および 92— 2は、例えば、キュービックフィルタなどにより構成さ れる。空間フィルタ 92— 1は、入力されるフレーム t上の画素の画素値と、補間制御 部 91から供給される空間シフト量に基づいて、内挿フレームの画素に対応する、フレ ーム t上の画素値を求め、求めた画素値を乗算器 93— 1に出力する。空間フィルタ 9 2— 2は、入力されるフレーム t+ 1上の画素の画素値と、補間制御部 91から供給され る空間シフト量に基づいて、内挿フレームの画素に対応する、フレーム t+ 1上の画 素値を求め、求めた画素値を乗算器 93— 2に出力する。
[0070] なお、内挿フレームの画素の位置力 フレーム tまたはフレーム t+ 1上の画素の位 置と一致しない場合(すなわち、内挿フレームの画素の位置力 フレーム tまたはフレ ーム t+ 1において画素以下成分である場合)、空間フィルタ 92— 1および 92— 2は、 フレーム tまたはフレーム t+ 1における内挿フレームの画素の位置の周辺 4画素の画 素値を用いて、周辺 4画素の距離の逆比の和を求めることにより、内挿フレームの画 素に対応するフレーム上の画素値を求める。すなわち、画素以下位置の画素値は、 周辺 4画素との距離を基にした線形補間で値が求められる(その詳細は後述する)。
[0071] 乗算器 93— 1は、空間フィルタ 92— 1から入力されるフレーム t上の画素値に、補 間制御部 91により設定された補間重み「1—k」を乗算し、重み付けされた画素値を、 加算器 94に出力する。乗算器 93— 2は、空間フィルタ 92— 2から入力されるフレー ム t+ 1上の画素値に、補間制御部 91により設定された補間重み「k」を乗算し、重み 付けされた画素値を、加算器 94に出力する。
[0072] 加算器 94は、乗算器 93— 1から入力される画素値と、乗算器 93— 2から入力され る画素値を加算することにより、内挿フレームの画素の画素値を生成し、生成された 内挿フレームの画素値を、バッファ 95に出力する。バッファ 95は、入力されたフレー ム t+ 1をバッファしている。バッファ 95は、生成された内挿フレームを出力し、その次 に、予め設定されている 60Pフレームの時間位相(時刻)に基づいて、必要に応じて 、ノッファしているフレーム t+ 1を出力することにより、 60P信号の画像を、図示せぬ 後段に出力する。
[0073] 以上のように構成される画像補間部 58の画像補間処理の詳細を、図 8のフローチ ヤートを参照して説明する。
[0074] 補間制御部 91は、ステップ S51において、処理する内挿フレームの時間位相に基 づいて、フレーム tとフレーム t+ 1の間における内挿フレームの補間重み(例えば、「 k」および「1— k」)を求め、求められた補間重みを、乗算器 93— 1および 93— 2にそ れぞれ設定し、ステップ S52に進む。補間制御部 91は、ステップ S52において、割 付ベクトルメモリ 55の内挿フレームの画素を選択し、ステップ S53に進む。なお、内 揷フレーム上の画素は、フレームの左上の画素からラスタスキャン順に選択される。
[0075] 補間制御部 91は、ステップ S53において、選択した画素に割り付けられている動き ベクトルに基づいて、内挿フレーム上の画素と、 2枚のフレーム tおよびフレーム t+ 1 の画素との位置関係 (空間シフト量)をそれぞれ求め、求められた空間シフト量を、そ れぞれ空間フィルタ 92— 1および 92— 2に供給し、ステップ S54に進む。具体的に は、補間制御部 91は、ステップ S53において、内挿フレームの画素を基準に、その 動きベクトルで対応付けられるフレーム t上の位置と、内挿フレームの画素に対応す るフレーム t上の画素の位置から、それらの空間シフト量を求め、求めた空間シフト量 を空間フィルタ 92— 1に供給する。同様に、補間制御部 91は、内挿フレームの画素 を基準に、その動きベクトルで対応付けられるフレーム t+ 1上の位置と、内挿フレー ムの画素に対応するフレーム t+ 1上の画素の位置から、それらの空間シフト量を求 め、求めた空間シフト量を空間フィルタ 92— 2に供給する。
[0076] 時刻 tの画像のフレーム tの画素値は、空間フィルタ 92— 1に入力され、時刻 t+ 1 の画像のフレーム t+ 1の画素値は、空間フィルタ 92— 2に入力されている。ステップ S54において、空間フィルタ 92—1および 92— 2は、入力されるフレーム tおよび t+ 1上の画素の画素値と、補間制御部 91から供給される空間シフト量に基づいて、内 揷フレームの画素に対応する、各フレーム上の画素値を求め、求めた画素値を乗算 器 93— 1および 93— 2にそれぞれ出力し、ステップ S55に進む。
[0077] 乗算器 93— 1および 93— 2は、ステップ S55において、空間フィルタ 92— 1または 92— 2から入力される各フレーム上の画素値に、補間制御部 91により設定された補 間重みを重み付けし、重み付けされた画素値を、加算器 94に出力し、ステップ S56 に進む。すなわち、乗算器 93— 1は、空間フィルタ 92— 1から入力されるフレーム t上 の画素値に、補間制御部 91により設定された補間重み「1 k」を乗算し、重み付け された画素値を、加算器 94に出力する。乗算器 93— 2は、空間フィルタ 92— 2から 入力されるフレーム t+ 1上の画素値に、補間制御部 91により設定された補間重み「 k」を乗算し、重み付けされた画素値を、加算器 94に出力する。
[0078] 加算器 94は、ステップ S56において、乗算器 93— 1により重み付けされた画素値と 、乗算器 93— 2により重み付けされた画素値を加算することにより、内挿フレームの 画素の画素値を生成し、生成された画素値を、ノ ッファ 95に出力し、ステップ S57に 進む。補間制御部 91は、ステップ S57において、内挿フレーム上のすべての画素に ついての処理が終了したか否かを判断し、内挿フレーム上のすべての画素について の処理が終了していないと判断した場合、ステップ S52に戻り、それ以降の処理を繰 り返す。補間制御部 91は、ステップ S57において、内挿フレーム上のすべての画素 についての処理が終了したと判断した場合、画像補間処理を終了する。
[0079] 以上のように、内挿フレームに割り付けられた動きベクトルに基づいて、内挿フレー ムの画素値が生成され、上述した図 6のステップ S6において、ノ ッファ 95により、内 揷フレームが出力され、その次に、必要に応じて、フレーム t+ 1が出力されることによ り、 60P信号の画像力 後段に出力される。したがって、内挿フレームの画素に、最も 確から 、動きベクトルが割り付くので、精度のょ 、内挿フレームを生成することがで きる。
[0080] 次に、ベクトル検出部 52の構成の詳細について説明する。
[0081] 図 9は、ベクトル検出部 52の構成を示すブロック図である。図 9に構成を示すベタト ル検出部 52は、入力される時刻 tの画像のフレーム tと、時刻 t+ 1の画像のフレーム t + 1を用いて、フレーム t上の動きベクトルを検出する。この動きベクトルを検出する処 理は、複数の画素力 なる所定のブロック毎に実行される。
[0082] 初期ベクトル選択部 101は、所定のブロック毎に、過去の動きベクトルの検出結果 力も求められる信頼度が高い動きベクトルを、勾配法に用いられる初期値となる初期 ベクトル VOとして、反復勾配法演算部 103に出力する。具体的には、初期ベクトル選 択部 101は、検出ベクトルメモリ 53に記憶される過去に求められた周辺のブロックの 動きベクトルや、シフト初期ベクトルメモリ 107に記憶されるシフト初期ベクトルを、初 期ベクトルの候補ベクトルとして選択する。そして、初期ベクトル選択部 101は、フレ ーム tとフレーム t+ 1を用いて、候補ベクトルの評価値 DFDを求め、候補ベクトルの 中から、求められた評価値 DFDに基づぐ最も信頼度が高いものを選択し、初期べク トル VOとして出力する。なお、初期ベクトル選択部 101の構成の詳細は、後述する。
[0083] プリフィルタ 102—1および 102— 2は、ローパスフィルタやガウシアンフィルタにより 構成され、それぞれ、入力される画像のフレーム tおよびフレーム t+ 1のノイズ成分を 除去し、反復勾配法演算部 103に出力する。
[0084] 反復勾配法演算部 103は、初期ベクトル選択部 101から入力された初期ベクトル V 0と、プリフィルタ 102—1および 102— 2を介して入力されるフレーム tおよびフレーム t+ 1を用いて、所定のブロック毎に、勾配法により、動きベクトル Vnを算出する。反 復勾配法演算部 103は、初期ベクトル VOと、算出された動きベクトル Vnをベクトル評 価部 104に出力する。また、反復勾配法演算部 103は、ベクトル評価部 104による動 きベクトルの評価結果に基づいて、勾配法の演算を繰り返し行い、動きベクトル Vnを 算出する。なお、反復勾配法演算部 103の構成の詳細は、後述する。
[0085] ベクトル評価部 104は、反復勾配法演算部 103からの動きベクトル Vn— 1 (または 初期ベクトル V0)と、動きベクトル Vnの評価値 DFDを求め、求められた評価値 DFD に基づいて、反復勾配法演算部 103を制御し、勾配法の演算を繰り返し実行させ、 最終的に、評価値 DFDに基づぐ信頼性の高いものを選択し、動きベクトル Vとして 、検出ベクトルメモリ 53に記憶する。このとき、ベクトル評価部 104は、動きベクトル V とともに、その動きベクトル Vに対して求められた評価値 DFDを、シフト初期ベクトル 割付部 105に供給する。
[0086] シフト初期ベクトル割付部 105は、ベクトル評価部 104より動きベクトル Vおよびその 評価値 DFDが供給されると、次のフレーム上の着目ブロックを通過する動きベクトル を、その着目ブロックにシフトさせた、シフト初期ベクトルとして設定する。換言すると、 シフト初期ベクトル割付部 105は、動きベクトル Vの終点のブロックと同じ位置の次の フレーム上の着目ブロックを始点とした、動きベクトル Vと同じ大きさで同じ向きの動き ベクトルを、シフト初期ベクトルとして設定する。そして、シフト初期ベクトル割付部 10 5は、設定したシフト初期ベクトルを、着目ブロックに対応させて、シフト初期ベクトルメ モリ 107に割り付ける。
[0087] 具体的には、シフト初期ベクトル割付部 105は、シフト初期ベクトルとして割り付けら れた動きベクトル Vの評価値 DFDを、着目ブロックに対応させて、評価値メモリ 106 に記憶させておき、同じ着目ブロックを通過する(すなわち、着目ブロックと同じ位置 の過去のフレームのブロックを終点とする)他の動きベクトル Vの評価値 DFDと比較 する。そして、シフト初期ベクトル割付部 105は、評価値 DFDに基づぐ信頼度が高 いとされた動きベクトル Vを、着目ブロックにシフトさせ、着目ブロックのシフト初期べク トルとして、シフト初期ベクトルメモリ 107に割り付ける。なお、シフト初期ベクトル割付 部 105の構成の詳細は、後述する。
[0088] 次に、ベクトル検出部 52において用いられる勾配法の原理について説明する。ま ず、動画像中において、水平、垂直、時間軸を用いた座標 (X, y, t)で表される画素 の輝度値を g (X, y, t)とする。ここで、着目画素 (X , y , t )が、微小時間中に、 (dx,
0 0 0
dy, dt)だけ変位したとき、水平、垂直、時間軸の勾配 (差分差)を、それぞれ gx(x ,
0 y , t), gy(x, y, t), gt(x, y, t)と表すと、変位後の画素の輝度値は、 Taylor展
0 0 0 0 0 0 0 0
開近似を用いて、次の式(2)で表される。
[0089] g(x +dx, y +dy, t +dt)
0 0 0
^ g(x , y , t
0 0 0ノ +gx、x , y , t )dx
0 0 0
+ gy(x , y , t )dy+gt(x , y , t )dt
0 0 0 0 0 0
•••(2)
[0090] ここで、動画像中のある着目画素が 1フレーム後に水平 vx,垂直 vyだけ移動した場 合 (以降、(vx, vy)と表す)、その画素の輝度値は、次の式(3)で表される。
[0091] g(x +vx, y +vy, t +1) = g(x, y , t)
0 0 0 0 0 0
•••(3)
[0092] 式(2)を式 (3)に代入すると、次の式 (4)で表される。
[0093] gx(x , y , t )vx+gy(x , y ,り vy
0 0 0 0 0 0
+ gt(x, y , t) = 0
0 0 0
•••(4)
[0094] 式 (4)は、 vx, vyの 2変数の式であるので、着目 1画素に対する単独の式では、そ の解を求めることができない。そこで、次に説明するように、着目画素の周辺領域で あるブロックを 1つの処理単位として考え、ブロック (周辺領域)内の全画素が同じ動き (vx, vy)をすると仮定し、各画素について同様の式を立てる。仮定が前提となるが、 2変数に対して周辺画素の個数の式が得られる。したがって、それらの式を連立させ 、ブロック内全画素の動き補償フレーム差分の自乗和が最小になるような (VX, vy)を 求める。
[0095] 画素(X, y, t)カ^フレーム間に(vx, vy)だけ移動したとき、その動き補償フレーム 間差分 dは、次の式(5)で表される。
[0096] d = g(x+vx, y+vy, t+l)-g(x, y, t)
Figure imgf000025_0001
•••(5)
[0097] 式(5)において、 Ax=gx(x, y, t)であり、水平方向の勾配を表し、 Ay=gy(x, y, t)であり、垂直方向の勾配を表し、 At=gt(x, y, t)であり、時間方向の勾配を表す 。これらを用いて、動き補償フレーム間差分の自乗和を Eとすると、式 (6)で表される
[0098] E = ∑d2
= ∑ (Δχνχ + Ayvy +2ΔχΔ yvxvy
+ 2AxAtvx+2AyAtvy+ At2)
=vx Δχ2+νγ2∑ Ay2+2vxvy∑ ΔχΔγ
+ 2vx∑ AxAt + 2vy∑ AyAt+∑ At2
•••(6)
[0099] ここで、 Eが最小となる (vx, vy)は、各変数における偏微分値が 0になるとき、すな わち、
Figure imgf000025_0002
式(6)から、次の 式(7)および式(8)となる。
[0100] νχ∑ Δχ2+νγ∑ ΔχΔγ+Σ AxAt = 0
•••(7)
vy∑ Δγ2+νχ∑ ΔχΔγ+Σ Ay At = 0
•••(8)
[0101] これらの式(7)および式(8)から、求めた!/、動きである(vx, vy)は、次の式(9)を演 算することにより求めることができる。
[0102] [数 2] v = (∑Δγ2)(∑ΛΐΔχ)-(∑ΔχΛγ)(∑ΛΐΔγ)
(∑Δχ2)(∑Λγ2)-(∑ΛχΔγ)2
(∑ Δχ2) (∑AtAy)-(∑AxAy) (∑AtAx) Vj (∑Δχ2)(∑Δν2)-(∑ΔχΔγ)2
•••(9)
[0103] ここで、図 10を参照して、具体的に説明する。図 10の例において、矢印 Xは、水平 方向を示しており、矢印 Υは、垂直方向を示している。また、矢印 Τは、図中、右奥の 時刻 tのフレーム tから、左手前の時刻 t+ 1のフレーム t+ 1への時間の経過方向を 示している。なお、図 10の例においては、各フレームは、着目画素 pの周辺領域 (ブ ロック)として、勾配法演算に用いられる 8画素 X 8画素の領域のみ示されて 、る。
[0104] フレーム tにお!/、て、左上の画素から下に 5番目、右に 5番目の画素である着目画 素 Pの動きベクトル V(vx, vy)を、上述した勾配法を用いて求める場合、動きベクトル V(vx, vy)は、着目画素 pの x, y方向のそれぞれについて求められる隣接画素 pxお よび pyとの輝度の差分差 (すなわち、勾配) Δχおよび Ay、フレーム t+1において求 められる着目画素 Pの同位相に位置する画素 qとの時間方向の輝度の差分差 (勾配) Atを、着目画素 pの周辺領域(8画素 X 8画素)のすベての画素について求め、それ らの差分差を、式 (9)を用いて演算することにより、求めることができる。
[0105] すなわち、勾配法とは、 2フレーム間において、勾配 Δχ, Δγ,および Atを求め、 求められた Δχ, Δγ,および Atから、差分自乗和を用いて、統計的に、動きベクトル V(vx, vy)を算出するものである。
[0106] 一般的に、このような勾配法を用いた動きベクトル検出方法においては、微小動き に対して精度の高い結果が得られる。し力しながら、実際の動画像の中で動きを求め ようとするとする場合、この勾配法は、その動き量が大きすぎるため実用的とはいえな い。これに対応して、この勾配法を複数回反復する方法が考えられる。勾配法を反復 して実行することにより、各演算で求められる動き量が収束するため、徐々に正しい 動きが求められる。
[0107] し力しながら、ただ、勾配法を反復するだけでは、リアルタイム処理を行おうとした場 合、演算時間の面から実用的ではない。そこで、ベクトル検出部 52においては、過 去フレームと現在フレームでの周辺画素の動きに基づいて求められる初期ベクトルを
、初期値として用いることで、勾配法の繰り返し回数を軽減している。すなわち、動き の起点となる着目画素から、初期ベクトルが指す先へオフセットを予め加えることで大 ま力な動きを算出し、オフセットが加えられたその位置力も勾配法を用いた演算を行 うようにすれば、画素以下動きを含めた微調整を行うことができる。これにより、演算 時間を増大させることなぐ精度のよい動きベクトルを検出することができる。
[0108] 図 11は、初期ベクトルを用いて実行される反復勾配法について具体的に説明する 図である。図 11の例においては、矢印 Tは、図中、左手前の時刻 tのフレーム tから、 右奥の時刻 t+ 1のフレーム t+ 1への時間の経過を示している。なお、各画素 p, qO , ql, q2,および q3を中心としたブロックは、その画素の、勾配法演算に用いられる 周辺領域 (ブロック)を表して!/ヽる。
[0109] 図 11の例の場合、フレーム tにおける着目画素 pに対して、フレーム t+ 1において は、着目画素 pの同位相に位置する画素 qOではなぐ予め求めておいた初期べタト ル νθをオフセット (移動)して計算した位置 (画素) qlを開始点として 1回目の勾配法 演算が行われ、その結果、動きベクトル vlが得られる。
[0110] 次に、画素 qOから vO+vlをオフセットして計算した位置 (画素) q2を開始点として、 2回目の勾配法演算が行われ、その結果、動きベクトル v2が得られる。これにより、最 終的に動きベクトル Vは、式(10)として求められる。
[0111] V = v0+vl +v2
•••(10)
[0112] 以上のようにして、初期ベクトルを用いて、反復勾配法の演算を実行することにより
、演算時間を短縮させつつ、精度の高い動きベクトルを求めることができる。
[0113] 次に、図 12のフローチャートを参照して、動きベクトル検出処理の詳細について説 明する。ベクトル検出部 52には、入力される時刻 tの画像のフレーム tと、時刻 t+ 1の 画像のフレーム t+ 1が入力される。
[0114] 初期ベクトル選択部 101は、ステップ S101において、フレーム t上の処理の対象と なるブロックを、着目ブロックとして選択し、ステップ S102〖こ進む。なお、フレーム上 にお ヽては、左上のブロックカゝらラスタスキャン順に処理が実行される。
[0115] ステップ S102において、初期ベクトル選択部 101は、初期ベクトル選択処理を実 行する。初期ベクトル選択部 101は、ステップ S101において、所定のブロック毎に、 過去の動きベクトルの検出結果から、信頼度が高い動きベクトルを選択し、選択した 動きベクトルを、勾配法に用いられる初期値となる初期ベクトル VOとして、反復勾配 法演算部 103に出力し、ステップ S103に進む。
[0116] すなわち、初期ベクトル選択部 101は、過去の勾配法演算評価処理 (後述するステ ップ S103)において求められ、検出ベクトルメモリ 53に記憶された周辺ブロックの動 きベクトルや、過去のシフト初期ベクトル割付処理(後述するステップ S 104)において シフト初期ベクトルメモリ 107に記憶されたシフト初期ベクトルを、初期ベクトルの候補 ベクトルとして選択する。そして、初期ベクトル選択部 101は、フレーム tとフレーム t+ 1を用いて、候補ベクトルの評価値 DFDを求め、候補ベクトルの中から、求められた 評価値 DFDに基づいた信頼度が高いものを選択し、選択された候補ベクトルを、初 期ベクトル V0として出力する。なお、ステップ S 102における、初期ベクトル選択処理 の詳細は、後述する。
[0117] ステップ S103において、反復勾配法演算部 103およびベクトル評価部 104は、反 復勾配法演算評価処理 (なお、反復勾配法演算処理とも称する)を実行し、ステップ S104に進む。具体的には、ステップ S103において、反復勾配法演算部 103は、初 期ベクトル選択部 101から入力された初期ベクトル V0と、プリフィルタ 102— 1および 102— 2を介して入力されるフレーム tおよびフレーム t+ 1を用いて、ベクトル評価部 104による動きベクトルの評価結果に基づいて、勾配法の演算を繰り返し行い、動き ベクトル Vnを算出する。また、ベクトル評価部 104は、反復勾配法演算部 103からの 動きベクトル Vn—lと、動きベクトル Vnの評価値 DFDを求め、求められた評価値 DF Dに基づぐ最も信頼性の高いものを選択し、動きベクトル Vとして、検出ベクトルメモ リ 53に記憶する。このとき、ベクトル評価部 104は、動きベクトル Vとともに、その動き ベクトル Vに対して求めた評価値 DFDを、シフト初期ベクトル割付部 105に供給する 。なお、ステップ S103における、反復勾配法演算処理の詳細は、後述する。
[0118] ステップ S104において、シフト初期ベクトル割付部 105は、シフト初期ベクトル割付 処理を実行し、ステップ S105に進む。シフト初期ベクトル割付部 105は、ベクトル評 価部 104より動きベクトル Vおよびその評価値 DFDが供給されると、ステップ S104に お!、て、次のフレーム上の着目ブロックを通過する動きベクトルを、その着目ブロック にシフトさせた、シフト初期ベクトルとして設定する。すなわち、換言すると、動きべタト ル Vの終点のブロックと同 Cf立置の次のフレーム上の着目ブロックを始点とした、動き ベクトル Vと同じ大きさで同じ向きの動きベクトル力 シフト初期ベクトルとして設定さ れる。そして、シフト初期ベクトル割付部 105は、設定したシフト初期ベクトルを、着目 ブロックに対応させて、シフト初期ベクトルメモリ 107に割り付ける。
[0119] なお、具体的には、シフト初期ベクトル割付部 105は、シフト初期ベクトルとして割り 付けられた動きベクトル Vの評価値 DFDを、着目ブロックに対応させて、評価値メモリ 106に記憶させておき、同じ着目ブロックを通過する(すなわち、着目ブロックと同じ 位置の過去のフレームのブロックを終点とする)他の動きベクトル Vの評価値 DFDと 比較し、評価値 DFDに基づぐ信頼度が高いとされた動きベクトル Vを、そのブロック にシフトさせてシフト初期ベクトルと設定し、シフトさせたブロックに対応させて、シフト 初期ベクトルメモリ 107に割り付ける。なお、シフト初期ベクトル割付部 105の構成の 詳細は、後述する。
[0120] ステップ S105において、初期ベクトル選択部 101は、フレーム tにおいて、すべて のブロックの処理が終了したか否かを判断し、すべてのブロックの処理が終了してい ないと判断した場合、ステップ S101に戻り、それ以降の処理を繰り返す。また、ステ ップ S105において、初期ベクトル選択部 101は、フレーム tにおいて、すべてのブロ ックの処理が終了したと判断した場合、すなわち、フレーム t上のすべてのブロックに おいて、動きベクトル Vが検出されたと判断し、動きベクトル検出処理を終了する。
[0121] 以上のように、過去に検出された動きベクトル力 初期ベクトルが選択され、選択さ れた初期ベクトルに基づいて、反復勾配法の演算が用いられて、繰り返し動きべタト ルが算出され、算出された動きベクトルの中から、評価値 DFDに基づぐ信頼度が高 い(すなわち、最も確からしい)動きベクトルが検出される。この結果、検出ベクトルメ モリ 53に、フレーム t上のすべてのブロックに対応する動きベクトル Vが記憶される。
[0122] 次に、シフト初期ベクトル割付部 105の構成の詳細について説明する。 [0123] 図 13は、シフト初期ベクトル割付部 105の構成を示すブロック図である。図 13に構 成を示すシフト初期ベクトル割付部 105は、前 (過去)フレームにおいて、ベクトル評 価部 104より検出された動きベクトル Vに基づいて、初期ベクトルの候補ベクトルとな るシフト初期ベクトルを設定し、シフト初期ベクトルメモリ 107に割り付ける処理を行う。 シフト初期ベクトル割付部 105には、ベクトル評価部 104より検出された動きベクトル V、および、その動きベクトル Vの評価値 DFDが入力される。
[0124] 割付対象位置演算部 201は、ベクトル評価部 104より検出された動きベクトル Vが、 次の時刻のフレーム上において通過するブロックの位置(すなわち、現在のフレーム 上において検出された動きベクトル Vの終点のブロックと同じ位置にある次のフレー ム上のブロックの位置)を演算し、演算されたブロックの位置を、評価値メモリ 106お よびシフト初期ベクトル置換部 203に供給する。
[0125] 評価値比較部 202は、動きベクトル V、および、その動きベクトル Vの評価値 DFD が入力されると、割付対象位置演算部 201からのブロックの位置の評価値 DFDを、 評価値メモリ 106から読み出す。そして、評価値比較部 202は、評価値メモリ 106か ら読み出された評価値 DFDと、ベクトル評価部 104により検出された動きベクトル V の評価値 DFDとを比較判断し、検出された動きベクトル Vの評価値 DFDの方が小さ い (すなわち、信頼度が高い)と判断した場合、シフト初期ベクトル置換部 203を制御 し、シフト初期ベクトルメモリ 107の、シフト初期ベクトル割付部 105により供給された ブロックの位置のシフト初期ベクトルを、評価値 DFDに基づぐ信頼度が高いと判断 した動きベクトル Vで書き換えさせる。また、それと同時に、評価値比較部 202は、評 価値置換部 204を制御し、評価値メモリ 106において、割付対象位置演算部 201に より選択されたブロックの位置の評価値 DFDを、動きベクトル Vの評価値 DFDで書き 換えさせる。
[0126] シフト初期ベクトル置換部 203は、シフト初期ベクトルメモリ 107の、割付対象位置 演算部 201により供給されたブロックの位置のシフト初期ベクトルを、評価値比較部 2 02から供給される動きベクトル V (すなわち、動きベクトル Vと同じ大きさで同じ向きの 動きベクトル)で書き換える。評価値置換部 204は、評価値比較部 202の制御のもと 、評価値メモリ 106において、割付対象位置演算部 201により選択されたブロックの 位置の評価値 DFDを、動きベクトル Vの評価値 DFDで書き換える。
[0127] 評価値メモリ 106は、次のフレーム上における、各ブロックに割り当てられるシフト初 期ベクトル候補の評価値 DFDをブロック毎に記憶する。シフト初期ベクトルメモリ 107 は、次のフレームにおける各ブロックにおいて最も評価値 DFDが小さい(すなわち、 最も信頼度がある)動きベクトルを、シフト初期ベクトルとして、そのブロックに対応さ せて記憶する。
[0128] 図 14は、シフト初期ベクトル割付部 105により割り付けられるシフト初期ベクトルを 1 次元的に説明する図である。図 14の例においては、上から順に、時刻 T=t— 1のフ レーム t—l、時刻 T=tのフレーム t、および、時刻 T=t+ 1のフレーム t+ 1が示され ており、各フレーム上の仕切りは、各フレームにおけるブロックの境界を示している。
[0129] 図 14の例の場合、フレーム t—l上のブロック Bにおいて検出される動きベクトルを、 動きベクトル V (図中、実線矢印)とし、ブロック Bを始点とする動きベクトル Vによるフ レーム t上の動き補償先(以下、オフセット先とも称する)を、ブロック Btとする。また、 フレーム t—l上の動きベクトル Vをフレーム t上のブロック Btにシフトした動きベクトル を、シフト初期ベクトル SV (図中、点線矢印)とする。なお、この場合、オフセット先と は、フレーム t—l上において検出された動きベクトル Vの終点のブロックと同じ位置 にあるフレーム t上のブロック Btのことを表しており、シフトとは、フレーム t—l上にお いて検出された動きベクトル Vと同じ大きさで同じ向きの動きベクトルの始点を、フレ ーム t 1上の動きべクトノレ Vの終点のブロックと同じ位置にあるフレーム t上のブロッ ク Btとすることをいう。すなわち、シフト初期ベクトル SVは、フレーム t—1上において 検出された動きベクトル Vの終点のブロックと同じ位置にあるフレーム t上のブロック B tを始点とした、動きベクトル Vと同じ大きさで同じ向きの動きベクトルのことである。
[0130] 一般的に、連続するフレーム間では、動物体の動き量にある程度の連続性があり、 その動き量の変化が小さいとされるので、図 14の例においては、ブロック B上の物体 が等速かそれに近い動きをする場合、ブロック Btにおける動きベクトルも、動きべタト ル V力それに近!、動きのベクトルになることが多!、。
[0131] したがって、このシフト初期ベクトル SVを、フレーム t上の着目ブロック Btの動きべク トルを検出する場合に、勾配法演算に与える初期ベクトルの候補として用いることに より、周辺ブロックの動きベクトルだけを初期ベクトルの候補として用いる場合よりも、 勾配法演算による動きベクトル検出に、より適切な初期ベクトルを得ることができる。
[0132] 以上のことを、図 15および図 16を参照して、具体的に説明する。なお、図 15およ び図 16においては、各フレーム上には、 9つのブロックが示されている。
[0133] 図 15は、大きな動きの物体が通過しているブロックと、その周辺ブロックの動きべク トルの例を表している。図 15の例の場合、 1ブロック力 なる、ある物体 Olの画像ォ ブジェクトは、大きな動きの動きベクトル VIで、フレーム t 1上の最右端 (左から 9番 目)のブロックから、フレーム t上の左から 5番目のブロックを経由して、フレーム t+ 1 上の最左端のブロックへ移動している。一方、 4ブロック力もなる物体 02の画像ォブ ジェタトは、動きベクトル VIよりも小さな動きの動きベクトル V2で、フレーム t— 1上の 左から 3乃至 6番目の 4ブロック力ら、フレーム t上の左から 4乃至 7番目の 4ブロックを 経由して、フレーム t+ 1上の左から 5乃至 8番目の 4ブロックへ移動している。すなわ ち、フレーム t上の左から 5番目のブロックにおいて、物体 Olの画像オブジェクトと物 体 02の画像オブジェクトは、物体 Olの画像オブジェクトを手前にして交差している。
[0134] このとき、フレーム t上において、物体 Olの画像オブジェクトが動きベクトル VIで通 過する、左から 5番目のブロックの動きベクトルを検出するために、周辺ブロックの動 き力も初期ベクトルを抽出しようとしても、周辺ブロック (左力も 4または 6番目のブロッ ク)に、物体 02の画像オブジェクトが、物体 Olの画像オブジェクトとは異なる動きべ タトル V2で通過しているため、適切な動きベクトルは、存在しない。一方、シフト初期 ベクトル SV1 (図中、点線矢印)は、このような場合であっても、過去のフレーム T—1 上で検出された動きベクトル VIを、そのフレーム t上の左から 5番目のブロックにシフ トした動きベクトル(すなわち、フレーム t—l上において検出された動きベクトル VIの 終点のブロックと同 Cf立置にあるフレーム t上のブロックを始点とした、動きベクトル VI と同じ大きさで同じ向きの動きベクトル)であるので、確実に取得することができる。
[0135] 図 16は、動物体の境界のブロックと、その周辺ブロックの動きベクトルの例を表して いる。図 16の例の場合、 1ブロック力らなる、ある物体 03の画像オブジェクトは、動き ベクトル V3で、フレーム t—l上の左から 6番目のブロックから、フレーム t上の左から 5 番目のブロックを経由して、フレーム t+ 1上の左から 4番目のブロックへ移動している 。一方、 9ブロック以上からなる物体 04の画像オブジェクトは、動きベクトル VIとは異 なる動きベクトル V4で、フレーム t—l上の全 9ブロックから、フレーム t上の左から 2乃 至 9番目の 8ブロックを経由して、フレーム t+ 1上の左から 3乃至 9番目の 7ブロックへ 移動している。すなわち、物体 03の画像オブジェクトは、フレーム t—lの左から 6番 目のブロック、フレーム t上の左から 5番目のブロック、およびフレーム t+ 1左から 4番 目のブロックにおいて、物体 04の画像オブジェクトの手前を通過している。
[0136] このとき、フレーム t上において、物体 03の画像オブジェクトが動きベクトル V3で通 過する、左から 5番目のブロックの動きベクトルを検出するために、周辺ブロックの動 き力も初期ベクトルを抽出しようとしても、周辺ブロック (左力も 4または 6番目のブロッ ク)に、物体 04の画像オブジェクトが、物体 03の画像オブジェクトとは異なる動きべ タトル V4で通過しているため、適切な動きベクトルは、存在しない。しかしながら、こ の場合においても、図 15の場合と同様に、シフト初期ベクトル SV3 (図中、点線矢印 )は、過去のフレーム T—1上で検出された動きベクトル V3を、そのフレーム t上の右 力 5番目のブロックにシフトしたベクトル(すなわち、フレーム t—1上において検出さ れた動きベクトル V3の終点のブロックと同 Cf立置にあるフレーム t上のブロックを始点 とした、動きベクトル V3と同じ大きさで同じ向きの動きベクトル)であるので、確実に取 得することができる。
[0137] 以上のように、図 15に示されるような大きな動きを持つ物体や、図 16に示されるよう に動 、て 、る物体の境界にぉ 、ては、動きベクトルを検出しょうとする着目ブロックの 初期ベクトルの候補となる周辺ブロックに、着目ブロックの初期ベクトルとして最適な 動きベクトルが存在しない場合が多く存在する。これに対して、シフト初期ベクトルは 、過去のフレーム t—l上において検出された動きベクトルの終点のブロックと同じ位 置にあるフレーム t上のブロックを始点とした、動きベクトルと同じ大きさで同じ向きの 動きベクトルであるので、ブロック間の空間距離に依存しないため、周辺ブロックに、 着目ブロックの初期ベクトルとして適切な動きベクトルが存在しない場合にも、確実に 取得することができ、初期ベクトルの最適な候補として用いることができる。
[0138] ここで、ー且、図 14に戻り、シフト初期ベクトルの決定方法について説明する。図 1 4の例において、動きベクトル検出処理を行うフレーム t上の着目ブロック Btを基準と して、フレーム t—lから、着目ブロック Btを通過する動きベクトル(すなわち、フレーム t上のブロック Btと同 Cf立置にあるフレーム t—1のブロックを終点とする動きベクトル) を探索しょうとすると、フレーム t 1上の全ブロックの動きベクトルを検索しなければ ならず、処理が膨大になってしまう。したがって、この場合、動きベクトル検出時に、膨 大な処理分の演算量をこなさなければならず、その実現 (ハードウ ア化)が困難で めつに。
[0139] そこで、シフト初期ベクトル割付部 105は、フレーム t— 1における動きベクトル検出 の際に、着目ブロック Btにおいて検出された動きベクトル V力 次の時刻のフレーム t 上で通過するブロックの位置(すなわち、動きベクトル Vの終点のブロックと同じ位置 のフレーム t上のブロック)を求め、その動きベクトル Vを、ブロック Btに対するシフト初 期ベクトル SVとして、予め割り付けておく。これにより、フレーム t上での動きベクトル 検出の際に必要となるシフト初期ベクトルを探索する演算量を削減することができ、 ハードウェア化が実現できるようになり、現実的に、シフト初期ベクトルを、初期べタト ルの候補として用いることが可能になる。
[0140] 図 17を参照して、シフト初期ベクトル割付部 105によるシフト初期ベクトルの決定方 法を具体的に説明する。図 17の例においては、矢印 Tは、図中、左手前の時刻 t—l のフレーム t—lから、右奥の時刻 tのフレーム tへの時間の経過を示している。また、 各フレーム上の丸は、画素を表している。
[0141] フレーム t—l上において、ブロック BOは、 4 X 4画素により構成される。ブロック BO において検出された動きベクトル Vbとすると、ブロック BOをフレーム t上にオフセット( 動き補償)したオフセット先(ブロック BOの動きベクトル Vbの終点のブロックと同じ位 置のフレーム t上のブロック) AOは、一般的には、フレーム t上の 4 X 4画素により構成 される 4つのブロック Btl乃至 Bt4と重なりを持つ。したがって、図 17の例の場合にお いては、このオフセット先 AOと重なりを持つ 4つのブロック Btl乃至 Bt4のすべてが、 動きベクトル Vbを、シフト初期ベクトルとして割り付ける対象ブロックとされる。
[0142] 以上のようにして前のフレームにおいて検出された動きベクトルを、シフト初期べタト ルとして割り付ける。この場合、割り付けられる対象となるブロックの位置は、動きべク トルの大きさと向きによる。このため、フレーム t—l上で検出される動きベクトルの分 布によっては、図 18に示されるように、フレーム t上において、複数のシフト初期べタト ルが割り付ける対象となり競合するブロックや、逆に、シフト初期ベクトルの割り付けが 起こらな 、ブロックが発生してしまう。
[0143] 図 18は、シフト初期ベクトルの割り付けの例を示している。図 18の例において、各 フレームの仕切りは、ブロックの境界を示しており、フレーム t—l上には、図中左から 、ブロック B1乃至 B5により構成され、フレーム t上には、図中左から、ブロック Btl乃 至 Bt5が示されている。
[0144] ブロック B1においては、動きベクトル VIが検出され、ブロック B1のオフセット先 A1 は、フレーム t上のブロック Btlおよび Bt2と重なりを持つ。ブロック B2においては、動 きベクトル V2が検出され、ブロック B2のオフセット先 A2は、フレーム t上のブロック Bt 1および Bt2と重なりを持つ。ブロック B3おいては、動きベクトル V3が検出され、ブロ ック B3のオフセット先 A3は、フレーム t上のブロック Bt4および Bt5と重なりを持つ。 ブロック B4においては、動きベクトル V4が検出され、ブロック B4のオフセット先 A4は 、フレーム t上のブロック Bt4および Bt5と重なりを持つ。ブロック B5においては、動き ベクトル V5が検出され、ブロック B5のオフセット先 A5は、フレーム t上のブロック Bt5 および図示せぬ隣接ブロックと重なりを持つ。
[0145] すなわち、図 18の例においては、フレーム t上のブロック Btlおよび Bt2には、動き ベクトル VIまたは V2のどちらか一方がシフト初期ベクトルとして割り付けられる。また 、フレーム t上のブロック Bt4には、動きべクトノレ V3および V4のどちらか一方がシフト 初期ベクトルとして割り付けられ、フレーム t上のブロック Bt5には、動きベクトル V3、 V4、および V5のうちのいずれかがシフト初期ベクトルとして割り付けられる。しかしな がら、フレーム t上のブロック Bt3には、シフト初期ベクトルの候補となる動きベクトルが 存在せず、シフト初期ベクトルは割り付けられな 、。
[0146] したがって、シフト初期ベクトル割付部 105は、ブロック Bt3のように、シフト初期べク トルの割り付けが起こらな 、ブロックに対して、 0ベクトルをシフト初期ベクトルとして割 り付ける。一方、シフト初期ベクトル割付部 105は、ブロック Btl, Bt2, Bt4,および B t5のように、複数の動きタトルが競合するブロックに対して、上述した評価値 DFDに 基づぐ信頼度が高い動きベクトルを選択し、選択した動きベクトルを、シフト初期べ タトルとしてそれぞれのブロックに割り付ける。
[0147] なお、図 18の例においては、説明の便宜上、オフセット先 Aは、フレーム t上カも少 しずらして示されている。
[0148] 図 19は、競合する動きベクトルの例を示す図である。図 19の例においては、フレー ム t—l上のブロック B1および B2から、それぞれにおいて検出された動きベクトル VI および V2が、フレーム t上のブロック Btを通過している。すなわち、ブロック Btは、動 きベクトル VIのフレーム t 1上の終点と同 Cf立置のフレーム t上のブロックであり、動 きべクトノレ V2のフレーム t— 1上の終点と同 Cf立置のフレーム t上のブロックである。こ のように、複数の動きベクトルが同じブロックに対して競合する場合には、動きべタト ル VIに対する評価値 DFD1と、動きベクトル V2に対する評価値 DFD2の値が比較 され、評価値 DFDが小さい方 (すなわち、信頼度が高い方)がブロック Btに対応する シフト初期ベクトル SV2として選択される。これにより、評価値 DFDに基づぐ信頼度 の高 、シフト初期ベクトルを得ることができる。
[0149] 次に、図 20のフローチャートを参照して、シフト初期ベクトル割り付け処理の詳細に ついて説明する。前段において、ベクトル評価部 104は、フレーム t—l上の着目ブロ ックの動きベクトル Vを検出すると、検出された動きベクトル Vとともに、その動きべタト ル Vに対して求めた評価値 DFDを、シフト初期ベクトル割付部 105に供給する。
[0150] ステップ S201において、評価値比較部 202は、ベクトル評価部 104から、動きべク トル Vとともに、その動きベクトル Vの評価値 DFDを入力する。また、このとき、割付対 象位置演算部 201も、動きベクトル Vを入力し、ステップ S202に進む。割付対象位 置演算部 201は、動きベクトル Vのフレーム tにおけるオフセット (動き補償)先の割付 対象ブロックの位置を求める。すなわち、割付対象位置演算部 201は、フレーム t—l 上において検出された動きベクトル Vの終点のブロックと同じ位置にあるフレーム t上 のブロックの位置を求め、ステップ S203に進む。割付対象位置演算部 201は、ステ ップ S203において、求められた割付対象ブロックのうち、 1つの割付対象ブロックを 選択し、選択した割り付け対象ブロックの位置を、評価値メモリ 106およびシフト初期 ベタ卜ノレ置換咅 203【こ供給し、ステップ S204【こ進む。なお、ステップ S203【こお!ヽて は、割付対象ブロックのうち、フレーム t上において左上のブロックから順に選択され る。
[0151] ステップ S204において、評価値比較部 202は、評価値メモリ 106から、割付対象 位置演算部 201により選択された割付対象ブロックの評価値 DFDを取得し、ステツ プ S205に進み、ステップ S201において入力された動きベクトル Vの評価値 DFDが 、評価値メモリ 106の評価値 DFDよりも小さいか否力 (すなわち、動きベクトル Vの評 価値 DFDが、評価値メモリ 106の評価値 DFDよりも信頼度が高いか否力 )を判断し 、動きベクトル Vの評価値 DFD力 評価値メモリ 106の評価値 DFDよりも小さいと判 断された場合、ステップ S206に進む。
[0152] 評価値比較部 202は、ステップ S206において、シフト初期ベクトル置換部 203を制 御し、割付対象位置演算部 201により選択されたシフト初期ベクトルメモリ 107の割 付対象ブロックのシフト初期ベクトルを、動きベクトル V (すなわち、動きベクトル Vと同 じ大きさで同じ向きの動きベクトル)に書き換えさせ、ステップ S207に進み、評価値 置換部 204を制御し、割付対象位置演算部 201により選択された割付対象ブロック の評価値 DFDを、動きベクトル Vの評価値 DFDで書き換えさせ、ステップ S 208に進 む。
[0153] また、評価値比較部 202は、ステップ S205において、ステップ S 201において入力 された動きベクトル Vの評価値 DFD力 評価値メモリ 106に記憶される評価値 DFD よりも小さくないと判断した場合、ステップ S206および S207の処理をスキップし、ス テツプ S208に進む。すなわち、この場合、評価値メモリ 106の評価値 DFD力 動き ベクトル Vの評価値 DFDよりも信頼度が高 、と判断されるので、評価値メモリ 106お よびシフト初期ベクトルメモリ 107の値は、書き換えられることはな!/、。
[0154] 割付対象位置演算部 201は、ステップ S208において、動きベクトル Vの割り付け対 象ブロックすべての処理が終了した力否かを判断し、割り付け対象ブロックすべての 処理が終了していないと判断した場合、ステップ S203に戻り、それ以降の処理を繰 り返す。また、割付対象位置演算部 201は、ステップ S208において、動きベクトル V の割り付け対象ブロックすべての処理が終了したと判断した場合、シフト初期ベクトル 割付処理を終了する。
[0155] なお、初回の処理においては、選択された割付対象ブロックに対応するシフト初期 ベクトル力 シフト初期ベクトルメモリ 107にまだ記憶されていない。したがって、その シフト初期ベクトルの評価値 DFDが、評価値メモリ 106の対応する割付対象ブロック に、まだ記憶されていない場合には、ステップ S 204において、選択された割付対象 ブロックから評価値 DFDは、取得されないので、ステップ S205においては Yesと判 断されることとし、ステップ S206および S207の処理が実行される。
[0156] 以上のように、着目ブロックの動きベクトルの検出を処理する際に、連続するフレー ム間において動物体の動き量にはある程度の連続性があり、動き量の変化が小さい ことに基づいて、前の時刻(過去)のフレームから、次の時刻のフレームの着目ブロッ クを通過する動きベクトル (すなわち、過去のフレーム上において検出された動きべク トル Vの終点のブロックと同じ位置にある次のフレーム上のブロックを始点とした、動き ベクトル Vと同じ大きさで同じ向きの動きベクトル)であるシフト初期ベクトルを、初期べ タトルの候補ベクトルとすることにより、従来のように、周辺ブロックにおいて過去に求 められている動きベクトルのみを初期ベクトルの候補ベクトルとする場合よりも、特に、 動 ヽて 、る物体の境界にぉ 、ては、勾配法演算の初期値として適切な動きベクトル を与えることができ、これにより、勾配法の演算による動きベクトル検出の精度を向上 させることがでさる。
[0157] また、シフト初期ベクトルを求める際に、前の時刻のフレームにおいて検出された動 きベクトルが次の時刻のフレームにおいて通過するブロック(すなわち、フレーム t 1 上において検出された動きベクトル Vの終点のブロックと同じ位置にあるフレーム t上 のブロック)を求め、次の時刻のフレーム上の着目ブロックにおけるシフト初期べタト ルとして割り付けるようにしたので、着目ブロックを通過する動きベクトルを、前の時刻 のフレームの全ブロックの動きベクトル力も探索する場合よりも、処理の演算量が削減 されるため、膨大な演算量により実現が困難であったハードウ ア化を実現すること ができる。
[0158] 次に、初期ベクトル選択部 101の構成の詳細について説明する。
[0159] 図 21は、初期ベクトル選択部 101の構成を示すブロック図である。図 21に構成を 示す初期ベクトル選択部 101は、前 (過去)フレームにおいて検出された動きベクトル や、シフト初期ベクトルなどの候補ベクトル (以下、初期候補ベクトルとも称する)から、 信頼度の高い動きベクトルを、初期ベクトルとして選択する処理を行う。初期ベクトル 選択部 101には、時刻 tの画像のフレーム tと、時刻 t+ 1の画像のフレーム t+ 1が入 力される。
[0160] 候補ベクトル位置演算部 251は、フレーム tが入力されると、フレーム t上の処理の 対象となる着目ブロックを選択し、着目ブロックの周辺領域から、着目ブロックの初期 候補ベクトルを取得する候補ブロックの位置、初期候補ベクトルとなる動きベクトルの 種類および優先順位を求め、求められた優先順位の順に、候補ブロックの位置情報 および初期候補ベクトルの種類情報を、検出ベクトル取得部 252およびシフト初期べ タトル取得部 253に供給する。また、候補ベクトル位置演算部 251は、候補ブロックの 位置情報を、オフセット位置演算部 254にも供給する。
[0161] なお、信号処理装置 1においては、初期候補ベクトルの数は、初期ベクトルの精度 と、ハードウェア能力の兼ね合いなどに基づいて所定数に設定されており、さらに、 候補ブロックの位置、初期候補ベクトルの種類、および優先順位も、例えば、図 23を 参照して後述するように、予め設定されている。また、初期候補ベクトルの種類として は、過去フレームにおいて、所定のブロックを通過する動きベクトルを、その所定のブ ロックにシフトさせた動きベクトル (すなわち、過去フレーム上において検出された動 きベクトルの終点のブロックと同 Cf立置にある次のフレーム上のブロックを始点とした、 動きベクトル Vと同じ大きさで同じ向きの動きベクトル)であるシフト初期ベクトル SV、 過去フレームにおいて検出された動きベクトル (以下、過去ベクトル PVとも称する)、 現在のフレームにおいて着目ブロックより手前のブロックにおいて検出された動きべ タトル(現在ベクトル CVとも称する)、および 0ベクトルがある。
[0162] したがって、候補ベクトル位置演算部 251は、予め設定された初期候補ベクトルの 種類が過去ベクトルまたは現在ベクトルであった場合、候補ブロックの位置情報およ び初期候補ベクトルの種類情報を、検出ベクトル取得部 252に供給し、求めた初期 候補ベクトルの種類がシフト初期ベクトルであった場合、候補ブロックの位置情報お よび初期候補ベクトルの種類情報を、シフト初期ベクトル取得部 253に供給し、その どちらでもなカゝつた場合 (例えば、初期候補ベクトルの種類が、 0ベクトルである場合) 、 0ベクトルを設定し、 0ベクトルと共に、候補ブロックの位置情報を、オフセット位置演 算部 254に供給する。
[0163] 検出ベクトル取得部 252は、候補ベクトル位置演算部 251により供給された候補ブ ロックの位置情報および初期候補ベクトルの種類情報に応じた動きベクトルを、検出 ベクトルメモリ 53より取得し、取得した動きベクトルを、初期候補ベクトルとして、オフ セット位置演算部 254に出力する。
[0164] シフト初期ベクトル取得部 253は、候補ベクトル位置演算部 251により供給された 候補ブロックの位置情報および初期候補ベクトルの種類情報に応じて、候補ブロック の位置情報に対応したシフト初期ベクトルを、シフト初期ベクトルメモリ 107から取得 し、初期候補ベクトルとしてオフセット位置演算部 254に出力する。また、シフト初期 ベクトル取得部 253は、候補ベクトル位置演算部 251により指示されたブロックの位 置に、シフト初期ベクトルが割り付けられていない場合、 0ベクトルを、オフセット位置 演算部 254に出力する。なお、シフト初期ベクトルが割り付けられていない場合には 、 0ベクトル力 シフト初期ベクトルメモリ 107に予め記憶されているようにしてもよい。
[0165] オフセット位置演算部 254は、検出ベクトル取得部 252またはシフト初期ベクトル取 得部 253から初期候補ベクトル (あるいは候補ベクトル位置演算部 251からの 0ベタト ル)を入力すると、候補ベクトル位置演算部 251により供給された候補ブロックの位置 情報に基づいて、各初期候補ベクトルに対して、フレーム tの着目ブロックを、フレー ム t+ 1にオフセット (動き補償)させたオフセット先のブロック位置を演算する。そして 、オフセット位置演算部 254は、初期候補ベクトルとともに、候補ブロックの位置情報 、およびオフセット先ブロック位置の情報を、評価値演算部 255に出力する。
[0166] 評価値演算部 255は、オフセット位置演算部 254より初期候補ベクトルとともに、候 補ブロックの位置情報、およびオフセット先ブロック位置の情報を入力すると、フレー ム tとフレーム t+ 1を用いて、初期候補ベクトルの評価値 DFDを求める。そして、評 価値演算部 255は、初期候補ベクトルとともに、求められた評価値 DFDを、評価値 比較部 256に出力する。
[0167] 評価値比較部 256は、評価値演算部 255により入力された評価値 DFDと、最適候 補格納用レジスタ 257に格納されている最適候補ベクトルの評価値 DFDを比較し、 評価値演算部 255により入力された初期候補ベクトルの評価値 DFDが、最適候補 ベクトルの評価値 DFDよりも小さい、すなわち、初期候補ベクトルが最適候補べタト ルよりも信頼度が高いと判断された場合、最適候補格納用レジスタ 257の最適候補 ベクトルおよびその評価値 DFDを、信頼度が高!、とされた初期候補ベクトルおよび その評価値 DFDで置き換える。そして、最終的に、評価値比較部 256は、最適候補 格納用レジスタ 257を制御し、すべての候補ベクトルの中から、評価値 DFDに基づく 、信頼度が最も高いと判断された最適候補ベクトルを、初期ベクトル VOとして、反復 勾配法演算部 103に出力させる。
[0168] 最適候補格納用レジスタ 257は、評価値比較部 256により評価値 DFDが小さい( 信頼度が高い)とされた初期候補べ外ルが、最適候補ベクトルとして、その評価値 D FDとともに記憶されている。そして、最適候補格納用レジスタ 257は、評価値比較部 256の制御のもと、最終的に記憶されている最適候補ベクトルを、初期ベクトル VOと して、反復勾配法演算部 103に出力する。
[0169] 図 22は、初期ベクトルの候補ブロックとなり得る周辺領域を示している。図 22の例 において、矢印 Tは、図中、左手前の時刻 t 1の過去(前)フレーム t 1から、右奥 の時刻 tの現在フレーム tへの時間の経過方向を示している。なお、図 22の例におい ては、初期ベクトルの候補となり得る周辺領域は、着目のブロック Btを中心とした 7ブ ロック X 7ブロックにより構成され、各ブロックは、画素数が 4画素 X 4画素により構成 されている。
[0170] 動きベクトル検出処理は、上述したように、フレームの左上のブロックからラスタスキ ヤン順に実行される。したがって、初期ベクトル選択部 101は、現在フレーム tの着目 ブロック Btの動きベクトル検出処理の際には、その直前のブロックまでの動きベクトル 検出の結果を、初期ベクトルの候補とすることができる。
[0171] すなわち、着目ブロック Btの周辺領域は、着目ブロック B りも手前に処理される ブロック CVB、および着目ブロック Btよりも後に処理されるブロック PVBにより構成さ れている。したがって、着目ブロック Btの初期ベクトルを求める場合、初期候補べタト ルは、ブロック CVBの現在フレーム t上で検出された動きベクトル(現在ベクトル CV) 、および、ブロック PVBの過去フレーム t 1上で検出された動きベクトル(過去べタト ル PV)の中力も選択することができる。なお、このとき、同じ周辺領域のブロックに割り 付けられるシフト初期ベクトルも、初期候補ベクトルの候補となりうる。
[0172] 図 23は、候補ベクトル位置演算部 251において設定される初期ベクトルの候補ブ ロックの例を示している。図 23の例においては、着目ブロック Btの周辺領域のうち、「 英字 Z数字」のシンボルがそれぞれ示されて 、る 8個の所定のブロック力 初期候補 ベクトルが取得される候補ブロックとして設定されて 、る。これらの 8個の所定のブロッ クに示されて 、る斜線の前後のシンボルは、「初期候補ベクトルの種類」と「優先順位 」をそれぞれ表している。なお、初期候補ベクトルの種類のうち、 Pは、過去フレーム t 1で検出された過去ベクトル PVを表しており、 Cは、現在フレーム tで検出された現 在ベクトルを表しており、 Sは、シフト初期ベクトル SVを表している。
[0173] 着目ブロックでの rs/ljは、着目ブロック Btに割り付けられたシフト初期ベクトル S Vが初期候補ベクトルとして、優先順位「1」番目に用いられることを表している。着目 ブロック Btの左隣のブロックの「C/2」は、現在フレーム tにおいて検出されたそのブ ロックの現在ベクトル CVが初期候補ベクトルとして、優先順位「2」番目に用いられる ことを表している。着目ブロック Btの右上のブロックの「C/3」は、現在フレーム tにお いて検出されたそのブロックの現在ベクトル CV力 優先順位「3」番目に初期候補べ タトルとして用いられることを表して 、る。着目ブロック Btの右下のブロックの「P/4」 は、過去フレーム t—lにおいて検出されたそのブロックの過去ベクトル PV力 優先 順位「4」番目に初期候補ベクトルとして用いられることを表している。
[0174] 周辺領域 7 X 7の左上隅の右下のブロックの「CZ6」は、現在フレーム tにおいて検 出されたそのブロックの現在ベクトル CV力 優先順位「6」番目に初期候補ベクトルと して用いられることを表して 、る。周辺領域 7 X 7の右上隅の左下のブロックの「CZ5 」は、現在フレーム tにおいて検出されたそのブロックの現在ベクトル CV力 優先順 位「5」番目に初期候補ベクトルとして用いられることを表している。周辺領域 7 X 7の 左下隅の右上のブロックの「P/7」は、過去フレーム t 1において検出されたそのブ ロックの過去ベクトル PV力 優先順位「7」番目に初期候補ベクトルとして用いられる ことを表している。周辺領域 7 X 7の右下隅の左上のブロックの「PZ8」は、過去フレ ーム t— 1において検出されたそのブロックの過去ベクトル PV力 優先順位「8」番目 に初期候補ベクトルとして用いられることを表して 、る。 [0175] 以上のように、図 23の例において、初期候補ベクトルは、着目ブロック Btを含む、 着目ブロック Btに隣接するブロックのうち、着目ブロック Bt、着目ブロック Btの左隣、 右上、および右下のブロックとされ、着目ブロック Btに隣接していないブロックのうち、 周辺領域 7 X 7の四隅から、それぞれ内側に 1つ入った位置のブロック力 選択され る。
[0176] すなわち、図 23の例の場合、着目ブロック Btに隣接するブロック (空間的にも時間 的にも近いブロック)のほうが少し離れたブロックよりも優先順位が高ぐ現在フレーム tで検出された現在ベクトルのほうが、過去フレーム t 1で検出された過去ベクトルよ りも優先順位が高く設定されている。なお、これらの初期ベクトルの候補の位置、種類 、および優先度は、できるだけ少ない候補数で、確かな初期候補ベクトルを得ること ができるように、着目ブロック Btの近傍だけでなぐ少し離れた位置のブロックも含め 、また、偏りのないようになど、空間的な相関や時間的な相関などに基づいて設定さ れたものである。したがって、このように、予め設定された所定のブロックの動きべタト ルを初期候補ベクトルとして用いることにより、初期候補ベクトル数が多くなつてしまい 、処理の演算量が膨大になってしまうことが抑制される。
[0177] なお、候補ブロックの種類と候補ブロックの位置は、図 23の例に限定されるもので はなぐ他の種類のベクトルや、ブロックの位置を用いてもよい。また、周辺のブロック に、最適なベクトルが存在しない場合を考慮して、そのような場合に劣化を抑制する 、 0ベクトルを用いてもよい。また、候ネ ΐブロックの数も 8個より多くても少なくてもよい。
[0178] 次に、図 24のフローチャートを参照して、初期ベクトル選択処理の詳細について説 明する。
[0179] 候補ベクトル位置演算部 251は、ステップ S251において、選択された着目ブロック の周辺領域から、予め設定されている着目ブロックの初期候補ベクトルを取得する候 補ブロックの位置、初期候補ベクトルの種類および優先順位を求め、ステップ S252 において、求められた優先順位の順に、候補ブロックの初期候補ベクトルの種類が、 過去ベクトルまたは現在ベクトルであるか否かを判断する。ステップ S252において、 候補ベクトル位置演算部 251は、候補ブロックの初期候補ベクトルの種類力 過去べ タトルまたは現在ベクトルであると判断した場合、ステップ S253に進み、候補ブロック の位置情報および初期候補ベクトルの種類情報を、検出ベクトル取得部 252に供給 し、検出ベクトル取得部 252に、候補ブロックの位置情報および初期候補ベクトルの 種類情報に応じた動きベクトル (過去ベクトル PVまたは現在ベクトル CV)を、検出べ タトルメモリ 53から取得させ、取得させた動きベクトルを、オフセット位置演算部 254 に出力させ、ステップ S257〖こ進む。
[0180] ステップ S252において、候補ベクトル位置演算部 251は、候補ブロックの初期候 補ベクトルの種類が、過去ベクトルまたは現在ベクトルでないと判断した場合、ステツ プ S254に進み、候補ベクトル位置演算部 251は、候補ブロックの初期候補ベクトル の種類が、シフト初期ベクトルであるか否かを判断する。ステップ S254において、候 補ベクトル位置演算部 251は、候補ブロックの初期候補ベクトルの種類力 シフト初 期ベクトルであると判断した場合、ステップ S255に進み、候補ブロックの位置情報お よび初期候補ベクトルの種類情報を、シフト初期ベクトル取得部 253に供給し、シフト 初期ベクトル取得部 253に、候補ブロックの位置情報に対応したシフト初期ベクトル を、シフト初期ベクトルメモリ 107から取得させ、取得させたシフト初期ベクトルを、ォ フセット位置演算部 254に出力させ、ステップ S257に進む。
[0181] ステップ S254において、候補ベクトル位置演算部 251は、候補ブロックの初期候 補ベクトルの種類が、シフト初期ベクトルではないと判断した場合 (すなわち、候補ブ ロックの初期候補ベクトルの種類力 0ベクトルであると判断した場合)、ステップ S25 6に進み、初期候補ベクトルに 0ベクトルを設定し、 0ベクトルと共に、候補ブロックの 位置情報を、オフセット位置演算部 254に供給し、ステップ S257に進む。なお、ステ ップ S253および S255においても、候補ベクトル位置演算部 251は、候補ブロックの 位置情報を、オフセット位置演算部 254に供給している。
[0182] オフセット位置演算部 254は、ステップ S257において、検出ベクトル取得部 252ま たはシフト初期ベクトル取得部 253から初期候補ベクトルを入力すると、候補ベクトル 位置演算部 251により供給された候補ブロックの位置情報に基づ 、て、各初期候補 ベクトルに対して、フレーム tの着目ブロックを、フレーム t+ 1にオフセットさせたオフ セット先のブロック位置を演算する。そして、オフセット位置演算部 254は、初期候補 ベクトルとともに、候補ブロックの位置情報、およびオフセット先ブロック位置の情報を 、評価値演算部 255に出力し、ステップ S258に進む。
[0183] 評価値演算部 255は、オフセット位置演算部 254より初期候補ベクトルとともに、候 補ブロックの位置情報、およびオフセット先ブロック位置の情報を入力すると、ステツ プ S258において、フレーム tとフレーム t+ 1を用いて、初期候補ベクトルの評価値 D FDを求め、初期候補ベクトルとともに、求められた評価値 DFDを、評価値比較部 25 6【こ出力し、 S259〖こ itむ。
[0184] 評価値比較部 256は、ステップ S259において、評価値演算部 255により求められ た評価値 DFDが、最適候補格納用レジスタ 257に格納されて 、る最適候補ベクトル の評価値 DFDより小さいか否かを判断し、評価値演算部 255により求められた評価 値 DFDが、最適候補格納用レジスタ 257に格納されて 、る最適候補ベクトルの評価 値 DFDより小さい、すなわち、初期候補ベクトルが最適候補ベクトルよりも信頼度が 高いと判断された場合、ステップ S260において、最適候補格納用レジスタ 257の最 適候補ベクトルおよびその評価値 DFDを、信頼度が高!、とされた初期候補ベクトル およびその評価値 DFDで書き換え、ステップ S261に進む。
[0185] また、ステップ S259において、評価値比較部 256は、評価値演算部 255により求 められた評価値 DFD力 最適候補格納用レジスタ 257に格納されて 、る最適候補 ベクトルの評価値 DFDより小さくな!/、と判断した場合、ステップ S260の処理をスキッ プし、ステップ S 261に進む。
[0186] ステップ S261において、候補ベクトル位置演算部 251は、すべての初期候補べク トル(図 23の例の場合、 8ベクトル)の処理が終了した力否かを判断し、すべての初期 候補ベクトルの処理が終了していないと判断した場合、ステップ S252に戻り、それ以 降の処理を繰り返す。
[0187] ステップ S261において、すべての初期候補ベクトルの処理が終了したと判断され た場合、処理は、ステップ S262に進み、評価値比較部 256は、最適候補格納用レ ジスタ 257を制御し、すべての初期候補ベクトルの中から、評価値 DFDに基づぐ信 頼度が最も高 、とされた最適候補べ外ルを、初期ベクトル VOとして反復勾配法演算 部 103に出力させ、初期ベクトル選択処理を終了する。
[0188] 以上のように、着目ブロックにおいて、複数の初期候補ベクトルの評価値 DFDを求 め、評価値 DFDが最も小さい、すなわち、信頼度が最も高いとされる初期候補べタト ルを、初期ベクトルとして選択するようにしたので、後段の動きベクトル検出に最適な 初期ベクトルを与えることができ、その結果、後段の動きベクトル検出の精度を向上さ せることができる。また、予め定められた所定のブロックの動きベクトルを、初期候補 ベクトルとして用いるようにしたので、初期候補ベクトル数が多くなつてしまい、処理の 演算量が膨大になってしまうことが抑制される。
[0189] さらに、連続するフレーム間において動物体の動き量にはある程度の連続性があり 、動き量の変化が小さいことに基づいて、前フレーム力も着目ブロックを通過する動き ベクトルであるシフト初期ベクトルを、初期ベクトルの候補とするようにしたので、従来 のように、周辺ブロックにお 、て過去に求められて 、る動きベクトルのみを初期べタト ルの候補とする場合よりも、精度の高い動き検出を行うことができる。これは、特に、 動いている物体の境界において、効果的である。
[0190] 次に、反復勾配法演算部 103の構成の詳細について説明する。
[0191] 図 25は、反復勾配法演算部 103の構成を示すブロック図である。図 25に構成を示 す反復勾配法演算部 103は、入力される時刻 tの画像のフレーム tと、時刻 t+ 1の画 像のフレーム t+ 1を用いて、最適な動きベクトルを検出する処理を行う。この動きべク トルを検出する処理は、複数の画素からなる所定のブロック毎に実行される処理であ り、反復勾配法演算部 103は、各ブロックにおいて、ブロック単位毎、または、画素単 位毎に、勾配法を用いた演算を繰り返し実行することにより、評価値 DFDに基づぐ 信頼度が高い、最適な動きベクトルを出力する。
[0192] 反復勾配法演算部 103には、プリフィルタ 102— 1および 102— 2を介して、時刻 t の画像のフレーム tと、時刻 t+ 1の画像のフレーム t+ 1が入力され、また、初期べタト ル選択部 102からの初期ベクトル VOが入力される。
[0193] モード選択部 401は、有効画素判定部 403からの制御のもと、所定のブロック毎に 、勾配法演算の処理モードを選択し、初期ベクトル選択部 102からの初期ベクトル V 0をセレクタ 402およびベクトル評価部 104に出力する。勾配法演算の処理モードは 、動きベクトルの検出対象がブロックであるブロック単位処理モードと、動きベクトルの 検出対象が画素である画素単位処理モードにより構成され、初期値としてブロック単 位処理モードが選択される。セレクタ 402は、ベクトル評価部 104力ゝらの制御のもと、 モード選択部 401からの初期ベクトル VO、または勾配法演算部 404から出力された 動きベクトル Vnのどちらかを、勾配法演算の初期値として用いる動きベクトル (以下、 オフセットベクトルと称する)として、有効画素判定部 403および勾配法演算部 404に 出力する。
[0194] 有効画素判定部 403は、セレクタ 402により選択されたオフセットベクトルを入力す ると、プリフィルタ 102—1および 102— 2を介して入力される時刻 tの画像のフレーム tと、時刻 t+ 1の画像のフレーム t+ 1を用いて、オフセットベクトルをオフセットして計 算した位置を開始点として、各単位処理モードの演算ブロックに、勾配法の演算に有 効な画素の数がしき 、値より多 、か否かを判断し、その結果に応じて処理方法を切り 換える。すなわち、有効画素判定部 403は、勾配法の演算に有効な画素の数がしき い値以下であると判断した場合、モード選択部 401を制御し、その所定のブロックに 対しての処理モードを、画素単位処理モードに変更させたり、演算を中止させる。有 効画素判定部 403は、各単位処理モードの演算ブロックに、勾配法の演算に有効な 画素の数がしきい値より多いと判断した場合、勾配法演算部 404を制御し、各処理 単位での勾配法演算処理を実行させる。
[0195] 勾配法演算部 404は、セレクタ 402から入力されたオフセットベクトルを入力すると 、プリフィルタ 102— 1および 102— 2を介して入力される時刻 tの画像のフレーム tと、 時刻 t+ 1の画像のフレーム t+ 1を用いて、セレクタ 402からのオフセットベクトルをォ フセットして計算した位置を開始点として、各単位処理モードの勾配法演算を実行し 、算出された動きベクトル Vnを、遅延部 405およびベクトル評価部 104に出力する。
[0196] 遅延部 405は、勾配法演算部 404から出力された動きベクトル Vnを、有効画素判 定部 403および勾配法演算部 404の次の処理のサイクルまで保持しており、セレクタ 402の制御に応じて、保持する動きベクトル Vnを有効画素判定部 403に出力する。
[0197] 図 26は、有効画素判定部 403の詳細な構成を示すブロック図である。図 26の例に おいて、有効画素判定部 403は、時間画素差分算出部 411、画素差分値判定部 41 2、有効画素カウンタ 413、および勾配法継続判定部 414により構成される。
[0198] 時間画素差分算出部 411は、セレクタ 402により選択されたオフセットベクトルを入 力すると、ブロック単位の演算ブロックにおいて、画素を選択し、オフセットベクトル、 並びに、プリフィルタ 102—1および 102— 2を介して入力される時刻 tの画像のフレ 一ム 、および時刻 t+ 1の画像のフレーム t+ 1を用いて、選択された画素の時間方 向の画素差分 Atを算出し、算出された時間方向の画素差分 Atを、画素差分値判 定部 412に出力する。
[0199] 画素差分値判定部 412は、時間画素差分算出部 411により算出された時間方向 の画素差分 Atが、所定のしきい値 (以下、画素差分値と称する)よりも小さいか否か を判断し、時間方向の画素差分 Atが、所定の画素差分値よりも小さいと判断した場 合には、有効画素数カウンタ 413の有効画素の数を 1つカウントする。有効画素数力 ゥンタ 413は、演算ブロック毎に画素差分値判定部 412により有効であると判断され た画素分の値をカウントする。また、有効画素数カウンタ 413は、演算ブロック毎に値 力 Sリセットされる。
[0200] 勾配法継続判定部 414は、各単位処理モードの演算ブロックに、勾配法の演算に 有効な画素の数がしきい値より多いか否かを判断し、各単位処理モードの演算ブロッ クに、勾配法の演算に有効な画素の数がしきい値より多いと判断した場合、勾配法 演算部 404に、各単位処理モードの勾配法演算を実行させるフラグ (flg= 1)を出力 する。勾配法継続判定部 414は、各単位処理モードの演算ブロックに、勾配法の演 算に有効な画素の数がしきい値より少ないと判断した場合、モード選択部 401を制 御し、他の単位処理モードを選択させたり、勾配法演算部 404に勾配法演算を打ち 切るフラグ (flg=0)を出力する。
[0201] 図 27は、勾配法演算部 404の詳細な構成を示すブロック図である。図 27の例にお いて、勾配法演算部 404は、時間画素差分算出部 421、画素差分値判定部 422、 水平垂直画素差分算出部 423、勾配積算部 424、およびベクトル算出部 425により 構成される。
[0202] 時間画素差分算出部 421は、有効画素判定部 403から入力されるフラグに基づい て、勾配法演算部 404の各部を制御する。すなわち、時間画素差分算出部 421は、 フラグが 1を示す (flg= l)場合には、勾配法演算部 404の各部に、勾配法演算の処 理を実行させる。具体的には、時間画素差分算出部 421は、有効画素判定部 403か らフラグを入力すると、プリフィルタ 102— 1および 102— 2を介して入力される時刻 t の画像のフレーム tと、時刻 t+ 1の画像のフレーム t+ 1を用いて、セレクタ 402からの オフセットベクトルをオフセットして計算した画素を中心とした、各単位処理モードの 演算ブロック内の画素を選択し、選択された画素の時間方向の画素差分 Atを算出 し、算出された時間方向の画素差分 Atおよびオフセットベクトルを、画素差分値判 定部 422に出力する。また、時間画素差分算出部 421は、演算ブロック内の画素の 処理が終了した場合に、オフセットベクトルを、ベクトル算出部 425に出力し、ベタト ル算出部 425を制御し、検出対象ブロックの動きベクトルを算出させる。
[0203] 一方、フラグが 0を示す (flg=0)場合には、時間画素差分算出部 421は、演算プロ ック内の画素の時間方向の画素差分 Atを算出しないので、勾配法演算部 404の各 部では、勾配法演算の処理が実行されず、処理は打ち切られる。なお、このとき、時 間画素差分算出部 421は、ベクトル算出部 425を制御し、動きベクトル Vを 0ベクトル に設定させる。
[0204] 画素差分値判定部 422は、時間画素差分算出部 421により算出された時間方向 の画素差分 Atが、所定のしきい値 (以下、画素差分値と称する)よりも小さいか否か を判断し、時間方向の画素差分 Atが、所定の画素差分値よりも小さいと判断した場 合、その画素を、勾配法の演算対象とし、時間方向の画素差分 Atおよびオフセット ベクトルを水平垂直画素差分算出部 423に出力する。すなわち、所定の画素差分値 よりも小さいと判断された画素差分 Atの画素は、水平垂直画素差分算出部 423およ び勾配積算部 424において、演算対象とされる。また、画素差分値判定部 422は、 時間方向の画素差分 Atが、所定の画素差分値以上であると判断した場合、水平垂 直画素差分算出部 423および勾配積算部 424に、その画素の処理を禁止させる。
[0205] 水平垂直画素差分算出部 423は、画素差分値判定部 422から入力されたオフセッ トベクトルを入力すると、プリフィルタ 102— 1および 102— 2を介して入力される時刻 tの画像のフレーム tと、時刻 t+ 1の画像のフレーム t+ 1を用いて、オフセットベクトル をオフセットして計算した画素を中心とした、各単位処理モードの演算ブロック内にお いて、時間方向の画素差分 Atが、所定の画素差分値よりも小さいと判断された画素 の水平方向の画素差分 Δχおよび垂直方向の画素差分 Ayを算出する。また、水平 垂直画素差分算出部 423は、時間方向の画素差分 At、水平方向の画素差分 Δχ、 垂直方向の画素差分 Ayを勾配積算部 424に出力する。勾配積算部 424は、時間 方向の画素差分 Atが、所定の画素差分値よりも小さいと判断された画素の勾配を 積算する。すなわち、勾配積算部 424は、時間画素差分算出部 421により算出され た時間方向の画素差分 At、水平垂直画素差分算出部 423により算出された水平方 向の画素差分 Δχ、および、垂直方向の画素差分 Ayを積算し、積算された勾配の 値を、ベクトル算出部 425に出力する。
[0206] ベクトル算出部 425は、時間画素差分算出部 421からオフセットベクトルが入力さ れると、勾配積算部 424により積算された勾配の値、および上述した式(9)の最小自 乗和を用いて、動きベクトル vnを算出する。また、ベクトル算出部 425は、時間画素 差分算出部 421からのオフセットベクトルを、算出した動きベクトル vnに加算して、動 きベクトル Vnを求め、ベクトル評価部 104および遅延部 405に出力する。
[0207] 次に、動きベクトルの検出対象ブロックと演算ブロックについて説明する。画像内の オブジェクトの動きを考えた場合、同じオブジェクトであれば、大方同じ動きをしてい ることが多い。したがって、動きベクトルを検出する検出処理の単位は、通常、図 28 に示されるように、ブロック単位で行うことが多 、。
[0208] 図 28の例において、矢印 Xは、水平方向を示しており、矢印 Yは、垂直方向を示し ている。また、矢印 Tは、図中、右奥の時刻 tのフレーム tから、左手前の時刻 t+ 1の フレーム t+ 1への時間の経過方向を示している。
[0209] 図 28の例の場合、各フレームの検出対象ブロック Kとして、 8画素 X 8画素のブロッ ク(以下、 8 X 8ブロックと称する)が示されている。この検出対象ブロック Kとは、 8 X 8 ブロックに関して動きベクトルの検出を行ったときに、その 8 X 8ブロックに対して同じ 動きが求まるブロックのことを!、う。
[0210] 一方、勾配法による動きベクトルの検出(すなわち、演算)は、画素毎に動きべタト ルを検出できる特徴を有している。し力しながら、画素単位での動きベクトルの演算を 行うと、統計的な解法である最小自乗法を用いる勾配法では、検出精度が著しく低 下する欠点がある。したがって、通常、ブロック毎だけでなぐ画素毎の処理単位であ つても、動きベクトルを演算する場合には、勾配法の演算に用いられる画素は、プロ ック (演算ブロック)単位で構成されることが多 、。
[0211] 以上のように、勾配法の演算に用いられる画素は、 8 X 8ブロックの演算ブロックの 画素とされる。すなわち、図 28の例においては、演算ブロック(8 X 8)を用いて、勾配 法演算を行った結果得られる動きベクトルは、検出対象ブロック K (8 X 8)のすベての 画素に対応する動きベクトルということになる。
[0212] し力しながら、上述したように勾配法の演算に用いられる画素を、演算ブロック単位 に扱う際に発生する問題として、図 29に示されるように、検出対象ブロックを構成する 画素の中に、異なる動きを持つオブジェクトの画素が混在する場合が挙げられる。
[0213] 図 29の例においては、 8 X 8画素(64画素)により構成される検出対象ブロック(= 演算ブロック) Kにおいて、左上の画素から 28画素(太線丸)力 矢印 Aに示される斜 め左上への動きを有しており、 8 X 8の検出対象ブロック Kにおいて、右下の画素から 36画素(細線丸)力 矢印 Bに示される右横への動きを有して 、る。
[0214] したがって、検出対象ブロック Kにおいて、上述したような大方同じ動きであるという 仮定が崩れてしまい、動きの異なる画素を含んだままの演算ブロックを用いて、勾配 法の演算を行うと、著しぐ動きベクトルの検出精度が低下してしまう。すなわち、これ は、異なる動きを持つオブジェクト同士の境界に発生する、オブジェクトの消滅領域( カバードバックグラウンド領域)および発生領域 (アンカバードバックグラウンド領域)に 関する検出精度低下問題である。消滅領域は、前景領域に対して、前景のオブジェ タトの進行方向の全端部に対応する位置の混合領域であり、時間の経過に対応して 背景成分が前景に覆い隠される領域をいう。これに対して、発生領域は、前景領域 に対して、前景のオブジェクトの進行方向の後端部に対応する位置の混合領域であ り、時間の経過に対応して背景成分が現れる領域を ヽぅ。
[0215] 図 30は、同じオブジェクトである場合の検出対象ブロックの輝度の状態を説明する 図である。図中左側においては、矢印 Xは、水平方向を示しており、矢印 Yは、垂直 方向を示している。また、矢印 Tは、図中、右奥の時刻 tのフレーム tから、左手前の時 刻 t+ 1のフレーム t+ 1への時間の経過方向を示している。また、図中右側において は、矢印 Xは、水平方向を示しており、矢印 Lは、輝度値を示している。すなわち、図 中右側の輝度値 Lpl, Lp2, Lp3, · ··, Lpi (3<i< 7) , · ··, Lp7は、図中左側のフレ ーム tの 8X8の検出対象ブロックにおいて、例えば、左上の画素から下に 5番目の行 の画素 pi, p2, p3, ···, pi(3<i<7), ···, p7,…の輝度値を表しており、同様に、 輝度値 Lql, Lq2, Lq3, ···, Lqi(3<i<7), ···, Lq7は、図中左側のフレーム t+1 の 8X8の検出対象ブロック【こお!ヽて、画素 pi, p2, p3, ···, pi(3<i<7), ···, p7, …とそれぞれ同位相に位置する画素である、左上の画素から下に 5番目の行の画素 ql, q2, q3, ···, qi(3<i<7), ···, q7,…の輝度値を表している。また、輝度値 Lp 1乃至 Lp7および Lql乃至 Lq7間の矢印は、フレーム t上の画素とフレーム t+ 1上の 画素の時間方向差分 Δ tを示している。
[0216] したがって、図 30の例においては、画素 piと画素 qlの時間方向差分 Atは、輝度 値 Lplと輝度値 Lqlの差で表され、画素 p2と画素 q2の時間方向差分 Atは、輝度値 Lp2と輝度値 Lq2の差で表され、画素 P3と画素 q3の時間方向差分 Atは、輝度値 L p3と輝度値 Lq3の差で表され、画素 piと画素 qiの時間方向差分 Atは、輝度値 Lpiと 輝度値 Lqiの差で表され、画素 p7と画素 q7の時間方向差分 Atは、輝度値 Lp7と輝 度値 Lq7の差で表され、各輝度値の差は、輝度値 Lpl乃至 Lp7を結んだ曲線と、輝 度値 Lql乃至 Lq7を結んだ曲線の形状がほぼ同形状で示されるように、輝度変化が 小さい。
[0217] 以上のように、検出対象ブロックの中の画素が、同じオブジェクトである(すなわち、 同一動きである)場合には、時間方向の対応画素について、輝度変化は、あまり大き くない。
[0218] 図 31は、異なる動きを持つオブジェクトの画素が混在する場合の検出対象ブロック の輝度の状態を説明する図である。なお、図 30において、図 31における場合と対応 する部分には対応する符号を付してあり、その説明は繰り返しになるので省略するが 、図 31の例においては、フレーム t上の画素 p7が、他の画素と異なる動きを有してい る。
[0219] 例えば、フレーム t上の画素 p7が、他の画素と同じ動きを有している場合には、フレ ーム t+1上において、画素 p7と同位相に位置する画素 q7の輝度値は、輝度値 Lq7 1で表されるはずであるが、図 31の例においては、画素 p7は、他の画素と異なる 動きを有しているため、画素 q7の輝度値は、輝度値 Lq7— 2に示されるように、輝度 値 Lq7—1よりも図中下側に大きく変化している。したがって、画素 p7と画素 q7の時 間方向差分 A t (輝度値 Lp7と、輝度値 Lq7— 2の差)は、大きくなつてしまう。
[0220] このように、例えば、検出対象ブロック内に、上述したオブジェクトの消滅、発生、ま たは変形などにより、異なる動きを有するオブジェクトの画素が混在する場合には、 対応する画素の輝度値が大きく変化することが多ぐこのことが、動きの乱れにつなが つてしまう恐れがある。そこで、有効画素判定部 403において、輝度変化が小さい画 素は、動きベクトル検出に用いても有効であり、逆に、輝度変化が大きい画素は、動 きベクトル検出に用いると、有効ではないと判断するようにする。すなわち、輝度変化 の大小という要素に着目し、輝度変化の大小でその画素が有効か無効かを判断する ことにより、輝度変化が小さい画素は、動きベクトル検出に用い、逆に、輝度変化が 大きい画素は、動きベクトル検出に用いないようにすることができる。これにより、動き ベクトル検出の精度を高くすることができる。
[0221] 具体的に説明すると、有効画素判定部 403は、演算ブロック内の各画素について、 時間方向の画素差分 A tに所定の画素差分値 (しきい値)を設定し、時間方向の画 素差分 A tが、設定された所定の画素差分値よりも小さい場合には、その画素は、動 きベクトル検出に寄与する(有効である)と判定し、動きベクトルを検出する際の勾配 法の演算に用いるが、時間方向の画素差分 A tが、設定された所定の画素差分値以 上である場合には、その画素は、動きの乱れを発生させる恐れがあるとして、動きべ タトルを検出する際の勾配法の演算力 除外する。これにより、異なる動きが混入す ることが抑制され、より安定した勾配法演算が実行され、その結果、確からしい動きべ タトルが検出される。
[0222] ただし、上述したように、勾配法演算は、統計的な解法である最小自乗法に基づ 、 た演算であるため、勾配法演算に用いる画素と用いない画素を切り分けることにより、 勾配法演算に用いられる画素が極端に少なくなり、これらの極端に少ない画素数で 勾配法演算が行われてしまうと、逆に、演算の信頼性が低下してしまい、動きベクトル 検出の精度が低下してしまう恐れがある。
[0223] そこで、有効画素判定部 403は、勾配法演算に用いられる画素数が少ない場合に は、この検出対象ブロック(8 X 8)の処理単位での演算は不安定であるとし、図 32に 示されるように、 8 X 8ブロック内の画素(64個)毎の演算単位に切り替えて処理を行
[0224] 図 32は、画素単位処理における演算ブロックの例を示している。図 32の例におい ては、フレーム上の検出対象ブロック(ブロック単位の演算ブロック) K (8 X 8)が画素 単位処理に切り替えられた場合の、検出対象ブロック Kの左上の画素 pの演算ブロッ ク E (図 32の例の場合、 9 X 9)を示している。
[0225] すなわち、画素 pの動きベクトルを求める際には、画素 pを中心とした演算ブロック E
(図 32の例の場合、 9 X 9)が用いられる。また、例えば、画素 pの右隣の画素の動き ベクトルを求める場合には、画素 pの右隣の画素を中心とした演算ブロック 9 X 9 (図 示せず)が用いられる。
[0226] したがって、例えば、検出対象ブロック Kにおいて、大半が画素 pと異なる動きをし ていたとしても、検出対象ブロック K (8 X 8)において、勾配法演算に用いられる画素 数が計数され、その数が少ない場合には、画素単位処理に切り替えられるので、図 3 2に示されるように、画素単位処理での演算ブロック Eを用いて勾配法の演算を実行 することができる。
[0227] このように、勾配法演算に用いる画素と用いない画素を切り分け、勾配法演算に用 いられる画素が極端に少なくなつた場合に、検出対象ブロック K (8 X 8)ブロック内す ベての画素について動きベクトルの検出をやめるのではなぐ画素単位処理に切り 替えて、画素毎に、演算ブロック E (9 X 9)の画素を変えて勾配法演算するようにする ことで、演算に用いられない画素の混在を少しでも防ぎ、画素によっては、より高精度 の動きベクトルの検出を行うことができる。
[0228] 図 33は、図 29の検出対象ブロック(演算ブロック) Kの画素に、画素単位処理を適 用する例を示す図である。図 33の例においては、矢印 Aに示される斜め左上への動 きを有する画素(太線丸)と、矢印 Bに示される右横への動きの 2つの異なる動きを有 する画素(細線丸)からなる図 29の検出対象ブロック K (8 X 8)において、画素単位 での処理が行われる。この場合において、検出対象ブロック Kの左上の検出対象画 素 Pの動きベクトルを検出するとき、検出対象画素 pを中心とした演算ブロック E (図 33 の例の場合、 9 X 9)が用いられる。 [0229] 演算ブロック E内の画素は、矢印 Bに示される右横への動きを有する右下の 3画素( 細線丸)以外を除いて、矢印 Aに示される斜め左上への動きを有している。ここで、上 述したブロック単位処理の場合と同様に、演算ブロック E内の各画素について、時間 方向画素差分 Δ tに所定のしき 、値 (画素差分値)を設定し、時間方向画素差分 Δ t 力 設定された所定の画素差分値よりも小さい場合には、その画素は、動きベクトル 検出に寄与する(有効である)と判定し、動きベクトルを検出する際の勾配法演算に 用いるが、時間方向画素差分 A tが、設定された所定の画素差分値よりも大きい場合 には、その画素は、動きの乱れを発生させる恐れがあるとして、動きベクトルを検出す る際の勾配法演算に用 、な 、。
[0230] すなわち、図 33の例においては、演算ブロック Eにおいて、右下の 3画素(細線丸) を除いた画素 (太線丸)が、検出対象画素 pの勾配法演算に有効な画素であるとされ 、その有効な画素が用いられて勾配法演算が実行されるため、図 29の検出対象プロ ック K (8 X 8)を、演算ブロックとして用いて実行されるブロック単位処理の勾配法演 算よりも、より安定した勾配法演算が実行され、その結果、確力 しい動きベクトルが 検出される。
[0231] なお、この画素毎の演算ブロックにおいても、勾配法演算に用いる画素と用いない 画素を切り分けることにより、勾配法演算に用いられる画素が極端に少なくなつてしま う場合には、動きベクトルを検出することが危険であるとし、演算は、打ち切られる。す なわち、動きベクトル検出が不安定であるにもかかわらす、何力しらの大きさを有する 動きが検出されたことにしてしまうと、実際の画像内のオブジェクトの動きにそぐわな V、(確からしくな 、)動きベクトルになってしまう恐れがある力 である。このような確か らしくない動きベクトルを用いた上で、以降の処理 (例えば、ベクトル割付処理または ベクトル補償処理)が実行され、生成された画像は、動きが不連続になってしまったり 、ブロックノイズが発生してしまうなどの大きな視覚劣化を及ぼしてしまう場合が多 、。
[0232] したがって、画素単位の勾配法演算に用いられる画素が極端に少なくなつてしまう 場合、検出される動きベクトルは、例えば、 0ベクトル (すなわち、静止状態)が用いら れる。これにより、以降の処理において、この動きベクトル力 悪影響を及ぼすことが 抑制され、生成される画像の大きな視覚劣化を抑制することができる。 [0233] 次に、図 34A乃至図 34Cのフローチャートを参照して、反復勾配法演算処理の詳 細を説明する。図 34Aの例は、ブロック単位、画素単位、および 0ベクトルの処理モ ードの組み合わせからなるブロック基準の反復勾配法演算処理を示して 、る。なお、 ブロック基準とは、有効画素数が所定のしきい値より多いと判断された場合のブロック 単位処理モードの演算ブロックにおける有効画素ではない画素に対して、ブロック単 位処理モードの演算ブロックが、画素単位処理モードの演算ブロックに切り換えられ な ヽ(すなわち、ブロック単位処理モードの演算ブロックにお 、て有効画素ではな ヽ 画素に対しても、ブロック単位処理モードの演算が行われる)ことを表わしている。図 34Bの例は、ブロック単位と 0ベクトルの処理モードの組み合わせからなる反復勾配 法演算処理を示している。
[0234] 図 34Cの例は、ブロック単位、画素単位、および 0ベクトルの処理モードの組み合 わせからなる画素基準の反復勾配法演算処理を示している。なお、画素基準とは、 有効画素数が所定のしき 、値より多 、と判断された場合のブロック単位処理モードの 演算ブロックにおいて有効画素ではない画素に対して、ブロック単位処理モードの演 算ブロックが、画素単位処理モードの検出対象ブロックに切り換えられる、すなわち、 ブロック単位処理モードの演算ブロックにおいて有効画素ではない画素に対しては、 画素単位処理モードの演算が行われることを表わしている。
[0235] 最初に、図 34Aのフローチャートを参照して、反復勾配法演算処理の例を説明す る。前段よりモード選択部 401に初期ベクトル VOが入力される。
[0236] モード選択部 401は、ステップ S401において、ブロック単位処理モードを選択し、 フレーム t上のブロックを、検出対象ブロック(演算ブロック)とし、検出対象ブロックの 初期ベクトル VOをセレクタ 402およびベクトル評価部 104に出力し、ステップ S402 に進む。これにより、反復勾配法演算部 103の各部においては、ブロック単位での処 理が実行される。ステップ S402において、セレクタ 402は、ベクトル評価部 104から の制御に応じて、モード選択部 401から入力された初期ベクトル VOをオフセットべク トルとして選択し、選択したオフセットベクトルを、時間画素差分算出部 411および時 間画素差分算出部 421に出力し、ステップ S403に進む。
[0237] ステップ S403において、時間画素差分算出部 411および画素差分値判定部 412 は、選択されたオフセットベクトルを用いて(いまの場合、初期ベクトル VOをオフセット して)、ブロック単位の有効画素判定処理を実行し、ステップ S404に進む。この有効 画素判定処理の詳細は、図 35を参照して後述するが、この有効画素判定処理により 、有効画素数カウンタ 413には、ブロック単位の演算ブロック内において、画素差分 値が所定の画素差分値よりも小さいと判定された (すなわち、後段の勾配法演算で有 効な画素であると判定された)画素の数がカウントされて 、る。
[0238] 勾配法 «続判定部 414は、ステップ S404において、有効画素数カウンタ 413に力 ゥントされて 、る画素数 (有効画素数)が所定のしき 、値 αより多!、か否かを判断し、 有効画素数が所定のしきい値 αより多いと判断した場合、勾配法演算部 404に、ブ ロック単位で、勾配法演算を実行させるフラグ (flg= l)を出力し、ステップ S405に進 む。
[0239] ステップ S405において、勾配法演算部 404は、勾配法継続判定部 414からのフラ グに基づいて、セレクタ 402からのオフセットベクトル(いまの場合、初期ベクトル VO) を用いて、ブロック単位の勾配法演算処理を実行し、ステップ S406に進む。この勾 配法演算処理の詳細は、図 36を参照して後述するが、この勾配法演算処理により、 動きベクトル Vnが求められ、ベクトル評価部 104および遅延部 405に出力される。な お、動きベクトル Vnは、 1回目の勾配法演算により算出された動きベクトル vnに、ォ フセットベクトル Vn— 1が加算されたもの(Vn=Vn— 1 +vn)である。例えば、動きべ タトル VIは、 1回目の勾配法演算により算出された動きベクトル vlに、オフセットべク トル(初期ベクトル VO)が加算されたもの(VI =VO+vl)である。
[0240] ステップ S406において、ベクトル評価部 104は、勾配法演算処理により求められた 動きベクトル Vnの評価値 DFD (n)と、オフセットベクトルとして用いられた動きべタト ル Vn— 1の評価値 DFD (n- 1)を求め、評価値 DFD (n— 1)よりも評価値 DFD (n) 力 S小さいか否力、すなわち、オフセットベクトルとして用いられた動きベクトル Vn—lよ りも勾配法演算処理により求められた動きベクトル Vnの信頼度が高いか否かを判断 する。具体的には、例えば、 1回目の処理においては、求められた動きベクトル VIの 評価値 DFD (l)と、オフセットベクトルとして用いられた初期ベクトル VOの評価値 DF D (O)が比較され、 2回目の処理においては、求められた動きベクトル V2の評価値 D FD (2)と、オフセットベクトルとして用いられた動きベクトル VIの評価値 DFD (l)が 比較される。
[0241] ベクトル評価部 104は、ステップ S406において、評価値 DFD (n— 1)よりも評価値 DFD (n)が小さいと判断した場合、すなわち、動きベクトル Vn—lよりも動きベクトル Vnの信頼度が高いと判断された場合、ステップ S407において、算出された動きべク トル Vn (l回目の場合、動きベクトル VI、 2回目の場合、動きベクトル V2)を、検出対 象ブロックの動きベクトル Vに設定して、ステップ S408に進む。ベクトル評価部 104 は、ステップ S408において、反復回数 nを 1つカウントし、ステップ S409に進み、反 復回数 nが設定された最大反復回数 (例えば、 2回)になった力否かを判断し、まだ、 反復回数 nが設定された最大反復回数ではな 、と判断した場合、セレクタ 402を制 御し、ステップ S402〖こ戻り、それ以降の処理を繰り返させる。
[0242] すなわち、ステップ S402において、セレクタ 402は、ベクトル算出部 425から出力さ れ、遅延部 405に保持された動きベクトル VIを、オフセットベクトルとして選択し、ス テツプ S403において、時間画素差分算出部 411および画素差分値判定部 412は、 動きベクトル VIをオフセットベクトルとして用いて、ブロック単位の有効画素判定処理 を実行し、それ以降の処理を繰り返す。したがって、ステップ S405において算出され る動きベクトル V2は、 2回目の勾配法演算により算出された動きベクトル v2に、オフ セットベクトルとして用いられた動きベクトル VIが加算されたもの(すなわち、 V2=V 1 +v2=V0+vl +v2)となる。
[0243] ベクトル評価部 104は、ステップ S406において、評価値 DFD (n— 1)よりも評価値 DFD (n)が小さくないと判断した場合、すなわち、動きベクトル Vn— 1の方力 動き ベクトル Vnよりも信頼度が高いと判断した場合、ステップ S410〖こ進み、勾配法演算 のオフセットとしたベクトル Vn— 1 (1回目の場合、初期ベクトル VO、 2回目の場合、 動きベクトル VI)を、検出対象ブロックの動きベクトル Vに設定して、ステップ S411に 進む。また、ベクトル評価部 104は、ステップ S409において、反復回数 nが設定され た最大反復回数になったと判断した場合、ステップ S411に進む。
[0244] ベクトル評価部 104は、ステップ S411において、動きベクトル Vが、動きベクトルを 検出する範囲として予め設定されたサーチエリア内である力否かを判断し、動きべク トル V力 サーチエリア内であると判断した場合、ステップ S415に進み、動きベクトル Vを、検出対象ブロックに対応させて、検出ベクトルメモリ 53に記憶し、反復勾配法処 理を終了する。
[0245] また、ベクトル評価部 104は、ステップ S411において、動きベクトル V力 サーチェ リア内ではないと判断した場合、ステップ S412に進み、動きベクトル Vを 0ベクトルに 設定し、ステップ S415に進み、動きベクトル V (0ベクトル)を、検出対象ブロックに対 応させて、検出ベクトルメモリ 53に記憶し、反復勾配法処理を終了する。
[0246] 一方、勾配法 «続判定部 414は、ステップ S404において、有効画素数カウンタ 41 3の有効画素数が所定のしきい値 a以下であると判断した場合、ステップ S413に進 み、モード選択部 401を制御し、画素単位処理モードを選択させ、ステップ S414に 進む。これにより、反復勾配法演算部 103の各部においては、画素単位での処理が 実行される。モード選択部 401は、ステップ S414において、画素単位の反復勾配法 演算処理を実行し、ステップ S415に進む。この画素単位処理モードの反復勾配法 演算処理の詳細は、図 37を参照して後述するが、画素単位処理モードの反復勾配 法演算処理により、検出対象ブロック内の全画素の動きベクトル Vが求められるので 、ベクトル評価部 104は、ステップ S415において、動きベクトル Vを、検出対象ブロッ クの各画素に対応させて、検出ベクトルメモリ 53に記憶し、反復勾配法処理を終了 する。
[0247] なお、上述したステップ S406においては、動きベクトルの信頼度の評価を、勾配法 処理により求められた動きベクトル Vnの評価値 DFD (n)と、オフセットベクトルとして 用いられた動きベクトル Vn— 1の評価値 DFD (n— 1)を比較することで判断したが、 評価値 DFDの比較判断と同時に、勾配法演算により求められた動きベクトル (オフセ ットベクトルが加算される前の動きベクトル) vnのノルムの値( I vn I )が所定の大きさ (演算ブロック 8 X 8の場合、例えば、 16)よりも小さいことも判断するようにしてもよい。
[0248] ここで、ノルムとは、あるベクトル空間におけるベクトルの大きさを表し、例えば、原 点(0, 0)を起点とした (X, y)へのベクトル Vのノルムは、次の式(11)で表される。
[0249] [数 3]
Figure imgf000059_0001
•••(11)
[0250] すなわち、勾配法演算においては、一般的に、微小動きに対して、精度の高い結 果が得られる力 勾配法演算により求められた動きベクトルのノルム値 I vn Iが所定 の大きさを超えてしまうと、その大きい動きベクトル vnに対して精度の高い結果が得ら れているとは限らない。したがって、評価値 DFDと並行して、勾配法演算により求め られた動きベクトルのノルム値 I vn Iが所定の大きさを超えたか否かを判断し、ノル ム値 I vn Iが所定の大きさを超えた動きベクトルを除外することにより、この勾配法 演算においては、微小動きに対しても、大きい動きに対しても、精度の高い結果を得 ることができ、さらに、動きベクトル検出の精度を向上させることができる。
[0251] なお、この評価値 DFDの判断とノルム値による判断の場合には、ステップ S406に おいて、 I vn I ≤ 16である場合で、かつ、評価値 DFD (n—l) >評価値 DFD (n) である場合には、ステップ S407に進み、 V=Vnに設定され、ステップ S406におい て、 I vn I > 16である場合で、または、評価値 DFD (n—l)≤評価値 DFD (n)であ る場合には、ステップ S410に進み、 V=Vn— 1に設定される。
[0252] 次に、図 35のフローチャートを参照して、有効画素判定処理の詳細を説明する。な お、図 35は、図 34Aのステップ S403の有効画素判定処理の例を示している。
[0253] セレクタ 402から、オフセットベクトルが入力されると、時間画素差分算出部 411は、 ステップ S431において、画素差分値判定部 412を制御し、有効画素数カウンタ 413 をリセットさせ、ステップ S432に進み、ブロック単位の演算ブロックにおいて、画素を 選択し、ステップ S433に進む。なお、画素は、演算ブロックの左上の画素からラスタ スキャン順に選択される。
[0254] 時間画素差分算出部 411は、ステップ S433において、オフセットベクトル、並びに 、プリフィルタ 102—1および 102— 2を介して入力される時刻 tの画像のフレーム t、 および時刻 t+ 1の画像のフレーム t+ 1を用いて、選択された画素の時間方向の画 素差分 Δ tを算出し、算出された時間方向の画素差分 Δ tを画素差分値判定部 412 に出力し、ステップ S434に進む。
[0255] 画素差分値判定部 412は、ステップ S434において、時間画素差分算出部 411に より算出された時間方向の画素差分 A tが、所定の画素差分値よりも小さいか否かを 判断し、すなわち、後段の勾配法演算に有効な画素である力否かを判断し、時間方 向の画素差分 A tが、所定の画素差分値よりも小さいと判断した場合、ステップ S435 に進み、有効画素数カウンタ 413の有効画素の数を 1つカウントし、ステップ S436に 進む。また、画素差分値判定部 412は、ステップ S434において、時間方向の画素差 分 A tが、所定の画素差分値以上であると判断した場合、すなわち、後段の勾配法 演算に有効な画素ではないと判断し、ステップ S435の処理をスキップし、ステップ S 436に進む。
[0256] 時間画素差分算出部 411は、ステップ S436において、演算ブロック内のすべての 画素の処理が終了した力否かを判断し、演算ブロック内のすべての画素の処理が終 了していないと判断した場合、ステップ S432に戻り、次の画素を選択し、それ以降の 処理を繰り返す。一方、時間画素差分算出部 411は、ステップ S436において、演算 ブロック内のすべての画素の処理が終了したと判断した場合、有効画素判定処理を 終了し、図 34Aのステップ S404に戻る。
[0257] 以上の処理により、有効画素カウンタ 413には、演算ブロック内において、その画 素差分 A tが所定の画素差分値より小さぐ後段の勾配法演算において有効であると 判断された画素の数がカウントされている。したがって、勾配法継続判断部 414は、 図 34Aのステップ S404において、この有効画素カウンタ 413の画素の数を参照する ことにより、ブロック単位の勾配法演算を行うか、画素単位の勾配法演算を行うかを判 断することができる。
[0258] 上記説明にお 、ては、図 34Aを参照して、ブロック単位、画素単位、および 0ベタト ルの処理モードの組み合わせ力 なるブロック基準の反復勾配法演算処理を説明し た。
[0259] 次に、図 34Bのフローチャートを参照して、ブロック単位と 0ベクトルの処理モードの 組み合わせからなる反復勾配法演算処理を説明する。なお、図 34Bの反復勾配法 演算処理は、図 34Aのステップ S413および S414力、ステップ S416に置き換えられ た点が異なるだけであり、その他の処理は、図 34Aの反復勾配法演算処理と基本的 に同様の処理を行うため、その説明は繰り返しになるので省略する。
[0260] すなわち、図 34Bの例の場合、ステップ S404において、有効画素数カウンタ 413 の有効画素数が所定のしきい値 ex以下であると判断された場合、ベクトル評価部 10 4は、ステップ S416〖こ進み、動きベクトル Vを 0ベクトルに設定し、ステップ S415〖こ進 み、動きベクトル V (0ベクトル)を、検出対象ブロックに対応させて、検出ベクトルメモ リ 53に記憶し、反復勾配法処理を終了する。
[0261] 以上のようにして、有効画素数が所定のしき 、値 a以下である場合に、動きべタト ル V (0ベクトル)が設定されると!/、う簡単な演算処理である図 34Bの反復勾配法演算 処理が実現される。
[0262] 次に、図 34Cのフローチャートを参照して、ブロック単位、画素単位、および 0ベタト ルの処理モードの組み合わせ力 なる画素基準の反復勾配法演算処理を説明する
。なお、図 34Cの反復勾配法演算処理は、図 34Aのステップ S404と S405の間に、 ステップ S417が追加されている点が異なるだけであり、その他の処理は、図 34Aの 反復勾配法演算処理と基本的に同様の処理を行うため、その説明は繰り返しになる ので省略する。
[0263] 特に、図 34Cの例の場合、ステップ S413および S414の処理は、ステップ S404に ぉ 、て、有効画素数カウンタ 413の有効画素数が所定のしき 、値 ocより多 、と判断さ れた場合の演算ブロック内の有効画素ではない画素に対して実行される。そして、ス テツプ S414において演算ブロック内の有効画素ではない画素に対して得られた動き ベクトルは、ステップ S41 1または S412において演算ブロック内の有効画素に対して 得られた動きベクトルとともに、ステップ S415にお 、て検出ベクトルメモリ 53に記憶さ れる。
[0264] なお、このステップ S413および S414の処理は、図 34Aの場合と同様に、ステップ S404において、有効画素数カウンタ 413の有効画素数が所定のしきい値 α以下で あると判断された場合の演算ブロック (検出対象ブロック)の各画素についても実行さ れる。
[0265] 具体的に説明すると、図 34Cのステップ S404において、有効画素数カウンタ 413 の有効画素数が所定のしきい値 αより多いと判断された場合、処理は、ステップ S41 7に進む。ここで、演算ブロックは、有効な画素であると判定された有効画素で構成さ れる有効画素群および有効な画素ではないと判定された無効画素群のうち、少なくと も一方の画素群で構成されている。したがって、勾配法継続判定部 414は、ステップ S417において、ブロック単位の演算ブロック内の画素群力 有効画素群であるか否 かを判断する。
[0266] 勾配法継続判定部 414は、ステップ S417にお!/、て、ブロック単位の演算ブロック内 の画素群が、有効画素群であると判断した場合、ステップ S405に進み、勾配法演算 部 404に、演算ブロック内の有効画素群に対してのみ、ブロック単位の勾配法演算 処理を実行させる。なお、ステップ S406乃至 S412の処理は、図 34Aと基本的に同 様であるため、その説明は省略する。
[0267] 一方、勾配法継続判定部 414は、ステップ S417にお 、て、ブロック単位の演算ブ ロック内の画素群が、有効画素群ではないと判断した場合、モード選択部 401を制 御し、ステップ S413に進み、画素単位処理モードを選択させ、ステップ S414に進み 、無効画素群に対してのみ、画素単位の反復勾配法演算処理を実行させる。なお、 ステップ S413および S414の処理は、図 34Aと基本的に同様であるため、その説明 は省略する。
[0268] 以上の処理により、演算ブロック内の有効画素群に対しては、ステップ S411または S412において動きベクトルが設定され、演算ブロック内の無効画素群に対しては、 ステップ S414において動きベクトルが設定される。そして、演算ブロック内の有効画 素群に対して設定された動きベクトル、および無効画素群に対して設定された動きべ タトルは、ステップ S415においてベクトル検出メモリ 53に記憶され、反復勾配法処理 は、終了される。
[0269] 以上のように、図 34Cの例における、ブロック単位、画素単位、および 0ベクトルの 処理モードの組み合わせからなる画素基準の反復勾配法演算処理は、複雑な判断 処理を有する反面、図 34Aや図 34Bの例の勾配法演算処理において対応しきれな い、ブロック単位処理モードのブロックにおける非有効画素に対応することができるの で、より精度の高い動きベクトルを提供する。
[0270] また、図 34Bの例における、ブロック単位と 0ベクトルの処理モードの組み合わせか らなる反復勾配法演算処理は、簡単な構成であるため、図 34A乃至図 34Cに示した 例の中では、演算処理への負荷が最も低いが、それでもやはり、勾配法演算処理に おいてマイナス要因を与えてしまう画素を制限し、それらの画素を動きベクトルに用 Vヽな 、ようにすることで動きベクトル検出の精度を増カロさせることができる。
[0271] そして、図 34Aの例における、ブロック単位、画素単位、および 0ベクトルの処理モ ードの組み合わせ力もなるブロック基準の反復勾配法演算処理は、図 34Bと図 34C の処理と比較して中庸のレベルの演算処理を提供し、特にブロック単位処理モード のブロックにお 、て有効画素数が所定のしき 、値よりも小さ 、ときに、図 34Bに示す ようなブロック単位処理モードだけでは対応されないブロックの画素に対応することが できる。
[0272] 次に、図 36のフローチャートを参照して、ブロック単位の勾配法演算処理の詳細を 説明する。なお、図 36は、図 34Aのステップ S405のブロック単位の勾配法演算処理 の例を示している。したがって、図 36の例においては、時間画素差分算出部 421に は、勾配法継続判定部 414から、勾配法演算を実行させるフラグ (flg= l)が入力され る。
[0273] 勾配法継続判定部 414からフラグ (flg= 1)が入力されると、時間画素差分算出部 4 21は、ステップ S451において、ブロック単位の演算ブロックにおいて、画素を選択し 、ステップ S452に進む。なお、画素は、演算ブロックの左上の画素からラスタスキヤ ン順に選択される。
[0274] 時間画素差分算出部 421は、ステップ S452において、セレクタ 402からのオフセッ トベクトル、並びに、プリフィルタ 102—1および 102— 2を介して入力される時刻 tの 画像のフレーム t、および時刻 t+ 1の画像のフレーム t+ 1を用いて、選択された画素 の時間方向の画素差分 Δ tを算出し、算出された時間方向の画素差分 Δ tおよびォ フセットベクトルを、画素差分値判定部 422に出力し、ステップ S453に進む。
[0275] 画素差分値判定部 422は、ステップ S453において、時間画素差分算出部 421に より算出された時間方向の画素差分 A tが、所定の画素差分値よりも小さいか否かを 判断し、すなわち、後段の勾配法演算に有効な画素である力否かを判断し、時間方 向の画素差分 A tが、所定の画素差分値よりも小さいと判断した場合、ステップ S454 に進み、垂直水平画素差分算出部 423を制御し、有効であると判断した画素の水平 方向の画素差分 Δ χを算出させる。なお、画素差分値判定部 422における所定の画 素差分値は、画素差分値判定部 412における所定の画素差分値と同じ値であっても よいし、異なる値であってもよい。また、このとき、画素差分値判定部 422は、時間画 素差分算出部 421により算出された時間方向の画素差分 A tおよびオフセットべタト ルを、垂直水平画素差分算出部 423に出力する。
[0276] 垂直水平画素差分算出部 423は、ステップ S454において、オフセットベクトル、並 びに、プリフィルタ 102—1および 102— 2を介して入力される時刻 tの画像のフレー ム 、および時刻 t+ 1の画像のフレーム t+ 1を用いて、有効であると判断された画素 の水平方向の画素差分 Δ χを算出し、ステップ S455に進み、有効であると判断され た画素の垂直方向の画素差分 Ayを算出し、時間方向の画素差分 A t、水平方向の 画素差分 Δ χ、および垂直方向の画素差分 Ayを、勾配積算部 424に出力し、ステツ プ S456に進む。勾配積算部 424は、ステップ S456において、垂直水平画素差分 算出部 423からの時間方向の画素差分 A t、水平方向の画素差分 Δ χ、および垂直 方向の画素差分 Ayを積算し、積算した結果をベクトル算出部 425に出力し、ステツ プ S457に進む。
[0277] 画素差分値判定部 422は、ステップ S453において、時間方向の画素差分 A tが、 所定の画素差分値以上であると判断した場合、ステップ S454乃至 S456の処理をス キップし、ステップ S457に進む。すなわち、この画素の各画素差分 (勾配)は、後段 の勾配法演算に有効な画素ではな 、ので、演算に用いられな 、。
[0278] ステップ S457において、時間画素差分算出部 421は、演算ブロック内のすべての 画素の処理が終了した力否かを判断し、演算ブロック内のすべての画素の処理が終 了していないと判断した場合、ステップ S451に戻り、次の画素を選択し、それ以降の 処理を繰り返す。一方、時間画素差分算出部 421は、ステップ S457において、演算 ブロック内のすべての画素の処理が終了したと判断した場合、ベクトル算出部 425に オフセットベクトルを出力し、ステップ S458に進む。ベクトル算出部 425は、時間画 素差分算出部 421からオフセットベクトルが入力されると、勾配積算部 424からの勾 配の積算結果と、上述した式(9)の最小自乗和を用いて、動きベクトル vnを算出し、 ステップ S459に進み、時間画素差分算出部 421からのオフセットベクトルに、算出さ れた動きベクトル vnをカ卩算した、動きベクトル Vnを求めて、求められた動きベクトル V nをベクトル評価部 104に出力し、勾配法演算処理を終了し、図 34Aのステップ S40 6に戻る。
[0279] 以上のように、時間方向の画素差分 A tが、設定された所定の画素差分値以上の 場合には、その画素は、動きの乱れを発生させる恐れがあるとして、動きベクトルを検 出する際の勾配法の演算力 除外するようにしたので、より安定した勾配法演算が実 行され、その結果、確からしい動きベクトルが検出され、これにより、動きベクトル検出 の精度が向上される。
[0280] 次に、図 37のフローチャートを参照して、画素単位の反復勾配法演算処理の詳細 を説明する。図 37は、図 34Aのステップ S414の画素単位の反復勾配法演算処理 の例を示している。なお、この処理は、検出対象ブロック内の各画素について実行さ れる。
[0281] モード選択部 401は、画素単位処理モードを設定すると、ステップ S471において、 検出対象ブロックの画素を検出対象画素として選択し、その画素の演算ブロック (例 えば、 9 X 9)の初期ベクトル VOを、セレクタ 402およびベクトル評価部 104に出力し 、ステップ S472に進む。なお、画素は、検出対象ブロックの左上の画素からラスタス キャン順に選択される。ステップ S472において、セレクタ 402は、ベクトル評価部 10 4からの制御に応じて、モード選択部 401から入力された初期ベクトル VOをオフセッ トベクトルとして選択し、選択したオフセットベクトルを、時間画素差分算出部 411およ び時間画素差分算出部 421に出力し、ステップ S473に進む。
[0282] ステップ S473において、時間画素差分算出部 411および画素差分値判定部 412 は、選択されたオフセットベクトルを用いて(いまの場合、初期ベクトル VOをオフセット として)、画素単位の有効画素判定処理を実行し、ステップ S474に進む。この有効 画素判定処理の詳細は、図 35を参照して上述したブロック単位の有効画素判定処 理と、対象となる演算ブロック (ブロック範囲や、ブロックを構成する画素)が異なる以 外、基本的に同様の処理を行うため、その詳細な説明を省略する力 この有効画素 判定処理により、有効画素数カウンタ 413には、画素単位の演算ブロック内において 、画素差分値が所定の画素差分値よりも小さいと判定された (すなわち、後段の勾配 法演算で有効な画素であると判定された)画素の数がカウントされている。なお、画素 単位の有効画素判定を行う所定の画素差分値は、ブロック単位の場合と同じ値とし てもよいし、異なる値を設定するようにしてもよい。
[0283] 勾配法 «続判定部 414は、ステップ S474において、有効画素数カウンタ 413に力 ゥントされて 、る画素数 (有効画素数)が所定のしき 、値 |8より多 、か否かを判断し、 有効画素数が所定のしきい値 ι8より多いと判断した場合、勾配法演算部 404に、勾 配法演算を実行させるフラグ (flg= l)を出力し、ステップ S475に進む。なお、しきい 値 j8も、ブロック単位の場合のしき 、値 aと同じ値としてもよ!、し、異なる値を設定す るようにしてちょい。
[0284] ステップ S475において、勾配法演算部 404は、勾配法継続判定部 414からのフラ グに基づいて、セレクタ 402からのオフセットベクトル(初期ベクトル VO)を用いて、画 素単位の勾配法演算処理を実行し、ステップ S476に進む。この勾配法演算処理の 詳細は、図 36を参照して上述したブロック単位の勾配法演算処理と、対象となる演 算ブロック (範囲や、ブロックを構成する画素)が異なる以外、基本的に同様の処理を 行うため、その詳細な説明を省略するが、この勾配法演算処理により、検出対象画素 の動きベクトル Vnが求められ、ベクトル評価部 104および遅延部 405に出力される。 なお、動きベクトル Vnは、 1回目の勾配法演算により求められた動きベクトル vnに、 オフセットベクトルが加算されたもの(Vn= Vn— 1 +vn)となる。
[0285] ステップ S476において、ベクトル評価部 104は、勾配法処理により算出された動き ベクトル Vnの評価値 DFD (n)と、オフセットとして用いられた動きベクトル Vn— 1の 評価値 DFD (n— 1)を求め、評価値 DFD (n— 1)よりも評価値 DFD (n)が小さ!/、か 否力 すなわち、オフセットとして用いられた動きベクトル Vn— 1よりも勾配法処理に より算出された動きベクトル Vnの信頼度が高いか否かを判断する。
[0286] ベクトル評価部 104は、ステップ S476において、評価値 DFD (n— 1)よりも評価値 DFD (n)が小さいと判断された場合、すなわち、動きベクトル Vn—lよりも動きべタト ル Vnの信頼度が高いと判断された場合、ステップ S477において、算出された動き ベクトル Vn (l回目の場合、動きベクトル VI、 2回目の場合、動きベクトル V2)を、検 出対象画素の動きベクトル Vに設定して、ステップ S478〖こ進む。ベクトル評価部 104 は、ステップ S478において、反復回数 nを 1つカウントし、ステップ S479に進み、反 復回数 nが設定された最大反復回数 (例えば、 2回)になった力否かを判断し、まだ、 反復回数 nが設定された最大反復回数ではな 、と判断した場合、セレクタ 402を制 御し、ステップ S472に戻り、それ以降の処理を繰り返させる。
[0287] すなわち、ステップ S472において、セレクタ 402は、ベクトル算出部 425から出力さ れ遅延部 405に保持された動きベクトル VIを、オフセットベクトルとして選択し、ステ ップ S473において、時間画素差分算出部 411および画素差分値判定部 412は、ォ フセットベクトルである動きベクトル VIをオフセットして、画素単位の有効画素判定処 理を実行し、それ以降の処理を繰り返す。したがって、ステップ S475において求めら れる動きベクトル V2は、 2回目の勾配法演算により算出された動きベクトル v2に、ォ フセットとなる動きベクトル VIが加算されたもの(すなわち、 V2= VO+vl +v2)であ る。
[0288] ベクトル評価部 104は、ステップ S476において、評価値 DFD (n— 1)よりも評価値 DFD (n)が大きいと判断した場合、すなわち、動きベクトル Vn— 1の方力 動きべタト ル Vnよりも信頼度が高いと判断された場合、ステップ S480に進み、勾配法演算のォ フセットとしたベクトル Vn— 1 (1回目の場合、初期ベクトル VO、 2回目の場合、動きべ タトル VI)を、検出対象ブロックの動きベクトル Vに設定して、ステップ S481に進む。 また、ベクトル評価部 104は、ステップ S479において、反復回数 nが設定された最大 反復回数になったと判断した場合、ステップ S481に進む。
[0289] ベクトル評価部 104は、ステップ S481において、動きベクトル Vが、動きベクトルを 検出する範囲として予め設定されたサーチエリア内である力否かを判断し、動きべク トル V力 サーチエリア内であると判断した場合、ステップ S483に進む。また、ベタト ル評価部 104は、ステップ S481において、動きベクトル V力 サーチエリア内である と判断しな力つた場合、ステップ S482に進み、動きベクトル Vを 0ベクトルに設定し、 ステップ S483に進む。
[0290] 一方、ステップ S474において、勾配法継続判定部 414は、有効画素数カウンタ 41 3の有効画素数が所定のしき 、値 βより少な 、と判断した場合、勾配法演算部 404 に勾配法演算を打ち切るフラグ (flg=0)を出力し、ステップ S482に進む。時間画素 差分算出部 421は、フラグに基づいて、ベクトル算出部 425を制御し、動きベクトル V を 0ベクトルに設定させ、ステップ S483〖こ進む。
[0291] モード選択部 401は、ステップ S483において、検出対象ブロック内のすべての画 素の処理が終了した力否かを判断し、検出対象ブロック内のすべての画素の処理が 終了していないと判断した場合、ステップ S471に戻り、検出対象ブロックの次の画素 を、検出対象画素として、それ以降の処理を繰り返す。モード選択部 401は、ステツ プ S483において、検出対象ブロック内のすべての画素の処理が終了したと判断した 場合、画素単位の反復勾配法演算処理を終了し、図 34Aのステップ S415に戻る。 すなわち、画素単位の反復勾配法演算処理により、検出対象ブロック内すベての画 素について動きベクトル Vが求められるので、図 34Aのステップ S415に戻り、ベタト ル評価部 104は、動きベクトル Vを、検出対象ブロックの各画素に対応させて、検出 ベクトルメモリ 53に記憶し、反復勾配法処理を終了する。
[0292] なお、ステップ S476の動きベクトルの信頼度の評価も、ステップ S406の場合と同 様に、評価値 DFDの判断とノルム値による判断を併用するようにしてもよい。
[0293] 以上のように、演算ブロック内の画素差分が所定の画素差分値よりも小さ!/、画素の み勾配法演算に用いるようにすることで、異なる動きを有する画素を演算対象力 除 くことができ、勾配法演算により求められる動きベクトルの確からしさが向上し、動きべ タトル検出の精度が向上する。
[0294] また、演算ブロック内の画素差分が所定の画素差分値よりも大きぐ勾配法演算に 用いられない画素数力 所定のしきい値よりも多力つた場合に、適応的に、勾配法演 算の処理を制御するようにしたので、特に、オブジェクトの動きの境界などにおいて、 さらに、動きベクトル検出の精度を向上させることができ、その結果、求められる動き ベクトルもより確からしいものとすることができる。
[0295] 具体的には、演算ブロック内の画素差分が所定の画素差分値よりも大きぐ勾配法 演算に用いられない画素数力 所定のしきい値よりも多力つた場合に、ブロック単位 モードから画素単位モードに変更し、検出対象ブロックの画素毎に演算ブロックを設 定し、有効判定処理および勾配法演算処理を行うようにしたので、画素によっては、 より高精度な動きベクトルを検出することができる。また、演算ブロック内の画素差分 が所定の画素差分値よりも大きぐ勾配法演算に用いられない画素数が、所定のしき い値よりも多力つた場合に、勾配法演算処理の処理を打ち切り、 0ベクトルとするよう にしたので、暴れた動きベクトルの検出を抑制し、より安全な動きベクトルを検出する ことができる。
[0296] 次に、有効画素判定部 403および勾配法演算部 404の他の構成について説明す る。
[0297] 以下に説明する有効画素判定部 403および勾配法演算部 404においては、時間 方向の画素差分だけでなぐ空間方向の画素差分にも基づいて、演算ブロック内の 画素が動きベクトル検出に有効である力否かが求められる。
[0298] 図 38は、有効画素判定部 403の詳細な構成を示すブロック図である。なお、図 38 の有効画素判定部 403は、図 25の有効画素判定部 403の他の構成例を示すもので あり、図 38において、図 26における場合と対応する部分には対応する符号を付して あり、その説明は繰り返しになるので省略する。
[0299] 図 38の例において、有効画素判定部 403は、第 1空間勾配画素差分算出部 501 、第 2空間勾配画素差分算出部 502、時間方向画素差分算出部 503、演算判定部 5 04、有効画素数カウンタ 413、および勾配法継続判定部 414により構成される。
[0300] プリフィルタ 102—1を介して入力される時刻 t+ 1の画像のフレーム t+ 1は、第 1空 間勾配画素差分算出部 501および時間方向画素差分算出部 503に入力される。プ リフィルタ 102— 2を介して入力される時刻 tの画像のフレーム tは、第 2空間勾配画 素差分算出部 502および時間方向画素差分算出部 503に入力される。また、セレク タ 402により選択されたオフセットベクトル (例えば、 VOまたは Vn— 1)は、第 1空間勾 配画素差分算出部 501、第 2空間勾配画素差分算出部 502、および時間方向画素 差分算出部 503に入力される。
[0301] 第 1空間勾配画素差分算出部 501は、セレクタ 402により選択されたオフセットべク トルを入力すると、プリフィルタ 102— 1を介して入力されるフレーム t+ 1における、ォ フセットベクトルをオフセットして計算した画素を中心とした、各単位処理モードの演 算ブロック内の画素の水平方向の画素差分 Δ Xおよび垂直方向の画素差分 Ayを算 出し、算出されたフレーム t+ 1における演算ブロック内の画素の水平方向の画素差 分 Δ Xおよび垂直方向の画素差分 Ayを、演算判定部 504に出力する。 [0302] 第 2空間勾配画素差分算出部 502は、セレクタ 402により選択されたオフセットべク トルを入力すると、プリフィルタ 102— 2を介して入力されるフレーム tにおける画素を 中心とした、各単位処理モードの演算ブロック内の画素の水平方向の画素差分 Δχ および垂直方向の画素差分 Ayを算出し、算出されたフレーム tにおける演算ブロッ ク内の画素の水平方向の画素差分 Δ Xおよび垂直方向の画素差分 Ayを、演算判 定部 504に出力する。
[0303] 時間方向画素差分算出部 503は、セレクタ 402により選択されたオフセットベクトル を入力すると、プリフィルタ 102—1およびプリフィルタ 102— 2を介して入力されるフ レーム t+ 1およびフレーム t間の、オフセットベクトルをオフセットして計算した画素を 中心とした、各単位処理モードの演算ブロック内の画素の時間方向の画素差分 At を算出し、算出されたフレーム t+ 1およびフレーム t間の演算ブロック内の画素の時 間方向の画素差分 Atを、演算判定部 504に出力する。
[0304] 演算判定部 504は、第 1空間勾配画素差分算出部 501からのフレーム t+ 1におけ る演算ブロック内の画素の水平方向の画素差分 Δ Xおよび垂直方向の画素差分 Ay 、第 2空間勾配画素差分算出部 502からのフレーム tにおける演算ブロック内の画素 の水平方向の画素差分 Δχおよび垂直方向の画素差分 Ay、並びに、時間方向画 素差分算出部 503からのフレーム t+ 1およびフレーム t間の演算ブロック内の画素の 時間方向の画素差分 Atを用いて、所定の論理演算を行い、その所定の論理演算に 基づいて、演算ブロック内の画素力 動きベクトルの検出(すなわち、後段の勾配法 演算部 404の演算)に有効であるか否かを判断する。なお、演算判定部 504の有効 画素判定方法である、所定の論理演算の詳細は、図 41を参照して後述する。
[0305] また、演算判定部 504は、動きベクトルの検出に有効であると判断した場合、有効 画素数カウンタ 413の有効画素の数を 1つカウントする。有効画素数カウンタ 413は 、演算ブロック毎に演算判定部 504により動きベクトルの検出に有効であると判断さ れた画素分の値をカウントする。
[0306] 図 39は、勾配法演算部 404の詳細な構成を示すブロック図である。なお、図 38の 有効画素判定部 403は、図 25の勾配法演算部 404の他の構成例を示すものであり 、図 39において、図 27における場合と対応する部分には対応する符号を付してあり 、その説明は繰り返しになるので省略する。
[0307] 図 39の例において、勾配法演算部 404は、第 1空間勾配画素差分算出部 521、 第 2空間勾配画素差分算出部 522、時間方向画素差分算出部 523、演算判定部 52 4、勾配積算部 424、およびベクトル算出部 425により構成される。
[0308] プリフィルタ 102—1を介して入力される時刻 t+ 1の画像のフレーム t+ 1は、第 1空 間勾配画素差分算出部 521および時間方向画素差分算出部 523に入力される。プ リフィルタ 102— 2を介して入力される時刻 tの画像のフレーム tは、第 2空間勾配画 素差分算出部 522および時間方向画素差分算出部 523に入力される。また、セレク タ 402により選択されたオフセットベクトルは、第 1空間勾配画素差分算出部 521、第 2空間勾配画素差分算出部 522、時間方向画素差分算出部 523および演算判定部 524に入力される。有効画素判定部 403から入力されるフラグは、演算判定部 524 に入力される。
[0309] 第 1空間勾配画素差分算出部 521は、セレクタ 402により選択されたオフセットべク トルを入力すると、プリフィルタ 102— 1を介して入力されるフレーム t+ 1における、ォ フセットベクトルをオフセットして計算した画素を中心とした、各単位処理モードの演 算ブロック内の画素の水平方向の画素差分 Δ Xおよび垂直方向の画素差分 Ayを算 出し、算出されたフレーム t+ 1における演算ブロック内の画素の水平方向の画素差 分 Δ Xおよび垂直方向の画素差分 Ayを、演算判定部 524に出力する。
[0310] 第 2空間勾配画素差分算出部 522は、セレクタ 402により選択されたオフセットべク トルを入力すると、プリフィルタ 102— 2を介して入力されるフレーム tにおける画素を 中心とした、各単位処理モードの演算ブロック内の画素の水平方向の画素差分 Δχ および垂直方向の画素差分 Ayを算出し、算出されたフレーム tにおける演算ブロッ ク内の画素の水平方向の画素差分 Δ Xおよび垂直方向の画素差分 Ayを、演算判 定部 524に出力する。
[0311] 時間方向画素差分算出部 523は、セレクタ 402により選択されたオフセットベクトル を入力すると、プリフィルタ 102—1およびプリフィルタ 102— 2を介して入力されるフ レーム t+ 1およびフレーム t間の、オフセットベクトルをオフセットして計算した画素を 中心とした、各単位処理モードの演算ブロック内の画素の時間方向の画素差分 At を算出し、算出されたフレーム t+ 1およびフレーム t間の演算ブロック内の画素の時 間方向の画素差分 Atを、演算判定部 524に出力する。
[0312] 演算判定部 524は、有効画素判定部 403から入力されるフラグに基づいて、勾配 積算部 424およびベクトル算出部 425を制御する。すなわち、演算判定部 524は、フ ラグ力 ^を示す (flg= l)場合には、第 1空間勾配画素差分算出部 521からのフレーム t + 1における演算ブロック内の画素の水平方向の画素差分 Δ Xおよび垂直方向の画 素差分 Ay、第 2空間勾配画素差分算出部 522からのフレーム tにおける演算ブロッ ク内の画素の水平方向の画素差分 Δχおよび垂直方向の画素差分 Ay、並びに、時 間方向画素差分算出部 523からのフレーム t+ 1およびフレーム t間の演算ブロック 内の画素の時間方向の画素差分 Atを用いて、演算判定部 504と同様の所定の論 理演算を行い、その所定の論理演算に基づいて、演算ブロック内の画素が、動きべ タトルの検出に有効である力否かを判断し、動きベクトルの検出に有効であると判断 された画素を、勾配法の演算対象とし、その画素の水平方向の画素差分 Δχ、垂直 方向の画素差分 Ay、および時間方向の画素差分 Atを、勾配積算部 424に供給す る。また、演算判定部 524は、演算ブロック内の画素が、動きベクトルの検出に有効 ではないと判断した場合、勾配積算部 424に、その画素の処理を禁止させる。
[0313] 一方、フラグが 0を示す (flg=0)場合には、演算判定部 524は、所定の論理演算を 実行せず、演算ブロック内の画素が、動きベクトルの検出に有効である力否かを判断 しないので、勾配積算部 424も、積算処理を実行せず、処理は打ち切られる。なお、 このとき、演算判定部 524は、ベクトル算出部 425を制御し、動きベクトル Vを 0ベタト ルに設定させる。また、演算判定部 524は、演算ブロック内の画素の処理が終了した 場合に、オフセットベクトルを、ベクトル算出部 425に出力し、ベクトル算出部 425を 制御し、検出対象ブロックの動きベクトルを算出させる。
[0314] 勾配積算部 424は、演算判定部 524より供給された時間方向の画素差分 At、水 平方向の画素差分 Δχ、および、垂直方向の画素差分 Ayを積算し、積算された勾 配の値を、ベクトル算出部 425に出力する。
[0315] ベクトル算出部 425は、演算判定部 524からオフセットベクトルが入力されると、勾 配積算部 424により積算された勾配の値、および上述した式 (9)の最小自乗和を用 いて、動きベクトル vnを算出する。また、ベクトル算出部 425は、演算判定部 524から のオフセットベクトルを、算出した動きベクトル vnに加算して、動きベクトル Vnを求め 、ベクトル評価部 104および遅延部 405に出力する。
[0316] 図 40は、動きベクトルの検出対象となる検出対象ブロックと、その検出対象ブロック に対応する、勾配法演算の対象となる演算ブロックの他の例を示している。なお、図 40の例においては、フレーム tが示されており、フレーム t上の丸は、画素を表してい る。
[0317] 図 40の例の場合、フレーム t上において、 4画素 X 4画素からなる検出対象ブロック K1乃至 K3と、検出対象ブロック K1乃至 K3をそれぞれ中心とした 8画素 X 8画素の 各演算ブロック E1乃至 E3が示されている。なお、各演算ブロック E1乃至 E3は、それ ぞれ隣接する演算ブロックと、構成する画素半分がオーバーラップして 、る。
[0318] ベクトル検出部 52においては、フレーム上の左上の検出対象ブロック力 ラスタス キャン順に、動きベクトルの検出が実行される。したがって、フレーム t上において、検 出対象ブロック Kl、検出対象ブロック Κ2、および、検出対象ブロック Κ3が順々に、 動きベクトルの検出対象ブロックとなる。そして、これに対応して、勾配法の演算プロ ックは、演算ブロック El、演算ブロック Ε2、および、演算ブロック Ε3となる。すなわち 、図 40の例の検出対象ブロックと演算ブロックの場合には、各演算ブロック E1乃至 Ε 3は、隣の演算ブロックと、構成される画素半分がオーバーラップすることになる。
[0319] なお、以降においては、このように構成される検出対象ブロックと演算ブロックを用 いて、図 38の有効画素判定部 403および図 39の勾配法演算部 404を説明するが、 これらの構成の検出対象ブロックおよび演算ブロックには限定されず、図 38の有効 画素判定部 403および図 39の勾配法演算部 404において、図 28を参照して上述し た検出対象ブロックおよび演算ブロックを用いるようにしてもよいし、その他の検出対 象ブロックおよび演算ブロックを用いるようにしてもよ!、。
[0320] 次に、図 41を参照して、演算判定部 504の有効画素判定方法を説明する。図 41 の例においては、矢印 Τは、図中、左手前の時刻 tのフレーム tから、右奥の時刻 t+ 1のフレーム t+ 1への時間の経過方向を示している。
[0321] フレーム t上にお!、ては、動きベクトルの検出の対象となる 4画素 X 4画素からなる 検出対象ブロック Kt (図中黒丸)と、検出対象ブロック Ktを中心とした (検出対象プロ ックの周囲の) 8画素 X 8画素からなる演算ブロック Etが示されている。一方、フレー ム t+1上においては、検出対象ブロック Ktに対応する 4画素 X 4画素からなる検出 対象ブロック Kt+ 1 (図中黒丸)と、演算ブロック Etに対応する 8画素 X 8画素からな る演算ブロック Et+1が示されている。なお、フレーム t+1上の点線のブロックは、検 出対象ブロック Ktと同位相のブロックを表しており、フレーム t+1上において、動き ベクトル V(Vx, Vy)が初期ベクトルとして与えられた分だけ、点線のブロックからシフ ト (移動)された位置の演算ブロック Et+ 1が勾配法の演算の対象として用いられる。
[0322] ここで、フレーム t上の演算ブロック Etの画素 piとフレーム t+1上の演算ブロック Et
+1間の同位置の画素 p2における時間方向の画素差分 (フレーム差分)を Atとし、 このときの画枠を wとすると、演算ブロック Etの画素 piの水平方向の画素差分 Δχ1、 垂直方向の画素差分 Ayl、および時間方向の画素差分 Atは、式(12)乃至式(14 )で求められる。
[0323] Δχΐ = Yt(k+1)— Yt(k) ··· (12)
Δγΐ = Yt(k+w)-Yt(k) ··· (13)
At = Yt+l(k)— Yt(k) ·'·(14)
[0324] なお、 Yt+ 1は、時刻 t+ 1における画素値を表し、 Ytは、時刻 tにおける画素値を 表し、 k+1および kは、アドレス (位置)を表す。また、画素 piに対応する演算ブロック Et+ 1の画素 p2の水平方向の画素差分 Δ x2、および垂直方向の画素差分 Ay2も 同様に求められる。
[0325] 演算判定部 504は、これらの値を用いて、論理演算を行 、、その結果に基づ 、て、 有効画素判定を行う。すなわち、演算判定部 504は、演算ブロック Etの画素のうち、 次の 3つの条件式(15)乃至(17)のいずれかを満たす (すなわち、式(18)を満たす )か否かを求めることにより、その画素が動きベクトル検出に有効な画素である力否か を判定する。
Figure imgf000075_0001
I Δχΐ I >thl- I Ayl | && | At/Δχΐ- At/Ax2 | <th2
•••(15) [0327] Δγ1≠0 && Ay2≠0 &&
I Δγΐ I >thl - I Δχΐ I && I At/ Ayl - At/ Ay2 | <th2
•••(16)
[0328] Δχ1≠0 && Δχ2≠0 && Ayl≠0 && Ay2≠0 &&
I At/ Δχΐ - At/ Ax2 I <th2 &&
I At/ Ayl - At/ Ay2 | <th2
•••(17)
[0329] 式(15) II式(16) II式(17) · ' · (18)
[0330] ここで、 IIは、論理和、 &&は、論理積、 ·は、乗算、 thlおよび th2は、それぞれ所 定のしきい値を表している。なお、 thlは、例えば、 1, 1. 5,または 2とされ、 th2は、 例免ば、 4とされる。
[0331] したがって、式(15)において、 Δχ1≠0 && Δχ2≠0は、画素 piおよび画素 ρ 2の水平勾配が平坦ではない(水平方向に勾配を有する)ことを表す。 I Δχΐ I >t hi - I Δγΐ Iは、水平勾配が垂直勾配よりもある程度大きいことを表す。 I At/ Δ xl - At/ Ax2 Iく th2は、画素単位の勾配法による(正規ィ匕した場合の)水平方 向の動きが、所定のしきい値 th2より小さい、すなわち、水平方向の動きに、類似性 力 Sあることを表す。以上により、式(15)は、水平方向に着目した条件を表しており、こ れら全てを満たした画素は、水平方向の動きに類似性があると判断され、後段の勾 配法に用 、て有効であると判定される。
[0332] また、式(16)において、 Ayl≠0 && Ay2≠0は、垂直勾配が平坦ではない( 垂直方向に勾配を有する)ことを表す。 I Δγΐ I >thl - I Δχΐ Iは、垂直勾配が 水平勾配よりもある程度大きいことを表す。 I At/ Ayl— At/ Ay2 Iく th2は、 画素単位の勾配法による (正規ィ匕した場合の)垂直方向の動きに類似性があることを 表す。以上により、式(16)は、垂直方向に着目した条件を表しており、これら全てを 満たした画素は、垂直方向の動きに類似性があると判断され、後段の勾配法に用い て有効であると判定される。
[0333] 同様に、式(17)において、 Δχ1≠0 && Δχ2≠0 && Ayl≠0 && Δ y2≠0は、垂直および水平勾配が平坦ではない(垂直および水平方向に勾配を有 する)ことを表す。 I At/ Axl— At/ Ax2 I <th2 && | AtZ Ayl— AtZ Δγ2 Iく th2は、画素単位の勾配法による(正規ィ匕した場合の)垂直方向および水 平方向の動きに類似性があることを表す。以上により、式(17)は、式(15)および(1 6)を満たしていないものに対しての水平および垂直の両方向(斜め方向)に着目し た条件を表しており、これら全てを満たした画素は、水平および垂直方向の動きに類 似性があると判断され、後段の勾配法に用いて有効であると判定される。
[0334] すなわち、演算判定部 504は、式(18)を用いて、演算ブロック Et内の各画素につ いて、水平方向、垂直方向、または斜め方向のいずれかの動きに対して類似性があ る力否かを判断し、水平方向、垂直方向、または斜め方向のどの動きに対しても類似 性がないと判断した画素を、図 42に示されるように、勾配法演算の対象から外す。
[0335] 図 42は、演算ブロックにおける画素の構成例を示している。図 42の例においては、 4画素 X 4画素からなる検出対象ブロック Kを中心とする 8画素 X 8画素(64画素)か らなる演算ブロック E内において、上述した式(18)を満たし、有効画素として判定さ れた画素(図中白丸)と、式(18)を満たさず、勾配法の演算対象とされない画素(図 中黒丸)が示されている。
[0336] したがって、勾配法演算部 404は、演算ブロック E内において、有効画素として判 定された画素のみ(34画素)を用いて、勾配法演算を行う。これにより、水平方向、垂 直方向、または斜め方向のいずれかの動きに対して類似性がある画素のみで、勾配 法演算が実行されるため、異なる動きが混入することが抑制され、より安定した勾配 法演算が実行され、その結果、確力 しい動きベクトルが検出される。
[0337] し力しながら、演算ブロック内に有効画素として判定された画素が少ない場合には 、上述したように、勾配法演算が不安定になってしまう場合がある。そこで、勾配法継 続判定部 414は、有効画素として判定された画素の数力 50%である力 (全 64画素 中 32画素より多いか)否かを判断し、有効画素として判定された画素が 50%以下の 場合は、検出対象ブロック Kのブロック単位処理での演算は不安定であるとし、図 33 を参照して上述したように、検出対象ブロック K内の画素毎の演算に切り替えて処理 を行ったり、あるいは、演算を打ち切る処理を行う。なお、有効画素カウンタのしきい 値を 50%とした力 この値は、もちろん他の値であってもよい。 [0338] これにより、類似性があまりなぐ異なる動きの画素の混在を少しでも防ぐことができ るので、安定した勾配法演算を行うことができる。この結果、勾配法演算により求めら れる動きベクトルの確からしさが向上し、動きベクトル検出の精度が向上する。
[0339] なお、演算判定部 504における有効画素判定方法としては、次の条件式(19)およ び(20)を用いることもできる。すなわち、演算判定部 504は、演算ブロック Etの画素 のうち、次の 2つの条件式(19)および(20)の両方を満たす (すなわち、式(21)を満 たす)か否かを求めることにより、その画素が有効画素である力否かを判定するように してちよい。
[0340] Δχ1≠0 && Δχ2≠0 && | At/ Axl— At/ Ax2 | く th3
•••(19)
[0341] Δγ1≠0 && Ay2≠0 && | At/ Ayl— At/ Ay2 | く th3
• · · (20)
[0342] 式(19) & & 式(20) · ' · (21)
[0343] ここで、 & &は、論理積、 th3は、所定のしきい値を表している。なお、 th3≠th2と される。例えば、 th3は、 16とされる力 th2より小さい値であってもよい。
[0344] すなわち、式(21)の場合は、水平方向および垂直方向の両方の動きに対して類 似性が判断される。したがって、演算判定部 504は、式(18)を用いて、演算ブロック Et内の各画素について、水平方向および垂直方向の両方の動きに対して類似性が ある力否かを判断し、水平方向および垂直方向の少なくとも一方の動きに対して類 似性がな!、と判断した画素を、勾配法演算の対象から外す。
[0345] 次に、図 43のフローチャートを参照して、図 38の有効画素判定部 403の有効画素 判定処理の詳細を説明する。なお、図 43は、図 34Aのステップ S403の有効画素判 定処理の例を示している。
[0346] セレクタ 402からオフセットベクトルが入力されると、時間方向画素差分算出部 503 は、ステップ S511において、演算判定部 504を制御し、有効画素数カウンタ 413をリ セットさせ、ステップ S512〖こ進み、ブロック単位の演算ブロックにおいて、画素を選択 し、ステップ S513に進む。なお、画素は、演算ブロックの左上の画素からラスタスキヤ ン順に選択される。 [0347] 時間方向画素差分算出部 503は、ステップ S513において、プリフィルタ 102—1お よびプリフィルタ 102— 2を介して入力されるフレーム t+ 1およびフレーム t間の、オフ セットベクトルをオフセットして計算した画素を中心とした、各単位処理モードの演算 ブロック内の画素の時間方向の画素差分 Atを算出し、算出されたフレーム t+ 1およ びフレーム t間の演算ブロック内の画素の時間方向の画素差分 Atを、演算判定部 5 04に出力し、ステップ S514に進む。
[0348] 第 1空間勾配画素差分算出部 501は、セレクタ 402により選択されたオフセットべク トルを入力すると、ステップ S514において、プリフィルタ 102— 1を介して入力される フレーム t+ 1における、オフセットベクトルをオフセットして計算した画素を中心とした 、各単位処理モードの演算ブロック内の画素の水平方向の画素差分 Δχおよび垂直 方向の画素差分 Ayを算出し、算出されたフレーム t+ 1における演算ブロック内の画 素の水平方向の画素差分 Δ Xおよび垂直方向の画素差分 Ayを、演算判定部 504 に出力し、ステップ S515〖こ進む。
[0349] 第 2空間勾配画素差分算出部 502は、セレクタ 402により選択されたオフセットべク トルを入力すると、ステップ S515において、プリフィルタ 102— 2を介して入力される フレーム tにおける画素を中心とした、各単位処理モードの演算ブロック内の画素の 水平方向の画素差分 Δχおよび垂直方向の画素差分 Ayを算出し、算出されたフレ ーム tにおける演算ブロック内の画素の水平方向の画素差分 Δ Xおよび垂直方向の 画素差分 Ayを、演算判定部 504に出力し、ステップ S516に進む。
[0350] 演算判定部 504は、ステップ S516において、第 1空間勾配画素差分算出部 501 力 のフレーム t + 1における演算ブロック内の画素の水平方向の画素差分 Δ Xおよ び垂直方向の画素差分 Ay、第 2空間勾配画素差分算出部 502からのフレーム tに おける演算ブロック内の画素の水平方向の画素差分 Δ Xおよび垂直方向の画素差 分 Ay、並びに、時間方向画素差分算出部 503からのフレーム t+ 1およびフレーム t 間の演算ブロック内の画素の時間方向の画素差分 Atを用いて、式(18)の論理演 算を行い、ステップ S517乃至 S519〖こおいて、その所定の論理演算に基づいて、演 算ブロック内の画素力 動きベクトルの検出(すなわち、後段の勾配法演算部 404の 演算)に有効であるカゝ否かを判断する。 [0351] すなわち、演算判定部 504は、ステップ S516において、水平方向の着目条件であ る式(15)、垂直方向の着目条件である式(16)、および、水平垂直方向の着目条件 である式(17)を演算し、ステップ S517において、演算ブロック内の画素が水平方向 の着目条件である式(15)を満たしているか否かを判断し、演算ブロック内の画素が 水平方向の着目条件を満たしていると判断した場合、ステップ S520に進み、有効画 素数カウンタ 413の有効画素の数を 1つカウントし、ステップ S521に進む。
[0352] 演算判定部 504は、ステップ S517において、演算ブロック内の画素が水平方向の 着目条件を満たしていないと判断した場合、ステップ S518に進み、演算ブロック内 の画素が垂直方向の着目条件である式(16)を満たしている力否かを判断し、演算 ブロック内の画素が垂直方向の着目条件を満たしていると判断した場合には、ステツ プ S520に進み、有効画素数カウンタ 413の有効画素の数を 1つカウントし、ステップ S521に進む。
[0353] 演算判定部 504は、ステップ S518において、演算ブロック内の画素が垂直方向の 着目条件を満たしていないと判断した場合、ステップ S519に進み、演算ブロック内 の画素が水平垂直方向(斜め方向)の着目条件である式(17)を満たして 、る力否か を判断し、演算ブロック内の画素が水平垂直方向の着目条件を満たしていると判断 した場合には、ステップ S520に進み、有効画素数カウンタ 413の有効画素の数を 1 つカウントし、ステップ S521【こ進む。演算半 U定咅 504ίま、ステップ S519【こお!ヽて、 演算ブロック内の画素が水平垂直方向の着目条件を満たしていないと判断した場合
、ステップ S520の処理をスキップし、ステップ S521に進む。すなわち、この画素は、 水平方向の動き、垂直方向の動き、および、水平垂直方向の動きのいずれにも類似 性がないと判断され、後段の勾配法演算に有効ではない画素として、除外される。
[0354] 時間方向画素差分算出部 503は、ステップ S520において、演算ブロック内のすべ ての画素の処理が終了したか否かを判断し、演算ブロック内のすべての画素の処理 が終了していないと判断した場合、ステップ S512に戻り、それ以降の処理を繰り返 す。一方、時間方向画素差分算出部 503は、ステップ S520において、演算ブロック 内のすべての画素の処理が終了したと判断した場合、有効画素判定処理を終了し、 図 34 Αのステップ S404に戻る。 [0355] 以上の処理により、有効画素カウンタ 413には、演算ブロック内において、水平方 向着目条件、垂直方向着目条件、および、水平垂直方向着目条件の少なくとも 1つ を満たし、後段の勾配法演算において有効であると判断された画素の数がカウントさ れている。したがって、勾配法継続判断部 414は、図 34Aのステップ S404において 、この有効画素カウンタ 413の画素の数を参照することにより、ブロック単位の勾配法 演算を行うか、画素単位の勾配法演算を行うかを判断することができる。
[0356] 次に、図 44のフローチャートを参照して、図 39の勾配法演算部 404の勾配法演算 処理の詳細を説明する。なお、図 44は、図 34Aのステップ S405のブロック単位の勾 配法演算処理の例を示して!/、る。
[0357] セレクタ 402からオフセットベクトルが入力されると、時間方向画素差分算出部 523 は、ステップ S551において、ブロック単位の演算ブロックにおいて、画素を選択し、 ステップ S552に進む。なお、画素は、演算ブロックの左上の画素からラスタスキャン 順に選択される。
[0358] 時間方向画素差分算出部 523は、ステップ S552において、プリフィルタ 102—1お よびプリフィルタ 102— 2を介して入力されるフレーム t+ 1およびフレーム t間の、オフ セットベクトルをオフセットして計算した画素を中心とした、各単位処理モードの演算 ブロック内の画素の時間方向の画素差分 A tを算出し、算出されたフレーム t+ 1およ びフレーム t間の演算ブロック内の画素の時間方向の画素差分 A tを、演算判定部 5 24に出力し、ステップ S 553〖こ進む。
[0359] 第 1空間勾配画素差分算出部 521は、セレクタ 402により選択されたオフセットべク トルを入力すると、ステップ S553において、プリフィルタ 102—1を介して入力される フレーム t+ 1における、オフセットベクトルをオフセットして計算した画素を中心とした 、各単位処理モードの演算ブロック内の画素の水平方向の画素差分 Δ χおよび垂直 方向の画素差分 Ayを算出し、算出されたフレーム t+ 1における演算ブロック内の画 素の水平方向の画素差分 Δ Xおよび垂直方向の画素差分 Ayを、演算判定部 524 に出力し、ステップ S554に進む。
[0360] 第 2空間勾配画素差分算出部 522は、セレクタ 402により選択されたオフセットべク トルを入力すると、ステップ S554において、プリフィルタ 102— 2を介して入力される フレーム tにおける画素を中心とした、各単位処理モードの演算ブロック内の画素の 水平方向の画素差分 Δχおよび垂直方向の画素差分 Ayを算出し、算出されたフレ ーム tにおける演算ブロック内の画素の水平方向の画素差分 Δ Xおよび垂直方向の 画素差分 Ayを、演算判定部 524に出力し、ステップ S555に進む。
[0361] 演算判定部 524は、ステップ S555において、第 1空間勾配画素差分算出部 521 力 のフレーム t + 1における演算ブロック内の画素の水平方向の画素差分 Δ Xおよ び垂直方向の画素差分 Ay、第 2空間勾配画素差分算出部 522からのフレーム tに おける演算ブロック内の画素の水平方向の画素差分 Δ Xおよび垂直方向の画素差 分 Ay、並びに、時間方向画素差分算出部 523からのフレーム t+ 1およびフレーム t 間の演算ブロック内の画素の時間方向の画素差分 Atを用いて、式(18)の論理演 算を行い、ステップ S556乃至 S558〖こおいて、その所定の論理演算に基づいて、演 算ブロック内の画素力 S、動きベクトルの検出に有効であるか否かを判断する。
[0362] すなわち、演算判定部 524は、ステップ S555において、水平方向の着目条件であ る式(15)、垂直方向の着目条件である式(16)、および、水平垂直方向の着目条件 である式(17)を演算し、ステップ S556において、演算ブロック内の画素が水平方向 の着目条件である式(15)を満たしているか否かを判断し、演算ブロック内の画素が 水平方向の着目条件を満たしていると判断した場合、動きベクトルの検出に有効で あると判断された画素を、勾配法の演算対象とし、その画素の水平方向の画素差分 Δχ、垂直方向の画素差分 Ay、および時間方向の画素差分 Atを、勾配積算部 424 に供給し、ステップ S559に進む。
[0363] 演算判定部 524は、ステップ S556において、演算ブロック内の画素が水平方向の 着目条件を満たしていないと判断した場合、ステップ S557に進み、演算ブロック内 の画素が垂直方向の着目条件である式(16)を満たしている力否かを判断し、演算 ブロック内の画素が垂直方向の着目条件を満たしていると判断した場合には、動き ベクトルの検出に有効であると判断された画素を、勾配法の演算対象とし、その画素 の水平方向の画素差分 Δχ、垂直方向の画素差分 Ay、および時間方向の画素差 分 Atを、勾配積算部 424に供給し、ステップ S559に進む。
[0364] 演算判定部 524は、ステップ S557において、演算ブロック内の画素が垂直方向の 着目条件を満たしていないと判断した場合、ステップ S558に進み、演算ブロック内 の画素が水平垂直方向(斜め方向)の着目条件である式(17)を満たして 、る力否か を判断し、演算ブロック内の画素が水平垂直方向の着目条件を満たしていると判断 した場合には、動きベクトルの検出に有効であると判断された画素を、勾配法の演算 対象とし、その画素の水平方向の画素差分 Δ χ、垂直方向の画素差分 Ay、および 時間方向の画素差分 A tを、勾配積算部 424に供給し、ステップ S559に進む。演算 判定部 524は、ステップ S558〖こおいて、演算ブロック内の画素が水平垂直方向の 着目条件を満たしていないと判断した場合、ステップ S559の処理をスキップし、ステ ップ S560に進む。すなわち、この画素は、水平方向の動き、垂直方向の動き、およ び、水平垂直方向の動きのいずれにも類似性がないと判断され、勾配法演算に有効 ではない画素として、除外される。
[0365] 勾配積算部 424は、ステップ S559において、演算判定部 524より供給された時間 方向の画素差分 A t、水平垂直画素差分算出部 423により算出された水平方向の画 素差分 Δ χ、および、垂直方向の画素差分 Ayを積算し、積算された勾配の値を、ベ ク卜ノレ算出咅425【こ出力し、ステップ S560【こ進む。
[0366] 演算判定部 524は、ステップ S560において、演算ブロック内のすべての画素の処 理が終了した力否かを判断し、演算ブロック内のすべての画素の処理が終了してい ないと判断した場合、ステップ S551に戻り、それ以降の処理を繰り返す。一方、演算 判定部 524は、ステップ S560〖こおいて、演算ブロック内のすべての画素の処理が終 了したと判断した場合、ベクトル算出部 425にオフセットベクトルを出力し、ステップ S 561に進む。ベクトノレ算出咅 425ίま、ステップ S561にお!/ヽて、演算半 IJ定咅 524力ら オフセットベクトルが入力されると、勾配積算部 424からの勾配の積算結果と、上述し た式(9)の最小自乗和を用いて、動きベクトル νηを算出し、ステップ S562に進み、 演算判定部 524からのオフセットベクトルに、算出された動きベクトル νηを加算した、 動きベクトル Vnを求めて、求められた動きベクトル Vnをベクトル評価部 104に出力し 、勾配法演算処理を終了し、図 34Aのステップ S406〖こ戻る。
[0367] 以上のように、時間方向の画素差分 A t、水平方向の画素差分 Δ χ、垂直方向の画 素差分 Ayを用いて、演算ブロック内の画素の水平方向に着目した勾配の類似性、 垂直方向に着目した勾配の類似性、および、水平方向および垂直方向に着目した 勾配の類似性が所定のしきい値よりも小さいか否かを判断し、どの方向の勾配につ Vヽても類似性が所定のしき!/ヽ値よりも大き!/、 (すなわち、動きの類似性があまりな 、) と判断された場合には、その画素は、動きの乱れを発生させる恐れがあるとして、動 きベクトルを検出する際の勾配法の演算から除外するようにしたので、より安定した勾 配法演算が実行され、その結果、確力 しい動きベクトルが検出され、これにより、動 きベクトル検出の精度が向上される。
[0368] 以上のように、演算ブロック内の画素の動きが勾配法の演算において有効であるか 否かを求め、有効であると判断された画素のみ勾配法演算に用いるようにすることで 、異なる動きを有する画素を演算対象力も除くことができ、勾配法演算により求められ る動きベクトルの確からしさが向上し、動きベクトル検出の精度が向上する。
[0369] また、勾配法演算に用いられない画素数が、所定のしきい値よりも多力つた場合に 、適応的に、勾配法演算の処理を制御するようにしたので、特に、オブジェクトの動き の境界などにおいて、さらに、動きベクトル検出の精度を向上させることができ、その 結果、求められる動きベクトルもより確から 、ものとすることができる。
[0370] なお、上記説明にお!/、ては、有効画素判定部 403および勾配法演算部 404に、有 効画素を判定する時間画素差分算出部および素差分判定部、もしくは、第 1空間勾 配画素差分算出部、第 2空間勾配画素差分算出部、時間方向画素差分算出部、お よび演算判定部を設けるようにしたが、それらをひとつにまとめて設置するようにして ちょい。
[0371] また、上記説明にお!/、ては、有効画素判定部 403の有効画素判定を、演算ブロッ ク内の画素の時間方向の差分を求めることにより判定する場合、または、演算ブロッ ク内の画素の水平方向、垂直方向、または斜め方向の画素差分を求めることにより 判定する場合を説明したが、他の方法を用いて、演算ブロック内の画素が勾配法演 算に有効な画素である力否かを判定するようにしてもょ 、。
[0372] 次に、ベクトル割付部 54の構成の詳細について説明する。
[0373] 図 45は、ベクトル割付部 54の構成を示すブロック図である。図 45に構成を示すベ タトル割付部 54は、 24P信号の入力される時刻 tの画像のフレーム tと、時刻 t+ 1の 画像のフレーム t+ 1を用いて、フレーム t上において検出された動きベクトルを、割付 ベクトルメモリ 55上の、補間する 60P信号の内挿フレーム上の画素に割り付ける処理 を行う。
[0374] 図 45の例において、時刻 tの画像のフレーム tと、時刻 t+ 1の画像のフレーム t+ 1 は、画素情報演算部 701、評価値演算部 702、および着目画素差分演算部 703に 入力される。
[0375] 画素情報演算部 701は、検出ベクトルメモリ 53のフレーム t上の画素に検出された 動きベクトルを、左上の画素からラスタスキャン順に取得し、取得した動きベクトルを、 次の時刻のフレーム t+ 1方向に延ばし、延ばした動きベクトルと、内挿フレームとの 交点を算出する。そして、画素情報演算部 701は、算出された動きべ外ルと内挿フ レームとの交点から、内挿フレーム上において、その動きベクトルの割付対象となる 画素(以下、割付対象画素と称する)を設定し、動きベクトルおよび割付対象画素の 位置の情報を、ベクトル選択部 705に出力する。また、画像情報演算部 701は、割付 対象画素と、動きベクトルで対応付けられるフレーム tの位置 Pおよびフレーム t+ 1上 の位置 Qを算出し、算出されたフレーム tおよびフレーム t+ 1上の位置情報を、評価 値演算部 702、および着目画素差分演算部 703に出力する。
[0376] 評価値演算部 702は、画素情報演算部 701から、割付対象画素と、動きベクトルで 対応付けられるフレーム tおよびフレーム t+ 1上の位置情報を入力すると、フレーム t の位置 Pおよびフレーム t+ 1の位置 Qの評価値 DFDを演算するため、位置 Pおよび 位置 Qを中心とした一定範囲の DFD演算範囲 (m X n)をそれぞれ設定し、それらの DFD演算範囲が画枠内にある力否かを判断する。評価値演算部 702は、 DFD演算 範囲が画枠内にあると判断した場合、この DFD演算範囲を用いて演算することによ り、動きベクトルに対する割付対象画素の評価値 DFDを求め、求めた評価値 DFDを 、ベクトル評価部 704に出力する。
[0377] 着目画素差分演算部 703は、画素情報演算部 701から、割付対象画素と、動きべ タトルで対応付けられるフレーム tおよびフレーム t+ 1上の位置情報を入力すると、フ レーム tの位置 Pおよびフレーム t+ 1の位置 Qを用いて、割付対象画素に対する輝 度差分絶対値を求め、求めた輝度差分絶対値を、ベクトル評価部 704に出力する。 [0378] ベクトル評価部 704は、画素差分判断部 711および評価値判断部 712により構成 される。画素差分判断部 711は、着目画素差分演算部 703から入力された割付対象 画素に対する輝度差分絶対値が所定のしきい値よりも小さいか否かを判断する。評 価値判断部 712は、画素差分判断部 711により着目画素差分演算部 703から入力 された割付対象画素に対する輝度差分絶対値が所定のしきい値よりも小さいと判断 された場合に、評価値演算部 702から入力された割付対象画素の評価値 DFDが、 ベクトル選択部 705が有する DFDテーブルの最小評価値より小さいか否かを判断す る。そして、評価値判断部 712は、割付対象画素の評価値 DFDが、 DFDテーブル の最小評価値より小さいと判断した場合に、割付対象画素が対応する動きベクトルの 信頼度が高いと判断し、ベクトル選択部 705に、割付対象画素の評価値 DFDを出力 する。
[0379] ベクトル選択部 705は、内挿フレーム上の各画素における最小評価値を保持する DFDテーブルを有しており、内挿フレーム上の各画素に対して、 0ベクトルを割り付 けた場合の評価値 DFDOを、内挿フレーム上の各画素における最小評価値として D FDテーブルに予め保持している。ベクトル選択部 705は、ベクトル評価部 704から の割付対象画素の評価値 DFDを入力すると、画素情報演算部 701からの割付対象 画素の位置の情報に基づいて、割付フラグメモリ 56のフラグを l(true)に書き換え、割 付対象画素の DFDテーブルの最小評価値を、その割付対象画素の評価値 DFDに 書き換える。また、ベクトル選択部 705は、画素情報演算部 701からの割付対象画素 の位置の情報に基づいて、割付ベクトルメモリ 55の割付対象画素に、画素情報演算 部 701からの動きベクトルを割り付ける。
[0380] 次に、動きベクトルの画素以下精度を説明する。上述した式(1)で表される DFD評 価の演算においては、フレーム tの画素位置 pをベクトル V量分ずらした先のフレーム t + l上の位相p+vは、実際には、 24p信号のフレーム t+ 1上の画素位置と一致しな い場合が多ぐその場合の輝度値は定義されていない。したがって、画素以下精度 を有する動きベクトル Vに対する評価値 DFDの演算を行うためには、画素以下の位 相における輝度値を何らかの方法で生成しなければならな!/、。
[0381] これに対応して、フレーム tの画素位置 pをベクトル V量分ずらした先のフレーム t+ 1 上の位相 p+vに最も近い画素の輝度値をそのまま用いる方法がある。しかしながら、 この方法では、評価する動きベクトルの画素以下成分を丸めてしまうため、動きべタト ルの画素以下成分を捨てていることになり、これにより求められた評価値 DFDの信頼 度は、低くなつてしまう。
[0382] そこで、本発明においては、周辺 4画素の輝度値による 4点補間処理を用いている 。図 46は、本発明の 4点補間処理の概念を示す図である。図 46においては、矢印 X 力 フレーム t+ 1における水平方向を示しており、矢印 Yが、フレーム t+ 1における 垂直方向を示している。このフレーム t+ 1において、白丸は、フレーム t+ 1上の画素 位置を表しており、黒点は、画素以下の位置を表している。また、フレーム t+ 1上に おける最左上の黒点 p+vとその周辺 4画素は、ウィンドウ Eに拡大して示されている。 ウィンドウ Eにおいて、白丸内のアルファベットは、周辺 4画素の輝度値を示している
[0383] このフレーム t+ 1における最左上の黒点 p+v力 フレーム tの画素位置 pをベクトル V量分ずらした先の位相 p+vとすると、位相 p+vの輝度値 F (p+v)は、位相 p+v
t+1
の水平方向の画素以下成分 αおよび垂直方向の画素以下成分 β、並びに、位相 ρ + Vの周辺 4画素の輝度値 LO乃至 L4を用いて、周辺 4画素の距離の逆比の和で求 められる。すなわち、輝度値 F (p+v)は、次の式(22)で表される。
t+1
[0384] F (p+v) = (1— α ) (1— j8 ) LO+ α (1— j8 ) Ll
t+1
+ (1— a ) j8 L2+ a j8 L3 · · · (22)
[0385] 以上のように、 4点補間処理により求められる輝度値 F (p+v)を用いて、 DFD評
t+1
価の演算を行うことにより、ハードウェア実装上のコストを引き上げることなぐ評価値
DFDの信頼度の低下を抑制することができる。なお、以下においては、ベクトル割付 の際の評価値 DFDや輝度差分絶対値などの演算において、この 4点補間を適用し た例を説明する力 もちろん、上述した初期ベクトル選択処理やベクトル検出処理、 または、後述する割付補償処理などのベクトルを評価する場合の評価値 DFDの演 算においても、この 4点補間は適用される。
[0386] 次に、ベクトル割付処理の概念を説明する。例えば、 24P信号上でオブジェクトが 速度 Vで動いており、任意の 2フレーム間で、このオブジェクトの動きについて等速仮 定が成り立つと仮定した場合に、 24P信号のフレーム間に、新しくフレームを内挿す ることを考える。この場合、 24P信号のオブジェクトから動きベクトル Vを延ばすと、動 きベクトル Vと内挿フレームとの交点は、同じオブジェクトであり、同じ速度 Vを有する。
[0387] したがって、ベクトル検出部 53で検出された 24P信号のフレーム(以下、内揷フレ ームに対して、元フレームとも称する)の動きベクトルを、その動きベクトルと、内挿す る 60P信号の内挿フレーム上との交点に割り付けることで、内挿フレーム上の各画素 の動きを求めることができる。また、逆に、割り付けられた動きベクトルから、内挿フレ ーム上の画素が 24P信号フレーム上でどの位置から動いたものなのかを求めること ができる。
[0388] 図 47は、 24P信号の元フレームで検出された動きベクトルと、 60P信号の内揷フレ ーム上の画素の例を 1次元で示している。図 47の例においては、 2つの 24P信号の 時刻 tのフレーム tおよび時刻 t+ 1のフレーム t+ 1の間に、例えば、時刻 t+O. 4の 内挿フレーム Fl、および時刻 t+O. 8の内挿フレーム F2が 2つ挿入されている。なお 、この内挿フレームの位置は、上述したように、 24P信号上での時間位相が 0. 0, 0. 4, 0. 8, 1. 2,および 1. 6となる位置に、 60P信号のフレーム力 S置力れること力ら、 信号処理装置 1にお!、て予め設定されて!、る。
[0389] 各フレーム上の丸は、各画素を示している。前段のベクトル検出部 52によりフレー ム tにおいて検出された動きベクトル vl、 v2、および v3が、フレーム t+ 1方向に延ば されている。これらの動きベクトルを内挿フレーム F1および F2の各画素に割り付ける 場合、内挿フレーム上の各画素の近傍を通る動きベクトルは、その画素に割り付けら れる候補ベクトル (以下、割付候補ベクトルとも称する)とされる。
[0390] したがって、フレーム tの左側の画素から、フレーム t+ 1の左から 4, 5番目の画素 近傍への動きベクトル vlは、内挿フレーム F1上の左から 2番目と 3番目の画素の間、 内挿フレーム F2上の左から 3番目と 4番目の画素の間を通っている。したがって、動 きベクトル vlは、動きベクトル vlが内挿フレーム F1および F2を交差する点の近傍 N 1に含まれる画素(内挿フレーム F1の左から 2番目と 3番目の画素および内挿フレー ム F2の左から 3番目と 4番目の画素)に割り付けられる割付候補ベクトルとなる。
[0391] また、フレーム tの左から 3番目の画素から、フレーム t+ 1の左から 2, 3番目の画素 近傍への動きベクトル v2は、内挿フレーム F1上の左から 2番目と 3番目の画素の間、 内挿フレーム F2上の左から 2番目と 3番目の画素の間を通っている。したがって、動 きベクトル v2は、動きベクトル v2が内挿フレーム F1および F2を交差する点の近傍領 域 N2に含まれる画素(内挿フレーム F1の左から 2番目と 3番目の画素および内揷フ レーム F2の左から 2番目と 3番目の画素)に割り付けられる割付候補ベクトルとなる。
[0392] さらに、フレーム tの左から 5番目の画素から、フレーム t+ 1の左から 4, 5番目の画 素近傍への動きベクトル v3は、内挿フレーム F1上の左から 4番目と 5番目の画素の 間、内挿フレーム F2上の左力も 4番目と 5番目の画素の間を通っている。したがって 、動きベクトル v3は、動きベクトル v3が内挿フレーム F1および F2を交差する点の近 傍領域 N3に含まれる画素(内挿フレーム F1の左から 4番目と 5番目の画素および内 挿フレーム F2の左から 4番目と 5番目の画素)に割り付けられる割付候補ベクトルとな る。
[0393] すなわち、内挿フレーム F2の左から 2番目の画素の割付候補ベクトルは、動きべク トル v2であり、内挿フレーム F1上の左から 2番目および 3番目の画素、並びに内揷フ レーム F2の左から 3番目の画素の割付候補ベクトルは、動きベクトル vlおよび v2で ある。また、内挿フレーム F2の左力 4番目の画素の割付候補ベクトルは、動きべタト ル vlおよび v3であり、内挿フレーム F1上の左から 4番目および 5番目の画素、並び に内挿フレーム F2の左から 5番目の画素の割付候補ベクトルは、動きベクトル v3で ある。
[0394] 以上のように、元フレームにおいて検出された動きベクトルの中から、内挿フレーム 上の各画素に割り付けられる割付候補ベクトルが求められる。なお、内挿フレーム F1 および F2の左端の画素および右端の画素(図中黒丸)においては、近傍を通る動き ベクトルは、示されていない。すなわち、内挿フレーム F1および F2の左端の画素お よび右端の画素には、割り付けられる割付候補ベクトルが存在しない。したがって、こ れらの画素については、後述する後段の割付補償部 57において割付補償処理が実 行される。
[0395] さらに、図 48を参照して、元フレームで検出された動きベクトルと、 60P信号の内挿 フレーム上の画素について詳しく説明する。図 48の例において、矢印 Tは、図中、左 前の時刻 tのフレーム tから、右奥の時刻 t+ 1のフレーム t+ 1への時間の経過方向を 示している。また、時刻 tと時刻 t+ 1の間の時刻 t+posに内挿フレーム F1が置かれ
t
ている。
[0396] 図 48の例の場合、フレーム t上の画素(X , y )で検出された動きベクトル v (x , y
a a a va va
)をフレーム t+ 1方向に延ばし、内挿フレーム Flとの交点 (x , y )を演算する。交点 は、 24P信号のフレーム t上の動きベクトル Vの端点にあたる画素が移動した点であ
a
ると考えられるので、具体的には、式(23)および式(24)のように表される。
[0397] X = x +pos x · · · (23)
ia a t va
y = y +pos y · · · (24)
ia a t va
[0398] ここで、上述したように、動きベクトル vが画素以下精度を有する場合には、動きべ
a
タトル Vの交点と、内挿フレーム F1上の画素位置は、一致するとは限らない。一致し a
ない場合、図 48に示されるように、動きベクトル Vは、内挿フレーム F1上の交点の近
a
傍 4画素 Gl乃至 G4に対して割り付けられる。すなわち、動きベクトル Vは、近傍の各
a
画素 Gl乃至 G4上にシフト(平行移動)されて、それぞれの画素に対して割り付けら れる割付候補ベクトルとされ、割付補償処理が実行される。
[0399] なお、このように、 1つの動きベクトル力 近傍 4画素に対して割り付けられる候補と なることもあるため、画素によっては、複数の動きベクトルが割付候補ベクトルとされる 。この場合、ベクトル割付部 54は、各動きベクトルについて、内挿フレーム上の画素 と、その動きベクトルで対応付けられる元フレーム上の交点を算出し、その交点を用 いて、各動きベクトルを評価することにより、最終的に、内挿フレーム上の画素に、割 り付ける動きベクトルを決定する。
[0400] 図 49を参照して、ベクトル割付部 54における動きベクトルの評価について説明す る。図 49は、下から、図 48の時刻 tのフレーム t、時刻 t+posの内挿フレーム Fl、お
t
よび、時刻 t+ 1のフレーム t+ 1を、 1次元的に示している。
[0401] 図 49の例において、動きベクトル svは、フレーム t上の画素(X , y )において検出 された動きベクトル V 1S 近傍の画素 G4の割付候補ベクトルとして、画素 G4上にシ
a
フト(平行移動)されたものである。ここで、画素 G4上にシフトされた動きベクトル sv
aと
、フレーム tおよびフレーム t+ 1との交点を、それぞれ点 Pおよび点 Qとする。 [0402] ベクトル割付部 54は、動きベクトル svの第 1の評価として、まず、点 Pおよび点 Qを a
中心とした DFD演算範囲をそれぞれ求め、求めた DFD演算範囲が画枠をはみ出し てしまうか否かを判断する。したがって、点 Pおよび点 Qを中心とした DFD演算範囲 が画枠をはみ出てしまった場合には、動きベクトル svは、候補から除外される。
a
[0403] また、この点 Pおよび点 Qが、例えば、異なるオブジェクトに属する場合、点 Pの輝度 値 F (P)と、点 Qの輝度値 F (Q)の差は、大きくなつてしまう。したがって、ベクトル割 t t+1
付部 54は、動きベクトル svの第 2の評価として、点 Pと点 Qを用いて、画素 G4におけ a
る輝度差分絶対値 dpを求め、輝度差分絶対値 dpが所定の値より大きいか否かを判 断する。輝度差分絶対値 dpが所定の値より大きいと判断された場合には、画素 G4 における動きベクトル svの信頼度が低いとされ、動きベクトル svは、候補から除外さ a a
れる。なお、輝度差分絶対値 dpは、次の式(25)で表される。
[0404] dp = I F (P)— F (Q)
t t+1 I …(25)
[0405] そして、動きベクトル svの第 3の評価として、ベクトル割付部 54は、点 Pおよび点 Q a
を中心とした DFD演算範囲の相関値を表す差分絶対値による評価判断を行う。すな わち、ベクトル割付部 54は、点 Pおよび点 Qを中心とした DFD演算範囲を用いて、画 素 G4における動きベクトル svの評価値 DFD (差分絶対値)を求め、求められた評価 a
値 DFDが DFDテーブルの最小評価値よりも小さ 、か否かを判断する。以上の評価 の結果、ベクトル割付部 54は、求められた評価値 DFDの中で最小の評価値 DFDを 有する動きベクトルを、画素 G4に割り付ける。
[0406] 以上のように、内挿フレームの画素における割付候補の動きベクトルを、割付対象 画素の評価値 DFDだけでなぐ割付対象画素における輝度差分絶対値を用いて評 価するようにしたので、従来の評価値 DFDを用いるだけの場合よりも、確力もしい動 きベクトルを、割付対象画素に割り付けることができる。この結果、ベクトル割付の精 度が向上する。
[0407] なお、上述したように内挿フレームの画素における割付候補の動きベクトルを評価 するためには、内挿フレームの画素を基準に、その動きベクトルで対応付けられる元 フレーム上の位置が用いられる力 輝度差分絶対値 dpおよび評価値 DFDを求める 際に、割付候補の動きベクトルは、内挿フレームの画素位置を基準に延長するため、 動きベクトルと元フレーム上の交点は、元フレームの画素位置と一致しな 、ことがあり
、このままでは画素値を求めることができない。このような場合に、図 46を参照して上 述した 4点補間処理が実行される。
[0408] 図 50は、ベクトル割付処理における 4点補間の例を示している。図 50において、図
48および図 49における場合と対応する部分には対応する符号を付してあり、その説 明は繰り返しになるので省略する。
[0409] 図 50の例においては、割付候補の動きベクトル svは、内挿フレーム F1の画素位 a
置 G4を基準に延長されているため、動きベクトル svとフレーム tとの交点 Pは、フレー a
ム t上の画素位置(フレーム t上の白丸)と一致しておらず、また、動きベクトル SVとフ a レーム t+ 1との交点 Qも、フレーム t+ 1上の画素位置(フレーム t上の白丸)と一致し ていない。したがって、フレーム tおよびフレーム t+ 1においては、それぞれ交点 Pお よび交点 Qを中心とした近傍 Eの 4画素(フレーム tおよびフレーム t+ 1上の白丸)を 用いて、上述した 4点補間演算が行なわれ、交点 Pおよび交点 Qの画素値が求めら れる。
[0410] このように、本発明のベクトル割付処理においては、 4点補間処理により求められる 交点 Pおよび交点 Qの画素値が用いられて、輝度差分絶対値 dpおよび評価値 DFD が演算されるので、従来の画素以下成分を丸めてしまう方法よりも、輝度差分絶対値 dpや評価値 DFDを精度よく求めることができる。
[0411] 次に、図 51のフローチャートを参照して、ベクトル割付処理の詳細を説明する。 24 P信号の元フレームである、時刻 tの画像のフレーム tと、時刻 t+ 1の画像のフレーム t+ 1は、画素情報演算部 701、評価値演算部 702、および着目画素差分演算部 70 3に入力される。
[0412] 画素情報演算部 701は、新しい元フレームが入力されると、ベクトル選択部 705を 制御し、ステップ S701において、割付フラグメモリ 56の割付フラグを O(False)で初期 化させ、ステップ S702に進み、割付ベクトルメモリ 55を 0ベクトルで初期化させ、ステ ップ S703に進む。これにより、結果的に、動きベクトルが割り付けられない画素に、 0 ベクトルが割り付けられる。
[0413] また、画素情報演算部 701は、ステップ S703において、評価値演算部 702を制御 し、内挿フレーム上のすべての画素に対して、 0ベクトルを用いて評価値 DFDOを算 出させ、ベクトル選択部 705を制御し、評価値演算部 702により算出された 0ベクトル の評価値 DFD0を、内挿フレームの各画素に対する最小評価値として DFDテープ ルに記憶させ、ステップ S704に進む。すなわち、ステップ S703において、評価値演 算部 702は、内挿フレームすべての画素に対して、 0ベクトルを用いて評価値 DFD0 を算出し、算出した評価値 DFD0を、ベクトル評価部 704を介して、ベクトル選択部 7 05に出力する。そして、ベクトル選択部 705は、ベクトル評価部 704を介して入力さ れた評価値 DFD0を、 DFDテーブルの対応する画素の最小評価値として記憶する
[0414] 画素情報演算部 701は、ステップ S704において、検出ベクトルメモリ 53上の元フ レームから画素を選択し、ステップ S705〖こ進む。なお、この場合、フレームの左上か らラスタスキャン順に画素が選択される。
[0415] 画素情報演算部 701は、ステップ S705において、画素位置演算処理を実行し、ス テツプ S706に進む。この画素位置演算処理の詳細は、図 52を参照して後述するが 、この画素位置演算処理により、ステップ S704において選択された画素において検 出された動きベクトルが割り付けられる対象となる内挿フレーム上の割付対象画素が 算出され、算出された割付対象画素を基準に、その動きベクトルで対応付けられる元 フレーム上の位置が算出される。
[0416] 画素情報演算部 701は、ステップ S706において、算出された割付対象画素を選 択し、選択した割付対象画素と、その動きベクトルを、ベクトル選択部 705に出力し、 ステップ S707に進む。このとき、同時に、画素情報演算部 701は、選択した割付対 象画素を基準に、その動きベクトルで対応付けられる元フレーム上の位置の情報を、 評価値演算部 702および着目画素演算部 703に出力する。なお、ステップ S706に おいて、画素情報演算部 701は、割付対象画素が複数存在する場合には、左上の 画素から選択する。
[0417] ステップ S707において、画素情報演算部 701は、選択された割付対象画素に関し て、割付ベクトル評価処理を実行し、ステップ S708に進む。この割付ベクトル評価処 理の詳細は、図 53を参照して後述するが、この割付ベクトル評価処理により、割付対 象画素における動きベクトルの評価値 DFDおよび輝度差分絶対値が求められ、割 付対象画素における動きベクトルの信頼度が判断され、これらの判断の結果、信頼 度が高いとされた動きベクトルで、割付ベクトルメモリ 55の動きベクトルが書き換えら れる。
[0418] 画素情報演算部 701は、ステップ S708において、すべての割付対象画素の処理 が終了した力否かを判断し、まだ、すべての割付対象画素の処理が終了していない と判断した場合には、ステップ S706に戻り、次の割付対象画素を選択し、それ以降 の処理を繰り返す。
[0419] ステップ S708において、すべての割付対象画素の処理が終了したと判断された場 合、画素情報演算部 701は、ステップ S709において、検出ベクトルメモリ 53上の元 フレームのすべての画素の処理を終了した力否かを判断する。画素情報演算部 701 は、ステップ S709において、検出ベクトルメモリ 53上の元フレームのすべての画素 の処理を終了していないと判断した場合、ステップ S704に戻り、検出ベクトルメモリ 5 3上の元フレームの次の画素を選択し、それ以降の処理を繰り返す。また、画素情報 演算部 701は、ステップ S709において、検出ベクトルメモリ 53のすベての画素につ V、ての処理を終了したと判断した場合、ベクトル割付処理を終了する。
[0420] 次に、図 52のフローチャートを参照して、画素位置演算処理の詳細を説明する。な お、図 52は、図 51のステップ S705の画素位置演算処理の例を示している。
[0421] ステップ S721において、画素情報演算部 701は、ステップ S704の処理により選択 された画素で検出された動きベクトルを、検出メモリベクトル 53から取得し、ステップ S 722に進む。なお、選択された画素の動きベクトル力^ベクトルである場合、割付べク トルメモリ 55には、初期値として 0ベクトルが予め記憶されているので、以降のステツ プ S722乃至 S724、および、図 51のステップ S706乃至 S708の処理はスキップされ 、処理 ίま、ステップ S 709に進む。
[0422] 画素情報演算部 701は、ステップ S722において、取得された動きベクトルと内挿フ レームの交点を算出する。すなわち、画素情報演算部 701は、取得した動きベクトル を、次フレーム t+ 1方向に延ばし、延ばした動きベクトルと、内挿フレームとの交点を 算出し、ステップ S723〖こ進む。 [0423] 画素情報演算部 701は、ステップ S723において、動きベクトルと内挿フレームから 算出された交点から、割付対象画素を設定し、ステップ S724に進む。このとき、画素 情報演算部 701は、交点が内挿フレーム上の画素位置に一致する場合には、交点 を、割付対象画素に設定する。一方、画素情報演算部 701は、交点が内挿フレーム 上の画素位置に一致しない場合には、上述したように、内挿フレーム上の交点の近 傍 4画素を、割付対象画素に設定する。
[0424] ステップ S724において、画素情報演算部 701は、評価値演算部 702および着目 画素差分演算部 703が評価値 DFDおよび輝度差分絶対値を求める上で必要であ る、各割付対象画素を基準に、取得された動きベクトルで対応付けた元フレーム上の 位置を算出する。具体的には、画素情報演算部 701は、ステップ S724において、取 得された動きベクトルを、設定された割付対象画素にシフト (平行移動)し、シフトされ た動きベクトルと、元フレーム上の交点の位置を求め、画素位置演算処理を終了し、 図 50のステップ S 706に戻る。
[0425] 次に、図 53のフローチャートを参照して、割付ベクトル評価処理の詳細を説明する 。なお、図 53は、図 51のステップ S707の割付ベクトル評価処理の例を示している。
[0426] 図 51のステップ S706において、画素情報演算部 701により、選択した割付対象画 素を基準に、その動きベクトルで対応付けられる元フレーム上の位置が求められ、求 められた元フレーム上の位置の情報が、評価値演算部 702および着目画素差分演 算部 703に入力される。
[0427] 評価値演算部 702は、画素情報演算部 701から、元フレーム上の位置の情報が入 力されると、ステップ S741において、割付対象画素における動きベクトルの評価値 D FDを求めるために、フレーム tおよびフレーム t+ 1上の位置を中心とした DFD演算 範囲(m X n)をそれぞれ求め、ステップ S742に進み、求められた DFD演算範囲が 画枠内にある力否かを判断する。評価値演算部 702は、ステップ S742において、 D FD演算範囲が画枠からはみ出していると判断した場合、その動きベクトルは、割付 対象画素に割り付ける割付候補ベクトルにはならな 、と判断し、ステップ S743乃至 S 749の処理をスキップし、割付ベクトル評価処理を終了し、図 51のステップ S708に 戻る。 [0428] 評価値演算部 702は、ステップ S742において、求められた DFD演算範囲が画枠 内にあると判断した場合、ステップ S743に進み、画枠内にあると判断された DFD演 算範囲を用いて、割付対象画素の評価値 DFDを演算し、求められた評価値 DFDを 、評価値判断部 712に出力し、ステップ S744に進む。なお、このとき、元フレーム上 の位置が画素以下であった場合には、上述した 4点補間を用いて、元フレーム上の 交点の輝度値を求めることにより、割付対象画素の評価値 DFDが演算される。
[0429] 一方、着目画素差分演算部 703は、画素情報演算部 701から、元フレーム上の位 置の情報が入力されると、ステップ S744において、割付対象画素における輝度差分 絶対値 dpを求め、求められた輝度差分絶対値 dpを、画素差分判断部 711に出力し 、ステップ S745に進む。なお、このときも、元フレーム上の位置が画素以下であった 場合には、着目画素差分演算部 703は、上述した 4点補間を用いて、元フレーム上 の交点の輝度値を求めることにより、割付対象画素における輝度差分絶対値 dpを演 算する。
[0430] 画素差分判断部 711は、ステップ S745において、着目画素差分演算部 703から の割付対象画素の輝度差分絶対値 dpが、所定のしき!/、値以下であるカゝ否かを判断 し、割付対象画素の輝度差分絶対値 dpが、所定のしきい値より大きいと判断した場 合、フレーム tおよびフレーム t+ 1の交点がそれぞれ異なるオブジェクトに属する可 能性が高いと判断し、すなわち、その動きベクトルは、割付対象画素における信頼度 が低ぐ割付対象画素に割り付ける割付候補ベクトルにはならないと判断し、ステップ S746乃至 S749の処理をスキップし、割付ベクトル評価処理を終了し、図 51のステ ップ S 708に戻る。
[0431] 画素差分判断部 711は、ステップ S745において、割付対象画素の輝度差分絶対 値 dp力 所定のしきい値以下であると判断した場合、ステップ S746に進む。評価値 判断部 712は、ステップ S746において、ベクトル選択部 705の DFDテーブルを参 照し、評価値演算部 702からの割付対象画素の評価値 DFDが、 DFDテーブルに記 憶されて 、る割付対象画素の最小評価値 ( 、まの場合、 0ベクトルの評価値 DFDO) よりも小さいか否かを判断し、評価値演算部 702からの割付対象画素の評価値 DFD 力 DFDテーブルに記憶されて 、る割付対象画素の最小評価値以上であると判断 した場合、その動きベクトルは、割付対象画素において、信頼度が高くないと判断し
、ステップ S747乃至 S749の処理をスキップし、割付ベクトル評価処理を終了し、図 51のステップ S 708に戻る。
[0432] 一方、評価値判断部 712は、ステップ S746において、評価値演算部 702からの割 付対象画素の評価値 DFDが、 DFDテーブルに記憶されて 、る割付対象画素の最 小評価値よりも小さいと判断した場合、その動きベクトルは、割付対象画素において 、いままで比較した動きベクトルの中で最も、評価値 DFDに基づく信頼度が高いと判 断し、信頼度が高いと判断された割付対象画素の評価値 DFDを、ベクトル選択部 7 05に出力し、ステップ S 747に進む。
[0433] ベクトル選択部 705は、評価値判断部 712からの割付対象画素の評価値 DFDを 入力すると、ステップ S747において、割付フラグメモリ 56の割付対象画素の割付フ ラグを l(True)に書き換え、ステップ S748に進み、 DFDテーブルの割付対象画素が 対応する最小評価値を、評価値判断部 712により信頼度が高いと判断された評価値 DFDに書き換え、ステップ S 749に進む。
[0434] ベクトル選択部 705には、ステップ S706において、画素情報演算部 701から選択 した割付対象画素とその動きベクトルが入力されている。したがって、ベクトル選択部 705は、ステップ S749において、割付ベクトルメモリ 55の割付対象画素に割り付けら れて 、る動きベクトルを、信頼度が高 、と判断された評価値 DFDに対応する動きべ タトルで書き換え、割付ベクトル評価処理を終了し、図 51のステップ S708に戻る。
[0435] 以上のように、内挿フレームの割付対象画素に割り付けられる動きベクトルを選ぶと きに、評価値 DFDだけでなぐ割付対象画素を基準に動きベクトルで対応付けた元 フレーム上の位置に基づいて求められる、割付対象画素の輝度差分絶対値を別扱 いにし、評価するようにしたので、従来の評価値 DFDを用いるだけの場合よりも、割 付候補ベクトルの中から、最も確からしい動きベクトルを選んで、割付対象画素に割り 付けることができる。これにより、ベクトル割付の精度が向上し、後段の画像補間処理 にお 、て生成される画像の不連続性などを抑制することができ、画像の品質を向上 させることがでさる。
[0436] さらに、評価値 DFDや輝度差分絶対値を求める際などに、画素以下位置の画素 値が必要な場合に、その画素以下位置の近傍 4画素との距離を基にした線形補間 で値を求めるようにしたので、画素以下位置精度の処理が可能になり、さらに、従来 の画素以下成分を丸めてしまう方法よりも、輝度差分絶対値 dpや評価値 DFDを精 度よく求めることができ、これにより、割付候補ベクトルの中から、着目画素により確か らしい動きベクトルを割り付けることができる。すなわち、ベクトル割付処理の精度が 向上する。
[0437] また、 0ベクトルによる評価値 DFDを初期値として、 DFDテーブルに予め保持して おき、動きベクトルを順次処理している間に、ある動きベクトルによる評価値 DFDがそ の時点で最小評価値となった場合に、 DFDテーブルの最小評価値と、割付ベクトル メモリ 55に割り付けられている動きベクトルを、随時更新するようにしたので、時間とリ ソースを効率的に使用することができる。
[0438] 次に、割付補償部 57の構成の詳細について説明する。
[0439] 図 54は、割付補償部 57の構成を示すブロック図である。図 54に構成を示す割付 補償部 57は、割付ベクトル判定部 801およびベクトル補償部 802により構成され、ベ タトル割付部 54により動きベクトルが割り付けられな力つた 60P信号の内挿フレーム 上の画素に、その周辺画素の動きベクトルを補って割り付ける処理を行う。
[0440] 前段のベクトル割付部 54により、割付ベクトルメモリ 55上の内挿フレームの画素に は動きベクトルが割り付けられている。また、ベクトル割付部 54により動きベクトルが 割り付けられた画素の割付フラグメモリ 56の割付フラグには、 l(True)が書き込まれて おり、動きベクトルが割り付けられな力つた画素の割付フラグメモリ 56の割付フラグに は、 O(False)が書き込まれている。
[0441] 割付ベクトル判定部 801は、割付フラグメモリ 56の割付フラグを参照し、着目画素 に、ベクトル割付部 54により動きベクトルが割り付けられているか否かを判定する。そ して、割付ベクトル判定部 801は、ベクトル割付部 54により動きベクトルが割り付けら れなカゝつた着目画素を選択し、選択した着目画素に対して、ベクトル補償部 802を制 御し、その着目画素の周辺画素の動きベクトルを選択して、割付ベクトルメモリ 55の 内挿フレーム上に割り付けさせる。
[0442] ベクトル補償部 802は、割付ベクトルメモリ 55から、着目画素の周辺画素に割り付 けられている動きベクトルを取得し、入力される時刻 tの画像のフレーム tと、時刻 t+ 1 の画像のフレーム t+ 1を用いて、取得した動きベクトルの評価値 DFDを求めて比較 することにより、着目画素の周辺画素に割り付けられた動きベクトルのうち、評価値 D FDに基づぐ最も信頼度が高い動きベクトルを、割付ベクトルメモリ 55の着目画素に 割り付ける。また、ベクトル補償部 802は、動きベクトルが割り付けられた着目画素の 割付フラグを l(True)に書き換える。
[0443] 図 55は、ベクトル補償部 802の構成を示すブロック図である。図 55に構成を示す ベクトル補償部 802は、補償処理部 811および評価値演算部 812により構成される。
[0444] 補償処理部 811は、最小評価値 DFDと、最小評価値 DFDの動きベクトルを候補 ベクトル (以下、補償候補ベクトルとも称する)として記憶するメモリ 821を有しており、 割付ベクトル判定部 801により選択された着目画素の初期値として、 0ベクトルの評 価値 DFDを最小評価値としてメモリ 821に記憶し、 0ベクトルを、補償候補ベクトルと してメモリ 821に記憶する。補償処理部 811は、割付フラグメモリ 56を参照して、着目 画素の周辺画素の動きベクトルの有無を判断し、割付ベクトルメモリ 55から、周辺画 素に割り付けられている動きベクトルを取得し、評価値演算部 812を制御し、その動 きベクトルの評価値 DFDを演算させる。
[0445] また、補償処理部 811は、評価値演算部 812により演算された評価値 DFDがメモリ 821に記憶されて 、る最小評価値よりも小さ!/、か否かを判断し、演算された評価値 D FDが最小評価値よりも小さいと判断した場合、メモリ 821の補償候補ベクトルと最小 評価値を、演算された評価値 DFDとその動きベクトルに書き換え、最終的に、評価 値 DFDが最も小さ 、と判断された周辺画素の動きベクトル (補償候補ベクトル)を、着 目画素の動きベクトルとして、割付ベクトルメモリ 55の着目画素に割り付ける。さらに、 補償処理部 811は、動きベクトルが割り付けられた着目画素の割付フラグメモリ 56の 割付フラグを l(True)に書き換える。
[0446] 評価値演算部 812は、割付ベクトルメモリ 55から周辺画素の動きベクトルを取得す ると、入力される時刻 tの 24P信号の画像のフレーム tと、時刻 t+ 1の画像のフレーム t+ 1を用いて、割付ベクトルメモリ 55からの動きベクトルの評価値 DFDを演算し、演 算した評価値 DFDを補償処理部 811に出力する。 [0447] 図 56は、割付補償処理の原理を説明する図である。図 56の例においては、内挿フ レーム上の各画素が示されている。画素から出力される矢印は、各画素に割り付けら れている動きベクトルを表しており、矢印がない画素は、動きベクトルが割り付けられ ヽ画素を表して!/ヽる。
[0448] ここで、前段のベクトル割付部 54により動きベクトルの割り付けられな力つた中央の 着目画素 Pに対して、着目画素 Pの近傍の周辺画素に割り付けられて 、る動きべタト ルの中から、評価値 DFDに基づぐ信頼度が高いものを選択して割り付ける。図 56 の例の場合、着目画素 Pには、着目画素 Pの上の画素の動きベクトル (太線矢印)が 選択され、割り付けられている。これは、次に説明する動き相関に基づいて実行され る処理である。
[0449] 図 57は、動き相関の原理について説明する図である。図 57の例においては、ある フレーム上を動き vlで動くオブジェクト Olと、動き v2で動くオブジェクト 02が示され ている。オブジェクト Olに属している着目画素 P1とその近傍 K1は、オブジェクト Ol とほぼ同一動き vlを有している。また、オブジェクト 02に属している着目画素 P2とそ の近傍 K2は、オブジェクト 02とほぼ同じ動き v2を有して!/、る。
[0450] このように、動き相関とは、ある同じ時間における空間内(同一フレーム内)において 、あるオブジェクトに属する画素の動きは、ほぼ同一動きをしていることが多いというこ とを表すものである。したがって、動きベクトルを割り付けることができなかった画素に 対しては、ある同じ時間における空間内(同一フレーム内)において、このような動き 相関があることを利用して、周辺画素の動きベクトルから、その画素の対応する動き ベクトルを選択することができる。なお、説明は省略するが、時間方向の相関も同様 である。
[0451] 次に、図 58乃至図 64を参照して、動き相関に基づいて実行される動きベクトルの 補償処理について説明する。すなわち、周辺画素の動きベクトルから、動きベクトル を選択し、着目画素の動きベクトルとして補う処理である。図 58の例においては、白 丸は、内挿フレーム上の画素を表しており、動きベクトルを求めようとしている着目画 素 Pの周辺に、周辺 8画素が示されている。この着目画素 Pの動きベクトルは、この周 辺 8画素の動きベクトルを参照して求められる。 [0452] 図 59の例においては、着目画素 Pの周辺 8画素の中で、左上画素、右上画素、お よび、右下画素(黒丸)に、前段の処理 (例えば、上述したベクトル割付処理)などに より求められた動きベクトル (矢印)が示されている。すなわち、この場合の着目画素 P の補償候補ベクトルは、左上画素、右上画素、および、右下画素の動きベクトルとさ れる。なお、フレーム上において、動きベクトルは、フレーム上の左上の画素からラス タスキャン順に求められていくため、周辺 8画素のうち、まだ動きベクトルの求められ て 、な 、画素も存在する可能性もある力 まだ動きベクトルは求められて 、な 、ため 、補償候補ベクトルにはできない。
[0453] ここで、図 60の例に示されるように、周辺 8画素の中には、前段の処理において求 められた動きベクトルを有する画素(黒丸)の他に、本処理により求められた動きべク トルを有する画素 (ハッチングされた丸)も存在する。すなわち、本処理においては、 本処理自体の前段の結果も利用される。したがって、図 60の例の場合の着目画素 P の補償候補ベクトルは、動きベクトルがすでに存在する画素(黒丸)の動きベクトルと 、前段の本処理により求められた動きベクトルを有する画素 (ハッチングされた丸)の 動きベクトルにより構成されて 、る。
[0454] また、図 61の例に示されるように、動き量を 0とした 0ベクトル (静止ベクトル) SOも補 償候補ベクトルとして利用することができる。なお、図 60の例においては、本処理に より求められた動きベクトルを有する画素と、動きベクトルがすでに存在する画素を別 々に表した力 どちらも動きベクトルを有するという点で同じであるので、図 61乃至図 64においては、本処理により求められた動きベクトルを有する画素も、動きベクトルが すでに存在する画素(黒丸)に含まれることとする。したがって、図 61の例の場合、着 目画素 Pの補償候補ベクトルは、動きベクトルがすでに存在する画素(黒丸)の動き ベクトルおよび 0ベクトル SOにより構成されている。
[0455] 以上のようにして構成される補償候補ベクトルの信頼度 (確カゝらしさ)を比較するた めに、動きベクトルの評価方法である評価値 DFDは、以降の図 62乃至図 64に示さ れるようにして求められる。図 62は、補償候補ベクトルとして、 0ベクトル SOが用いら れる例を示している。図 63は、補償候補ベクトルとして、周辺 8画素の左上画素の動 きベクトル VK1が用いられる例を示している。図 64は、補償候補ベクトルとして、周辺 8画素の上中央画素の動きベクトル VK2が用いられる例を示して!/、る。
[0456] 図 62の例においては、図中左側に示される着目画素 Pの補償候補ベクトルの中か ら、 0ベクトル SOが選択され、選択された 0ベクトル SOの評価値 DFDを求める例が示 されている。すなわち、 0ベクトル SOに対する評価値 DFDは、着目画素 P (60P信号 の内挿フレーム)を挟む、 24P信号のフレーム tとフレーム t+ 1上において、内揷フレ ーム上の着目画素 Pを基準にして、選択された 0ベクトル SOが対応付けられる交点を 求め、この交点を中心として所定の範囲(m X n)の DFD演算範囲 D1— 1および D1 2を算出し、算出された DFD演算範囲 D1— 1および D1— 2を用いて、上述した式 (1)を演算することにより求められる。
[0457] 図 63の例においては、図中左側に示される着目画素 Pの補償候補ベクトルの中か ら、周辺 8画素の左上画素の動きベクトル VK1が選択され、選択された動きベクトル VK1の評価値 DFDを求める例が示されている。すなわち、周辺 8画素の左上画素 の動きベクトル VK1に対する評価値 DFDは、着目画素 P (内挿フレーム)を挟むフレ ーム tとフレーム t+ 1上において、内挿フレーム上の着目画素 Pを基準にして、選択 された動きベクトル VK1が対応付けられる交点を求め、この交点を中心として所定の 範囲(m X n)の DFD演算範囲 D2— 1および D2— 2を算出し、算出された DFD演算 範囲 D2— 1および D2— 2を用いて、上述した式(1)を演算することにより求められる
[0458] 図 64の例においては、図中左側に示される着目画素 Pの補償候補ベクトルの中か ら、補償候補ベクトルとして、周辺 8画素の上中央画素の動きベクトル VK2が選択さ れ、選択された動きベクトル VK2の評価値 DFDを求める例が示されている。すなわ ち、周辺 8画素の上中央画素の動きベクトル VK2に対する評価値 DFDは、着目画 素 P (内挿フレーム)を挟むフレーム tとフレーム t+ 1上にお!、て、内挿フレーム上の 着目画素 Pを基準にして、選択された動きベクトル VK2が対応付けられる交点を求 め、この交点を中心として所定の範囲(m X n)の DFD演算範囲 D3— 1および D3— 2を算出し、算出された DFD演算範囲 D3— 1および D3— 2を用いて、上述した式(1 )を演算することにより求められる。
[0459] なお、図中左側に示される他の補償候補ベクトルについても、基本的に同様の処 理であるため、その説明は省略するが、以上のようにして、着目画素 Pの周辺画素の 補償候補ベクトルすべての評価値 DFDが求められ、求められたそれらの評価値 DF Dが比較され、その中で、最も評価値 DFDが最小となる補償候補ベクトルが、図 65 に示されるように、着目画素 Pに割り付けられる最も信頼度がある、確力もしい動きべ タトルとして選択される。
[0460] 図 65の例の場合、着目画素 Pの周辺画素の補償候補ベクトルの中から、周辺 8画 素の左上画素の動きベクトル VK1の評価値 DFDが最も小さいとして判断され、動き ベクトル VK1が、着目画素 Pの動きベクトルとして選択され、割り付けられている。
[0461] 以上のように、ベクトル割付部 54において割り付けることができな力つた画素の動き ベクトルを、動き相関を利用して、周辺画素の動きベクトル力 補償するようにしたの で、動きベクトルが割り付けられず、例えば、 0ベクトルが割り付けられていたような場 合よりも、動きの乱れを抑制することができる。また、このようにして補償された画素の 動きベクトルも、他の画素の補償候補ベクトルとして再度利用することができる。すな わち、空間方向の近傍の動きベクトルだけでなぐ時間方向の近傍の動きベクトルも 、補償候補ベクトルに用いることができるので、オブジェクト内でほぼ同じ動きをする 画素には、ほぼ同一の動きベクトルが選択され、誤りの少ない安定した動きベクトル を得ることができる。これにより、ベクトル割付の精度が向上する。
[0462] 次に、図 66のフローチャートを参照して、割付補償処理の詳細を説明する。前段の ベクトル割付部 54により、割付ベクトルメモリ 55上の内挿フレームの画素には動きべ タトルが割り付けられている。また、ベクトル割付部 54により動きベクトルが割り付けら れた画素の割付フラグメモリ 56の割付フラグには、 l(True)が書き込まれており、動き ベクトルが割り付けられな力つた画素の割付フラグメモリ 56の割付フラグには、 0 (False)が書き込まれて!/、る。
[0463] 割付ベクトル判定部 801は、ステップ S801において、割付フラグメモリ 56の内揷フ レームの画素を、着目画素として選択し、ステップ S802に進む。このとき、割付べタト ル判定部 801は、フレームの左上の画素からラスタスキャン順に画素を選択する。
[0464] 割付ベクトル判定部 801は、ステップ S802において、割付フラグメモリ 56内の着目 画素の割付フラグ力 O(False)である力否かを判断し、割付フラグメモリ 56内の着目 画素の割付フラグ力 O(False)であると判断した場合、動きベクトルが割り付けられて いないと判定し、ステップ S803に進み、補償処理部 811を制御し、ベクトル補償処 理を実行させ、ステップ S804に進む。このベクトル補償処理の詳細は、図 67を参照 して後述する力 このベクトル補償処理により、周辺画素に割り付けられた動きべタト ルの中から、評価値 DFDの最小の動きベクトルが補償候補ベクトルとしてメモリ 821 に gc feされる。
[0465] 補償処理部 811は、ステップ S804において、メモリ 821の補償候補ベクトルを、着 目画素の動きベクトルとして、割付ベクトルメモリ 55に割り付け、ステップ S805に進み 、割付フラグメモリ 56の着目画素の割り付けフラグを、 l(True)に書き換え、ステップ S 806に進む。
[0466] 一方、ステップ S802において、割付ベクトル判定部 801は、割付フラグメモリ 56内 の着目画素の割付フラグが、 l(True)であると判断した場合、その着目画素にはすで に動きベクトルが割り付けられて ヽると判定して、ステップ S803乃至 S805の処理を スキップし、ステップ S806〖こ進む。
[0467] 割付ベクトル判定部 801は、ステップ S806において、割付フラグメモリ 56の内揷フ レームのすべての画素の処理を終了したか否かを判断し、すべての画素の処理を終 了していないと判断した場合、ステップ S801に戻り、割付フラグメモリ 56の内挿フレ ームの次の画素を、着目画素として選択し、それ以降の処理を実行する。ステップ S 806において、割付フラグメモリ 56の内挿フレームのすべての画素の処理を終了し たと判断した場合、割付補償処理を終了する。
[0468] 次に、図 67のフローチャートを参照して、ベクトル補償処理の詳細を説明する。な お、図 67は、図 66のステップ S803のベクトル補償処理の例を示している。
[0469] 補償処理部 811は、ステップ S821において、評価値演算部 812を制御し、 0ベタト ルを用いて評価値 DFD0を算出させ、ステップ S822に進む。具体的には、評価値 演算部 812は、ステップ S821において、入力される時刻 tの画像のフレーム tと、時 刻 t+ 1の画像のフレーム t+ 1を用いて、例えば、図 62を参照して上述したように、着 目画素について、 0ベクトルでの評価値 DFD0を演算し、演算した評価値 DFD0を 補償処理部 811に出力する。 [0470] ステップ S822において、補償処理部 811は、評価値 DFDOを最小評価値としてメ モリ 821に記憶し、ステップ S823に進み、 0ベクトルを補償候補ベクトルとして、メモリ 821に記憶し、ステップ S824に進む。補償処理部 811は、ステップ S824において、 割付ベクトル判定部 801により選択された着目画素の周辺 8画素のうち、 1つの周辺 画素を選択し、ステップ S825〖こ進む。このとき、補償処理部 811は、周辺 8画素のう ち、左上の画素力 ラスタスキャン順に周辺画素を選択する。
[0471] 補償処理部 811は、ステップ S825において、割付フラグメモリ 56を参照し、選択し た周辺画素の動きベクトルが存在する力否かを判断する。割付フラグメモリ 56の周辺 画素の割付フラグが l(True)であれば、補償処理部 811は、ステップ S825において 、選択した周辺画素に割り付けられている動きベクトルが存在すると判断し、ステップ S826に進み、割付ベクトルメモリ 55から、周辺画素の動きベクトルを取得し、ステツ プ S827に進む。このとき、割付ベクトルメモリ 55から評価値演算部 812にも周辺画 素の動きベクトルが出力される。
[0472] 評価値演算部 812は、割付ベクトルメモリ 55から周辺画素の動きベクトルが入力さ れると、ステップ S827において、入力される時刻 tの画像のフレーム tと、時刻 t+ 1の 画像のフレーム t+ 1を用いて、着目画素について、割付ベクトルメモリ 55からの動き ベクトルの評価値 DFDを演算し、演算した評価値 DFDを、補償処理部 811に出力 し、ステップ S828に進む。
[0473] 補償処理部 811は、評価値演算部 812から評価値 DFDが入力されると、ステップ S828において、評価値 DFDが、メモリ 821に記憶されている着目画素の最小評価 値よりも小さいか否かを判断し、評価値 DFDが、メモリ 821に記憶されている着目画 素の最小評価値よりも小さいと判断した場合、ステップ S829に進み、メモリ 821の最 小評価値を、最小評価値よりも小さいと判断された評価値 DFDに書き換え、ステップ S830に進み、メモリ 821の補償候補ベクトルを、その最小評価値の動きベクトルに書 き換え、ステップ S831に進む。
[0474] 一方、ステップ S825において、割付フラグメモリ 56の周辺画素の割付フラグが 0
(False)であると、補償処理部 811は、選択した周辺画素に割り付けられている動きべ タトルがないと判断し、ステップ S826乃至 S830の処理をスキップし、ステップ S831 に進む。また、ステップ S828において、補償処理部 811は、評価値 DFDが、メモリ 8 21に記憶されて 、る着目画素の最小評価値以上であると判断した場合、ステップ S8 29および S830の処理をスキップし、ステップ S831に進む。
[0475] 補償処理部 811は、ステップ S831において、着目画素の周辺 8画素すべてに対し て処理が終了した力否かを判断し、着目画素の周辺 8画素すべてに対して処理が終 了していないと判断した場合、ステップ S824に戻り、次の周辺画素を選択し、それ以 降の処理を繰り返す。また、補償処理部 811は、ステップ S831において、着目画素 の周辺 8画素すべてに対して処理が終了したと判断した場合、ベクトル補償処理を終 了し、図 66のステップ S804に戻る。
[0476] 以上のように、ベクトル割付処理において、割り付けることができな力つた画素に関 しても、動き相関があることを利用して、その画素の周辺の動きベクトルの中から、評 価値 DFDに基づぐ最も信頼度がある、確からしい動きベクトルを得ることができる。 これにより、ベクトルが割り付けられず、 0ベクトルなどを割り付けておく場合よりも、ベ タトル割付の精度が向上し、後段の画像補間処理において生成される画像の不連続 性を抑制することができる。
[0477] また、上述した割付補償処理により動きベクトルが割り付けられた画素の割付フラグ を l(True)に書き換えるようにし、割付補償処理により割り付けられた動きベクトルも、 次の画素の補償候補ベクトルとして用いるようにしたので、オブジェクト内でほぼ同じ 動きをする画素には、ほぼ同一の動きベクトルが選択されるようになり、誤りの少ない 安定した動きベクトルを得ることができる。その結果、後段において生成される画像の ブロックノイズや粉状ノイズなどを抑制し、品質を向上させることができる。
[0478] また、動きベクトルを求める着目画素について、 0ベクトルの評価値 DFDを予め算 出し、最小評価値としてメモリに保持しておくことにより、すべての補償候補ベクトル 評価値 DFDを一度に算出し、その中から最小の評価値 DFDを選択する場合よりも、 時間とリソースを効率的に使用することができる。
[0479] なお、上記説明にお 、ては、ベクトル割付部 54にお 、て割り付けられな力つた画素 に対してベクトル補償処理を行っている力 ベクトル検出部 52において検出されなか つた(0ベクトルが検出された)画素など、何らかの処理において動きベクトルが求めら れな力つた画素に対してベクトル補償処理を行うようにしてもよい。また、さらに、検出 された動きベクトル、または、割り付けられた動きベクトルが確力 しくない (信頼度が 低 ヽ)とされる画素に対してベクトル補償処理を行うようにしてもょ ヽ。
[0480] 本実施の形態にぉ 、ては、動きベクトルを選択する際の評価値として、差分絶対値 和である評価値 DFDを用いて説明した力 評価値 DFDに限定されず、動きベクトル の信頼度を評価するものであれば、他のものを用いるようにしてもょ 、。
[0481] また、本実施の形態においては、各処理を行うブロックを、例えば、 8画素 X 8画素 や 9画素 X 9画素などにより構成するようにして説明した力 これらは、一例であり、各 処理を行うブロックを構成する画素は、上記画素数に限定されな 、。
[0482] さらに、本実施の形態においては、 24P信号力も 60P信号への信号変換を例に、 説明を行ったが、本発明は、例えば、動画像のフレーム周波数変換として、インター レース信号や、他のフレームレート変換にも適用することができる。
[0483] 上述した一連の処理は、ハードウェアにより実行させることもできる力 ソフトウェア により実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、 そのソフトウェアを構成するプログラム力 専用のハードウェアに組み込まれているコ ンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行 することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒 体からインストールされる。
[0484] コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプロ グラムを格納するプログラム格納媒体は、図 1に示されるように、磁気ディスク 31 (フレ キシブルディスクを含む)、光ディスク 32 (CD- ROM(Compact Disc-Read Only Memory), DVD(Digital Versatile Disc)を含む)、光磁気ディスク 33 (MD(Mini- Disc) ( 商標)を含む)、もしくは半導体メモリ 34などよりなるリムーバブル記録媒体 (パッケー ジメディア)、または、プログラムが一時的もしくは永続的に格納される ROM12など により構成される。
[0485] なお、本明細書において、フローチャートに示されるステップは、記載された順序に 従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、 並列的あるいは個別に実行される処理をも含むものである。

Claims

請求の範囲
[1] 動きベクトルを検出するための勾配法演算の対象となる演算ブロック内の画素が、 前記動きベクトルの検出に有効であるか否かを判断する有効画素判断手段と、 前記演算ブロック内の画素のうち、前記有効画素判断手段により前記動きベクトル の検出に有効であると判断された画素のみを用いて、前記勾配法演算を行う勾配法 演算手段と
を備えることを特徴とする画像処理装置。
[2] 前記有効画素判断手段は、
前記動きベクトルを検出する対象の第 1のフレーム、および、前記第 1のフレームの 次の第 2のフレーム上の前記演算ブロック内の画素の時間方向の画素差分を算出す る時間差分算出手段を備え、
前記時間差分算出手段により算出された前記時間方向の画素差分に基づき、前 記演算ブロック内の画素力 前記動きベクトルの検出に有効であると判断する ことを特徴とする請求項 1に記載の画像処理装置。
[3] 前記有効画素判断手段は、
前記時間差分算出手段により算出された前記時間方向の画素差分が所定のしき い値より小さいか否かを判断する時間差分判断手段をさらに備え、
前記時間差分判断手段により前記時間方向の画素差分が所定のしきい値より小さ いと判断された場合、前記演算ブロック内の画素が、前記動きベクトルの検出に有効 であると判断する
ことを特徴とする請求項 2に記載の画像処理装置。
[4] 前記有効画素判断手段は、
前記動きベクトルを検出する対象の第 1のフレーム上の前記演算ブロック内の画素 の第 1の空間方向の画素差分を算出する第 1の空間差分算出手段と、
前記第 1のフレームの次の第 2のフレーム上の前記演算ブロック内の画素の第 2の 空間方向の画素差分を算出する第 2の空間差分算出手段と、
前記第 1のフレームおよび前記第 2のフレーム上の前記演算ブロック内の画素の時 間方向の画素差分を算出する時間差分算出手段とを備え、 前記第 1および第 2の空間差分算出手段、並びに、前記時間差分算出手段により 算出された前記第 1および第 2空間方向、並びに、前記時間方向の画素差分に基づ き、前記演算ブロック内の画素が、前記動きベクトルの検出に有効であると判断する ことを特徴とする請求項 1に記載の画像処理装置。
[5] 前記有効画素判断手段は、
前記第 1および第 2の空間差分算出手段、並びに、前記時間差分算出手段により 算出された前記第 1および第 2空間方向、並びに、前記時間方向の画素差分に基づ く、前記画素の勾配の類似性が所定のしき 、値よりも小さ 、か否かを判断する勾配 類似性判断手段をさらに備え、
前記勾配類似性判断手段により前記画素の勾配の類似性が所定のしきい値よりも 小さいと判断された場合、前記演算ブロック内の画素が、前記動きベクトルの検出に 有効であると判断する
ことを特徴とする請求項 4に記載の画像処理装置。
[6] 前記勾配類似性判断手段は、前記第 1および第 2空間方向、並びに、前記時間方 向の画素差分に基づぐ前記画素の水平方向の勾配の類似性、垂直方向の勾配の 類似性、および水平垂直方向の勾配の類似性が所定のしきい値よりも小さいか否か を判断し、前記画素の水平方向の勾配の類似性、垂直方向の勾配の類似性、およ び水平垂直方向の勾配の類似性の少なくとも一方が所定のしきい値よりも小さいと判 断した場合、前記演算ブロック内の画素が、前記動きベクトルの検出に有効であると 判断する
ことを特徴とする請求項 5に記載の画像処理装置。
[7] 前記勾配類似性判断手段は、前記第 1および第 2空間方向、並びに、前記時間方 向の画素差分に基づぐ前記画素の水平方向の勾配の類似性、および垂直方向の 勾配の類似性が所定のしきい値よりも小さいか否かを判断し、前記画素の水平方向 の勾配の類似性、および垂直方向の勾配の類似性の両方が所定のしきい値よりも小 さいと判断した場合、前記演算ブロック内の画素が、前記動きベクトルの検出に有効 であると判断する
ことを特徴とする請求項 5に記載の画像処理装置。
[8] 前記演算ブロックにおける、前記有効画素判断手段により前記動きベクトルの検出 に有効であると判断された前記画素の数が所定の数より少ないか否かを判断する画 素数判断手段と、
前記画素数判断手段による判断結果を基に、前記有効画素判断手段または前記 勾配法演算手段の処理を制御する演算制御手段とを
さらに備えることを特徴とする請求項 1に記載の画像処理装置。
[9] 前記画素数判断手段により、前記演算ブロックにおける、前記動きベクトルの検出 に有効であると判断された前記画素の数が所定の数より少ないと判断された場合、 前記演算制御手段は、前記勾配法演算手段による勾配法演算を停止させる制御を 行う
ことを特徴とする請求項 8に記載の画像処理装置。
[10] 前記演算制御手段により前記勾配法演算手段による勾配法演算を停止させる制 御が行われた結果、検出される動きベクトルには、 0ベクトルが割り当てられる ことを特徴とする請求項 9に記載の画像処理装置。
[11] 前記演算ブロックは、ブロック単位で前記動きベクトルを検出する場合の第 1の演算 ブロック、および、画素単位で前記動きベクトルを検出する場合の第 2の演算ブロック により構成され、
前記有効画素判断手段は、前記第 1の演算ブロック内の画素が、前記動きベクトル の検出に有効である力否かを判断し、
前記画素数判断手段は、前記第 1の演算ブロックにおける、前記有効画素判断手 段により前記動きベクトルの検出に有効であると判断された前記画素の数が所定の 数より少ないか否かを判断し、
前記演算制御手段は、前記画素数判断手段により、前記第 1の演算ブロックにお いて、前記動きベクトルの検出に有効であると判断された前記画素の数が所定の数 より少ないと判断された場合、前記第 1の演算ブロックを対象とした処理を、前記第 2 の演算ブロックを対象とした処理に切り替えさせるように、前記有効画素判断手段お よび前記勾配法演算手段の処理を制御する
ことを特徴とする請求項 8に記載の画像処理装置。
[12] 前記演算ブロックは、ブロック単位で前記動きベクトルを検出する場合の第 1の演算 ブロック、および、画素単位で前記動きベクトルを検出する場合の第 2の演算ブロック により構成され、
前記有効画素判断手段は、前記第 1の演算ブロック内の画素が、前記動きベクトル の検出に有効である力否かを判断し、
前記画素数判断手段は、前記第 1の演算ブロックにおける、前記有効画素判断手 段により前記動きベクトルの検出に有効であると判断された前記画素の数が所定の 数より少ないか否かを判断し、
前記演算制御手段は、前記画素数判断手段により、前記第 1の演算ブロックにお いて、前記動きベクトルの検出に有効であると判断された前記画素の数が所定の数 より多いと判断された場合、前記有効画素判断手段により前記動きベクトルの検出に 有効ではないと判断された画素に対して、前記第 1の演算ブロックを対象とした処理 を、前記第 2の演算ブロックを対象とした処理に切り替えさせるように、前記有効画素 判断手段および前記勾配法演算手段の処理を制御する
ことを特徴とする請求項 8に記載の画像処理装置。
[13] 動きベクトルを検出するための勾配法演算の対象となる演算ブロック内の画素が、 前記動きベクトルの検出に有効である力否かを判断する有効画素判断ステップと、 前記演算ブロック内の画素のうち、前記有効画素判断ステップの処理により前記動 きベクトルの検出に有効であると判断された画素のみを用いて、前記勾配法演算を 行う勾配法演算ステップと
を含むことを特徴とする画像処理方法。
[14] 動きベクトルを検出するための勾配法演算の対象となる演算ブロック内の画素が、 前記動きベクトルの検出に有効である力否かを判断する有効画素判断ステップと、 前記演算ブロック内の画素のうち、前記有効画素判断ステップの処理により前記動 きベクトルの検出に有効であると判断された画素のみを用いて、前記勾配法演算を 行う勾配法演算ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている 記録媒体。 動きベクトルを検出するための勾配法演算の対象となる演算ブロック内の画素が、 前記動きベクトルの検出に有効である力否かを判断する有効画素判断ステップと、 前記演算ブロック内の画素のうち、前記有効画素判断ステップの処理により前記動 きベクトルの検出に有効であると判断された画素のみを用いて、前記勾配法演算を 行う勾配法演算ステップと
をコンピュータに実行させることを特徴とするプログラム。
PCT/JP2005/006931 2004-04-09 2005-04-08 画像処理装置および方法、記録媒体、並びにプログラム WO2005098752A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006512129A JP4692845B2 (ja) 2004-04-09 2005-04-08 画像処理装置および方法、記録媒体、並びにプログラム
KR1020067020963A KR101118981B1 (ko) 2004-04-09 2005-04-08 화상 처리 장치 및 방법, 기록 매체, 및 프로그램
EP05728519A EP1734478A4 (en) 2004-04-09 2005-04-08 ARRANGEMENT AND METHOD FOR IMAGE PROCESSING, RECORDING MEDIUM AND PROGRAM

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004116008 2004-04-09
JP2004-116008 2004-04-09

Publications (1)

Publication Number Publication Date
WO2005098752A1 true WO2005098752A1 (ja) 2005-10-20

Family

ID=35125289

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/006931 WO2005098752A1 (ja) 2004-04-09 2005-04-08 画像処理装置および方法、記録媒体、並びにプログラム

Country Status (6)

Country Link
US (1) US7848427B2 (ja)
EP (1) EP1734478A4 (ja)
JP (1) JP4692845B2 (ja)
KR (1) KR101118981B1 (ja)
CN (1) CN100555330C (ja)
WO (1) WO2005098752A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104811726A (zh) * 2015-04-24 2015-07-29 宏祐图像科技(上海)有限公司 帧率转换中运动估计的候选运动矢量选择方法

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4462823B2 (ja) * 2002-11-20 2010-05-12 ソニー株式会社 画像信号の処理装置および処理方法、それに使用される係数データの生成装置および生成方法、並びに各方法を実行するためのプログラム
JP4835075B2 (ja) * 2005-09-09 2011-12-14 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
JP4752407B2 (ja) 2005-09-09 2011-08-17 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
JP2007074592A (ja) * 2005-09-09 2007-03-22 Sony Corp 画像処理装置および方法、プログラム、並びに記録媒体
US7706625B2 (en) * 2006-06-09 2010-04-27 Siemens Aktiengesellschaft Trilateral filter for medical diagnostic imaging
US8929434B2 (en) * 2006-10-14 2015-01-06 Ubiquity Broadcasting Corporation Video enhancement internet media experience in converting high definition formats to video formats
US8090022B2 (en) * 2007-01-05 2012-01-03 Sony Corporation Video coding system
JP5023805B2 (ja) * 2007-05-16 2012-09-12 ソニー株式会社 画像処理装置および画像処理方法、並びにプログラム
US8355077B2 (en) * 2008-03-27 2013-01-15 Csr Technology Inc. Adaptive windowing in motion detector for deinterlacer
JP5306061B2 (ja) * 2009-06-01 2013-10-02 キヤノン株式会社 画像処理装置、画像処理方法、プログラム及び記憶媒体
US8559763B2 (en) * 2010-12-14 2013-10-15 The United States Of America As Represented By The Secretary Of The Navy Method and apparatus for motion-compensated interpolation (MCI) with conservative motion model
US9094561B1 (en) * 2010-12-16 2015-07-28 Pixelworks, Inc. Frame interpolation and motion vector reconstruction
JP5558431B2 (ja) * 2011-08-15 2014-07-23 株式会社東芝 画像処理装置、方法及びプログラム
KR101960761B1 (ko) * 2011-11-24 2019-03-22 에스케이텔레콤 주식회사 모션 벡터의 예측 부호화/복호화 방법 및 장치
GB2514334B (en) * 2013-05-13 2020-04-22 Snell Advanced Media Ltd Video processing
USD854557S1 (en) * 2015-10-02 2019-07-23 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
USD862505S1 (en) 2015-10-02 2019-10-08 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
EP3364655A4 (en) * 2015-11-11 2018-10-10 Samsung Electronics Co., Ltd. Method and apparatus for decoding video, and method and apparatus for encoding video
DE112021007132T5 (de) * 2021-06-09 2023-12-21 Nvidia Corporation Berechnung der bewegung von pixeln zwischen bildern

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4200820A (en) 1978-06-30 1980-04-29 Varian Associates, Inc. High power electron beam gyro device
US4695882A (en) 1984-01-30 1987-09-22 Kokusai Denshin Denwa Co., Ltd. Movement estimation system for video signals using a recursive gradient method
JPH07135663A (ja) * 1993-09-17 1995-05-23 Oki Electric Ind Co Ltd 動きベクトル検出方法および動きベクトル検出装置
JPH1114741A (ja) * 1997-06-11 1999-01-22 Samsung Electron Co Ltd ターゲット追跡方法及び装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2648254B2 (fr) * 1988-09-23 1991-08-30 Thomson Csf Procede et dispositif d'estimation de mouvement dans une sequence d'images animees
US5200820A (en) * 1991-04-26 1993-04-06 Bell Communications Research, Inc. Block-matching motion estimator for video coder
ATE165487T1 (de) * 1993-09-08 1998-05-15 Thomson Multimedia Sa Verfahren und vorrichtung zur bewegungsschätzung mittels blockzusammenpassung
DE69422876T2 (de) * 1993-10-11 2000-06-15 Thomson Multimedia Sa Verfahren und Gerät zur Korrektur von Bewegungsvektoren
JP3800640B2 (ja) * 1995-07-04 2006-07-26 ソニー株式会社 画像情報の動き検出方法及びその装置、画像情報の符号化方法及びその装置、画像情報伝送システム、画像情報記録システム並びに記録媒体
US7003134B1 (en) * 1999-03-08 2006-02-21 Vulcan Patents Llc Three dimensional object pose estimation which employs dense depth information

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4200820A (en) 1978-06-30 1980-04-29 Varian Associates, Inc. High power electron beam gyro device
US4695882A (en) 1984-01-30 1987-09-22 Kokusai Denshin Denwa Co., Ltd. Movement estimation system for video signals using a recursive gradient method
JPH07135663A (ja) * 1993-09-17 1995-05-23 Oki Electric Ind Co Ltd 動きベクトル検出方法および動きベクトル検出装置
JPH1114741A (ja) * 1997-06-11 1999-01-22 Samsung Electron Co Ltd ターゲット追跡方法及び装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1734478A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104811726A (zh) * 2015-04-24 2015-07-29 宏祐图像科技(上海)有限公司 帧率转换中运动估计的候选运动矢量选择方法

Also Published As

Publication number Publication date
US20050259738A1 (en) 2005-11-24
CN100555330C (zh) 2009-10-28
JPWO2005098752A1 (ja) 2008-02-28
KR20070015169A (ko) 2007-02-01
EP1734478A1 (en) 2006-12-20
CN1950850A (zh) 2007-04-18
US7848427B2 (en) 2010-12-07
KR101118981B1 (ko) 2012-03-13
JP4692845B2 (ja) 2011-06-01
EP1734478A4 (en) 2011-04-13

Similar Documents

Publication Publication Date Title
WO2005098752A1 (ja) 画像処理装置および方法、記録媒体、並びにプログラム
JP4687994B2 (ja) 画像処理装置および方法、記録媒体、並びにプログラム
WO2005098754A1 (ja) 画像処理装置および方法、記録媒体、並びにプログラム
JP4752407B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
WO2007029640A1 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
TW201146011A (en) Bi-directional, local and global motion estimation based frame rate conversion
JP4512983B2 (ja) 画像処理装置および方法、記録媒体、並びにプログラム
JP4432714B2 (ja) 画像処理装置および方法、記録媒体、並びにプログラム
JP4512982B2 (ja) 画像処理装置および方法、記録媒体、並びにプログラム
JP4655214B2 (ja) 画像処理装置および方法、プログラム並びに記録媒体
JP4419069B2 (ja) 画像処理装置および方法、記録媒体、並びにプログラム
JP4512984B2 (ja) 画像処理装置および方法、記録媒体、並びにプログラム
JP2007110461A (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP4650682B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP4512985B2 (ja) 画像処理装置および方法、記録媒体、並びにプログラム
JP4655217B2 (ja) 画像処理装置および方法、記録媒体、並びにプログラム
JP4655216B2 (ja) 画像処理装置および方法、並びにプログラム
JP4835075B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP4655215B2 (ja) 画像処理装置および方法、並びにプログラム

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2006512129

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2005728519

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020067020963

Country of ref document: KR

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

WWE Wipo information: entry into national phase

Ref document number: 200580014792.7

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 2005728519

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020067020963

Country of ref document: KR