Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5908581B2 - 画像キャプチャパラメータに基づくビデオ符号化の制御 - Google Patents
[go: Go Back, main page]

JP5908581B2 - 画像キャプチャパラメータに基づくビデオ符号化の制御 - Google Patents

画像キャプチャパラメータに基づくビデオ符号化の制御 Download PDF

Info

Publication number
JP5908581B2
JP5908581B2 JP2014512120A JP2014512120A JP5908581B2 JP 5908581 B2 JP5908581 B2 JP 5908581B2 JP 2014512120 A JP2014512120 A JP 2014512120A JP 2014512120 A JP2014512120 A JP 2014512120A JP 5908581 B2 JP5908581 B2 JP 5908581B2
Authority
JP
Japan
Prior art keywords
frame
blur
motion vector
degree
video
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014512120A
Other languages
English (en)
Other versions
JP2014518049A (ja
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 JP2014518049A publication Critical patent/JP2014518049A/ja
Application granted granted Critical
Publication of JP5908581B2 publication Critical patent/JP5908581B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/513Processing of motion vectors
    • H04N19/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
    • 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/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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
    • 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/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/179Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scene or a shot
    • 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
    • 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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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/61Control of cameras or camera modules based on recognised objects
    • H04N23/611Control of cameras or camera modules based on recognised objects where the recognised objects include parts of the human body
    • 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/681Motion detection
    • H04N23/6812Motion detection based on additional sensors, e.g. acceleration sensors
    • 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/6815Motion detection by distinguishing pan or tilt from motion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Studio Devices (AREA)
  • Television Signal Processing For Recording (AREA)

Description

本開示は、ビデオコーディングに関する。
[0002]デジタルマルチメディア機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレス通信デバイス、ワイヤレスブロードキャストシステム、携帯情報端末(PDA)、ラップトップまたはデスクトップコンピュータ、デジタルカメラ、デジタル記録デバイス、ビデオゲームデバイス、ビデオゲームコンソール、セルラー電話または衛星無線電話、デジタルメディアプレーヤなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルマルチメディアデバイスは、デジタルビデオデータをより効率的に送信および受信または記憶および検索するために、MPEG−2、ITU−H.263、MPEG−4、もしくはITU−H.264/MPEG−4 Part 10、Advanced Video Coding(AVC)、またはJoint Collaborative Team on Video Coding(JCT−VC)によって現在開発中のHigh Efficiency Video Coding(HEVC)規格などのビデオコーディング技法を実装し得る。
[0003]ビデオ符号化技法は、ビデオシーケンスに固有の冗長性を低減または除去するために、空間的および時間的予測を介してビデオ圧縮を実行し得る。ビデオキャプチャデバイス、たとえば、ビデオカメラは、ビデオをキャプチャし、それを符号化のためにビデオ符号器に送ることができる。ビデオ符号器は、キャプチャされたビデオを処理し、処理されたビデオを符号化し、符号化されたビデオデータを記憶または送信のために送信する。いずれの場合も、符号化されたビデオデータは、表示のためにビデオを再生するために符号化される。ビデオを記憶または送信するために利用可能な帯域幅は、しばしば制限され、ビデオ符号化データレートなどの要因によって影響を受ける。
[0004]いくつかの要因は、ビデオ符号化データレートに寄与する。したがって、ビデオ符号器を設計するとき、関心の1つは、ビデオ符号化データレートを向上させることである。一般に、向上は、ビデオ符号器において実現され、しばしば、余分の計算の複雑さをビデオ符号器に加え、余分の計算の複雑さが、向上したビデオ符号化データレートの利益の一部を相殺し得る。
[0005]本開示は、少なくとも部分的に、ビデオキャプチャデバイスの1つまたは複数のパラメータに基づいて、ビデオコーディングを制御するための技法について説明する。これらの技法は、カメラなどのビデオキャプチャデバイス、および/またはビデオ符号器などのビデオコーディングデバイスにおいて行われ得る。ビデオキャプチャデバイスは、1つまたは複数のパラメータを検知、測定または生成することができ、パラメータは、ビデオコーディングパラメータを制御するために使用され得る決定を行うために利用され得る。ビデオキャプチャデバイスによって取得されたパラメータは、キャプチャされたフレームに関連付けられたぼけ度を推定するために利用され得る。ビデオコーディングにおいて使用されるパラメータは、推定されたぼけ度に基づいて変更され得る。
[0006]一例では、本開示は、ビデオキャプチャモジュールにおいて、ビデオキャプチャモジュールの再焦点合せプロセス中にキャプチャされたビデオデータのフレームのぼけ度レベルを推定することと、ビデオ符号器において、フレームの推定されたぼけ度レベルに少なくとも部分的に基づいて、フレームを符号化することとを備える方法について説明する。
[0007]別の例では、本開示は、ビデオキャプチャモジュールにおいて、ビデオキャプチャモジュールの再焦点合せプロセス中にキャプチャされたビデオデータのフレームのぼけ度レベルを推定するための手段と、ビデオ符号器において、フレームの推定されたぼけ度レベルに少なくとも部分的に基づいて、フレームを符号化するための手段とを備えるシステムについて説明する。
[0008]別の例では、本開示は、ビデオキャプチャモジュールの再焦点合せプロセス中にキャプチャされたビデオデータのフレームのぼけ度レベルを推定するためのビデオキャプチャモジュールと、フレームの推定されたぼけ度レベルに少なくとも部分的に基づいて、フレームを符号化するためのビデオ符号器とを備えるシステムについて説明する。
[0009]本開示で説明する技法は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、ソフトウェアは、マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、またはデジタル信号プロセッサ(DSP)など、1つまたは複数のプロセッサで実行され得る。本技法を実行するソフトウェアは、最初に非一時的コンピュータ可読記憶媒体に記憶され、プロセッサにロードされ、実行され得る。
[0010]したがって、本開示はまた、ビデオキャプチャモジュールにおいて、ビデオキャプチャモジュールの再焦点合せプロセス中にキャプチャされたビデオデータのフレームのぼけ度レベルを推定することと、ビデオ符号器において、フレームの推定されたぼけ度レベルに少なくとも部分的に基づいて、フレームを符号化することとを、プログラマブルプロセッサに行わせるための命令を備えるコンピュータ可読媒体をも企図する。
[0011]別の例では、本開示は、ビデオデータのフレームのぼけ度レベルを、フレームにおいて検出された動きのタイプに基づいて推定することと、ビデオ符号器において、フレームの推定されたぼけ度レベルに少なくとも部分的に基づいて、フレームを符号化することとを備える方法について説明する。
[0012]別の例では、本開示は、ビデオデータのフレームのぼけ度レベルを、フレームにおいて検出された動きのタイプに基づいて推定するためのぼけ度ユニットと、フレームの推定されたぼけ度レベルに少なくとも部分的に基づいて、フレームを符号化するためのビデオ符号器とを備える装置について説明する。
[0013]別の例では、本開示は、ビデオデータのフレームのぼけ度レベルを、フレームにおいて検出された動きのタイプに基づいて推定するための手段と、フレームの推定されたぼけ度レベルに少なくとも部分的に基づいて、フレームを符号化するための手段とを備えるシステムについて説明する。
[0014]別の例では、本開示はまた、ビデオデータのフレームのぼけ度レベルを、フレームにおいて検出された動きのタイプに基づいて推定することと、ビデオ符号器において、フレームの推定されたぼけ度レベルに少なくとも部分的に基づいて、フレームを符号化することとを、プログラマブルプロセッサに行わせるための命令を備えるコンピュータ可読媒体をも企図する。
[0015]本開示の1つまたは複数の態様の詳細について添付の図面および以下の説明において述べる。本開示で説明する技法の他の特徴、目的、および利点は、これらの説明および図面、ならびに特許請求の範囲から明らかになろう。
本開示の技法を実装し得る、例示的なビデオキャプチャデバイスおよびビデオ符号器システムを示すブロック図。 本開示の技法を実装し得る、別の例示的なビデオキャプチャデバイスおよびビデオ符号器システムを示すブロック図。 キャプチャされたフレームにおいてぼけ度を生じる、ビデオキャプチャ機能を示す流れ図。 ビデオキャプチャデバイスによってキャプチャされたフレームにおいてぼけ度を引き起こす、例示的なビデオキャプチャデバイス機能を示す図。 ビデオキャプチャデバイスによってキャプチャされたフレームにおいてぼけ度を引き起こす、例示的なビデオキャプチャデバイス機能を示す図。 ビデオキャプチャデバイスによってキャプチャされたフレームにおいてぼけ度を引き起こす、例示的なビデオキャプチャデバイス機能を示す図。 ビデオキャプチャデバイスによってキャプチャされたフレームにおいてぼけ度を引き起こす、例示的なビデオキャプチャデバイス機能を示す図。 ビデオキャプチャデバイスによってキャプチャされたフレームにおいてぼけ度を引き起こす、例示的なビデオキャプチャデバイス機能を示す図。 ビデオキャプチャデバイスによってキャプチャされたフレームにおいてぼけ度を引き起こす、例示的なビデオキャプチャデバイス機能を示す図。 本開示の技法を実装するビデオ符号化システムの一例を示すブロック図。 本開示の技法を実装するレート制御ブロックの一例を示すブロック図。 ビデオキャプチャデバイスによる例示的な連続自動焦点再焦点合せプロセスの性能を示す図。 顔検出に関連付けられた自動焦点再焦点合せプロセスを示すグラフィカル表現の図。 顔検出に関連付けられた自動焦点再焦点合せプロセスを示すグラフィカル表現の図。 顔検出に関連付けられた自動焦点再焦点合せプロセスを示すグラフィカル表現の図。 ズーミングに関連付けられた自動焦点再焦点合せプロセスを示すグラフィカル表現の図。 ズーミングに関連付けられた自動焦点再焦点合せプロセスを示すグラフィカル表現の図。 符号化中の動き推定のための例示的なブロック区分サイズを示す図。 本開示の技法による、動きぼけ度を推定する一例を示す図。 本開示の技法による、動きぼけ度を推定する別の例を示す図。 ぼけ度レベルを使用したQP決定の一例を示す図。 図13AによるQP決定を行うために使用される、例示的な推定されたぼけ度レベルを示す図。 ルックアップテーブルを使用したQP決定の一例を示す図。 本開示の技法を実装する、2つのビデオキャプチャデバイスモジュールをもつ例示的なシステムを示す図。 本開示の例示的な技法による、キャプチャされたフレームにおけるぼけ度レベルの推定値を使用するビデオ符号化を示す流れ図。 本開示の例示的な技法による、キャプチャされたフレームにおけるぼけ度レベルの推定値を使用するビデオ符号化を示す流れ図。 本開示の例示的な技法による、キャプチャされたフレームにおけるぼけ度レベルの推定値を使用するビデオ符号化を示す流れ図。 本開示の例示的な技法による、符号化アルゴリズムを簡略化するためにぼけ度レベルの推定値を使用するビデオ符号化を示す流れ図。
[0034]リアルタイムビデオ記録中に、ビデオフレームにおけるぼけ度は、いくつかの要因によって引き起こされ得る。たとえば、ビデオキャプチャデバイスのパンニング(panning)もしくは動き、ビデオキャプチャデバイスによってキャプチャされている画像における被写体の動き、または、たとえばビデオカメラなどのビデオキャプチャデバイスによってキャプチャされているシーンのズームインもしくはアウトは、カメラまたは被写体の動きが速すぎて焦点合せすることができないので、ぼけ度を引き起こすことがある。ぼけ度はまた、連続自動焦点(CAF:continuous auto-focus)もしくは自動焦点(AF: auto-focus)をもつシステムにおける再焦点合せ段階中、または、手動焦点合せが使用されるとき再焦点合せ中に生じることもある。
[0035]CAFを使用するビデオキャプチャデバイスの例では、レンズ位置が、最良の焦点性能を実現するために、たとえば、フレーム・バイ・フレーム・ベースで、連続的に調整され得る。ビデオ記録中に注目する被写体が変わったか、または移動したとき、ビデオキャプチャデバイスは、新しい注目する被写体の新しい焦点面を発見することによって、再焦点合せを行う。たとえば、ビデオキャプチャデバイスのパンニングの動き中に、ビデオキャプチャデバイスが、フレームにおいてキャプチャされた新しいシーンに再焦点合せするためのパンニングの終了時にもはや動いていないとき、CAFが行われ得る。別の例では、動きセンサーによって検出される動き中に、顔または別の被写体がフレームにおいて検出されることがあり、その検出がAFプロセスをトリガすることがある。別の例では、AFプロセスは、カメラによるズームインまたはアウトに続いて再焦点合せするためにトリガされ得る。ぼけ度は、この再焦点合せプロセス中に生じ、新しい焦点面が発見されるまで、デバイスがキャプチャするフレームは、再焦点合せが実現されるまで、再焦点合せプロセス中にぼやけることがある。加えて、ぼけ度は、たとえば、フレーム内の被写体の移動など、他のタイプの動き中に、または、再焦点合せが生じないとき(たとえば、カメラが移動中である間)、パンニング動きプロセスの部分中に、フレームにおいて生じ得る。ぼけ度は、これらのタイプのフレームにおいて生じるが、そこにおいて、ぼけ度は、再焦点合せプロセスによって引き起こされない。
[0036]動きによって引き起こされるぼけは、たとえば、カメラなどのビデオキャプチャデバイスの移動、ハンドジッタにより、または、ビデオフレームをキャプチャする間の被写体移動の結果として、キャプチャされたビデオフレームにおいて生じ得る。カメラ移動および被写体移動は、同様の動きぼけ効果を視覚的に生じる。しかしながら、カメラ移動は、グローバルな動きぼけをもたらすのに対して、移動する被写体は、ローカルな動きぼけをもたらす。いくつかのビデオキャプチャデバイスでは、特殊なカメラモード(たとえば、ハンドジッタ低減および夜間キャプチャモード)が、露出時間を制御することによって動きぼけを低減するために使用され得る。以下で説明する本開示の技法は、そのようなデバイスがこれらの特殊なカメラモードのいずれかを利用するかどうかにかかわらず、ビデオキャプチャデバイスにおいて使用され得、その理由は、いくつかの例では、これらの技法が、露出時間を使用してぼけ度を推定するために使用され得るからである。
[0037]ビデオ符号器は、フレームのコンテンツに関する決定を行うために、計算を行うことによって、ビデオデータレート制御を行う。これらの計算は、一般に、計算複雑性をビデオ符号器に加える。本開示の技法は、ビデオキャプチャデバイスによって決定及び/または測定されたパラメータに基づいて、ビデオキャプチャデバイスおよび/またはビデオ符号器における機能を行うことを含み得る。本開示の一態様では、ビデオ符号器は、ビデオフレームを記録するビデオキャプチャデバイスからビデオ符号器が得る情報を使用することによって、追加の計算複雑性を低減することができる。
[0038]本開示は、少なくとも部分的に、ビデオキャプチャデバイスの1つまたは複数のパラメータに基づいて、ビデオコーディングを制御するための技法について説明する。いくつかの例では、ビデオ符号器は、ぼけ度が検出されるフレームにおけるぼけ度レベルの推定値に基づいて、ビデオコーディングを制御することができる。フレームにおけるぼけ度は、典型的にぼけ度を生じる機能がビデオキャプチャデバイスによって行われるとき、検出され得る。ぼけ度が検出されるフレームのぼけ度は、次いで、ビデオキャプチャデバイスの1つまたは複数のパラメータを使用して推定され得る。一例では、いくつかの機能は、連続自動焦点(CAF)プロセスをサポートするビデオキャプチャデバイスにおけるビデオキャプチャ中に再焦点合せを生じることがあり、再焦点合せは、CAFプロセス中にキャプチャされたフレームのぼけ度を生じることがある。他の例では、パンニング、ズーミング、フレーム内の被写体の移動、または他のタイプの動きのいずれかによるビデオキャプチャ中の動きは、その動き、および自動焦点(AF)を使用した再焦点合せのために、フレームのぼけ度を生じ得る。
[0039]ビデオ符号化システムなどのビデオシステムでは、帯域幅限界が懸念であることがあり、たとえば、ビデオ符号化データレートなど、パラメータによって影響を受けることがある。一例では、本開示による技法は、ビデオキャプチャデバイスによってキャプチャされたビデオフレームの特性に基づいて、ビデオ符号化データレートなど、ビデオコーディングプロセスの1つまたは複数の態様を調整することができる。一例では、ビットは、フレームの推定されたぼけ度レベルに基づいて、ビデオフレームを符号化することにおいてより効率的に割り振られ、したがって、ビデオ符号化データレートを最適化し得る。
[0040]一例では、ビデオキャプチャデバイスは、典型的にぼけ度を引き起こすビデオキャプチャデバイスにおけるいくつかの機能(たとえば、動き、ズーミング、パンニングなど)の性能に基づいて、キャプチャされたビデオフレームにおけるぼけ度を検出することができる。検出されたぼけ度は、次いで、ビデオキャプチャデバイスによって決定および/または測定されたパラメータを使用して、推定され得る。ぼけ度は、ビデオキャプチャデバイスまたはビデオ符号器において推定され得る。いくつかの例では、ビデオキャプチャデバイスとビデオ符号器とを備えるビデオシステムは、ビデオキャプチャデバイスまたはビデオ符号器のいずれかにおいてぼけ度を推定する能力を提供することができる。一例では、ビデオキャプチャデバイスおよびビデオ符号器は、1つのデバイスの一部であり得る。そのような例では、ビデオキャプチャデバイスおよびビデオ符号器の各々の機能の少なくとも一部分は、1つのプロセッサによって行われてもよく、プロセッサはまた、ぼけ度推定のような演算を行うこともできる。
[0041]一例では、ビデオキャプチャデバイスは、たとえば、CAFプロセスの再焦点合せ段階中、デバイスのパンニングの動き中、ズームインもしくはアウト中、または、フレームにおいてぼけ度を引き起こす他の動き中など、ぼけ度を引き起こすイベント中にキャプチャされたビデオフレームにおけるぼけ度の量を推定することができる。ビデオキャプチャデバイスは、ビデオ符号器へ、ビデオフレームにおけるぼけ度の量の推定値を送ることができる。別の例では、ビデオキャプチャデバイスは、ビデオ符号器へ、ぼけ度を引き起こすイベントに関連付けられた1つまたは複数のパラメータを送ることができ、ビデオ符号器は、それらのパラメータに基づいて、対応するビデオフレームにおけるぼけ度の量を推定することができる。
[0042]ビデオフレームにおけるぼけ度の量に基づいて、ビデオ符号器は、ビデオ符号器内でぼけ度を評価する必要なしに、あるしきい値を上回るぼけ度の量をもつフレームを符号化するために、より低いデータレート、すなわち、より少ないコーディングビットを割り振ることができる。むしろ、いくつかの例では、符号器は、ビデオキャプチャデバイスによってすでに決定されたぼけ度パラメータに依拠することができる。他の例では、符号器は、ぼけ度を引き起こすイベントに関連付けられた1つまたは複数のパラメータに基づいて、ぼけ度を推定することができる。ぼやけたフレームは、一般に、より低いデータレートを使用することによって影響を受けないか、またはそれほど影響を受けない、より低い視覚的品質を有するので、ぼけ度が検出されるとき、ビデオ符号器は、ぼやけたフレームを符号化するためにより低いデータレートを割り振ることができる。ビデオフレームのコンテンツがぼやけるようになるとき、本開示の一態様によれば、ビデオ符号器は、ぼやけたフレームを符号化するために、より低いデータレート、すなわち、コーディングビットを割り振り、それによって、ぼけ度が与えられれば、許容可能な全体的な視覚的品質を維持しながら、帯域幅消費を低減することができる。
[0043]本開示の一態様では、量子化パラメータ(QP)が、ぼけ度推定値に基づいて調整され得、フレームにおけるぼけの量に基づいて変動し得る。本開示の別の態様では、ビデオ符号器は、予測コーディングおよび動き補償のために異なるサイズのブロック区分を使用して、フレームを符号化することができる。本開示の別の態様では、ビデオ符号器は、フレームがぼやけているかどうかと、フレームにおけるぼけ度の量とを決定するためのアルゴリズムを実装する必要がなく、その理由は、これらがビデオキャプチャデバイスによって決定されるからである。
[0044]本開示の技法を使用して、簡略化されたビデオ符号化アルゴリズムは、ビデオ符号器の計算複雑性を低減することができ、より低いデータレートは、ビデオ符号器によって使用される帯域幅を低減することができる。ぼけ度推定値は、ビデオキャプチャデバイスからビデオ符号器へ報告され得る。ビデオ符号器は、次に、ビデオ符号器によって行われるときに計算集約的な演算であり得るぼけ度を検出するために、符号器リソースを費やすことなしに、特定のフレームがぼやけていると決定することができる。代わりに、ビデオ符号器は、ビデオキャプチャデバイスによって評価されたぼけ度推定値に依拠することができる。
[0045]一例では、本開示の技法は、ビデオ符号器によって実行されたレート制御(RC)アルゴリズムによって実施され得る。RCアルゴリズムは、知覚品質を向上させるために、キャプチャされたビデオフレームにおいて動きぼけ推定を利用することができる。このアルゴリズムは、グローバル動きベクトル(MV)、符号化フレームレート、および露出時間などのパラメータを使用して、キャプチャされたビデオフレームのぼけ度を推定することができる。フレームの所与の推定されたぼけ度に対して、RCアルゴリズムを適用して、ビデオ符号器は、ぼやけたフレームと鮮鋭なフレームとの間でコーディングビットを再割り振りすることができる。詳細には、ビデオ符号器は、たとえば、予測コーディングによって生成される残差変換係数に適用される量子化の程度を制御するために、フレームごとの量子化パラメータを調整することによって、より少ないコーディングビットをぼやけたフレームに、より多くのコーディングビットをぼやけていないフレームに割り振ることができる。このようにして、ぼやけたフレームをコーディングすることにおける節約が、他のフレームのコーディングを向上させるために利用され得る。
[0046]本開示の態様は、スタンドアロン記録デバイス、またはシステムの一部であり得る、様々な記録デバイスのいずれかにおいて利用され得る。この説明のために、ビデオカメラが例示的なビデオキャプチャデバイスとして使用される。
[0047]図1は、本開示の技法を実装し得る、例示的なビデオキャプチャデバイスおよびビデオ符号器システム100を示すブロック図である。図1に示すように、システム100は、たとえば、ビデオストリームをキャプチャし、リンク120を介してビデオ符号器110へ送る、ビデオカメラなどのビデオキャプチャデバイス102を含む。システム100はまた、ぼけ度ユニット108をも含んでもよく、ぼけ度ユニット108は、ビデオキャプチャデバイス102またはビデオ符号器110の一部であってもよい。したがって、図1の例では、ぼけ度ユニット108は、いずれのデバイスからも別個に示され得る。ビデオキャプチャデバイス102およびビデオ符号器110は、モバイルデバイスを含む、広範囲にわたるデバイスのいずれかを備え得る。いくつかの例では、ビデオキャプチャデバイス102およびビデオ符号器110は、ワイヤレスハンドセット、携帯情報端末(PDA)、モバイルメディアプレーヤ、カメラ、または、ビデオデータをキャプチャかつ符号化することができる任意のデバイスなど、ワイヤレス通信デバイスを備える。いくつかの例では、ビデオキャプチャデバイス102およびビデオ符号器110は、同じシステムの一部として、同じ筐体に含まれてもよい。他の例では、ビデオキャプチャデバイス102およびビデオ符号器110は、2つ以上の異なるデバイスに常駐してもよく、2つ以上の異なるシステムの一部であってもよい。ビデオキャプチャデバイス102およびビデオ符号器110が、2つ以上の異なるデバイスに常駐する場合、リンク120は、ワイヤードまたはワイヤレスリンクであってもよい。
[0048]図1の例では、ビデオキャプチャデバイス102は、入力センサーユニット104と、動きおよびAFユニット106とを含み得る。動きおよびAFユニット106は、たとえば、CAFユニット106A、ズームユニット106B、および動きユニット106Cなど、ビデオキャプチャに関連付けられたいくつかの機能ユニットを含み得る。ビデオ符号器110は、QP再調整ユニット112と、フレームぼけ度評価ユニット114と、符号化ユニット116とを含み得る。本開示によれば、ビデオキャプチャデバイス102は、たとえば、ズーミング、パンニング、動き検出など、1つまたは複数の機能に関連付けられたパラメータを取得するように構成され得、それらのパラメータは、動きおよびAFユニット106によってさらに処理され、ぼけ度ユニット108に提供され得る。ぼけ度ユニット108は、カメラパラメータを使用してフレームのぼけ度のレベルを推定し、ぼけ度推定値をビデオ符号器110へ送ることができる。ビデオ符号器110は、ぼけ度情報を使用して、適切なビデオ符号化データレートを決定すること、および/またはビデオ符号化アルゴリズムを簡略化することができる。
[0049]入力センサーユニット104は、ビデオキャプチャデバイス102に関連付けられた入力センサーと、入力センサーによって検知されたフレーム画像に基づいて、キャプチャされたフレームに関連付けられた1つまたは複数のパラメータを決定するアルゴリズムとを含み得る。ビデオキャプチャデバイス102の入力センサーユニット104は、キャプチャするためのフレーム画像コンテンツを検知することができる。入力センサーユニット104は、たとえば、電荷結合デバイス(CCD)アレイ、または、カメラレンズを介して光を受け、受信された画像に応答して画像データを生成する、別の画像センシングデバイスなど、センサーに結合されたカメラレンズを含み得る。入力センサーユニット104は、対応するフレームをキャプチャするための適切な機能を決定するために、状態における変化を検出するための能力を含み得る。入力センサー104によって行われた機能に基づいて、動きおよびAFユニット106は、たとえば、自動焦点(AF)を適用するかどうか、および適用するべきAFのタイプなど、適切な機能を決定することができる。たとえば、パンニングの動き中に、CAFが適用されてもよいが、ズーミング中に、ズーミング率情報を利用するAFプロセスが適用されてもよい。動きおよびAFユニット106は、関連付けられた機能に基づいて、フレームにおけるぼけ度を検出し、たとえば、ズーム率(zoom factor)、レンズ位置、他のレンズおよびセンサーパラメータなど、その機能に対応するパラメータとともに、ぼけ度検出の指示(indication)を送ることができる。
[0050]一例では、パンニングの動き中に、ユーザは、ビデオキャプチャデバイス102を移動させて、異なる被写体またはシーンをキャプチャする。この例では、ビデオキャプチャデバイス102の動きは、入力センサーユニット104を使用して決定されてもよく、入力センサーユニット104は、デバイスのパンニングの動きを検出することが可能なセンサーを装備してもよい。パンニングの動き中に、ビデオキャプチャデバイス102が動いている間にキャプチャされたフレームは、キャプチャされているシーンが急速に変化するので、再焦点合せを必要としなくてもよい。ビデオキャプチャデバイス102が動きを停止するとき、再焦点合せプロセスは、フレームをキャプチャする間に開始することができる。この例の再焦点合せは、焦点が合うまで、CAFを使用して行われ得る。パンニングの動き中に、および、パンニングの動きが停止した後に焦点が合うまでに、キャプチャされたフレームは、ぼけ度を含み得る。パンニングの動きに関連付けられたフレームにおけるぼけ度は、その動きの結果、または再焦点合せプロセスの結果であり得る。再焦点合せから生じるぼけ度は、入力センサーユニット104によって提供され得る、再焦点合せプロセス中のレンズ位置に関連付けられた情報を使用して推定され得る。再焦点合せが行われないとき、パンニングの動きから生じるぼけ度は、パンニングの動き中のデバイスに関連付けられた動き、および/またはフレーム内の被写体の動きを使用して、推定され得る。
[0051]ビデオキャプチャデバイス102は、ビデオを記録中に、CAFプロセスを利用することができる。CAFプロセスでは、カメラレンズ位置が、ビデオフレームにおける被写体への許容可能な焦点を実現するために、連続的に調整され得る。新しい注目する被写体が、入力センサーユニット104によってキャプチャされているシーンに入って来るとき、ユーザは、ビデオキャプチャデバイス102を移動させて、異なる被写体もしくは異なるシーンをキャプチャし、または、シーン内の被写体が移動し、入力センサーユニット104は、新しい被写体の存在を検出することができる。入力センサーユニット104は、次いで、信号をCAFユニット106Aへ送ることができ、CAFユニット106Aは、受信された信号を解析し、信号の焦点値に基づいて、新しい被写体がシーンにおいて検出されたこと、および再焦点合せプロセスのトリガを決定する。新しい被写体に再焦点合せすることは、たとえば、ビデオキャプチャデバイスが、入力センサーユニット104から受信された信号の焦点値を解析することによって、所望の焦点を実現するまで、レンズ位置を調整するなどのアクションを含み得、各信号はフレームのピクセルを含む。CAFユニット106Aは、CAFユニット106Aが再焦点合せプロセスを行っていることを示す指示を、ぼけ度ユニット108へ送り得る。ぼけ度ユニット108は、再焦点合せが行われている間、フレームにおけるぼけ度を推定することができる。ぼけ度ユニット108は、フレームnに関連付けられたぼけ度B(n)を推定し、B(n)をビデオ符号器110へ送ることができる。
[0052]別の例では、ビデオキャプチャデバイス102が、注目する被写体に接近しながら一方向に移動するとき、その被写体に関連付けられた視野が変わることがある。しかしながら、動きは、パンニングの動きが検出されるのと同様には検出されないことがある。たとえば、ユーザが、ビデオキャプチャデバイス102を同じ方向に向けながら、フレームにおける1つまたは複数の被写体により近く、またはそれからより遠くに離れて移動する場合、視野はそれぞれより小さく、またはより大きくなるが、視野はすべての方向で相対的に同量だけ変化するので、フレーム内のグローバルな動きは、合計ゼロになり得る。したがって、このタイプの動きは、グローバルな動きを推定することによって検出されないことがある。入力センサーユニット104は、このタイプの動きを検出することができる動きセンサー(たとえば、加速度計またはジャイロスコープ)を含んでもよく、フレームにおいて検出された被写体のタイプに基づいて、適切な機能を決定するために、検出された情報を動きおよびAFユニット106へ送ることができる。一例では、変化した視野の結果として、顔がフレームにおいて検出され得る。顔が検出される場合、AFが、動き中に顔に焦点を合わせるために使用されてもよく、結果として、AFが実現される間にキャプチャされたフレームは、ぼやけることがある。検出された顔に焦点を合わせることは、たとえば、キャプチャされたフレームにおける顔のサイズ、平均的な人間の顔のサイズ、被写体の距離など、顔検出に関連付けられたパラメータを使用して適切なレンズ位置を決定することによって実現され得る。検出された顔に再焦点合せすることから生じるぼけ度は、焦点が合うまで、各ステップで決定されたレンズ位置を使用して推定され得る。顔が検出されない場合、動きが停止するまで、再焦点合せがトリガされなくてもよく、ぼけ度が、動き中にキャプチャされたフレームにおいて生じ得る。動きから生じるぼけ度は、パンニングの動き中のデバイスに関連付けられた動き、および/またはフレーム内の被写体の動きを使用して、推定され得る。
[0053]別の例では、ユーザは、ビデオキャプチャ中にズームインまたはアウトするように選択することができる。ビデオキャプチャデバイス102が光学ズームを開始するとき、視野がズーミングプロセス中に変化し、再焦点合せを生じ得、ぼけ度が、ズーミング中にキャプチャされたフレームにおいて生じ得る。AFが、ズーミング中に焦点合せのために使用され得、この場合、ズーム率が知られており、焦点が合うためのレンズ位置を決定するために使用され得る。たとえば、ズーミング率など、ズーミング情報はまた、ズーミングプロセス中にキャプチャされたフレームにおいてぼけ度を推定するために、ぼけ度推定ユニットによっても利用され得る。
[0054]他の例では、キャプチャされているフレームにおける他のタイプの動きが、ぼけ度を生じることがあり、ぼけ度は、たとえば、グローバル動きベクトル、露出時間、およびフレームレートなど、カメラパラメータに基づく動き情報を使用して推定され得る。いくつかの例では、ローカル動きベクトル情報もまた、ぼけ度を推定することにおいて利用され得る。ビデオキャプチャデバイス102が焦点合せを行う状況では、焦点合せプロセスに関連付けられたパラメータが、ぼけ度を推定することにおいて利用され得る。加えて、焦点合せが使用されない状況では、ビデオキャプチャデバイス102によって取得された動き情報が、ぼけ度を推定することにおいて利用され得る。このようにして、ぼけ度は、他の機能のために取得かつ/または計算されたパラメータを使用して推定され得、したがって、追加の複雑な計算または測定は、この例では、ぼけ度を推定するために必要とされない。これらの例の各々においてぼけ度レベルを推定することについて、以下でより詳細に説明する。
[0055]ビデオ符号器110は、ぼけをもつフレームについてのぼけ度推定値B(n)を受信し得、それらのフレームにおけるぼけの量を決定するために追加の計算を行う必要なしに、ビデオフレームを符号化することにおいて、ぼけ度レベルを利用することができる。一例では、ビデオ符号器110は、QP再調整112のためにぼけ度レベルを利用し得る。言い換えれば、ビデオ符号器110は、フレームについての推定されたぼけ度のレベルに基づいて、そのフレームを符号化するためのQP値を調整し得る。
[0056]QPは、符号化された画像において保持される詳細(detail)の量を調節する。ビデオ符号器は、符号化中に、たとえば、残差値の量子化を行う。残差値は、ブロックをコーディングするために使用された、参照フレームにおいて、たとえば、マクロブロックなど、コーディングされるべき元のブロックと、予測ブロックとの間の残留ひずみ(residual distortion)を表す残差値のブロックを表す離散コサイン変換(DCT)係数値であり得る。一例では、符号器が、より高い量子化のために極めて小さいQP値を利用するとき、多量の画像詳細が保持される。しかしながら、極めて小さいQP値を使用することは、より高い符号化データレートを生じる。QP値が増すにつれて、ビデオ符号化レートは低下するが、詳細の一部が失われ、画像はよりひずむようになり得る。ぼやけた画像では、画像の詳細はすでにひずんでおり、ビデオ符号器は、画像の品質に影響を及ぼすことなしに、QPを増すことができる。ビデオ符号器は、フレームがぼやけているかどうかを決定するために、アルゴリズムを実装することができる。これらのアルゴリズムは、しかしながら、計算複雑性をビデオ符号器に加える。
[0057]一例では、ぼけ度は、ビデオキャプチャデバイス102において推定され得、したがって、ビデオ符号器110は、フレームがぼやけているかどうかを決定する必要がなくなり得る。代わりに、ビデオ符号器110は、ビデオキャプチャデバイス102から、フレームがぼやけているという指示を受信する。一例では、ビデオ符号器110は、符号化されるべきフレームnについての推定されたぼけ度レベルB(n)を受信し、そのぼけ度レベルに基づいて、QPを増加させるか、減少させるかを決定する。言い換えれば、ビデオ符号器110は、ビデオキャプチャデバイス102から取得された、推定されたぼけ度レベルB(n)に基づいて、QP値を調整する。一例では、ビデオ符号器110は、より大量のぼけ度をもつフレームを符号化するために、より大きいQPを使用し、より少量のぼけ度をもつフレームを符号化するために、より小さいQPを使用する。このようにして、ビデオ符号器110は、よりぼやけていないフレームにより多くのコーディングビットを、よりぼやけたフレームにより少ないコーディングビットを割り振ることができる。より大きいQP値およびより小さいQP値について、本明細書で、それぞれ、より量子化すること、およびあまり量子化しないことに対応するものとして説明するが、いくつかのコーディング技法では、その逆の場合もあり得、そこでは、より大きいQP値およびより小さいQP値が、それぞれ、あまり量子化しないこと、およびより量子化することに対応し得る。
[0058]一例では、本開示の技法を使用して、ぼやけた画像が、画像におけるぼけ度のレベルに基づくQP値を使用して符号化され得る。画像のぼけ度レベルが高くなるほど、画像をコーディングするために使用されるビット数は少なくなる。一例では、量子化調整によって引き起こされるひずみが、よりぼやけていないフレームにおけるほどには顕著になり得ないので、ぼやけた画像をコーディングするために使用されるビット数は、追加のひずみを引き起こすことなしに低減され得る。いくつかの例では、より大きいぼけ度レベルをもつフレームが、より少ないビットを使用してコーディングされ得、かつ、より鮮鋭なフレームが、より少ないビットを使用してぼけているフレームをコーディングすることから節約されたと思われる、より多くのビットを使用してコーディングされ得るように、コード化ビットがフレーム間で再割り振りされ得る。このようにして、コード化ビットの量が全体的に不変のままであり得るので、ビデオ符号器の全体的なビットレートは、大幅に影響を受けない。
[0059]本開示の技法は、ぼけ度のレベルに基づいて、人間の視覚系によって認識可能なひずみを引き起こすように量子化の最大量を決定することができる。実験データが使用されて、人間の知覚と、人間の視覚系の鈍感性とに基づいて、フレームの全体的なひずみが知覚できるほどに元のフレームとは異ならないように、フレームにおけるぼけ度の異なるレベルと、対応する量子化とを提供することが決定され得る。一例では、ビデオ符号器は、コード化ビットの100%と見なされる、137008ビットを使用して、フレームをコーディングする。フレームにおけるぼけ度のレベルに基づいて、対応する量子化が、フレームにおけるひずみの知覚が容易に観測可能でないように決定される。実験は、137008以下の異なる数のコード化ビットを利用し、平均的な人間の視覚系には、コード化ビットの100%が使用されるときと同じ量のひずみとともにフレームが見え得る、あるぼけ度レベルにおいて使用されるビットの最低数を決定し得る。低減されたビット数に対応するQPが、次いで、そのぼけ度レベルへの対応するQPとして使用され得る。
[0060]別の例では、ビデオ符号器110は、ビデオ符号器110によって実行される符号化アルゴリズムを簡略化するために、ぼけ度レベルを利用することができる。簡略化された符号化アルゴリズムは、たとえば、動き推定探索のために、分数ピクセル精度の代わりに、整数ピクセル精度を使用するアルゴリズムであり得る。他の符号化アルゴリズム簡略化は、以下でより詳細に説明するように、例えば、スキップモードの使用と、動き推定において使用される参照ピクチャリストを変更することと、予測コードおよび動き補償のためのブロック区分サイズを変更することとを含み得る。画像符号化において、補間は、周囲ピクセルの色値と強度(intensity)値とに基づいて、ピクセル色とピクセル強度とを概算するために使用され、インターコーディングにおける圧縮を向上させるために使用され得る。インターコーディングは、隣接フレーム内の移動を追跡するための動き推定を指し、1つまたは複数の参照フレームにおいて対応するブロックに対する、フレーム内のブロックの変位を示す。符号化中に、符号器は、フレーム内のブロックのロケーションを決定し得る。圧縮のレベルは、サブピクセル補間または分数補間を使用して、分数ピクセルレベルでブロックを求めて探索することによって、向上し得る。分数が小さいほど、符号器が実現する圧縮が高くなるが、符号化アルゴリズムがより計算集約的になる。
[0061]たとえば、補間は、分数ピクセル値またはサブピクセル値(たとえば、1/2ピクセル値および1/4ピクセル値)を生成するために行われてもよく、符号化アルゴリズムは、コンテンツに基づいて、異なるレベルの精度を使用することができる。より詳細なフレーム、またはフレーム内のブロックに対して、符号化アルゴリズムは、たとえば、1/4ピクセルロケーションにおいてピクセル値を補間する必要があり得る1/4など、より小さいサブピクセル値を利用すし得る。より詳細でないフレーム、またはフレーム内のブロックに対して、符号化アルゴリズムは、1/2ピクセル値における補間を利用し得る。この例では、1/4ピクセル値を補間することは、より良い動き推定を提供することができるが、1/2ピクセル値を補間することよりも計算集約的である。ぼやけたフレームでは、画像は、それらのフレームにおいてより少ない詳細を有し、結果として、サブピクセルレベルで補間することは、画像の詳細を保持するために必須でない。したがって、整数ピクセル精度が、動き推定ブロックを符号化するために利用され、この場合、符号化アルゴリズムがそれらのピクセル値を見るので、ピクセル値を補間する追加の計算複雑性が回避され得る。
[0062]ビデオ符号器110は、フレームの推定されたぼけ度レベルB(n)を、B(n)評価ユニット114におけるしきい値と比較して、簡略化された符号化アルゴリズムを実行するかどうかを決定し得る。一例では、しきい値は、デフォルト値に設定され得る。別の例では、しきい値は、ビデオキャプチャデバイス102および/またはビデオ符号器110における設定に基づいて変更され得る。別の例では、しきい値は、システムのユーザによって定義され得る。たとえば、ぼけ度レベルは、範囲[0,1]における値であってもよく、デフォルトでは、しきい値は、0.5、または、ぼけ度レベルの値の範囲の中点に設定され得る。他の例では、しきい値は、ユーザ選好によって設定され得る。B(n)評価ユニット114が、推定されたぼけ度がしきい値を上回ると決定する場合、B(n)評価ユニット114は、ぼやけたフレームを符号化するために、適切な簡略化されたアルゴリズムを実行するように、符号化アルゴリズムユニット116に通知する。
[0063]一例では、ビデオ符号器110は、ビデオキャプチャデバイス102から、キャプチャされたフレームに関連付けられたパラメータを取得し、カメラパラメータに基づいて、ぼけ度レベルを推定し得る。ビデオ符号器110は、次いで、符号化レートを向上させるために、上記で説明したように、推定されたぼけ度レベルを利用し得る。このようにして、ぼけ度が検出されるフレームについての、ビデオキャプチャデバイス102によって提供されたパラメータを利用することによって、ビデオ符号器110は、フレームがぼやけているかどうかを決定する必要なしに、計算を使用してぼけ度を推定でき、その理由は、入力センサーユニット104と動きおよびAFユニット106とによって行われたカメラ機能に基づいて、ビデオキャプチャデバイス102によってぼけ度が検出されるからである。
[0064]図2は、本開示の技法を実装し得る、別の例示的なビデオキャプチャデバイスおよびビデオ符号器システム200を示すブロック図である。図2の例は、図1の例に実質的に対応するが、以下でより詳細に説明するように、ビデオ符号器が図1において行う計算の一部分は、図2においてビデオ符号器210によって、またはビデオキャプチャデバイス202によって行われ得る。図2に示すように、システム200は、たとえば、ビデオストリームをキャプチャし、リンク220を介してビデオ符号器210へ送る、ビデオカメラなどのビデオキャプチャデバイス202を含む。システム200はまた、ぼけ度ユニット208と、QP再調整ユニット212とを含み得、ぼけ度ユニット208およびQP再調整ユニット212は、ビデオキャプチャデバイス202またはビデオ符号器210の一部であってもよい。したがって、図2の例では、ぼけ度ユニット208およびQP再調整ユニット212は、ユニット208および212のいずれかがビデオキャプチャデバイス202またはビデオ符号器210内であり得るという理解とともに、いずれのデバイスからも別個に示される。ビデオキャプチャデバイス202およびビデオ符号器210は、モバイルデバイスを含む、広範囲にわたるデバイスのいずれかを備え得る。いくつかの例では、ビデオキャプチャデバイス202およびビデオ符号器210は、ワイヤレスハンドセット、携帯情報端末(PDA)、モバイルメディアプレーヤ、カメラ、または、ビデオデータをキャプチャかつ符号化することができる任意のデバイスなど、ワイヤレス通信デバイスを備える。いくつかの例では、ビデオキャプチャデバイス202およびビデオ符号器210は、同じシステムの一部として、同じ筐体に含まれてもよい。他の例では、ビデオキャプチャデバイス202およびビデオ符号器210は、2つ以上の異なるデバイスに常駐してもよく、2つ以上の異なるシステムの一部であってもよい。ビデオキャプチャデバイス202およびビデオ符号器210が、2つ以上の異なるデバイスに常駐する場合、リンク220は、ワイヤードまたはワイヤレスリンクであってもよい。
[0065]図2の例では、図1の例のように、ビデオキャプチャデバイス202は、入力センサー204と動きおよびAFユニット206とを含み得る。動きおよびAFユニット206は、たとえば、CAFユニット206A、ズームユニット206B、および動きユニット206Cなど、ビデオキャプチャに関連付けられたいくつかの機能ユニットを含み得る。ビデオ符号器210は、量子化ユニット218と、フレームぼけ度評価ユニット214と、符号化アルゴリズムユニット216とを含み得る。本開示によれば、ビデオキャプチャデバイス202は、たとえば、ズーミング、パンニング、動き検出など、1つまたは複数の機能に関連付けられたパラメータを取得するように構成され得、それらのパラメータは、動きおよびAFユニット106によってさらに処理され得、次いでぼけ度ユニット208に提供され得る。ぼけ度ユニット208は、フレームのぼけ度のレベルを推定し得、推定されたぼけ度のレベルに基づいて、QP再調整ユニット212は、次いで、QPを再調整し得る。QP再調整ユニット212は、ビデオ符号器210から前のQP値を受信し得、それに基づいて、QP再調整ユニット212は、再調整されたQP値を計算し得る。一例では、再調整されたQP値は、フレームにおけるぼけ度のレベルに基づき、よりぼやけていないフレームを符号化することは、より量子化すること(たとえば、より小さいQP)を利用し得、よりぼやけたフレームは、あまり量子化しないこと(たとえば、より大きいQPを利用する)を利用し得、この場合、再調整された量子化は、ビデオ符号器210によって使用された量子化の以前の量を超えることができない。ぼけ度ユニット208およびQP再調整ユニット212は、再調整されたQPとぼけ度推定値とをビデオ符号器210へ送り得る。ビデオ符号器210は、ぼけ度情報を使用して、適切なビデオ符号化データレートを決定し得、および/またはビデオ符号化アルゴリズムを簡略化し得る。ビデオ符号器210は、量子化中に、再調整されたQPを使用することができる。この例では、ぼけ度レベル推定値に基づいてQPを調整することは、ビデオ符号器210における計算複雑性をさらに低減することができる。ビデオ符号器210は、ぼけ度以外の要因に基づいて、QPをさらに再調整することができる。
[0066]ビデオキャプチャデバイス202の入力センサー204は、キャプチャするためのフレームコンテンツを検知することができる。キャプチャされたシーンにおける変化は、入力センサー204が信号を動きおよびAFユニット206へ送り、たとえば、図1に関して上記で説明したように、パンニングの動き、ズーミング、または他のタイプの動き中の再焦点合せなど、適切な機能をトリガする結果となり得る。動きおよびAFユニット206は、フレームにおける動きの存在、および/または、AFがフレーム上で行われるかどうかを示す指示を、ぼけ度ユニット208へ送り得る。ぼけ度ユニット208は、動きおよびAFユニット206がそれについて動きおよび/またはAFを示すフレームにおけるぼけ度を推定し得る。ぼけ度ユニット208は、フレームnに関連付けられたぼけ度B(n)を推定し、B(n)をQP再調整ユニット212へ送り得る。QP再調整ユニット212は、上記で説明したように、ぼけ度レベルを利用して、そのフレームについてのQPを再調整し得る。ぼけ度ユニット208およびQP再調整ユニット212は、フレームnについてのぼけ度推定値B(n)と再調整されたQPとをビデオ符号器210へ送り得る。
[0067]ビデオ符号器210は、ぼけが検出されるフレームについてのぼけ度推定値B(n)と再調整されたQPとを受信し得、いくつかの例では、たとえば、それらのフレームにおけるぼけの量を決定するために追加の計算を行う必要なしに、ビデオフレームを符号化することにおいて、ぼけ度レベルを利用し得る。一例では、ビデオ符号器210は、再調整されたQPを利用して、量子化ユニット218において、フレームnにおけるブロックについての残差データに関連付けられた係数値を量子化し得る。
[0068]再調整されたQPを利用することに加えて、ビデオ符号器210は、ビデオ符号器210によって実行される符号化アルゴリズムをさらに簡略化するために、ぼけ度レベルを利用し得る。簡略化された符号化アルゴリズムは、たとえば、上記で説明したように、動き推定探索のために、分数の代わりに、整数ピクセル精度を使用するアルゴリズムであり得る。他の符号化アルゴリズム簡略化は、以下でより詳細に説明するように、例えば、スキップモードの使用と、動き推定において使用される参照ピクチャリストを変更することと、予測コードおよび動き補償のためのブロック区分サイズを変更することとを含み得る。一例では、ビデオ符号器210は、推定されたぼけ度レベルに基づいて、符号化アルゴリズム簡略化方法のうちのどれを使用すべきかを決定し得る。一例では、ビデオ符号器210は、以下でさらに説明するように、符号化アルゴリズム簡略化の1つまたは複数の方法を実施することができる。ビデオ符号器210は、フレームの推定されたぼけ度レベルB(n)を、B(n)評価ユニット214におけるしきい値と比較して、簡略化された符号化アルゴリズムを実行するかどうかと、どれを実行すべきかと、を決定し得る。一例では、しきい値は、デフォルト値に設定され得る。別の例では、しきい値は、ビデオキャプチャデバイス202および/またはビデオ符号器210における設定に基づいて変更され得る。別の例では、しきい値は、システムのユーザによって定義され得る。B(n)評価ユニット214が、推定されたぼけ度がしきい値を上回ると決定する場合、B(n)評価ユニット214は、ぼやけたフレームを符号化するために、適切な簡略化されたアルゴリズムを実行するように、符号化アルゴリズムユニット216に通知する。
[0069]図3は、キャプチャされたフレームにおいてぼけ度を生じる、ビデオキャプチャ機能を示す流れ図である。図3の流れ図は、図1および図2のビデオキャプチャデバイス102および202など、ビデオキャプチャデバイスによって行われる機能に対応し得る。ビデオキャプチャデバイスがフレームをキャプチャするとき、たとえば、キャプチャされているシーン内の被写体の動き、デバイスの動き、ズーミングなど、状態における変化が、入力センサーユニット(たとえば、入力センサーユニット104/204)によって検出され得る。入力センサーユニットは、検出された状態に関連付けられたパラメータを、たとえば、動きおよびAFユニット106/206など、動きおよびAFユニットに提供し得る(302)。動きおよびAFユニットは、入力センサーユニットからのパラメータに基づいて、キャプチャされたフレームに関連付けられた動きのタイプと、AFが必要であるかどうかと、AFが必要であるときに行われるべきAFのタイプとを決定し得る。
[0070]動きおよびAFユニットは、動きがパンニングの動きであるかどうかを決定し得る(304)。パンニングの動き中に、ビデオキャプチャデバイスは、ビデオキャプチャデバイスの物理的な移動を通して、あるシーンから別のシーンへ移動し得る。したがって、キャプチャされたシーンは、パンニングの動きの開始から、ビデオキャプチャデバイスが停止するか、またはパンニングの動きが停止するまで、まったく異なり得る。ぼけ度が、パンニングの動き中に生じ得、ぼけ度を正確に推定できるようにするために、動きおよびAFユニットは、パンニングの動きの段階に基づいて、ぼけ度ユニットに提供するべき適切なパラメータを決定し得る。パンニングが開始するとき、およびそれが停止するまで、再焦点合せがなくてもよく、パンニングが停止するとすぐに、再焦点合せが開始する(306)。パンニングの動き中に、ぼけ度が、ローカルな動きとグローバルな動きとによって引き起こされ得る。ローカルな動きの一例を、図4Aによって示し、そこで、カメラが移動するにつれて、フレームN−1における被写体がフレームNにおける異なるロケーションへ移動する(たとえば、周囲に風が吹きつけられている花、またはシーンを横切って進むボール)。被写体が露出時間中に移動する場合、フレームN−1において影付き領域によって示す被写体境界は、キャプチャされたフレームにおいてぼやけて見え得る。したがって、より長い露出時間は、被写体の位置の変化のより多くをキャプチャすることを可能にし、短い露出時間よりも多くのぼけを生じる。グローバルな動きは、図4Bに示すように、フレームのエッジの動きの方向を示す矢印によって示すように、フレーム全体の動きから生じ得る。グローバルな動きは、カメラ移動から生じ得る。カメラが速く移動するほど、フレームにおける被写体位置の変化が大きくなり、被写体のぼけ度が大きくなる。
[0071]パンニングの動きにおいて動きが停止するとき、再焦点合せプロセスが開始し得る。CAFが、パンニングの動き中に再焦点合せを行うために利用され得、CAFに関連付けられたパラメータが、ぼけ度を推定する(308)ために、カメラからぼけ度ユニット(たとえば、ぼけ度ユニット108または208)へ提供され得る。CAFプロセスについては、図7を参照しながら以下でより詳細に説明する。再焦点合せが行われていないとき、パンニングの部分中に、以下でより詳細に説明するように、ぼけ度ユニットに提供され得る動きおよび他のカメラパラメータを使用して、ぼけ度が推定され得る(310)。再焦点合せが行われるべきでないとき、パンニングの動きの部分は、以下でより詳細に説明するように、グローバル動き推定を使用して検出され得る。
[0072]検出された動きがパンニングの動きではない場合、動きおよびAFユニットは、検出された動きが、動きセンサーによって検出された別のタイプの動きの結果であるかどうかを決定し得る(312)。たとえば、この動きは、図4Cに示すような矢印によって示す方向に沿って、ビデオキャプチャデバイスが注目する被写体に接近する結果であり得る。この例では、ビデオキャプチャデバイスが、矢印によって示す方向に沿って移動するにつれて、視野が変化し続ける。しかしながら、図4Dが示すように、このタイプの動きにおけるフレーム内の動きは、矢印の方向に沿っており、したがって、その動きがすべての方向で同じであり、グローバルに相殺するので、フレームのグローバルな動きは0であり、結果として、このタイプの動きは、パンニングの動きを検出するアルゴリズムおよび/またはセンサーによって検出され得ない。しかしながら、ビデオキャプチャデバイスの入力センサーユニットにおける1つまたは複数の動きセンサー(たとえば、加速度計)は、この動きを検出し、この動きに関する情報を動きおよびAFユニットへ送ることができる。動きが動きセンサーによって検出される場合(312)、動きおよびAFユニットは、顔が、動き中にキャプチャされたフレームにおいて検出されるかどうかを決定し得る(314)。顔が検出されない場合(314)、再焦点合わは、動き中に必要でなく、動きおよび他のカメラパラメータを使用して、ぼけ度を決定するために、ぼけ度の指示(indication)がぼけ度ユニットへ送られ得る(318)。動きが停止するとき、CAFが、再焦点合せするためにトリガされ得、CAF中のぼけ度が、(308)の場合と同じように推定され得る。図4Eに示すように、動き中に、顔が検出される場合(314)、検出された顔に関連付けられたパラメータを使用して、焦点レンズが直接的に調整されてもよく、ぼけ度が、顔に焦点が合うように調整されたレンズ位置に基づいて推定され得る(316)。顔が検出されるフレームについてのAFプロセスについては、図8を参照しながら以下でより詳細に説明する。
[0073]パンニングの動きがなく、動きセンサーが動きを検出しない場合、動きおよびAFユニットは、光学ズーミングが行われているかどうかを決定することができる(320)。ビデオキャプチャデバイスが、図4Fに示すようにズーミングを開始するとき、視野が変化し、ぼけ度がズーミングプロセス中に生じ得る。ビデオキャプチャデバイスは、たとえば、ズーミング率など、利用可能な光学ズーミング情報を利用して、ズーミング中にキャプチャされたフレームにおけるぼけ度を決定し得る(322)。ズーミング中にキャプチャされたフレームについてのAFプロセスについては、図9を参照しながら以下でより詳細に説明する。
[0074]動きおよびAFユニットは、たとえば、フレーム内の被写体の動き、他のアクティビティの結果としてのグローバルな動きなど、他のソースからのぼけ度を検出することができる(324)。この場合、動きおよびAFユニット(たとえば、動きおよびAFユニット106または206)は、キャプチャされたフレームにおけるぼけ度の検出を示すことができ、ぼけ度ユニット(たとえば、ぼけ度ユニット108または208)に、ぼけ度ユニットがぼけ度を推定するために利用することができるパラメータを提供することができる(326)。たとえば、動きおよびAFユニットは、ぼけ度ユニットがぼけ度を推定するために利用することができる、動きおよび他のカメラパラメータを提供することができる。
[0075]上記で説明した動きの例の各々では、ぼけ度ユニットは、適切なパラメータを使用して、キャプチャされたフレームにおいてぼけ度を推定することができる。ぼけ度ユニットは、次いで、推定されたぼけ度レベルをビデオ符号器に提供することができ、ビデオ符号器は、推定されたぼけ度を利用して、符号化レートを向上し得る。上記の例の各々においてぼけ度を推定することについて、以下でより詳細に説明する。
[0076]図5は、本開示の技法を実装するビデオ符号化システム500の一例を示すブロック図である。図5に示すように、システム500は、ぼけ度ユニット508およびQP再調整ユニット512に加えて、ビデオ符号器510を含む。ぼけ度ユニット508は、図1のぼけ度ユニット108または図2のぼけ度ユニット208の一例であり得る。一例では、ぼけ度ユニット508および/またはQP再調整ユニット512は、ビデオ符号器510の一部であり得る。この例では、ビデオ符号器510は、図1のビデオ符号器110の一例であり得る。別の例では、ぼけ度ユニット508および/またはQP再調整ユニット512は、ビデオ符号器510の一部でなくてもよい。ビデオ符号器510は、本開示の技法を実装する要素に加えて、従来のビデオ符号器の要素を含む。ビデオ符号化システム500は、たとえば、図1のビデオキャプチャデバイス102または図2のビデオキャプチャデバイス202など、ビデオキャプチャデバイスによってキャプチャされたビデオフレームを符号化することができる。F(n)502は、ビデオ符号器が符号化のために処理中である現在のフレームを表し得る。
[0077]その通常の動作中、すなわち、フレームに焦点が合っており、再焦点合せがビデオキャプチャデバイスにおいて行われていない間、または、フレームにおけるぼけ度の指示がないとき、ビデオ符号器510は、ビデオ符号器510がフレーム間予測モードで動作中である場合、動き推定を現在のフレーム上で行うことができる。代替的に、ビデオ符号器510は、フレーム内予測モードで動作中である場合、フレーム内予測を現在のフレーム上で行うことができる。選択器532を使用して、ビデオ符号器510は、フレーム間予測とフレーム内予測との間で切り替えることができる。たとえば、フレームにおいて推定されたぼけ度のレベルがあるしきい値を超える場合、ビデオ符号器510は、選択器532を使用して動き補償ユニット516を起動することによって、フレーム間予測モードで動作することができる。フレーム間予測モードで動作するとき、ビデオ符号器510は、以下でより詳細に説明するように、フレーム間予測データと現在のフレームとの間の差分を表す残差データに加えて、動き補償のために動きベクトルデータを利用することができる。
[0078]一例では、ビデオ符号器510は、フレーム内予測モードで動作中であり得る。フレーム内予測データが、現在のフレーム502から減算されて、残差データが生成され得、その結果が、たとえば、離散コサイン変換(DCT)など、変換ユニット522において変換を受けて、残差データを表す変換係数を生成することができる。たとえば、変換係数など、変換されたフレームデータは、次いで、量子化ユニット524において量子化を受けることができる。ビデオ符号器510は、ある画像品質を保証するデフォルトのQPを有してもよく、ただし、より高度の量子化は、符号化されたフレームにおいてより多くの詳細を保持するが、より高いデータレート、すなわち、所与のフレームまたはブロックについての残差データを符号化するために割り振られたより多数のビットを生じる。量子化されたフレームデータは、次いで、さらなる圧縮のために、エントロピーコーディングユニット526を通過することができる。量子化されたフレームは、逆量子化ユニット530と逆変換ユニット528とにフィードバックされ得、フィルタ処理されていない信号を取得するために、フレーム内予測ユニット518からの結果と結合することができる。フィルタ処理されていない信号は、デブロッキングフィルタ520を通過することができ、それによって再構成されたフレーム、F(n)を生じ、F(n)は、他のフレームを符号化するための参照フレームとして使用され得る。
[0079]一例では、たとえば、ビデオカメラなどのビデオキャプチャデバイスの、たとえば、図1の入力センサーユニット104、もしくは図2の入力センサーユニット204などの入力センサーが、新しい注目する被写体が、キャプチャされているシーンに入って来るときを検出することができ、または、ユーザが、異なる被写体もしくは異なるシーンをキャプチャするために、入力センサーの方向を変更し、または、キャプチャされたフレームにおいて動きを生じる機能がトリガされる。新しい被写体または動きを検出することは、ビデオキャプチャデバイスに、新しい被写体への焦点を再確立するために再焦点合せを開始させること、または、再焦点合せが必要とされない場合、キャプチャされたフレームにおいてぼけ度を検出させることができる。再焦点合せが行われる例では、再焦点合せは、(たとえば、CAF中に)所望の焦点が達成されるまで、または、機能(たとえば、ズーミング、顔検出)に関連付けられたパラメータに基づいて決定されたレンズ位置まで、レンズ位置を調整することを必要とし得る。再焦点合せ中に、キャプチャされたフレームは、所望の焦点を有していないことがあり、結果としてぼやけることがある。ビデオ符号化システム500は、ぼやけたフレームのための符号化データレートを低減し、かつ/または、ぼやけたフレームに適用される符号化アルゴリズムを簡略化するために、フレームのぼけ度を活用し得る。
[0080]本開示の技法によれば、ビデオキャプチャデバイスまたはビデオ符号器510内にあってもよい、ぼけ度ユニット508は、フレームF(n)のぼけ度B(n)を推定し得る。ぼけ度ユニット508は、推定されたぼけ度レベルをQP再調整ユニット512へ送り、そこで、QP値は、上記で説明したように、推定されたぼけ度レベルに基づいて再調整される。一例では、QP再調整ユニット512は、ビデオキャプチャデバイス内にあってもよい。別の例では、QP再調整ユニット512は、ビデオ符号器510内にあってもよい。QP再調整ユニット512は、推定されたぼけ度レベルに基づいて、QP値を再調整し得る。ビデオ符号器510は、他の要因にさらに基づいて、QP値を再調整することができる。
[0081]ぼけ度ユニット508は、推定されたぼけ度レベルをビデオ符号器510へ送ることができ、そこで、フレームぼけ度評価ユニット514が、推定されたぼけ度レベルB(n)をしきい値と比較して、簡略化された符号化アルゴリズムを実行するかどうかを決定する。図5が示すように、B(n)がしきい値を上回る場合、ぼけ度評価ユニット514は、簡略化された符号化アルゴリズムを使用するために、信号を動き推定ユニット510へ送る。一例では、符号化の簡略化は、たとえば、動き推定ブロック探索において、サブピクセル補間を必要としないか、またはより低いサブピクセル補間(たとえば、1/4以下の代わりに、1/2)を必要とするように、ピクセル精度レベルを調整することを含み得、それによって、コーディングされるべきデータの量を低減できる。たとえば、推定されたぼけ度レベルがしきい値を超える場合、ビデオ符号器510は、分数ピクセル精度動き推定探索の代わりに、整数ピクセル精度動き推定探索を選択的に起動し得る。この例では、参照フレーム内で分数ピクセルを補間するために、計算リソースを費やす代わりに、ビデオ符号器510は、整数ピクセル精度と、補間を行わないこととに依存し得る。整数ピクセル精度を使用することによって、ビデオ符号器510は、分数ピクセル精度を使用して選択されたブロックよりも正確ではない予測ブロックを選択し得る。すでにぼやけているフレームでは、しかしながら、低減された精度は、画像品質に実質的に影響を及ぼし得ない。したがって、整数精度は、許容可能であり得る。サブピクセル補間を行う必要をなくすことによって、ビデオ符号器510は、より少ない計算を行い、それによって、電力など、より少ないシステムリソースを使用する結果となり、符号化中の処理時間とレイテンシとを短縮する。
[0082]別の例では、符号化の簡略化は、動き推定のために、フレーム内でより大きいブロックを使用することによって、ブロック区分レベルを調整することを含み得る。たとえば、H.264規格では、フレームは、16×16、8×16、16×8、8×8、8×4、4×8、および4×4のサイズのブロックへの区分であり得る。たとえば、推定されたぼけ度レベルがしきい値を超える場合、ビデオ符号器510は、動き推定探索のために、たとえば、16×16など、より大きいブロック区分を選択し得る。この例では、各フレームがより少ないブロックから構成されるようになり、したがって、より少ない動きベクトルがそのフレームについて符号化されるようになるので、ビデオ符号器510は、よりぼやけたフレームを符号化するために、よりぼやけていないフレームを符号化するときよりも少ないブロックを使用する。より大きいブロック区分と、したがって、フレームごとにより少ないブロックとを使用することによって、ビデオ符号器510は、より少ない動きベクトルを符号化し、それによって、より少ないシステムリソースを使用する結果となる。
[0083]さらに別の例では、符号化の簡略化は、スキップモードで動作することを含んでもよく、そこで、ビデオ符号器510は、フレームを符号化することなしにスキップし、たとえば、ビデオ符号器510は、これらのフレームを破棄する。推定されたぼけ度レベルがフレームのシーケンスについてのしきい値を超える場合、ビデオ符号器510は、ぼけ度レベルがとても高いので、連続フレームのグループが実質的に等しく見えるようになるという仮定に基づいて、動作する。結果として、ビデオ符号器510は、その推定されたぼけ度レベルがあるしきい値を上回る、ぼやけたフレームのうちの1つを符号化し、他の実質的に等しいフレームの符号化をスキップすることができる。キャプチャされたビデオが後に復号かつ/または表示されるとき、1つの符号化されたフレームが、一度復号され、スキップされたフレームの代わりに表示するために繰り返され得る。スキップモードを使用することによって、ビデオ符号器510は、フレームのグループの代わりに1つのフレームを符号化し、したがって、ビデオシーケンスを符号化するために必要とされる計算の量を低減し、符号化中に消費される電力の量を低減する。加えて、複数のフレームの代わりに1つのフレームを符号化することは、符号化プロセス中の処理時間とレイテンシとを短縮する。ビデオ符号器510はまた、推定されたぼけ度レベルがしきい値を上回る場合、フレーム内の符号化ブロックとともにスキップモードを利用することもでき、そこで、ビデオ符号器510は、1つのブロックを符号化し、ぼけ度のレベルのために区別不可能であり得る他のブロックの代わりに、符号化されたブロックを使用する。一例では、ビデオ符号器510は、CAFが、再焦点合せするために採用されるとき、スキップモードを利用し得る。
[0084]B(n)がしきい値を上回る場合、ぼけ度評価ユニット514はまた、信号を参照フレームユニット504へも送る。参照フレームユニット304は、F(n)のための参照フレームを、前のフレーム、F(n−1)に設定し得る。参照フレームユニット504は、その情報を動き補償ユニット516へ送り、動き補償ユニット516は、インター予測モードを使用して、すなわち、現在のフレームの代わりに、他のフレームからのデータを使用して、現在のぼやけたフレームにおいて動き補償を行うことができる。したがって、ぼけ度レベルB(n)は、予測のためにインターモードとイントラモードとの間で、選択532を制御することができる。フレーム間予測データが、現在のフレーム502から減算され得、その結果は、たとえば、離散コサイン変換(DCT)など、変換ユニット522において変換を受けることができる。
[0085]本開示の技法によれば、推定されたぼけ度レベルは、QP再調整ユニット512へ送られ得、QP再調整ユニット512は、ビデオ符号器内またはビデオキャプチャデバイス内にあってもよい。QP再調整ユニット512は、フレームにおけるぼけ度B(n)の量に基づいて、QPを調整する。一例では、推定されたぼけ度レベルがしきい値を上回る場合、QP値が再調整される。別の例では、フレームにおけるぼけ度のレベルが評価され、QP値が、フレームにおけるぼけ度のレベルに基づいて再調整され、ただし、再調整の量は、フレームにおけるぼけ度の重大度に比例する。
[0086]一例では、フレームにおけるぼけ度がひどくなりすぎることはなく、結果として、QPの再調整が好ましくないことがある。結果として、量子化は、推定されたぼけ度レベルがしきい値を超えないとき、デフォルトのQP値を使用して行われ得る。別の例では、QP再調整ユニット512は、推定されたぼけ度レベルB(n)に基づいて、ある量のぼけ度がフレームにおいて存在するかどうかを決定して、推定されたぼけ度レベルがしきい値を超えるとき、QPを増すことができる。QPが増すにつれて、ビデオ符号化レートは低下するが、詳細の一部が失われ、画像はよりひずむようになり得る。ぼやけた画像では、画像の詳細はすでにひずんでおり、量子化レベルを増すことは、画像の品質に知覚できる影響をほとんど及ぼし得ない。QP再調整ユニット512は、調整されたQP、QPnewを、量子化ユニット524へ送ることができる。量子化ユニット524は、QPnewを使用して、変換ユニット522から受信された、たとえば、残差データ変換係数値など、変換された残差フレームデータを量子化することができる。量子化されたフレームデータは、次いで、符号化されたデータのさらなる圧縮、記憶、または送信のために、エントロピーコーディング526を通過することができる。符号器は、量子化された残差変換係数データを、逆量子化ユニット530および逆変換ユニット528へフィードバックすることができ、フレーム間予測516からの結果と結合して、フレーム、またはフレーム内のブロックを表す、再構成されたデータを取得することができる。再構成されたデータは、デブロッキングフィルタ520を通過することができ、それによって、再構成されたフレーム、F(n)を生じる。
[0087]図6は、本開示の技法を実装するレート制御(RC)ブロック610の一例を示すブロック図である。図6のレート制御ブロック610は、たとえば、ビデオフロントエンド(VFE)デバイス602など、ビデオキャプチャデバイスによってキャプチャされたフレームにおいて推定されたぼけ度に基づいて、ビデオ符号器のレート制御を行うことができる。RCブロック610は、たとえば、図1のビデオ符号器110、図2のビデオ符号器210、または図5のビデオ符号器510など、ビデオ符号化システムの一部であり得る。一例では、RCブロック610は、図5のビデオ符号器510の内部に常駐し得る。別の例では、RCブロック610の少なくとも一部分は、ビデオ符号器510の内部に常駐してもよく、他の部分は、ぼけ度ユニット508および/またはQP再調整ユニット512の一部であってもよい。
[0088]一例では、RCブロック610は、たとえば、動き情報など、キャプチャされたフレームに関連付けられたパラメータを含む、VFEデバイス602によってキャプチャされたビデオのフレームを受信することができる。VFEデバイス602はまた、検出された動きと、検出された動きのタイプとに基づいて、フレームにおいて検出されたぼけ度の指示を通信することもできる。動きぼけ推定器ブロック608は、ぼけ度推定ユニット108または208に類似していてもよく、本開示で説明するように、VFEデバイス602から通信された情報に基づいて、キャプチャされたフレームのぼけ度を推定することができる。キャプチャされたフレームの符号化が、次いで、推定されたぼけ度を使用して調整され得る。
[0089]動きぼけ推定器ブロック608は、推定されたぼけ度値を、QP再調整ユニット512の一部であり得る、フレームQP決定ブロック612へ送ることができる。QP決定ブロック612は、以下でより詳細に説明するように、推定されたぼけ度に基づいて、対応するフレームを符号化するためのQP値を調整することができる。RCブロック610はまた、イントラまたはインターコーディングを使用して現在のフレームをコーディングするかと、適切なモードと、を決定し得るピクチャタイプ決定ブロック614をも備え得る。ピクチャタイプ決定ブロック614によって選択されたピクチャのタイプもまた、フレームを符号化するためのQP値を決定するために使用され得、ただし、QPは、変換ユニット522によって生成される残差変換係数に適用される量子化レベルを選択するために使用され得る。このQP値は、ぼけ度をもつフレームについて、フレームの推定されたぼけ度に基づいて変化し得る。
[0090]RCブロック610はまた、キャプチャされたフレームを符号化することにおいて使用されるビットレートを提供する、固定ビットレート(CBR)または可変ビットレート(VBR)ブロック620をも含み得る。RCブロック610はまた、フレーム当たりのコード化ビットのための限界目標(たとえば、137008ビット)を提供する仮説参照復号器(HRD:hypothesis reference decoder)またはビデオバッファ検証器(VBV)ブロック624をも含み得る。HRD/VBVブロック624は、たとえば、H.264/H.263/MPEG−4/VP7などのコーデックタイプに依存し得る。HRD/VBVブロック624は、復号器側のバッファサイズに基づく、コード化ピクチャバッファ(CPB)ブロック636からの情報を使用して、コード化ビットのための限界目標を決定することができる。CBR/VBRブロック620からのビットレートと、HRD/VBVブロック624によるコード化ビットのための限界目標とが、GOPおよびフレーム目標ビット割振りブロック616に提供され得、GOPおよびフレーム目標ビット割振りブロック616は、ピクチャタイプと、CBR/VBRブロック620によって生成されたビットレート制約と、HRD/VBVブロック624によって提供された限界とに基づいて、現在のピクチャのための目標コード化ビットを割り振る。したがって、所与のビットレート制約(ビット/秒)では、RCブロック610は、フレームについての目標コード化ビットを導出することができ、ただし、目標コード化ビットは、HRD/VBVブロック624によって定義された制約によって制限され得る。
[0091]一例では、CAFまたはAFが行われない、いくつかのタイプの動きでは、ぼけ度が、再焦点合せが行われ得ない動きに基づいて検出され得る。この例では、VFEデバイス602は、キャプチャされたフレームに関連付けられた、グローバル動きベクトル情報と露出時間とを通信することができる。動きぼけ推定器ブロック608は、以下でより詳細に説明するように、VFEデバイス608からのグローバル動きベクトル情報と、ローカル動きベクトル情報604とに基づいて、グローバル動きベクトルがフレームにおいて真のグローバルな動きを示すかどうかを決定し得る。動きぼけ推定器ブロック608が、グローバル動きベクトルがフレームにおいて真のグローバル動きを示すと決定する場合、動きぼけ推定器ブロック608は、以下でより詳細に説明するように、グローバル動きベクトルと露出時間とを使用して、フレームのぼけ度を推定し得る。動きぼけ推定器ブロック608が、グローバル動きベクトルがフレームにおいて誤ったグローバル動きを示すと決定する場合、動きぼけ推定器ブロック608は、フレームにおけるぼけ度を推定し得、フレームは、フレームにおいてぼけ度が検出されないときに通常行われるように、かつQP値を調整することなしに符号化され得る。
[0092]図7は、CAFプロセスと呼ばれることがある、例示的な連続自動焦点再焦点合せ(continuous auto-focus refocusing)プロセスを示す図である。本開示の一態様では、CAF機能は、たとえば、図1のビデオキャプチャデバイス102または図2のビデオキャプチャデバイス202など、ビデオキャプチャデバイスにおいて実装され得る。CAF再焦点合せは、パンニングの動きが検出されるとき、動きが停止すると、再焦点合せ中に利用され得る。CAFプロセスは、たとえば、機能の中でも、CAFユニット106A(図1)または206A(図2)によって行われ得る、コントラスト測定と探索アルゴリズムとを含み得る、受動自動焦点アルゴリズムであり得る。コントラスト測定は、キャプチャされたフレームにおける焦点ウィンドウ上でルーマ値を高域フィルタリングすることによって取得された焦点値(FV)に基づいてもよい。自動焦点アルゴリズムは、最も高いコントラストに達するとき、すなわち、FVがピークに達するとき、最良または最適な焦点が達成されると決定すし得る。CAFユニットは、最良または最適な焦点がフレーム内で達成され得るように、探索アルゴリズムを実施して、最も高いか、または最も最適なコントラストに達する、すなわち、FVがピークに達する方向で、レンズ位置を調整し得る。
[0093]図7に示すように、焦点値(FV)は、レンズ位置に応じてプロットされ得る。レンズ位置の範囲は、近端レンズ位置(702)から遠端レンズ位置(704)までにわたる、たとえば、ビデオカメラなど、ビデオキャプチャデバイスのレンズの範囲を表すことができる。最適な焦点におけるフレームは、FV0(706)のピーク焦点値を有し得る。この例では、新しい被写体がフレームに入って来て、再焦点合せプロセスを開始するためにCAFユニット106Aまたは206Aをトリガする信号を生じ得る。その時点において、フレームの焦点値は、FV0(706)からFV1(708)へ低下し得るが、レンズ位置は、まだ変化し始めていない。レンズ位置は、次いで、新しい最適またはピーク焦点値に達するまで、段階的に調整され得る。この例では、最適な焦点値は、新しいレンズ位置における、FV10(710)であり得る。再焦点合せプロセス中に、ビデオキャプチャデバイスシステムは、最適な値が達成されるまで、各レンズ位置において焦点値を決定し得る。再焦点合せがトリガされるとき、探索方向、すなわち、レンズ位置が近端(702)に向かうべきであるか、遠端(704)に向かうべきであるかを決定することにおいて、探索方向は、FVが増加する方向を発見することによって推定され得る。この例では、再焦点合せプロセスの第1の値は、FV1(708)であり得る(708)。次のステップで、レンズ位置は、近端(702)に向かい、対応する焦点値FV2(712)が決定され得、対応する焦点値FV2(712)は、この場合、FV1(708)よりも小さくなり得る。FV2(712)がFV1(708)よりも小さいので、ビデオキャプチャデバイスシステムは、探索方向がレンズ位置の遠端(704)に向かい、したがって、FV2(712)から離れるべきであると決定する。
[0094]レンズ位置におけるあらゆる変化とともに、フレームがキャプチャされ、FV3〜FV9によって示すように、焦点値が決定される。一例では、FV10(710)に達するとき、特定の数の連続するステップが、すでに達しているものよりも小さい焦点値を与えるまで、レンズ位置は、同じ方向に、この例では、遠端位置(704)に向かって変化し続けることができる。たとえば、FV10(710)に達し、このシステムでは、余分のステップの数が3に設定され得る。結果として、レンズ位置は、あと3ステップ増加し、すべてがFV10(710)よりも小さいFV11と、FV12と、FV13とを生じ得る。ビデオキャプチャデバイスは、次いで、FV10(710)が新しい最適な焦点値であると決定し、FV10(710)に対応するレンズ位置に戻ることができる。
[0095]上述のように、ぼけ度レベルは、FV1(708)間でキャプチャされたあらゆるフレームについて、かつFV10(710)が新しい最良の焦点値として割り振られるまで、決定され得る。各ステップにおけるぼけ度レベルは、上記のように、すなわち、関連付けられたフレームを符号化するためにQPを再調整するかどうかを決定するために、および、場合によっては、QPをどのくらい調整するかを決定するために利用され得る。フレームのぼけ度のレベルはまた、しきい値と比較されて、そのフレームのための符号化アルゴリズムを簡略化するかどうかを決定することもできる。CAF再焦点合せのぼけ度推定は、パンニングの動きに関連付けられた再焦点合せ中のぼけ度推定(308)に対応し得る。
[0096]一例では、フレームのぼけ度レベルは、そのフレームの焦点値と先行するフレームの焦点値とに基づいて決定され得る。最初のぼけ度レベルB(1)は、次のように、元の焦点値、すなわち、FV0と比較して、最初の低下後、すなわち、FV0(406)からFV1(708)までの焦点値変化の割合に基づいて推定され得る。
上記で説明したように、探索方向が決定されるとき、レンズは、最良の焦点位置に達するために段階的に調整され得る。このプロセス中のぼけ度は、次のように評価され得る。
ただし、Kは、ぼけ度レベルを、選択された範囲、たとえば[0,1]に正規化するために使用される調整可能な定数であり得る。Biは、フレームiについての推定されたぼけ度レベルであり、FViは、フレームiに関連付けられた焦点値である。一例では、FV1が、再焦点合せプロセスが開始するときの初期FV値であるので、Kのデフォルト値は、FV1であり得る。KをFV1に設定することによって、再焦点合せプロセス中のぼけ度レベルが初期FV値に正規化され、それによって、ぼけ度レベルを範囲[0,1]に正規化する結果となる。Giは、勾配の絶対値であり、次のように計算され得る。
ただし、LensPiは、現在のフレームの焦点値FViに対応するレンズ位置であり、LensPi−1は、前のフレームの焦点値FViに対応するレンズ位置である。
[0097]一例では、FVNのピーク値が決定されるとき、再焦点合せプロセスは、終了することができ、ぼけ度は、フレームの焦点が合っていることを示すその初期値にリセットされ得る。この例では、ぼけ度がゼロにリセットされ、BN=0であり得る。
[0098]本開示の一例では、CAFは、フレームごとに実行しなくてもよい。再焦点合せプロセス中にフレームスキップがある場合、スキップされたフレームについてのぼけ度レベルは、前に計算されたものと同じに保たれ得る。
[0099]本開示の一態様では、上記で説明したようなぼけ度は、リアルタイムで決定されてもよく、ぼけ度レベルがビデオデータレートおよび/または符号化アルゴリズムの簡略化を制御するために利用され得る、リアルタイムまたは実質的にリアルタイムの符号化を可能にすることができる。
[00100]本開示の別の態様では、ぼけ度は、遅延とともにCAF再焦点合せ中に評価され得る。フレームiについてのぼけ度B[i]は、たとえば、次式によって示されるように、新しい焦点面のレンズ位置と、再焦点合せプロセス中の前のレンズ位置との間のレンズ位置差を評価することによって、CAF再焦点合せプロセス中に推定され得る。
Nは、新しい焦点面が発見され得る、再焦点合せプロセスの終了時のレンズ位置の添字であり、i=0,...,(N−1)である。kは、調整可能な定数であり、LensPosition[i]は、新しい焦点面に関連付けられたレンズ位置であり、LensPosition[N]は、前の再焦点合せプロセスに関連付けられたレンズ位置である。
[00101]一例では、ぼけ度レベルの値をある範囲に制限することが望まれることがあり、定数kの値は、定義された範囲に依存し得る。たとえば、ぼけ度レベルは、範囲[0,1]に制限されてもよく、そのような例では
ただし、LensFarEndは、最大レンズ位置であり、LensNearEndは、最小レンズ位置である。
[00102]ぼけ度が遅延ベースで評価され得る一例では、現在のレンズ位置から所望のレンズ位置、すなわち、最良の焦点に対応するレンズ位置までの距離は、最良の焦点位置が決定されると、より正確に評価され得る。この例では、ぼけ度は、初期位置と最良の焦点位置との間のフレームについてのみ決定され得る。CAF再焦点合せプロセス中に、ぼけ度は、フレームごとに、各探索ステップにおいて評価され得る。
[00103]図8Aから図8Cは、顔検出に関連付けられた自動焦点再焦点合せ(auto-focus refocusing)プロセスを示すグラフィカル表現である。上述したように、いくつかのタイプの動き中に、図4Cに示したように、顔がフレームにおいて検出されない限り、再焦点合せが必要でなくてもよい。顔が検出されるとき、レンズは、検出された顔に関連付けられたパラメータを使用して調整され得る。典型的には、キャプチャされた顔サイズは、被写体距離に反比例し、ここで、被写体は検出される顔である。この関係は、ビデオキャプチャデバイスに関連付けられた固定焦点距離fに基づく。したがって、顔サイズを知ることによって、焦点を実現するために必要とされるレンズ調整値が、計算を使用して取得され得る。このようにして、上記で説明したような、CAFにおいて使用されるAF探索の試行錯誤法は、必要なくなり得る。
[00104]顔が検出されるとき、AF機能は、再焦点合せを開始し得る。被写体の距離(たとえば、図8Aにおけるd2またはd2’)は、顔サイズと、レンズに関連付けられた距離と、キャプチャされている被写体または顔のサイズとを使用して計算され得る。顔サイズFs(たとえば、図8AにおけるS1またはS1’)は、フレームサイズと、キャプチャされたフレームにおいて顔によって占有されたスペース量とに基づいて決定されてもよく、画像センサーによって測定されてもよい。距離d1またはd1’は、顔に関連付けられたカメラ内の距離、またはレンズ長であり得る。一例では、平均的な人間の顔サイズS2が、計算において使用され得る。上記の比例関係に基づいて、
である場合、被写体の距離(d2またはd2’)は、次のように決定され得る。
[00105]計算された被写体距離、d2は、次いで、焦点を実現するために適切なレンズ位置を決定するために使用され得る。一例では、d2は、初期被写体距離であり得、d2’は、顔に接近する、したがって、再焦点合せを開始する、カメラの動きの後の新しい被写体距離であり得る。上記の式を使用して、d2’が計算され得、被写体距離における変化は、レンズ位置不整合を決定するために使用され得る。
[00106]図8Bは、0から無限大までの、レンズに対する被写体距離の異なる範囲のグラフィカル表現を示す。d2’がどの範囲に分類されるかに基づいて、対応するレンズ位置が選択され得る。レンズ位置は、次いで、対応するレンズ位置に調整され得、その調整は、レンズが開始位置(たとえば、d2に対応するレンズ位置)から終了レンズ位置(たとえば、d2’に対応するレンズ位置)まで行くために、いくつかのステップを必要とし得る。ステップの数は、レンズ位置不整合によって変動することがあり、対応する終了レンズ位置と焦点とを実現するために、レンズが通過するレンズ調整のステップの数に対応し得る。加えて、各ステップのサイズは、(図8Cに示すように)所定の関係に従って変動することがあり、各ステップは、0と1との間の値Kに対応し得る。以下の表1は、d2が分類される範囲[RN,RN+1]に基づいて、被写体距離d2に対応するレンズ位置と、ステップの数と、値Kとを決定するために使用され得る、例示的なルックアップテーブルを示す。
[00107]特定の計算された被写体距離d2が与えられれば、d2が分類される被写体距離範囲が決定され得る。焦点を実現するための対応するレンズ位置L(d2)が決定され得、レンズ位置に達して再び焦点が合うためのステップの数N(d2)が決定され得る。レンズ位置に達するためのレンズ位置間の各ステップのサイズは、同じであり得、対応する曲線(たとえば、図8C)と値Kとにマッピングされ得、ここで、Kは、0と1との間の値であり得る。
[00108]一例では、対応するレンズ位置に達するまで、フレームが各ステップにおいてキャプチャされ得る。したがって、各フレームは、検出された顔サイズ、Fsに応じて、対応するK値を有し得る。ぼけ度は、次のように、顔検出のためのAF中に各フレームについて推定され得る。
iは、上述したように、0と1との間の値である。したがって、ぼけ度レベルBiもまた、範囲[0,1]における値であり得る。顔が検出されるときのAF再焦点合せ中のぼけ度推定は、ぼけ度推定(316)に対応し得、ぼけ度ユニット108、208、508、または608によって生成され得る。
[00109]1つの例示的な例では、平均的な人間の顔サイズ、S2は、0.20mであると仮定され得る。カメラビューでは、顔の元のサイズ、S1(org)は、0.0003mであり得る。カメラが顔のより近くに移動するにつれて、検出される顔のサイズ、S1(final)は、0.0006mであり得る。d1=0.006m、f=0.001mである場合、カメラからの距離、d2は、d2(org)=S2×d1/S1(org)=0.2*0.006/0.0003=4mから、d2’=S2×d1’/S1’まで変化し、ここで、d1’は、式 1/d2’+1/d1’=1/fを使用して取得され、d2’=0.334mを生じ得る。ルックアップテーブルを使用すると、一例では、
被写体距離範囲 [R1,R2)=[10m,2m)
[Ri,R(i+1))=[1m,0.5m)
範囲内で被写体のための焦点を実現するためのレンズ位置
[R1,R2)は、L1=36である
[R2,R3]は、L2=6である
レンズ位置変化は、L1−L2=30ステップである
焦点を再度実現するためのステップ数:N1=5
各ステップサイズ:ステップ1=8、ステップ2=6、ステップ3=6、ステップ4=5、ステップ5=5
各ステップについて測定された正規化されたFV:k1=0.1、k2=0.3、k3=0.6、k4=0.8、k5=1.0、正規化されたFVが1.0に達するとき、再焦点合せが実現される。
各ステップ変化について、ぼけ度が、上記の式に従って推定され得る。
B1=1.0−k1=0.9; B2=1.0−k2=0.7; B3=1.0−k3=0.4; B4=1.0−0.9=0.2; B5=1.0−1.0=0
推定されたぼけ度が0に達するとき、それは、フレームの焦点が再度合うことを示す。
[00110]図9Aから図9Bは、ズーミングに関連付けられた自動焦点再焦点合せプロセスを示すグラフィカル表現である。上述したように、ズーミング中に、ズーミング率Zfに関連付けられたパラメータを使用して、レンズを調整することによって、再焦点合せが実現され得る。レンズ位置不整合率Mは、図9Aが示すように、初期ズーム率Ziから所望のズーム率Zfまでの変化に基づいて決定され得る。レンズに関連付けられた各ズーム率は、被写体距離に基づいた対応するレンズ位置不整合曲線を有し得る。ある距離において、レンズ位置不整合率Mは、ズーム率ZiおよびZfの各々についての、その距離におけるレンズ位置不整合値間の差であり得る。ルックアップテーブルを使用すると、特定のレンズ位置不整合率Mについて焦点を実現するために、ステップの数はNである。焦点を実現するためのN個のステップのうちの各ステップは、所望のズーミング率に関連付けられ、かつ正規化された曲線(図9B)に基づいて、ステップ値Kに対応し得、したがって、値Kは、範囲[0,1]内である。以下の表2は、レンズ位置不整合Mに対応する、ステップの数Nと、ステップの各々についての値Kとを決定するために使用され得る、例示的なルックアップテーブルを示す。
[00111]一例では、対応するズーム位置に達するまで、フレームが各ステップにおいてキャプチャされ得る。したがって、各フレームは、ズーム率に応じたK値を有してもよく、Kは、ズーム率Zfに関連付けられたレンズ位置不整合率をカバーするために必要とされるN個のステップに対応する。ぼけ度は、次のように、ズーミングのためのAF中に各フレームについて推定され得る。
iは、上述したように、0と1との間の値である。したがって、ぼけ度レベルBiもまた、範囲[0,1]における値であり得る。ズーミングが検出されるときのAF再焦点合せ中のぼけ度推定は、ぼけ度推定(322)に対応し得、ぼけ度ユニット(たとえば、ぼけ度ユニット108、208、508、または608)によって生成され得る。
[00112]1つの例示的な例では、ズーム率Zf=2である。対応するレンズ位置不整合は、M1=5であり得る。ルックアップテーブルを使用すると、焦点位置に戻るためのステップの数は、N1=3であり、対応するステップサイズは、ステップ1=2(レンズ位置ステップサイズ)、ステップ2=2、ステップ3=1であり、各ステップについて測定された正規化されたFVは、K1=0.4、K2=0.8、K3=1.0であり得る(1のK値は、ピークFVまたは焦点が合ったことを示し得る)。上記のぼけ度推定式を使用すると、各ステップにおいて推定されたぼけ度レベルは、次のようになり得る。
ただし、Ki(Zf)は、KiがZfの関数であることを表す。
[00113]再び図4Aから図4Bを参照すると、いくつかのタイプの動きがぼけ度を生じ得、そこではAFは行われない。たとえば、被写体の動きおよび/またはカメラの動きなど、動きに基づいたぼけ度推定は、検出された動きに関連付けられた動きベクトルを決定することを必要とし得る。このぼけ度推定は、パンニングの動き中の動きに対応するぼけ度推定(310)と、被写体の動きを含み得る、図4Cから図4Dに示す動きに対応するぼけ度推定(318)と、被写体の動きおよび/またはカメラの動き(たとえば、パンニングまたはハンドジッタ)に対応するぼけ度推定(326)とに対応し得る。
[00114]図4Aに示すような被写体の動きは、ローカルな動きに対応し得、動き推定アルゴリズムを使用して推定され得る。図4Bに示すようなデバイスの動きは、グローバルな動きに対応し得、たとえば、加速度計など、ビデオキャプチャデバイスの入力センサーユニットにおける動きセンサーを使用して推定され得る。フレームに関連付けられた全体の動きは、動きに関連付けられた変位の量を示す、動きベクトル(MV)を使用して、推定かつ量子化され得る。フレームに関連付けられた全体の動き、MVは、次のようになり得る。
ただし、MVdeviceは、たとえば、パンニングまたはハンドジッタのようなイベントの結果としてのデバイスの移動を示す。一例では、グローバルな動き、MVglobalが、MVdeviceを推定または表すために使用され得る。MVobjectは、キャプチャされたフレーム内の被写体移動を示す。
[00115]一例では、グローバルおよび/またはロケーション動きから生じるフレームのぼけ度の推定は、3つの主要なパラメータである、露出時間と、フレームレートと、グローバルMVおよび/またはローカルMVとを利用することができる。上述したように、図4Aを参照すると、動きぼけは露出時間に関係し、そこで、より長い露出時間がより大きいぼけを引き起こす。図4Aが示すように、被写体406が、露出時間中に、すなわち、フレーム402がビデオキャプチャデバイスによってキャプチャされている間に移動する場合、被写体406は、背景と重なり、ぼやけた領域408を生じ得る。移動が露出中に高速である場合、すなわち、デバイスが露出時間中に移動し、被写体406の位置をフレーム内で、あるフレームから次へと変化させる場合、たとえば、フレーム402および404などの2つのシーンが重なり、ぼけを生じる。
[00116]一例では、動きぼけを推定するために使用されるパラメータは、ビデオキャプチャデバイスから取得されてもよく、それによって、ビデオ符号器においてオーバーヘッドがほとんど生じない。上述したように、ぼけ度は、露出時間と、デバイスの移動の量に関係し得るグローバル動きベクトルとに比例し得る。加えて、より高いフレームレートは、所与のMVについてより高速なパンニング速度を暗示し、したがって、より大きいぼけ度を生じるので、ぼけ度は、フレームレートに比例する。ぼけ度を決定するために、動きの速度vは、次のように決定され得る。
ただし、mvは、象限ピクセル(quad-pixel)動きベクトルであり、pは、インチ/象限ピクセルであり、fは、フレームレートである。ぼけ度Bは、次のものに比例する。
ここで、αは、ビデオキャプチャデバイスに関連付けられた露出時間である。結果として、フレームのぼけ度は、所与の露出時間、フレームレート、およびグローバルMVについて、次のように推定され得る。
[00117]MVを決定することにおいて、グローバルな動きとローカルな動きとが考慮され得る。グローバルな動きは、グローバル動き推定器を使用して、ビデオキャプチャデバイスにおいて決定され得る。たとえば、グローバル動き推定器は、イメージスタビリゼーション(image stabilization)のためにグローバルMVを決定することができるデジタルイメージスタビリゼーション(DIS)ユニットであり得る。フレームにおいて、(図4Bにおいて点線によって示す)フレームにおける大きい被写体のローカルな動き、4つのエッジの動きは0に近いのでローカルMVは小さくなり得るが、グローバルMVは、大きい被写体410の動きに基づいて大きくなり得る。この場合、大きいグローバルMVは、真のグローバルな動きを表し得ず、その理由は、それが、フレーム内の動きの結果であり、ハンドジッタまたはパンニングの動きの結果となるようなフレーム全体の動きではないからである。大きいグローバルMVが真のグローバルな動きを表さないと決定される場合、ぼけ度は、そのフレームについて推定されなくてもよく、その理由は、たいがい、1つの被写体410が移動する例におけるように、そのフレームの一部分のみがぼけ度を含み、画像中の他のあらゆるものの焦点が合ったままであり、ぼやけていないからである。真のグローバルな動きにおいては、ローカルMVとグローバルMVの両方が大きいはずであり、そこで、被写体410の動きおよび4つのエッジは、大きい値を有する。したがって、フレームについてのぼけ度を推定するとき、グローバルMVのソースが信頼できない場合、グローバルMVにより正確さを加えるために、ローカルMVが決定され、使用され得る。たとえば、グローバルMVが、信頼されるセンサー(たとえば、ジャイロスコープまたは加速度計)を使用して決定される場合、ローカルMV情報は必要でなくてもよい。別の例では、グローバルMVが、動き推定器アルゴリズムを使用して決定される場合、正確なグローバルMVを保証するために、ローカルMVを決定することが有用であり得る。
[00118]ローカルMVは、他の符号化のために利用され得る符号器における動き推定を使用して決定され得、したがって、ローカルMVを決定することは、追加の計算または複雑性を符号器にもたらし得ない。上述したように、グローバルMVは、ビデオキャプチャデバイスにおいて決定され得る。グローバルMVが信頼されない(たとえば、動き推定器アルゴリズムによって決定される)場合、ローカルMVとグローバルMVの両方が、しきい値と比較されて、真のグローバルな動きがフレームにおいて存在するかどうかが決定され得る。真のグローバルな動きがフレームにおいて存在する場合、ぼけ度は、上述したように、MVを使用して推定され得る。真のグローバルな動きがフレームにおいて存在しない(たとえば、フレーム内の大きい被写体の動きである)場合、ぼけ度は局地的であり得、ぼけ推定が行われなくてもよく、その理由は、フレーム全体が、フレームを符号化するためにQPを調整するためにぼけ度を使用することを正当化するために十分なぼけを有し得ないからである。
[00119]図11は、本開示の技法による、動きぼけ度を推定する一例を示す。図11の例では、ビデオキャプチャデバイスの一部であり得る、カメラモジュールは、たとえば、露出時間を含む、キャプチャされたフレームに関連付けられたパラメータを提供し得る(1102)。たとえば、デジタルイメージスタビリゼーションなど、ビデオキャプチャデバイスにおけるアルゴリズムを実行する別のモジュールまたはプロセッサは、キャプチャされたフレームに関連付けられたグローバルMVを決定し得る(1104)。グローバルMVおよび露出時間が、ぼけ度ユニット(たとえば、ぼけ度ユニット108または208)に提供され得る。グローバルMVのソースが完全に信頼されるとは限らない場合、上述したように、フレームに関連付けられたローカルMVが、動き推定器からオプションで取得され得る(1106)。ローカルMVとグローバルMVの両方が、各々に関連付けられた、あるしきい値を超えるかどうかの決定が行われ(1108)、グローバルMVが真のグローバルな動きを示すかどうかが決定され得る。加えて、しきい値との比較はまた、動きの量が、フレームにおけるぼけ度のしきい値レベルを示し得るある量を超えるかどうかをも示し得る。一例では、グローバルMVのソースが信頼され得(たとえば、ジャイロスコープまたは加速度計)、ローカルMVが、グローバルMVが真のグローバルな動きを示すかどうかを決定するために必要とされなくてもよい。この例では、グローバルMVがグローバルMVに関連付けられたしきい値を超えるかどうかの決定が行われ得る(1108)。
[00120]ローカルMVおよびグローバルMVのうちの少なくとも1つが、対応するしきい値を超えない場合、または、グローバルMVのみがしきい値と比較される例では、グローバルMVが対応するしきい値を超えない場合、真のグローバルな動きがないか、または、フレームにおいて有意なグローバルな動きがなく、したがって、動きからのぼけ度がない。したがって、ぼけ度が決定される必要はなく、フレームは、符号器設計または規格(standard)に従って生成されるQP値を使用して通常に符号化されるように、符号化され得る(1114)。ローカルMVとグローバルMVの両方が、対応するしきい値を超える場合、または、グローバルMVのみがしきい値と比較される例では、グローバルMVが対応するしきい値を超える場合、グローバルな動きがフレームにおいて存在し、動きぼけ度推定器を使用して、動きぼけ度が推定され得(1110)、動きぼけ度推定器は、上記で説明したように、グローバルMVと、露出時間と、フレームレートとを使用して動きぼけ度を実施し得る。推定されたぼけ度は、次いで、以下でより詳細に説明するように、それに応じてQPを調整する(1112)ために、QP決定ブロックへ送られ得る。フレームは、次いで、調整されたQP値を使用して符号化され得る(1114)。
[00121]図12は、本開示の技法による、動きぼけ度を推定する別の例を示す。図12の例は、上記で説明した図11の例と同様である。しかしながら、図12の例におけるグローバルMVは、たとえば、グローバルMV推定器またはセンサー(たとえば、ジャイロスコープもしくは加速度計)を使用して、カメラモジュールによって決定され得る1202。
[00122]図12の例では、ビデオキャプチャデバイスの一部であり得る、カメラモジュールは、たとえば、露出時間とグローバルMVとを含む、キャプチャされたフレームに関連付けられたパラメータを提供し得る(1202)。グローバルMVおよび露出時間が、ぼけ度ユニット(たとえば、ぼけ度ユニット108または208)に提供され得る。グローバルMVのソースが完全に信頼されるとは限らない場合、上述したように、フレームに関連付けられたローカルMVが、動き推定器からオプションで取得され得る(1206)。ローカルMVとグローバルMVの両方が、各々に関連付けられた、あるしきい値を超えるかどうかの決定が行われ(1208)、グローバルMVが真のグローバルな動きを示すかどうかが決定され得る。加えて、しきい値との比較はまた、動きの量が、フレームにおけるぼけ度のしきい値レベルを示し得るある量を超えるかどうかをも示し得る。一例では、グローバルMVのソースが信頼され得、ローカルMVが、グローバルMVが真のグローバルな動きを示すかどうかを決定するために必要とされなくてもよい。この例では、グローバルMVがグローバルMVに関連付けられたしきい値を超えるかどうかの決定が行われ得る(1108)。
[00123]ローカルMVおよびグローバルMVのうちの少なくとも1つが、対応するしきい値を超えない場合、または、グローバルMVのみがしきい値と比較される例では、グローバルMVが対応するしきい値を超えない場合、フレームにおいて真のグローバルな動きがないか、または、フレームにおいて有意なグローバルな動きがなく、したがって、動きからのぼけ度がない。したがって、ぼけ度が決定される必要はなく、フレームは、符号器設計または規格に従って生成されるQP値を使用して通常に符号化されるように、符号化され得る(1214)。ローカルMVとグローバルMVの両方が、対応するしきい値を超える場合、または、グローバルMVのみがしきい値と比較される例では、グローバルMVが対応するしきい値を超える場合、グローバルな動きがフレームにおいて存在し、動きぼけ度推定器を使用して、動きぼけ度が推定され得(1210)、動きぼけ度推定器は、上記で説明したように、グローバルMVと、露出時間と、フレームレートとを使用して動きぼけ度を実施し得る。推定されたぼけ度は、次いで、以下でより詳細に説明するように、それに応じてQPを調整する(1212)ためにQP決定ブロックへ送られ得る。フレームは、次いで、調整されたQP値を使用して符号化され得る(1214)。
[00124]上述したように、QP値は、符号化レートを向上させるために、推定されたぼけ度を使用して再調整され得る。ぼけ度が検出されるフレームでは、ぼけ度が、たとえば、パンニング、ハンドジッタ、ズーム、およびCAFなど、ぼけ度を引き起こす動きまたは機能のタイプに対応する方法を使用して、上記で説明したように推定され得る。現在のフレームを符号化するためのQPは、フレームコンテンツの推定されたぼけ度レベルに従って、データレート節約のために再調整され得る。一例では、フレームがよりぼやけるほど、対応するフレームを符号化するために使用される量子化が減り、その理由は、より鮮鋭でないエッジ情報およびより少ない詳細(detail)がフレームにあり得るからである。いくつかの例では、量子化の程度は、QP値に比例し得る。いくつかの例では、量子化の程度は、QP値に反比例し得る。いずれの場合も、QP値が、量子化の程度を指定するために使用され得る。したがって、より低い符号化データレートが、よりぼやけたフレームのために割り振られ得る。コーディングレートにおいて得られた節約が、いくつかの例では、ぼやけていないフレーム、またはより低いぼけ度をもつフレームにより多くのコーディングビットを割り振るために、使用され得る。
[00125]CAFによって引き起こされたぼけ度の例では、QP再調整値は、次のように、QP再調整ユニット112(図1)または212(図2)によって決定され得る。
QPmaxは、特定のビデオ符号化システムにおいて可能にされる最大QP値であり得る。この例では、量子化は、たとえば、H.264符号化の場合のように、QP値に比例し得る。たとえば、H.264では、QPmax=51であり、
QPi newは、再調整後のFViに対応する新しいQP値であり得、
QP0 orgは、ビデオ符号器によってフレームを符号化するために適用されたFV0における初期QPであり得、
iは、再焦点合せプロセス中にFViに対応するぼけ度レベルであり得、
aは、規格依存であり得る設定範囲内にQPnewがとどまるように、システム設計に適するように定義された範囲内で選択され、かつ、QPにおける変化を正規化するために使用される定数パラメータであり得る。たとえば、H.264では、QP値のための範囲は[0,51]である。一例では、aは、範囲[0,10]内であり得、10は、デフォルト値であり得る。aの値は、ユーザがどのくらいのビット削減をぼやけたフレームのために実施することを望むかに基づいて、ユーザによって選択され得る。
[00126]一例では、QP再調整は、再焦点合せプロセス中に適用され得る。再焦点合せが完了するとき、QPは、元のQP値QP0 orgにリセットされ得る。一例では、再焦点合せ中に、各新しいQP値が、前に計算されたQP値とは無関係に計算され得る。
[00127]別の例では、推定されたぼけ度レベルが、フレームの推定されたぼけ度について決定され得る。図13Aは、ぼけ度レベルを使用したQP決定の一例を示す。図13Bが示すように、n個のぼけ度レベルが、最小ぼけ度B0と最大ぼけ度Bn-1に基づいて定義され得る。図13Aを参照すると、フレームのぼけ度は、ぼけ度ユニット(たとえば、ぼけ度ユニット108または208)の一部であり得る、ぼけ度推定器1302によって推定され得る。推定されたぼけ度は、次いで、同じくぼけ度ユニットの一部であり得る、ぼやけレベル決定ユニット1304へ送られ得る。ぼやけレベル決定ユニット1304は、最小ぼけ度と、最大ぼけ度と、ぼけ度のレベルの数とを使用して、ぼけ度レベルを決定する(図13B参照)。一例では、最小ぼけ度、最大ぼけ度、およびぼけ度のレベルの数は、デバイス固有であり得、上述したように、実験結果に基づいて決定され得る。ぼやけレベル決定ユニット1304は、対応するぼけ度レベルkを決定するために、推定されたぼけ度が入る範囲を決定することができる。図13Bが示すように、フレームの推定されたぼけ度は、BkとBk+1との間に入り得、推定されたぼけ度レベルは、kであり得る。推定されたぼけ度レベルは、次いで、加算器1306によってQPbaseに加算され、次いで、QP決定ブロック1308において最大QPと比較されて、調整されたQP値が決定され得る。このプロセスは、以下によって要約され得る。
ここで、kは、フレームの推定されたぼけ度に関連付けられたレベルであり、QPbaseは、たとえば、ぼけ度が検出されないフレームなど、N個の前のぼやけていないフレームの平均QPであり、QPmaxは、コーデックに関連付けられた最大QP値であり、たとえば、H.264では、QPmaxは51である。一例では、Nは4であり得る。
[00128]別の例では、推定されたぼけ度の範囲、および対応するぼけ度レベルが、あらかじめ決定され、ルックアップテーブルに記憶され得る。図13Cは、ルックアップテーブルを使用したQP決定の一例を示す。この例では、ぼけ推定器1322は、フレームのぼけ度を推定することができる。推定されたぼけ度レベルkは、推定されたぼけ度とルックアップテーブル1324とを使用して決定され得る。推定されたぼけ度レベルは、次いで、加算器1326によってQPbaseに加算され、次いで、QP決定ブロック1328において最大QPと比較されて、調整されたQP値が決定され得る。
[00129]図14は、本開示の技法を実装する、2つのビデオキャプチャデバイスモジュールをもつ例示的なシステムを示す。この例では、システム1400は、たとえば、ビデオキャプチャデバイス102および202に類似したビデオキャプチャデバイスモジュールであり得る、2つのカメラモジュール1402および1404を備え得る。カメラモジュール1402および1404の各々は、異なる特性を有してもよく、異なる設定においてビデオデータのフレームをキャプチャすることができる。カメラモジュール1402および1404の各々は、たとえば、上記で説明したように、グローバルMV、露出時間など、キャプチャされたフレームに関連付けられたパラメータを提供し得る。カメラモジュール1402および1404から出力されたキャプチャされたフレームは、構成要素の中でも動きぼけ推定器1406とQP決定ブロック1408とを含み得るビデオ符号化デバイス(たとえば、ビデオ符号器110、210、または510)へ送られ得る。動きぼけ推定器1406は、ぼけ度ユニット(たとえば、ぼけ度ユニット108または208)の一部であり得る。QP決定ブロック1408は、QP再調整ユニット(たとえば、QP再調整ユニット112または212)の一部であり得る。
[00130]たとえば、カメラモジュール1402またはカメラモジュール1404など、キャプチャされたビデオフレームのソースに基づいて、適切なぼけ度制約が選択され得る。たとえば、ぼけ度制約1は、カメラモジュール1402に関連付けられてもよく、ぼけ度制約2は、カメラモジュール1404に関連付けられてもよい。ぼけ度制約は、たとえば、対応するカメラモジュールに関連付けられた、最小ぼけ度と、最大ぼけ度と、ぼけ度のレベルの数とを示し得る。動きが、キャプチャされたビデオフレームにおいて検出され、ぼけ度がフレームにおいて推定されるべきであるとき、動きぼけ推定器1406は、選択されたぼけ度制約を使用して、フレームにおけるぼけ度を推定することができる。QP決定ブロック1408は、次いで、上記で説明したように、推定されたぼけ度を利用して、フレームを符号化するための適切なQPを決定することができる。このようにして、本開示の技法は、異なるカメラモジュールとともに利用され得る。
[00131]一例では、本開示の態様は、H.264ビデオ符号化システムとともに使用され得る。H.264ビデオ符号化は、既存の規格と比較して、圧縮性能およびレートひずみ効率における著しい向上を実現している。しかしながら、たとえば、動き補償プロセスなど、いくつかの態様の符号化により計算複雑性が増大し得る。H.264は、16×16から4×4までにわたる動き補償ブロックをサポートする。レートひずみコストは、可能なブロック区分組合せの各々について計算され得る。最小レートひずみ性能を生じ得るブロック区分が、ブロック区分決定として選択され得る。動き補償プロセスでは、参照フレームは、前に符号化された16個のフレームと同数であり得、そのこともまたシステムの計算複雑性を増大し得る。H.264ビデオ符号化では、1/4または1/8サブピクセル予測と同じくらい小さい予測が使用され得、補間方法が、サブピクセル値を計算するために使用され得る。
[00132]上記で説明したように、H.264ビデオ符号化では、ブロック区分は、図10に示したように、任意の組合せにおいて、16×16(1002)から4×4(1014)までにわたり得る。たとえば、8×8(1008)ブロック区分が選択されると、各8×8ブロックは、8×4(1010)、4×8(1012)、または4×4(1014)の区分選択肢を有し得る。
[00133]一例では、ビデオ符号器のビデオ符号化アルゴリズムは、ぼけ度レベルに基づいて簡略化され得る。ぼけ度レベルは、上記で説明した方法のうちの少なくとも1つを使用して推定され得る。推定されたぼけ度レベルは、あらかじめ定義されたブロック区分しきい値と比較され得る。
ただし、Biは、フレームiの推定されたぼけ度レベルであり、Threshold_blockpartitionは、それに基づいてブロック区分レベルが調整され得るしきい値である。しきい値は、たとえば、ユーザの選好またはシステム要件に従って、たとえば、[0,1]の範囲内の値になるように調整され得る。しきい値が高くなるほど、符号化アルゴリズムの簡略化をトリガするために必要とされるぼけ度レベルが高くなる。
[00134]一例では、推定されたぼけ度レベルがしきい値を超える場合、ビデオ符号器510(図5)は、たとえば、16×16(1002)、16×8(1006)、8×16(1004)、および8×8(1008)など、より大きいブロック区分を選択し、したがって、ビデオ符号器が所与のフレームまたはフレームのグループについて符号化するために必要とする動き補償の量を減少させることができる。より大きいブロック区分の使用は、各フレームがより大きいブロックに分割され、したがって、フレームごとにより少数のブロックを、ビデオ符号器が符号化するようになることを意味する。結果として、ビデオ符号器は、より少ない動きベクトルを符号化するようになり、結果として、たとえば、電力およびメモリなど、より少ないシステムリソースを使用するようになる。一例では、ビデオ符号器は、フレームにおけるぼけ度の重大度に基づいてブロック区分を選択することができる。たとえば、より大きいブロック区分、たとえば、16×16、16×8、または8×16が、高いレベルのぼけ度をもつフレームに対して使用されてもよく、たとえば、8×8など、わずかにより小さいブロック区分が、より低いレベルのぼけ度をもつフレームに対して使用されてもよい。ぼけ度レベルがしきい値を超える場合、たとえば、8×4、4×8、および4×4など、より小さいブロック区分が考慮から除かれてもよく、ぼけ度の重大度に基づいて、より大きいブロック区分のうちの1つが、上記で説明したように選択され得る。
[00135]別の例では、符号化アルゴリズム簡略化は、そこからビデオ符号器510が参照フレームを選択するフレームの範囲を制限することによって、実現され得る。参照フレーム選択に関連付けられたしきい値を使用して、ビデオ符号器510は、参照フレーム選択肢を、前に符号化されたフレームのみに絞り込むことができる。
ここで、Biは、フレームiの推定されたぼけ度レベルであり、Threshold_referenceは、それに基づいて参照ピクチャリストが調整され得るしきい値である。ビデオ符号化では、フレームを符号化するとき、参照フレームが、動き推定のために参照ピクチャリストから選択され得る。ビデオ符号器は、最も適切な参照フレームを決定し、それを現在のフレームまで探索して、動き推定データを符号化し得る。一例では、フレームにおいて推定されたぼけ度レベルがしきい値を超える場合、ビデオ符号器は、参照ピクチャリストを、たとえば、現在のぼやけたフレームに先行するフレームなど、フレームのサブセットに制限することができる。
[00136]ぼけ度推定を利用することによって、ぼけ度レベルがあらかじめ定義されたしきい値よりも高いとき、たとえば、H.264における、スキップモードが通知され得る。スキップモードの選択起動はまた、符号化データレートを下げることもできる。フレームスキップモードに関連付けられたしきい値を使用して、ビデオ符号器は、スキップモードを起動するように決定することができる。
[00137]ここで、Biは、フレームiの推定されたぼけ度レベルであり、Threshold_frameskipは、それに基づいてフレームスキップモードが起動され得るしきい値である。一例では、推定されたぼけ度レベルがフレームスキップモードについてのしきい値を超える場合、ビデオ符号器は、スキップモードを起動することができ、フレームは、符号化なしにスキップ(すなわち、廃棄)され得る。一例では、フレームスキップについてのしきい値は、たとえば、ピクセル精度レベル、ブロック区分レベル、および参照ピクチャリスト変更など、他の符号化アルゴリズム簡略化技法についてのしきい値よりも大きくなり得る。一例では、あるフレームについての推定されたぼけ度レベルは、最初にフレームスキップしきい値と比較されてもよく、ぼけ度レベルがそのしきい値を超えて、そのフレームがスキップされるべきである場合、ビデオ符号器は、そのフレームに関連付けられたいかなるものを符号化する必要もないので、ビデオキャプチャデバイスが他のしきい値との比較を行う必要がないようにしてもよい。一例では、様々なしきい値との、推定されたぼけ度レベルの比較は、簡略化アルゴリズムの進行の順序に基づいて、特定の順序で行われ得る。たとえば、参照ピクチャリストの変更は、区分ブロックレベル決定およびピクセル精度レベル決定より先に行われ得る。
[00138]別の例では、再焦点合せ中のぼけ度推定は、ビデオ符号器がぼけ除去アルゴリズムを実装し、ぼやけたコンテンツを有し得るフレームに適用するように、これらのフレームを通知するために使用され得る。ビデオ符号器は、フレームがぼやけているという決定を行う必要がなく、ぼやけたコンテンツの存在を示す信号をビデオキャプチャデバイスから受信するとき、ただ、ぼけ除去アルゴリズムを適用し得る。別の例では、推定されたぼけ度レベルは、ぼやけたフレームのために必要とされるぼけ除去の量を決定するために使用され得、そこで、ぼけ度のレベルに基づいて、ビデオ符号器は、対応するぼけ除去アルゴリズムを選択し、または、ぼけ除去アルゴリズムによって使用される対応するパラメータを定義する。このようにして、ビデオ符号器は、フレームにおけるぼけ度のレベルに従って、異なるぼけ除去レベルを適用することができる。
[00139]本開示によれば、ビデオ符号器は、ビデオキャプチャデバイスからのパラメータと情報とを使用して、ビデオフレームにおけるぼけ度の量を推定する、ぼけ度ユニットを含み得る。いくつかの例では、ビデオ符号器は、再焦点合せ統計値と他のカメラパラメータ(たとえば、FV値、レンズ位置、グローバルMV、露出時間、ズームなど)へアクセスせず、したがって、再焦点合せ統計値に基づいて、フレームにおけるぼけの量を決定することが不可能であり得る。結果として、ビデオ符号器は、フレームにおけるぼけ度を決定するために、より計算集約的な計算を行う必要があり得る。本開示の態様を使用して、ビデオキャプチャデバイスは、再焦点合せおよび他の機能の間中、および、ぼけ度を引き起こす動き中に、ぼけ度レベルを推定し、ぼけ度レベルをビデオ符号器へ送るぼけ度ユニットを含み得る。本明細書で説明する例では、再焦点合せ中に、および動きが検出されるフレームにおいて、ぼけ度レベルを評価するために異なる戦略が利用され得る。一例では、QP再調整は、ビデオ符号化において、再焦点合せ中にぼけ度レベルに基づいてビデオデータレートをより良く制御かつ低下させるために使用され得る。一例では、ビデオ符号化アルゴリズム簡略化は、推定されたぼけ度を使用して改良され得る。別の例では、ビデオキャプチャデバイスは、CAF再焦点合せによって引き起こされる、ぼやけたフレームと、それらのぼけ度レベルとを識別するために、ぼけ度を推定し得る。ビデオキャプチャデバイスは、ぼけ度情報をビデオ符号器へ送り、ビデオ符号器は、フレームコンテンツをぼけ除去するために、ぼけ除去技法を適用することができる。
[00140]本開示の一例では、説明したアルゴリズムの計算は、いくつかの要因から生じる、より少ない計算リソースを利用することができる。たとえば、FVによって示されるぼけ度など、CAF統計値は、AFプロセスの一部として、ビデオキャプチャデバイス自体においてすでに処理されていることがあり、グローバルMV、ズーム、および顔検出パラメータなどのパラメータは、各キャプチャされたフレームとともに利用可能であり得る。したがって、符号器において、たとえば、レンズ位置と焦点値とを計算するために、余分の計算がほとんどまたはまったく必要とされなくてもよい。また、たとえば、ぼけ度レベル推定は、計算のための定数パラメータを用いた簡単な減算と、除算と、乗算とを含み得る。さらに、たとえば、CAF再焦点合せおよび他の機能の最中のQP再調整の計算は、ビデオ符号器に対して過剰な追加の計算複雑性を必要とすることなしに、単純かつ簡単であり得、または、カメラシステムにおいて行われる場合、符号器側からいくつかの計算を減らすことができる。上記で説明した技法および方法は、ビデオ符号器において余分な計算による遅延を引き起こすことなしに、ビデオ符号器にぼやけたフレームコンテンツを知らせることにおいて有用であり得る。加えて、いくつかの状況では、上記で説明したように、動き補償の計算複雑性は、符号化データレートを効率的に低減することに加えて、遅延を引き起こすことなしにぼやけたフレームコンテンツを識別することによって、著しく低減され得る。
[00141]図15Aから図15Cは、本開示の例示的な技法による、キャプチャされたフレームにおけるぼけ度レベルの推定値を使用するビデオ符号化の制御を示す流れ図である。図15のプロセスは、たとえば、ビデオキャプチャデバイスまたはビデオカメラなどのフロントエンドデバイスと、たとえば、ビデオ符号器などのバックエンドデバイスとによって、ビデオシステムにおいて行われ得る。図15のプロセスの異なる態様は、ビデオキャプチャデバイスとビデオ符号器との間に割り振られ得る。たとえば、ぼけ度推定およびQP再調整は、ビデオ符号器(図1)またはビデオキャプチャデバイス(図2)において行われ得る。
[00142]一例では、図15に示すように、CAFをもつビデオキャプチャデバイス102(図1)は、フレームをキャプチャし、それらをビデオ符号器110(図1)へ送る。ビデオキャプチャデバイスは、キャプチャされたフレームの焦点値における低下に基づいて、フレームにおいて変化が生じ、焦点ずれが生じていると決定する(1502)。ビデオキャプチャデバイスは、ビデオフレームをキャプチャし、キャプチャされたフレームの焦点値が低下したときを決定し、したがって、フレームにおけるぼけ度の可能性を示すことを決定する、入力センサーユニット104(図1)を有し得る。焦点における低下は、ビデオキャプチャデバイスのユーザが、意図的または偶発的のいずれかで、ビデオキャプチャデバイスの方向を新しい被写体またはシーンに向けて変更することに起因して、新しい被写体がシーンまたは新しいシーンに入って来るか、またはそこから出ていくか、もしくはその周囲で移動することによって、引き起こされ得る。入力センサーユニットは、キャプチャされたフレームに基づいて、フレームのFVを決定することができ、それを前のフレームFVと比較する。FVが低下するとき、入力センサーユニットは、検出された低下を、ビデオキャプチャデバイス内のCAFユニット106(図1)に通知することができる(1504)。示されたFVにおける低下に応答して、CAFユニットは、再焦点合せプロセスを開始する(1506)。再焦点合せプロセスは、たとえば、FVのピーキングによって示されるように、ビデオキャプチャデバイスが所望の焦点を実現するまで、たとえば、レンズ位置を調整することなどのアクションを含み得る。ビデオキャプチャデバイスが再焦点合せプロセスを行っている間、キャプチャされたフレームは、焦点が外れることがあり、結果としてぼやけることがある。ビデオキャプチャデバイスは、再焦点合せプロセス中にキャプチャされた各フレームにおいて、ぼけ度レベルを推定することができる(1508)。
[00143]別の例では、ビデオキャプチャデバイスの入力センサーユニットは、キャプチャされたフレームにおいて動きを検出することができる(1516)。動きは、パンニングの動き、ズーミング、他のタイプの動き(被写体により近く、および被写体からより遠くに離れて移動する)、または他のタイプの動きの結果であり得る。検出された動きのタイプに基づいて、ビデオキャプチャデバイスは、自動焦点を行うことができ(たとえば、動き中に顔が検出される場合、もしくはズーミング中)、または、焦点合せを行うことなしにフレームを取り込むことができる(たとえば、パンニング中に移動している間)。
[00144]ビデオキャプチャデバイスまたはビデオ符号器の一部であり得る、ぼけ度ユニット108(図1)または208(図2)は、上記で説明したように、フレームのぼけ度レベルを推定するために、アルゴリズムを実施することができる。動きから生じるぼけ度の例では、自動焦点が必要とされるかどうかにかかわらず、フレームのぼけ度は、フレームごとに、上記で説明したように決定され得る。推定されたぼけ度は、次いで、ビデオ符号器がその量子化機能において利用するQPを再調整するために使用され得る。QPは、符号器によって生成される残差変換係数値に適用される量子化の程度を制御する。符号器がより量子化を利用するとき、より大量の画像詳細が保持される。しかしながら、より量子化を使用することは、より高い符号化データレートを生じる。量子化が減るにつれて、ビデオ符号化レートは低下するが、詳細の一部が失われ、画像はよりひずむようになり得る。ぼやけた画像では、画像の詳細はすでにひずんでおり、ビデオ符号器は、画像の品質に影響を及ぼすことなしに、量子化を減らすことができる。本開示によれば、ビデオキャプチャデバイスまたはビデオ符号器は、フレームにおけるぼけ度の量に基づいて、再焦点合せプロセス中にキャプチャされたフレームについて、QPをより大きい値に再調整することができる。
[00145]本開示の一例では、ぼけ度ユニットおよびQP再調整は、ビデオキャプチャデバイスの一部であり得る。この例では、ビデオキャプチャデバイスは、調整されたQPをビデオ符号器へ送って、図15Bに示すように、ビデオ符号器が行う計算の量をさらに低減することができる。この例では、推定されたぼけ度レベルに基づいて、ビデオキャプチャデバイスは、ビデオ符号器がフレームを符号化するために使用するQP値を再調整する(1510)。ビデオキャプチャデバイスは、次いで、ビデオ符号器に、再調整されたQPと推定されたぼけ度レベルとを通信する(1512)。ビデオ符号器は、次いで、上記で説明したように、量子化のために、再調整されたQP値を利用し、いくつかの符号化アルゴリズムを簡略化するために、推定されたぼけ度レベルを利用する。
[00146]本開示の別の例では、ぼけ度ユニットおよびQP再調整は、ビデオ符号器内にあってもよく、図15Cに示すように、フレームに関連付けられたパラメータをビデオ符号器に通信する(1514)。この例では、ビデオ符号器は、ぼけ度を推定し、推定されたぼけ度レベルに基づいて、QPを再調整し、量子化のために、再調整されたQPを利用する。ビデオ符号器はまた、上記で説明したように、いくつかの符号化アルゴリズムを簡略化するために、推定されたぼけ度レベルを利用することもできる。
[00147]図16は、本開示の態様による、符号化アルゴリズムを簡略化するためにぼけ度レベルの推定値を使用するビデオ符号化を示す流れ図である。たとえば、図1のぼけ度ユニット108または図2のぼけ度ユニット208など、ぼけ度ユニットは、上記で説明したように、キャプチャされたフレームのぼけ度レベルを推定することができる。ぼけ度ユニットは、推定されたぼけ度レベルを、たとえば、図1のビデオ符号器110または図2のビデオ符号器210など、ビデオ符号器に提供することができ、ビデオ符号器は、符号化アルゴリズムを簡略化するために、推定されたぼけ度レベルを利用することができる。ビデオ符号器は、異なる符号化アルゴリズムに関連付けられたしきい値との比較に基づいて、ビデオ符号器が決定することができる、フレームにおけるぼけ度のレベルに基づいて、符号化アルゴリズムを簡略化することができる。一例では、ビデオ符号器は、推定されたぼけ度レベルを、フレームスキップモードに関連付けられたしきい値と比較する(1602)。推定されたぼけ度レベルが、フレームスキップモードについてのしきい値を超える場合、ビデオ符号器は、スキップモードを起動し(1604)、フレームは、符号化なしにスキップされ得、その理由は、ぼけ度レベルが大変高いので、連続フレームのグループが実質的に等しく見えるようになるという仮定に基づいて、ビデオ符号器が動作するからである。結果として、ビデオ符号器は、ぼやけたフレームのうちの1つを符号化し、他の実質的に等しいぼやけたフレームを符号化することをスキップすることができる。スキップモードが起動され、従ってフレームがスキップされる場合、フレームは符号化されなくてもよく、したがって、ビデオ符号器は、他の符号化アルゴリズム簡略化に関する決定を行うことを進める必要がなくてもよい。
[00148]推定されたぼけ度レベルがフレームスキップモードについてのしきい値を超えない場合、ビデオ符号器はスキップモードを起動せず、続いて、参照ピクチャリストを調整するかどうかを決定し得る。一例では、ビデオ符号器は、推定されたぼけ度レベルを、参照フレームに関連付けられたしきい値と比較する(1606)。推定されたぼけ度レベルがしきい値を超える場合、ビデオ符号器は、参照ピクチャリストを、たとえば、現在のぼやけたフレームに先行するフレームなどのフレームのサブセットに制限し(1608)、続いて、動き推定のためのブロック区分サイズを決定する。推定されたぼけ度レベルがしきい値を超えない場合、ビデオ符号器は、既存の参照ピクチャリストを利用し、続いて、動き推定のためのブロック区分サイズを決定する。
[00149]一例では、ビデオ符号器は、推定されたぼけ度レベルを、区分ブロックに関連付けられたしきい値と比較する(1610)。推定されたぼけ度レベルがしきい値を超える場合、ビデオ符号器は、動き推定を符号化するためにより大きいブロック区分を利用する(1612)。たとえば、H.264では、符号化は、16×16、8×16、16×8、8×8、4×8、8×4、および4×4のサイズのブロック区分を利用する。ぼやけたフレームに対して、ビデオ符号器は、たとえば、16×16、8×16、および16×8など、より大きい区分を利用して、動き推定を実施し、したがって、より少ない動きピクチャの符号化を必要とすることができる。ビデオ符号器は、続いて、動き推定のためのピクセル精度を決定し得る。推定されたぼけ度レベルがしきい値を超えない場合、ビデオ符号器は、その通常の実装形態によるブロック区分を利用し、続いて、動き推定のためのピクセル精度を決定し得る。一例では、フレームがぼやけたコンテンツを含むとき、ぼけ度のレベルが決定され、ぼけ度の重大度に基づいて、ブロック区分がそれに応じて決定され、そこで、より大量のぼけ度に対してより大きい区分ブロックが利用される。
[00150]一例では、ビデオ符号器は、推定されたぼけ度レベルを、動き推定において使用されるピクセル精度に関連付けられたしきい値と比較する(1614)。推定されたぼけ度レベルがしきい値を超える場合、ビデオ符号器は、動き推定を実施するためのピクセル精度を調整し(1616)、そこで、ぼやけた画像に対してより大きいピクセル精度が利用され、したがって、より少ない計算を必要とすることができる。一例では、ビデオ符号器は、整数ピクセル精度を利用し、それによって、動き推定において使用される参照ブロックを求めて探索することにおいて、サブピクセル補間の必要をなくすことができる。別の例では、ビデオ符号器は、フレームにおけるぼけ度の重大度を査定し、それに応じてピクセル精度を調整することができる。たとえば、ビデオ符号器は、大量のぼけ度をもつフレームに対して整数ピクセル精度を利用するが、より小さいレベルのぼけ度をもつフレームに対して、たとえば、1/2など、比較的大きいサブピクセル精度を利用する。推定されたぼけ度レベルがしきい値を超えない場合、ビデオ符号器は、ビデオ符号器がぼけ度のないフレームを符号化するのと同様に、フレームを符号化する(1618)。一例では、ビデオ符号器は、ビデオ符号器に関連付けられたプロプライエタリな符号化方法に従って、または、たとえば、H.264もしくはHEVCなどのビデオ規格に従って、ビデオデータを符号化することができる。
[00151]ビデオ符号器は、再焦点合せプロセス中にキャプチャされたフレームを符号化するために、変更された符号化技法を利用することができ、ビデオキャプチャデバイスの焦点が合っている間にキャプチャされたフレームに対して、その通常の符号化機能に戻ることができる。一例では、ビデオ符号器は、キャプチャされたフレームにおけるぼけの重大度に応じて、符号化アルゴリズムおよび機能のための様々なレベルの変更を使用することができる。たとえば、より高いレベルのぼけ度は、QPを、より低いレベルのぼけ度に関連付けられた値よりも大きい値に再調整する結果となり得る。一例では、ビデオ符号器はまた、ビデオキャプチャデバイスから受信されたぼけ度情報を利用して、ぼけ除去機能を実施することもできる。
[00152]システムの、たとえば、ビデオキャプチャデバイスなどのフロントエンド部分と、たとえば、ビデオ符号器などのバックエンド部分とは、直接または間接的に接続され得る。一例では、ビデオキャプチャデバイスは、たとえば、あるタイプのワイヤード接続を使用して、ビデオ符号器に直接接続され得る。別の例では、カムコーダは、たとえば、ワイヤレス接続を使用して、ビデオ符号器に間接的に接続され得る。
[00153]本開示で説明する技法は、ビデオ符号器の機能を支援するためのデバイスにおいて利用され得るか、またはそのデバイスとそのデバイスが使用され得る適用例との要求に応じて別々に利用され得る。
[00154]本開示で説明する技法は、少なくとも部分的に、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。たとえば、説明する技法の様々な態様は、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、あるいは他の等価な集積回路またはディスクリート論理回路を含む、1つまたは複数のプロセッサ、ならびにそのような構成要素の任意の組合せ内で実装され得る。「プロセッサ」または「処理回路」という用語は、一般に、単独で、あるいは他の論理回路または任意の他の等価な回路との組合せで、上記の論理回路のいずれかを指すことがある。また、ハードウェアを備える制御ユニットが本開示の技法のうちの1つまたは複数を実行し得る。
[00155]そのようなハードウェア、ソフトウェア、およびファームウェアは、本開示で説明する様々な動作および機能をサポートするために、同じデバイス内で、または別々のデバイス内で実装され得る。さらに、説明したユニット、モジュール、または構成要素のいずれも、個別であるが相互運用可能な論理デバイスとして、一緒に、または別々に実装され得る。モジュールまたはユニットとしての様々な機能の図は、様々な機能的態様を強調するものであり、そのようなモジュールまたはユニットが別々のハードウェアまたはソフトウェア構成要素によって実現されなければならないことを必ずしも暗示するとは限らない。そうではなく、1つまたは複数のモジュールあるいはユニットに関連する機能は、別々のハードウェア、ファームウェア、および/またはソフトウェア構成要素によって実行されるか、あるいは共通または別々のハードウェアもしくはソフトウェア構成要素内に組み込まれることがある。
[00156]また、本開示で説明する技法は、命令を含んでいる、コンピュータ可読記憶媒体などのコンピュータ可読媒体中に実施または符号化され得る。コンピュータ可読媒体中に埋め込まれたまたは符号化された命令は、たとえば、その命令が実行されたとき、1つまたは複数のプログラマブルプロセッサまたは他のプロセッサに方法を実行させ得る。コンピュータ可読記憶媒体は、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、プログラマブル読取り専用メモリ(PROM)、消去可能プログラマブル読取り専用メモリ(EPROM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM)、フラッシュメモリ、ハードディスク、CD−ROM、フロッピー(登録商標)ディスク、カセット、磁気媒体、光学媒体、または他のコンピュータ可読媒体を含み得る。
[00157]例示的な実装形態では、本開示で説明する技法は、部分的にハードウェア、ファームウェアおよび/またはソフトウェアによって実装されるかどうかにかかわらず、デジタルビデオコーディングハードウェア装置によって実行され得る。
[00158]様々な態様および例について説明した。しかしながら、以下の特許請求の範囲から逸脱することなく本開示の構造または技法に変更を行うことができる。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[1] ビデオデータのフレームのぼけ度レベルを、前記フレームにおいて検出された動きのタイプに基づいて推定することと、
ビデオ符号器において、前記フレームの前記推定されたぼけ度レベルに少なくとも部分的に基づいて、前記フレームを符号化することと、
を備える方法。
[2] 符号化することは、前記推定されたぼけ度レベルに基づいて、前記フレームを符号化するために使用されるべき量子化レベルを選択することを備える、[1]に記載の方法。
[3] 前記検出された動きのタイプに基づいて、前記フレームの前記ぼけ度レベルを推定するかどうかを決定することをさらに備える、[1]に記載の方法。
[4] 前記ビデオデータのフレームは、ビデオキャプチャモジュールによってキャプチャされる、[1]に記載の方法。
[5] 前記動きを検出することは、前記ビデオデータのフレームに関連付けられたグローバル動きベクトルを決定することを備える、[1]に記載の方法。
[6] 前記グローバル動きベクトルを、グローバル動きベクトルしきい値と比較することと、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定することと、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化することと、
をさらに備える[5]に記載の方法。
[7] 前記フレームに関連付けられたローカル動きベクトルを決定することと、
前記ローカル動きベクトルを、ローカル動きベクトルしきい値と比較することと、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超え、かつ、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定することと、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるか、または、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化することと、
をさらに備える、[6]に記載の方法。
[8] 前記ぼけ度レベルを推定することは、前記グローバル動きベクトルと、前記ビデオキャプチャモジュールに関連付けられた1つまたは複数のパラメータとに基づいて、前記ぼけ度レベルを推定することを備える、[5]に記載の方法。
[9] 前記ビデオキャプチャデバイスに関連付けられた前記パラメータは、タイム露出とフレームレートとを備える、[8]に記載の方法。
[10] 前記フレームに関連付けられたズーム率による光学ズーミングにおける変化を検出することによって、前記動きを検出することと、
前記ズーム率に基づいて、前記ぼけ度レベルを推定することと、
をさらに備える、[1]に記載の方法。
[11] 前記ビデオキャプチャモジュールに関連付けられたパンニングの動きを検出することによって、前記動きを検出することと、
前記フレームが前記パンニングの動きの後にキャプチャされるとき、前記フレームに関連付けられた焦点値に基づいて、前記ぼけ度レベルを推定することと、
をさらに備える、[1]に記載の方法。
[12] 前記フレームにおいて顔を検出することによって、前記動きを検出することと、
前記フレームにおいて前記検出された顔のサイズに基づいて、前記ぼけ度レベルを推定することと、
をさらに備える、[1]に記載の方法。
[13] ビデオデータのフレームのぼけ度レベルを、前記フレームにおいて検出された動きのタイプに基づいて推定するように構成されたぼけ度ユニットと、
前記フレームの前記推定されたぼけ度レベルに少なくとも部分的に基づいて、前記フレームを符号化するように構成されたビデオ符号器と、
を備える装置。
[14] 前記フレームを符号化するために、前記ビデオ符号器は、前記推定されたぼけ度レベルに基づいて、前記フレームを符号化するために使用されるべき量子化レベルを選択する、[13]に記載の装置。
[15] 前記ぼけ度ユニットは、前記検出された動きのタイプに基づいて、前記フレームの前記ぼけ度レベルを推定するかどうかを決定することを行うようにさらに構成される、[13]に記載の装置。
[16] 前記ビデオデータのフレームをキャプチャするように構成されたビデオキャプチャモジュールをさらに備える、[13]に記載の装置。
[17] 前記動きを検出するために、前記ビデオキャプチャデバイスは、前記ビデオデータのフレームに関連付けられたグローバル動きベクトルを検出するようにさらに構成される、[13]に記載の装置。
[18] 前記ぼけ度ユニットは、
前記グローバル動きベクトルを、グローバル動きベクトルしきい値と比較することと、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定することと、
を行うようにさらに構成され、
前記ビデオ符号器は、前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化するようにさらに構成される、[17]に記載の装置。
[19] 前記ビデオ符号器は、前記フレームに関連付けられたローカル動きベクトルを決定することを行うようにさらに構成され、
前記ぼけ度ユニットは、前記ローカル動きベクトルを、ローカル動きベクトルしきい値と比較することと、前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超え、かつ、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定することと、を行うようにさらに構成され、
前記ビデオ符号器は、前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるか、または、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化するようにさらに構成される、[18]に記載の装置。
[20] 前記ぼけ度ユニットは、前記グローバル動きベクトルと、前記ビデオキャプチャデバイスに関連付けられた1つまたは複数のパラメータとに基づいて、前記ぼけ度レベルを推定するように構成される、[17]に記載の装置。
[21] 前記ビデオキャプチャデバイスに関連付けられた前記パラメータは、タイム露出とフレームレートとを備える、[20]に記載の装置。
[22] 前記フレームに関連付けられたズーム率による光学ズーミングにおける変化を検出することによって、前記動きを検出するように構成されたビデオキャプチャモジュールと、
前記ズーム率に基づいて、前記ぼけ度レベルを推定するように構成されたぼけ度ユニットと、
をさらに備える、[13]に記載の装置。
[23] 前記ビデオキャプチャモジュールに関連付けられたパンニングの動きを検出することによって、前記動きを検出するように構成された前記ビデオキャプチャモジュールと、
前記フレームが前記パンニングの動きの後にキャプチャされるとき、前記フレームに関連付けられた焦点値に基づいて、前記ぼけ度レベルを推定するように構成されたぼけ度ユニットと、
をさらに備える、[13]に記載の装置。
[24] 前記フレームにおいて顔を検出することによって、前記動きを検出するように構成されたビデオキャプチャモジュールと、
前記フレームにおいて前記検出された顔のサイズに基づいて、前記ぼけ度レベルを推定するように構成されたぼけ度ユニットと、
をさらに備える、[13]に記載の装置。
[25] プログラマブルプロセッサに、
ビデオデータのフレームのぼけ度レベルを、前記フレームにおいて検出された動きのタイプに基づいて推定することと、
ビデオ符号器において、前記フレームの前記推定されたぼけ度レベルに少なくとも部分的に基づいて、前記フレームを符号化することと、
を行わせる命令を備えるコンピュータ可読媒体。
[26] 前記符号化するための命令は、前記プロセッサに、前記推定されたぼけ度レベルに基づいて、前記フレームを符号化するために使用されるべき量子化レベルを選択することを行わせる命令を備える、[25]に記載のコンピュータ可読媒体。
[27] 前記プロセッサに、前記検出された動きのタイプに基づいて、前記フレームの前記ぼけ度レベルを推定するかどうかを決定することを行わせる命令をさらに備える、[25]に記載のコンピュータ可読媒体。
[28] 前記動きを検出するための前記命令は、前記プロセッサに、前記ビデオデータのフレームに関連付けられたグローバル動きベクトルを検出することを行わせる命令を備える、[25]に記載のコンピュータ可読媒体。
[29] 前記プロセッサに、
前記グローバル動きベクトルを、グローバル動きベクトルしきい値と比較することと、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定することと、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化することと、
を行わせる命令をさらに備える、[28]に記載のコンピュータ可読媒体。
[30] 前記プロセッサに、
前記フレームに関連付けられたローカル動きベクトルを決定することと、
前記ローカル動きベクトルを、ローカル動きベクトルしきい値と比較することと、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超え、かつ、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定することと、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるか、または、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化することと、
を行わせる命令をさらに備える、[29]に記載のコンピュータ可読媒体。
[31] 前記ぼけ度レベルを推定するための前記命令は、前記プロセッサに、前記グローバル動きベクトルと、前記ビデオキャプチャデバイスに関連付けられた1つまたは複数のパラメータとに基づいて、前記ぼけ度レベルを推定することを行わせる命令を備える、[28]に記載のコンピュータ可読媒体。
[32] 前記ビデオキャプチャデバイスに関連付けられた前記パラメータは、タイム露出とフレームレートとを備える、[31]に記載のコンピュータ可読媒体。
[33] 前記プロセッサに、
前記フレームに関連付けられたズーム率による光学ズーミングにおける変化を検出することによって、前記動きを検出することと、
前記ズーム率に基づいて、前記ぼけ度レベルを推定することと、
を行わせる命令をさらに備える、[25]に記載のコンピュータ可読媒体。
[34] 前記プロセッサに、
前記ビデオキャプチャモジュールに関連付けられたパンニングの動きを検出することによって、前記動きを検出することと、
前記フレームが前記パンニングの動きの後にキャプチャされるとき、前記フレームに関連付けられた焦点値に基づいて、前記ぼけ度レベルを推定することと、
を行わせる命令をさらに備える、[25]に記載のコンピュータ可読媒体。
[35] 前記プロセッサに、
前記フレームにおいて顔を検出することによって、前記動きを検出することと、
前記フレームにおいて前記検出された顔のサイズに基づいて、前記ぼけ度レベルを推定することと、
を行わせる命令をさらに備える、[25]に記載のコンピュータ可読媒体。
[36] ビデオデータのフレームのぼけ度レベルを、前記フレームにおいて検出された動きのタイプに基づいて推定する手段と、
前記フレームの前記ぼけ度レベルを推定するかどうかの前記判定に少なくとも部分的に基づいて、前記フレームを符号化する手段と、
を備えるシステム。
[37] 前記符号化する手段は、前記推定されたぼけ度レベルに基づいて、前記フレームを符号化するために使用されるべき量子化レベルを選択する手段を備える、[36]に記載のシステム。
[38] 前記検出された動きのタイプに基づいて、前記フレームの前記ぼけ度レベルを推定するかどうかを決定する手段をさらに備える、[36]に記載のシステム。
[39] 前記ビデオデータのフレームが、ビデオキャプチャモジュールによってキャプチャされる、[36]に記載のシステム。
[40] 前記動きを検出する手段は、前記ビデオデータのフレームに関連付けられたグローバル動きベクトルを検出する手段を備える、[36]に記載のシステム。
[41] 前記グローバル動きベクトルを、グローバル動きベクトルしきい値と比較する手段と、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定する手段と、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化する手段と、
をさらに備える、[40]に記載のシステム。
[42] 前記フレームに関連付けられたローカル動きベクトルを決定する手段と、
前記ローカル動きベクトルを、ローカル動きベクトルしきい値と比較する手段と、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超え、かつ、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定する手段と、
前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるか、または、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化する手段と、
をさらに備える、[41]に記載のシステム。
[43] 前記ぼけ度レベルを推定する手段は、前記グローバル動きベクトルと、前記ビデオキャプチャデバイスに関連付けられた1つまたは複数のパラメータとに基づいて、前記ぼけ度レベルを推定する手段を備える、[40]に記載のシステム。
[44] 前記ビデオキャプチャデバイスに関連付けられた前記パラメータは、タイム露出とフレームレートとを備える、[43]に記載のシステム。
[45] 前記フレームに関連付けられたズーム率による光学ズーミングにおける変化を検出することによって、前記動きを検出する手段と、
前記ズーム率に基づいて、前記ぼけ度レベルを推定する手段と、
をさらに備える、[36]に記載のシステム。
[46] 前記ビデオキャプチャモジュールに関連付けられたパンニングの動きを検出することによって、前記動きを検出する手段と、
前記フレームが前記パンニングの動きの後にキャプチャされるとき、前記フレームに関連付けられた焦点値に基づいて、前記ぼけ度レベルを推定する手段と、
をさらに備える、[36]に記載のシステム。
[47] 前記フレームにおいて顔を検出することによって、前記動きを検出する手段と、
前記フレームにおいて前記検出された顔のサイズに基づいて、前記ぼけ度レベルを推定する手段と、
をさらに備える、[36]に記載のシステム。

Claims (47)

  1. ビデオデータのフレームのぼけ度レベルを、前記フレームにおいて検出された動きのタイプに基づいて推定することと、
    ビデオ符号器において、前記フレームの前記推定されたぼけ度レベルに少なくとも部分的に基づいて、前記フレームを符号化することと、
    を備え、
    前記フレームに関連付けられたグローバル動きベクトルと前記フレームに関連付けられたローカル動きベクトルとに基づき、グローバルな動きが検出されたときに、前記ぼけ度レベルが推定される、方法。
  2. 符号化することは、前記推定されたぼけ度レベルに基づいて、前記フレームを符号化するために使用されるべき量子化レベルを選択することを備える、請求項1に記載の方法。
  3. 前記検出された動きのタイプに基づいて、前記フレームの前記ぼけ度レベルを推定するかどうかを決定することをさらに備える、請求項1に記載の方法。
  4. 前記ビデオデータのフレームは、ビデオキャプチャモジュールによってキャプチャされる、請求項1に記載の方法。
  5. 前記動きを検出することは、前記ビデオデータのフレームに関連付けられたグローバル動きベクトルを決定することを備える、請求項1に記載の方法。
  6. 前記グローバル動きベクトルを、グローバル動きベクトルしきい値と比較することと、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定することと、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化することと、
    をさらに備える、請求項5に記載の方法。
  7. 前記フレームに関連付けられたローカル動きベクトルを決定することと、
    前記ローカル動きベクトルを、ローカル動きベクトルしきい値と比較することと、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超え、かつ、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定することと、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるか、または、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化することと、
    をさらに備える、請求項6に記載の方法。
  8. 前記ぼけ度レベルを推定することは、前記グローバル動きベクトルと、前記ビデオキャプチャモジュールに関連付けられた1つまたは複数のパラメータとに基づいて、前記ぼけ度レベルを推定することを備える、請求項5に記載の方法。
  9. 前記ビデオキャプチャデバイスに関連付けられた前記パラメータは、タイム露出とフレームレートとを備える、請求項8に記載の方法。
  10. 前記フレームに関連付けられたズーム率による光学ズーミングにおける変化を検出することによって、前記動きを検出することと、
    前記ズーム率に基づいて、前記ぼけ度レベルを推定することと、
    をさらに備える、請求項1に記載の方法。
  11. 前記ビデオキャプチャモジュールに関連付けられたパンニングの動きを検出することによって、前記動きを検出することと、
    前記フレームが前記パンニングの動きの後にキャプチャされるとき、前記フレームに関連付けられた焦点値に基づいて、前記ぼけ度レベルを推定することと、
    をさらに備える、請求項1に記載の方法。
  12. 前記フレームにおいて顔を検出することによって、前記動きを検出することと、
    前記フレームにおいて前記検出された顔のサイズに基づいて、前記ぼけ度レベルを推定することと、
    をさらに備える、請求項1に記載の方法。
  13. ビデオデータのフレームのぼけ度レベルを、前記フレームにおいて検出された動きのタイプに基づいて推定するように構成されたぼけ度ユニットと、
    前記フレームの前記推定されたぼけ度レベルに少なくとも部分的に基づいて、前記フレームを符号化するように構成されたビデオ符号器と、
    を備え、
    前記フレームに関連付けられたグローバル動きベクトルと前記フレームに関連付けられたローカル動きベクトルとに基づき、グローバルな動きが検出されたときに、前記ぼけ度レベルが推定される、装置。
  14. 前記フレームを符号化するために、前記ビデオ符号器は、前記推定されたぼけ度レベルに基づいて、前記フレームを符号化するために使用されるべき量子化レベルを選択する、請求項13に記載の装置。
  15. 前記ぼけ度ユニットは、前記検出された動きのタイプに基づいて、前記フレームの前記ぼけ度レベルを推定するかどうかを決定することを行うようにさらに構成される、請求項13に記載の装置。
  16. 前記ビデオデータのフレームをキャプチャするように構成されたビデオキャプチャモジュールをさらに備える、請求項13に記載の装置。
  17. 前記動きを検出するために、前記ビデオキャプチャデバイスは、前記ビデオデータのフレームに関連付けられたグローバル動きベクトルを検出するようにさらに構成される、請求項13に記載の装置。
  18. 前記ぼけ度ユニットは、
    前記グローバル動きベクトルを、グローバル動きベクトルしきい値と比較することと、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定することと、
    を行うようにさらに構成され、
    前記ビデオ符号器は、前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化するようにさらに構成される、請求項17に記載の装置。
  19. 前記ビデオ符号器は、前記フレームに関連付けられたローカル動きベクトルを決定することを行うようにさらに構成され、
    前記ぼけ度ユニットは、前記ローカル動きベクトルを、ローカル動きベクトルしきい値と比較することと、前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超え、かつ、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定することと、を行うようにさらに構成され、
    前記ビデオ符号器は、前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるか、または、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化するようにさらに構成される、請求項18に記載の装置。
  20. 前記ぼけ度ユニットは、前記グローバル動きベクトルと、前記ビデオキャプチャデバイスに関連付けられた1つまたは複数のパラメータとに基づいて、前記ぼけ度レベルを推定するように構成される、請求項17に記載の装置。
  21. 前記ビデオキャプチャデバイスに関連付けられた前記パラメータは、タイム露出とフレームレートとを備える、請求項20に記載の装置。
  22. 前記フレームに関連付けられたズーム率による光学ズーミングにおける変化を検出することによって、前記動きを検出するように構成されたビデオキャプチャモジュールと、
    前記ズーム率に基づいて、前記ぼけ度レベルを推定するように構成されたぼけ度ユニットと、
    をさらに備える、請求項13に記載の装置。
  23. 前記ビデオキャプチャモジュールに関連付けられたパンニングの動きを検出することによって、前記動きを検出するように構成された前記ビデオキャプチャモジュールと、
    前記フレームが前記パンニングの動きの後にキャプチャされるとき、前記フレームに関連付けられた焦点値に基づいて、前記ぼけ度レベルを推定するように構成されたぼけ度ユニットと、
    をさらに備える、請求項13に記載の装置。
  24. 前記フレームにおいて顔を検出することによって、前記動きを検出するように構成されたビデオキャプチャモジュールと、
    前記フレームにおいて前記検出された顔のサイズに基づいて、前記ぼけ度レベルを推定するように構成されたぼけ度ユニットと、
    をさらに備える、請求項13に記載の装置。
  25. プログラマブルプロセッサに、
    ビデオデータのフレームのぼけ度レベルを、前記フレームにおいて検出された動きのタイプに基づいて推定することと、
    ビデオ符号器において、前記フレームの前記推定されたぼけ度レベルに少なくとも部分的に基づいて、前記フレームを符号化することと、
    を行わせる命令を記憶し、
    前記フレームに関連付けられたグローバル動きベクトルと前記フレームに関連付けられたローカル動きベクトルとに基づき、グローバルな動きが検出されたときに、前記ぼけ度レベルが推定される、コンピュータ可読媒体。
  26. 前記符号化するための命令は、前記プロセッサに、前記推定されたぼけ度レベルに基づいて、前記フレームを符号化するために使用されるべき量子化レベルを選択することを行わせる命令を備える、請求項25に記載のコンピュータ可読媒体。
  27. 前記プロセッサに、前記検出された動きのタイプに基づいて、前記フレームの前記ぼけ度レベルを推定するかどうかを決定することを行わせる命令をさらに記憶した、請求項25に記載のコンピュータ可読媒体。
  28. 前記動きを検出するための前記命令は、前記プロセッサに、前記ビデオデータのフレームに関連付けられたグローバル動きベクトルを検出することを行わせる命令を備える、請求項25に記載のコンピュータ可読媒体。
  29. 前記プロセッサに、
    前記グローバル動きベクトルを、グローバル動きベクトルしきい値と比較することと、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定することと、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化することと、
    を行わせる命令をさらに記憶した、請求項28に記載のコンピュータ可読媒体。
  30. 前記プロセッサに、
    前記フレームに関連付けられたローカル動きベクトルを決定することと、
    前記ローカル動きベクトルを、ローカル動きベクトルしきい値と比較することと、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超え、かつ、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定することと、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるか、または、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化することと、
    を行わせる命令をさらに記憶した、請求項29に記載のコンピュータ可読媒体。
  31. 前記ぼけ度レベルを推定するための前記命令は、前記プロセッサに、前記グローバル動きベクトルと、前記ビデオキャプチャデバイスに関連付けられた1つまたは複数のパラメータとに基づいて、前記ぼけ度レベルを推定することを行わせる命令を備える、請求項28に記載のコンピュータ可読媒体。
  32. 前記ビデオキャプチャデバイスに関連付けられた前記パラメータは、タイム露出とフレームレートとを備える、請求項31に記載のコンピュータ可読媒体。
  33. 前記プロセッサに、
    前記フレームに関連付けられたズーム率による光学ズーミングにおける変化を検出することによって、前記動きを検出することと、
    前記ズーム率に基づいて、前記ぼけ度レベルを推定することと、
    を行わせる命令をさらに記憶した、請求項25に記載のコンピュータ可読媒体。
  34. 前記プロセッサに、
    前記ビデオキャプチャモジュールに関連付けられたパンニングの動きを検出することによって、前記動きを検出することと、
    前記フレームが前記パンニングの動きの後にキャプチャされるとき、前記フレームに関連付けられた焦点値に基づいて、前記ぼけ度レベルを推定することと、
    を行わせる命令をさらに記憶した、請求項25に記載のコンピュータ可読媒体。
  35. 前記プロセッサに、
    前記フレームにおいて顔を検出することによって、前記動きを検出することと、
    前記フレームにおいて前記検出された顔のサイズに基づいて、前記ぼけ度レベルを推定することと、
    を行わせる命令をさらに記憶した、請求項25に記載のコンピュータ可読媒体。
  36. ビデオデータのフレームのぼけ度レベルを、前記フレームにおいて検出された動きのタイプに基づいて推定する手段と、
    前記フレームの前記ぼけ度レベルを推定するかどうかの前記判定に少なくとも部分的に基づいて、前記フレームを符号化する手段と、
    を備え、
    前記フレームに関連付けられたグローバル動きベクトルと前記フレームに関連付けられたローカル動きベクトルとに基づき、グローバルな動きが検出されたとき、前記ぼけ度レベルが推定される、システム。
  37. 前記符号化する手段は、前記推定されたぼけ度レベルに基づいて、前記フレームを符号化するために使用されるべき量子化レベルを選択する手段を備える、請求項36に記載のシステム。
  38. 前記検出された動きのタイプに基づいて、前記フレームの前記ぼけ度レベルを推定するかどうかを決定する手段をさらに備える、請求項36に記載のシステム。
  39. 前記ビデオデータのフレームが、ビデオキャプチャモジュールによってキャプチャされる、請求項36に記載のシステム。
  40. 前記動きを検出する手段は、前記ビデオデータのフレームに関連付けられたグローバル動きベクトルを検出する手段を備える、請求項36に記載のシステム。
  41. 前記グローバル動きベクトルを、グローバル動きベクトルしきい値と比較する手段と、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定する手段と、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化する手段と、
    をさらに備える、請求項40に記載のシステム。
  42. 前記フレームに関連付けられたローカル動きベクトルを決定する手段と、
    前記ローカル動きベクトルを、ローカル動きベクトルしきい値と比較する手段と、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値を超え、かつ、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値を超えるとき、前記ぼけ度レベルを推定する手段と、
    前記グローバル動きベクトルが前記グローバル動きベクトルしきい値以下であるか、または、前記ローカル動きベクトルが前記ローカル動きベクトルしきい値以下であるとき、前記ぼけ度レベルを推定することなしに、前記フレームを符号化する手段と、
    をさらに備える、請求項41に記載のシステム。
  43. 前記ぼけ度レベルを推定する手段は、前記グローバル動きベクトルと、前記ビデオキャプチャデバイスに関連付けられた1つまたは複数のパラメータとに基づいて、前記ぼけ度レベルを推定する手段を備える、請求項40に記載のシステム。
  44. 前記ビデオキャプチャデバイスに関連付けられた前記パラメータは、タイム露出とフレームレートとを備える、請求項43に記載のシステム。
  45. 前記フレームに関連付けられたズーム率による光学ズーミングにおける変化を検出することによって、前記動きを検出する手段と、
    前記ズーム率に基づいて、前記ぼけ度レベルを推定する手段と、
    をさらに備える、請求項36に記載のシステム。
  46. 前記ビデオキャプチャモジュールに関連付けられたパンニングの動きを検出することによって、前記動きを検出する手段と、
    前記フレームが前記パンニングの動きの後にキャプチャされるとき、前記フレームに関連付けられた焦点値に基づいて、前記ぼけ度レベルを推定する手段と、
    をさらに備える、請求項36に記載のシステム。
  47. 前記フレームにおいて顔を検出することによって、前記動きを検出する手段と、
    前記フレームにおいて前記検出された顔のサイズに基づいて、前記ぼけ度レベルを推定する手段と、
    をさらに備える、請求項36に記載のシステム。
JP2014512120A 2011-05-24 2012-05-24 画像キャプチャパラメータに基づくビデオ符号化の制御 Expired - Fee Related JP5908581B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/114,844 US20110292997A1 (en) 2009-11-06 2011-05-24 Control of video encoding based on image capture parameters
US13/114,844 2011-05-24
PCT/US2012/039448 WO2012162549A2 (en) 2011-05-24 2012-05-24 Control of video encoding based on image capture parameters

Publications (2)

Publication Number Publication Date
JP2014518049A JP2014518049A (ja) 2014-07-24
JP5908581B2 true JP5908581B2 (ja) 2016-04-26

Family

ID=46178860

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014512120A Expired - Fee Related JP5908581B2 (ja) 2011-05-24 2012-05-24 画像キャプチャパラメータに基づくビデオ符号化の制御

Country Status (6)

Country Link
US (1) US20110292997A1 (ja)
EP (1) EP2716042A2 (ja)
JP (1) JP5908581B2 (ja)
KR (1) KR20140022925A (ja)
CN (1) CN103650504B (ja)
WO (1) WO2012162549A2 (ja)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8897365B2 (en) * 2008-11-19 2014-11-25 Nvidia Corporation Video rate control processor for a video encoding process
US8761094B2 (en) * 2009-07-22 2014-06-24 Qualcomm Incorporated Method and apparatus that facilitates interference cancellation for control channels in heterogenous networks
US8837576B2 (en) * 2009-11-06 2014-09-16 Qualcomm Incorporated Camera parameter-assisted video encoding
US10178406B2 (en) * 2009-11-06 2019-01-08 Qualcomm Incorporated Control of video encoding based on one or more video capture parameters
JP5583992B2 (ja) * 2010-03-09 2014-09-03 パナソニック株式会社 信号処理装置
CN107105259B (zh) * 2011-03-10 2021-12-28 夏普株式会社 图像解码装置及方法、以及记录介质
US9723315B2 (en) * 2011-07-01 2017-08-01 Apple Inc. Frame encoding selection based on frame similarities and visual quality and interests
JP2013031060A (ja) * 2011-07-29 2013-02-07 Sony Corp 画像処理装置、画像処理方法、およびプログラム
US8520140B2 (en) * 2011-10-12 2013-08-27 Intel Corporation Mode based film mode detection
TW201345262A (zh) * 2012-04-20 2013-11-01 Novatek Microelectronics Corp 影像處理電路及影像處理方法
US9451163B2 (en) * 2012-05-11 2016-09-20 Qualcomm Incorporated Motion sensor assisted rate control for video encoding
CN103428523B (zh) * 2012-05-22 2015-07-08 华为技术有限公司 评估视频质量的方法和装置
TWI517682B (zh) * 2012-12-28 2016-01-11 晨星半導體股份有限公司 多媒體資料流格式、元數據產生器、編碼及解碼方法與系統
CN103929656B (zh) * 2013-01-15 2017-10-20 晨星软件研发(深圳)有限公司 多媒体数据流格式、元数据产生器、编码及解码方法与系统
CN103747237B (zh) 2013-02-06 2015-04-29 华为技术有限公司 视频编码质量的评估方法及设备
JP6103999B2 (ja) * 2013-03-15 2017-03-29 キヤノン株式会社 画像データ送信装置、画像データ受信装置、画像データ送信方法、画像データ受信方法、及びプログラム
WO2014161605A1 (en) * 2013-04-05 2014-10-09 Harman Becker Automotive Systems Gmbh Navigation device, method of outputting an electronic map, and method of generating a database
US9313493B1 (en) * 2013-06-27 2016-04-12 Google Inc. Advanced motion estimation
EP3039617B1 (en) 2013-08-31 2020-05-20 ML Netherlands C.V. User feedback for real-time checking and improving quality of scanned image
US10142522B2 (en) 2013-12-03 2018-11-27 Ml Netherlands C.V. User feedback for real-time checking and improving quality of scanned image
WO2015104235A1 (en) 2014-01-07 2015-07-16 Dacuda Ag Dynamic updating of composite images
EP3092790B1 (en) 2014-01-07 2020-07-29 ML Netherlands C.V. Adaptive camera control for reducing motion blur during real-time image capture
WO2015173173A1 (en) 2014-05-12 2015-11-19 Dacuda Ag Method and apparatus for scanning and printing a 3d object
WO2016036295A2 (en) * 2014-09-05 2016-03-10 Telefonaktiebolaget L M Ericsson (Publ) Method, device, computer program and computer program product for encoding of high frame rate video
IL296028B2 (en) 2015-03-05 2024-12-01 Magic Leap Inc Systems and methods for augmented reality
WO2016179019A1 (en) * 2015-05-01 2016-11-10 Gopro, Inc. Camera mode control
US10063777B2 (en) 2015-05-01 2018-08-28 Gopro, Inc. Motion-based camera mode control to reduce rolling shutter artifacts
US10979704B2 (en) * 2015-05-04 2021-04-13 Advanced Micro Devices, Inc. Methods and apparatus for optical blur modeling for improved video encoding
WO2016210305A1 (en) * 2015-06-26 2016-12-29 Mobile Video Corporation Mobile camera and system with automated functions and operational modes
US20170085886A1 (en) * 2015-09-18 2017-03-23 Qualcomm Incorporated Variable partition size for block prediction mode for display stream compression (dsc)
US9807416B2 (en) 2015-09-21 2017-10-31 Google Inc. Low-latency two-pass video coding
US10432952B2 (en) * 2015-11-19 2019-10-01 Qualcomm Incorporated System and methods for fixed-point approximations in display stream compression (DSC)
EP3220642B1 (en) 2016-03-15 2018-03-07 Axis AB Method, apparatus and system for encoding a video stream by defining areas within a second image frame with image data common to a first image frame
KR102321394B1 (ko) * 2016-08-01 2021-11-03 한국전자통신연구원 영상 부호화/복호화 방법
WO2018076370A1 (zh) * 2016-10-31 2018-05-03 华为技术有限公司 一种视频帧的处理方法及设备
CN108810531B (zh) * 2017-05-03 2019-11-19 腾讯科技(深圳)有限公司 视频编码处理方法、装置及电子设备
US10764499B2 (en) 2017-06-16 2020-09-01 Microsoft Technology Licensing, Llc Motion blur detection
US10356439B2 (en) * 2017-06-29 2019-07-16 Intel Corporation Flexible frame referencing for display transport
US11379948B2 (en) * 2018-07-23 2022-07-05 Magic Leap, Inc. Mixed reality system with virtual content warping and method of generating virtual content using same
CN110971943B (zh) * 2018-09-30 2021-10-15 北京微播视界科技有限公司 视频码率调整方法、装置、终端及存储介质
CN109741300B (zh) * 2018-12-18 2022-08-12 南京邮电大学 一种适用于视频编码的图像显著性快速检测方法和装置
CN115552468A (zh) 2020-05-11 2022-12-30 奇跃公司 用于计算3d环境的合成表示的计算高效方法
US12394229B1 (en) * 2020-08-13 2025-08-19 Charles Schwab & Co., Inc. System and method for processing images to be uploaded to a server
WO2022230253A1 (ja) * 2021-04-28 2022-11-03 ソニーグループ株式会社 情報処理装置及び情報処理方法
CN120660347A (zh) * 2022-12-12 2025-09-16 交互数字Ce专利控股有限公司 基于相机运动信息的指示的编码方法或装置
CN119906820A (zh) * 2024-12-31 2025-04-29 北京中科艺杺科技有限公司 一种基于物联网技术的监控数据智能存储系统

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100393066B1 (ko) * 2001-06-11 2003-07-31 삼성전자주식회사 적응 움직임 보상형 디-인터레이싱 장치 및 그 방법
KR100668303B1 (ko) * 2004-08-04 2007-01-12 삼성전자주식회사 피부색 및 패턴 매칭을 이용한 얼굴 검출 방법
US8861601B2 (en) * 2004-08-18 2014-10-14 Qualcomm Incorporated Encoder-assisted adaptive video frame interpolation
US7463755B2 (en) * 2004-10-10 2008-12-09 Qisda Corporation Method for correcting motion vector errors caused by camera panning
US8115728B2 (en) * 2005-03-09 2012-02-14 Sharp Laboratories Of America, Inc. Image display device with reduced flickering and blur
JP4393341B2 (ja) * 2004-10-19 2010-01-06 キヤノン株式会社 動画像符号化装置及び動画像符号化方法
US20060171569A1 (en) * 2005-01-10 2006-08-03 Madhukar Budagavi Video compression with blur compensation
JP4310282B2 (ja) * 2005-01-11 2009-08-05 シャープ株式会社 画像符号化装置および符号化方法
JP4674471B2 (ja) * 2005-01-18 2011-04-20 株式会社ニコン デジタルカメラ
JP4419084B2 (ja) * 2005-04-15 2010-02-24 ソニー株式会社 制御装置および方法、プログラム、並びにカメラ
WO2006137253A1 (ja) * 2005-06-22 2006-12-28 Matsushita Electric Industrial Co., Ltd. 画像生成装置および画像生成方法
US8559751B2 (en) * 2005-07-12 2013-10-15 Nxp B.V. Method and device for removing motion blur effects
JP4817990B2 (ja) * 2005-08-17 2011-11-16 キヤノン株式会社 撮像装置及びその制御方法及びプログラム及び記憶媒体
US7570309B2 (en) * 2005-09-27 2009-08-04 Samsung Electronics Co., Ltd. Methods for adaptive noise reduction based on global motion estimation
JP4887750B2 (ja) * 2005-11-16 2012-02-29 カシオ計算機株式会社 画像処理装置、制御方法及びプログラム
JP4655957B2 (ja) * 2006-02-20 2011-03-23 ソニー株式会社 撮像画像の歪み補正方法、撮像画像の歪み補正装置、撮像方法および撮像装置
JP4655991B2 (ja) * 2006-04-21 2011-03-23 カシオ計算機株式会社 撮像装置及び電子ズーム方法と、プログラム
KR100803611B1 (ko) * 2006-11-28 2008-02-15 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
US8094714B2 (en) * 2008-07-16 2012-01-10 Sony Corporation Speculative start point selection for motion estimation iterative search
JP4840426B2 (ja) * 2008-09-24 2011-12-21 ソニー株式会社 電子機器、ぼけ画像選別方法及びプログラム
WO2010102913A1 (en) * 2009-03-13 2010-09-16 Thomson Licensing Blur measurement in a block-based compressed image
US10178406B2 (en) * 2009-11-06 2019-01-08 Qualcomm Incorporated Control of video encoding based on one or more video capture parameters

Also Published As

Publication number Publication date
US20110292997A1 (en) 2011-12-01
WO2012162549A3 (en) 2013-03-14
JP2014518049A (ja) 2014-07-24
WO2012162549A2 (en) 2012-11-29
EP2716042A2 (en) 2014-04-09
KR20140022925A (ko) 2014-02-25
CN103650504B (zh) 2017-06-13
CN103650504A (zh) 2014-03-19

Similar Documents

Publication Publication Date Title
JP5908581B2 (ja) 画像キャプチャパラメータに基づくビデオ符号化の制御
KR101375892B1 (ko) 영상 캡처 파라미터들에 기초한 비디오 인코딩 제어
EP2847993B1 (en) Motion sensor assisted rate control for video encoding
US8837576B2 (en) Camera parameter-assisted video encoding
US10091507B2 (en) Perceptual optimization for model-based video encoding
EP1607909A1 (en) Moving image coding apparatus
EP3175618A1 (en) Perceptual optimization for model-based video encoding
JP2010199656A (ja) 動画撮像装置
US7760953B2 (en) Image processing apparatus and method, computer program, and storage medium with varied block shapes to execute motion detection
US20100026829A1 (en) Image coding apparatus, image coding method, integrated circuit, and camera
US20120008685A1 (en) Image coding device and image coding method
JP4328000B2 (ja) 動画像符号化装置および動画像の特殊効果シーン検出装置
KR102828890B1 (ko) 카메라 모션에 기반한 대체 이미지 프레임 생성
JP2011199411A (ja) 画像符号化装置及びカメラシステム
JP6016484B2 (ja) 符号化装置
US11019348B2 (en) Image processing apparatus and image processing method
JP2006217158A (ja) 画像符号化装置及び撮像装置
JP2014158131A (ja) 画像符号化装置
JP2016021681A (ja) 画像符号化装置
JP2012178713A (ja) 画像処理装置、画像処理方法、及びプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150210

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20150511

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150810

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160223

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160323

R150 Certificate of patent or registration of utility model

Ref document number: 5908581

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees