JP2009027744A - ビデオ符号化における中間画素高精度高速探索を実現する装置及び方法 - Google Patents

ビデオ符号化における中間画素高精度高速探索を実現する装置及び方法 Download PDF

Info

Publication number
JP2009027744A
JP2009027744A JP2008244850A JP2008244850A JP2009027744A JP 2009027744 A JP2009027744 A JP 2009027744A JP 2008244850 A JP2008244850 A JP 2008244850A JP 2008244850 A JP2008244850 A JP 2008244850A JP 2009027744 A JP2009027744 A JP 2009027744A
Authority
JP
Japan
Prior art keywords
pixel
sub
value
mad
minimum
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008244850A
Other languages
English (en)
Inventor
Nyeongkyu Kwon
ニョンキュ クウォン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AVT AUDIO VISUAL TELECOMM CORP
AVT AUDIO VISUAL TELECOMMUNICATIONS CORP
Original Assignee
AVT AUDIO VISUAL TELECOMM CORP
AVT AUDIO VISUAL TELECOMMUNICATIONS CORP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by AVT AUDIO VISUAL TELECOMM CORP, AVT AUDIO VISUAL TELECOMMUNICATIONS CORP filed Critical AVT AUDIO VISUAL TELECOMM CORP
Publication of JP2009027744A publication Critical patent/JP2009027744A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy

Abstract

【課題】階層的動きベクトル探索の処理負担を軽減する。
【解決手段】ビデオ符号化における中間画素高精度高速探索アルゴリズムは、動き推定のための階層的な探索方法であって、最初に整数高精度動きベクトルを探索し、その後、整数動きベクトルの再構築されたサブ画素を取り囲んでいるそのサブ画素高精度探索を続ける方法を実行する。前記階層化は、前記アルゴリズムが最初に最小整数画素の位置を計算し、その後、サブ整数画素探索を実行する。最小MAD値を有する前記整数画素値を得て、その後、第1方向に共役中間画素値を補間する。前記アルゴリズムは、どの中間画素値が前記最小MAD値に従うかを決定し、その後、第1方向から既に計算された最小MAD中間画素の位置から第2方向に共役中間画素値を補間する。
【選択図】図5

Description

本発明は、ビデオ圧縮のための動き推定アルゴリズムに関し、より詳細には、ビデオ符号化において中間画素精度高速探索アルゴリズムを実現するための装置及び方法に関する。
デジタル技術の発達は、多くのデジタルビデオアプリケーションを作り出している。デジタルビデオは、現在、デジタル高精細テレビ(HDTV)、ビデオ会議、コンピュータ画像、及び高品質ビデオテープレコーダーで用いられている。非圧縮のデジタルビデオ信号は、莫大な量のデータから構成されているため、多量の帯域を必要とし、記憶し伝送するためのメモリを必要とする。例えば、米国で放送しているHDTVを定義するフォーマットの1つは、水平方向に1920画素、垂直方向に1080ライン、1秒間に30フレームである。これらの数が、三原色のそれぞれに対して8ビットで全てが一緒に多重されるならば、必要とされる全データ速度は、概して1.5Gb/secである。FCCによって課された6MHzのチャンネル帯域制限のために、各チャンネルは、19.2Mb/secのデータ速度をサポートするのみである。前記チャンネルは、オーディオ、トランスポート、補助データ情報もサポートしなければならないため、それはさらに18Mb/secへ引き下げられる。伝送データ速度の制限を与えられて、オリジナル信号は、おおよそ83:1の割合で圧縮されなければならない。それゆえ、多くのデジタルビデオシステムは、特定のアプリケーションのために最適化されるデータ圧縮技術を使用することによってデジタルビデオデータの量を減らしている。デジタル圧縮装置は、共通して“エンコーダ”と呼ばれ、一方、復元を実行する装置は、“エンコーダ”と呼ばれている。符号化と複合化の両方は、しばしば、“エンコーダ”と呼ばれている。
動画ビデオ圧縮のための方法を標準化するために、ムービングピクチャーエキスパートグループ(MPEG)は、デジタルビデオ処理のための多くの標準を発行した。
各フレームは、画像の要素または“画素”の2次元配列として述べられている。各画素は、輝度と色相によって画像の特定のポイントを表す。方法は、各フレームを表現するのに必要とされる伝送データの量を減らすように工夫されている。伝送データの削減は、データ圧縮と呼ばれている。圧縮方法は、各画素の位置の色と明るさのための大量の情報を伝送する以前に、所定の多くの“マクロブロック”に各フレームを分割する。前記マクロブロックは、典型的には、16×16の画素配列として定義される。連続するフレーム間に類似するものがある時、前記フレーム間で異なるもののみを伝送することはより効果的である。最新のマクロブロックは、連続するフレームまたは以前のフレームに発見されるならば、最新のマクロブロックをどこへ動かすかを詳述する動きベクトルを伝送することはより効果的である。前記動きベクトルは、前記最新のマクロブロックにおける各画素の位置を連続する参照フレームの各画素の位置と比較することによって決定される。前記2つのマクロブロック間で違いが最小である整数の位置は、前記動きベクトルを発生させるのに用いられる。全画素の位置を探索する処理は、全探索または逐次探索とよばれ、全画素の位置よりも少ない探索処理は、高速探索と呼ばれる。
米国出願No.6, 128,047“Motion Estimation Process And System Using Sparse Search Block-Matching And Integral Projection”
前記最新のマクロブロックは、現実のビデオ符号化においては与えられた方向に多くの整数画素を通常シフトしない。現実には、前記マクロブロックは、わずか一部の画素によって置き換えられる。全探索または高速探索の整数画素探索アルゴリズムによって所定の前記整数画素の位置を得る方法、及び動きベクトルをより正確に定義するための中間画素の位置を取り囲んでいる8画素全てを使って第2の探索を実行する方法が幾つか存在する。これは、より正確な動きベクトルをもたらす一方、最新の中間画素の位置を配置するために必要な計算の数が増加する。高速探索を実行する1/2画素探索アルゴリズム、すなわち、1/2画素の8つ全ての位置が探索されるアルゴリズムは存在しない。
"Fast Two-Step Half-Pixel Accuracy Motion Vector Prediction", K.H.Lee, J.H.Choi, B.K.Lee and D.G.Kim, Electronics Letters, 30th Mar.,2000 Vol.36, no.7
前記Lee氏の論文は、マクロブロックのどの整数位置が最小絶対誤差手段(MAD)を含んでいるかを第1に決定することによって、高速2段階中間画素高精度動きベクトル予測アルゴリズム(fast two-step half pixel accuracy motion vector prediction algorithm)を実現している。前記MAD関数は、式(1)で示される。
Figure 2009027744
ここで、f(i,j)は、前記最新のフレームからの16×16画素(マクロブロック)のブロックを表しており、g(i,j)は、同じマクロブロックではなく、(時間的に前または次の)参照フレームからのマクロブロックを表しており、前記参照マクロブロックは、探索位置を表しているベクトル(dx,dy)によって置き換えられる。前記MAD関数は、連続するフレームにおけるどの整数画素の位置が最小誤差を含んでいるかを計算する。この画素値は、動きベクトルのための前記整数画素の変位値になる。
前記最小MAD値を作り出している最良の適合ブロックを見つけるために、探索範囲における幾つかの位置で前記MAD値を計算する必要がある。上述したように、全探索または逐次探索は、高速または部分探索が事前定義されている値を選択する一方、全ての位置で前記MADを計算する。
図1を参照すると、前記Lee氏の論文は、所定の整数画素の位置を取り囲んでいる1/2画素ポイントをテストする方法について述べている。第1に、前記取り囲んでいる中間画素の整数位置は、水平及び垂直ペアに対して切り離されている。水平の中間画素ポイント2と7及び垂直の中間画素ポイント4と5は、取り囲んでいる整数画素に基づいて補間されており、位置2の前記MADは最小MADペアを決定するために位置7と比較され、位置4の前記MADは位置5と比較される。補間される画素は、共一次内挿法技術を承認したMPEGを使って決定される。前記最小MAD値を有するブロックは、その時、最小ペアを決定する反対のペアのブロックと比較される。例えば、ポイント2が前記最小MADを有し、5が4よりも小さいMADを有するとすると、前記最小MADペアは2と5であり、ポイント4は中間画素の動き予測のために付加的に考慮される。結局、前記中間画素の高精度動きベクトルは、中心の整数画素ブロック、前記最小候補ブロック、及びより最新と思われるポイントの前記MADを比較することによって決定される。
Lee氏の論文は、高速2段階中間画素動きベクトル予測アルゴリズムについて述べており、前記アルゴリズムは、5つの計算を実行し、従来の全中間画素探索方法と比較して37.5%計算処理上の負担を減らすのみである。従って、中間画素高精度動きベクトルを決定する計算処理上の負担を低減させる高速中間画素動き推定アルゴリズムの必要性はそのまま残る。
それゆえ、本発明は、従来の方法と比較すると正確な中間画素を有する動きベクトルを決定する計算処理上の負担を低減させるビデオ符号化における中間画素高精度高速探索アルゴリズムを提供する。
さらに、本発明は、具現化し実現することが容易であるビデオ符号化における中間画素高精度高速探索アルゴリズムを提供する。
上記及び他の本発明を実行するために、まず初めに整数高精度動きベクトルを探索し、その後、取り囲んでいるサブ画素精度を有するその探索を続け、前記整数動きベクトルの共役サブ画素が再構築される、動き推定のための階層化探索法を実行するビデオ符号化における中間画素高精度高速探索アルゴリズムを提供する。
本発明の他の側面と特徴は、本発明の実施例を開示する添付図と結びつけて考察されている以下の詳細な説明からより明らかになる。しかしながら、図は説明のためだけに示されており、本発明の制限を定義するものではないということを理解すべきである。図において、類似の参照文字は、幾つかの表示にわたり類似する要素を示している。
動画ビデオ系列は、連続する動きの錯覚を提供するように連続的に表示されている一連の静止画または“フレーム”からなる。各フレームは、2次元配列の画像の要素または“画素”として描写される。各画素は、輝度と色相によってその画像における特定のポイントを描写する。画素情報は、デジタルの形態で表現され、高精細テレビのようなモニター上に表示され、または符号化され、放送され得る。
放送信号には2つの構成成分がある。1)予想できない成分(すなわち新しく予測ができない)と、2)予想できる成分である。前記新しい成分は、エントロピーと呼ばれ、それは、信号上の真の情報である。残りのものは、本質的でなく、他のフレームから作り直されるのでリダンダンシーと呼ばれる。リダンダンシーは、隣接画素がほとんど同じ値を有する画像の大きな単一領域に存在するような空間的なものである。リダンダンシーは、連続する画像間の類似性が利用されるように時系列的でもある。圧縮システムは、前記エンコーダにおいて前記リダンダンシーから前記エントロピーを切り離すことによって働く。前記エントロピーは、冗長なデータを描写する動きベクトルに沿って記録されるか、または伝送される。前記デコーダは、表示する完全なフレームを発生させるために前記エントロピーと冗長データを利用する。
理想的エンコーダは、連続するフレームの前記エントロピーを伝送し、画質の損失なく前または次のフレームの冗長な画素の情報を使って付加的に冗長な情報を作り直す。典型的には、圧縮率が高くなるにつれて、前記信号伝送は、デジタル人工品または誤差になりがちであり、信号の質を下げることになる。理想的エンコーダは、今のところ存在せず、あるのは圧縮率と信号の質の間の平衡を保つものである。
ビデオ圧縮のために、前記エンコーダは“イントラコーディング”と“インターコーディング”技術を利用している。イントラコーディングは、空間的な冗長を活用する技術、すなわちインターコーディングが時系列的な冗長または連続する画像間の冗長を活用する技術であるのに対して画像内の冗長を活用する技術である。与えられた画像が前記デコーダで利用できるならば、その次の画像は前記画像の相違点のみを送信することによって作り直される。前記画像の相違点は、物体が動いた時、増加されるが、動いている物体は一般的には、ある画像から次の画像へその外観がそれほど変わらないので、相違点は動き補償を使うことによって相殺される。その動きが計測されるならば、最新の画像に対するより徹底的な近似が、新しい位置に対して前の画像の一部をシフトすることによって作られる。前記シフト処理は、前記デコーダに対して伝送される動きベクトルによって制御される。前記動きベクトルの伝送は、前記画像の相違点データまたは完全なフレームを送信するよりも少ないデータである必要がある。
動き推定法の2つのタイプは、典型的には、前記動きベクトルを推定するために用いられている。すなわち、画素再帰アルゴリズムとブロックマッチングアルゴリズムである。画素再帰技術は、隣接するフレームにおける対応する画素から各画素の変位を予測する。一方、ブロックマッチングアルゴリズムは、ブロック毎を基本としてフレーム間の変位を見積もり、距離が最小である変位ベクトルを選択する。全マクロブロックは、その時、前記動きベクトルによって置き換えられる。典型的には、符号化される最新の画素は、画素情報が同等の大きさのブロックに分けられる。これらの“マクロブロック”は、典型的には、2つの色成分のそれぞれに対して8×8のブロックのサンプルと共に輝度サンプルの16×16のサンプル配列からなる。
ブロックマッチング動き推定アルゴリズムは、一般的には、その探索方式に基づいた全探索かまたは高速探索アルゴリズムとして分類される。全探索は、徹底的な探索としても知られ、前記マクロブロックの前記動きベクトルを発見するために全ての予想候補整数画素の位置において連続するマクロブロック間の誤差を見積もる。それは、実現するための複雑性としては単純である一方、各マクロブロックと連続するマクロブロックの位置の前記エリアを探索するのに広がる計算上の負担を携える。それゆえ、連続するマクロブロック間の最小誤差を探索するための整数画素の位置の量を低減する多くの高速探索アルゴリズムが提案されている。整数画素の動きベクトルの精度を改善するために、本発明は、中間画素精度を有する階層的なアプローチを提案する。
前記階層化は、前記アルゴリズムが最初に最小整数画素の位置を計算し、それからサブ整数画素探索を実行することを意味する。本発明は、最低MAD値を有する前記整数画素を得て、それから、第1の方向に共役中間画素値を補間する。前記アルゴリズムは、どの中間画素値が最小MAD値に従うかを決定し、それから、前記第1の方向から前に計算された最小MADの中間画素の位置で第2の方向における共役中間画素値を補間する。説明した共役探索方法は、8つから4つの中間画素の位置まで従来の中間画素探索方法によって実行される計算を低減する。
補間を用いる2次元再構成画像は、以下のような数式で示される。2次元コンボリューションは、標本化された画素の画像と補間関数の間で処理される。
Figure 2009027744
ここで、B(.)は、再構成された補間画像であり、
Figure 2009027744
2次元線形補間関数は、以下によって与えられる。
Figure 2009027744
ここで、XとYは、画像フレームにおける水平、垂直の間隔である。
ここで、図を詳細に見ることにする。図2は、共一次内挿法を利用するための整数と中間整数の位置を描写している図である。共一次内挿法は、中間画素値が決定される処理であり、中間画素値を計算するための標準としてMPEGによって採用されている。画像の整数画素の位置に関する上記共一次内挿法の式を使って、中間画素値a、b、c、d、eは、以下のように計算される。
a=(A+B)/2
b=(A+C)/2
c=(A+B+C+D)/4
d=(B+D)/2
e=(C+D)/2
ここで、A、B、C、Dは整数画素であり、a、b、c、d、eは取り囲んでいる中間画素である。前記中間画素値は、中間画素高精度動きベクトルを決定する時に本発明によって利用される。
図3は、整数画素の位置のまわりに取り囲んでいる中間画素の位置を図示している。本発明に従うと、整数画素0を取り囲む中間画素の位置1から8は、例えば、上述の公式を使って計算される。
図4は、多数の中間画素の位置1から8それぞれによって取り囲まれている整数の位置0を図示している。加えて、本発明に従うビデオ符号化における前記中間画素高精度高速探索アルゴリズムに対する予想探索位置の一例は、ILeft、ICenter、IRight及びIICenter、ILeftとIRightに関して描写されている。
本発明に従う前記高速中間画素探索は、第1に、既知の整数画素の全探索または高速探索のアルゴリズムを使って最小MAD値を有するマクロブロックにおける整数画素の位置を計算する。一度、整数画素の位置が計算されると、第1の方向ILeftとIRightにおける前記共役中間画素値が決定される。例えば、第1の方向が水平であり、2次元正方格子のX軸に平行であると仮定する。ILeftとIRightの前記MADは計算され、最小MAD値を有する前記中間画素の位置が記憶される。第2の方向における共役中間画素値はまた、最小MAD値を有する既に記憶された画素の位置を起点として計算される。上記に基づき、第2の方向は垂直方向であり、正方格子のY軸に平行であると仮定する。この場合には、必要とされないが、第1と第2の方向はお互いに直交している。共一次内挿法を使って、IITopとIIBottomは決定される。IRight、ICenter、またはILeftは、第1と第2の方向がお互いに直交している時、IICenterに対して等しい値であるということに注目する。一度、IITopとIIBottomが計算されると、それら2つの位置に対するMAD値は決定される。最小MAD値を有する前記中間画素の位置はまた、記憶され、事前に決定される前記整数画素値のためのオフセットとして用いられる。従って、最小MAD値を有する前記中間画素の位置をもうけて整数画素の位置ICenterを結合する新しい動きベクトルは、前記マクロブロックを置き換える最終の動きベクトルを発生させるために用いられる。式(2)を使って、前記動きベクトルMV(x,y)は、以下のように定義される。
(2) MV(x,y)=MVinteger(x,y)+dh(x,y)
ここで、MVinteger(x,y)は、整数高精度動きベクトルであり、dh(x,y)は、中間画素変位である。
択一的なアプローチとして、その方法はまた、最小MAD値を有する位置を決定するために前記共役サブ画素の位置と前記整数の位置を比較する。
優位性としては、本発明に従い動作する中間画素の動き推定アルゴリズムは、整数画素の動きベクトルより正確な動き変位情報に従い、8つから4つまで全探索で必要とされる計算を低減し、それによって、50%計算を減らしている。
図4を参照している例において、最小MAD値を有する前記整数画素の位置がICenterに位置しているということを仮定する。本発明は、中間画素の位置ILeftとIRightを補間し、それら2つのポイントのどちらが最小MAD値に従うかを決定する。IRightが、最小MAD値に従うと仮定すると、中間画素値IITopとIIBottomは第2の方向に計算される。IITopが最小MAD値を含んでいると仮定すると、このマクロブロックに対する動きベクトルは結果として、前記中間画素IITop動きベクトルを加えた前記整数の動きベクトルに等しい。上記の例において使用される探査命令は、説明目的のためだけのものであるということが理解されるべきである。他の適切な探索命令が選択肢として使われ、例えば、前記探索は、垂直方向に実行され、続いて水平方向に実行され、特に命令は、設計選択の事項である。他の例では、第1の方向は、右上から左下の斜方向であり得るし、第2の方向は、右下から左上であり得る。前記共役値は、斜方向に関して決定される。
図5は、本発明に従うビデオ符号化の例における中間画素の高精度高速探索を説明しているフローチャートである。第1に、既知である整数探索アルゴリズムを使って初期整数探索を実行し、動きベクトルMV整数(x,y)を決定する(ステップ500)。続いて、第1の方向にサブ画素の共役補間を実行する(ステップ505)。その後、第1の方向D(x+1,y)とD(x-1,y)において、それぞれの前記共役サブ画素の位置に対してMAD値を計算する。ここで、第2の方向の変数yは一定である(ステップ510)。次に、第1の方向における最小MAD値を決定する(ステップ515)。続いて、第1の方向における最小MAD値を有する前記サブ画素の位置に中心がある第2の方向においてサブ画素の共役補間を実行する(ステップ520)。次に、第2の方向D(x,y+1)とD(x,y-1)において前記共役サブ画素の位置に対するMAD値を計算する。ここで、前記変数xは一定である(ステップ525)。次に、第2の方向において最小MAD値を決定する(ステップ530)。最小MADを有する前記サブ画素の位置に基づく新しい動きベクトルを計算する(ステップ535)。その後、サブ画素に対する動きベクトルを加えた整数画素に対する動きベクトルの合計に等しいマクロブロックに対する動きベクトルを設定する(ステップ540)。
図6は、本発明と一致するシステム600の図である。システム600は、中央処理装置(“CPU”)605、ランダムアクセスメモリ(“RAM”)610、リードオンリーメモリ(“ROM”)620、及びシステムバス670を経由して相互接続されるコンピュータ読み出し可能な媒体625を含んでいる。コンピュータ読み出し可能な媒体625は、本発明に従う前記中間画素の高精度高速探索を実行するのに必要なコンピュータ読み出し可能な命令を含んでおり、実行のためのCPU605に対して本発明に従う命令を提供する任意の媒体として限定されることなく組み入れられる。コンピュータ読み出し可能な媒体は、RAM、ROM、電気的消去可能なプログラマブルROM(“EEPROM”)、CD-ROM、またはネットワーク接続、電波、他のワイヤレス情報伝送手段のような伝送装置である。
入出力(I/O)信号660は、システム600に対して接続されており、圧縮または復元する音声/映像データの入力ストリームを提供している。CPU605は、上述したような正確な中間画素の高精度動きベクトルを決定するために媒体625に含まれる命令に沿ってI/O信号660にアクセスする。加えて、CPU605は、入力装置650から画像データを受信するか、またはディスプレー630上にI/O信号660を表示する。一度、前記画像データは、入力装置650またはI/O信号660を経由して受信され、そしてCPU605を経由して処理され、前記画像データは、記憶装置675に記憶されるか、または送信機およびアンテナ680を経由して伝送される。
媒体625と同様にシステム600は、モーションビデオレコーダー、デジタルビデオディスクレコーダー(“DVD”)、衛星テレビ送受信機、パーソナルコンピュータ用のビデオディスプレーカード、及び他のMPEG準拠装置に制限されることなく多くの装置に組み込まれ、デジタルビデオ情報を伝送するのに必要とされる情報量を削減し、正確な動きベクトルを得るのに必要とされる計算量を削減する。
本発明の性能について、“クレア(Clair)”、“自動車電話”、“ミスアメリカ”、“セールスマン”のような4つのテストビデオ系列を使ってノイズに対するピーク信号の割合(PSNR)に関して描写し、従来の中間画素探索と整数画素探索法の両方に対して比較する。表1はコンピュータシミュレーションデータを示し、PSNRに関して他の探索アルゴリズムとの比較を示す一方、式(3)は、前記PSNRの計算を詳述する。前記シミュレーションは、H.263フレームワークで実行し、PSNRデータは、100を超える画像のフレームデータを平均することによって得た。PSNRは以下のように計算した。
Figure 2009027744
ここで、Nは、画素数であり、OiとRiは、オリジナル画像と再構成された画像の大きさである。両方の中間画素探索方法は、整数画素探索方法と比較すると、平均PSNRにおいて2dBに及ぶ差を有するより良い性能を示す。両方の中間画素探索方法、つまり高速探索及び全探索の方法の比較においては、PSNRに関して4つのビデオ系列の全てでほとんど差がない。一方、本発明で描写されている必要とされる計算の数は、全探索方法の半分に削減された。
表2は、計算の数に関して整数画素全探索、整数高速探索、及び中間画素全探索と比較した本発明のコンピュータシミュレーションデータを示す。本発明の処理スピードの改善は、特に、整数画素高速探索アルゴリズムを伴う時のシミュレーションデータにおいて明確に示される。中間画素全探索のポイントは、整数画素全探索の間に探索されるポイントのおおよそ1%である。従来の中間画素の全探索の間に実行される計算数は、整数画素の高速探索の計算数よりもかなり大きい。それゆえ、処理スピード改善の点から、中間画素探索における計算数を削減することには限界がある。表1は、本発明が必要とされる数を削減することによって処理スピードを改善したことを示す。前記シミュレーションデータは、必要な計算の全体の数において約30%削減を示し、従来の中間画素の全探索に比べて50%削減を示している。
Figure 2009027744
Figure 2009027744
図7−10は、4つのテストビデオ系列を有する100個のフレームから各画像フレームのPSNRデータを示す。全中間画素探索、本発明に従う高速中間画素探索、及び整数画素探索が、各グラフにおいて比較されている。前記中間画素探索と本発明に従う高速中間画素探索は、PSNRに関して類似の性能を示してお互いにほとんど重なり合っている。しかしながら、前記整数画素探索は、2dBに及ぶPSNRの差を有して他の2つの高速探索データより低いままである。それゆえ、本発明は、全中間画素探索と比較すると取るに足らない量のノイズだけ含む一方で、中間画素の高精度動きベクトルを発生させるのに必要とされる計算数を50%削減する。
本発明の実施例を示した一方、添付された請求項で定義される本発明の範囲から出発することなく、多くの変化と変更がなされることが理解されることになる。
従来技術に従う整数画素と中間画素の位置を図示したものである。 補間のための整数と中間の画素の位置を図示したものである。 整数画素の位置のまわりに取り囲んでいる中間画素の位置を図示したものである。 本発明に従う中間画素高精度高速探索アルゴリズムの概念を図示したものである。 本発明に従うビデオ符号化における中間画素高精度高速探索アルゴリズムを説明するフローチャートである。 本発明と一致したシステム図である。 テストビデオストリーム入力と本発明のピーク信号雑音比(PSNR)の性能を図示したものである。 テストビデオストリーム入力と本発明のピーク信号雑音比(PSNR)の性能を図示したものである。 テストビデオストリーム入力と本発明のピーク信号雑音比(PSNR)の性能を図示したものである。 テストビデオストリーム入力と本発明のピーク信号雑音比(PSNR)の性能を図示したものである。

Claims (16)

  1. サブ画素精度を有するビデオ映像データの第1と第2のフレームの間の動きベクトルを得るための装置であって、
    第1方向における最小絶対誤差手段(“MAD”)値を有する第1サブ画素の位置を識別することと、
    第2方向における最小MAD値を有する第2サブ画素の位置を識別することと、
    整数画素の位置とサブ整数画素の位置を使って前記第1マクロブロックと前記第2マクロブロックの間の距離を表現している動きベクトルを決定することと
    を実行するためのプログラムとプロセッサを有するメモリであって、実行される時、前記プログラムが設定されるメモリを含んでいる装置において、
    前記サブ整数画素の位置が、前記最小MAD値を有する前記第1サブ画素の位置と前記第2サブ画素の位置とから得られている装置。
  2. 前記整数画素の位置に中心がある前記第1方向における第1と第2の中間画素値であって、共役の関係である前記第1と第2の中間画素値を決定するために共一次内挿法を実行することと、
    前記第1方向における前記第1と第2の中間画素の位置と、前記整数画素の位置とのそれぞれにおいてMAD値を決定することと、
    前記第1方向における前記最小MAD値を有する前記第1サブ画素の位置を決定するために前記MAD値を比較することと
    を成し遂げるためにプログラムがさらに設定されている請求項1に記載の装置。
  3. 前記第1サブ画素の位置に中心がある前記第2方向における第1と第2の中間画素値であって、共役の関係である前記第2方向における第1と第2の中間画素値を決定するために共一次内挿法を実行することと、
    前記第2方向における前記第1と第2の中間画素の位置と、前記第1サブ画素の位置とのそれぞれにおいてMAD値を決定することと、
    前記第2方向において前記最小MAD値を有する前記第2サブ画素の位置を決定するために前記MAD値を比較することと
    を成し遂げるためにプログラムがさらに設定されている請求項2に記載の装置。
  4. ビデオ映像データの第1と第2のフレームの間のサブ画素精度を有する動きベクトルを得るために、プロセッサによって実行される時、具体化されるプログラム構成要素を有するコンピュータに用いられる媒体を含んでいるコンピュータプログラムにおいて、
    前記コンピュータに用いられる装置が、
    前記第1フレームに関連する前記第2フレームの中の絶対距離最小手段(“MAD”)値を有する整数画素の位置において、
    前記第1方向における最小MAD値を有する第1サブ画素の位置を識別するために設定される前記プログラムの構成要素と、
    前記第2方向における最小MAD値を有する第2サブ画素の位置を識別するために設定される前記プログラムの構成要素と、
    前記整数画素の位置とサブ整数画素の位置を用いて前記第1マクロブロックと第2マクロブロックの間の距離を表現している動きベクトルを決定するために設定される前記プログラムの構成要素とを含んでおり、
    前記サブ画素の位置が、前記第1サブ画素の位置と前記第2サブ画素の位置とから得られるコンピュータプログラム。
  5. 前記第1サブ画素の位置を識別するために設定される前記プログラムの前記構成要素が、
    前記整数画素の位置に中心がある前記第1方向における第1と第2の中間画素値であって、共役の関係である第1と第2の中間画素値を決定する共一次内挿法を実行するために設定される前記プログラムの構成要素と、
    前記第1と第2の中間画素の位置と、前記整数画素の位置とのそれぞれにおいてMAD値を決定するために設定される前記プログラムの構成要素と、
    前記MAD値を比較して前記第1方向における最小MAD値を有する前記第1サブ画素の位置を決定するために設定される前記プログラムの構成要素と
    をさらに含んでいる請求項4に記載のコンピュータプログラム。
  6. 前記第2サブ画素の位置を識別するために設定される前記プログラムの前記構成要素が、
    前記第2方向において前記最小MAD値を有する前記中間画素の位置に中心がある前記第2の方向における第1と第2の中間画素値であって、共役の関係である前記第2方向における前記第1と第2の中間画素値を決定する共一次内挿法を実行するために設定される前記プログラムの構成要素と、
    前記第2方向における前記第1と第2の中間画素の位置と、前記第1サブ画素の位置とのそれぞれにおいてMAD値を決定するために設定される前記プログラムの構成要素と、
    前記MAD値を比較して前記第2方向における最小MAD値を有する前記第2サブ画素の位置を決定するために設定される前記プログラムの構成要素と
    をさらに含んでいる請求項5に記載のコンピュータプログラム。
  7. 第1フレームに含まれる第1マクロブロックと第2フレームに含まれる第2マクロブロックの間の動きベクトルを得るための装置であって、
    実行可能なプログラムコードを記憶するメモリ装置と、
    前記メモリ装置にアクセスし、その中に含まれる命令を実行するプロセッサとを含んでいる装置において、
    前記プロセッサが、
    第1方向において最小MAD値を有する第1サブ画素の位置を識別するために設定される構成要素と、
    第2方向において最小MAD値を有する第2サブ画素の位置を識別するために設定される構成要素と、
    前記整数画素の位置とサブ整数画素の位置を用いて第1マクロブロックと第2マクロブロックの間の距離を表現している動きベクトルを決定するために設定される構成要素とを含んでおり、
    前記サブ整数画素の位置が、前記最小MAD値を有する前記第1サブ画素の位置と前記第2サブ画素の位置とから得られる装置。
  8. 前記第1サブ画素の位置を識別するために設定される前記構成要素が、
    前記整数画素の位置に中心がある前記第1方向における第1と第2の中間画素値であって、共役の関係である前記第1と第2の中間画素値を決定する共一次内挿法を実行するために設定される構成要素と、
    前記第1と第2の中間画素の位置と、前記整数画素の位置とのそれぞれにおいてMAD値を決定するために設定される構成要素と、
    前記MAD値を比較して前記第1方向における前記最小MAD値を有する前記第1サブ画素の位置を決定するために設定される構成要素とをさらに含んでいる請求項7に記載の装置。
  9. 前記第2共役サブ画素値を識別するために設定される前記構成要素が、
    前記第1方向において前記最小MAD値を有する前記第1サブ画素の位置に中心がある前記第2方向における第1と第2の中間画素値であって、共役の関係である前記第2方向における前記第1と第2の中間画素値を決定する共一次内挿法を実行するために設定される構成要素と、
    前記第2方向における前記第1と第2の中間画素の位置と、前記第1サブ画素の位置とのそれぞれにおいてMAD値を決定するために設定される構成要素と、
    前記MAD値を比較して前記第2方向における前記最小MAD値を有する前記第2サブ画素の位置を決定するために設定される構成要素とをさらに含んでいる請求項8に記載の装置。
  10. ビデオ映像データの連続するフレーム間の動きベクトルを得るための高速探索サブ画素高精度方法であって、
    2次元配列に配置された複数の画素を含んでいる第1フレームの第1マクロブロックを決定する段階と、
    前記第1と第2のマクロブロックの間の絶対誤差値最小手段(MAD)値を有する2次元配列に配置された複数の画素を含んでいる第2フレームの第2マクロブロックを選択する段階と、
    前記第2マクロブロックにおいて前記最小MAD値を有する最小整数画素の位置を決定する段階と、
    前記最小整数画素の位置に中心がある第1方向において共役サブ画素値を計算する段階と、
    前記第1方向において前記最小MAD値を有する前記共役サブ画素値を決定する段階と、
    前記第1方向における最小MAD値を有する前記サブ画素の位置に中心がある第2方向において共役サブ画素値を計算する段階と、
    前記第2方向において前記最小MAD値を有する前記共役サブ画素値を決定する段階と、
    前記最小整数画素の位置とサブ整数画素の位置とを用いて前記第1マクロブロックと前記第2マクロブロックの間の距離を表現している前記マクロブロックに対する動きベクトルを決定する段階とを含み、
    前記サブ整数画素の位置は、前記第2方向において前記最小MAD値を有する前記共役サブ画素値に対応することを特徴とする方法。
  11. 前記第1方向がグリッドのx軸に平行な水平方向であり、前記第2方向がグリッドのy軸に平行な垂直方向である請求項10に記載の高速探索サブ画素方法。
  12. 共役サブ画素値を計算する前記段階が、中間画素値を決定するために共一次内挿法を実行する段階を更に含んでいる請求項10に記載の高速探索サブ画素方法。
  13. 前記最小MAD値を有する前記共役サブ画素値を決定する前記段階が、前記最小MAD値を決定するために前記共役サブ画素値を前記整数画素値と比較する段階をさらに含んでいる請求項10に記載の高速探索サブ画素方法。
  14. ビデオ映像データの第1フレームに含まれる第1マクロブロックと第2フレームに含まれる第2マクロブロックの間の動きベクトルを得る方法であって、
    前記第1フレームに関係する前記第2フレームの中の最小絶対誤差手段(“MAD”)値を有する整数画素の位置において、第1方向において最小MAD値を有する第1サブ画素の位置を決定する段階と、
    前記第1サブ画素の位置に中心がある第2方向における第2サブ画素の位置であって、第2方向において最小MAD値を有する前記第2サブ画素の位置を決定する段階と、
    前記整数画素の位置と前記第2サブ画素の位置を用いて前記第1マクロブロックと前記第2マクロブロックの間の距離を表現している動きベクトルを決定する段階とを含んでいる方法。
  15. ビデオ映像データの第1フレームに含まれる第1マクロブロックと第2フレームに含まれる第2マクロブロックの間の動きベクトルを得る方法であって、
    前記第1フレームに関係する前記第2フレームの中の最小絶対誤差手段(“MAD”)値を有する整数画素の位置において、第1斜め方向において最小MAD値を有する第1サブ画素の位置を決定する段階と、
    前記第1サブ画素の位置に中心がある第2サブ画素の位置であって、第2斜め方向に最小MAD値を有する前記第2サブ画素の位置を決定する段階と、
    前記整数画素の位置と前記第2サブ整数画素の位置を用いて前記第1マクロブロックと前記第2マクロブロックの間の距離を表現している動きベクトルを決定する段階とを含んでいる方法。
  16. ビデオレコーダーにおけるビデオ映像データの第1フレームに含まれる第1マクロブロックと第2フレームに含まれる第2マクロブロックの間の動きベクトルを得る方法であって、
    前記第1フレームに関係する前記第2フレームの中の最小絶対誤差手段(“MAD”)値を有する整数画素の位置において、第1方向において最小MAD値を有する第1サブ画素の位置を決定する段階と、
    前記第1サブ画素の位置に中心がある第2方向における第2サブ画素の位置であって、第2方向における最小MAD値を有する前記第2サブ画素の位置を決定する段階と、
    前記整数画素の位置と前記第2サブ画素の位置を用いて前記第1マクロブロックと前記第2マクロブロックの間の距離を表現している動きベクトルを決定する段階と、
    記憶装置に前記動きベクトルを記憶する段階とを含んでいる方法。
JP2008244850A 2001-03-08 2008-09-24 ビデオ符号化における中間画素高精度高速探索を実現する装置及び方法 Pending JP2009027744A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/801,584 US20020172288A1 (en) 2001-03-08 2001-03-08 Device and method for performing half-pixel accuracy fast search in video coding

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002570523A Division JP4739651B2 (ja) 2001-03-08 2002-03-08 ビデオ符号化における中間画素高精度高速探索を実現する装置及び方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009230638A Division JP2010045816A (ja) 2001-03-08 2009-10-02 ビデオ符号化における中間画素高精度高速探索を実現する装置及び方法

Publications (1)

Publication Number Publication Date
JP2009027744A true JP2009027744A (ja) 2009-02-05

Family

ID=25181521

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2002570523A Expired - Lifetime JP4739651B2 (ja) 2001-03-08 2002-03-08 ビデオ符号化における中間画素高精度高速探索を実現する装置及び方法
JP2008244850A Pending JP2009027744A (ja) 2001-03-08 2008-09-24 ビデオ符号化における中間画素高精度高速探索を実現する装置及び方法
JP2009230638A Pending JP2010045816A (ja) 2001-03-08 2009-10-02 ビデオ符号化における中間画素高精度高速探索を実現する装置及び方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2002570523A Expired - Lifetime JP4739651B2 (ja) 2001-03-08 2002-03-08 ビデオ符号化における中間画素高精度高速探索を実現する装置及び方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2009230638A Pending JP2010045816A (ja) 2001-03-08 2009-10-02 ビデオ符号化における中間画素高精度高速探索を実現する装置及び方法

Country Status (4)

Country Link
US (3) US20020172288A1 (ja)
JP (3) JP4739651B2 (ja)
AU (1) AU2002240754A1 (ja)
WO (1) WO2002071741A2 (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8284844B2 (en) 2002-04-01 2012-10-09 Broadcom Corporation Video decoding system supporting multiple standards
US20040146108A1 (en) * 2003-01-23 2004-07-29 Shih-Chang Hsia MPEG-II video encoder chip design
NO319629B1 (no) * 2003-11-28 2005-09-05 Tandberg Telecom As Fremgangsmate for korrigering av interpolerte pikselverdier
CN100377599C (zh) * 2004-09-03 2008-03-26 北京航空航天大学 一种快速亚像素运动估计方法
US7751478B2 (en) 2005-01-21 2010-07-06 Seiko Epson Corporation Prediction intra-mode selection in an encoder
US7567294B2 (en) * 2005-03-28 2009-07-28 Intel Corporation Gradient adaptive video de-interlacing
US7830961B2 (en) 2005-06-21 2010-11-09 Seiko Epson Corporation Motion estimation and inter-mode prediction
US8160160B2 (en) * 2005-09-09 2012-04-17 Broadcast International, Inc. Bit-rate reduction for multimedia data streams
US8170102B2 (en) 2005-12-19 2012-05-01 Seiko Epson Corporation Macroblock homogeneity analysis and inter mode prediction
US7843995B2 (en) 2005-12-19 2010-11-30 Seiko Epson Corporation Temporal and spatial analysis of a video macroblock
US9307122B2 (en) * 2006-09-27 2016-04-05 Core Wireless Licensing S.A.R.L. Method, apparatus, and computer program product for providing motion estimation for video encoding
KR101107254B1 (ko) * 2007-01-25 2012-01-20 삼성전자주식회사 인접 블록의 움직임 벡터를 이용한 움직임 벡터 추정 방법및 그 장치
US8363727B2 (en) * 2008-09-30 2013-01-29 Microsoft Corporation Techniques to perform fast motion estimation
CN101867815B (zh) * 2010-04-30 2011-09-14 西北工业大学 快速小数像素分级搜索方法
EP2424243B1 (en) * 2010-08-31 2017-04-05 OCT Circuit Technologies International Limited Motion estimation using integral projection
US10045046B2 (en) 2010-12-10 2018-08-07 Qualcomm Incorporated Adaptive support for interpolating values of sub-pixels for video coding
US20120163460A1 (en) * 2010-12-23 2012-06-28 Qualcomm Incorporated Sub-pixel interpolation for video coding
US8483489B2 (en) 2011-09-02 2013-07-09 Sharp Laboratories Of America, Inc. Edge based template matching
SG11201400429RA (en) 2011-09-08 2014-04-28 Paofit Holdings Pte Ltd System and method for visualizing synthetic objects withinreal-world video clip
WO2015183194A1 (en) 2014-05-30 2015-12-03 Paofit Technology Pte Ltd Systems and methods for motion-vector-aided video interpolation using real-time smooth video playback speed variation
EP3023938A1 (en) 2014-11-21 2016-05-25 Thomson Licensing Method and apparatus for tracking the motion of image content in a video frames sequence using sub-pixel resolution motion estimation
US9704298B2 (en) 2015-06-23 2017-07-11 Paofit Holdings Pte Ltd. Systems and methods for generating 360 degree mixed reality environments
WO2017142736A1 (en) * 2016-02-19 2017-08-24 Carrier Corporation Cloud based active commissioning system for video analytics
CN106658024B (zh) * 2016-10-20 2019-07-16 杭州当虹科技股份有限公司 一种快速的视频编码方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06105970B2 (ja) 1988-03-14 1994-12-21 松下電工株式会社 動き補償方法
US6104439A (en) * 1992-02-08 2000-08-15 Samsung Electronics Co., Ltd. Method and apparatus for motion estimation
KR950014862B1 (ko) * 1992-02-08 1995-12-16 삼성전자주식회사 움직임추정방법 및 그 장치
US6101313A (en) * 1992-06-29 2000-08-08 Sony Corporation High efficiency encoding and decoding of picture signals and recording medium containing same
JP2636674B2 (ja) * 1993-05-25 1997-07-30 日本電気株式会社 動画像の動きベクトル検出装置
DE4342305A1 (de) * 1993-12-11 1995-06-29 Thomson Brandt Gmbh Verfahren zur hierarchischen Bewegungsschätzung in einem Fernsehsignal
JPH08265770A (ja) * 1995-03-20 1996-10-11 Sony Corp 高能率符号化方法、高能率符号化装置、記録再生装置及び情報伝送システム
KR100226684B1 (ko) * 1996-03-22 1999-10-15 전주범 반화소 움직임 추정장치
JP3539835B2 (ja) 1997-03-04 2004-07-07 三菱電機株式会社 ブロックマッチング探索方法およびその方法を用いた装置
US6011870A (en) * 1997-07-18 2000-01-04 Jeng; Fure-Ching Multiple stage and low-complexity motion estimation for interframe video coding
KR100226722B1 (ko) * 1997-07-30 1999-10-15 구자홍 동영상 움직임 벡터 추정 방법
US6118901A (en) * 1997-10-31 2000-09-12 National Science Council Array architecture with data-rings for 3-step hierarchical search block matching algorithm
US6332002B1 (en) * 1997-11-01 2001-12-18 Lg Electronics Inc. Motion prediction apparatus and method
JP2000253407A (ja) 1999-02-26 2000-09-14 Matsushita Electric Ind Co Ltd 動きベクトル検出方法および画像符号化方法
JP2000308064A (ja) * 1999-04-22 2000-11-02 Mitsubishi Electric Corp 動きベクトル検出装置
JP2001251632A (ja) * 1999-12-27 2001-09-14 Toshiba Corp 動きベクトル検出方法および装置並びに動きベクトル検出プログラム
US6757330B1 (en) * 2000-06-01 2004-06-29 Hewlett-Packard Development Company, L.P. Efficient implementation of half-pixel motion prediction

Also Published As

Publication number Publication date
US7792191B2 (en) 2010-09-07
WO2002071741A8 (en) 2003-10-30
US20020172288A1 (en) 2002-11-21
JP2004526363A (ja) 2004-08-26
US20040196909A1 (en) 2004-10-07
WO2002071741A3 (en) 2002-10-31
AU2002240754A1 (en) 2002-09-19
JP4739651B2 (ja) 2011-08-03
JP2010045816A (ja) 2010-02-25
US20110064138A1 (en) 2011-03-17
WO2002071741A2 (en) 2002-09-12

Similar Documents

Publication Publication Date Title
JP2009027744A (ja) ビデオ符号化における中間画素高精度高速探索を実現する装置及び方法
JP3753578B2 (ja) 動きベクトル探索装置および方法
RU2251820C2 (ru) Экстраполяция вектора движения для перекодировки видеопоследовательности
KR100648596B1 (ko) 움직임 벡터를 획득하기 위한 방법 및 움직임 추정 시스템과, 컴퓨터-판독가능 매체와, 디지털 비디오 데이터 프레임을 변환하기 위한 방법 및 시스템
JP4528441B2 (ja) ブロック整合法及び統合投射法を用いた階層的動き評価処理及び装置
JP4572010B2 (ja) マスクおよび丸め平均値を使用したオブジェクトベースの符号化システムのためのスプライト生成に関する方法
US8218638B2 (en) Method and system for optical flow based motion vector estimation for picture rate up-conversion
EP0637894B1 (en) Apparatus and method for detecting motion vectors to half-pixel accuracy
JP3836559B2 (ja) ディジタルビデオ符号化器における動き推定方法
US20100135398A1 (en) Method for determining filter coefficient of two-dimensional adaptive interpolation filter
US9118927B2 (en) Sub-pixel interpolation and its application in motion compensated encoding of a video signal
WO2003024116A1 (en) Motion estimation and/or compensation
KR20010006292A (ko) 비디오 화상 코딩 장치 및 방법
KR100246167B1 (ko) 듀얼프라임 움직임 추정시스템 및 방법
US20030161400A1 (en) Method and system for improved diamond motion search
EP1472881B1 (en) Unit for and method of estimating a current motion vector
US6996180B2 (en) Fast half-pixel motion estimation using steepest descent
EP1386486B1 (en) Detection and proper interpolation of interlaced moving areas for mpeg decoding with embedded resizing
US7129987B1 (en) Method for converting the resolution and frame rate of video data using Discrete Cosine Transforms
KR100926752B1 (ko) 동영상 부호화를 위한 미세 움직임 추정 방법 및 장치
JP5011854B2 (ja) 高解像度画像処理装置
JPH09502840A (ja) テレビ画像サブバンド両立式符号化用エンコーダ/デコーダ及びツリー構造による階層的運動符号化へのその応用
KR100240620B1 (ko) 양방향의 반화소 움직임 추정을 위한 대칭 탐색 윈도우를 형성하는 방법 및 장치
JP2937134B2 (ja) 動きベクトル探索方法
KR100657714B1 (ko) 3차원 스캐닝을 이용한 영상데이터 부호화 방법

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081104

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090204

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090209

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090304

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090309

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090403

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090408

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090507

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090602