JP2008503919A - Method and apparatus for optimizing video coding - Google Patents

Method and apparatus for optimizing video coding Download PDF

Info

Publication number
JP2008503919A
JP2008503919A JP2007516535A JP2007516535A JP2008503919A JP 2008503919 A JP2008503919 A JP 2008503919A JP 2007516535 A JP2007516535 A JP 2007516535A JP 2007516535 A JP2007516535 A JP 2007516535A JP 2008503919 A JP2008503919 A JP 2008503919A
Authority
JP
Japan
Prior art keywords
analysis
parameters
video
signal data
video signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007516535A
Other languages
Japanese (ja)
Other versions
JP2008503919A5 (en
Inventor
マイケル トウラピス,アレグザンドロス
マクドナルド ボイス,ジル
イン,ペング
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of JP2008503919A publication Critical patent/JP2008503919A/en
Publication of JP2008503919A5 publication Critical patent/JP2008503919A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/197Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
    • 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

Abstract

複数のピクチャに対応するビデオ信号データを符号化するエンコーダ、およびそれに対応する方法を提供する。このエンコーダは、ビデオ信号データに対応する複数のピクチャの少なくとも一部に関する複数の重複解析ウィンドウを用いてビデオ信号データのビデオ解析を実行し、ビデオ解析の結果に基づいてビデオ信号データの符号化パラメータの適応化を行う重複ウィンドウ解析ユニット(310)を含む。  An encoder for encoding video signal data corresponding to a plurality of pictures and a method corresponding thereto are provided. The encoder performs video analysis of the video signal data using a plurality of overlap analysis windows regarding at least a part of the plurality of pictures corresponding to the video signal data, and encodes the video signal data encoding parameters based on the result of the video analysis. A duplicate window analysis unit (310) that performs the adaptation of

Description

(関連出願の相互参照)
本願は、2004年6月18日出願の米国仮特許出願第60/581280号の特典を請求するものである。
(Cross-reference of related applications)
This application claims the benefit of US Provisional Patent Application No. 60/581280, filed Jun. 18, 2004.

本発明は、一般にビデオ・エンコーダおよび・ビデオ・デコーダに関し、特にビデオ符号化を最適化する方法および装置に関する。   The present invention relates generally to video encoders and video decoders, and more particularly to a method and apparatus for optimizing video coding.

マルチパス・ビデオ符号化方式は、MPEG−2やJVT/H.264/MPEG AVCなど多くのビデオ符号化アーキテクチャで、符号化効率を高めるために使用されている。これらの方式の基礎となる概念は、解析を実行し、符号化性能を向上させるために将来の反復に用いることができる統計値を収集しながら、シーケンス全体を数回反復して試験して符号化することである。   Multi-pass video coding schemes include MPEG-2 and JVT / H. It is used in many video coding architectures such as H.264 / MPEG AVC to increase coding efficiency. The underlying concept of these schemes is that the entire sequence is tested several times while performing analysis and collecting statistics that can be used in future iterations to improve coding performance. It is to become.

2パス符号化方式は、MICROSOFT(登録商標)WINDOWS MEDIA(登録商標)やREALVIDEO(登録商標)エンコーダなど、いくつかの符号化システムで既に使用されている。この符号化方式によれば、エンコーダは、最初にいくつかの初期既定設定を用いてシーケンス全体に対して初期符号化パスを実行し、シーケンス内の各ピクチャの符号化効率に関する統計値を収集する。このプロセスが完了した後で、以前に生成された統計値を同時に考慮に入れながら、もう一度シーケンス全体を処理し、符号化する。これにより、符号化効率をかなり向上させることができ、さらに例えば符号化されたストリームの所与のビットレート制約を満たすなど、いくつかの規定の符号化制約または要件を満たすことも可能になる。これは、エンコーダがビデオ・シーケンスまたはピクチャの特性をより多く把握しており、従って、エンコーダが符号化に使用される量子化器やデッド・ゾーン処理などのパラメータをより適切に選択できるからである。この最初の符号化パスの間に収集することができ、この目的のために使用することができる統計値としては、ビット/ピクチャ(bits per picture)、空間アクティビティ(すなわち平均正規化マクロブロック分散および平均)、時間アクティビティ(すなわち動きベクトル/動きベクトル分散)、歪み(例えば二乗平均誤差(MSE))などが挙げられる。これらの方法を用いることによって符号化の性能をかなり向上させることができるが、これらの方法は非常に複雑になる傾向があり、オフラインでしか用いることができず(シーケンス全体を最初に符号化し、その後で第2のパスを実行する。)、そのため、実時間エンコーダに適さない。これらの方法は、最初の符号化ステップから推測可能な全ての生じうる統計値を必ずしも考慮しているわけではない。   The two-pass encoding scheme is already used in several encoding systems such as MICROSOFT (registered trademark) WINDOWS MEDIA (registered trademark) and REALVIDEO (registered trademark) encoder. According to this coding scheme, the encoder first performs an initial coding pass on the entire sequence with some initial default settings and collects statistics on the coding efficiency of each picture in the sequence. . After this process is complete, the entire sequence is once again processed and encoded while simultaneously taking into account previously generated statistics. This can significantly improve the coding efficiency and can also satisfy some specified coding constraints or requirements, for example meeting a given bit rate constraint of the encoded stream. This is because the encoder knows more about the characteristics of the video sequence or picture, and therefore the encoder can better select parameters such as the quantizer and dead zone processing used for encoding. . Statistics that can be collected during this first coding pass and that can be used for this purpose include bits per picture, spatial activity (ie average normalized macroblock variance and Average), temporal activity (ie, motion vector / motion vector variance), distortion (eg, root mean square error (MSE)), and the like. Although using these methods can significantly improve the performance of the encoding, these methods tend to be very complex and can only be used offline (the entire sequence is encoded first, After that, the second pass is performed.) Therefore, it is not suitable for a real-time encoder. These methods do not necessarily take into account all possible statistics that can be inferred from the initial encoding step.

(発明の概要)
本発明は、ビデオ符号化を最適化する方法および装置に関し、上述した従来技術および他の先行技術の欠点および問題点に対処するものである。
(Summary of Invention)
The present invention relates to a method and apparatus for optimizing video coding, which addresses the shortcomings and problems of the prior art and other prior art described above.

本発明の一態様によれば、複数のピクチャに対応するビデオ信号データを符号化するエンコーダが提供される。このエンコーダは、ビデオ信号データに対応する複数のピクチャの少なくとも一部に関する複数の重複解析ウィンドウを用いてビデオ信号データのビデオ解析を実行し、ビデオ解析の結果に基づいてビデオ信号データの符号化パラメータの適応化を行う重複ウィンドウ解析ユニットを含む。   According to an aspect of the present invention, an encoder is provided that encodes video signal data corresponding to a plurality of pictures. The encoder performs video analysis of the video signal data using a plurality of overlap analysis windows regarding at least a part of the plurality of pictures corresponding to the video signal data, and encodes the video signal data encoding parameters based on the result of the video analysis. Includes a duplicate window analysis unit that performs

本発明の別の態様によれば、複数のピクチャに対応するビデオ信号データを符号化する方法が提供される。この方法は、ビデオ信号データに対応する複数のピクチャの少なくとも一部に関する複数の重複解析ウィンドウを用いてビデオ信号データのビデオ解析を実行するステップと、ビデオ解析の結果に基づいてビデオ信号データの符号化パラメータの適応化を行うステップとを含む。   According to another aspect of the invention, a method for encoding video signal data corresponding to a plurality of pictures is provided. The method includes performing video analysis of the video signal data using a plurality of overlap analysis windows for at least some of the plurality of pictures corresponding to the video signal data, and encoding the video signal data based on the results of the video analysis. Adapting the optimization parameters.

本発明についての上記および他の態様、特徴および利点は、以下の例示的な実施形態の詳細な説明を添付の図面と併せて読むことにより明らかになるであろう。   The above and other aspects, features and advantages of the present invention will become apparent upon reading the following detailed description of exemplary embodiments in conjunction with the accompanying drawings.

本発明は、後述の例示的な図面によってより深く理解することができる。   The invention can be better understood with reference to the following exemplary drawings.

本発明は、ビデオ符号化を最適化する方法および装置に関する。本発明の有利な点は、ビデオ・エンコーダが所与のビットレートで大幅に改善された主観的品質および客観的品質でビデオ・シーケンスを圧縮することを可能にすることである。これは、これから符号化する後続のN個のピクチャと比較して現在のピクチャの簡単な解析を行う、ビデオ・シーケンスの特殊な処理によって実現される。その後、エンコーダがこの解析結果を利用して、現在のピクチャの符号化に使用される符号化パラメータ(ピクチャ・タイプ/スライス・タイプ、量子化器、しきい値処理パラメータ、ラグランジュλなどがあるが、これらに限定されるわけではない。)をより良好に決定することができる。本発明は、符号化性能を向上させるためにシーケンス全体のデュアルパスまたはマルチパス符号化を行う従来技術のいくつかのシステムとは異なり、本発明は比較的簡単であり、従って複雑性に及ぼす影響も比較的小さい。本発明の原理をその他のマルチパス符号化ストラテジと共に使用して、効率をさらに高めることもできる。また同様に、一般的なシステム(以前に符号化されたM個のピクチャを用いる。)を形成することもできる。   The present invention relates to a method and apparatus for optimizing video coding. An advantage of the present invention is that it allows a video encoder to compress a video sequence with significantly improved subjective and objective quality at a given bit rate. This is achieved by a special processing of the video sequence that provides a simple analysis of the current picture compared to the subsequent N pictures to be encoded. The encoder then uses this analysis result to provide the encoding parameters (picture type / slice type, quantizer, thresholding parameters, Lagrange λ, etc.) used to encode the current picture. , But not limited to these) can be determined better. Unlike the prior art systems that do dual-pass or multi-pass coding of entire sequences to improve coding performance, the present invention is relatively simple and therefore has an impact on complexity. Is also relatively small. The principles of the present invention can also be used with other multi-pass coding strategies to further increase efficiency. Similarly, a general system (using previously encoded M pictures) can also be formed.

本発明の原理によれば、シーケンス全体のうちピクチャ・ウィンドウが重複する部分のみを最初に解析する。これにより生成された統計値に基づいて、各ピクチャの符号化パラメータを適宜調節する。これらの符号化パラメータとしては、ピクチャ・タイプ/スライス・タイプ決定(I、P、B)、フレーム/フィールド決定、Bピクチャ間隔、ピクチャまたはマクロブロック量子化値(QP)、係数しきい値処理、ラグランジュ・パラメータ、クロマ・オフセット、重み付き予測、参照ピクチャ選択、マルチ・ブロック・サイズ決定、エントロピ・パラメータの初期化、イントラ・モード決定、およびデブロッキング・フィルタ・パラメータなどがあるが、これらに限定されるわけではない。解析方法は、様々な複雑性コストを要する可能性があるが、その解析方法をピクチャ/マクロブロック解析を実行するために使用することができる。その解析方法として、最初のパスの完全符号化、空間解析を用いた単純な最初のパスの動き推定、または分散や画像差などを含むがこれに限定されない単純な時空間的解析メトリクスなどがある。さらに、重複するピクチャ・ウィンドウ(およびその重複するピクチャ)は、必要なだけ大きくすることも小さくすることも(多くすることも少なくすることも)できるので、遅延と性能の兼ね合いを様々につけることができる。   In accordance with the principles of the present invention, only the portion of the entire sequence where picture windows overlap is first analyzed. Based on the statistical value thus generated, the encoding parameter of each picture is adjusted as appropriate. These coding parameters include picture type / slice type determination (I, P, B), frame / field determination, B picture interval, picture or macroblock quantization value (QP), coefficient thresholding, Lagrange parameters, chroma offset, weighted prediction, reference picture selection, multi-block sizing, entropy parameter initialization, intra mode determination, and deblocking filter parameters, but are not limited to these It is not done. The analysis method may require various complexity costs, but the analysis method can be used to perform picture / macroblock analysis. Analysis methods include full first pass coding, simple first pass motion estimation using spatial analysis, or simple spatio-temporal analysis metrics including but not limited to variance and image differences. . In addition, overlapping picture windows (and their overlapping pictures) can be made as small or large as necessary (more or less), so there are various tradeoffs between delay and performance. Can do.

本明細書では、本発明の原理について説明する。従って、当業者なら、本明細書では明示的に説明または図示していないが本発明の趣旨および範囲に含まれる本発明の原理を実施する様々な構成を考案することができることを理解されたい。   In this specification, the principle of the present invention will be described. Accordingly, those skilled in the art will appreciate that various configurations can be devised that implement the principles of the invention that are not explicitly described or illustrated herein, but are within the spirit and scope of the invention.

本明細書に記載する全ての実施例および条件に関する表現は、本発明の原理と発明者による技術の進歩の助けとなる概念とを読者が理解するのを助けるための教育的な目的を有するものであり、これらの具体的に列挙した実施例および条件に限定されないものと解釈されたい。   All examples and conditions expressed herein are for educational purposes to help the reader understand the principles of the invention and the concepts that will help the inventor to advance the technology. And should not be construed as being limited to these specifically recited examples and conditions.

さらに、本発明の原理、態様および実施形態ならびに本発明の具体的な実施例についての本明細書の全ての記述は、その構造的均等物および機能的均等物の両方を含むものとする。さらに、これらの均等物には、現在既知の均等物と将来開発されるであろう均等物の両方が含まれる、すなわちその構造にかかわらず同じ機能を実行する、将来開発される任意の要素が含まれるものとする。   Moreover, all statements herein reciting principles, aspects and embodiments of the invention and specific examples of the invention are intended to include both structural and functional equivalents thereof. In addition, these equivalents include both currently known equivalents and equivalents that will be developed in the future, i.e. any future developed elements that perform the same function regardless of their structure. Shall be included.

従って、例えば、当業者なら、本明細書に示すブロック図が本発明の原理を実施する例示的な回路の概念図を表していることを理解するであろう。同様に、任意のフローチャート、流れ図、状態遷移図、擬似コードなどが、コンピュータ可読媒体中に実質的に表現され、明示してある場合も明示していない場合もあるコンピュータまたはプロセッサによって実行される様々なプロセスを表すことも理解されたい。   Thus, for example, those skilled in the art will appreciate that the block diagrams presented herein represent conceptual diagrams of exemplary circuits that implement the principles of the invention. Similarly, any flowchart, flowchart, state transition diagram, pseudo-code, etc. may be substantially expressed in a computer-readable medium and executed by a computer or processor that may or may not be explicitly indicated. It should also be understood to represent a complex process.

図面に示す様々な要素の機能は、専用のハードウェア、および適当なソフトウェアと連動してソフトウェアを実行することができるハードウェアを使用して実現することができる。プロセッサによって実現するときには、これらの機能は単一の専用プロセッサで実現することも、単一の共用プロセッサで実現することも、あるいはその一部を共用することもできる複数の個別プロセッサで実施することもできる。さらに、「プロセッサ」または「制御装置」という用語を明示的に用いていても、ソフトウェアを実行することができるハードウェアのみを指していると解釈すべきではなく、ディジタル信号プロセッサ(DSP)ハードウェア、ソフトウェアを記憶するための読取り専用メモリ(ROM)、ランダム・アクセス・メモリ(RAM)および不揮発性記憶装置(これらに限定されない)を暗に含むことがある。   The functions of the various elements shown in the figures can be realized using dedicated hardware and hardware capable of executing software in conjunction with appropriate software. When implemented by a processor, these functions can be implemented by a single dedicated processor, by a single shared processor, or by multiple individual processors that can share part of them. You can also. Furthermore, the explicit use of the terms “processor” or “controller” should not be construed to refer only to hardware capable of executing software, but digital signal processor (DSP) hardware. , Implicitly including, but not limited to, read only memory (ROM), random access memory (RAM) and non-volatile storage for storing software.

従来の、且つ/または特注のその他ハードウェアも含まれることがある。同様に、図面に示す任意のスイッチも、概念的なものに過ぎない。スイッチの機能は、プログラム論理の動作、専用論理またはプログラム制御と専用論理の相互作用によって、あるいは手作業で実施することができ、作製者が前後関係から具体的に判断して特定の技術を選択することができる。   Conventional and / or custom hardware may also be included. Similarly, any switches shown in the drawings are conceptual only. The function of the switch can be implemented by program logic operation, dedicated logic or interaction between program control and dedicated logic, or manually, and the creator chooses a specific technology based on specific context. can do.

本明細書の特許請求の範囲において、特定の機能を実行する手段として表現されている任意の要素は、例えば(a)当該機能を実行する回路素子の組合せ、(b)ファームウェアやマイクロコードなどを含む任意の形態のソフトウェアを当該ソフトウェアを実行して当該機能を実行する適当な回路と組み合わせたものを含む、当該機能を実行する任意の方法を含むものとする。特許請求の範囲に定義される本発明は、列挙する様々な手段が実施する機能を、特許請求の範囲が要求するかたちで組み合わせることにある。従って、出願人は、これらの機能を実施することができるあらゆる手段を、本明細書に示す手段の均等物とみなす。   In the claims of this specification, an arbitrary element expressed as a means for executing a specific function is, for example, (a) a combination of circuit elements that execute the function, (b) firmware, microcode, or the like. Any method of performing the function is included, including any form of software in combination with appropriate circuitry that executes the software to perform the function. The invention as defined in the claims lies in combining the functions performed by the various means recited in the manner required by the claims. Applicant thus regards any means which can carry out these functions as equivalent to those shown herein.

本発明の原理によれば、各パス中にビデオ・シーケンス全体または個別のウィンドウを考慮する従来の方法と異なり、重複するウィンドウに対して各パスを実行して、事前に決定した特徴を隣接するウィンドウの間で再利用できるようにする新しいマルチパス符号化アーキテクチャが開示される。このアーキテクチャでは、はるかに少ないステップ数で最適な符号化を行うことができるので、より低いコストやより低い複雑性であっても、より少ないメモリ要件やより短い待ち時間で、ビデオ品質の大幅な向上などのマルチパス符号化の利点も得ることができる。この特徴は、隣接するウィンドウ間の類似性により最初のパス中でもエンコーダが最良のパラメータを決定することができるため、最終的な符号化のためにさらなる反復を必要としないことを考えると、実時間符号化に適用したときに特に重要である。   In accordance with the principles of the present invention, unlike conventional methods that consider the entire video sequence or individual windows during each pass, each pass is performed on overlapping windows to adjoin predetermined features. A new multi-pass coding architecture is disclosed that allows reuse between windows. This architecture allows optimal encoding with much fewer steps, so video quality can be significantly improved with lower memory requirements and lower latency, even at lower costs and lower complexity. Advantages of multi-pass coding such as improvement can also be obtained. This feature is real-time considering that the encoder can determine the best parameters even during the first pass due to the similarity between adjacent windows, so that no further iterations are required for final encoding. This is particularly important when applied to encoding.

図1を参照すると、ウィンドウ・ベース・2パス符号化アーキテクチャの全体を参照番号100で示してある。処理/解析ウィンドウの大きさはピクチャのW個分であり、隣接する2つのグループの間で許される重複の大きさはピクチャのW個分である。第1のウィンドウの処理を行うと、このウィンドウ内の全てのフレームの符号化特性の事前セットを決定するために使用することができるいくつかの初期統計値が得られる。より詳細には、2パス方式を用いる場合には、次のウィンドウに属さない全てのフレームを、生成されたパラメータに基づいて直ちに符号化することができる。ただし、この情報は、この次のウィンドウの処理/解析に直接使用することができる。例えば、これらのパラメータは、このウィンドウの処理中に初期シードとして使用することができ、大部分のシーケンスにおいて高い時間的相関が存在していることを考えれば、解析を改善することができる。さらに重要なことに、Wの選択により直前のウィンドウにも属しているこのウィンドウの初期フレームに対して使用される符号化パラメータを、新たに生成された統計値に基づいてさらに洗練/調整することができる。これにより、基本的に、例えばシーケンス全体またはM個の隣接するウィンドウを処理した後など、多数の繰返し/パスを用いた場合に、より速く最適な解に収束させることができる。この時間的ウィンドウは、エンコーダの能力または要件に応じてできる限り大きくすることも小さくすることもでき、異なるウィンドウ・サイズ(WおよびWより大きくても小さくてもよい)でこの方式を反復することもできることは明らかである。 Referring to FIG. 1, the entire window-based two-pass coding architecture is indicated by reference numeral 100. The size of the processing / analysis window is W p pieces worth of pictures, the size of the overlap allowed between two adjacent groups is W o pieces worth of pictures. Processing the first window yields some initial statistics that can be used to determine a pre-set of coding characteristics for all frames in this window. More specifically, when using the 2-pass scheme, all frames that do not belong to the next window can be immediately encoded based on the generated parameters. However, this information can be used directly for processing / analysis of this next window. For example, these parameters can be used as an initial seed during the processing of this window, and the analysis can be improved given that there is a high temporal correlation in most sequences. More importantly, the coding parameters used for the initial frame of the window which belongs to the previous window by selecting the W o, further refine / adjusted based on the newly generated statistics be able to. This basically allows faster convergence to the optimal solution when multiple iterations / passes are used, for example after processing the entire sequence or M adjacent windows. This temporal window can be as large or small as possible depending on the encoder's capabilities or requirements, and this scheme is repeated with different window sizes (which can be larger or smaller than W o and W p ). Obviously you can do that too.

本願発明者等のマルチパス方式の事前解析ステップでは、数多くの異なる基準を使用することができる。これらの基準は、エンコーダ・アーキテクチャの複雑性の制約によって決めることができ、単純な時空間的方法(エッジ検出、テクスチャ解析メトリクス、および絶対画像差などを含むがこれらに限定されない。)から、より複雑なストラテジ(離散的コサイン変換(DCT)解析、最初のパスのイントラ符号化、動き推定/動き補償、および完全符号化などを含むがこれらに限定されない。)まで考慮することができる。解析および/または重複するウィンドウを増加または減少させることによって、待ち時間も調節することができる。   A number of different criteria can be used in the multipath pre-analysis step of the inventors. These criteria can be determined by the complexity constraints of the encoder architecture, and from simple spatio-temporal methods (including but not limited to edge detection, texture analysis metrics, and absolute image differences). Even complex strategies can be considered, including but not limited to discrete cosine transform (DCT) analysis, first pass intra coding, motion estimation / compensation, and full coding. Latency can also be adjusted by increasing or decreasing the analysis and / or overlapping windows.

このようなシステムの例として、この解析中に、以下の基準を計算することができる。   As an example of such a system, the following criteria can be calculated during this analysis:

ウィンドウW内の全てのピクチャkに対して、以下を計算する。 For all picture k in the window W p, calculates the following.

(i)位置(i,j)の各マクロブロックに対して、平均値MBmean(k,i,j)を次のように計算する。   (I) The average value MBmean (k, i, j) is calculated as follows for each macroblock at the position (i, j).

Figure 2008503919
Figure 2008503919

(ii)二乗平均値MBsqmean(k,i,j)を次のように計算する。   (Ii) The root mean square value MBsqmean (k, i, j) is calculated as follows.

Figure 2008503919
Figure 2008503919

(iii)分散値MBvariance(k,i,j)を次のように計算する。   (Iii) The variance value MBvariance (k, i, j) is calculated as follows.

MBvariance(k,i,j)=MBsqmean(k,i,j)−(MBmean(k,i,j)) MBvariance (k, i, j) = MBsqmean (k, i, j) − (MBmean (k, i, j)) 2

(iv)ピクチャ全体に対して、平均マクロブロック平均値AMMを次のように計算する。 (Iv) The average macroblock average value AMM k is calculated for the entire picture as follows.

Figure 2008503919
Figure 2008503919

(v)平均マクロブロック分散AMVを次のように計算する。 (V) Calculate the average macroblock variance AMV k as follows:

Figure 2008503919
Figure 2008503919

(vi)ピクチャ分散PVを次のように計算する。 (Vi) Calculate the picture variance PV k as follows:

Figure 2008503919
ここで、c[x,y]は位置(x,y)におけるピクセル値に対応し、PMBおよびPMBはそれぞれマクロブロックを単位とするピクチャの幅および高さであり、BおよびBは現在のピクチャ中の各マクロブロックの幅および高さである(通常はB=B=16)。
Figure 2008503919
Here, c [x, y] corresponds to the pixel value at the position (x, y), PMB W and PMB H are the width and height of the picture in units of macroblocks, and B W and B H Is the width and height of each macroblock in the current picture (usually B W = B H = 16).

さらに、ピクチャm(例えばm=k+1)に対する以下の時間的特性も、以下のように計算する。   Further, the following temporal characteristics for the picture m (for example, m = k + 1) are also calculated as follows.

(I)平均絶対ピクチャ差MAPDk,mを次のように計算する。 (I) The average absolute picture difference MAPD k, m is calculated as follows.

Figure 2008503919
Figure 2008503919

(II)平均絶対重み付きピクチャ差MAWPDk,mを次のように計算する。 (II) The average absolute weighted picture difference MAWPD k, m is calculated as follows.

Figure 2008503919
Figure 2008503919

(III)平均絶対オフセット・ピクチャ差MAWPDk,mを次のように計算する。 (III) The average absolute offset / picture difference MAWPD k, m is calculated as follows.

Figure 2008503919
Figure 2008503919

(IV)二乗平均ピクチャ誤差MSPEk,mを次のように計算する。 (IV) The root mean square picture error MSPE k, m is calculated as follows.

Figure 2008503919
Figure 2008503919

(V)絶対ピクチャ分散差APVDk,mを次のように計算する。 (V) The absolute picture variance difference APVD k, m is calculated as follows.

APVDk,m=|PV−PVAPVD k, m = | PV k -PV m |

計算可能なその他の時空間的特性は、ヒストグラムの絶対差、絶対差のヒストグラム、kとMの間のχメトリクス、任意(または複数)のエッジ演算子(キャニー・エッジ演算子、ソーベル・エッジ演算子、またはプレウィット・エッジ演算子を含むがこれらに限定されない。)を用いたkのエッジ、またはシーケンスのインタレース特性を検出するためのフィールド・ベースのメトリクスである。有用である可能性があり、上記から推測可能な他の2つの統計情報は、現在のピクチャの最も近い過去の符号化されたイントラ・ピクチャからの距離(last_idistance)、および現在のピクチャの最も近い将来の符号化されたイントラ・ピクチャからの距離(next_idistance)である。これらは例えばピクチャ番号、符号化順序、またはピクチャ・オーダ・カウント(poc)で測定される。これらの統計値は、シーン変更/ショット検出器および/またはデフォルトGOP(group of pictures)構造を考慮することによって改善することができる。時間的特性は、(例えば本発明をマルチパス態様に適用した場合には)元の画像または再構成された画像を用いて計算することができ、これらのメトリクスの計算では動き推定/動き補償を考慮することもできる。 Other spatio-temporal properties that can be calculated are: absolute difference in histogram, histogram of absolute difference, χ 2 metric between k and M, arbitrary (or multiple) edge operators (canny edge operator, Sobel edge, Field-based metrics for detecting interlaced properties of k edges, or sequences, including but not limited to operators, or pre-wit edge operators). Two other statistics that may be useful and can be inferred from the above are the distance from the closest past encoded intra picture of the current picture (last_idistance k ), and the most of the current picture The distance (next_idistance k ) from the coded intra picture in the near future. These are measured, for example, by picture number, coding order, or picture order count (poc). These statistics can be improved by considering a scene change / shot detector and / or a default GOP (group of pictures) structure. Temporal characteristics can be calculated using the original image or the reconstructed image (e.g. when the invention is applied to a multipath aspect), and these metrics are calculated using motion estimation / compensation. It can also be considered.

上記のメトリクスに基づいて、エンコーダは、符号化プロセスに関係する特定のピクチャ、マクロブロックまたはサブブロックのパラメータを修正することを決定することができる。これらは、量子化値(QP)、係数デッド・ゾーン処理/しきい値処理、マクロブロック符号化とフレーム間およびフィールド間のピクチャ・レベル決定のラグランジュ値、デブロッキング・フィルタ・パラメータ、符号化および参照ピクチャの順序付け、シーン/ショット(フェード/ディゾルブ/ワイプ/フラッシュなどがあるがこれらに限定されない)検出、GOP構造などのパラメータを含む。   Based on the above metrics, the encoder can decide to modify the parameters of a particular picture, macroblock or subblock related to the encoding process. These include quantized values (QP), coefficient dead zone processing / threshold processing, macroblock encoding and Lagrangian values for picture level determination between frames and fields, deblocking filter parameters, encoding and This includes parameters such as reference picture ordering, scene / shot (including but not limited to fade / dissolve / wipe / flash) detection, GOP structure and the like.

本発明の例示的な一実施形態では、上記パラメータは、以下のように、スライス・タイプcur_slice_typeのピクチャkを符号化するときにピクチャ量子化値(QP)を適合させるものと考える。この実施形態では、distancek,k+1は、ピクチャ数を単位とした隣接する2つのピクチャの間の距離と考える。
if (next_idistance>3&&cur_slice_type==I_Slice)

if(PV<1&&MAPDk,k+1<1&&last_idistance>5distancek,k+1
QP=QP−4
else if(MAPDk,k+1<3&&(k==0||last_idistance>5distancek,k+1))
QP=QP−3
else if(MAPDk,k+1<10)
QP=QP−2
else if(MAPDk,k+1<15)
QP=QP−1

else if(AMV>10&&AMV<60)

if(PV<500&&next_idistance>3distancek,k+1

if(MAPDk,k+1<10&&AMV<35&&last_idistance>2distancek,k+1
QP=QP−2
else
QP=QP−1

else if(PV<1500&&next_idistance>0)

if(MAPDk,k+1<25)
QP=QP−1


else if(MAPDk,k+1==0&&next_idistance>3distancek,k+1&&last_idistance>4distancek,k+1
QP=QP−2
else(((MAPDk,k+1<2&&next_idistance>3distancek,k+1&&last_idistance>2distancek,k+1
||last_idistance>30)&&next_idistance>5)

if(MAPDk,k+1<1)
QP=QP−3
else if(MAPDk,k+1<4)
QP=QP−2
else if(MAPDk,k+1<10)
QP=QP−1
In an exemplary embodiment of the invention, the above parameters are considered to adapt the picture quantization value (QP) when encoding a picture k of slice type cur_slice_type k as follows: In this embodiment, distance k, k + 1 is considered as the distance between two adjacent pictures in units of pictures.
if (next_idistance k > 3 && cur_slice_type k == I_Slice)
{
if (PV k <1 && MAPD k, k + 1 <1 && last_idistance k > 5 * distance k, k + 1 )
QP k = QP k −4
else if (MAPD k, k + 1 <3 && (k == 0 || last_idstance k > 5 * distance k, k + 1 ))
QP k = QP k −3
else if (MAPD k, k + 1 <10)
QP k = QP k −2
else if (MAPD k, k + 1 <15)
QP k = QP k −1
}
else if (AMV k > 10 && AMV k <60)
{
if (PV k <500 && next_idistance k > 3 * distance k, k + 1 )
{
if (MAPD k, k + 1 <10 && AMV k <35 && last_idistance k > 2 * distance k, k + 1 )
QP k = QP k −2
else
QP k = QP k −1
}
else if (PV k <1500 && next_idistance k > 0)
{
if (MAPD k, k + 1 <25)
QP k = QP k −1
}
}
else if (MAPD k, k + 1 == 0 && next_idistance k > 3 * distance k, k + 1 && last_idistance k > 4 * distance k, k + 1 )
QP k = QP k −2
else (((MAPD k, k + 1 <2 && next_idistance k > 3 * distance k, k + 1 && last_idistance k > 2 * distance k, k + 1 )
|| last_idistance k > 30) && next_idistance k > 5)
{
if (MAPD k, k + 1 <1)
QP k = QP k −3
else if (MAPD k, k + 1 <4)
QP k = QP k −2
else if (MAPD k, k + 1 <10)
QP k = QP k −1
}

上記の実施形態では、直前または近い過去のピクチャが上記の規則により既にそのQPを更新しているかどうかは考慮していない。従って、必要以上にQP値を更新することになる可能性もあり、これはレート−歪み(RD)性能の点で望ましくないことがある。このために、パラメータlast_idistanceを更新して、ピクチャ・タイプにかかわらず最後にQPを調節されたピクチャの値と等しくなるようにする。 In the above embodiment, it is not considered whether the previous or near past picture has already updated its QP according to the above rules. Therefore, it is possible to update the QP value more than necessary, which may be undesirable in terms of rate-distortion (RD) performance. For this purpose, the parameter last_idistance k is updated so that it is equal to the value of the last adjusted QP regardless of the picture type.

同様に、マクロブロック/ブロックの分散、平均およびエッジ統計値を使用して、局所的な符号化パラメータを決定することができる。例えば、位置(i,j)にあるマクロブロックのラグランジュのλを選択するには、以下の規則を考慮すればよい。
if(cur_slice_type!=B_Slice)

if(contains_edges(k,i,j))
Similarly, macroblock / block variance, average and edge statistics can be used to determine local coding parameters. For example, in order to select the Lagrange λ of the macroblock at the position (i, j), the following rule may be considered.
if (cur_slice_type k ! = B_Slice)
{
if (contains_edges (k, i, j))

Figure 2008503919

else if(cur_slice_type==I_Slice)

if(MBvariance(k,i,j)<15||MBvariance(k,i,j)>60)
Figure 2008503919

else if (cur_slice_type k == I_Slice)
{
if (MBvariance (k, i, j) <15 || MBvariance (k, i, j)> 60)

Figure 2008503919

else if(MBvariance(k,i,j)>=15&&MBvariance(k,i,j)<=40)
Figure 2008503919

else if (MBvariance (k, i, j)> = 15 && MBvariance (k, i, j) <= 40)

Figure 2008503919

else
Figure 2008503919

else

Figure 2008503919

else//cur_slice_type==P_Slice

if(MBvariance(k,i,j)<15||MBvariance(k,i,j)>60)
Figure 2008503919
}
else / cur_slice_type k == P_Slice
{
if (MBvariance (k, i, j) <15 || MBvariance (k, i, j)> 60)

Figure 2008503919

else if(MBvariance(k,i,j)>=15&&MBvariance(k,i,j)<=40)
Figure 2008503919

else if (MBvariance (k, i, j)> = 15 && MBvariance (k, i, j) <= 40)

Figure 2008503919

else
Figure 2008503919

else

Figure 2008503919



else

bscale=max(2.00,min(4.00,(QP/6.0)));
if(contains_edges(k,i,j))
Figure 2008503919

}
}
else
{
bscale = max (2.00, min (4.00, (QP / 6.0)));
if (contains_edges (k, i, j))

Figure 2008503919

else

if(MBvariance(k,i,j)<15||MBvariance(k,i,j)>60)
Figure 2008503919

else
{
if (MBvariance (k, i, j) <15 || MBvariance (k, i, j)> 60)

Figure 2008503919

else if(MBvariance(k,i,j)>=15&&MBvariance(k,i,j)<=40)
Figure 2008503919

else if (MBvariance (k, i, j)> = 15 && MBvariance (k, i, j) <= 40)

Figure 2008503919

else
Figure 2008503919

else

Figure 2008503919

if(nal_reference_idc==1)
λ=0.80×λ
Figure 2008503919
}
if (nal_reference_idc == 1)
λ = 0.80 × λ
}

残りの符号化に使用される量子化値または係数しきい値処理の選択でも、同様の決定を行うことができる。具体的には、H.264での係数Wの量子化は、以下のように実行される。
Z=int({|W|+f×(1<<q_bits)}>>qbits)・sgn(W)
ここで、Zは最終的な量子化値であり、q_bitsは現在のマクロブロックの量子化器QPに基づく。f×(1<<q_bits)の項は、この量子化プロセスの丸めを行う項として機能し、1/2×(1<<q_bits)であると「最適」である。
Similar decisions can be made in selecting the quantization value or coefficient thresholding used for the remaining encodings. Specifically, H.C. The quantization of the coefficient W at H.264 is performed as follows.
Z = int ({| W | + f × (1 << q_bits)} >> qbits) · sgn (W)
Here, Z is the final quantized value, and q_bits is based on the quantizer QP of the current macroblock. The term of f × (1 << q_bits) functions as a term for rounding the quantization process, and is “optimal” when ½ × (1 << q_bits).

次に図2を参照すると、変換および量子化を行う間のデッド・ゾーン処理の影響の全体を参照番号200で示してある。図2では、ゼロ付近の区間をデッド・ゾーンと呼ぶ。デッド・ゾーン量子化器は、図2に示すように、ゼロビン幅(zero bin−width)(2s−2f)およびアウトビン幅(outbin width)(s)という2つのパラメータで特徴付けられる。fによるデッド・ゾーンの最適化は、良好なレート−歪み性能を得るための効率的な方法として使用されることが多い。しかし、このプロセスの間にデッド・ゾーンを導入する(すなわちfの項を減少させる。)ことにより、通常は、品質に対する影響を低く抑えながらさらにビットレートを低下させることができることは周知である。これは、解像度の高い素材の細部(およびフィルム・グレイン情報)を含まない解像度の低いコンテンツの場合に特に当てはまる。f=1/2を用いてもよいが、この値にすると、ビットレートの増加が大きくなり、レート−歪み評価の点で性能が低下する可能性もある。   Referring now to FIG. 2, the overall effect of dead zone processing during transformation and quantization is indicated by reference numeral 200. In FIG. 2, a section near zero is called a dead zone. The dead zone quantizer is characterized by two parameters, zero bin-width (2s-2f) and outbin width (s), as shown in FIG. Dead zone optimization by f is often used as an efficient way to obtain good rate-distortion performance. However, it is well known that by introducing a dead zone during this process (ie, reducing the term of f), it is usually possible to further reduce the bit rate while keeping the quality impact low. This is especially true for low resolution content that does not include high resolution material details (and film grain information). Although f = 1/2 may be used, if this value is used, the increase in the bit rate becomes large, and the performance may be lowered in terms of rate-distortion evaluation.

様々な周波数が他のものよりも重要であることを考慮して、上記に代わる一つの手法では、性能を向上させるためにこの観察を考慮に入れることになる。全ての変換係数に対して一定のfの値を使用する代わりに、特に各デッド・ゾーンパラメータが周波数位置に基づいて選択される行列手法では、様々な値を考慮する。従って、この場合にはZは次のように計算することができる。
Z=int({|W|+f(i,j)×(1<<q_bits)}>>qbits)・sgn(W)
ここで、iおよびjは、ブロック変換係数内の現在の列または行に対応する。アレイfは、スライスまたはマクロブロックのタイプ、および現在のブロックのテクスチャ特性(分散またはエッジ情報)によって決めることができる。例えば、あるブロックが複数のエッジを含む、またはその分散特性が低い場合には、デッド・ゾーン処理プロセスによるアーチファクトがより目に見えやすくなるので、それらをそれ以上取り込まないようにすることが重要である。一方、空間アクティビティの高いブロックはより多くのアーチファクトをマスクすることができ、品質に有意な影響を及ぼすことなくデッド・ゾーンを増大させることができる。デッド・ゾーンは、現在のブロックが将来のピクチャのブロックに対して有用な情報を提供するかどうかに応じて(すなわち現在のブロック内の任意のピクセルがその他のピクセルの予測に使用されるか使用されないかに応じて)変化させることもできる。
Considering that various frequencies are more important than others, one alternative approach would take this observation into account to improve performance. Instead of using a constant f value for all transform coefficients, various values are taken into account, especially in the matrix approach where each dead zone parameter is selected based on frequency location. Therefore, in this case, Z can be calculated as follows.
Z = int ({| W | + f (i, j) × (1 << q_bits)} >> qbits) · sgn (W)
Here, i and j correspond to the current column or row in the block transform coefficient. The array f can be determined by the type of slice or macroblock and the texture characteristics (distribution or edge information) of the current block. For example, if a block contains multiple edges or has low dispersion characteristics, artifacts from the dead zone processing process are more visible, so it is important not to capture them further. is there. On the other hand, blocks with high spatial activity can mask more artifacts and increase the dead zone without significantly affecting quality. The dead zone depends on whether the current block provides useful information for future blocks of the picture (i.e. whether any pixels in the current block are used to predict other pixels) (Depending on what is not done).

例えば、4×4変換を用いる場合には、以下のデッド・ゾーン処理行列を使用することができる。
if(cur_slice_type==I_Slice)

if(MBvariance(k,i,j)<15||MBvariance(k,i,j)>60)
For example, when using a 4 × 4 transform, the following dead zone processing matrix can be used.
if (cur_slice_type k == I_Slice)
{
if (MBvariance (k, i, j) <15 || MBvariance (k, i, j)> 60)

Figure 2008503919

else if(MBvariance(k,i,j)>=15&&MBvariance(k,i,j)<=40||contains_edges(k,i,j))
Figure 2008503919

else if (MBvariance (k, i, j)> = 15 && MBvariance (k, i, j) <= 40 || contains_edges (k, i, j))

Figure 2008503919

else
Figure 2008503919

else

Figure 2008503919

else if(cur_slice_type==P_Slice)

if(MBvariance(k,i,j)<15||MBvariance(k,i,j)>60)
Figure 2008503919
}
else if (cur_slice_type k == P_Slice)
{
if (MBvariance (k, i, j) <15 || MBvariance (k, i, j)> 60)

Figure 2008503919

else if(MBvariance(k,i,j)>=15&&MBvariance(k,i,j)<=40||contains_edges(k,i,j))
Figure 2008503919

else if (MBvariance (k, i, j)> = 15 && MBvariance (k, i, j) <= 40 || contains_edges (k, i, j))

Figure 2008503919

else
Figure 2008503919

else

Figure 2008503919

else//B_slices
Figure 2008503919
}
else / B_slices
{

Figure 2008503919
Figure 2008503919
}

ある条件下では、エンコーダが将来のフレームを用いた時間的解析を実行することが可能になることもある。この場合には、以前に符号化されたピクチャのみを考慮して、将来のピクチャが同様の時間的特性を有するものと仮定することによって時間的解析を実行することができる。例えば、現在のピクチャが高い類似性を有する(例えばMAPDk,k−1が小さい)場合には、次に符号化するピクチャとの類似性(MAPDk,k+1)も小さいと仮定する。従って、全ての指標(k、k+1)を(k,k−1)で置き換えて、既に利用可能な情報に基づいて符号化パラメータの適応化を行うことができる。 Under certain conditions, the encoder may be able to perform temporal analysis using future frames. In this case, temporal analysis can be performed by considering only previously coded pictures and assuming that future pictures have similar temporal characteristics. For example, when the current picture has a high similarity (for example, MAPD k, k−1 is small), it is assumed that the similarity (MAPD k, k + 1 ) with the next picture to be encoded is also small. Therefore, all the indices (k, k + 1) can be replaced with (k, k-1), and coding parameters can be adapted based on already available information.

次に図3を参照すると、ビデオ・エンコーダの全体を参照番号300で示してある。ビデオ・エンコーダ300の入力は、事前解析ブロック310の入力と信号通信で接続されている。事前解析ブロック310は、互いに信号通信で接続された複数のフレーム遅延312を含む。これら複数のフレーム遅延312はそれぞれ縦に直列に接続され、また並列信号経路によって並列にも接続されている。この並列信号経路は、時間的解析器315の入力にも信号通信で接続されている。エンコーダ300の入力から最も遠く離れた、直列に接続された最後のフレーム遅延312の出力は、空間的解析器320の入力、第1の加算ジャンクション325の反転入力、動き補償器375の第1の入力、および動き推定/モード決定ブロック370の第1の入力に信号通信で接続される。第1の加算ジャンクション325の出力は、変換器330の入力に信号通信で接続される。変換器330の出力は、量子化器335の第1の入力に信号通信で接続される。量子化器335の出力は、可変長コーダ340の第1の入力および逆量子化器345の入力に信号通信で接続される。可変長コーダ340の出力は、ビデオ・エンコーダ300の外部で使用可能な出力である。逆量子化器345の出力は、逆変換器350の入力に信号通信で接続される。逆変換器350の出力は、第2の加算ジャンクション355の非反転の第1の入力に信号通信で接続される。第2の加算ジャンクション355の出力は、ループ・フィルタ360の第1の入力に信号通信で接続される。ループ・フィルタ360の出力は、ピクチャ参照記憶装置365の第1の入力に信号通信で接続される。ピクチャ参照記憶装置365の出力は、動き推定/モード決定ブロック370の第2の入力、および動き補償器375の第2の入力に信号通信で接続される。動き推定/モード決定ブロック370の第1の出力は、可変長コーダ340の第2の入力に信号通信で接続される。動き推定/モード決定ブロック370の第2の出力は、動き補償器375の第3の入力に信号通信で接続される。動き補償器375の出力は、第1の加算ジャンクション325の非反転入力、および第2の加算ジャンクション355の非反転の第2の入力に信号通信で接続される。空間的解析器320の第1の出力は、量子化器335の第2の入力に信号通信で接続される。空間的解析器320の第2の出力は、ループ・フィルタ360の第2の入力、動き推定/モード決定ブロック370の第3の入力、および第1の加算ジャンクション325の非反転入力に信号通信で接続される。時間的解析器315の第1の出力は、量子化器335の第2の入力に信号通信で接続される。時間的解析器315の第2の出力は、動き推定/モード決定ブロック370の第4の入力に信号通信で接続される。時間的解析器315の第3の出力は、ループ・フィルタ360の第3の入力、およびピクチャ参照記憶装置365の第2の入力に信号通信で接続される。   Referring now to FIG. 3, the entire video encoder is indicated by reference numeral 300. The input of the video encoder 300 is connected to the input of the pre-analysis block 310 by signal communication. The pre-analysis block 310 includes a plurality of frame delays 312 connected in signal communication with each other. The plurality of frame delays 312 are connected in series vertically and are also connected in parallel by a parallel signal path. This parallel signal path is also connected to the input of the temporal analyzer 315 by signal communication. The output of the last serially connected frame delay 312 farthest from the input of the encoder 300 is the input of the spatial analyzer 320, the inverting input of the first summing junction 325, the first of the motion compensator 375. An input and a first input of motion estimation / mode decision block 370 are connected in signal communication. The output of the first summing junction 325 is connected to the input of the converter 330 by signal communication. The output of the converter 330 is connected in signal communication to the first input of the quantizer 335. The output of the quantizer 335 is connected in signal communication to the first input of the variable length coder 340 and the input of the inverse quantizer 345. The output of the variable length coder 340 is an output that can be used outside the video encoder 300. The output of the inverse quantizer 345 is connected to the input of the inverse transformer 350 by signal communication. The output of the inverse converter 350 is connected in signal communication to the non-inverting first input of the second summing junction 355. The output of the second summing junction 355 is connected in signal communication to the first input of the loop filter 360. The output of the loop filter 360 is connected in signal communication to a first input of the picture reference storage device 365. The output of the picture reference store 365 is connected in signal communication to a second input of the motion estimation / mode determination block 370 and a second input of the motion compensator 375. A first output of motion estimation / mode decision block 370 is connected in signal communication to a second input of variable length coder 340. A second output of motion estimation / mode decision block 370 is connected in signal communication to a third input of motion compensator 375. The output of the motion compensator 375 is connected in signal communication to the non-inverting input of the first summing junction 325 and the non-inverting second input of the second summing junction 355. The first output of the spatial analyzer 320 is connected in signal communication to the second input of the quantizer 335. The second output of the spatial analyzer 320 is in signal communication with the second input of the loop filter 360, the third input of the motion estimation / mode decision block 370, and the non-inverting input of the first summing junction 325. Connected. A first output of temporal analyzer 315 is connected in signal communication to a second input of quantizer 335. A second output of temporal analyzer 315 is connected in signal communication to a fourth input of motion estimation / mode determination block 370. A third output of temporal analyzer 315 is connected in signal communication with a third input of loop filter 360 and a second input of picture reference store 365.

ピクチャ群は、時間的解析ステップの間に考慮される。この時間的解析ステップでは、スライス・タイプ決定、GOP構造、重み付きパラメータ(動き推定/モード決定ブロック370による)、量子化値およびデッド・ゾーン処理(量子化器335による)、参照の順序およびハンドリング(ピクチャ参照記憶装置365)、ピクチャ符号化の順序付け、フレーム/フィールド・ピクチャ・レベル適応化決定、ならびにデブロッキング・パラメータ(ループ・フィルタ360)を含むいくつかのパラメータを決定する。同様に、各符号化フレームに対して空間的解析を行う。この空間的解析も同様に、量子化およびデッド・ゾーン処理(量子化器335)、ラグランジュ・パラメータおよびスライス・タイプ決定(動き推定/モード決定ブロック370)、インター/イントラ・モード決定、フレーム/フィールド・ピクチャ・レベルおよびマクロブロック・レベル適応化決定、ならびにデブロッキング(ループ・フィルタ360)に影響を及ぼす可能性がある。   The pictures are considered during the temporal analysis step. This temporal analysis step includes slice type determination, GOP structure, weighted parameters (by motion estimation / mode determination block 370), quantized values and dead zone processing (by quantizer 335), reference order and handling. Several parameters are determined, including (picture reference store 365), picture coding ordering, frame / field picture level adaptation decisions, and deblocking parameters (loop filter 360). Similarly, a spatial analysis is performed on each encoded frame. This spatial analysis is similarly quantized and dead zone processed (quantizer 335), Lagrange parameter and slice type determination (motion estimation / mode determination block 370), inter / intra mode determination, frame / field. Can affect picture level and macroblock level adaptation decisions, as well as deblocking (loop filter 360).

次に図4を参照すると、ビデオ信号データを符号化する例示的なプロセスの全体を参照番号400で示してある。このプロセスでは、反復するたびに必要な統計値を収集および更新しながら、同一のビットストリームを複数回解析または符号化することができる。これらの統計値は、後続のパスのそれぞれで、ビデオ特性またはユーザ要件を所与としてエンコーダのパラメータを適応させることによって符号化の性能を向上させるために使用される。具体的には、k個のフレーム(すなわち記憶されていないピクチャは除く。)は、L個のパス(本明細書ではL回の「繰返し」および「反復」とも呼ぶ)およびサイズ(N,M)のウィンドウで符号化されることになる。ここで、Nはウィンドウ内のフレームの総数、Mは隣接するウィンドウ間で重複するフレームの数である。符号化されるフレームは変数frmを用いて指標が付けられ、ウィンドウ内の現在の位置は変数windexを用いて指標が付けられる。 With reference now to FIG. 4, an exemplary process for encoding video signal data is indicated generally by the reference numeral 400. In this process, the same bitstream can be parsed or encoded multiple times while collecting and updating the necessary statistics for each iteration. These statistics are used in each subsequent pass to improve the encoding performance by adapting the encoder parameters given the video characteristics or user requirements. Specifically, k frames (ie, excluding unstored pictures) have L paths (also referred to herein as L “repeats” and “repeats”) and sizes (N, M ) Window. Here, N is the total number of frames in the window, and M is the number of frames that overlap between adjacent windows. The frame to be encoded is indexed using the variable frm and the current position in the window is indexed using the variable w index .

このプロセスは、制御を機能ブロック410に渡す開始ブロック405を含む。機能ブロック410では、シーケンス・サイズをkに設定し、繰返し回数をLに設定し、変数iをゼロ(0)に設定し、制御を機能ブロック415に渡す。機能ブロック415では、ウィンドウ・サイズをNに設定し、重複サイズをMに設定し、変数frmをゼロ(0)に設定し、制御を機能ブロック420に渡す。機能ブロック420では、変数windexをゼロ(0)に設定し、制御を機能ブロック425に渡す。従って、各符号化パスごとにウィンドウ・パラメータが初期化されることが理解されるであろう。これにより、様々なウィンドウ・サイズを使用すること、または以前の解析ステップに基づいて様々なウィンドウ・サイズの適応化を行うことも可能になる(例えばシーン変更が検出された場合には、それに応じて完全なシーンのみを含むようにNおよびMを調整することができる。)。 The process includes a start block 405 that passes control to a function block 410. In function block 410, the sequence size is set to k, the number of iterations is set to L, the variable i is set to zero (0), and control is passed to function block 415. In function block 415, the window size is set to N, the overlap size is set to M, the variable frm is set to zero (0), and control is passed to function block 420. In function block 420, the variable w index is set to zero (0) and control is passed to function block 425. Thus, it will be appreciated that the window parameters are initialized for each encoding pass. This also makes it possible to use different window sizes or to adapt different window sizes based on previous analysis steps (for example, if a scene change is detected, And N and M can be adjusted to include only complete scenes.)

機能ブロック425では、ウィンドウ内のN個全てのフレームを考慮しながら、処理対象の各ウィンドウの時間的解析を実行し、時間的統計値(tstati,frm…frm+N−1)を生成し、以前のパスまたは符号化ステップの統計値を現在の統計値を用いて最適に適応させ、または洗練する。機能ブロック425では、その後、制御を機能ブロック430に渡す。機能ブロック430では、windex<N−Mの条件が満たされなくなるまで指標frm(現在のウィンドウ内のwindex)を有するフレームについて空間的解析を実行し、制御を機能ブロック435に渡す。機能ブロック435では、時間的および空間的解析の結果に基づいてこれらのフレームを符号化し、複数のパスが必要な場合に必要になる可能性があるエンコーダ統計値を生成/収集し、制御を機能ブロック440に渡す。 The function block 425 performs temporal analysis of each window to be processed while considering all N frames in the window to generate temporal statistics (tstat i, frm... Frm + N−1 ). The pass or encoding step statistics are best adapted or refined using the current statistics. In function block 425, control is then passed to function block 430. In function block 430, spatial analysis is performed on the frame with index frm (w index in the current window) until the condition of w index <N−M is no longer satisfied, and control is passed to function block 435. Function block 435 encodes these frames based on the results of temporal and spatial analysis, generates / collects encoder statistics that may be needed if multiple passes are required, and controls Pass to block 440.

機能ブロック440では、変数frmおよびwindexの値を増分し、制御を判定ブロック445に渡す。判定ブロック445では、変数frmがk未満であるかどうかを判定する。 In function block 440, the values of the variables frm and w index are incremented and control is passed to decision block 445. At decision block 445, it is determined whether the variable frm is less than k.

変数frmがk未満である場合には、windexが(N−M)未満であるかどうかを判定する判定ブロック450に制御が移る。そうでない場合には、変数frmがk以上である場合には、iがL未満であるかどうかを判定する判定ブロック455に制御が移る。 If the variable frm is less than k, control passes to a decision block 450 that determines whether w index is less than (N−M). Otherwise, if the variable frm is greater than or equal to k, control passes to a decision block 455 that determines whether i is less than L.

indexが(N−M)未満である場合には、制御は機能ブロック430に移る。そうでない場合、windexが(N−M)以上である場合には、制御は機能ブロック420に戻る。 If w index is less than (N−M), control passes to function block 430. Otherwise, if w index is equal to or greater than (N−M), control returns to function block 420.

iがL以上である場合には、制御は機能ブロック415に戻る。そうでない場合、iがL未満である場合には、制御は終了ブロック460に移る。   If i is greater than or equal to L, control returns to function block 415. Otherwise, if i is less than L, control passes to end block 460.

以下、本発明の様々な例示的な実施形態により、本発明の多くのさらなる利点/特徴のいくつかについて説明する。例えば、1つの利点/特徴は、符号化するコンテンツの重複する限られたウィンドウに基づいてビデオ解析を実行し、この情報を用いて符号化パラメータの適応化を行う符号化装置および符号化方法が提供されることである。もう1つの利点/特徴は、ビデオ解析において時空間的解析を使用することである。さらに別の利点/特徴は、ビデオ解析で事前符号化パスを考慮することである。さらに、別の利点/特徴は、ビデオ解析において時空間的解析および事前符号化パスが共に考慮されることである。また、別の利点/特徴は、ピクチャ符号化タイプ、エッジ、平均および分散の情報のうち少なくとも1つが、空間的解析、ならびにラグランジュ・パラメータ、量子化およびデッド・ゾーン処理の適応化に使用されることである。さらに別の利点/特徴は、絶対差および絶対分散を使用して、量子化パラメータの適応化を行うことである。さらに、別の利点/特徴は、実行されたビデオ解析で、以前に符号化されたピクチャのみが考慮されることである。さらに、別の利点/特徴は、実行されたビデオ解析を利用して、スライス・タイプ決定、GOPおよびピクチャ符号化の構造および順序、重み付きパラメータ、量子化値およびデッド・ゾーン処理、ラグランジュ・パラメータ、参照数、参照の順序およびハンドリング、フレーム/フィールド・ピクチャおよびマクロブロックの決定、デブロッキング・パラメータ、インター・ブロック・サイズ決定、イントラ空間予測、および直接モードを含む(ただしこれらに限定されない)いくつかの符号化パラメータのうち少なくとも1つを決定することである。また、別の利点/特徴は、以前に生成した統計値が符号化パラメータまたは解析統計値に適応するように考慮しながら、複数回反復してビデオ解析を実行することができることである。さらに、別の利点/特徴は、ウィンドウ・サイズおよび重複するウィンドウ領域が、以前に生成した解析統計値に基づいて適応化可能であることである。   In the following, some of the many further advantages / features of the present invention will be described by means of various exemplary embodiments of the present invention. For example, one advantage / feature is that an encoding apparatus and method that performs video analysis based on overlapping overlapping windows of content to be encoded and uses this information to adapt encoding parameters. Is to be provided. Another advantage / feature is the use of spatio-temporal analysis in video analysis. Yet another advantage / feature is to consider the precoding pass in video analysis. Yet another advantage / feature is that both spatio-temporal analysis and precoding passes are considered in video analysis. Another advantage / feature is that at least one of picture coding type, edge, mean and variance information is used for spatial analysis and adaptation of Lagrangian parameters, quantization and dead zone processing That is. Yet another advantage / feature is the use of absolute difference and absolute variance to perform quantization parameter adaptation. Yet another advantage / feature is that only the previously encoded pictures are considered in the performed video analysis. Furthermore, another advantage / feature is the use of the video analysis performed to determine slice type, GOP and picture coding structure and order, weighted parameters, quantized values and dead zone processing, Lagrangian parameters , Reference number, reference order and handling, frame / field picture and macroblock determination, deblocking parameters, inter block sizing, intra spatial prediction, and direct mode Determining at least one of the encoding parameters. Another advantage / feature is that video analysis can be performed in multiple iterations, taking into account previously generated statistics to adapt to encoding parameters or analysis statistics. Furthermore, another advantage / feature is that the window size and overlapping window regions can be adapted based on previously generated analysis statistics.

本発明の以上その他の特徴および利点は、当業者なら本明細書の教示に基づいて容易に確認することができる。本発明の教示は、ハードウェア、ソフトウェア、ファームウェア、特殊目的プロセッサまたはそれらの組合せの様々な形態で実施することができることを理解されたい。   These and other features and advantages of the present invention can be readily ascertained by those skilled in the art based on the teachings herein. It should be understood that the teachings of the present invention can be implemented in various forms of hardware, software, firmware, special purpose processors, or combinations thereof.

本発明の教示は、ハードウェアとソフトウェアの組合せとして実施されることがより好ましい。さらに、ソフトウェアは、プログラム記憶装置上で有形に実施されたアプリケーション・プログラムとして実施されることが好ましい。アプリケーション・プログラムは、任意の適当なアーキテクチャを有するマシンにアップロードして実行することができる。このマシンは、1つまたは複数の中央処理装置(「CPU」)、ランダム・アクセス・メモリ(「RAM」)および入出力(「I/O」)インタフェースなどのハードウェアを有するコンピュータ・プラットフォームに実装されることが好ましい。コンピュータ・プラットフォームは、オペレーティング・システムおよびマイクロ命令コードを含むこともできる。本明細書に記載の様々なプロセスおよび機能は、CPUが実行することができる、マイクロ命令コードの一部またはアプリケーション・プログラムの一部あるいはそれらの任意の組合せとすることもできる。さらに、追加のデータ記憶装置や印刷装置など、その他の様々な周辺機器をコンピュータ・プラットフォームに接続することもできる。   More preferably, the teachings of the present invention are implemented as a combination of hardware and software. Furthermore, the software is preferably implemented as an application program tangibly implemented on the program storage device. The application program can be uploaded and executed on a machine having any suitable architecture. The machine is implemented on a computer platform having hardware such as one or more central processing units (“CPU”), random access memory (“RAM”) and input / output (“I / O”) interfaces. It is preferred that The computer platform may also include an operating system and microinstruction code. The various processes and functions described herein may be part of the microinstruction code or part of the application program or any combination thereof that can be executed by the CPU. In addition, various other peripheral devices may be connected to the computer platform such as an additional data storage device and a printing device.

さらに、添付の図面に示すシステム構成要素および方法の一部はソフトウェアで実施することが好ましく、またシステム構成要素間またはプロセス機能ブロック間の実際の接続形態は、本発明を実施する方法によって変わることがあることを理解されたい。本明細書の教示があれば、当業者なら、上記の、またそれに類する本発明の実施態様または構成を思いつくことができるであろう。   Furthermore, some of the system components and methods shown in the accompanying drawings are preferably implemented in software, and the actual connections between system components or process functional blocks will vary depending on the method of implementing the invention. Please understand that there is. Given the teachings herein, one of ordinary skill in the related art will be able to contemplate these and similar embodiments or configurations of the present invention.

本明細書では添付の図面を参照しながら例示的な実施形態について説明したが、本発明はこうした具体的な実施形態に限定されるものではなく、当業者なら、本発明の趣旨または範囲を逸脱することなく様々な変更および修正を加えることができることを理解されたい。これらの変更および修正は全て、添付の特許請求の範囲に記載の本発明の範囲に含まれるものとする。   Although exemplary embodiments have been described herein with reference to the accompanying drawings, the present invention is not limited to these specific embodiments, and those skilled in the art will depart from the spirit or scope of the present invention. It should be understood that various changes and modifications can be made without doing so. All such changes and modifications are intended to be included within the scope of the present invention as set forth in the appended claims.

本発明の原理による例示的なウィンドウ・ベース・2パス符号化アーキテクチャを示すブロック図である。FIG. 2 is a block diagram illustrating an exemplary window-based two-pass encoding architecture according to the principles of the present invention. 本発明の原理による変換および量子化を行う間のデッド・ゾーン処理の影響をプロットした図である。FIG. 6 is a plot of the effects of dead zone processing during conversion and quantization according to the principles of the present invention. 本発明の原理によるエンコーダを示すブロック図である。1 is a block diagram illustrating an encoder according to the principles of the present invention. 本発明の原理による例示的な符号化プロセスを示す流れ図である。5 is a flow diagram illustrating an exemplary encoding process according to the principles of the present invention.

Claims (24)

複数のピクチャに対応するビデオ信号データを符号化するエンコーダであって、
前記ビデオ信号データに対応する前記複数のピクチャの少なくとも一部に関する複数の重複解析ウィンドウを用いて前記ビデオ信号データのビデオ解析を実行し、前記ビデオ解析の結果に基づいて前記ビデオ信号データの符号化パラメータの適応化を行う重複ウィンドウ解析ユニット(310)を含む、前記エンコーダ。
An encoder that encodes video signal data corresponding to a plurality of pictures,
Performing video analysis of the video signal data using a plurality of overlap analysis windows for at least some of the plurality of pictures corresponding to the video signal data, and encoding the video signal data based on a result of the video analysis The encoder comprising an overlapping window analysis unit (310) that performs parameter adaptation.
前記重複ウィンドウ解析ユニット(310)が、時空間的解析を用いて前記ビデオ信号データの前記ビデオ解析を実行する、請求項1に記載のエンコーダ。   The encoder of claim 1, wherein the overlapping window analysis unit (310) performs the video analysis of the video signal data using a spatiotemporal analysis. 前記重複ウィンドウ解析ユニット(310)が、ピクチャ符号化タイプ情報、エッジ情報、平均情報および分散情報のうちの少なくとも1つを、時空間的解析、ラグランジュ・パラメータおよび量子化パラメータの適応化、ならびにデッド・ゾーン処理のうちの少なくとも1つに使用する、請求項2に記載のエンコーダ。   The overlapping window analysis unit (310) may perform at least one of picture coding type information, edge information, average information and variance information on spatio-temporal analysis, adaptation of Lagrangian parameters and quantization parameters, and dead The encoder according to claim 2, used for at least one of zone processing. 前記重複ウィンドウ解析ユニット(310)が、絶対差および分散を用いて前記量子化パラメータの適応化を行う、請求項3に記載のエンコーダ。   The encoder according to claim 3, wherein the overlap window analysis unit (310) adapts the quantization parameter using absolute difference and variance. 前記重複ウィンドウ解析ユニット(310)が、事前符号化パスを用いて前記ビデオ信号データの前記ビデオ解析を実行する、請求項1に記載のエンコーダ。   The encoder of claim 1, wherein the overlap window analysis unit (310) performs the video analysis of the video signal data using a pre-encoding pass. 前記重複ウィンドウ解析ユニット(310)が、時空間的解析および事前符号化パスの両方を用いて前記ビデオ信号データの前記ビデオ解析を実行する、請求項1に記載のエンコーダ。   The encoder of claim 1, wherein the overlap window analysis unit (310) performs the video analysis of the video signal data using both a spatio-temporal analysis and a pre-encoding pass. 前記重複ウィンドウ解析ユニット(310)が、ピクチャ符号化タイプ情報、エッジ情報、平均情報および分散情報のうちの少なくとも1つを、時空間的解析、ラグランジュ・パラメータおよび量子化パラメータの適応化、ならびにデッド・ゾーン処理のうちの少なくとも1つに使用する、請求項6に記載のエンコーダ。   The overlapping window analysis unit (310) may perform at least one of picture coding type information, edge information, average information and variance information on spatio-temporal analysis, adaptation of Lagrangian parameters and quantization parameters, and dead The encoder according to claim 6, which is used for at least one of zone processing. 前記重複ウィンドウ解析ユニット(310)が、絶対差および分散を用いて量子化パラメータの適応化を行う、請求項7に記載のエンコーダ。   The encoder according to claim 7, wherein the overlap window analysis unit (310) performs quantization parameter adaptation using absolute difference and variance. 前記ビデオ信号データが複数のフレームを含み、前記複数のフレームがそれぞれ対応するピクチャを表し、前記重複解析ユニットが、以前に符号化されたピクチャのみを考慮するように前記ビデオ解析を実行する、請求項1に記載のエンコーダ。   The video signal data includes a plurality of frames, each of the plurality of frames representing a corresponding picture, and the duplicate analysis unit performs the video analysis so as to consider only previously encoded pictures. The encoder according to item 1. 前記符号化パラメータが、スライス・タイプ、ピクチャおよびGOPの符号化の構造および順序、重み付きパラメータ、量子化値およびデッド・ゾーン処理、ラグランジュ・パラメータ、参照数、参照の順序およびハンドリング、フレーム/フィールド・ピクチャおよびマクロブロック・パラメータ、デブロッキング・パラメータ、インター・ブロック・サイズ、イントラ空間予測、および直接モードのうち少なくとも1つを含む、請求項1に記載のエンコーダ。   The coding parameters include slice type, picture and GOP coding structure and order, weighted parameters, quantized values and dead zone processing, Lagrange parameters, reference number, reference order and handling, frame / field The encoder of claim 1, comprising at least one of picture and macroblock parameters, deblocking parameters, inter block size, intra spatial prediction, and direct mode. 前記重複ウィンドウ解析ユニット(310)が、複数回反復して前記ビデオ解析を実行し、以前に生成された解析統計値に基づいて符号化パラメータおよび解析統計値の一方の適応化を行う、請求項1に記載のエンコーダ。   The overlapping window analysis unit (310) performs the video analysis in a plurality of iterations and adapts one of the encoding parameters and analysis statistics based on previously generated analysis statistics. The encoder according to 1. 前記重複ウィンドウのそれぞれが、ピクチャP個分のウィンドウ・サイズと、それに関連する重複サイズとを有し、前記重複ウィンドウ解析ユニットが、以前に生成された解析統計値に基づいて前記ウィンドウ・サイズおよび前記重複サイズの適応化を行う、請求項1に記載のエンコーダ。   Each of the overlapping windows has a window size of P pictures and an associated overlapping size, and the overlapping window analysis unit is configured to determine the window size and the window size based on previously generated analysis statistics. The encoder according to claim 1, wherein the overlap size is adapted. 複数のピクチャに対応するビデオ信号データを符号化する方法であって、
前記ビデオ信号データに対応する前記複数のピクチャの少なくとも一部に関する複数の重複解析ウィンドウを用いて前記ビデオ信号データのビデオ解析を実行するステップ(425、430)と、
前記ビデオ解析の結果に基づいて前記ビデオ信号データの符号化パラメータの適応化を行うステップ(435)と、を含む前記方法。
A method for encoding video signal data corresponding to a plurality of pictures, comprising:
Performing video analysis of the video signal data using a plurality of overlap analysis windows for at least some of the plurality of pictures corresponding to the video signal data (425, 430);
Adapting coding parameters of the video signal data based on the result of the video analysis (435).
前記実行ステップで、時空間的解析を用いて前記ビデオ信号データの前記ビデオ解析を実行する、請求項13に記載の方法。   The method of claim 13, wherein the performing step performs the video analysis of the video signal data using spatio-temporal analysis. 前記実行ステップおよび前記適応化ステップでそれぞれ、ピクチャ符号化タイプ情報、エッジ情報、平均情報および分散情報のうちの少なくとも1つを、時空間的解析、ラグランジュ・パラメータおよび量子化パラメータの適応化、ならびにデッド・ゾーン処理のうちの少なくとも1つに使用する、請求項14に記載の方法。   In the execution step and the adaptation step, respectively, at least one of picture coding type information, edge information, average information and variance information is applied to spatiotemporal analysis, adaptation of Lagrangian parameters and quantization parameters, and The method of claim 14 for use in at least one of dead zone processing. 前記量子化パラメータの適応化が、絶対差および分散を用いて行われる、請求項15に記載の方法。   The method of claim 15, wherein the quantization parameter adaptation is performed using absolute difference and variance. 前記実行ステップで、事前符号化パスを用いて前記ビデオ信号データの前記ビデオ解析を実行する、請求項13に記載の方法。   The method of claim 13, wherein the performing step performs the video analysis of the video signal data using a pre-encoding pass. 前記実行ステップで、時空間的解析および事前符号化パスの両方を用いて前記ビデオ信号データの前記ビデオ解析を実行する、請求項13に記載の方法。   14. The method of claim 13, wherein the performing step performs the video analysis of the video signal data using both a spatiotemporal analysis and a pre-encoding pass. 前記実行ステップおよび前記適応化ステップがそれぞれ、ピクチャ符号化タイプ情報、エッジ情報、平均情報および分散情報のうちの少なくとも1つを、時空間的解析、ラグランジュ・パラメータおよび量子化パラメータの適応化、ならびにデッド・ゾーン処理のうちの少なくとも1つに使用する、請求項18に記載の方法。   The executing step and the adapting step each of at least one of picture coding type information, edge information, average information and variance information, spatio-temporal analysis, adaptation of Lagrangian parameters and quantization parameters, and The method of claim 18 for use in at least one of dead zone processing. 前記量子化パラメータの適応化が、絶対差および分散を用いて行われる、請求項19に記載の方法。   The method of claim 19, wherein the quantization parameter adaptation is performed using absolute difference and variance. 前記ビデオ信号データが複数のフレームを含み、前記複数のフレームがそれぞれ対応するピクチャを表し、前記実行ステップで、以前に符号化されたピクチャのみを考慮するように前記ビデオ解析を実行する、請求項13に記載の方法。   The video signal data includes a plurality of frames, each of the plurality of frames representing a corresponding picture, and the performing step performs the video analysis to consider only previously encoded pictures. 14. The method according to 13. 前記符号化パラメータが、スライス・タイプ、ピクチャおよびGOPの符号化の構造および順序、重み付きパラメータ、量子化値およびデッド・ゾーン処理、ラグランジュ・パラメータ、参照数、参照の順序およびハンドリング、フレーム/フィールド・ピクチャおよびマクロブロック・パラメータ、デブロッキング・パラメータ、インター・ブロック・サイズ、イントラ空間予測、および直接モードのうち少なくとも1つを含む、請求項13に記載の方法。   The coding parameters include slice type, picture and GOP coding structure and order, weighted parameters, quantized values and dead zone processing, Lagrange parameters, reference number, reference order and handling, frame / field 14. The method of claim 13, comprising at least one of picture and macroblock parameters, deblocking parameters, inter block size, intra spatial prediction, and direct mode. 前記実行ステップで、複数回反復して前記ビデオ解析を実行し、前記適応化ステップで、以前に生成された解析統計値に基づいて符号化パラメータおよび解析統計値の一方の適応化を行う、請求項13に記載の方法。   Performing the video analysis in a plurality of iterations in the execution step, and adapting one of the encoding parameters and the analysis statistics based on the previously generated analysis statistics in the adaptation step. Item 14. The method according to Item 13. 前記重複ウィンドウのそれぞれが、ウィンドウ・サイズおよびそれに関連する重複サイズを有し、前記実行ステップが、以前に生成された解析統計値に基づいて前記ウィンドウ・サイズおよび前記重複サイズの適応化を行うステップを含む、請求項13に記載の方法。   Each of the overlapping windows has a window size and an associated overlapping size, and the executing step adapts the window size and the overlapping size based on previously generated analysis statistics 14. The method of claim 13, comprising:
JP2007516535A 2004-06-18 2005-06-06 Method and apparatus for optimizing video coding Pending JP2008503919A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US58128004P 2004-06-18 2004-06-18
PCT/US2005/019772 WO2006007285A1 (en) 2004-06-18 2005-06-06 Method and apparatus for video encoding optimization

Publications (2)

Publication Number Publication Date
JP2008503919A true JP2008503919A (en) 2008-02-07
JP2008503919A5 JP2008503919A5 (en) 2008-07-10

Family

ID=34972204

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007516535A Pending JP2008503919A (en) 2004-06-18 2005-06-06 Method and apparatus for optimizing video coding

Country Status (6)

Country Link
EP (1) EP1766991A1 (en)
JP (1) JP2008503919A (en)
CN (1) CN1969558A (en)
BR (1) BRPI0512057A (en)
MY (1) MY149954A (en)
WO (1) WO2006007285A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG130962A1 (en) * 2005-09-16 2007-04-26 St Microelectronics Asia A method and system for adaptive pre-filtering for digital video signals
US8498336B2 (en) 2006-02-02 2013-07-30 Thomson Licensing Method and apparatus for adaptive weight selection for motion compensated prediction
US7885476B2 (en) 2006-12-14 2011-02-08 Sony Corporation System and method for effectively performing an adaptive encoding procedure
CN102595093A (en) 2011-01-05 2012-07-18 腾讯科技(深圳)有限公司 Video communication method for dynamically changing video code and system thereof

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001512643A (en) * 1997-02-12 2001-08-21 サーノフ コーポレイション Apparatus and method for optimizing rate control in a coding system
JP2002232882A (en) * 2001-01-31 2002-08-16 Nec Corp Moving picture encoder using a priori analysis, moving picture encoding method, and its program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6438165B2 (en) * 1998-03-09 2002-08-20 Lg Electronics Method and apparatus for advanced encoder system
FR2782879B1 (en) * 1998-08-28 2000-11-03 Thomson Multimedia Sa IMAGE COMPRESSION PROCESS

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001512643A (en) * 1997-02-12 2001-08-21 サーノフ コーポレイション Apparatus and method for optimizing rate control in a coding system
JP2002232882A (en) * 2001-01-31 2002-08-16 Nec Corp Moving picture encoder using a priori analysis, moving picture encoding method, and its program

Also Published As

Publication number Publication date
WO2006007285A1 (en) 2006-01-19
CN1969558A (en) 2007-05-23
EP1766991A1 (en) 2007-03-28
MY149954A (en) 2013-11-15
BRPI0512057A (en) 2008-02-06

Similar Documents

Publication Publication Date Title
US20070230565A1 (en) Method and Apparatus for Video Encoding Optimization
JP5400876B2 (en) Rate control model adaptation based on slice dependency for video coding
JP5074924B2 (en) Fast mode decision method and apparatus for interframe
JP5046335B2 (en) Method and apparatus for fast mode determination of B frames in a video encoder
JP5579852B2 (en) A fast technique for rate-distortion optimized quantization
JP5264747B2 (en) Efficient one-pass encoding method and apparatus in multi-pass encoder
CA2883133C (en) A video encoding method and a video encoding apparatus using the same
JP4317814B2 (en) Encoding apparatus and encoding method for moving picture information
KR20050105271A (en) Video encoding
JP2007503776A (en) Method and apparatus for minimizing the number of reference images used for inter coding
JP2011517911A (en) Rate-distortion quantization for context-adaptive variable-length coding (CAVLC)
JP2006513636A (en) Fast mode decision making for inter-frame coding
US9210435B2 (en) Video encoding method and apparatus for estimating a code amount based on bit string length and symbol occurrence frequency
CN110996102B (en) Video coding method and device for inhibiting intra-frame block respiration effect in P/B frame
WO2009133365A2 (en) Scene change detection
US9699466B2 (en) Adaptive reference/non-reference frame determination for video encoding
CN108989818B (en) Image coding parameter adjusting method and device
JP2008503919A (en) Method and apparatus for optimizing video coding
JP5649296B2 (en) Image encoding device
JP4130617B2 (en) Moving picture coding method and moving picture coding apparatus
US8265141B2 (en) System and method for open loop spatial prediction in a video encoder
KR20060085003A (en) A temporal error concealment method in the h.264/avc standard
KR101247024B1 (en) Method of motion estimation and compensation using in-loop preprocessing filtering
JP2009027762A (en) Movement compensation image encoding device and encoding method
JP5171658B2 (en) Image encoding device

Legal Events

Date Code Title Description
RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20080319

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080415

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080526

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080526

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20091019

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20091027

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101124

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110222

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110301

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110524

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111129