TOP > 国内特許検索 > フレーム画像の動きベクトル推定装置及びプログラム > 明細書

明細書 :フレーム画像の動きベクトル推定装置及びプログラム

発行国 日本国特許庁(JP)
公報種別 特許公報(B2)
特許番号 特許第5334241号 (P5334241)
公開番号 特開2010-041151 (P2010-041151A)
登録日 平成25年8月9日(2013.8.9)
発行日 平成25年11月6日(2013.11.6)
公開日 平成22年2月18日(2010.2.18)
発明の名称または考案の名称 フレーム画像の動きベクトル推定装置及びプログラム
国際特許分類 H04N   7/32        (2006.01)
FI H04N 7/137 Z
請求項の数または発明の数 9
全頁数 43
出願番号 特願2008-199031 (P2008-199031)
出願日 平成20年7月31日(2008.7.31)
審査請求日 平成23年7月22日(2011.7.22)
特許権者または実用新案権者 【識別番号】803000115
【氏名又は名称】学校法人東京理科大学
発明者または考案者 【氏名】浜本 隆之
【氏名】松崎 可苗
個別代理人の代理人 【識別番号】100079049、【弁理士】、【氏名又は名称】中島 淳
【識別番号】100084995、【弁理士】、【氏名又は名称】加藤 和詳
【識別番号】100085279、【弁理士】、【氏名又は名称】西元 勝一
【識別番号】100099025、【弁理士】、【氏名又は名称】福田 浩志
審査官 【審査官】坂東 大五郎
参考文献・文献 特開平06-133299(JP,A)
ドゥイハンドコ、川人祥二、田所嘉昭、松澤昭,非破壊補間撮像と反復ブロックマッチング法に基づくイメージセンサ上での低電力動きベクトル検出,電子情報通信学会技術研究報告. ICD,日本,一般社団法人電子情報通信学会,1998年 8月20日,集積回路 98(244),p.15-p.20
調査した分野 H04N 7/24-7/68
G06T 7/00-7/60
H04N 7/00-7/088

CiNii
特許請求の範囲 【請求項1】
撮影によって得られた第1のフレームレートの複数のフレーム画像、及び前記第1のフレーム画像より高速な第2のフレームレートの複数のサブフレーム画像を取得する取得手段と、
推定対象となる連続した2つのフレーム画像の一方に対応するサブフレーム画像を基準サブフレーム画像として、前記基準サブフレーム画像の動領域を抽出する抽出手段と、
前記基準サブフレーム画像を複数のブロックに分割し、分割された各ブロック内に存在する動領域に対応する領域を前記基準サブフレーム画像に隣接するサブフレーム画像から探索すると共に、前記分割された各ブロック内に存在する動領域に対応する領域を、前記隣接するサブフレーム画像に隣接するサブフレーム画像から前記2つのフレーム画像の他方に対応するサブフレーム画像までに含まれる複数のサブフレーム画像の各々について、前回探索された領域に近い領域から順に探索することにより、前記基準サブフレーム画像の前記ブロックの各々に対応する前記2つのフレーム画像の間の動きベクトルを推定する推定手段と、
前記推定手段によって推定された前記ブロックの各々の動きベクトルを反転させる反転手段と、
前記推定対象の2つのフレーム画像の一方と、前記反転手段によって反転された前記ブロックの各々の動きベクトルとを用いて、前記推定対象の2つのフレーム画像の他方の動き補償を行う動き補償手段と、
前記推定対象の2つのフレーム画像の他方から、前記反転手段によって反転された前記動きベクトルの前記ブロックの各々に対応する領域以外の未推定領域を抽出する未推定領域抽出手段と、
前記推定対象の2つのフレーム画像間で画素値の差の絶対値が所定値以上となる領域のうち、前記基準サブフレーム画像の動領域に対応する領域以外の領域を、補正対象領域として特定する補正対象領域特定手段と、
前記未推定領域抽出手段によって抽出された前記未推定領域、及び前記補正対象領域特定手段によって特定された前記補正対象領域の各々について、前記推定対象の2つのフレーム画像の一方から、対応する領域を探索することにより、前記2つのフレーム画像の他方から一方までの間における、前記未推定領域及び前記補正対象領域の各々の動きベクトルを推定する第2推定手段と
を含み、
前記動き補償手段が、前記未推定領域及び前記補正対象領域の各々については、前記第2推定手段によって推定された動きベクトルを用いて、前記2つのフレーム画像の他方の動き補償を行うフレーム画像の動きベクトル推定装置。
【請求項2】
撮影によって得られた第1のフレームレートの複数のフレーム画像、及び前記第1のフレーム画像より高速な第2のフレームレートの複数のサブフレーム画像を取得する取得手段と、
推定対象となる連続した2つのフレーム画像の一方に対応するサブフレーム画像を基準サブフレーム画像として、前記基準サブフレーム画像の動領域を抽出する抽出手段と、
前記基準サブフレーム画像を複数のブロックに分割し、分割された各ブロック内に存在する動領域に対応する領域を前記基準サブフレーム画像に隣接するサブフレーム画像から探索すると共に、前記分割された各ブロック内に存在する動領域に対応する領域を、前記隣接するサブフレーム画像に隣接するサブフレーム画像から前記2つのフレーム画像の他方に対応するサブフレーム画像までに含まれる複数のサブフレーム画像の各々について、前回探索された領域に近い領域から順に探索することにより、前記基準サブフレーム画像の前記ブロックの各々に対応する前記2つのフレーム画像の間の動きベクトルを推定する推定手段と、
前記推定手段によって推定された前記ブロックの各々の動きベクトルを反転させる反転手段と、
前記推定対象の2つのフレーム画像の一方と、前記反転手段によって反転された前記ブロックの各々の動きベクトルとを用いて、前記推定対象の2つのフレーム画像の他方の動き補償を行う動き補償手段と、
前記推定対象の2つのフレーム画像の他方から、前記反転手段によって反転された前記動きベクトルの前記ブロックの各々に対応する領域以外の未推定領域を抽出する未推定領域抽出手段と、
前記推定対象の2つのフレーム画像間で画素値の差の絶対値が所定値以上となる領域のうち、前記基準サブフレーム画像の動領域に対応する領域以外の領域を、補正対象領域として特定する補正対象領域特定手段と、
前記未推定領域抽出手段によって抽出された前記未推定領域、及び前記補正対象領域特定手段によって特定された前記補正対象領域のうち、前記推定対象の2つのフレーム画像の一方に存在する動きぼけ領域に対応する第1補正対象領域の各々について、前記推定対象の2つのフレーム画像の一方から、対応する領域を探索することにより、前記2つのフレーム画像の他方から一方までの間における、前記未推定領域及び前記第1補正対象領域の各々の動きベクトルを推定する第2推定手段と、
前記補正対象領域特定手段によって特定された補正対象領域のうち、前記推定対象の2つのフレーム画像の他方に存在する動きぼけ領域に対応する第2補正対象領域が、前記動領域に対応する領域となるサブフレーム画像であって、かつ、前記2つのフレーム画像の他方に対応するサブフレーム画像より前に又は後に撮影されたサブフレーム画像を取得する前後サブフレーム画像取得手段と、
前記推定対象の2つのフレーム画像の他方に対応するサブフレーム画像から、前記前後サブフレーム画像取得手段によって取得されたサブフレーム画像の前記第2補正対象領域に対応する領域を探索する第3の探索手段と、
前記第3の探索手段によって探索された前記領域に対応する前記ブロックを特定するブロック特定手段と、
前記ブロック特定手段によって特定された前記ブロックに対応して前記推定手段によって推定された動きベクトルを反転して、前記2つのフレーム画像の他方から一方までの間における前記第2補正対象領域の動きベクトルを推定する第3推定手段と、
を含み、
前記動き補償手段が、前記未推定領域及び前記第1補正対象領域の各々については、前記第2推定手段によって推定された動きベクトルを用い、前記第2補正対象領域については、前記第3推定手段によって推定された動きベクトルを用いて、前記2つのフレーム画像の他方の動き補償を行うフレーム画像の動きベクトル推定装置。
【請求項3】
撮影によって得られた第1のフレームレートの複数のフレーム画像、及び前記第1のフレーム画像より高速な第2のフレームレートの複数のサブフレーム画像を取得する取得手段と、
推定対象となる連続した2つのフレーム画像の一方に対応するサブフレーム画像を基準サブフレーム画像として、前記基準サブフレーム画像の動領域を抽出する抽出手段と、
前記基準サブフレーム画像を複数のブロックに分割し、分割された各ブロック内に存在する動領域に対応する領域を前記基準サブフレーム画像に隣接するサブフレーム画像から探索すると共に、前記分割された各ブロック内に存在する動領域に対応する領域を、前記隣接するサブフレーム画像に隣接するサブフレーム画像から前記2つのフレーム画像の他方に対応するサブフレーム画像までに含まれる複数のサブフレーム画像の各々について、前回探索された領域に近い領域から順に探索することにより、前記基準サブフレーム画像の前記ブロックの各々に対応する前記2つのフレーム画像の間の動きベクトルを推定する推定手段と、
前記推定対象の2つのフレーム画像の他方と、前記推定手段によって推定された前記ブロックの各々の動きベクトルとを用いて、前記推定対象の2つのフレーム画像の一方の動き補償を行う動き補償手段と、
前記推定対象の2つのフレーム画像間で画素値の差の絶対値が所定値以上となる領域のうち、前記基準サブフレーム画像の動領域に対応する領域以外の領域を、補正対象領域として特定する補正対象領域特定手段と、
前記補正対象領域特定手段によって特定された前記補正対象領域について、前記推定対象の2つのフレーム画像の他方から、対応する領域を探索することにより、前記2つのフレーム画像の一方から他方までの間における、前記補正対象領域の各々の動きベクトルを推定する第2推定手段と、
を含み、
前記動き補償手段が、前記補正対象領域については、前記第2推定手段によって推定された動きベクトルを用いて、前記2つのフレーム画像の一方の動き補償を行うフレーム画像の動きベクトル推定装置。
【請求項4】
撮影によって得られた第1のフレームレートの複数のフレーム画像、及び前記第1のフレーム画像より高速な第2のフレームレートの複数のサブフレーム画像を取得する取得手段と、
推定対象となる連続した2つのフレーム画像の一方に対応するサブフレーム画像を基準サブフレーム画像として、前記基準サブフレーム画像の動領域を抽出する抽出手段と、
前記基準サブフレーム画像を複数のブロックに分割し、分割された各ブロック内に存在する動領域に対応する領域を前記基準サブフレーム画像に隣接するサブフレーム画像から探索すると共に、前記分割された各ブロック内に存在する動領域に対応する領域を、前記隣接するサブフレーム画像に隣接するサブフレーム画像から前記2つのフレーム画像の他方に対応するサブフレーム画像までに含まれる複数のサブフレーム画像の各々について、前回探索された領域に近い領域から順に探索することにより、前記基準サブフレーム画像の前記ブロックの各々に対応する前記2つのフレーム画像の間の動きベクトルを推定する推定手段と、
前記推定対象の2つのフレーム画像の他方と、前記推定手段によって推定された前記ブロックの各々の動きベクトルとを用いて、前記推定対象の2つのフレーム画像の一方の動き補償を行う動き補償手段と、
前記推定対象の2つのフレーム画像間で画素値の差の絶対値が所定値以上となる領域のうち、前記基準サブフレーム画像の動領域に対応する領域以外の領域を、補正対象領域として特定する補正対象領域特定手段と、
前記補正対象領域特定手段によって特定された前記補正対象領域のうち、前記推定対象の2つのフレーム画像の一方に存在する動きぼけ領域に対応する第1補正対象領域の各々について、前記推定対象の2つのフレーム画像の他方から、対応する領域を探索することにより、前記2つのフレーム画像の一方から他方までの間における、前記第1補正対象領域の各々の動きベクトルを推定する第2推定手段と、
前記補正対象領域特定手段によって特定された補正対象領域のうち、前記推定対象の2つのフレーム画像の他方に存在する動きぼけ領域に対応する第2補正対象領域が、前記動領域に対応する領域となるサブフレーム画像であって、かつ、前記2つのフレーム画像の他方に対応するサブフレーム画像より前に又は後に撮影されたサブフレーム画像を取得する前後サブフレーム画像取得手段と、
前記推定対象の2つのフレーム画像の他方に対応するサブフレーム画像から、前記前後サブフレーム画像取得手段によって取得されたサブフレーム画像の前記第2補正対象領域に対応する領域を探索する第3の探索手段と、
前記第3の探索手段によって探索された前記領域に対応する前記ブロックを特定するブロック特定手段と、
前記ブロック特定手段によって特定された前記ブロックに対応して前記推定手段によって推定された動きベクトルを、前記2つのフレーム画像の一方から他方までの間における前記第2補正対象領域の動きベクトルとして推定する第3推定手段と、
を含み、
前記動き補償手段が、前記第1補正対象領域については、前記第2推定手段によって推定された動きベクトルを用い、前記第2補正対象領域については、前記第3推定手段によって推定された動きベクトルを用いて、前記2つのフレーム画像の一方の動き補償を行うフレーム画像の動きベクトル推定装置。
【請求項5】
前記抽出手段は、前記基準サブフレーム画像の画素値と、前記基準サブフレーム画像に隣接するサブフレーム画像から前記2つのフレーム画像の他方に対応するサブフレーム画像までに含まれる複数のサブフレーム画像の少なくとも1つのサブフレーム画像の画素値との差の絶対値が所定値以上となる画素からなる領域を、前記動領域として抽出する請求項1~4の何れか1項記載のフレーム画像の動きベクトル推定装置。
【請求項6】
前記抽出手段は、前記推定手段における領域の探索に応じて、前記基準サブフレーム画像の画素値と、前記推定手段における領域の探索対象となるサブフレーム画像の画素値との差の絶対値が所定値以上となる画素からなる領域を、前記動領域として抽出する請求項1~4の何れか1項記載のフレーム画像の動きベクトル推定装置。
【請求項7】
前記推定手段は、前記複数のサブフレーム画像の各々について、前記分割された各ブロック内に存在する動領域に対応する領域を、前回探索された領域を含む所定の探索範囲内から順に探索する請求項1~請求項6の何れか1項記載のフレーム画像の動きベクトル推定装置。
【請求項8】
前記2つのフレーム画像の一方を、前記2つのフレーム画像のうち先に撮影されたフレーム画像とし、前記2つのフレーム画像の他方を、前記2つのフレーム画像のうち後に撮影されたフレーム画像とした請求項1~請求項7の何れか1項記載のフレーム画像の動きベクトル推定装置。
【請求項9】
コンピュータを、
請求項1~8の何れか1項記載のフレーム画像の動きベクトル推定装置の各手段として機能させるためのプログラム。
発明の詳細な説明 【技術分野】
【0001】
本発明は、フレーム画像の動きベクトル推定装置及びプログラムに係り、特に、2つのフレーム画像間の動きベクトルを推定するフレーム画像の動きベクトル推定装置及びプログラムに関する。
【背景技術】
【0002】
近年、コンピュータビジョンの分野では、ITSやロボットビジョンにおける3次元形状の復元などの研究が盛んに行われている。また、動画像符号化の分野では、動画像の高画質化による情報量の増大に伴い、符号化効率の向上の必要性が増している。これらに共通する重要な技術として、動き推定が知られている(非特許文献1、2)。
【0003】
また、ブロックマッチングを用いた動き推定が知られている(非特許文献3)。ブロックマッチングでは、推定対象となる画像をブロックに分割し、比較される画像においてそのブロックと最も類似度が高い領域を探索している。

【非特許文献1】富永英義、小松尚久、宮下壮史、花村剛、“階層画素情報を用いた動画像における動き量検出方式”、電子情報通信学会論文誌、1989年、Vol. J72-D2、No. 3、pp.395-403
【非特許文献2】田中豊、鄭文涛、金子豊、“階層化手法による固有値勾配法の動き推定精度の検討”、電子情報通信学会ソサイエティ大会講演論文集、1996年、情報・システム、p.185
【非特許文献3】吉田俊之、宮本敦司、酒井善則、“動画像の動きベクトルに対する信頼度関数とその応用”、電子情報通信学会論文誌、1997年、Vol.J80-D2、No. 5、pp.1192-1201
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、従来のブロックマッチングでは、計算量が膨大となってしまう、という問題がある。また、一つのブロック内に動領域と静止領域とが含まれる場合、動きベクトルに誤差が生じやすい、という問題がある。
【0005】
本発明は、上記の問題点を解決するためになされたもので、計算量を抑制すると共に、精度良く動きベクトルを推定することができるフレーム画像の動きベクトル推定装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記の目的を達成するために本発明に係るフレーム画像の動きベクトル推定装置は、撮影によって得られた第1のフレームレートの複数のフレーム画像、及び前記第1のフレーム画像より高速な第2のフレームレートの複数のサブフレーム画像を取得する取得手段と、推定対象となる連続した2つのフレーム画像の一方に対応するサブフレーム画像を基準サブフレーム画像として、前記基準サブフレーム画像の動領域を抽出する抽出手段と、前記基準サブフレーム画像を複数のブロックに分割し、分割された各ブロック内に存在する動領域に対応する領域を前記基準サブフレーム画像に隣接するサブフレーム画像から探索すると共に、前記分割された各ブロック内に存在する動領域に対応する領域を、前記隣接するサブフレーム画像に隣接するサブフレーム画像から前記2つのフレーム画像の他方に対応するサブフレーム画像までに含まれる複数のサブフレーム画像の各々について、前回探索された領域に近い領域から順に探索することにより、前記基準サブフレーム画像の前記ブロックの各々に対応する前記2つのフレーム画像の間の動きベクトルを推定する推定手段と、前記推定手段によって推定された前記ブロックの各々の動きベクトルを反転させる反転手段と、前記推定対象の2つのフレーム画像の一方と、前記反転手段によって反転された前記ブロックの各々の動きベクトルとを用いて、前記推定対象の2つのフレーム画像の他方の動き補償を行う動き補償手段と、前記推定対象の2つのフレーム画像の他方から、前記反転手段によって反転された前記動きベクトルの前記ブロックの各々に対応する領域以外の未推定領域を抽出する未推定領域抽出手段と、前記推定対象の2つのフレーム画像間で画素値の差の絶対値が所定値以上となる領域のうち、前記基準サブフレーム画像の動領域に対応する領域以外の領域を、補正対象領域として特定する補正対象領域特定手段と、前記未推定領域抽出手段によって抽出された前記未推定領域、及び前記補正対象領域特定手段によって特定された前記補正対象領域の各々について、前記推定対象の2つのフレーム画像の一方から、対応する領域を探索することにより、前記2つのフレーム画像の他方から一方までの間における、前記未推定領域及び前記補正対象領域の各々の動きベクトルを推定する第2推定手段とを含み、前記動き補償手段が、前記未推定領域及び前記補正対象領域の各々については、前記第2推定手段によって推定された動きベクトルを用いて、前記2つのフレーム画像の他方の動き補償を行う
また、本発明に係るフレーム画像の動きベクトル推定装置は、撮影によって得られた第1のフレームレートの複数のフレーム画像、及び前記第1のフレーム画像より高速な第2のフレームレートの複数のサブフレーム画像を取得する取得手段と、推定対象となる連続した2つのフレーム画像の一方に対応するサブフレーム画像を基準サブフレーム画像として、前記基準サブフレーム画像の動領域を抽出する抽出手段と、前記基準サブフレーム画像を複数のブロックに分割し、分割された各ブロック内に存在する動領域に対応する領域を前記基準サブフレーム画像に隣接するサブフレーム画像から探索すると共に、前記分割された各ブロック内に存在する動領域に対応する領域を、前記隣接するサブフレーム画像に隣接するサブフレーム画像から前記2つのフレーム画像の他方に対応するサブフレーム画像までに含まれる複数のサブフレーム画像の各々について、前回探索された領域に近い領域から順に探索することにより、前記基準サブフレーム画像の前記ブロックの各々に対応する前記2つのフレーム画像の間の動きベクトルを推定する推定手段と、前記推定手段によって推定された前記ブロックの各々の動きベクトルを反転させる反転手段と、前記推定対象の2つのフレーム画像の一方と、前記反転手段によって反転された前記ブロックの各々の動きベクトルとを用いて、前記推定対象の2つのフレーム画像の他方の動き補償を行う動き補償手段と、前記推定対象の2つのフレーム画像の他方から、前記反転手段によって反転された前記動きベクトルの前記ブロックの各々に対応する領域以外の未推定領域を抽出する未推定領域抽出手段と、前記推定対象の2つのフレーム画像間で画素値の差の絶対値が所定値以上となる領域のうち、前記基準サブフレーム画像の動領域に対応する領域以外の領域を、補正対象領域として特定する補正対象領域特定手段と、前記未推定領域抽出手段によって抽出された前記未推定領域、及び前記補正対象領域特定手段によって特定された前記補正対象領域のうち、前記推定対象の2つのフレーム画像の一方に存在する動きぼけ領域に対応する第1補正対象領域の各々について、前記推定対象の2つのフレーム画像の一方から、対応する領域を探索することにより、前記2つのフレーム画像の他方から一方までの間における、前記未推定領域及び前記第1補正対象領域の各々の動きベクトルを推定する第2推定手段と、前記補正対象領域特定手段によって特定された補正対象領域のうち、前記推定対象の2つのフレーム画像の他方に存在する動きぼけ領域に対応する第2補正対象領域が、前記動領域に対応する領域となるサブフレーム画像であって、かつ、前記2つのフレーム画像の他方に対応するサブフレーム画像より前に又は後に撮影されたサブフレーム画像を取得する前後サブフレーム画像取得手段と、前記推定対象の2つのフレーム画像の他方に対応するサブフレーム画像から、前記前後サブフレーム画像取得手段によって取得されたサブフレーム画像の前記第2補正対象領域に対応する領域を探索する第3の探索手段と、前記第3の探索手段によって探索された前記領域に対応する前記ブロックを特定するブロック特定手段と、前記ブロック特定手段によって特定された前記ブロックに対応して前記推定手段によって推定された動きベクトルを反転して、前記2つのフレーム画像の他方から一方までの間における前記第2補正対象領域の動きベクトルを推定する第3推定手段と、を含み、前記動き補償手段が、前記未推定領域及び前記第1補正対象領域の各々については、前記第2推定手段によって推定された動きベクトルを用い、前記第2補正対象領域については、前記第3推定手段によって推定された動きベクトルを用いて、前記2つのフレーム画像の他方の動き補償を行う。
さらに、本発明に係るフレーム画像の動きベクトル推定装置は、撮影によって得られた第1のフレームレートの複数のフレーム画像、及び前記第1のフレーム画像より高速な第2のフレームレートの複数のサブフレーム画像を取得する取得手段と、推定対象となる連続した2つのフレーム画像の一方に対応するサブフレーム画像を基準サブフレーム画像として、前記基準サブフレーム画像の動領域を抽出する抽出手段と、前記基準サブフレーム画像を複数のブロックに分割し、分割された各ブロック内に存在する動領域に対応する領域を前記基準サブフレーム画像に隣接するサブフレーム画像から探索すると共に、前記分割された各ブロック内に存在する動領域に対応する領域を、前記隣接するサブフレーム画像に隣接するサブフレーム画像から前記2つのフレーム画像の他方に対応するサブフレーム画像までに含まれる複数のサブフレーム画像の各々について、前回探索された領域に近い領域から順に探索することにより、前記基準サブフレーム画像の前記ブロックの各々に対応する前記2つのフレーム画像の間の動きベクトルを推定する推定手段と、前記推定対象の2つのフレーム画像の他方と、前記推定手段によって推定された前記ブロックの各々の動きベクトルとを用いて、前記推定対象の2つのフレーム画像の一方の動き補償を行う動き補償手段と、前記推定対象の2つのフレーム画像間で画素値の差の絶対値が所定値以上となる領域のうち、前記基準サブフレーム画像の動領域に対応する領域以外の領域を、補正対象領域として特定する補正対象領域特定手段と、前記補正対象領域特定手段によって特定された前記補正対象領域について、前記推定対象の2つのフレーム画像の他方から、対応する領域を探索することにより、前記2つのフレーム画像の一方から他方までの間における、前記補正対象領域の各々の動きベクトルを推定する第2推定手段と、を含み、前記動き補償手段が、前記補正対象領域については、前記第2推定手段によって推定された動きベクトルを用いて、前記2つのフレーム画像の一方の動き補償を行う。
【0007】
また、本発明に係るプログラムは、コンピュータを、上記フレーム画像の動きベクトル推定装置の各手段として機能させるプログラムである。
【0008】
本発明によれば、取得手段によって、撮影によって得られた第1のフレームレートの複数のフレーム画像、及び第1のフレーム画像より高速な第2のフレームレートの複数のサブフレーム画像を取得する。抽出手段によって、推定対象となる連続した2つのフレーム画像の一方に対応するサブフレーム画像を基準サブフレーム画像として、基準サブフレーム画像の動領域を抽出する。
【0009】
そして、推定手段によって、基準サブフレーム画像を複数のブロックに分割し、分割された各ブロック内に存在する動領域に対応する領域を基準サブフレーム画像に隣接するサブフレーム画像から探索すると共に、分割された各ブロック内に存在する動領域に対応する領域を、隣接するサブフレーム画像に隣接するサブフレーム画像から2つのフレーム画像の他方に対応するサブフレーム画像までに含まれる複数のサブフレーム画像の各々について、前回探索された領域に近い領域から順に探索することにより、基準サブフレーム画像のブロックの各々に対応する2つのフレーム画像の間の動きベクトルを推定する。
【0010】
このように、高速なフレームレートの複数のサブフレーム画像に対して順に、前回探索された領域に近い領域から、動領域に対応する領域を探索して、2つのフレーム画像の間の動きベクトルを推定することにより、計算量を抑制すると共に、精度良く動きベクトルを推定することができる。
【0011】
本発明に係る抽出手段は、基準サブフレーム画像の画素値と、基準サブフレーム画像に隣接するサブフレーム画像から2つのフレーム画像の他方に対応するサブフレーム画像までに含まれる複数のサブフレーム画像の少なくとも1つのサブフレーム画像の画素値との差の絶対値が所定値以上となる画素からなる領域を、動領域として抽出することができる。
【0012】
上記の抽出手段は、推定手段における領域の探索に応じて、基準サブフレーム画像の画素値と、基準サブフレーム画像に隣接するサブフレーム画像から推定手段における領域の探索対象となるサブフレーム画像までに含まれる複数のサブフレーム画像の少なくとも1つのサブフレーム画像の画素値との差の絶対値が所定値以上となる画素からなる領域を、動領域として順次抽出することができる。
【0013】
本発明に係る抽出手段は、推定手段における領域の探索に応じて、基準サブフレーム画像の画素値と、推定手段における領域の探索対象となるサブフレーム画像の画素値との差の絶対値が所定値以上となる画素からなる領域を、動領域として抽出することができる。
【0014】
上記の推定手段は、複数のサブフレーム画像の各々について、分割された各ブロック内に存在する動領域に対応する領域を、前回探索された領域を含む所定の探索範囲内から順に探索することができる。このように、探索範囲を設定することにより、計算量を抑制することができる。
【0015】
上記のフレーム画像の動きベクトル推定装置は、推定手段によって推定されたブロックの各々の動きベクトルを反転させる反転手段と、推定対象の2つのフレーム画像の一方と、反転手段によって反転されたブロックの各々の動きベクトルとを用いて、推定対象の2つのフレーム画像の他方の動き補償を行う動き補償手段とを更に含むことができる。これによって、精度良く推定された動きベクトルを用いて、精度良く動き補償を行うことができる。
【0016】
上記の動き補償を行うフレーム画像の動きベクトル推定装置は、推定対象の2つのフレーム画像の他方から、反転手段によって反転された動きベクトルのブロックの各々に対応する領域以外の未推定領域を抽出する未推定領域抽出手段と、推定対象の2つのフレーム画像間で画素値の差の絶対値が所定値以上となる領域のうち、基準サブフレーム画像の動領域に対応する領域以外の領域を、補正対象領域として特定する補正対象領域特定手段と、未推定領域抽出手段によって抽出された未推定領域、及び補正対象領域特定手段によって特定された補正対象領域の各々について、推定対象の2つのフレーム画像の一方から、対応する領域を探索することにより、2つのフレーム画像の他方から一方までの間における、未推定領域及び補正対象領域の各々の動きベクトルを推定する第2推定手段とを更に含み、動き補償手段は、未推定領域及び補正対象領域の各々については、第2推定手段によって推定された動きベクトルを用いて、2つのフレーム画像の他方の動き補償を行うことができる。これによって、より精度良く動き補償を行うことができる。
【0017】
上記の動き補償を行うフレーム画像の動きベクトル推定装置は、推定対象の2つのフレーム画像の他方から、反転手段によって反転された動きベクトルのブロックの各々に対応する領域以外の未推定領域を抽出する未推定領域抽出手段と、推定対象の2つのフレーム画像間で画素値の差の絶対値が所定値以上となる領域のうち、基準サブフレーム画像の動領域に対応する領域以外の領域を、補正対象領域として特定する補正対象領域特定手段と、未推定領域抽出手段によって抽出された未推定領域、及び補正対象領域特定手段によって特定された補正対象領域のうち、推定対象の2つのフレーム画像の一方に存在する動きぼけ領域に対応する第1補正対象領域の各々について、推定対象の2つのフレーム画像の一方から、対応する領域を探索することにより、2つのフレーム画像の他方から一方までの間における、未推定領域及び第1補正対象領域の各々の動きベクトルを推定する第2推定手段と、補正対象領域特定手段によって特定された補正対象領域のうち、推定対象の2つのフレーム画像の他方に存在する動きぼけ領域に対応する第2補正対象領域が、動領域に対応する領域となるサブフレーム画像であって、かつ、2つのフレーム画像の他方に対応するサブフレーム画像より前に又は後に撮影されたサブフレーム画像を取得する前後サブフレーム画像取得手段と、推定対象の2つのフレーム画像の他方に対応するサブフレーム画像から、前後サブフレーム画像取得手段によって取得されたサブフレーム画像の第2補正対象領域に対応する領域を探索する第3の探索手段と、第3の探索手段によって探索された領域に対応するブロックを特定するブロック特定手段と、ブロック特定手段によって特定されたブロックに対応して推定手段によって推定された動きベクトルを反転して、2つのフレーム画像の他方から一方までの間における第2補正対象領域の動きベクトルを推定する第3推定手段とを更に含み、動き補償手段は、未推定領域及び第1補正対象領域の各々については、第2推定手段によって推定された動きベクトルを用い、第2補正対象領域については、第3推定手段によって推定された動きベクトルを用いて、2つのフレーム画像の他方の動き補償を行うことができる。これによって、より精度良く動き補償を行うことができる。
【0018】
本発明に係る動きベクトル推定装置は、推定対象の2つのフレーム画像の他方と、推定手段によって推定されたブロックの各々の動きベクトルとを用いて、推定対象の2つのフレーム画像の一方の動き補償を行う動き補償手段を更に含むことができる。これによって、精度良く推定された動きベクトルを用いて、精度良く動き補償を行うことができる。
【0019】
上記の2つのフレーム画像の一方の動き補償を行うフレーム画像の動きベクトル推定装置は、推定対象の2つのフレーム画像間で画素値の差の絶対値が所定値以上となる領域のうち、基準サブフレーム画像の動領域に対応する領域以外の領域を、補正対象領域として特定する補正対象領域特定手段と、補正対象領域特定手段によって特定された補正対象領域について、推定対象の2つのフレーム画像の他方から、対応する領域を探索することにより、2つのフレーム画像の一方から他方までの間における、補正対象領域の各々の動きベクトルを推定する第2推定手段とを更に含み、動き補償手段は、補正対象領域については、第2推定手段によって推定された動きベクトルを用いて、2つのフレーム画像の一方の動き補償を行うことができる。これによって、より精度良く動き補償を行うことができる。
【0020】
上記の2つのフレーム画像の一方の動き補償を行うフレーム画像の動きベクトル推定装置は、推定対象の2つのフレーム画像間で画素値の差の絶対値が所定値以上となる領域のうち、基準サブフレーム画像の動領域に対応する領域以外の領域を、補正対象領域として特定する補正対象領域特定手段と、補正対象領域特定手段によって特定された補正対象領域のうち、推定対象の2つのフレーム画像の一方に存在する動きぼけ領域に対応する第1補正対象領域の各々について、推定対象の2つのフレーム画像の他方から、対応する領域を探索することにより、2つのフレーム画像の一方から他方までの間における、第1補正対象領域の各々の動きベクトルを推定する第2推定手段と、補正対象領域特定手段によって特定された補正対象領域のうち、推定対象の2つのフレーム画像の他方に存在する動きぼけ領域に対応する第2補正対象領域が、動領域に対応する領域となるサブフレーム画像であって、かつ、2つのフレーム画像の他方に対応するサブフレーム画像より前に又は後に撮影されたサブフレーム画像を取得する前後サブフレーム画像取得手段と、推定対象の2つのフレーム画像の他方に対応するサブフレーム画像から、前後サブフレーム画像取得手段によって取得されたサブフレーム画像の第2補正対象領域に対応する領域を探索する第3の探索手段と、第3の探索手段によって探索された領域に対応するブロックを特定するブロック特定手段と、ブロック特定手段によって特定されたブロックに対応して推定手段によって推定された動きベクトルを、2つのフレーム画像の一方から他方までの間における第2補正対象領域の動きベクトルとして推定する第3推定手段とを更に含み、動き補償手段は、第1補正対象領域については、第2推定手段によって推定された動きベクトルを用い、第2補正対象領域については、第3推定手段によって推定された動きベクトルを用いて、2つのフレーム画像の一方の動き補償を行うことができる。これによって、より精度良く動き補償を行うことができる。
【0021】
上記の取得手段は、CMOSイメージセンサを備えた撮影装置の撮影によって得られた複数のフレーム画像、及びCMOSイメージセンサに対する非破壊読み出しによって得られる複数のサブフレーム画像を取得することができる。
【0022】
上記の取得手段は、複数のサブフレーム画像を合成することにより、複数のフレーム画像を生成することができる。
【0023】
上記の2つのフレーム画像の一方を、2つのフレーム画像のうち先に撮影されたフレーム画像とし、2つのフレーム画像の他方を、2つのフレーム画像のうち後に撮影されたフレーム画像とすることができる。
【発明の効果】
【0024】
以上説明したように、本発明のフレーム画像の動きベクトル推定装置及びプログラムによれば、高速なフレームレートの複数のサブフレーム画像に対して順に、前回探索された領域に近い領域から、動領域に対応する領域を探索して、2つのフレーム画像の間の動きベクトルを推定することにより、計算量を抑制すると共に、精度良く動きベクトルを推定することができる、という効果が得られる。
【発明を実施するための最良の形態】
【0025】
以下、図面を参照して本発明の実施の形態を詳細に説明する。なお、本実施の形態では、動画像を圧縮符号化する動画像符号化装置に本発明を適用した場合を例に説明する。
【0026】
図1に示すように、第1の実施の形態に係る動画像符号化装置10は、画像を連続して撮影し、動画像として複数のフレーム画像を出力する撮影装置12と、撮影装置12から得られる複数のフレーム画像について圧縮符号化を行って出力するコンピュータ14とを備えている。
【0027】
撮影装置12は、所定領域を撮影し、フレーム画像を出力するCMOSイメージセンサ16と、所定のフレームレート(通常のフレームレート)で連続撮影するようにCMOSイメージセンサ16を制御する撮影制御部18と、CMOSイメージセンサ16において蓄積された電荷の非破壊読み出しを行って、通常のフレームレートより高速なフレームレート(高速フレームレート)の後述するサブフレーム画像を取得する非破壊読み出し部20と、フレーム画像を一時的に記憶する画像メモリ(図示省略)とを備えている。
【0028】
ここで、非破壊読み出し部20によって取得されるサブフレーム画像について説明する。サブフレーム画像は、通常のフレームレートで取得される画像(フレーム画像)を撮影しながら、CMOSイメージセンサ16の非破壊読み出しを用いて取得することができる画像である。
【0029】
図2に、あるフォトダイオード(PD)の蓄積過程の例を示す。サブフレーム画像が、通常のフレーム画像のM倍のフレームレートで得られるとする。また、通常のフレーム画像の蓄積時間をTとする。このとき、t=tにおけるサブフレーム画像の画素値ΔLPD(t)は、t=tにおける画素値LPD(t)と、t=t-T/M における画素値LPD(t-T/M)との差分値で与えられる。
【0030】
サブフレーム画像は、通常のフレーム画像と比較して、フレーム間の相関が高くなり、また、フレーム画像に対して蓄積時間が1/M倍なので、動きぼけが少ない画像となる。
【0031】
コンピュータ14は、CPU、後述する動画像符号化処理ルーチンを実行するためのプログラムを記憶したROM、データ等を記憶するRAM、及びこれらを接続するバスを含んで構成されている。このコンピュータ14をハードウエアとソフトウエアとに基づいて定まる機能実現手段毎に分割した機能ブロックで説明すると、図1に示すように、撮影装置12から連続して出力される通常のフレームレートのフレーム画像を複数取得するフレーム画像取得部22と、撮影装置12の非破壊読み出し部20から出力される、高速フレームレートのサブフレーム画像を複数取得するサブフレーム画像取得部24と、動きベクトルの推定対象となる2つのフレーム画像のうちの先に撮影されたフレーム画像の撮像時の時間重心に対応するサブフレーム画像を基準サブフレーム画像とし、基準サブフレーム画像の動領域を抽出する動領域抽出部26と、基準サブフレーム画像を複数のブロックに分割し、各ブロック内の動領域に対応する領域を、基準サブフレーム画像の次に隣接するサブフレーム画像から、推定対象となる2つのフレーム画像のうちの後に撮影されたフレーム画像の撮像時の時間重心に対応するサブフレーム画像までに含まれる複数のサブフレーム画像の各々から、順番に探索することにより、推定対象となる2つのフレーム画像の間の各ブロックの動きベクトルを推定する動きベクトル推定部28とを備えている。
【0032】
ここで、図3に示すように、サブフレーム画像取得部24によって取得されたサブフレーム画像に含まれる、推定対象となる2つのフレーム画像のうち先に撮影されたフレーム画像の撮影時の時間重心に対応するサブフレーム画像を、基準サブフレーム画像とし、基準サブフレーム画像の次に隣接するサブフレーム画像から、推定対象となる2つのフレーム画像のうち後に撮影されたフレーム画像の撮影時の時間重心に対応するサブフレーム画像(最終参照サブフレーム画像)までのサブフレーム画像を、参照サブフレーム画像とする。本実施の形態では、フレーム画像の撮影時の時間重心に対応するサブフレーム画像とは、フレーム画像の撮影時の時間重心(図3のC、C参照)と、撮影時の時間重心(図3のC’、C’)が揃うサブフレーム画像をいう。
【0033】
動領域抽出部26は、基準サブフレーム画像の各画素の輝度値と、参照サブフレーム画像の各々の各画素の輝度値とを比較して、各画素の動きの有無を判定し、動きがあると判定された画素からなる領域を、基準サブフレーム画像の動領域として抽出する。
【0034】
ここで、各画素の動きの有無は、基準サブフレーム画像と参照サブフレーム画像との間で輝度値の差分の絶対値を算出し、その値を動き閾値th_mと比較することで判定する。第kサブフレーム画像と第k+n(n=1,2,…,M)サブフレーム画像における画素(x,y)の輝度値を、それぞれ、l(x,y)、lk+n(x,y)とすると、サブフレーム画像間の画素(x,y)の輝度値の差分絶対値d(x,y)は、以下の(1)式によって算出される。
【0035】
【数1】
JP0005334241B2_000002t.gif

【0036】
上記(1)式で算出されたd(x,y)が閾値th_mより大きければ、画素(x、y)について、動き有りと判定される。
【0037】
動きベクトル推定部28は、基準サブフレーム画像を複数のブロックに分割し、動領域抽出部26によって抽出された動領域を用いて、基準サブフレーム画像における各ブロックを、図4に示すように、動領域と静止領域とに分ける。
【0038】
また、図5に示すように、求める動きベクトルをVとし、基準サブフレーム画像をBとし、第k(1≦k≦M)参照サブフレーム画像をFとし、基準サブフレーム画像Bと参照サブフレーム画像Fとの間の動きベクトルをVとして、動きベクトル推定部28は、以下に説明するように、動きベクトルVを求める。
【0039】
まず、基準サブフレーム画像Bと、次に隣接する参照サブフレーム画像Fとの間で、図6に示すように、各ブロックの動領域に対応する領域を探索して、各ブロックの動きベクトルの初期値Vを求める。
【0040】
そして、直前に求まる動きベクトルの初期値Vを用いて、次に隣接する参照サブフレーム画像Fから、各ブロックの動領域に対応する領域を探索して、動きベクトルVを求める。動きベクトルVは、以下の(2)式にように表わすことができる。
【0041】
【数2】
JP0005334241B2_000003t.gif

【0042】
ここで、ΔVは、隣接する参照サブフレーム画像F、F間の動きベクトル(差分動きベクトル)である。
【0043】
そして、参照サブフレーム画像をずらしながら順番に、参照サブフレーム画像F(2<k≦M)から、各ブロックの動領域に対応する領域を繰り返し探索することにより、以下の(3)式で表される動きベクトルVを求める。
【0044】
【数3】
JP0005334241B2_000004t.gif

【0045】
上記(3)式に示すように、この探索においても、直前に求まる動きベクトルVk-1を用いる。
【0046】
そして、上記の探索をk=Mまで順次行うことによって、Vを求めることができる。
【0047】
なお、各ブロックの動領域に対応する領域の探索に用いられる評価式は、以下の(4)式で表される。
【0048】
【数4】
JP0005334241B2_000005t.gif

【0049】
ここで、(i,j)は画素の座標であり、Nはブロックサイズであり、l(i,j),l(i,j)はそれぞれ基準サブフレーム画像、参照サブフレーム画像の輝度値である。また、Δv(k), Δv(k)は、差分動きベクトルの水平成分、垂直成分であり、pは差分動きベクトルのサーチレンジであり、v(k-1),v(k-1)は、直前に求められた動きベクトルの水平成分、垂直成分である。また、flag_m(i , j)は、動き検出により、各画素に割り当てられた動きフラグであり、動きありと判定された画素に対してはflag_m(i , j)=1が割り当てられ、動き無しと判定された画素に対してはflag_m(i , j)=0が割り当てられている。
【0050】
上記(4)式に示すように、直前に求められる動きベクトルΔVk-1によって表わされる、動領域に対応する領域を含む所定の探索範囲内から、ブロック内の動領域に対応する領域が探索される。
【0051】
また、コンピュータ14は、推定された動きベクトルを反転させる反転部30と、推定対象となる2つのフレーム画像のうち後に撮影されたフレーム画像(以下、基準フレーム画像とも称する。)において、動きベクトルが推定されていない未推定領域としてのギャップ領域を抽出するギャップ領域抽出部32と、基準フレーム画像において、推定された動きベクトルを補正すべき補正対象領域を特定する補正対象領域特定部34と、ギャップ領域と補正対象領域とについて、基準フレーム画像から、推定対象となる2つのフレーム画像のうち先に撮影されたフレーム画像(以下、参照フレーム画像とも称する。)までの間の動きベクトルを推定して、ギャップ領域と補正対象領域とに割り当てられる動きベクトルとして補正する動きベクトル補正部38と、反転された動きベクトル及び補正された動きベクトルを用いて、基準フレーム画像の動き補償を行う動き補償部40と、動き補償された基準フレーム画像を用いて、基準フレーム画像を圧縮符号化する符号化部42とを備えている。
【0052】
動画像の圧縮符号化を行う場合に、圧縮率を向上させるために、符号化対象のフレーム画像に対して動き補償を行う必要がある。本実施の形態では、基準フレーム画像に対して圧縮符号化が行われるため、参照フレーム画像と、基準フレーム画像から参照フレーム画像までの間の動きベクトルとを用いて、基準フレーム画像の動き補償が行われる。
【0053】
上記で説明した動きベクトル推定部28によって推定される動きベクトルは、図7に示すように、参照フレーム画像Fから基準フレーム画像Fまでの間の動きベクトルであるため、反転部30によって、推定された動きベクトル(例えば、v25)を反転して、基準フレーム画像から参照フレーム画像までの間の動きベクトル(例えば、V21=v52=-v25)を得る。
【0054】
このとき、反転された動きベクトル用いて、基準フレーム画像の動き補償を行うと、予測誤差を増大させる場合がある。
【0055】
例えば、ブロックマッチングでは、基準サブフレーム画像をブロックに分割した後、参照サブフレーム画像内でマッチングをとり、動きベクトルを求める。故に、参照サブフレーム画像においてブロックが重なる可能性がある。また、反転部30によって動きベクトルを反転させるため、図8に示すように基準フレーム画像内に、動きベクトルの割りあたらない領域(ギャップ領域)が生じうる。
【0056】
そこで、ギャップ領域抽出部32によって、反転された動きベクトルが割り当てられていない領域を抽出することによって、動きベクトルが推定されていないギャップ領域を抽出する。
【0057】
また、フレーム画像には、図9に示すように、サブフレーム画像には生じない動きぼけの領域Eb1、Ef2が存在する。この領域Eb1、Ef2には動領域が含まれるため、動きベクトルが割り当てられる必要がある。しかし、動領域を抽出する際に参照されるサブフレーム画像は、推定対象の2つのフレーム画像の時間重心に対応するサブフレーム画像の間に含まれるサブフレーム画像f~fであるため、基準フレーム画像Fの時間重心に対応するサブフレーム画像fより後に撮影されたサブフレーム画像fや、先に撮影された参照サブフレーム画像f、参照フレーム画像Fの時間重心に対応するサブフレーム画像fより先に撮影されたサブフレーム画像f、後に撮影された参照サブフレーム画像fでは、動領域に対応する領域が、静止領域と判断される(0ベクトルが割り当てられる)ことがある。この動領域に対応する領域であって、かつ、静止領域と判断される領域が、補正対象領域となる。
【0058】
図10に示すように、基準フレーム画像Fの撮影時の時間重心に対応するサブフレーム画像fより後に撮影されたサブフレーム画像fにおいて動領域に対応する領域であって、動領域Mとして抽出されない領域は、動きぼけとなる領域Ef2であり、この領域が補正対象領域Ef2となる。参照フレーム画像Fにおいてこの領域Ef2に対応する領域Ef1は静止領域であるため、領域Ef1に対して推定された動きベクトルを反転すると、この補正対象領域Ef2には、0ベクトルが割り当てられる。従って、動き補償を行うと、補正対象領域Ef2は、参照フレーム画像Fにおける、領域Ef2と同じ位置の領域Ef1の画素値で誤って補償されてしまう。
【0059】
また、図11に示すように、参照フレーム画像Fの時間重心に対応するサブフレーム画像fより先に撮影されたサブフレーム画像fにおいて動領域に対応する領域であって、動領域Mとして抽出されない領域は、動きぼけとなる領域Eb1であり、基準フレーム画像Fにおける同じ領域が補正対象領域Eb2となる。推定された動きベクトルを反転すると、この補正対象領域Eb2には、0ベクトルが割り当てられる。従って、動き補償を行うと、補正対象領域Eb2について、参照フレーム画像Fにおける、領域Eb2と同じ位置の動きぼけ領域Eb1の画素値で誤って補償されてしまう。
【0060】
そこで、補正対象領域特定部34によって、基準フレーム画像において、基準フレーム画像内の動きぼけ領域と、参照フレーム画像内の動きぼけ領域と同じ領域との中から、補正対象領域を特定する。補正対象領域は、以下のように特定される。
【0061】
まず、基準フレーム画像と参照フレーム画像との間において、各画素の輝度値の比較を行い、輝度値の差が閾値th_m_s以上となる動領域を抽出する。そして、フレーム画像間で動領域として抽出された領域のうち、サブフレーム画像間で動領域として抽出されなかった領域を抽出し、補正対象領域とする。上記図10、11に示すように、基準フレーム画像及び参照フレーム画像の各々に存在する動きぼけ領域と同じ領域のうち、サブフレーム画像間の動き領域とならない領域が、補正対象領域として特定される。
【0062】
動きベクトル補正部38では、図12に示すように、基準フレーム画像におけるギャップ領域と補正対象領域との各々について、参照フレーム画像から対応する領域を探索し、基準フレーム画像から参照フレーム画像までの間における動きベクトルを再度推定し、基準フレーム画像におけるギャップ領域と補正対象領域との各々に割り当てられる動きベクトルを、推定された動きベクトルに補正する。
【0063】
動き補償部40は、ギャップ領域と補正対象領域とについては、動きベクトル補正部38で補正された動きベクトルを用い、それ以外の領域では、反転部30によって反転された動きベクトルを用いて、参照フレーム画像に基づいて、基準フレーム画像に対する動き補償を行う。
【0064】
符号化部42では、動き補償が行われた結果と、基準フレーム画像との差分に基づいて、基準フレーム画像の圧縮符号化を行って出力する。
【0065】
次に、第1の実施の形態に係る動画像符号化装置10の作用について説明する。
【0066】
撮影装置12によって、連続撮影が開始されると、コンピュータ14において、図13に示す動画像符号化処理ルーチンが実行される。
【0067】
まず、ステップ100において、撮影装置12から、CMOSイメージセンサ16の非破壊読み出しによって、高速フレームレートの複数のサブフレーム画像を連続して取得する。そして、ステップ102において、撮影装置12から、通常フレームレートの複数のフレーム画像を連続して取得する。
【0068】
次のステップ104では、上記ステップ102で取得された複数のフレーム画像のうち、符号化対象のフレーム画像を基準フレーム画像として設定し、一つ前のフレーム画像を参照フレーム画像として設定する。なお、基準フレーム画像と参照フレーム画像とが、動きベクトルの推定対象の2つのフレーム画像となる。
【0069】
そして、ステップ106において、上記ステップ100において取得された複数のサブフレーム画像のうち、参照フレーム画像の撮影時の時間重心に対応するサブフレーム画像を基準サブフレーム画像として設定し、基準サブフレーム画像の次に隣接するサブフレーム画像から、基準フレーム画像の撮影時の時間重心に対応するサブフレーム画像までの間に含まれる複数のサブフレーム画像を参照サブフレーム画像として設定する。
【0070】
ステップ108では、参照フレーム画像から基準フレーム画像までの間における動きベクトルを推定する。上記ステップ108は、図14に示すフレーム画像間の動きベクトル推定処理ルーチンによって、以下のように実現される。
【0071】
ステップ130において、基準サブフレーム画像を複数のブロックに分割し、ステップ132において、参照サブフレーム画像を識別するための変数kを初期値の1に設定すると共に、動領域Mをリセットする。
【0072】
そして、ステップ134において、図15に示すように、基準サブフレーム画像と、参照サブフレーム画像Fとの各画素の輝度値を比較して、輝度値の差の絶対値が閾値以上となる領域Mskを、動領域として抽出し、直前までに求められた動領域M’に加算して、動領域Mを求める。
【0073】
次のステップ136では、上記ステップ134で求められた動領域Mに基づいて、基準サブフレーム画像の各ブロック内の動領域を特定する。
【0074】
そして、ステップ138において、変数kが1であるか否かを判定し、注目している参照サブフレーム画像が、基準サブフレーム画像の次に隣接する参照サブフレーム画像である場合には、ステップ140へ移行する。ステップ140では、基準サブフレーム画像の各ブロック内の動領域について、参照サブフレーム画像Fにおいて対応する領域を探索して、ブロックマッチングを行い、各ブロックの動きベクトルVを推定する。なお、動領域が存在しないブロックについては、対応する領域の探索を行なうことなく、動きベクトルとして、0ベクトルが推定される。
【0075】
そして、ステップ142において、変数kをインクリメントして、ステップ134へ戻る。
【0076】
上記ステップ138において、変数kが2以上である場合には、ステップ144において、基準サブフレーム画像の各ブロック内の動領域について、直前に推定された動きベクトルVk-1を用いて、上記(4)式で表される評価式に従って参照サブフレーム画像Fにおいて対応する領域を探索して、ブロックマッチングを行い、各ブロックの差分動きベクトルΔVを推定する。また、直前に推定された動きベクトルVk-1を用いて、動きベクトルVを推定する。
【0077】
そして、ステップ146では、kが、参照サブフレーム画像数Mであるか否かを判定し、kがMに達していない場合には、ステップ148において、kをインクリメントして、ステップ134へ戻る。
【0078】
上記ステップ146において、全ての参照サブフレーム画像との間でブロックマッチングが行われ、kが、Mに達したと判定された場合には、ステップ150において、上記ステップ144で各ブロックに対して推定されたVを、参照フレーム画像から基準フレーム画像までの間における各ブロックの動きベクトルの推定値として出力して、フレーム画像間の動きベクトル推定処理ルーチンを終了する。
【0079】
また、上記図13の動画像符号化処理ルーチンのステップ110において、上記ステップ108で推定された各ブロックの動きベクトルを反転して、基準フレーム画像から参照フレーム画像までの間における各ブロックの動きベクトルを得る。
【0080】
そして、ステップ112において、上記ステップ110で得られた、基準フレーム画像から参照フレーム画像までの間における動きベクトルを補正する。上記ステップ112は、図16に示す動きベクトル補正処理ルーチンにより、以下のように実現される。
【0081】
ステップ160において、上記ステップ110で得られた基準フレーム画像から参照フレーム画像までの間における各ブロックの動きベクトルに基づいて、動きベクトルが推定されていないギャップ領域を、基準フレーム画像から抽出する。
【0082】
そして、ステップ162において、図17に示すように、基準フレーム画像と参照フレーム画像との各画素について、輝度値の差の絶対値を算出し、輝度値の差の絶対値が閾値以上となる画素からなる領域を、フレーム画像間の動領域として抽出する。次のステップ164において、図18に示すように、上記ステップ162で抽出された動領域のうち、上記ステップ134で動領域Msとして抽出されなかった領域を、補正対象領域として特定する。
【0083】
ステップ166において、上記ステップ160で抽出されたギャップ領域、及び上記ステップ164で特定された補正対象領域の各々に対応する領域を、参照フレーム画像から探索して、ギャップ領域及び補正対象領域の各々について、基準フレーム画像から参照フレーム画像までの間における動きベクトルを推定する。また、推定された動きベクトルを用いて、基準フレーム画像から参照フレーム画像までの間におけるギャップ領域及び補正対象領域の各々の動きベクトルを補正して、動きベクトル補正処理ルーチンを終了する。
【0084】
また、上記図13に示す動画像符号化処理ルーチンのステップ114において、上記ステップ110で得られた動きベクトルと、ステップ112で補正された動きベクトルとを用いて、参照フレーム画像に基づいて、基準フレーム画像に対する動き補償を行う。そして、ステップ116において、上記ステップ114で動き補償が行われた基準フレーム画像と、基準フレーム画像との差分を用いて、基準フレーム画像を圧縮符号化して、動画像符号化処理ルーチンを終了する。
【0085】
上記の動画像符号化処理ルーチンを、通常フレームレートで連続して得られる複数のフレーム画像ついて順次行うことにより、動画像の圧縮符号化が行われる。
【0086】
以上説明したように、第1の実施の形態に係る動画像符号化装置によれば、高速なフレームレートの複数のサブフレーム画像に対して順に、各ブロックについて、ブロック内の動領域に対応する領域を、直前に探索された領域の近傍の探索範囲から繰り返し探索して、2つのフレーム画像の間の動きベクトルを推定することにより、計算量を抑制すると共に、精度良く動きベクトルを推定することができる。
【0087】
また、ギャップ領域や、動きぼけ領域に対応する補正対象領域について、再度推定された動きベクトルを用いることにより、精度良く動き補償を行うことができる。
【0088】
また、CMOSイメージセンサの高速非破壊読み出しにより得られる、高フレームレートのサブフレーム画像を用いて、計算量を抑制して動き推定を行うことができる。
【0089】
次に第2の実施の形態について説明する。なお、第2の実施の形態に係る動画像符号化装置の構成は、第1の実施の形態と同様であるため、同一符号を付して説明を省略する。
【0090】
第2の実施の形態では、サブフレーム画像間の差分動きベクトルから既に推定されている動きベクトルを用いて、補正対象領域の動きベクトルを補正している点が、第1の実施の形態と異なっている。
【0091】
第2の実施の形態では、動きベクトル補正部38によって、基準フレーム画像におけるギャップ領域と、補正対象領域のうち、参照フレーム画像内に存在する動きぼけ領域と共通する領域となる第1補正対象領域(上記図18の領域E参照)との各々について、上記の第1の実施の形態と同様に、参照フレーム画像から対応する領域を探索し、基準フレーム画像から参照フレーム画像までの間における動きベクトルを推定する。この推定された動きベクトルを用いて、基準フレーム画像におけるギャップ領域と、参照フレーム画像内の動きぼけ領域と共通する領域となる第1補正対象領域Eとの各々に割り当てられる動きベクトルを補正する。
【0092】
次に、補正対象領域のうち、基準フレーム画像内の動きぼけ領域と共通する領域となる第2補正対象領域(上記図18の領域E参照)についての動きベクトルを推定する原理について説明する。
【0093】
まず、図19に示すように、基準フレーム画像における動きぼけ領域となる第2補正対象領域Eに対応する(最も予測誤差が小さくなると予想される)、参照フレーム画像Fにおける領域を、領域E’とすると、第2補正対象領域E→領域E’の動きベクトルVを、第2補正対象領域Eのフレーム画像間の動きベクトルとして割り当てればよい。
【0094】
ここで、第2補正対象領域Eと同じ領域が、動領域に対応する領域となるサブフレーム画像は、基準サブフレーム画像Fの撮影時の時間重心に対応するサブフレーム画像fの後に撮影されたサブフレーム画像fであり、サブフレーム画像fにおける、第2補正対象領域Eと同じ領域は、領域eである。
【0095】
また、参照フレーム画像Fにおける領域E’と同じ領域が、動領域に対応する領域となるサブフレーム画像は、参照サブフレーム画像Fの時間重心に対応するサブフレーム画像fの後に撮影されたサブフレーム画像fであり、サブフレーム画像fにおいて、領域E’と同じ領域は、領域e’である。
【0096】
従って、フレーム画像間の動きベクトルVとして、領域e→領域e’の動きベクトルvを用いればよい。ここで、サブフレーム画像fの撮影時からサブフレーム画像fの撮影時までの間の時間と、サブフレーム画像fの撮影時からサブフレーム画像fの撮影時までの間の時間とが等しく、動領域が表わす物体は等速直線運動をしていると仮定すると、サブフレーム画像fからサブフレーム画像fまでの間における動きベクトルv63と、サブフレーム画像fからサブフレーム画像fまでの間における動きベクトルv52とは等しい。 また、サブフレーム画像fにおいて、領域eに対応する領域は領域oである。
【0097】
そこで、以下の(5)式に示すように、サブフレーム画像fからサブフレーム画像fまでの間における領域oの動きベクトルvを、第2補正対象領域Eに割り当てることができる。
ベクトルV =ベクトルv=ベクトルv ・・・(5)
【0098】
以上説明したように、動きベクトル補正部38では、基準フレーム画像内の動きぼけ領域と共通する領域となる第2補正対象領域が、動領域に対応する領域となるサブフレーム画像を取得し、取得されたサブフレーム画像における、第2補正対象領域の動きぼけ領域に対応する領域を、参照サブフレーム画像から探索する。そして、動きベクトル補正部38は、探索された領域に対応するブロックを特定し、特定されたブロックに対応して推定されている動きベクトルを反転して、第2補正対象領域に割り当てる。
【0099】
次に、第2の実施の形態における動きベクトル補正処理ルーチンについて、図20を用いて説明する。なお、第1の実施の形態と同様の処理については、同一符号を付して詳細な説明を省略する。
【0100】
まず、ステップ160において、動きベクトルが推定されていないギャップ領域を、基準フレーム画像から抽出し、ステップ162において、フレーム画像間の動領域を抽出する。
【0101】
次のステップ200では、上記ステップ162で抽出された動領域のうち、上記ステップ134で動領域Mとして抽出されなかった領域であって、かつ、参照フレーム画像内に存在する動きぼけ領域と共通する領域を、第1補正対象領域として特定し、動領域Mとして抽出されなかった領域であって、かつ、基準フレーム画像内に存在する動きぼけ領域を、第2補正対象領域として特定する。
【0102】
例えば、上記ステップ200は、図21に示すように実現される。まず、参照フレーム画像Fと基準サブフレーム画像fとの間の動き検出により得られる画像F、f 間の動領域を、参照フレーム画像内の動きぼけ領域として特定する(図21のi参照)。また、基準フレーム画像Fと最終参照サブフレーム画像fとの間の動き検出により得られる画像F、f間の動領域を、参照フレーム画像内の動きぼけ領域として特定する(図21のii参照)。また、上記ステップ162で得られるフレーム画像間の動領域と、サブフレーム画像間の動領域とに基づいて、上記第1の実施の形態と同様に、補正対象領域を特定する。
【0103】
そして、補正対象領域と、参照フレーム画像内の動きぼけ領域との共通領域を、第1補正対象領域として特定し(図21のiii参照)、補正対象領域と、基準フレーム画像内の動きぼけ領域との共通領域を、第2補正対象領域として特定する(図21のiv参照)。
【0104】
そして、ステップ202では、基準フレーム画像における、上記ステップ160で抽出されたギャップ領域、及び上記ステップ200で特定された第1補正対象領域の各々に対応する領域を、参照フレーム画像から探索して、ギャップ領域、及び第1補正対象領域の各々について、基準フレーム画像から参照フレーム画像までの間における動きベクトルを推定し、推定された動きベクトルを用いて、基準フレーム画像から参照フレーム画像までの間における動きベクトルを補正する。
【0105】
次のステップ204では、第2補正対象領域と同じ領域が、動領域に対応する領域となるサブフレーム画像を、上記ステップ100で取得された複数のサブフレーム画像であって、かつ、基準サブフレーム画像の撮影時の時間重心より後に撮影されたサブフレーム画像から取得する。そして、ステップ206において、上記ステップ204で取得されたサブフレーム画像における第2補正対象領域と同じ領域について、対応する領域を、基準フレーム画像の撮影時の時間重心に対応する参照サブフレーム画像から探索する。
【0106】
そして、ステップ208において、基準サブフレーム画像を分割した複数のブロックから、上記ステップ206で探索された領域に対応するブロックを特定する。次のステップ210において、上記ステップ208で特定されたブロックに対応して上記ステップ108で推定された動きベクトルを反転して、第2補正対象領域に割り当てて、基準フレーム画像から参照フレーム画像までの間における動きベクトルを補正する。また、第1の実施の形態と同様に、上記ステップ160で抽出されたギャップ領域、及び上記ステップ200で特定された第1補正対象領域の各々に対応する領域を、参照フレーム画像から探索して、ギャップ領域及び第1補正対象領域の各々について、基準フレーム画像から参照フレーム画像までの間における動きベクトルを推定する。また、推定された動きベクトルを用いて、基準フレーム画像から参照フレーム画像までの間におけるギャップ領域及び第1補正対象領域の各々の動きベクトルを補正する。
【0107】
なお、第2の実施の形態に係る動画像符号化装置の他の構成及び作用については、第1の実施の形態と同様であるため、説明を省略する。
【0108】
次に、本実施の形態のサブフレーム画像間の差分動きベクトル推定を用いた動き推定方法による推定結果について説明する。
【0109】
図22(A)~(C)に示すような画像列を、高速カメラを用いて1000fpsで撮影して、動き推定を行った。図22(A)に示す画像列は、絨毯に対し撮影装置を矢印の方向に移動させながら撮影したものである。図22(B)に示す画像列は、矢印の方向に等速直線運動するミニカーを撮影したものである。図22(C)に示す画像列は、左下の長方形部分を除く部分が矢印の方向に動くものである。これらの画像をサブフレーム画像とみなし、連続した17枚を用いて合成し、60fpsのフレーム画像を模擬した。1000fpsのサブフレーム画像を用いて動き推定が行われる、本実施の形態の手法に対し、60fpsのフレーム画像で行われる動き推定を従来手法として推定結果を比較した。
【0110】
まず、図22(A)に示す画像列に対し、本実施の形態の手法による動き推定を行った。この動き推定では、探索範囲を限定することによる、計算量削減と推定精度との改善について検証するため、動領域を抽出するための閾値th_mを0とした。また、ブロックサイズを8×8とした。
【0111】
推定結果を図23に示す。従来手法による動き推定結果では、図23(A)より、動きベクトルの方向および大きさがばらついた。一方、本実施の形態の手法の場合、図23(B)より、従来手法と比較して、方向および大きさがほぼ一定の動きベクトルが推定された。
【0112】
さらに、以下の表1より、図22(A)に示す画像列に対する、本実施の形態の手法による水平方向、垂直方向の動きベクトルの標準偏差合計値は、従来手法に対し約1/3倍となった。また、図22(A)に示す画像列に対する動き推定の所要時間は、従来手法に対し、本実施の形態の手法では約1/8倍となった。
【0113】
【表1】
JP0005334241B2_000006t.gif

【0114】
また、図22(B)、(C)に示す画像列に対し、従来手法によって推定された動きベクトルを用いて動き補償を行うと共に、第1、2の実施の形態の動きベクトルの補正手法を用いて、動き補償を行い、動き補償画像、そのPSNR、及び動き推定の所要時間を比較した。なお、ブロックサイズは16×16とした。
【0115】
従来手法により推定された動きベクトルを用いて動き補償を行った場合、画像列によらず、境界ブロックで、ブロック状の誤りを生じた。一方、第1、2の実施の形態の補正手法を用いた場合では、従来手法を用いた場合に生じた境界ブロックにおける、ブロック状の誤りはみられなかった。
【0116】
また、以下の表2に、基準フレーム画像と補償画像との間で求めたPSNRと、動き推定の所要時間の平均を示す。
【0117】
【表2】
JP0005334241B2_000007t.gif

【0118】
上記の表2より、図22(B)に示す画像列(表2の画像列2参照)では、従来手法に比べて、PSNRが第1の実施の形態の補正手法により約2dB改善し、第2の実施の形態の補正手法により約0.5dB改善した。図22(C)に示す画像列(表2の画像列3参照)では、PSNRが第1の実施の形態の補正手法により約3dB改善し、第2の実施の形態の補正手法により約1dB改善した。また、画像列2に対する動き推定の所要時間については、従来手法に比べて、第1の実施の形態の補正手法によって1/15となり、第2の実施の形態の補正手法によって1/30となった。画像列3に対する動き推定の所要時間については、従来手法に比べて、第1の実施の形態の補正手法によって2/3となり、第2の実施の形態の補正手法によって1/2となった。
【0119】
さらに、どの画像列においても、第2の実施の形態の補正手法を用いることで、補正のためのマッチングの所要時間を約1/2に削減できることが確認された。
【0120】
以上より、PSNRが最も改善されるのは、第1の実施の形態の補正手法であり、また計算量が最も削減されるのは、第2の実施の形態の補正手法であることがわかった。
【0121】
以上説明したように、本実施の形態の手法によれば、従来手法に比べ計算量を削減でき、特徴量の少ない画像に対する推定誤りを改善することができる。また、本実施の形態の手法によれば、従来手法に比べて動き補償の精度を改善することができ、また、計算量を削減することができる。
【0122】
次に第3の実施の形態について説明する。なお、第3の実施の形態に係る動画像符号化装置の構成は、第1の実施の形態と同様の構成となるため、同一符号を付して説明を省略する。
【0123】
第3の実施の形態では、差分動きベクトルを推定するために領域を探索する毎に、動き領域を更新している点が第1の実施の形態と異なっている。
【0124】
第3の実施の形態に係る動画像符号化装置では、動領域抽出部26によって、図24(A)、(B)に示すように、基準サブフレーム画像と探索対象の参照サブフレーム画像とを比較して、輝度値の差の絶対値が閾値以上となる画素からなる領域を動領域として抽出することにより、動領域を順次更新する。
【0125】
また、補正対象領域特定部34によって、基準フレーム画像において補正対象領域を特定すると共に、参照フレーム画像及び基準フレーム画像内の各々に存在する動きぼけ領域を抽出して、第1補正対象領域及び第2補正対象領域を特定する。第1補正対象領域及び第2補正対象領域は、以下のように特定される。
【0126】
まず、基準フレーム画像と参照フレーム画像との間において、各画素の輝度値の比較を行い、輝度値の差が閾値th_m_s以上となる動領域を抽出する。そして、フレーム画像間で動領域として抽出された領域のうち、サブフレーム画像間で最後に動領域として抽出されなかった領域(基準サブフレーム画像と最終参照サブフレーム画像との間で動領域として抽出されなかった領域)を抽出し、補正対象領域とする。
【0127】
そして、図25に示すように、参照フレーム画像Fと基準サブフレーム画像fとの間の動き検出により得られる画像F、f 間の動領域を、参照フレーム画像内の動きぼけ領域として特定する(図25のi参照)。また、基準フレーム画像Fと最終参照サブフレーム画像fとの間の動き検出により得られる画像F、f 間の動領域を、参照フレーム画像内の動きぼけ領域として特定する(図25のii参照)。
【0128】
そして、補正対象領域と、参照フレーム画像内の動きぼけ領域との共通領域を、第1補正対象領域として特定し(図25のiii参照)、補正対象領域と、基準フレーム画像内の動きぼけ領域との共通領域を、第2補正対象領域として特定する(図25のiv参照)。
【0129】
図26に示すように、参照フレーム画像Fの時間重心に対応するサブフレーム画像fの前後に撮影されたサブフレーム画像f、fにおいて動領域に対応する領域であって、基準サブフレーム画像fと最終参照サブフレーム画像fとの間で動領域として抽出されない領域は、動きぼけ領域であり、第1補正対象領域Eb2となる。推定された動きベクトルを反転すると、この第1補正対象領域Eb2には、0ベクトルが割り当てられる。従って、動き補償を行うと、第1補正対象領域Eb2について、参照フレーム画像Fにおける、領域Eb2と同じ位置の動きぼけ領域Eb1の画素値で誤って補償されてしまう。
【0130】
また、図27に示すように、基準フレーム画像Fの撮影時の時間重心に対応するサブフレーム画像fの前後に撮影されたサブフレーム画像f、fにおいて動領域に対応する領域であって、基準サブフレーム画像fと最終参照サブフレーム画像fとの間で動領域として抽出されない領域は、動きぼけ領域であり、第2補正対象領域Ef2となる。参照フレーム画像Fにおいてこの領域Ef2に対応する領域Ef1は静止領域であるため、領域Ef1に対して推定された動きベクトルを反転すると、この動きぼけ領域Ef2には、0ベクトルが割り当てられる。従って、動き補償を行うと、動きぼけ領域Ef2は、参照フレーム画像Fにおける、領域Ef2と同じ位置の領域Ef1の画素値で誤って補償されてしまう。
【0131】
そこで、動きベクトル補正部38では、上記第1の実施の形態と同様に、基準フレーム画像における、ギャップ領域と第1補正対象領域と第2補正対象領域との各々について、参照フレーム画像から対応する領域を探索し、基準フレーム画像から参照フレーム画像までの間における動きベクトルを再度推定し、基準フレーム画像におけるギャップ領域と第1補正対象領域と第2補正対象領域との各々に割り当てられる動きベクトルを、推定された動きベクトルに補正する。
【0132】
なお、第3の実施の形態に係る動画像符号化装置の他の構成及び作用については同様であるため説明を省略する。
【0133】
次に第4の実施の形態について説明する。なお、第4の実施の形態に係る動画像符号化装置の構成は、第3の実施の形態と同様であるため、同一符号を付して説明を省略する。
【0134】
第4の実施の形態では、サブフレーム画像間の差分動きベクトルから既に推定されている動きベクトルを用いて、第2補正対象領域の動きベクトルを補正している点が、第3の実施の形態と異なっている。
【0135】
第4の実施の形態では、上記第3の実施の形態と同様に、動領域抽出部26によって、基準サブフレーム画像と探索対象の参照サブフレーム画像とを比較して、輝度値の差の絶対値が閾値以上となる画素からなる領域を動領域として抽出することにより、動領域を順次更新する。
【0136】
また、補正対象領域特定部34は、基準フレーム画像と参照フレーム画像との間において輝度値の差が閾値以上となる動領域を抽出し、フレーム画像間で動領域として抽出された領域のうち、サブフレーム画像間で最後に動領域として抽出されなかった領域(基準サブフレーム画像と最終参照サブフレーム画像との間で動領域として抽出されなかった領域)を抽出し、補正対象領域とする。また、補正対象領域特定部34は、第3の実施の形態と同様に、補正対象領域から、第1補正対象領域及び第2補正対象領域を特定する。
【0137】
また、動きベクトル補正部38によって、基準フレーム画像におけるギャップ領域と第1補正対象領域との各々について、上記の第3の実施の形態と同様に、参照フレーム画像から対応する領域を探索し、基準フレーム画像から参照フレーム画像までの間における動きベクトルを推定して、ギャップ領域と第1補正対象領域との各々に割り当てられる動きベクトルを補正する。
【0138】
次に、補正対象領域のうち、基準フレーム画像の動きぼけ領域と同じ領域となる2箇所の第2補正対象領域(図28の領域Ef1、Ef2参照)についての動きベクトルを推定する原理について説明する。
【0139】
まず、図28に示すように、基準フレーム画像における一方の第2補正対象領域Ef1に対応する(最も予測誤差が小さくなると予想される)、参照フレーム画像Fにおける領域を、領域Ef1’とすると、第2補正対象領域Ef1→領域Ef1’の動きベクトルVE1を、第2補正対象領域Ef1のフレーム画像間の動きベクトルとして割り当てればよい。
【0140】
ここで、第2補正対象領域Ef1と同じ領域が、動領域に対応する領域となるサブフレーム画像は、基準サブフレーム画像Fの撮影時の時間重心に対応するサブフレーム画像fの後に撮影されたサブフレーム画像fであり、サブフレーム画像fにおける、第2補正対象領域Ef1と同じ領域は、領域ef1である。
【0141】
また、参照フレーム画像Fにおける領域Ef1’と同じ領域が、動領域に対応する領域となるサブフレーム画像は、参照サブフレーム画像Fの時間重心に対応するサブフレーム画像fの後に撮影されたサブフレーム画像fであり、サブフレーム画像fにおいて、領域E’と同じ領域は、領域ef1’である。
【0142】
従って、フレーム画像間の動きベクトルVE1として、領域ef1→領域ef1’の動きベクトルve1を用いればよい。ここで、サブフレーム画像fの撮影時からサブフレーム画像fの撮影時までの間の時間と、サブフレーム画像fの撮影時からサブフレーム画像fの撮影時までの間の時間とが等しく、動領域が表わす物体は等速直線運動をしていると仮定すると、サブフレーム画像fからサブフレーム画像fまでの間における動きベクトルv63と、サブフレーム画像fからサブフレーム画像fまでの間における動きベクトルv52とは等しい。 また、サブフレーム画像fにおいて、領域ef1に対応する領域は領域of1である。
【0143】
そこで、以下の(6)式に示すように、サブフレーム画像fからサブフレーム画像fまでの間における領域of1の動きベクトルvo1を、一方の第2補正対象領域Ef1に割り当てることができる。
ベクトルVE1 =ベクトルve1=ベクトルvo1 ・・・(6)
【0144】
また、基準フレーム画像における他方の第2補正対象領域Ef2に対応する、参照フレーム画像Fにおける領域を、領域Ef2’とすると、一方の第2補正対象領域Ef1と同様に、第2補正対象領域Ef2→領域Ef2’の動きベクトルVE2を、第2補正対象領域Ef2のフレーム画像間の動きベクトルとして割り当てればよい。すなわち、フレーム画像間の動きベクトルVE2として、領域ef2→領域ef2’の動きベクトルve2を用いればよく、サブフレーム画像fにおいて、領域ef2に対応する領域は領域of2であるから、以下の(7)式に示すように、サブフレーム画像fからサブフレーム画像fまでの間における領域of2の動きベクトルvo2を、他方の第2補正対象領域Ef2に割り当てることができる。
ベクトルVE2 =ベクトルve2=ベクトルvo2 ・・・(7)
【0145】
以上説明したように、動きベクトル補正部38では、基準フレーム画像内の動きぼけ領域と共通する領域となる第2補正対象領域が、動領域に対応する領域となるサブフレーム画像を取得し、取得されたサブフレーム画像における、第2補正対象領域に対応する領域を、参照サブフレーム画像から探索する。そして、動きベクトル補正部38は、探索された領域に対応するブロックを特定し、特定されたブロックに対応して推定されている動きベクトルを反転して、第2補正対象領域に割り当てる。
【0146】
なお、第4の実施の形態に係る動画像符号化装置の他の構成及び作用については、第1の実施の形態と同様であるため、説明を省略する。
【0147】
次に第5の実施の形態について説明する。なお、第1の実施の形態と同様の構成となる部分については、同一符号を付して説明を省略する。
【0148】
第5の実施の形態では、先に撮影されたフレーム画像に対して動き補償を行っている点が、第1の実施の形態と主に異なっている。
【0149】
図29に示すように、第5の実施の形態に係る動画像符号化装置510のコンピュータ514は、フレーム画像取得部22と、サブフレーム画像取得部24と、動領域抽出部26と、動きベクトル推定部28と、推定対象となる2つのフレーム画像のうち先に撮影されたフレーム画像を基準フレーム画像とし、基準フレーム画像において、推定された動きベクトルを補正すべき補正対象領域を特定する補正対象領域特定部534と、補正対象領域とについて、基準フレーム画像から、推定対象となる2つのフレーム画像のうち後に撮影されたフレーム画像(参照フレーム画像)までの間の動きベクトルを推定して、補正対象領域とに割り当てられる動きベクトルとして補正する動きベクトル補正部538と、推定された動きベクトル及び補正された動きベクトルを用いて、基準フレーム画像の動き補償を行う動き補償部540と、動き補償された基準フレーム画像を用いて、基準フレーム画像を圧縮符号化する符号化部542とを備えている。
【0150】
動きベクトル推定部28では、図30に示すように、先に撮影された基準フレーム画像の撮影時の時間重心に対応するサブフレーム画像を基準サブフレーム画像とし、参照フレーム画像の撮影時の時間重心に対応するサブフレーム画像を最終参照フレーム画像として、上記の第1の実施の形態と同様に、基準フレーム画像から参照フレーム画像までの間の各ブロックの動きベクトルを推定する。
【0151】
補正対象領域特定部534では、フレーム画像間で動領域として抽出された領域のうち、サブフレーム画像間で動領域として抽出されなかった領域を抽出し、基準フレーム画像における補正対象領域を特定する。
【0152】
動きベクトル補正部538では、基準フレーム画像における補正対象領域について、参照フレーム画像から対応する領域を探索し、基準フレーム画像から参照フレーム画像までの間における動きベクトルを再度推定し、基準フレーム画像における補正対象領域に割り当てられる動きベクトルを、推定された動きベクトルに補正する。
【0153】
動き補償部540は、補正対象領域については、動きベクトル補正部538で補正された動きベクトルを用い、それ以外の領域では、動きベクトル推定部28によって推定された動きベクトルを用いて、参照フレーム画像に基づいて、基準フレーム画像に対する動き補償を行う。
【0154】
符号化部542では、動き補償が行われた結果と、基準フレーム画像との差分に基づいて、基準フレーム画像の圧縮符号化を行って出力する。
【0155】
なお、上記の実施の形態では、補正対象領域について再度動き推定を行って動きベクトルを補正する場合を例に説明したが、これに限定されるものではなく、上記の第2の実施の形態と同様に、補正対象領域として、第1補正対象領域及び第2補正対象領域の各々を特定し、第1補正対象領域については、再度動き推定を行い、第2補正対象領域については、サブフレーム画像間で推定された動きベクトルを用いて補正するようにしてもよい。例えば、第2補正対象領域が、動領域に対応する領域となるサブフレーム画像を取得し、参照フレーム画像の時間重心に対応する最終参照サブフレーム画像から、取得されたサブフレーム画像の第2補正対象領域に対応する領域を探索する。そして、探索された領域に対応するブロックを特定し、特定されたブロックに対応して既に推定されている動きベクトルを、第2補正対象領域の動きベクトルとして用いればよい。
【0156】
次に第6の実施の形態について説明する。なお、第1の実施の形態と同様の構成となる部分については、同一符号を付して説明を省略する。
【0157】
第6の実施の形態では、撮影装置から取得された通常フレームレートの撮影画像をサブフレーム画像とし、通常フレームレートの撮影画像を合成して、低速フレームレートのフレーム画像を生成している点が、第1の実施の形態と主に異なっている。
【0158】
図31に示すように、第6の実施の形態に係る動画像符号化装置610の撮影装置612は、CMOSイメージセンサ16と、撮影制御部18と、画像メモリ(図示省略)とを備えている。
【0159】
また、動画像符号化装置610のコンピュータ614は、撮影装置612から連続して出力される通常のフレームレートの撮影画像をサブフレーム画像として複数取得するサブフレーム画像取得部624と、サブフレーム画像取得部624によって取得された複数の撮影画像のうち、複数枚ずつ合成して、低速フレームレートのフレーム画像を複数生成するフレーム画像生成部622と、動領域抽出部26と、動きベクトル推定部28と、反転部30と、ギャップ領域抽出部32と、補正対象領域特定部34と、動きベクトル補正部38と、動き補償部40と、符号化部42とを備えている。
【0160】
なお、動画像符号化装置610の他の構成及び作用については、第1の実施の形態と同様であるため、説明を省略する。
【0161】
上記の実施の形態では、CMOSイメージセンサを備えた撮影装置を用いた場合を例に説明したが、これに限定されるものではなく、CMOSイメージセンサ以外のイメージセンサ備えた撮影装置を用いて構成してもよい。例えば、CCDイメージセンサを備えた撮影装置を用いて構成してもよい。
【0162】
なお、上記の第6の実施の形態では、後に撮影されたフレーム画像を基準フレーム画像とし、基準フレーム画像の動き補償を行う場合を例に説明したが、これに限定されるものではなく、上記の第5の実施の形態と同様に、先に撮影されたフレーム画像を基準フレーム画像として、基準フレーム画像の動き補償を行うようにしてもよい。
【0163】
また、上記の第1の実施の形態、第2の実施の形態、第5の実施の形態、第6の実施の形態では、基準サブフレーム画像に隣接するサブフレーム画像から、探索対象の参照サブフレーム画像までに含まれるサブフレーム画像の少なくとも1つに対して、輝度値の差の絶対値が閾値以上となる画素からなる領域を動領域として順次抽出して、マッチングを行う場合を例に説明したが、これに限定されるものではなく、はじめに、全ての参照サブフレーム画像の少なくとも1つに対して、輝度値の差の絶対値が閾値以上となる画素からなる領域を、動領域として抽出し、各ブロック内のこの動領域について、繰り返しマッチングを行うようにしてもよい。
【0164】
また、上記の第1の実施の形態~第6の実施の形態において、画素の輝度値の差の絶対値が閾値以上となる画素からなる領域を動領域として抽出する場合を例に説明したが、この閾値を0として、画像の全画素を動領域として抽出するようにしてもよい。
【0165】
また、SSD(2乗誤差和)を用いた評価式に基づいて探索を行なう場合を例に説明したが、これに限定されるものではなく、例えば、SAD(絶対差分和)を用いた評価式など、他の評価手法によって領域探索を行なうようにしても良い。
【0166】
また、後に撮影されたフレーム画像を基準フレーム画像とし、あるいは、先に撮影されたフレーム画像を基準フレーム画像として、基準フレーム画像の動き補償を行う場合を例に説明したが、これに限定されるものではなく、基準フレーム画像として、後に撮影されたフレーム画像及び先に撮影されたフレーム画像の何れかを選択可能にして、選択されたフレーム画像に対して動き補償を行うようにしてもよい。
【0167】
また、推定された動きベクトルを用いて動き補償を行い、圧縮符号化を行う動画像符号化装置について説明したが、これに限定されるものではなく、例えば、推定された動きベクトルに基づいて、フレーム補間を行う装置に本発明を適用するようにしてもよい。
【0168】
また、本発明を実現するプログラムを、記録媒体に格納して提供するようにしてもよい。
【図面の簡単な説明】
【0169】
【図1】本発明の第1の実施の形態に係る動画像符号化装置を示すブロック図である。
【図2】CMOSイメージセンサにおいて蓄積される電荷の時系列変化を示す図である。
【図3】フレーム画像の撮影時の時間重心と、サブフレーム画像の撮影時の時間重心とを示すイメージ図である。
【図4】ブロック内の動領域と静止領域とを示すイメージ図である。
【図5】サブフレーム画像間から求められる動きベクトル及び差分動きベクトルを示すイメージ図である。
【図6】ブロック内の動領域に対応する領域を探索する様子を示すイメージ図である。
【図7】サブフレーム画像間から推定された動きベクトルを反転する様子を示すイメージ図である。
【図8】基準フレーム画像におけるギャップ領域を説明するための図である。
【図9】動きぼけ領域を説明するための図である。
【図10】基準フレーム画像内の動きぼけ領域である補正対象領域において、誤った動き補償が行われる様子を示すイメージ図である。
【図11】参照フレーム画像内の動きぼけ領域と同じ領域である補正対象領域において、誤った動き補償が行われる様子を示すイメージ図である。
【図12】ギャップ領域及び補正対象領域について、再度動きベクトルを推定する様子を示すイメージ図である。
【図13】本発明の第1の実施の形態に係る動画像符号化装置のコンピュータにおける動画像符号化処理ルーチンの内容を示すフローチャートである。
【図14】本発明の第1の実施の形態に係る動画像符号化装置のコンピュータにおけるフレーム画像間の動きベクトル推定処理ルーチンの内容を示すフローチャートである。
【図15】動き領域が抽出される様子を示すイメージ図である。
【図16】本発明の第1の実施の形態に係る動画像符号化装置のコンピュータにおける動きベクトル補正処理ルーチンの内容を示すフローチャートである。
【図17】フレーム画像間の動き領域を抽出する様子を示すイメージ図である。
【図18】補正対象領域を特定する様子を示すイメージ図である。
【図19】基準フレーム画像内の動きぼけ領域である第2補正対象領域について、動きベクトルを推定する様子を示すイメージ図である。
【図20】本発明の第2の実施の形態に係る動画像符号化装置のコンピュータにおける動きベクトル補正処理ルーチンの内容を示すフローチャートである。
【図21】第1補正対象領域及び第2補正対象領域を特定する様子を示すイメージ図である。
【図22】(A)移動させながら絨毯を撮影した画像列を示すイメージ図、(B)等速直線運動するミニカーを撮影した画像列を示すイメージ図、及び(C)左下の長方形部分を除く部分が矢印の方向に動く画像列を示すイメージ図である。
【図23】(A)従来手法による動きベクトルの推定結果を示す図、及び(B)本実施の形態の手法による動きベクトルの推定結果を示す図である。
【図24】動領域を抽出する様子を示すイメージ図である。
【図25】第1補正対象領域及び第2補正対象領域を特定する様子を示すイメージ図である。
【図26】参照フレーム画像内の動きぼけ領域である第1補正対象領域において、誤った動き補償が行われる様子を示すイメージ図である。
【図27】基準フレーム画像内の動きぼけ領域と同じ領域である第2補正対象領域において、誤った動き補償が行われる様子を示すイメージ図である。
【図28】第2補正対象領域について、動きベクトルを推定する様子を示すイメージ図である。
【図29】本発明の第5の実施の形態に係る動画像符号化装置を示すブロック図である。
【図30】サブフレーム画像間から推定された動きベクトルを、フレーム画像間の動きベクトルとして用いる様子を示すイメージ図である。
【図31】本発明の第6の実施の形態に係る動画像符号化装置を示すブロック図である。
【符号の説明】
【0170】
10、510、610 動画像符号化装置
12、612 撮影装置
14、514、614 コンピュータ
16 CMOSイメージセンサ
20 非破壊読み出し部
22 フレーム画像取得部
24、624 サブフレーム画像取得部
26 動領域抽出部
28 動きベクトル推定部
30 反転部
32 ギャップ領域抽出部
34、534 補正対象領域特定部
38、538 動きベクトル補正部
40、540 動き補償部
42、542 符号化部
622 フレーム画像生成部
図面
【図1】
0
【図2】
1
【図3】
2
【図4】
3
【図5】
4
【図6】
5
【図7】
6
【図8】
7
【図9】
8
【図12】
9
【図13】
10
【図14】
11
【図15】
12
【図16】
13
【図17】
14
【図18】
15
【図20】
16
【図29】
17
【図30】
18
【図31】
19
【図10】
20
【図11】
21
【図19】
22
【図21】
23
【図22】
24
【図23】
25
【図24】
26
【図25】
27
【図26】
28
【図27】
29
【図28】
30