JP2009533009A - 電子ビデオ画像の安定化 - Google Patents

電子ビデオ画像の安定化 Download PDF

Info

Publication number
JP2009533009A
JP2009533009A JP2009504491A JP2009504491A JP2009533009A JP 2009533009 A JP2009533009 A JP 2009533009A JP 2009504491 A JP2009504491 A JP 2009504491A JP 2009504491 A JP2009504491 A JP 2009504491A JP 2009533009 A JP2009533009 A JP 2009533009A
Authority
JP
Japan
Prior art keywords
motion
statistics
macroblock
frame
motion vector
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.)
Withdrawn
Application number
JP2009504491A
Other languages
English (en)
Inventor
ナガラジ、ラグハベンドラ・シー.
マラヤス、ナレンドラナス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2009533009A publication Critical patent/JP2009533009A/ja
Withdrawn 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/527Global motion vector estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • H04N23/6811Motion detection based on the image signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/683Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Abstract

この開示は、撮像装置およびビデオ装置のための電子ビデオ画像安定化技術を記載する。この技術は、フレームの個々のマクロブロックについての動き統計および空間統計を決定すること、並びにマクロブロックの各々の統計に基づいて、フレームについてのグローバルな動きベクトルを決定することを含んでいる。一つの実施形態において、電子画像安定化を行う方法は、画像のフレーム内の複数のマクロブロックの各々について空間予測を行って、マクロブロックの各々についての空間統計を得ることと、複数のマクロブロックの各々について動き予測を行って、マクロブロックの各々についての動き統計を得ることと、マクロブロックの各々の空間統計および動き統計を一体化して、フレームについてのグローバルな動きベクトルを決定することと、グローバルな動きベクトルに従って、画像を参照窓に対してオフセットすることを含んでいる。
【選択図】 図4

Description

関連出願
この出願は、2006年4月6日に提出された米国仮出願第60/790,514号の利益を主張するものであり、その全体の内容を本明細書の一部として本願に援用する。
この開示はビデオ処理に関し、特に、電子ビデオアプリケーションにおける電子画像安定化のための技術に関する。
背景
撮像装置はより軽く且つより小さくなってきており、斯かる装置により捕捉された画像は、偶然の揺動による品質劣化を受け易い。静止画像捕捉において、揺動はぼやけた画像をもたらす可能性がある。ビデオ補足において、揺動は、ビデオ画像における揺れまたはジッタを生じる可能性がある。揺れおよびジッタは、人間の視覚システムが該ビデオ内の興味ある領域またはオブジェクトに焦点を結び、且つ集中することを困難にする可能性がある。揺動がビデオにおける本来の動きと組み合わさると、この悪影響が更に悪化する可能性がある。何れの場合にも、ビデオまたは画像を鑑賞する体験の質が低減される。
画像安定化システムは、より良好な画像品質を生じるように、揺動について画像を補償するように試みる。画像安定化システムは、一般に三つの主要なカテゴリー、即ち、光学的画像安定器(OIS)、機械的画像安定器(MIS)、および電子的画像安定器(EIS)に入る。OISシステムは、画像がセンサに到達する前にそれを変形する(morph)調節可能なレンズを用い、該レンズは外部の動きセンサによって制御される。MISシステムは、カメラによって捕捉された画像ではなく、全体のカメラを安定化する。特に、MISシステムは、円滑な動きを維持するために、典型的にはカメラの重力の中心、釣合いシステム、およびカメラ操作者の身体を使用する。
EISシステムは、捕捉された画像を変更するために信号処理アルゴリズムを用いる。幾つかのEISシステムは多くの状況において充分に働くが、本来の動きを望ましくない揺動から区別する能力がないという欠点を有する。ズームEISには、捕捉された画像のサイズを増大すること、次いで画像内でズーミングして、揺動により生じた動きを補償する僅かに小さい画像を選択することが含まれる。オーバーサイズEISは、必要な解像度よりも僅かに大きな画像を捕捉することと、揺動により生じた動きを補償するために該オーバーサイズの画像内で選別することを含んでいる。
概要
この開示は、ビデオ撮像能力を備えた装置のために有用な、電子画像安定化技術を記述する。この開示に記載される技術は、捕捉されたシーンにおいて生じる装置の望ましくない揺動と本来の動きとを効果的に区別する。動作において、ビデオシーンにおけるビデオフレームは、複数の重ならないマクロブロックに分割される。空間統計および動き統計の計算に際して、各マクロブロックについての動きベクトルが決定される。該動きベクトルは、当該ビデオシーケンスにおけるもう一つのフレームの対応するマクロブロックに対する、当該マクロブロックの動きを示す。空間統計は、当該フレーム内におけるマクロブロックの平均および分散を示す。
マクロブロックについての空間および動き統計は、当該フレームについてのグローバルな動きベクトルを得るために一体化される。安定化は、揺動を補償するために、グローバルな動きベクトルに基づくフレームに対するオフセットの適用を含んでいる。例えば、グローバルな動きベクトルは、揺動を補償する僅かに小さい画像を選択するように、オーバーサイズの画像内で選別するために使用することができる。フレームを符号化する目的で既に利用可能な空間統計および動き統計は、電子画像安定化をサポートするためにも使用されてよい。このように、空間統計および動き統計はまた、揺動および本来の動きの間を識別する上でも有効な、効率的な安定化技術をサポートする。
一つの実施形態において、この開示は、ビデオフレーム内のマクロブロックのための空間統計を発生させる空間予測モジュールと、前記ビデオフレーム内のマクロブロックのための動き統計を発生させる動き予測モジュールと、前記フレームのためのグローバルな動きベクトルを決定するために、前記空間統計および前記動き統計を一体化させる動き一体化モジュールと、前記グローバルな動きベクトルに基づいて、前記マクロブロックにより定義される画像に対してオフセットを適用する安定化モジュールとを具備してなる装置を提供する。
もう一つの実施形態において、本開示は、電子画像安定化を実行する方法であって、ビデオフレーム内のマクロブロックについての空間統計を発生させることと、前記ビデオフレーム内のマクロブロックについての動き統計を発生させることと、前記空間統計および前記動き統計を一体化させて、前記フレームについてのグローバルな動きベクトルを決定することと、前記グローバルな動きベクトルに基づいて、前記マクロブロックにより定義される画像に対してオフセットを適用することとを含んでなる方法を提供する。
もう一つの実施形態において、本開示は、電子画像安定化を行うための装置であって、ビデオフレーム内のマクロブロックについて空間統計を発生させるための手段と、前記ビデオフレーム内のマクロブロックについて動き統計を発生させるための手段と、前記空間統計および動き統計を一体化させて、前記フレームについてのグローバルな動きベクトルを決定するための手段と、前記グローバルな動きベクトルに基づいて前記マクロブロックにより定義される画像に対してオフセットを適用するための手段とを具備してなる装置を提供する。
ここに記載したこれらの技術および他の技術は、ハードウエア、ソフトウエア、ファームウエア、またはこれらの何れかの組合せにおいて実施されてよい。ソフトウエアにおいて実施されるのであれば、該ソフトウエアは、デジタル信号プロセッサ(DSP)または他のタイプのプロセッサにおいて実行されてよい。該技術を実行するソフトウエアは、最初はコンピュータが読み取り可能な媒体に保存されてよく、捕捉された画像の効果的な画像安定化のためにDSPの中にロードされて実行される。
従って、この開示はまた、命令を含んでなるコンピュータ読み取り可能な媒体であって、前記命令は装置において実行されたときに、該装置に対して、前記マクロブロックの各々についての空間統計を得るために、画像フレーム内の複数のマクロブロックの各々について空間予測を実行させ、また前記マクロブロックの各々についての動き統計を得るために、前記複数のマクロブロックの各々について動き予測を実行させる媒体を想定している。該コンピュータ読取り可能な媒体は更に、装置において実行されたときに、該装置に対して、前記フレームについてのグローバルな動きベクトルを決定するために前記マクロブロックの各々の空間統計および動き統計を一体化させ、また前記グローバルな動きベクトルに従って前記画像を参照ウインドウに対してオフセットさせる命令を含んでいる。
添付の図面および以下の説明において、本発明の1以上の実施形態の詳細を記載する。本発明の他の特徴、目的および利点は、この説明および図面、並びに特許請求の範囲から明らかになるであろう。
詳細な説明
この開示に従って、スケーラブルな電子画像安定化技術を実施し得る例示的な装置2のブロック図である。装置2は、ビデオデータを符号化できるデジタルビデオ処理装置の一部を形成してよい。該デジタルビデオ処理装置は、ビデオカメラのようなビデオ捕捉装置によって得られたビデオ、または以前に捕捉されたビデオを保存するビデオ保管資料を処理してよい。例えば、装置2は、デジタルビデオカメラ、ラップトップコンピュータ、デスクトップコンピュータ、携帯電話もしくはサテライト無線電話のような無線通信装置、パーソナルデジタルアシスタント(PDA)、またはデジタルビデオ能力を備えた何れかの装置の一部を形成してよい。ビデオ捕捉装置は、ビデオの品質を損なう望ましくない揺動の影響を受け易い可能性がある。動き予測は、画像の安定化のために使用することができる。しかし、動きは、ビデオ捕捉装置の意図しない揺動またはパンニング、ズーミング、チルティングまたは他の操作から生じる故意の運動、並びに捕捉されているシーンにおいて起きる実際の動きに起因して生じ得る。従って、効果的なビデオ安定化を提供するための動き予測の適用は、困難を伴う可能性がある。ここに開示される画像安定化技術は、意図した運動の存在を維持しながら、意図しない動きを補償してよい。
ビデオ処理装置4は、一連のビデオフレームにおける各ビデオフレームについてのグローバルな動きベクトルを決定することによって、電子ビデオ画像の安定化を提供するように動作する。ビデオ処理装置4は、更に詳細に説明するように、該グローバルな動きベクトルを使用して、揺動によって形成される画像の動きを補償する。このグローバルな動きベクトルは、以前のビデオフレームのようなもう一つのビデオフレーム内における画像に対する、現在のビデオフレーム内における画像の全体の動きを表す。
ビデオ処理装置4は、フレームを重ならないブロックに分解し、各ブロックに対して空間予測および動き予測を実行し、各ブロックについての空間統計および動き統計を決定することによってグローバルな動きベクトルを得る。幾つかの実施形態において、ビデオ処理装置4は、ビデオの符号化のために発生された空間統計および動き統計を使用してよい。ビデオ処理装置4は、該空間統計および動き統計に基づいて、前記ビデオフレームにおける各ブロックのための動きベクトルを発生してよい。
ビデオ処理装置4は、グローバルな動きベクトルを得るために、それぞれの個々のブロックについて得られた情報の全てを一体化させる。この方法において、ビデオ処理装置4は、例えば揺動に起因した偶発的な平行移動により生じた装置2の動きの出現を実質的に除去するために、捕捉されたビデオフレームを補償する。
ビデオ処理装置4は、生のビデオデータを保存し、かかるデータに対して種々のビデオ処理技術を実行してよい。ビデオ処理装置4は、デジタル信号プロセッサ(DSP)およびオンチップメモリーを含む「チップ組」を備えてよい。他の場合に、装置4はプロセッサ、ハードウエア、ソフトウエアまたはファームウエアの何れかの組合せを含んでよい。また、装置4は、一つの集積化されたチップを具備してもよい。
図1の例において、ビデオ処理装置4は、ローカルメモリー8、メモリーコントローラ10、およびビデオ処理ユニット6を含んでいる。ビデオ処理ユニット6は、フロントエンド処理ユニット18を含んでおり、また符号化ユニット19を含んでよい。フロントエンド処理ユニット18は、この開示に記載するビデオ画像安定化に加えて、フィルタリング、モザイク除去、レンズロールオフ訂正、スケーリング、色補正、色変換、ノイズ低減フィルタリング、空間フィルタリング、および他の操作を実行してよい。幾つかの実施形態において、フロントエンド処理ユニット18はこの開示の技術を実行してよく、また
以下で更に詳細に述べるように、複数の画像処理モジュールを含んでよい。他の実施形態において、フロントエンド処理ユニット18および符号化ユニット19の各々は、この開示の技術を実行する1以上のビデオ処理モジュールを含んでよい。幾つかの場合に、フロントエンド処理ユニット18は、符号化ユニット19と共同してよい。例えば、フロントエンド処理ユニット18は、空間統計および動き統計を得、これらを符号化の目的で符号化ユニット19に提供し、それによって斯かる統計のコンピュータ処理の重複を回避してよい。その代りに、空間統計および動き統計またはそれらの一部を、符号化ユニット19内でのビデオ符号化、およびフロントエンド処理ユニット18内での画像安定化の両方のために使用してよい。
符号化ユニット19は、装置4が、例えば圧縮された保存、または有線もしくは無線通信媒体上での遠隔装置への送信のために、ビデオストリームにおいて得られるビデオを符号化するように装備されるときに提供されてよい。この場合に、符号化ユニット19は、ビデオ符号化を実行してよく、これはフレーム間圧縮またはフレーム内圧縮のような1以上のビデオ圧縮技術を適用してよい。例えば、符号化ユニット19は、時間的またはフレーム間のデータ相関を利用して、フレーム間圧縮を提供するために、動き予測および動き補償技術を実施する。その代りに、またはそれに加えて、符号化ユニット19は、空間予測またはフレーム内データ補正を利用してフレーム内圧縮を提供するために、空間予測およびイントラ予測技術を実行してよい。幾つかの実施形態において、符号化ユニット19は、フロントエンド処理ユニット18によって得られた空間統計および動き統計を使用して、例えばコンピュータ処理の重複を低減してよい。或いは、符号化ユニット19は、それ自身の動き予測、動き補償および空間予測技術を、フロントエンド処理ユニットにより生じたビデオに適用してよい。
一般に、符号化ユニット19はMPEG−1、MPEG−2、MPEG−4、ITUH.261、ITUH.263、ITUH.264のような種々のビデオ符号化標準の何れかに従って、ビデオ符号化を適用してよい。符号化ユニット19はまた、静止画像を圧縮するために使用されてよい。符号化ユニット19は、組合されたエンコーダ/デコーダ(CODEC)の1部を形成してよい。CODECは、ハードウエア、ソフトウエア、ファームウエア、DSP、マイクロプロセッサ、アプリケーション特異的集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、個別のハードウエアコンポーネント、またはこれらの種々の組合せにおいて実施されてよい。種々のデジタルフィルタおよびハードウエアコンポーネントが、符号化および復号の両方をサポートするために提供されてよい。
ローカルメモリー8は、一般には生のビデオデータを保存し、またビデオ処理ユニット6によって実行される何れかの処理に従って処理されたビデオデータを保存してもよい。例えば、メモリー8はまた、符号化ユニット19によって発生された符号化されたビデオデータを保存してよい。メモリーコントローラ10は、ローカルメモリー8内でのメモリー組織化を制御する。メモリーコントローラ10はまた、ローカルメモリー8からビデオ処理ユニット6へのメモリーの読込み、およびビデオ処理ユニット6からローカルメモリー8への書き戻しを制御する。
装置2は、ビデオを捕捉するためのビデオ捕捉装置12を含んでよい。例えば、ビデオ捕捉装置12は、モバイル電話のようなもう一つの装置内に組込まれて、所謂カメラ電話またはビデオ電話を形成するビデオカメラであってよい。或いは、ビデオ捕捉装置12は、有線もしくは無線媒体、例えばユニバーサルシリアルバス(USB)もしくはIEEE1392接続によって直接に、またはフラッシュメモリーカード、磁気ハードドライブ、もしくは他の媒体のような取外し可能な保存媒体の交換によって間接的に、ビデオ処理装置へビデオを提供するように結合されるカメラであってよい。ビデオ捕捉装置12は、一組の画像センサを具備してよく、これはそれぞれのセンサの表面に、例えばベイヤーパターンで配置された色フィルタアレイ(CFA)を含んでいる。
ビデオ捕捉装置12にビデオ処理装置4が組込まれるとき、ファインダ画像、即ち、比較的小さいフォーマットで低解像度のディスプレーを介して、実質的にリアルタイムでユーザに提示される画像の画像処理における待ち時間を回避するために、画像センサはビデオ処理ユニット6に直接結合されてよい。しかし、他のタイプの画像センサもまた、ビデオデータを捕捉するために使用できるであろう。画像捕捉装置12を実現するために使用できるであろう他の例示的センサは、相補型金属酸化物半導体(CMOS)センサ素子、電荷結合装置(CCD)センサ素子等のようなソリッドステートセンサ素子のアレイを含んでいる。
ビデオ捕捉装置12によって得られるビデオは、望ましくない揺動を補償する画像安定化を提供するために、この開示に従って処理される。ビデオ捕捉装置12は、ビデオ符号化のために必要なサイズよりも大きなサイズのビデオフレームを捕捉してよい。この方法において、捕捉されたビデオフレームは、電子画像安定化を可能にするための過大な領域を提供する。特に、より大きな捕捉されたビデオフレーム内の望ましい画像は、揺動を補償するためにグローバルな動きベクトルに基づいて、垂直方向、水平方向またはその両方に移動される。
ビデオ捕捉装置12の代替として、ビデオ処理装置4は、以前に捕捉されたビデオを保存するビデオ保管資料から得たビデオを処理してよい。従って、画像安定化は、画像を捕捉したときに直ちに、実質的にリアルタイムで該画像に適用されてよく、或いは、以前に捕捉されたビデオに対して後処理ステップとして適用されてよい。何れの場合にも、画像の安定化は、符号化の前にビデオにおける揺動を補償して、最終的にユーザが視認するビデオの品質を向上する。ビデオが捕捉されると共に直ちに画像安定化を適用することは、ファインダ画像、並びに最終的な生ビデオまたは符号化されたビデオの品質を向上するために望ましいかもしれない。
装置2は、リアルタイムビデオをシミュレートするために、画像捕捉装置12によりサンプリングされたファインダ画像のリアルタイムシーケンスを表示するディスプレー21を含んでよい。これらの画像は比較的小さい幅でよい。従って、このような小さい画像が捕捉されるときに、それらはライン毎にフロントエンド処理ユニット18の中に直接読み込まれてよい。処理の後、ファインダ画像は、ローカルメモリー8または外部メモリー14に書き込まれてよい。次いで、この処理された画像は、ユーザへの提示のためにディスプレー21に送られる。ディスプレー21はまた、静止画像をフロントエンド処理ユニット18によって処理した後に、斯かる静止画像を表示するために使用されてよい。しかし、幾つかの場合に、静止画像は装置2によって表示されることなく、処理および保存されてよい。静止画像の捕捉に続いて、ローカルメモリー8が生データを保存してよい。
幾つかの場合に、装置2は複数のメモリーを含んでよい。例えば、装置2は外部メモリー14を含んでよく、これは典型的には比較的大きなメモリー空間を備えている。外部メモリー14は、例えば、ダイナミック・ランダム・アクセスメモリー(DRAM)、またはFLASHメモリーを含んでなるものでよい。他の例において、外部メモリー14は、不揮発性メモリーまたは他のタイプのデータ保存ユニットを含んでなるものであってよい。外部メモリー14とは対照的に、ローカルメモリー8は、より小さく且つより迅速なメモリー空間を備えてなるものでよいが、この開示は必ずしもこの点において制限されるものではない。例として、ローカルメモリー8は、同期ダイナミック・ランダム・アクセスメモリー(SDRAM)を含んでなるものであってよい。
如何なる場合にも、メモリー14および8は単に例示的なものに過ぎず、これと同じメモリーに組合されてよく、または多くの他の構成で実施されてもよい。一つの実施形態において、ローカルメモリー8は外部メモリー14の1部を形成し、典型的にはSDRAMである。この場合、メモリー8および14の両者共に、何れもビデオ処理ユニット6と共に「オンチップ」に位置していないという意味において「外部的」である。従って、画像処理ユニット6のラインバッファだけが「オンチップ」メモリーである。
装置2はまた、幾つかの実施形態では、処理されたビデもしくは符号化されたビデオ、
または他の情報を、例えば有線もしくは無線の通信媒体を介してもう一つの装置に送信するための送信機(図示せず)を含んでいる。また、幾つかの実施形態において、装置2は、処理されたビデオもしくは符号化されたビデオ、または他の情報を、もう一つの装置から受信するための受信機を含んでよい。ローカルメモリー8、ディスプレー21および外部メモリー14(および所望であれば他のコンポーネント)は、通信バス15を介して接続されることができる。多くの他の素子もまた装置2に含めることができるが、単純化および図示を容易にするために、図1には具体的には示されていない。ここに記載した技術は種々の他のアーキテクチャを用いて実施されてよいので、図1に示されたアーキテクチャは単に例示的なものに過ぎない。
図2は、図1のフロントエンド処理ユニット18の一例を、この開示の原理に従って更に詳細に示すブロック図である。図2に示すように、フロントエンド処理ユニット18は、空間予測モジュール22および動き予測モジュール24を含んでよい。加えて、フロントエンド処理ユニット18は、動き一体化モジュール26、動き補償モジュール28、統計メモリー27、およびオリジナルフレームメモリー29を含んでよい。フロントエンド処理ユニットは、ビデオフレームを重ならないマクロブロックに分割する。空間予測モジュール22および動き予測モジュール24は両者共に、フレームのマクロブロックの各々を、対応するもの、即ち、もう一つのフレームの最も密接にマッチングするマクロブロックに対して分析して、それぞれ空間統計および動き統計を得る。
統計メモリー27は、この空間統計および動き統計を保存する。オリジナルフレームメモリー29は、ビデオ捕捉装置により得られたビデオフレームを保存する。オリジナルビデオフレームメモリー29に保存されたビデオフレームは、望ましくない揺動を含む可能性がある。動き一体化モジュール26は、空間予測モジュール22および動き予測モジュール24によって発生された空間統計および動き統計に基づいて、グローバルな動きベクトルを発生する。動き補償モジュール28は、グローバルな動きベクトルを使用して、受信されたビデオフレーム内の画像に対してオフセットを適用し、それによって揺動を補償する。
図3は、スケーラブルな電子画像安定化を実行するための、図2の処理ユニットにおける種々のコンポーネントの動作を示すブロック図である。図3に示すように、空間予測モジュール22、動き予測モジュール24、統計メモリー27、オリジナルフレームメモリー29は、電子画像安定化(EIS)マクロブロック(MB)ループの一部を形成する。このEISMBループは、揺動画像を処理して、空間統計および動き統計を生じさせる。動き一体化モジュール26は統計メモリー27から統計を受信して、動き補償モジュール28によって適用するためのグローバルな動きベクトルを発生し、安定化された画像を生じる。
空間予測モジュール22は、現在のビデオフレームからの個々の重ならないマクロブロックに対して空間予測を実行する。空間予測は、該フレームの特徴、例えばテクスチャの指標を提供する。一つの実施形態において、空間予測を実行することは、当該マクロブロック内の画素に関連した輝度値の平均および分散を測定することを含んでいる。空間予測モジュール22は、ローカルメモリー8の1部を形成してよい統計メモリー27における空間統計として、前記平均および分散を保存する。
動き予測モジュール24は、個々の重ならないマクロブロックに対して動き予測を実施する。動き予測モジュール24は、現在のフレームにおける各マクロブロックについての動きベクトルを決定し、これは以前のフレームにおけるその位置からの当該マクロブロックの変位を表す。換言すれば、該動きベクトルは、現在のマクロブロックに最も密接に適合することが見出された以前のフレームにおけるマクロブロックに対する、現在のフレームにおけるマクロブロックの変位を指示する。動き予測ユニット24は、現在のフレームにおける各マクロブロックを、以前のフレームでのその周囲領域におけるマクロブロックと比較してベストマッチを見出すことによって、この機能を実行する。また、動き予測モジュール24は、現在のフレームにおける所定のマクロブロックと、以前のフレーム内の調査領域からの候補マクロブロックとの間の差分絶対値和(SAD)を決定してよい。動き予測モジュール24は、動きベクトルおよびSADを、ローカルメモリー8の中に動き統計として保存する。
モジュール22,24によって与えられる空間予測および動き予測の操作は、一般的には、MPEG−1、MPEG−2、MPEG−4、ITUH.261、ITUH.263、またはITUH.264に従う符号化のような、ビデオ符号化において行われる同様の操作と同じである。現在のフレームの個々の重ならないマクロブロックの各々についての空間統計および動き統計が、統計メモリー27の中に保存されたら、運動一体化モジュール26が個々の動きベクトルを一つのグローバルな動きベクトルに一体化し、該ベクトルは、揺動によって生じる動きを補償するために使用されるであろう。動き一体化モジュール26は、以下で述べる非線型一体化関数を用いてよい。例えば、一つの実施形態において、動き一体化モジュール26は、可能な動きベクトルの各々に対応したビンを有する二次元(2D)ヒストグラムを作成し、最大値を有するヒストグラムビンに関連した動きベクトルを、グローバルな動きベクトルとして選択する。動き一体化モジュール26がグローバルな動きベクトルを計算し終わったら、このベクトルによって、動き補償モジュール28が現在の画像を全体としてオフセットさせる。ここでも、現在の画像は、画像安定化を可能にする目的のために過大なサイズにされた大きな画像内の領域に対応してよい。即ち、この大きな画像内で、より小さい画像を垂直方向、水平方向またはその両方に移動させることによるものである。次いで、この移動された画像は、ビデオ符号化のような更なる処理ンためにサンプリングされる。
幾つかの実施形態において、図2および図3の例示的フロントエンド処理ユニット18に示された1以上の画像処理モジュールは、フロントエンド処理ユニット18以外の装置の場所に存在してもよい。例えば、空間予測モジュール22および動き予測モジュール24は、画像安定化およびビデオ符号化が、空間予測および動き予測のための共通のハードウエア、ファームウエア、および/またはソフトウエアに依拠するように、符号化ユニット19内に位置してよい。加えて、フロントエンド処理ユニット18は、図示していない他の画像処理モジュールを含んでもよい。例えば、フロントエンド処理ユニット18の追加モジュールには、二次元フィルタリングモジュール、モザイク除去モジュール、レンズロールオフ補正モジュール、スケーリングモジュール、色補正モジュール、色変換モジュール、ノイズ低減フィルタリングモジュール、空間フィルタリングモジュールまたは他の種類のモジュールが含まれてよい。
図4は、本開示の技術を実施する際の、図1の装置2の例示的動作を示すフローチャートである。画像捕捉装置12が、一連のフレームにおけるビデオフレームを形成するビデオ画像を捕捉する(30)。画像処理ユニット6が、この捕捉された画像を受取る。フロントエンド処理ユニット18は、画像の現在のフレームをマクロブロックに分割する(32)。例えば、フロントエンド処理ユニット18は、該フレームを、16×16の画素アレイを含んでなるマクロブロックに分割してよい。或いは、マクロブロックは、より小さいかまたはより大きいサイズ、例えば8×8、4×4、8×16、4×8等を有してよい。従って、「マクロブロック」の用語は、ビデオフレーム内の画素のアレイを指称するものである。このようなアレイのサイズは、固定式または可変式であってよく、また或る範囲のサイズを有していてもよい。マクロブロック内の画素は、全体としてマクロブロックに適用される一組の統計を与えるように解析されてよい。
空間予測モジュール22は、現在のフレーム(C)からの個々の重ならないマクロブロック(cij∈C)の組に対して空間予測を実行する(34)。空間予測モジュール22は、マクロブロックの平均および分散を測定することによって、マクロブロックの空間予測を実行してよい。一実施形態において、空間予測モジュール22は、次式に従って平均および分散を測定する:
Figure 2009533009
画像安定化の目的のためには示された単純な近似で充分なので、この実施形態においては、空間予測モジュール22は馴染みのある二乗近似を使用して分散を測定することはしない。しかし、他の実施形態においては二乗の合計が使用されてよい。空間予測モジュール22は、平均および分散を空間統計として、例えばローカルメモリー8の中に保存する(36)
動き予測モジュール24は、現在のフレームの個々の重ならないマクロブロックに対して動き予測を実行する。例えば、動き予測モジュール24は、現在のフレームにおける各マクロブロックについての動きベクトルを決定し、これは以前のフレームにおけるその位置、即ち、以前のフレームにおいて密接にマッチするマクロブロックの位置からの当該マクロブロックの変位を表す。動き予測モジュール24は、現在のフレームにおける各マクロブロックを、以前のフレームにおけるその周囲領域と比較することによってこの機能を実行し、ベストマッチを見出す。例えば、各マクロブロックは、以前のフレームの調査領域Sにおいて調査される。該調査領域のサイズ(SX,SY)は、当該技術が実施されるプラットホームおよびソースビデオに依存して変化してよい。
動き予測モジュール24は、動きベクトル予測子
Figure 2009533009
または(0,0)ベクトルの回りで、調査領域中心
Figure 2009533009
を適応的に選択する。動き予測モジュール24は、潜在的な調査領域中心の近隣における動きの信頼性に基づいて、調査領域中心として何れのベクトルを選択するかを決定する。これは、spatiotemporal_rel_idxijによって表され、その計算は次の節で示される。動きベクトル予測子
Figure 2009533009
は、下記に示すように、隣接するマクロブロックの動きベクトルに基づいて計算される:
Figure 2009533009
動き予測モジュール24は、次のようにして、調査領域を適合的に選択する:
Figure 2009533009
上記ステップの結果は、調査が行われた現在のフレームにおける所定のマクロブロックについてのベストマッチを生じる動きベクトル
Figure 2009533009
である。
一致の範囲はまた、定量的測定(尺度)で記述されてもよい。一実施形態において、動き予測モジュール24は、定量的尺度として、所定のマクロブロック(cij∈C)と調査領域(s∈S)からの候補マクロブロックとの間の差分絶対値和(SAD)(sadij)を決定する。該SADは、下記の式によって与えられる:
Figure 2009533009
動き予測モジュール24は、当該マクロブロックについての動きベクトルおよび当該マクロブロックについてのSADを、マクロブロック(cij∈C)についての動き統計として保存する。
フロントエンド処理ユニット18が、現在のフレームの個々の重ならないマクロブロック(cij∈C)の各々についての空間統計および動き統計を入手したら、動き一体化モジュール26は個々の動きベクトルを単一のグローバルな動きベクトルに一体化し、該ベクトルは揺動により生じた動きを補償するために使用されるであろう(42)。動き一体化モジュール26は、以下で述べる非線型一体化関数を用いてよい。一つの実施形態において、動き一体化モジュール26は、可能な動きベクトルの各々に対応するビンを有する2次元(2D)ヒストグラム(histogram(p,q))を構築する。しかし、動き一体化モジュール26は、個々の動きベクトルをグローバルな動きベクトルに一体化する他の方法を使用してもよい。この2Dヒストグラムの二つの次元は、フレームの水平方向および垂直方向に対応する。各ブロック(cij)の動きベクトル(mvij ,mvij )に対応するビンは、下記に定義するように、値/寄与(contributionij)を用いて更新される。
この寄与は、その関連の動きベクトル(mvij ,mvij )の信頼性を反映する。動き一体化モジュール26は、この目的のために、cijの空間的、時間的、および空間/時間的特長に基づいて、三つのタイプの信頼性指数:即ち、spatial_rel_idxij, temporal_rel_idxij, およびspatiotemporal_rel_idxij を計算する。動き一体化モジュール26は、分散ceijを使用して信頼性指数spatial_rel_idxijを計算し、これは以下のように固定スケール(0〜max_rel_idx)に正規化される:
spatial_rel_idxij = (varianceij − variance_offset)/variance_scale,
spatial_rel_idxij = MIN(max_rel_idx, MAX(0, spatial_rel_idxij)).
動き一体化モジュール26は、sadijを使用して信頼性指数temporal_rel_idxijを計算し、これは以下のように固定スケール(0〜max_rel_idx)に正規化される:
temporal_rel_idxij = (sadij − sad_offset)/sad_scale,
temporal _rel_idxij = MIN(max_rel_idx, MAX(0, temporal_rel_idxij)).
動き一体化モジュール26は、隣接するブロックの動きベクトルの均一性を好悪慮似いれて、信頼性指数信spatiotemporal_rel_idxijを計算する。動き一体化モジュール26はまた、この指数を下記のように固定スケール(0〜max_rel_idx)に正規化する:
Figure 2009533009
動き一体化モジュール26は、下記のようにして寄与(contributionij)を計算する:
Figure 2009533009
動き一体化モジュール26は、各ブロックcijについて、ヒストグラム(histogram(p,q))を下記のように更新する:
Figure 2009533009
動き一体化モジュール26は、最大値を有するヒストグラム位置をグローバルな動きベクトル(P,P)として選択する:
(Px, Py) = (p, q)|max histogram(p, q). (7)
動き一体化モジュール26がグローバルな動きベクトル(P,P)を計算したら、動き補償モジュール28が、このベクトルによって現在の画像を全体としてオフセットさせる(44)。次いで、該シフトされた画像は更なる処理のためにサンプリングされる。現在のフレームは、次のフレームのためのグローバルな動きベクトルを決定するために、参照フレームとして使用すべく保存されてよい。
図5は、大きな参照窓48内のグローバルな動きベクトル(P,P)に従う、例示的な現在の画像46のオフセットを示すブロック図である。現在の画像46は、垂直ディメンジョンIV水平ディメンジョンIHを有しており、また参照窓48は、垂直ディメンジョンRVおよび水平ディメンジョンRHを有している。フロントエンド処理ユニット18は、各連続するフレームについてのグローバルな動きベクトル(P,P)を計算し、各連続するフレームが、参照窓48内でグローバルな動きベクトルに従って移動されるようになっている。
図6は、例示フレーム50を示す図であり、ここでは領域52が、該フレームのマクロブロックのサブセットを含んでなるものである。図6は、領域52の例示パラメータを示しており、これは、ここに開示した技術のスケーラブルな複雑度を定義している。上記で説明した技術は、電子画像安定化を実行する際の資源の最小使用のための複雑度のスケーラビリティーを提供してよい。特に、フロントエンド処理ユニット18は、当該フレームのためのグローバルな動きベクトルを決定するために、該フレームの各々および全てのマクロブロックを使用する必要はない。その代りに、マクロブロックのサブセットの分析は、当該フレームのための適切な、グローバルな動きベクトルを生じてよい。例えば、上記で述べた例示的実施形態において、動き一体化を実行するステップは、フレーム50についてのグローバルな動きベクトルを見つけるために、2Dヒストグラムのピークを見つけることを必要とする。当該ブロックのサブセット(cij∈R)は、2Dヒストグラムにおけるピークを生じてよい。Rは、Cのサブセットである領域として定義される。
領域Rは、前記ピークが信頼性を持つために充分に大きくあるべきであり、また信頼性のある動きの領域を包含すべきである。以下のパラメータは、RをCの関数として定義するために用いられてよい。RegionStartRowは当該領域の出発行であり、ブロックの整数である。RegionStartColumnは当該領域の出発列であり、ブロックの整数である。RegionNumRowsは当該領域における行の数であり、ブロックの整数である。RegionNumColsは当該領域における列の数であり、ブロックの整数である。RegionRowDensityは当該領域における行の密度(パーセンテージで)であり、またRegionColDensityは当該領域における列の密度(パーセンテージで)である。幾つかの実施においては、100%のRegionColDensityを使用することが、ハードウエアの効率的使用のために好ましい。
特性と融通性の間の合理的なバランスの程度を維持するために、プログラム可能なハードウエアと共に、デジタル信号プロセッサ(DSP)または他の処理エンティティーを使用して、この開示の電子画像安定化技術を実施してよい。この構成において、DSPは種々のハードウエアコンポーネントのプログラミングおよび実行を制御する。次に、このアーキテクチャの一例を、画像安定化と共に説明する。
図7は、モバイル無線電話のような無線通信装置で使用するための、モバイルステーションモデム(MSM)プラットホームにおけるビデオコア54の一例を示すブロック図である。図1の例において、ビデオコア54はDSPからのみアクセス可能であり、プロセッサコアからはアクセス可能でない。ビデオコア54は、ビデオ符号化および復号の際の画素の動きのための電源効率的なソリューションを提供する;従って、ビデオコア54は、空間予測および動き予測のような、ここに開示する電子画像安定化技術の全ての画素集約的動作のために活用されてよい。ビデオ符号化のために必要とされる動作のサブセットだけが電子画像安定化のために必要とされるので、薄型バージョンのビデオコアだけを利用する必要がある。プロセッサコアまたはDSPの何れかが、画像安定化アルゴリズムの動き一体化の側面を収容してよい。
図7に示すように、ビデオコア54は、ビデオフロントエンド(VFE)56およびビデオバックエンド(VBE)58の間を仕切られてよい。一般にVFE56は、カメラまたはカムコーダをサポートするための機能および前処理動作を内包しており、またこれら動作を制御するためのフレキシブルなプロセッサ間インターフェースを含んでいる。VFE56の主要な仕事は、入ってくるビデオ入力データ60をリアルタイムで処理することである。VFE56はビデオ入力データ60を受信し、該データを処理して、コントローラ(図示せず)から受信されたコマンドおよび構成パラメータ25に基づいて、VBEのための許容可能なフォーマットのビデオ出力データを生じる。
例えば、VFE56は、電子画像安定化技術を使用して、ビデオ入力データ60を処理してよい。加えて、VFE56は、ディスプレーモジュール(図示せず)による表示に適した形態でビデオ表示データを生じるために、ビデオ入力データ60をフォーマットしてもよい。VFE56は、ビデオ出力データおよびビデオ表示データを、それぞれVBE58およびコントローラによるアクセスのために、ビデオメモリー(図示せず)の中に保存する。VFE56は、係属中のコマンドの状態を示すために、プロセッサ間インターフェースを介してステータス情報を提供する。VBE58は、ビデオデータを符号化または復号する何れかのソフトウエアアプリケーション、ハードウエアユニット等を含んでいてよい。より詳細に言えば、VBE58は、ビデオシーケンスのコード化されたビットストリームを発生するために、ビデオ出力データを利用してよい。
エンコーダとして動作するとき、VBE16はビデオ出力データを符号化し、該符号化されたビットストリームを、例えば送信機/受信機(図示せず)を介した無線通信のために、ビデオメモリー内にバッファーする。例えば、VBE16は、デジタルカメラのためのJPEG静止画像エンコーダ、デジタルカムコーダのためのMPEGビデオエンコーダなどを具備してよい。従って、VBEは、工業所有権に係るエンコーダもしくはデコーダであってよく、またはMPEG−1、MPEG−2、MPEG−4、ITUH.261、ITUH.263、ITUH.264および/または他の標準のような、1以上の種々のデータ圧縮標準に従ってビデオ出力データを処理してよい。
その代りに、またはそれに加えて、VBE58はデコーダとして動作してもよい。更に詳細に言えば、VBE58は、受信機/送信機からコード化されたビデオシーケンスのビットストリームを受信し、該ビットストリームを処理して、VFE56による処理および表示のための復号されたビデオシーケンスを生じてよい。VFE56およびVBE58は、ビデオ処理動作をトリガーするために制御信号を交換してよい。例えば、コントローラまたはVFE56は、VBE58による符号化動作をトリガーしてよい。デコーダとして動作するとき、コントローラまたはVBE58は、VFE56による動作をトリガーしてよい。FE56およびVBE58は、スタンドアローンのハードウエアまたはソフトウエアモジュール、例えばDSP62による実行のためのソフトウエアモジュール、またはそれらの組合せとして提供されてよい。
図8A〜図8Dは、図7のプラットホーム上で、この開示の画像安定化技術を実施するための実施スキームの例を示すブロック図である。図8Aは、MSM7Kプラットホーム上で画像安定化を実施するための一つのオプションを示すブロック図である。図8Aに示すように、プロセッサコア74は「符号化」コマンドを二回発し、1回は画像安定化のためであり、2回目はフレームを実際に符号化するためである。画像安定化相においては、DSP76およびビデオコア78は、フレームが符号化されたかのように同一の方法で実行される。この相においては、画像安定化をサポートするために、動き統計および空間統計がマクロブロック毎のベースでプロセッサコア74に逆送信される(sent back)。次いで、プロセッサコア74は、上記で述べた動き一体化技術を実施するであろう。次いで、プロセッサコア74により計算されたグローバルな動きベクトルは、次の相の間に逆プログラムされ(programmed back)、ここでは実際の符号化が行われる。
図8Bは、MSM7Kプラットホーム上で画像安定化を実施するためのもう一つのオプションを示すブロック図である。このオプションにおいて、プロセッサコア74は、上記で述べた電子画像安定化技術を適合的に制御する「画像安定化」コマンドを実施することだけを必要とする。プロセッサコア74は、フレームを符号化するための「符号化コマンド」を発する前に、「画像安定化」コマンドを発する。「画像安定化」コマンドは、DSP76に対して、フレームのサブセット、即ち、領域Rのみを符号化するように指令する。これは、この開示の電子画像安定化技術を実施するための、スケーラブルなインターフェースを可能にしてよい。残りのステップは、図8Aのステップと実質的に同一である。
図8Cは、MSM7Kプラットホーム上で画像安定化を実施するための更なるオプションを示すブロック図である。このオプションは、安定化モード(「stab」モード)として知られる新たな機能をDSP76上で実施することを必要とする。この安定化モードは、ビデオコア78のサブセットだけを実行させることを可能にする。特に、符号化のために必要な全ての動作を実行させるのではなく、画像安定化のための空間予測および動き予測をサポートするのに充分な動作のサブセットが実行されてよい。これは、画像安定化相の間に消費される時間を低減するのを補助することができる。残りのステップは、図8Bのステップと実質的に同一である。
図8Dは、図7のプラットホーム上で画像安定化を実施するための、更にもう一つのオプションを示すブロック図である。このオプションは、DSP76内において、アルゴリズムの動き一体化ステップを実施することを必要とする。これは、プロセッサコア74とDSP76の間に必要な通信の量(即ち、マクロブロック毎ベースでの動き統計および空間統計の通信)を最小化してよい。従って、プロセッサコア74は、フレーム当たり一つのコマンド(符号化および安定化の結合)を発する。DSP76は、動き一体化およびグローバルな動きベクトルの決定を含む画像安定化を実施し、次いで、グローバルな動きベクトルを考慮に入れながら当該フレームを符号化する。
図9は、この開示の技術が実施され得る例示的デジタルビデオ装置80を示すブロック図である。デジタルビデオ装置80は、ソース装置として動作してよく、該装置はビデオデータの符号化されたシーケンスを受信装置(図示せず)へと無線送信する。同様に、デジタルビデオ装置80は、デオデータを無線で受信および復号できる受信装置として動作してよい。デジタルビデオ装置は、ビデオ放送、ビデオ会議、ビデオ電話、またはビデオの送信を必要とする他の何れかの応用をサポートしてよい。例えば、デジタルビデオ装置80は、形態もしくはサテライト無線電話、またはパーソナルデジタルアシスタント(PDA)のような無線通信装置であってよい。
フロントエンド処理ユニット82は、上記で述べた画像安定化技術に従って、ビデオ捕捉装置84によって捕捉されたビデオフレームを処理するために使用されてよい。メモリー86はビデオシーケンスを保存してよい。例えば、メモリー86は、後続のフレームを安定化および符号化するための参照として使用するために、現在のフレームを保存してよい。エンコーダ88は、圧縮アルゴリズムを使用して、この保存されたビデオシーケンスを符号化してよい。エンコーダ88は、例えば、種々のハードウエア、ソフトウエア、もしくはファームウエアを含んでよく、またはここに記載するように、ビデオ符号化技術を制御するためのプログラム可能なソフトウエアモジュールを実行する1以上のDSPを含んでよい。デジタルビデオ装置80はまた、符号化されたシーケンスを、無線アンテナ92を介して受信装置(図示せず)へと送信するための送信機20を含んでいる。
この開示に記載された技術は、ハードウエア、ソフトウエア、ファームウエア、またはその何れかの組合せにおいて実施されてよい。例えば、この技術の種々の側面は、1以上のマイクロプロセッサ、DSP、アプリケーション特異的集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、または他の等価な集積もしくは個別の論理回路、ならびにこのようなコンポーネントの何れかの組合せ内において実施されてよい。一般に、「プロセッサ」または「処理回路」の用語は、先に述べた論理回路の何れかを単独または他の論理回路との組合せにおいて意味し得るものである。
ソフトウエアにおいて実施されるとき、本開示に記載したシステムおよび装置に帰せられる機能は、ランダムアクセスメモリー(RAM)、リードオンリーメモリー(ROM)、不揮発性ランダムアクセスメモリー(NVRAM)、電気的に消去可能なプログラマブルリードオンリーメモリー(EEPROM)、FLASHメモリー、磁気媒体、または光媒体などのようなコンピュータ読み取り可能な媒体上での命令として実現されてよい。この命令は、本開示に記載した機能の1以上の側面をサポートするために実行される。
種々の実施形態を説明してきた。この記載した実施形態は、例示目的のためのものに過ぎない。これら実施形態および他の実施形態は特許請求の範囲内に含まれるものである。
図1は、この開示に従って電子画像安定化を行うために装備された例示的ビデオ処理装置のブロック図である。 図2は、図1の装置に有用な例示的フロントエンド処理ユニットを示すブロック図である。 図3は、スケーラブルな電子画像安定化を実行するための、図2における処理ユニットの種々のコンポーネントの動作を示すブロック図である。 図4は、スケーラブルな画像安定化技術を実施する際の、図1の装置の例示的動作を示すフローチャートである。 図5は、画像安定化をサポートするための、グローバルな動きベクトルに基づくビデオフレーム内の画像に対する画像オフセットの適用を示す図である。 図6は、画像安定化のためのブローバルな動きベクトルを樹立するための、マクロブロックのサブセットを含んでなる領域の使用を示す図である。 図7は、この開示に記載されたビデオ処理装置の組み込みに適した、モバイルモデムの例示的ビデオコアを示すブロック図である。 図8Aは、この開示に従って、スケーラブルな画像安定化技術を実施するための例示的実施スキームを示すブロック図である。 図8Bは、この開示に従って、スケーラブルな画像安定化技術を実施するための例示的実施スキームを示すブロック図である。 図8Cは、この開示に従って、スケーラブルな画像安定化技術を実施するための例示的実施スキームを示すブロック図である。 図8Dは、この開示に従って、スケーラブルな画像安定化技術を実施するための例示的実施スキームを示すブロック図である。 図9は、本開示の画像安定化技術を実施し得る例示的無線通信装置を示すブロック図である。

Claims (35)

  1. ビデオフレーム内のマクロブロックについての空間統計を発生させる空間予測モジュールと;
    前記ビデオフレーム内のマクロブロックについての動き統計を発生させる動き予測モジュールと;
    前記フレームのためのグローバルな動きベクトルを決定するために、前記空間統計および前記動き統計を一体化させる動き一体化モジュールと;
    前記グローバルな動きベクトルに基づいて、前記マクロブロックにより定義される画像に対してオフセットを適用する安定化モジュールとを具備してなる装置。
  2. 請求項1に記載の装置であって、前記空間統計は、前記マクロブロックの各々に関連したビデオ情報の平均および分散を含んでなる装置。
  3. 請求項1に記載の装置であって、前記動きベクトルは、前記マクロブロックと以前のビデオフレームにおける対応するマクロブロックとの間の動きを示す装置。
  4. 請求項3に記載の装置であって、前記動き統計は、前記マクロブロックと以前のフレームにおける対応のマクロブロックとの間の差を示す差分絶対値和(SAD)値を含む装置。
  5. 請求項3に記載の装置であって、前記動き予測モジュールは、以前のフレームの調査領域中心を適合的に選択し、前記マクロブロックを、前記調査領域中心に関連した調査領域における以前のフレームのマクロブロックと比較して、以前のフレームのベストマッチするマクロブロックを見出す装置。
  6. 請求項1に記載の装置であって、前記動き一体化モジュールは、複数の可能な動きベクトルの各々に対応するビンを含んでなる二次元(2D)ヒストグラムを形成し、最大の値を有するビンに関連した動きベクトルを、前記グローバルな動きベクトルとして指定する装置。
  7. 請求項1に記載の装置であって:更に、
    デジタル信号プロセッサと;
    該デジタル信号プロセッサに対して二つの符号化コマンドを発するプロセッサコアとを具備してなり、
    前記デジタル信号プロセッサは、第一の符号化コマンドを受信したときに前記空間予測モジュールに空間統計を入手させ、且つ前記動き予測モジュールには動き統計を入手させ、また前記プロセッサコアは、前記動き一体化モジュールに対して前記マクロブロックの各々の空間統計および動き統計を一体化して、前記フレームについてのグローバルな動きベクトルを決定する装置。
  8. 請求項7に記載の装置であって、前記プロセッサコは、前記グローバルな動きベクトルを用いて前記デジタル信号プロセッサをプログラムし、また前記第二の符号化コマンドを受信したときに、前記デジタル信号プロセッサは、前記動き補償モジュールによるオフセットとして画像の符号化を実行する装置。
  9. 請求項1に記載の装置であって:更に、
    デジタル信号プロセッサと;
    該デジタル信号プロセッサに対して画像安定化コマンドを発するプロセッサコアとを具備してなり、前記コマンドは、前記デジタル信号プロセッサに対して、前記フレームのマクロブロックのサブセットからなる領域Rに対して画像安定化を実行するように命令し、
    前記動き一体化モジュールは、前記領域R内におけるマクロブロックの各々の動き統計および空間統計に基づいて、前記フレームについてのグローバルな動きベクトルを決定する装置。
  10. 請求項9に記載の装置であって、更にビデオコアを具備してなり、前記デジタル信号プロセッサは安定化モードを実施し、該安定化モードは、前記装置が前記ビデオコアのサブセットだけをランさせることを可能にする装置。
  11. 請求項1に記載の装置であって:更に、
    前記動き一体化モジュールに対して、前記マクロブロックの各々の空間統計および動き統計を一体化して、前記フレームについてのグローバルな動きベクトルを決定させるデジタル信号プロセッサと;
    前記フレームの画像安定化および符号化を実施するように前記デジタル信号プロセッサに命令するコマンドを、前記デジタル信号プロセッサに対して発するプロセッサコアと
    を具備してなる装置。
  12. 請求項1に記載の装置であって、更に、画像を捕捉するための画像捕捉装置を具備してなる装置。
  13. 請求項1に記載の装置であって、該装置は、16画素×16画素のマクロブロックに対して空間予測および動き予測を実行する装置。
  14. 請求項1に記載の装置であって、該装置は、無線通信装置、パーソナルデジタルアシスタント、ラップトップコンピュータ、デスクトップコンピュータ、デジタルカメラ、デジタル記録装置、ビデオ能力を有する携帯無線電話、およびビデオ能力を有するサテライト無線電話の少なくとも一つを含む装置。
  15. 請求項1に記載の装置であって、更に、前記空間予測モジュール、前記動き予測モジュール、前記動き一体化モジュール、および前記動き補償モジュールによって処理されたビデオフレームを送信するための送信機を具備してなる装置。
  16. 電子画像安定化を実行する方法であって:
    ビデオフレーム内のマクロブロックについての空間統計を発生させることと;
    前記ビデオフレーム内のマクロブロックについての動き統計を発生させることと;
    前記空間統計および前記動き統計を一体化させて、前記フレームについてのグローバルな動きベクトルを決定することと;
    前記グローバルな動きベクトルに基づいて、前記マクロブロックにより定義される画像に対してオフセットを適用することを含んでなる方法。
  17. 請求項16に記載の方法であって、空間統計を発生させることは、前記マクロブロックの各々の平均および分散を得ることを含んでなる方法。
  18. 請求項16に記載の方法であって、前記動き統計は、前記マクロブロックと以前のビデオフレームにおける対応するマクロブロックとの間の動きを示す動きベクトルを含んでなる方法。
  19. 請求項16に記載の方法であって、動き統計を発生させることは、前記マクロブロックの動きベクトル、および前記マクロブロックと以前のフレームからのマクロブロックとの間の差分絶対値和(SAD)を決定することを含んでなる方法。
  20. 請求項19に記載の方法であって:前記動きベクトルを決定することが、
    調査領域中心を適合的に選択することと;
    前記マクロブロックを、前記以前のフレームの調査領域中心に関連した調査領域におけるマクロブロックと比較して、以前のフレームのベストマッチするマクロブロックを見出すこと
    を含んでなる方法。
  21. 請求項16に記載の方法であって、前記空間統計および前記動き統計を一体化させることが、複数の可能な動きベクトルの各々に対応するビンを含む2次元(2D)ヒストグラムを構築することと、最大値を有するビンに関連した動き前記ベクトルを、前記グローバルな動きベクトルとして指定することを含んでなる方法。
  22. 請求項16に記載の方法であって:更に、
    前記フレーム内におけるマクロブロックのサブセットを領域Rとして定義することと;
    該領域R内の各マクロブロックの動き統計および空間統計に基づいて、前記フレームについてのグローバルな動きベクトルを決定すること
    を含んでなる方法。
  23. 命令を含んでなるコンピュータ読み取り可能な媒体であって:前記命令は装置において実行されたときに、該装置に対して、
    ビデオフレーム内のマクロブロックについての空間統計を発生させ;
    前記ビデオフレーム内のマクロブロックについての動き統計を発生させ;
    前記空間統計および前記動き統計を一体化させて、前記フレームについてのグローバルな動きベクトルを決定させ;
    該グローバルな動きベクトルに基づいて、前記マクロブロックにより定義された画像に対してオフセットを適用させる装置。
  24. 請求項23に記載のコンピュータ読み取り可能な媒体であって、前記命令は、前記プロセッサに対して、前記マクロブロックの各々の平均および分散を入手することにより空間統計を発生させる媒体。
  25. 請求項23に記載のコンピュータ読み取り可能な媒体であって、前記動き統計は、前記マクロブロックと以前のビデオフレームにおける対応するマクロブロックとの間の動きを示す動きベクトルを含んでなる媒体。
  26. 請求項23に記載のコンピュータ読み取り可能な媒体であって、前記命令は、前記マクロブロックについての動きベクトルを決定し、また前記マクロブロックと以前のフレームからのマクロブロックの間の差分絶対値和(SAD)を決定することによって、前記プロセッサに対して動き統計を発生させる媒体。
  27. 請求項23に記載のコンピュータ読み取り可能な媒体であって:更に、命令を含んでなり、該命令は、装置において実行されたときに該装置に対して、
    複数の可能な動きベクトルの各々に対応するビンを含んでなる2次元(2D)ヒストグラムを構築させ;また
    最大値を有するビンに関連した動きベクトルを、前記グローバルな動きベクトルとして指定させる媒体。
  28. 請求項23に記載のコンピュータ読み取り可能な媒体であって:更に、命令を含んでなり、該命令は、装置において実行されたときに該装置に対して、
    前記フレーム内におけるマクロブロックのサブセットを領域Rとして定義させ;また
    前記領域R内の各マクロブロックの前記動き統計および空間統計に基づいて、前記フレームについてのグローバルな動きベクトルを決定させる媒体。
  29. 電子画像安定化を行うための装置であって:
    ビデオフレーム内におけるマクロブロックについての空間統計を発生させるための手段と;
    前記ビデオフレーム内におけるマクロブロックについての動き統計を発生させるための手段と;
    前記空間統計および動き統計を一体化させて、前記フレームについてのグローバルな動きベクトルを決定するための手段と;
    前記グローバルな動きベクトルに基づいて、前記マクロブロックにより定義される画像に対してオフセットを適用するための手段とを具備してなる装置。
  30. 請求項29に記載の装置であって、前記空間統計を発生させるための手段は、前記マクロブロックの各々の平均および分散を得るための手段を具備してなる装置。
  31. 請求項29に記載の装置であって、前記動き統計は、前記マクロブロックと以前のビデオフレームにおける対応のマクロブロックとの間の動きを示す動きベクトルを含んでなる装置。
  32. 請求項29に記載の装置であって、前記動き統計を発生させるための手段は、前記マクロブロックについての動きベクトル、および前記マクロブロックと以前のフレームからのマクロブロックの間の差分絶対値和(SAD)を決定するための手段を含んでなる装置。
  33. 請求項32に記載の装置であって:前記動きベクトルを決定するための手段は、
    調査領域中心を適合的に選択するための手段と;
    前記以前のフレームのベストマッチするマクロブロックを見付けるために、前記マクロブロックを、以前のフレームの調査領域中心に関連した調査領域におけるマクロブロックと比較するための手段
    を具備してなる装置。
  34. 請求項29に記載の装置であって、前記空間統計および前記動き統計を一体化するための手段は、複数の可能な動きベクトルの各々に対応するビンを備えた2次元(2D)ヒストグラムを構築するための手段と、最大値を有するビンに関連した動きベクトルを前記グローバルな動きベクトルとして指定するための手段とを含んでなる装置。
  35. 請求項29に記載の装置であって:更に、
    前記フレーム内におけるマクロブロックのサブセットを領域Rとして定義するための手段と;
    前記領域R内における各マクロブロックの前記動き統計および空間統計に基づいて、前記フレームについてのグローバルな動きベクトルを定義するための手段と
    を含んでなる装置。
JP2009504491A 2006-04-06 2007-04-06 電子ビデオ画像の安定化 Withdrawn JP2009533009A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US79051406P 2006-04-06 2006-04-06
US11/487,078 US7840085B2 (en) 2006-04-06 2006-07-14 Electronic video image stabilization
PCT/US2007/066152 WO2007118197A2 (en) 2006-04-06 2007-04-06 Electronic video image stabilization

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2011160964A Division JP5129370B2 (ja) 2006-04-06 2011-07-22 電子ビデオ画像の安定化

Publications (1)

Publication Number Publication Date
JP2009533009A true JP2009533009A (ja) 2009-09-10

Family

ID=38442958

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2009504491A Withdrawn JP2009533009A (ja) 2006-04-06 2007-04-06 電子ビデオ画像の安定化
JP2011160964A Active JP5129370B2 (ja) 2006-04-06 2011-07-22 電子ビデオ画像の安定化

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2011160964A Active JP5129370B2 (ja) 2006-04-06 2011-07-22 電子ビデオ画像の安定化

Country Status (7)

Country Link
US (1) US7840085B2 (ja)
EP (1) EP2002649B1 (ja)
JP (2) JP2009533009A (ja)
KR (1) KR101027353B1 (ja)
CN (1) CN101411181B (ja)
ES (1) ES2565177T3 (ja)
WO (1) WO2007118197A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014123846A (ja) * 2012-12-20 2014-07-03 Olympus Corp 撮像装置および撮像方法

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4838699B2 (ja) * 2006-12-19 2011-12-14 キヤノン株式会社 色処理装置および方法
US8428142B2 (en) 2007-03-05 2013-04-23 Stmicroelectronics International N.V. System and method for transcoding data from one video standard to another video standard
US20090073283A1 (en) * 2007-09-18 2009-03-19 Atmel Corporation Method and apparatus for capturing images
JP5048542B2 (ja) * 2008-02-07 2012-10-17 オリンパス株式会社 画像処理装置及び画像処理プログラム
JP4940164B2 (ja) * 2008-02-07 2012-05-30 オリンパス株式会社 撮像装置及び撮像方法
JP4561845B2 (ja) * 2008-02-29 2010-10-13 カシオ計算機株式会社 撮像装置と画像処理プログラム
JP4561919B2 (ja) * 2008-04-21 2010-10-13 ソニー株式会社 撮像装置、画像処理装置及び画像処理方法
US8120659B2 (en) * 2008-05-22 2012-02-21 Aptina Imaging Corporation Method and system for motion estimation in digital imaging applications
US8185823B2 (en) * 2008-09-30 2012-05-22 Apple Inc. Zoom indication for stabilizing unstable video clips
US20100215104A1 (en) * 2009-02-26 2010-08-26 Akira Osamoto Method and System for Motion Estimation
US20100295957A1 (en) * 2009-05-19 2010-11-25 Sony Ericsson Mobile Communications Ab Method of capturing digital images and image capturing apparatus
JP2011114407A (ja) * 2009-11-24 2011-06-09 Sony Corp 画像処理装置、画像処理方法、プログラム及び記録媒体
TW201230805A (en) * 2011-01-04 2012-07-16 Aptos Technology Inc Video playback apparatus and method
JP5708097B2 (ja) * 2011-03-18 2015-04-30 株式会社リコー 撮像装置、撮像方法、及び撮像プログラム
GB2492529B (en) 2011-05-31 2018-01-10 Skype Video stabilisation
CN102355581A (zh) * 2011-09-22 2012-02-15 山东大学 用于视频编码芯片硬件系统中的多级稳定性处理方法
GB201116566D0 (en) 2011-09-26 2011-11-09 Skype Ltd Video stabilisation
GB2497507B (en) 2011-10-14 2014-10-22 Skype Received video stabilisation
CN102637295B (zh) * 2012-03-31 2014-07-23 北京智安邦科技有限公司 一种快速图像电子稳定方法及装置
US10602175B2 (en) * 2012-12-21 2020-03-24 Nvidia Corporation Using an average motion vector for a motion search
KR101783990B1 (ko) * 2012-12-21 2017-10-10 한화테크윈 주식회사 디지털 영상 처리 장치 및 영상의 대표 움직임 예측 방법
CN103455983A (zh) * 2013-08-30 2013-12-18 深圳市川大智胜科技发展有限公司 嵌入式视频系统中的图像扰动消除方法
US20150071343A1 (en) * 2013-09-12 2015-03-12 Magnum Semiconductor, Inc. Methods and apparatuses including an encoding system with temporally adaptive quantization
KR102290964B1 (ko) 2014-02-19 2021-08-18 삼성전자주식회사 적응적 서치 레인지를 이용한 비디오 인코딩 장치 및 그 방법
KR101589186B1 (ko) * 2014-04-16 2016-01-27 국방과학연구소 글로벌 모션벡터 보상을 이용한 영상정합 방법
US10084962B2 (en) * 2015-11-16 2018-09-25 Google Llc Spherical video stabilization based on accelerometer data
KR20180117597A (ko) * 2016-03-03 2018-10-29 소니 주식회사 화상 처리 장치, 화상 처리 방법, 컴퓨터 프로그램 및 전자 기기
CN107222659A (zh) * 2017-05-03 2017-09-29 武汉东智科技股份有限公司 一种视频异常检测方法
WO2019084801A1 (zh) * 2017-10-31 2019-05-09 深圳市大疆创新科技有限公司 运动估计方法和装置
US10432864B1 (en) * 2018-09-19 2019-10-01 Gopro, Inc. Systems and methods for stabilizing videos
CN111010494B (zh) * 2019-10-28 2020-11-03 武汉大学 一种带有地理编码的光学卫星视频稳像方法及系统
US11006044B1 (en) * 2020-03-03 2021-05-11 Qualcomm Incorporated Power-efficient dynamic electronic image stabilization
US11418810B2 (en) * 2020-09-21 2022-08-16 Tencent America LLC Methods of inter picture motion prediction for multi-view video compression
CN114257756A (zh) * 2020-09-25 2022-03-29 瑞昱半导体股份有限公司 校正移动向量的视频处理方法
CN112351281A (zh) * 2020-10-28 2021-02-09 西安万像电子科技有限公司 图像处理方法及装置、处理器、非易失性存储介质
WO2023279275A1 (en) * 2021-07-07 2023-01-12 Qualcomm Incorporated Local motion detection for improving image capture and/or processing operations
US11863791B1 (en) 2021-11-17 2024-01-02 Google Llc Methods and systems for non-destructive stabilization-based encoder optimization

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07107466A (ja) * 1993-10-07 1995-04-21 Hitachi Ltd 撮像装置
JPH09130748A (ja) * 1995-08-30 1997-05-16 Sony Corp 画像信号処理装置および記録/再生装置
JP2000099744A (ja) * 1998-09-24 2000-04-07 Sharp Corp 画像動きベクトル検出方法およびその装置
JP2008507899A (ja) * 2004-07-21 2008-03-13 ゾラン コーポレイション 取得された画像フレーム間の意図的でないカメラ運動を補正するためのビデオデータの処理

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0514798A (ja) * 1991-07-03 1993-01-22 Sony Corp 手振れ補正装置
US5835138A (en) 1995-08-30 1998-11-10 Sony Corporation Image signal processing apparatus and recording/reproducing apparatus
WO2000056058A1 (en) * 1999-03-18 2000-09-21 British Broadcasting Corporation Watermarking
EP1075147A1 (en) 1999-08-02 2001-02-07 Koninklijke Philips Electronics N.V. Motion estimation
US6809758B1 (en) 1999-12-29 2004-10-26 Eastman Kodak Company Automated stabilization method for digital image sequences
FR2831698A1 (fr) * 2001-10-30 2003-05-02 Koninkl Philips Electronics Nv Station d'imagerie medicale a fonction d'extraction de trajectoire au sein d'un objet ramifie
JP2004015376A (ja) * 2002-06-06 2004-01-15 Canon Inc 像振れ防止装置およびカメラ
EP1377040A1 (en) * 2002-06-19 2004-01-02 STMicroelectronics S.r.l. Method of stabilizing an image sequence
US7184991B1 (en) * 2002-07-12 2007-02-27 Chroma Energy, Inc. Pattern recognition applied to oil exploration and production
US7188092B2 (en) * 2002-07-12 2007-03-06 Chroma Energy, Inc. Pattern recognition template application applied to oil exploration and production
CN1258925C (zh) * 2003-06-27 2006-06-07 中国科学院计算技术研究所 多视角视频编解码预测补偿方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07107466A (ja) * 1993-10-07 1995-04-21 Hitachi Ltd 撮像装置
JPH09130748A (ja) * 1995-08-30 1997-05-16 Sony Corp 画像信号処理装置および記録/再生装置
JP2000099744A (ja) * 1998-09-24 2000-04-07 Sharp Corp 画像動きベクトル検出方法およびその装置
JP2008507899A (ja) * 2004-07-21 2008-03-13 ゾラン コーポレイション 取得された画像フレーム間の意図的でないカメラ運動を補正するためのビデオデータの処理

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014123846A (ja) * 2012-12-20 2014-07-03 Olympus Corp 撮像装置および撮像方法

Also Published As

Publication number Publication date
US7840085B2 (en) 2010-11-23
CN101411181B (zh) 2011-07-06
JP5129370B2 (ja) 2013-01-30
WO2007118197A3 (en) 2008-01-03
EP2002649A2 (en) 2008-12-17
JP2012009036A (ja) 2012-01-12
KR20090016553A (ko) 2009-02-16
WO2007118197A2 (en) 2007-10-18
CN101411181A (zh) 2009-04-15
KR101027353B1 (ko) 2011-04-11
ES2565177T3 (es) 2016-04-01
EP2002649B1 (en) 2016-01-13
US20070236578A1 (en) 2007-10-11

Similar Documents

Publication Publication Date Title
JP5129370B2 (ja) 電子ビデオ画像の安定化
US8179446B2 (en) Video stabilization and reduction of rolling shutter distortion
JP5908511B2 (ja) ブロックベースの画像安定化
US7880769B2 (en) Adaptive image stabilization
US9325905B2 (en) Generating a zoomed image
KR101215045B1 (ko) 이미지 정합 및 비디오 코딩을 위한 공유된 블록 비교 아키텍쳐
JP5268743B2 (ja) 画像通信システム
TWI463878B (zh) Image processing apparatus and method
US20100215104A1 (en) Method and System for Motion Estimation
KR20130079447A (ko) 카메라 파라미터 지원 비디오 프레임 레이트 상향 변환
KR20140022925A (ko) 이미지 캡쳐 파라미터들에 기초한 비디오 인코딩의 제어
JPWO2010101064A1 (ja) 画像処理装置および方法
CN102067607B (zh) 图像合成编码方法、图像合成编码装置、摄像系统
JP2005175970A (ja) 撮像システム
JP6070424B2 (ja) 撮影装置、撮影方法及び撮影プログラム
JP2011015092A (ja) 撮像装置
JP2018107683A (ja) 動画像符号化装置及び動画像復号装置
JP2007150458A (ja) 画像処理装置、画像処理方法
JP2012222460A (ja) 動画像符号化装置、動画像符号化方法及びプログラム
JP2014053831A (ja) 符号化装置
JP2019009605A (ja) 画像処理装置、画像処理方法およびプログラム
JP2012178713A (ja) 画像処理装置、画像処理方法、及びプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100811

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100817

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20101117

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101125

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20101217

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101227

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110117

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110217

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110329

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110722

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110801

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20110812

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20110921