(57)【特許請求の範囲】
【請求項１】
ビデオ符号化方法であって、
コンピュータ機器が符号化待ちの現在の画像フレームを取得するステップと、
前記コンピュータ機器が画像グループにおける前記現在の画像フレームの位置する現在の層を取得するステップであって、前記画像グループが複数の画像フレームを含む、ステップと、
前記コンピュータ機器が前記現在の層に応じて前記現在の画像フレームに対応する現在の量子化パラメータオフセット量を取得するステップであって、前記画像グループにおける異なる層の画像フレームが異なる量子化パラメータオフセット量に対応する、ステップと、
前記コンピュータ機器が前記現在の画像フレームの参照画像フレームに対応する参照量子化パラメータを取得する第１取得ステップと、
前記コンピュータ機器が前記参照量子化パラメータと、前記現在の量子化パラメータオフセット量とに応じて、前記現在の画像フレームに対応する現在の量子化パラメータを取得する第２取得ステップと、
前記コンピュータ機器が前記現在の量子化パラメータに応じて前記現在の画像フレームを符号化するステップとを含み、
前記参照画像フレームが複数存在する場合に、前記第２取得ステップは、
前記コンピュータ機器が、前記各参照画像フレームと前記現在の画像フレームとの間のフレーム距離と負の相関を有するように算出された、前記現在の参照画像フレームに対応する重みと、前記対応する参照量子化パラメータとに応じて、前記現在の画像フレームに対応する第１の量子化パラメータを算出するステップと、
前記コンピュータ機器が前記現在の画像フレームに対応する第１の量子化パラメータと、前記現在の量子化パラメータオフセット量とに応じて、前記現在の画像フレームに対応する現在の量子化パラメータを取得するステップとを含むことを特徴とする方法。
【請求項２】
前記参照画像フレームが複数存在する場合に、前記第２取得ステップは、
前記コンピュータ機器が前記各参照画像フレームと前記現在の画像フレームとの間のフレーム距離を取得するステップ
を含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記コンピュータ機器が、前記各参照画像フレームと前記現在の画像フレームとの間のフレーム距離と負の相関を有するように算出された、前記現在の参照画像フレームに対応する重みと、前記対応する参照量子化パラメータとに応じて、前記現在の画像フレームに対応する第１の量子化パラメータを算出するステップは、
前記コンピュータ機器が現在の参照画像フレームと前記現在の画像フレームとの間のフレーム距離に応じて、前記現在の参照画像フレームに対応する前記重みを取得するステップと、
前記コンピュータ機器が前記各参照画像フレームに対応する前記重みと、対応する参照量子化パラメータとに応じて、前記現在の画像フレームに対応する第１の量子化パラメータを取得するステップとを含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記コンピュータ機器が前記現在の画像フレームの参照画像フレームに対応する参照量子化パラメータを取得する前記第１取得ステップは、
前記コンピュータ機器が前記参照画像フレームの参照フレームタイプと、前記参照画像フレームの符号化量子化パラメータとを取得するステップと、
前記コンピュータ機器が前記参照フレームタイプと、前記符号化量子化パラメータとに応じて、前記参照画像フレームに対応する参照量子化パラメータを取得する第３取得ステップとを含み、
前記現在の画像フレームが双方向予測フレームである場合に、前記第３取得ステップは、
前記コンピュータ機器が画像グループにおける前記参照画像フレームの位置する層に応じて、前記参照画像フレームに対応する参照量子化パラメータオフセット量を取得するステップと、
前記コンピュータ機器が前記符号化量子化パラメータと、前記参照画像フレームに対応する参照量子化パラメータオフセット量とに応じて、前記参照画像フレームに対応する参照量子化パラメータを取得するステップと
を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記現在の画像フレームが双方向予測フレームである場合に、前記第３取得ステップは、
前記参照フレームタイプが双方向予測フレームである場合に、前記コンピュータ機器が画像グループにおける前記参照画像フレームの位置する層を取得するステップ
を含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記コンピュータ機器が前記現在の量子化パラメータに応じて前記現在の画像フレームを符号化するステップは、
前記コンピュータ機器が前記現在の量子化パラメータに応じて、前記現在の画像フレームに対応する現在の量子化ステップサイズを取得するステップと、
前記コンピュータ機器が前記現在の量子化ステップサイズに応じて前記現在の画像フレームを符号化することで、前記現在の画像フレームに対応する現在のビットレートを取得するステップとを含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記現在の画像フレームは双方向予測フレームであり、前記方法は、
前記コンピュータ機器が予め設置された前記現在の層の画像フレームと一方向予測フレームとの間の量子化オフセットパラメータを取得するステップと、
前記コンピュータ機器が前記現在の画像フレームに対応する現在のビットレートと、前記量子化オフセットパラメータとに応じて、対応する複雑さ更新値を取得するステップと、  
前記コンピュータ機器が前記現在の画像フレームの前方画像フレームに対応する画像複雑さパラメータと、前記複雑さ更新値とに応じて、更新された画像複雑さパラメータを取得するステップとをさらに含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記方法は、
前記コンピュータ機器が前記現在の画像フレームに対応する後に符号化される後方画像フレームに対応するフレームタイプを取得するステップと、
前記コンピュータ機器が前記後方画像フレームが非双方向予測フレームである場合に、予め設置されたビットレート制御モデルと、更新された前記画像複雑さパラメータとに応じて、前記後方画像フレームに対応する量子化パラメータを取得するステップとをさらに含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記コンピュータ機器が前記現在の層に応じて前記現在の画像フレームに対応する現在の量子化パラメータオフセット量を取得するステップは、
前記コンピュータ機器が予め設置された前記現在の層の画像フレームと一方向予測フレームとの間の量子化オフセットパラメータを取得するステップと、
前記コンピュータ機器が前記量子化オフセットパラメータに応じて、前記現在の画像フレームに対応する現在の量子化パラメータオフセット量を取得するステップとを含むことを特徴とする請求項１に記載の方法。
【請求項１０】
画像フレームの層レベルと量子化パラメータオフセット量との対応関係は正の相関関係であることを特徴とする請求項１に記載の方法。
【請求項１１】
コンピュータ機器であって、メモリとプロセッサーとを含み、前記メモリにコンピュータ読み取り可能な命令が記憶されており、前記コンピュータ読み取り可能な命令が前記プロセッサーによって実行される場合に、前記プロセッサーに、請求項１〜１０の何れか一項に記載の方法を実行させることを特徴とするコンピュータ機器。
【請求項１２】
コンピュータの一つ又は複数のプロセッサーに、請求項１〜１０の何れか一項に記載の方法を実行させることを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２０１７年１１月２１日に中国専利局に出願された中国特許出願（出願番号：２０１７１１１６６１９５７、発明の名称：ビデオ符号化方法、コンピュータ機器、及び記憶媒体）による優先権を主張し、本願ではその全ての内容が援用される。
【０００２】
本出願は、ビデオ符号化の分野に関し、特に、ビデオ符号化方法、装置、コンピュータ機器、及び記憶媒体に関する。
【背景技術】
【０００３】
マルチメディアテクノロジーとネットワークテクノロジーの急速な発展と幅広い応用につれて、人々の日常生活や生産活動で大量のビデオ情報が使用されている。ビデオの伝送データ量又は記憶データ量を減らすためには、ビデオを符号化する必要がある。
【０００４】
ビデオ符号化の際に、ビデオ符号化器の量子化パラメータ(Ｑｕａｎｔｉｚａｔｉｏｎ  Ｐａｒａｍｅｔｅｒ，ＱＰ)を調節することで、画像の符号化ビットレートを調整し、ビデオ伝送帯域幅の制約の下で安定したビットレート、及び小さいビデオ遅延を確保することが可能である。現在、各画像フレームの量子化パラメータについて、設定されたビットレート制御モデルに従って、現在の画像フレームの量子化パラメータを算出する必要があり、算出の複雑さが大きく、ビデオ符号化の効率が低い。
【発明の概要】
【０００５】
本出願で提供される各種の実施例に応じて、ビデオ符号化方法、コンピュータ機器、及び記憶媒体等が提供される。
【０００６】
ビデオ符号化方法であって、前記方法は、
コンピュータ機器が符号化待ちの現在の画像フレームを取得するステップ、
前記コンピュータ機器が、画像グループにおける前記現在の画像フレームの位置する現在の層を取得するステップであって、前記画像グループが複数の画像フレームを含む、ステップと、
前記コンピュータ機器が前記現在の層に応じて前記現在の画像フレームに対応する現在の量子化パラメータオフセット量を取得するステップであって、前記画像グループにおける異なる層の画像フレームが異なる量子化パラメータオフセット量に対応する、ステップと、
前記コンピュータ機器が前記現在の画像フレームの参照画像フレームに対応する参照量子化パラメータを取得するステップと、
前記コンピュータ機器が前記参照量子化パラメータと、前記現在の量子化パラメータオフセット量とに応じて、前記現在の画像フレームに対応する現在の量子化パラメータを取得するステップと、
前記コンピュータ機器が前記現在の量子化パラメータに応じて前記現在の画像フレームを符号化するステップとを含む。
【０００７】
コンピュータ機器であって、メモリとプロセッサーとを含み、前記メモリにコンピュータ読み取り可能な命令が記憶されており、前記コンピュータ読み取り可能な命令が前記プロセッサーによって実行される場合に、前記プロセッサーに、
符号化待ちの現在の画像フレームを取得するステップと、
画像グループにおける前記現在の画像フレームの位置する現在の層を取得するステップであって、前記画像グループが複数の画像フレームを含むステップと、
前記現在の層に応じて、前記現在の画像フレームに対応する現在の量子化パラメータオフセット量を取得するステップであって、前記画像グループにおける異なる層の画像フレームが異なる量子化パラメータオフセット量に対応するステップと、
前記現在の画像フレームの参照画像フレームに対応する参照量子化パラメータを取得するステップと、
前記参照量子化パラメータと、前記現在の量子化パラメータオフセット量とに応じて、前記現在の画像フレームに対応する現在の量子化パラメータを取得するステップと、
前記現在の量子化パラメータに応じて、前記現在の画像フレームを符号化するステップとを実行させる。
【０００８】
コンピュータ読み取り可能な命令が記憶されている一つ又は複数の不揮発性記憶媒体であって、前記コンピュータ読み取り可能な命令が一つ又は複数のプロセッサーによって実行される場合に、一つ又は複数のプロセッサーに、
符号化待ちの現在の画像フレームを取得するステップと、
画像グループにおける前記現在の画像フレームの位置する現在の層を取得するステップであって、前記画像グループが複数の画像フレームを含むステップと、
前記現在の層に応じて、前記現在の画像フレームに対応する現在の量子化パラメータオフセット量を取得するステップであって、前記画像グループにおける異なる層の画像フレームが異なる量子化パラメータオフセット量に対応するステップと、
前記現在の画像フレームの参照画像フレームに対応する参照量子化パラメータを取得するステップと、
前記参照量子化パラメータと、前記現在の量子化パラメータオフセット量とに応じて、前記現在の画像フレームに対応する現在の量子化パラメータを取得するステップと、
前記現在の量子化パラメータに応じて、前記現在の画像フレームを符号化するステップとを実行させる。
【０００９】
本出願の一つ又は複数の実施例の詳細は、以下の添付の図面及び説明において提供される。本出願の他の特徴、目的、及び利点は、明細書、添付図面、及び特許請求の範囲から明らかになる。
【図面の簡単な説明】
【００１０】
本出願の実施例における技術案をより明確に説明するために、以下で実施例の記述において使用する必要がある図面を簡単に紹介し、もちろん、以下に記述の図面が本出願のいくつかの実施例に過ぎず、当業者にとって、創造的な労力をしない前提で、これらの図面に応じて他の図面を得ることもできる。
【図１Ａ】一実施例で提供されるビデオ符号化方法の応用環境の図である。
【図１Ｂ】一実施例で提供されるビデオ符号化方法の応用環境の図である。
【図２Ａ】一実施例におけるビデオ符号化方法のフローチャートである。
【図２Ｂ】一実施例における時間階層Ｂフレーム符号化構造の模示図である。
【図３】一実施例における現在の層に応じて現在の画像フレームに対応する現在の量子化パラメータオフセット量を得るフローチャートである。
【図４】一実施例における現在の画像フレームの参照画像フレームに対応する参照量子化パラメータを取得するフローチャートである。
【図５】一実施例における現在の量子化パラメータに応じて現在の画像フレームを符号化するフローチャートである。
【図６】一実施例におけるビデオ符号化方法のフローチャートである。
【図７】一実施例におけるビデオ符号化方法のフローチャートである。
【図８】一実施例における参照量子化パラメータと、現在の量子化パラメータオフセット量とに応じて現在の画像フレームに対応する現在の量子化パラメータを得るフローチャートである。
【図９】一実施例におけるビデオ符号化装置の構成ブロック図である。
【図１０】一実施例における現在の量子化パラメータ取得モジュールの構成ブロック図である。
【図１１】一実施例における参照量子化パラメータ取得モジュールの構成ブロック図である。
【図１２】一実施例における符号化モジュールの構成ブロック図である。
【図１３】一実施例におけるビデオ符号化装置の構成ブロック図である。
【図１４】一実施例におけるビデオ符号化装置の構成ブロック図である。
【図１５】一実施例における現在のオフセット量取得モジュールの構成ブロック図である。
【図１６】一実施例におけるコンピュータ機器の内部構成ブロック図である。
【図１７】一実施例におけるコンピュータ機器の内部構成ブロック図である。
【発明を実施するための形態】
【００１１】
本出願の目的、技術案及び利点をより明らかにするために、本出願について、添付図面及び実施例と合わせて以下に詳細に説明する。ここで記述される具体的な実施例は、本出願を解釈するために使用され、本出願を限定しないことを理解されたい。
【００１２】
本出願で使用される「第１」、「第２」などの用語は、本明細書の様々な素子を説明するために使用される。  ただし、特に説明しない限り、これらの素子は用語によって制限されない。これらの用語は、ある素子を別の素子から区別するために使用される。
【００１３】
図１Ａは、一実施例で提供されるビデオ符号化方法の応用環境の図であり、ビデオ符号化の際に、ビデオ画像の各フレームのコンテンツが異なるため、複雑さも異なり、各フレーム画像を符号化するビット数は絶えず変化し、伝送チャネルも絶えず変化し、従って、符号化ビットレートと帯域幅のバランスをとるために、符号化器のバッファを設置する必要がある。図１に示すように、ビデオを符号化する場合に、ビデオ画像シーケンスをビデオ符号化器１に入力し、ビデオ符号化器１によって符号化されたビットストリームを符号化器バッファ２に入力してバッファリングした後にネットワークを介して伝送し、ビットレートコントローラ３は、設置されたビットレート制御モデルに従って、ビデオ符号化器の量子化パラメータを調整することで、ビデオ符号化器がビデオ符号化を行って得られるビットレートを制御し、符号化器バッファ２のオーバーフロー又はアンダーフローを防止する。
【００１４】
本出願の実施例のビデオ符号化方法は、コンピュータ機器に適用され、コンピュータ機器は、独立した物理サーバ又は端末であってもよいし、複数の物理サーバからなるサーバ群であってもよく、クラウドサーバ、クラウドデータベース、クラウドストレージ、ＣＤＮなどの基本的なクラウドコンピューティングサービスを提供するクラウドサーバであってもよい。端末は、スマートフォン、タブレットコンピュータ、ノートパソコン、デスクトップパソコン、スマートスピーカー、スマートウォッチなどであってもよいが、これらに限定されない。
【００１５】
図１Ｂに示すように、端末１１０又はサーバ１２０は、符号化器によりビデオ符号化を行ってもよいし、復号化器によりビデオ復号化を行ってもよい。端末１１０又はサーバ１２０は、プロセッサーによりビデオ符号化プログラムを実行することでビデオ符号化を行ってもよいし、プロセッサーによりビデオ復号化プログラムを実行することでビデオ復号化を行ってもよい。サーバ１２０は入力インターフェースを介して端末１１０から送信された符号化データを受信した後に、直接にプロセッサーに伝達して復号化してもよいし、データベースに記憶して後続の復号化を待ってもよい。サーバ１２０は、プロセッサーにより画像フレームを符号化して符号化データを得た後に、直接に出力インターフェースを介して端末１１０に送信してもよいし、符号化データをデータベースに記憶して後続の伝達を待ってもよいし、なお、符号化データは画像フレームを符号化した得られたデータである。
【００１６】
図２Ａに示すように、一実施例において、ビデオ符号化方法を提供し、本実施例では、主に、当該方法が上記コンピュータ機器に適用される例を挙げて説明し、具体的には、以下のステップを含むことができる。
【００１７】
ステップＳ２０２において、符号化待ちの現在の画像フレームを取得する。
【００１８】
具体的に、ビデオは画像シーケンスからなる。各画像は一つのフレームと見なしてもよい。現在の画像フレームは、現在符号化を行う必要がある画像フレームを指す。ビデオを符号化する場合に、ビデオ画像シーケンスをビデオ符号化器に入力し、ビデオ符号化器は、予め設置された手順に従って、符号化待ち画像フレームを取得して符号化する。
【００１９】
ステップＳ２０４において、画像グループにおける現在の画像フレームの位置する現在の層を取得し、画像グループは複数の画像フレームを含む。
【００２０】
具体的には、画像グループ((Ｇｒｏｕｐ  Ｏｆ  Ｐｉｃｔｕｒｅ、ＧＯＰ)は一つのグループの連続する画像を指し、ビデオ画像シーケンス内の連続するいくつかの画像を一つのグループとして形成し、ランダムアクセス及び編集を容易にすることができる。一つの画像グループにおける画像フレームの数は、具体的に、実際の必要に応じて設置してもよく、例えば、８であってもよい。画像グループはＩフレームと、Ｐフレームと、Ｂフレームとの三つのタイプのフレームを含んでもよい。なお、Ｉフレームはフレーム内予測フレームであり、Ｐフレームは一方向予測フレームであり、フレーム間予測方式を採用して予測してもよい。Ｂフレームは双方向予測フレームであり、前の画像フレームを参照して予測してもよいし、後の画像フレームを参照し予測してもよい。現在の層は、画像グループにおける現在の画像フレームの位置する層を指し、予め階層符号化構造を設置し、階層符号化構造に応じて、画像グループにおける画像フレームの位置する層を得ることができる。階層符号化構造は、画像グループにおける画像フレームを複数の層に分けて符号化することを指し、異なる層が異なる符号化品質に対応してもよく、具体的な階層化方法は、実際の必要、又は、適用シナリオに応じて設定されてもよい。例えば、画像フレームの画像グループにおける時系列に応じて階層化し、時間階層Ｂフレーム符号化構造(ｈｉｅｒａｒｃｈｉｃａｌ  Ｂ構造)を得る。階層符号化構造は、層の数、各層に対応する画像フレーム、及び画像フレームの間の参照関係を設定し、上位層の画像フレームは下位層の画像フレームを参照して符号化することができる。従って、符号化の際に、下位層の画像フレームに対して、より多い誤り訂正保護又は伝送優先度を与えることで、動的にネットワーク帯域幅変化に適応したり、又は、符号化効率を向上させたりする目的に達成する。階層符号化構造では、階層符号化構造の層の数は、具体的に、実際の必要に応じて設置されてもよく、例えば、画像グループは二つの層、三つの層、四つの層に分けてもよい。階層符号化構造を確定した後に、階層符号化構造に従って、画像グループにおける画像フレームの符号化順序を得て、画像グループにおける画像フレームを符号化し、現在の画像フレームを得てから、階層符号化構造に従って現在の画像フレームに対応する現在の層を得ることができる。
【００２１】
一例として予め設置された階層符号化構造が時間階層Ｂフレーム符号化構造であるとすると、一つの画像グループは八つの画像フレームを含み、画像グループのＢフレームはＢ０層と、Ｂ１層と、Ｂ２層との三つの層に分けられてもよく、Ｂ０層が４番目のＢフレームを含み、Ｂ１層が、２番目と６番目のＢフレームを含み、残りのＢフレーム画像フレームの属する層レベルがＢ２層であり、矢印の始点が参照フレーム画像を示し、矢印の向きが参照フレームに応じて符号化する画像フレームを示し、画像フレームの表示順序に従ってソートし、当該時間階層Ｂフレーム符号化構造は、図２Ｂに示す通りである。階層符号化構造では、上位層の画像フレームは、下位層の画像フレームを参照して符号化することができ、例えば、Ｂ０層の画像フレームの参照フレームは両端のＰフレームである。Ｂ２層の画像フレームは、Ｂ１層の画像フレームを参照して符号化することができる。なお、時間階層Ｂフレーム符号化構造は三層の符号化構造に限定されず、例えば、二層、四層などの符号化構造であってもよい。
【００２２】
ステップＳ２０６において、現在の層に応じて、現在の画像フレームに対応する現在の量子化パラメータオフセット量を得て、画像グループにおける異なる層の画像フレームは異なる量子化パラメータオフセット量に対応する。
【００２３】
具体的に、画像フレームに対して予測を行うことで得られた予測残差を変換した後、量子化を行う必要があり、データ量を削減する目的に達成し、量子化の際、予測残差に対して離散コサイン変換を行った後の値は、比較的小さい値にマッピングされ、例えば、量子化ステップサイズで除算することにより、比較的小さい値を得ることができる。量子化パラメータは、量子化ステップサイズのシーケンス番号であり、量子化パラメータに応じて対応する量子化ステップサイズを探し出し得る。量子化パラメータが小さいと、画像フレームの多くの詳細は保留され、対応するビットレートは高くなる。量子化パラメータが大きいほど、対応するビットレートが低くなり、画像の歪みが大きくなり、画質が低くなる。つまり、量子化パラメータはビットレートと負の相関があり、符号化の際に、ビットレートを制御の基本的な方法は、量子化パラメータを調整することで、画像に対応するビットレートを制御することである。量子化パラメータオフセット量は参照フレームに対する符号化の画像フレームの量子化パラメータオフセット値を指す。画像グループにおける異なる層の画像フレームは異なる量子化パラメータオフセット量に対応し、異なる層の画像フレームに対応する量子化パラメータオフセット量は予め設置されてもよく、具体的には実際の必要に応じて設置されてもよい。例えば第１の層から第３の層の量子化パラメータオフセット量は、それぞれ、０．４２、０．８、及び１．２であり得る。  階層符号化構造では、上位層の画像フレームは下位層の画像フレームを参照して符号化することができるので、上位層の画像フレームが参照される回数が少なく、下位層の画像フレームが参照される回数が多いので、上位層に対応する量子化パラメータオフセット量は下位層の量子化パラメータオフセット量よりも大きく設置され得る。即ち、画像フレームの層レベルと量子化パラメータオフセット量との対応関係は正の相関関係であり、ビデオ符号化の圧縮効率を向上させる。
【００２４】
ステップＳ２０８において、現在の画像フレームの参照画像フレームに対応する参照量子化パラメータを取得する。
【００２５】
具体的に、参照フレームは、符号化の画像フレームを予測するために用いられ、参照フレームの選択方法は、実際の必要に応じて設置されてもよい。参照画像フレームは現在の画像フレームの候補参照フレームリストから選択された参照フレームである。参照フレームは、例えば、空間的類似度などに基づいて選択されてもよい。一実施例において、現在の画像フレームがＢフレーム、即ち、双方向予測フレームであることを例に、各Ｂフレームは、二つの候補参照フレームシーケンスを有し、それぞれ二つの候補参照フレームシーケンスの１番目の画像フレームを参照画像フレームとしてもよい。参照量子化パラメータは、参照画像フレームを符号化する際の符号化量子化パラメータであってもよい。一実施例において、参照画像フレームに対応する符号化量子化パラメータと、対応する量子化パラメータオフセット量とに基づいて参照量子化パラメータを得てもよい。例えば、参照量子化パラメータは、参照画像フレームに対応する符号化量子化パラメータから当該参照画像フレームに対応する量子化パラメータオフセット量を減ったものである。一実施例において、参照画像フレームが複数の符号化量子化パラメータを有すると、例えば、各符号化ユニットが一つの量子化パラメータに対応すると、参照量子化パラメータは参照画像フレームにおける量子化パラメータの平均値であってもよい。
【００２６】
ステップＳ２１０において、参照量子化パラメータと、現在の量子化パラメータオフセット量とに応じて、現在の画像フレームに対応する現在の量子化パラメータを得る。
【００２７】
具体的に、参照量子化パラメータと、現在の量子化パラメータオフセット量とに基づいて、現在の画像フレームに対応する現在の量子化パラメータを得る。一実施例において、現在の量子化パラメータは参照量子化パラメータと、現在の量子化パラメータオフセット量との和であってもよい。一実施例において、現在の画像フレームが双方向予測フレームである場合に、二つの参照画像フレームがあるので、また、参照画像フレームと現在の画像フレームとの間のフレーム距離に基づいて現在の量子化パラメータを得てもよい。例えば、フレーム距離に対応する重みを設置し、参照画像フレームに対応する重みと、参照画像フレームの符号化量子化パラメータとに応じて、当該参照画像フレームに対応する影響値を得て、さらに、影響値と、現在の量子化パラメータオフセット量とに応じて、現在の量子化パラメータを得る。
【００２８】
ステップＳ２１２において、現在の量子化パラメータに応じて、現在の画像フレームを符号化する。
【００２９】
具体的に、予め量子化パラメータと量子化ステップサイズとの対応関係が設置されているので、現在の量子化パラメータに応じて、対応する量子化ステップサイズを取得し、量子化ステップサイズに応じて現在の画像フレームに対して量化符号化を行ってもよい。例えば、一般に、量子化の原理用の公式は
【数１】
0006906637.tif 000002
と表される。ここで、ｙは量子化の前の画像フレームに対応する値であり、Ｑｓｔｅｐは量子化ステップサイズであり、ＦＱはｙの量子化値である。ｒｏｕｎｄ（ｘ）関数は、量子化された値を四捨五入して偶数をとることを示す。量子化パラメータと量子化ステップサイズとの対応関係は、具体的に、必要に応じて設置されてもよい。例えば、現在のビデオ符号化標準では、輝度符号化の場合、量子化ステップサイズは５２個の値を有し、０〜５１の整数であり、色度符号化の場合、量子化ステップサイズは０〜３９の整数の値であり、且つ、量子化ステップサイズは、量子化パラメータの増加に伴って増加し、量子化パラメータが６だけ増加するたびに、量子化ステップサイズは１倍増加する。量子化パラメータと量子化ステップサイズとの対応関係における量子化パラメータが整数である場合に、現在の量子化パラメータを整数に丸めることができ、整数に丸める方法は四捨五入して整数に丸めることであってもよい。
【００３０】
上記のビデオ符号化方法はビデオファイルの圧縮に用いられ、例えば、Ｗｅｃｈａｔショートビデオを圧縮するために用いられてもよい。現在の画像フレームを符号化する場合に、画像グループにおける現在の画像フレームの位置する現在の層を取得し、次に、現在の層に応じて現在の画像フレームに対応する量子化パラメータオフセット量を得て、現在の画像フレームの参照画像フレームに対応する参照量子化パラメータを取得し、参照量子化パラメータと、量子化パラメータオフセット量とに応じて、現在の画像フレームに対応する現在の量子化パラメータを得ることにより、現在の量子化パラメータに応じて、現在の画像フレームを符号化し、符号化待ちの現在の画像フレームの位置する現在の層に対応する量子化パラメータオフセット量、及び参照画像フレームに対応する符号化量子化パラメータにより、現在の画像フレームに対応する現在の量子化パラメータを得るので、算出の複雑さが小さくなり、そして、異なる層の画像フレームのニーズに適応して量子化パラメータオフセット量を柔軟に変更する必要があり、符号化効率が高くなる。
【００３１】
一実施例において、図３に示すように、現在の画像フレームは双方向予測フレームであり、現在の層に応じて、現在の画像フレームに対応する現在の量子化パラメータオフセット量を得ることは以下のステップを含む。
【００３２】
ステップＳ３０２において、予め設置された現在の層の画像フレームと一方向予測フレームとの間の量子化オフセットパラメータを取得する。
【００３３】
具体的に、各階層符号化構造の異なる層に一方向予測フレームの間に対応する量子化オフセットパラメータを設置し得る。量子化パラメータオフセット量は、量子化オフセットパラメータに応じて算出して得られ、量子化パラメータオフセット量は、量子化オフセットパラメータと正の相関がある。量子化ステップサイズと量子化パラメータとの対応関係に応じて、量子化オフセットパラメータにより得られた量化オフセット量の式を得ることができ、例えば、現在の輝度符号化の場合、量子化ステップサイズは５２の値を有し、０〜５１の整数であり、且つ、量子化パラメータは量子化ステップサイズと相関があり、量子化パラメータは、量子化ステップサイズに伴って増加し、量子化パラメータが６だけ増加するたびに、量子化パラメータは１倍増加するのに対して、量子化パラメータオフセット量は、２を低とする量子化オフセットパラメータの対数と６との積である。式は
【数２】
0006906637.tif 000003
と表され、ここで、ｐｂＯｆｆｓｅｔ＿ｉがｉ番目の層に対応する量子化パラメータオフセット量であり、ｐｂＦａｃｔｏｒ＿ｉがｉ番目の層に対応する量子化オフセットパラメータを示す。量子化オフセットパラメータの具体的な値は、必要又は経験に応じて予め設置されてもよい。上位層の画像フレームが参照される回数が少ないので、画像フレームの層レベルと量子化パラメータオフセット量との対応関係は正の相関関係であり、上位層にある画像フレームに対応する量子化パラメータが大きく、ビットレートも低い。一実施例において、階層符号化構造では、一方向予測フレームが位置する層は双方向予測フレームが位置する層よりも低いので、一方向予測フレームを参照として、双方向予測フレームにおける異なる層の画像フレームと、一方向予測フレームとの間の量子化オフセットパラメータを設置することができ、下位層の一方向予測フレームに対応する量子化パラメータを上位層の双方向予測フレームに対応する量子化パラメータよりも小さくすることは、符号化効率を向上させることができ、従って、量子化オフセットパラメータは１よりも大きい。一実施例において、Ｂ０層、Ｂ１層、Ｂ２層に対応する量子化オフセットパラメータは、それぞれ、１．０５、１．１０、１．１５である。
【００３４】
ステップＳ３０４において、量子化オフセットパラメータに応じて、現在の画像フレームに対応する現在の量子化パラメータオフセット量を得る。
【００３５】
具体的に、量子化オフセットパラメータを得た後、得られた量子化オフセットパラメータと、対応する算式に応じて、現在の画像フレームに対応する現在の量子化パラメータオフセット量を得てもよい。具体的な算式は、量子化ステップサイズと量子化パラメータとの対応関係に応じて得られてもよい。
【００３６】
一実施例において、図４に示すように、ステップＳ２０８で現在の画像フレームの参照画像フレームに対応する参照量子化パラメータを取得するステップは以下のステップを含む。
【００３７】
ステップＳ４０２において、参照画像フレームの参照フレームタイプと、参照画像フレームの符号化量子化パラメータとを取得する。
【００３８】
具体的に、参照フレームタイプはＩフレーム、Ｂフレーム、及びＰフレームを含み得る。参照フレームのタイプは、具体的に、必要に応じて設置されてもよいし、異なるビデオ符号化標準に従って設置されてもよい。例えば、あるビデオ符号化標準、例えばＨ２６.３において、Ｂフレームは参照フレームとすることができない。一方、あるビデオ符号化標準では、Ｂフレームは参照フレームとすることができる。参照画像フレームの符号化量子化パラメータは、参照画像フレームを符号化する場合に採用される量子化パラメータを指す。
【００３９】
ステップＳ４０４において、参照フレームタイプと、符号化量子化パラメータとに応じて、参照画像フレームに対応する参照量子化パラメータを得る。
【００４０】
具体的に、参照フレームタイプの違いに応じて、参照画像フレームに対応する符号化量子化パラメータを調整することで参照量子化パラメータを得ることができる。例えば、Ｉフレーム及びＰフレームの場合、参照画像フレームに対応する符号化量子化パラメータを参照量子化パラメータとすることができる。Ｂフレームの場合、Ｂフレームが複数の層を有するので、異なる層に対応する量子化パラメータオフセット量は異なるので、量子化パラメータオフセット量と、符号化量子化パラメータとに基づいて、参照量子化パラメータを得てもよい。例えば、参照画像フレームがＢフレームである場合に、参照画像フレームに対応する符号化量子化パラメータから参照フレームに対応する量子化パラメータオフセット量を減ることで参照量子化パラメータを得る。
【００４１】
一実施例において、現在の画像フレームがＢフレームである双方向予測フレームである場合に、本出願実施例で提供される参照画像フレームの参照量子化パラメータと、現在の量子化パラメータオフセット量とに応じて、現在の量子化パラメータを得る方法を採用することができる。現在の画像フレームがＩフレーム及びＰフレームである場合に、本出願の実施例で提供される方法を採用して現在の画像フレームの現在の量子化パラメータを算出するのではなく、例えば、現在の画像フレームがＰフレームであり、ビットレート制御モデルに従って、現在の画像フレームに対応する現在の量子化パラメータを算出して得て、ビットレートを制御し、ビットレートの誤差が大きくなることを回避する。ビットレート制御モデルは、ＲＭ８(ｒｅｆｅｒｅｎｃｅ  ｍｏｄｅ  ８)及びＶＭ８(ｖｅｒｉｆｉｃａｔｉｏｎ  ｍｏｄｅ  ８)などを採用してもよく、具体的に制限しない。現在の画像フレームがＩフレームである場合に、ビットレート制御モデルを採用して現在の画像フレームに対応する現在の量子化パラメータを算出して得てもよいし、Ｉフレームに対するＰフレームの量子化パラメータオフセット量を設置し、そして、Ｐフレームに対応する量子化パラメータと、Ｉフレームに対するＰフレームの量子化パラメータオフセット量とに応じて、現在の画像フレームに対応する現在の量子化パラメータを得てもよい。一実施例において、Ｉフレームに対応する量子化パラメータは、Ｐフレームに対応する符号化量子化パラメータからＩフレームに対するＰフレームの量子化パラメータオフセット量を減った値であり、即ち、Ｉフレームに対応する量子化パラメータがＰフレームに対応する量子化パラメータよりも小さく、Ｉフレームに対応する符号化は精度が高く、画像歪みが小さい。Ｉフレームに最も近いＰフレームに対応する符号化量子化パラメータを選択して、Ｉフレームに対するＰフレームの量子化パラメータオフセットを減算してもよい。
【００４２】
一実施例において、現在の画像フレームは双方向予測フレームであり、参照フレームタイプと、符号化量子化パラメータとに応じて、参照画像フレームに対応する参照量子化パラメータを得るステップは、参照フレームタイプが双方向予測フレームである場合に、画像グループにおける参照画像フレームの位置する層を取得することを含む。画像グループにおける参照画像フレームの位置する層に応じて、参照画像フレームに対応する参照量子化パラメータオフセット量を得る。符号化量子化パラメータと、参照画像フレームに対応する参照量子化パラメータオフセット量とに応じて、前記参照画像フレームに対応する参照量子化パラメータを得る。
【００４３】
具体的に、参照量子化パラメータオフセット量は参照画像フレームの位置する層に対応する量子化パラメータオフセット量を指す。画像フレームが双方向予測フレームである場合に、画像フレームに対応する現在の層に応じて、量子化パラメータオフセット量を得て、且つ量子化パラメータオフセット量と、参照画像フレームの参照量子化パラメータとに応じて、対応する現在の量子化パラメータを得る必要があるので、参照画像フレームが双方向予測フレームである場合に、参照画像フレームに対応する符号化量子化パラメータも自身の位置する層に対応する量子化パラメータオフセット量、及びその参照画像フレームに対応する参照量子化パラメータを利用して得られる。従って、参照画像フレームが双方向予測フレームである場合に、画像グループにおける参照画像フレームの位置する層を取得し、画像グループにおける参照画像フレームの位置する層に応じて、参照画像フレームに対応する参照量子化パラメータオフセット量を得る必要がある。そして、参照画像フレームの符号化量子化パラメータと、参照画像フレームに対応する参照量子化パラメータオフセット量とに応じて、前記参照画像フレームに対応する参照量子化パラメータを得る。例えば、参照量子化パラメータは、符号化量子化パラメータと参照量子化パラメータオフセット量との差である。具体的には、必要に応じて設置される。
【００４４】
一実施例において、図５に示すように、現在の量子化パラメータに応じて、現在の画像フレームを符号化するステップは、以下のステップを含む。
【００４５】
ステップＳ５０２において、現在の量子化パラメータに応じて、現在の画像フレームに対応する現在の量子化ステップサイズを得る。
【００４６】
具体的に、現在の量子化パラメータを得た後に、量子化パラメータと量子化ステップサイズとの対応関係に応じて、現在の量子化パラメータに対応する量子化ステップサイズを、現在の量子化ステップサイズとして得る。
【００４７】
ステップＳ５０４において、現在の量子化ステップサイズに応じて、現在の画像フレームを符号化することで、現在の画像フレームに対応する現在のビットレートを得る。
【００４８】
具体的に、ビットレートは、単位時間に伝送されるデータビット数を指す。現在のビットレートは、現在の量子化ステップサイズで現在の画像フレーム符号化を符号化した後の対応するビットレートを指す。ビットレートの単位は、１秒間伝送されるビット数であってもよく、ビットレートが高いほど、データを伝送する速度が速くなる。現在の量子化ステップサイズに応じて符号化することで、符号化された現在の画像フレームに対応する現在のビットレートを得る。
【００４９】
一実施例において、現在の画像フレームは双方向予測フレームであり、図６に示すように、ビデオ符号化方法は、以下のステップをさらに含む。
【００５０】
ステップＳ６０２において、予め設置された現在の層の画像フレームと一方向予測フレームの量子化オフセットパラメータとを取得する。
【００５１】
具体的に、量子化パラメータオフセット量は、量子化オフセットパラメータに応じて算出して得られる。現在の画像フレームの現在の量子化パラメータは、現在の画像フレームの現在の量子化パラメータオフセット量に応じて得られるので、画像複雑さパラメータを算出する場合に、量子化オフセットパラメータに応じて、現在の画像フレームに対応するビットレートを矯正し、矯正されたビットレートを得てから、対応する画像複雑さパラメータを算出し、画像複雑さパラメータの正確性を向上してもよい。
【００５２】
ステップＳ６０４において、現在の画像フレームに対応する現在のビットレートと、量子化オフセットパラメータとに応じて、対応する複雑さ更新値を得る。
【００５３】
具体的に、画像複雑さパラメータは、画像フレームの複雑さ合いを示す。画像複雑さパラメータは、ビットレート制御モデルにおける一つのパラメータであり、画像フレームの量子化ステップサイズを算出するために用いられる。画像複雑さパラメータが大きいほど、画像のテクスチャなどの情報が複雑になり、高いビットレートで伝送する必要があることを説明する。複雑さ更新値は、画像複雑さパラメータを更新するために用いられ、画像の複雑さパラメータを動的に更新できる。
【００５４】
ステップＳ６０６において、現在の画像フレームの前方画像フレームに対応する画像複雑さパラメータと、複雑さ更新値とに応じて、更新された画像複雑さパラメータを得る。
【００５５】
具体的に、前方画像フレームに対応する画像複雑さパラメータは前方画像フレームが符号化された後に更新することで得られた画像複雑さパラメータを指す。前方画像フレームは、現在の画像フレームの前に符号化される画像フレームを指す。前の画像フレームであってもよく、タイムリーに画像複雑さパラメータを更新でき、もちろん、他の前方画像フレームであってもよく、具体的には、必要に応じて設置されてもよい。複雑さ更新値で前方画像フレームに対応する画像複雑さパラメータを更新し、更新された画像複雑さパラメータを得ることにより、ビットレート制御モデルにおける画像複雑さパラメータを更新する。
【００５６】
一実施例において、複雑さ更新値は、現在の画像フレームに対応する矯正ビットレートと、現在の量子化ステップサイズとに応じて得られる。更新された画像複雑さパラメータは、現在の画像フレームの前方画像フレームに対応する画像複雑さパラメータと複雑さ更新値との和であってもよく、式は
【数３】
0006906637.tif 000004
と表され、その中、現在の画像フレームの順序をｊ番目のフレームとし、前向の前のフレームをｊ−１フレームとし、ｊ−１番目の画像フレームを符号化した複雑さパラメータがｃｐｌｘｓｕｍｊ−１であり、Ｂｉｔｊがｊ番目のフレーム、即ち、現在の画像フレームに対応するビットレートであり、Ｓｃａｌｅｊがｊ番目のフレームに対応する現在の量子化ステップサイズであり、現在の画像フレームが複数の符号化ユニットに分けられ、各符号化ユニットが一つの量子化ステップサイズに対応すると、Ｓｃａｌｅｊは現在の画像フレームに対応する平均量子化ステップサイズであってもよい。ｐｂＦａｃｔｏｒ＿ｉはｉ番目の層の双方向予測フレームと一方向予測フレームの量子化オフセットパラメータを示す。ｐｒｅ＿ｐａｒａｍｊはｊ番目のフレームの事前分析パラメータであり、ｊ番目のフレーム、即ち、現在の画像フレームに対応するＳＡＤ(Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ、絶対誤差和)であってもよく、ＳＡＤは、現在の画像フレームの予測値と実際値との絶対誤差和である。
【００５７】
一実施例において、図７に示すように、ビデオ符号化方法は、以下のステップをさらに含む。
【００５８】
ステップＳ７０２において、現在の画像フレームに対応する後に符号化される後方画像フレームに対応するフレームタイプを取得する。
【００５９】
具体的に、後方画像フレームは、現在の画像フレームの後に符号化される画像フレームを指す。次の画像フレームであってもよく、もちろん、他の後方画像フレームであってもよく、具体的には、必要に応じて設置されてもよい。フレームのタイプはＩフレーム、Ｂフレーム及びＰフレームを含んでもよい。
【００６０】
ステップＳ７０４において、後方画像フレームが非双方向予測フレームである場合に、予め設置されたビットレート制御モデルと、更新された画像複雑さパラメータとに応じて、後方画像フレームに対応する量子化パラメータを得る。
【００６１】
具体的に、非双方向予測フレームはＩフレーム及びＰフレームを含み、もちろんＰフレームである場合にのみ、予め設置されたビットレート制御モデルと、更新された画像複雑さパラメータとに応じて、後方画像フレームに対応する量子化パラメータを得てもよい。ビットレート制御モデルの画像複雑さパラメータはモデルパラメータであり、従って、更新された画像複雑さパラメータでビットレート制御モデルを更新し、ビットレート制御モデルに応じて、後方画像フレームに対応する量子化パラメータを得る。ビットレート制御モデルは、具体的に、必要に応じて設置されてもよい。例えば、ＴＭ５(ｔｅｓｔ  ｍｏｄｅ  ５)アルゴリズムであってもよい。後方画像フレームが非双方向予測フレームである場合に、ビットレート制御モデルを採用して後方画像フレームの量子化パラメータを算出するので、ビデオビットレートの誤差が画像フレームの増加に伴って過度に大きくならない。
【００６２】
一実施例において、参照画像フレームは複数であり、図８に示すように、ステップＳ２１０である参照量子化パラメータと、現在の量子化パラメータオフセット量とに応じて、現在の画像フレームに対応する現在の量子化パラメータを得るステップは、以下のステップを含む。
【００６３】
ステップＳ８０２において、各参照画像フレームと現在の画像フレームとの間のフレーム距離を取得する。
【００６４】
具体的に、フレーム距離は画像フレームと画像フレームの間のフレーム数で示されてもよいし、画像フレームと画像フレームの間の表示時間の時間差で示されてもよい。画像フレームと画像フレームの間のフレーム数は画像フレームの間の表示順序差で示されてもよい。例えば、参照画像フレームが画像グループの２番目のフレームであり、現在の画像フレームが同一の画像グループの６番目のフレームであると、フレーム距離は４となる。参照画像フレームは二つであってもよく、例えば、Ｂフレームの参照画像フレームは二つである。
【００６５】
ステップＳ８０４において、各参照画像フレームと現在の画像フレームとの間のフレーム距離、及び対応する参照量子化パラメータに応じて現在の画像フレームに対応する第１の量子化パラメータを算出して得る。
【００６６】
具体的に、フレーム距離に対応する比例係数を設置し、そして、比例係数と、対応する参照量子化パラメータとに応じて、画像フレームに対応する第１の量子化パラメータを得てもよい。一実施例において、現在の参照画像フレームと現在の画像フレームとの間のフレーム距離に応じて、現在の参照画像フレームに対応する重みを得てから、各参照画像フレームに対応する重みと、対応する参照量子化パラメータとに応じて、現在の画像フレームに対応する第１の量子化パラメータを得てもよい。フレーム距離は重みと負の相関があり、現在の画像フレーム距離に近い参照画像フレームに対応する量子化パラメータは、現在の画像フレームの量子化パラメータに大きく影響する。一実施例において、重みはフレーム距離の逆数であってもよい。
【００６７】
例えば、現在の画像フレームが双方向予測フレームであり、二つの参照画像フレームがあり、１番目の参照フレームと現在の画像フレームとの距離がｎ１フレームであり、１番目の参照画像フレームの参照量子化パラメータがｑｐ１と等しく、２番目の参照画像フレームと現在の画像フレームとの距離がｎ２フレームであり、２番目の参照画像フレームの参照量子化パラメータがｑｐ２と等しい。なお、ｎ１及びｎ２を正の整数とすると、第１の量子化パラメータは二つの参照画像フレームの参照量子化パラメータと重みとの加重平均値と等しく、その中、１番目の参照画像フレームの量子化パラメータの重みは第２の参照画像フレームと現在の画像フレームとの間のフレーム距離と、総フレーム距離との比である。２番目の参照画像フレームの量子化パラメータの重みは、第一参照画像フレームと現在の画像フレームとの間のフレーム距離と、総フレーム距離との比であり、各参照画像フレームと現在の画像フレームとの間のフレーム距離、及び対応する参照量子化パラメータに応じて、現在の画像フレームに対応する第１の量子化パラメータを算出して得て、式は、
【数４】
0006906637.tif 000005
と表される。
【００６８】
ステップＳ８０６において、現在の画像フレームに対応する第１の量子化パラメータと、現在の量子化パラメータオフセット量とに応じて、現在の画像フレームに対応する現在の量子化パラメータを得る。
【００６９】
具体的に、第１の量子化パラメータと、現在の量子化パラメータオフセット量とに基づいて、現在の画像フレームに対応する現在の量子化パラメータを得る。一実施例において、現在の量子化パラメータは、第１の量子化パラメータと現在の量子化パラメータオフセット量との和であってもよい。
【００７０】
一実施例において、現在の画像フレームは双方向予測フレームであり、参照画像フレームは二つである。ステップＳ２１０である参照量子化パラメータと、現在の量子化パラメータオフセット量とに応じて現在の画像フレームに対応する現在の量子化パラメータを得るステップは、参照画像フレームがＩフレームであるかどうかを判断することをさらに含み、一実施例において、参照画像フレームにおける一つの参照画像フレームがＩフレームであり、他の参照画像フレームがＰフレームであると、ステップＳ８０２〜８０６を実行せず、フレームタイプがＰフレームである参照画像フレームに対応する参照量子化パラメータと現在の量子化パラメータオフセット量との和に応じて、現在の画像フレームに対応する現在の量子化パラメータを得る。一実施例において、参照画像フレームにおける一つの参照画像フレームがＩフレームであり、他の参照画像フレームがＢフレームであると、ステップＳ８０２〜８０６を実行せず、フレームタイプがＢフレームである参照画像フレームに対応する参照量子化パラメータと現在の量子化パラメータオフセット量との和に応じて、現在の画像フレームに対応する現在の量子化パラメータを得る。一実施例において、参照画像フレームにおける二つの画像フレームがＩフレームであると、二つの参照画像フレームの符号化量子化パラメータに応じて、第２の量子化パラメータを得て、さらに、第２の量子化パラメータとプリセット値との和に応じて、現在の量子化パラメータを得る。第２の量子化パラメータは、二つの参照画像フレームの符号化量子化パラメータの平均値であってもよい。プリセット値は、実際の必要に応じて設置されてもよい。例えば、プリセット値はＩフレームに対するＰフレームの量子化パラメータオフセット量であってもよい。
【００７１】
以下、時間階層Ｂフレーム符号化構造であり、画像グループが八つの画像フレームを含み、八つの画像フレームのうち前の七つのタイプがＢフレームであり、最後がＰフレーム、参照関係が図２Ｂに示すものであることを例に、本実施例で提供されるビデオ符号化方法について説明する。
【００７２】
１、図２Ｂの参照関係、及び現在の画像フレームの参照画像フレームが現在の画像フレームに先立って符号化されることから分かるように、画像グループのうち最初に符号化される画像フレームが最後の画像フレームであるので、画像グループの最后の画像フレームを取得し、現在の画像フレームがＰフレームであるため、設置されたビットレート制御モデルと、ターゲットビットレートとに応じて、画像グループの最後の画像フレームの量子化パラメータを算出し、算出して得られた量子化パラメータに応じて、当該画像フレームを符号化する。
【００７３】
２、画像グループの４番目の画像フレームを取得し、４番目の画像フレームがＢフレームであり、且つＢ０層であり、従って、Ｂ０層に対応する量子化パラメータオフセット量を取得する。
【００７４】
３、４番目の画像フレームの二つの参照画像フレームを取得し、この二つの参照画像フレームに対応する符号化量子化パラメータ、及びフレームタイプを得て、参照画像フレームがＢフレームであると、参照画像フレームの位置する層に対応する量子化パラメータオフセット量を取得し、参照画像フレームに対応する符号化量子化パラメータと量子化パラメータオフセット量との差を算出することにより、各参照画像フレームに対応する参照量子化パラメータを得る。参照画像フレームがＩフレーム又はＰフレームであると、参照画像フレームに対応する符号化量子化パラメータを参照量子化パラメータとする。
【００７５】
４、４番目の画像フレームの二つの参照フレームのうちの一つがＩフレームであると、Ｉフレームではない参照画像フレームの参照量子化パラメータと、Ｂ０層に対応する量子化パラメータオフセット量とを加算することで、４番目の画像フレームに対応する符号化量子化パラメータ、即ち、現在の量子化パラメータを得る。４番目の画像フレームの二つの参照フレームがＩフレームであると、二つの参照画像フレームに対応する参照量子化パラメータの平均値を算出し、平均値と、設置されたＩフレームに対するＰフレームの量子化パラメータオフセット量とを加算して、さらに、Ｂ０層に対応する量子化パラメータオフセット量を加えることにより、４番目の画像フレームに対応する符号化量子化パラメータを得る。４番目の画像フレームの二つの参照フレームのいずれもＩフレームではないと、この二つの参照画像フレームのそれぞれと４番目の画像フレームとの間のフレーム距離を取得し、フレーム距離に応じて参照画像フレームに対応する重みを算出して得て、その後、各画像フレームに対応する重みと、対応する参照量子化パラメータとに応じて、加重平均値を得て、得られた加重平均値と、Ｂ０層に対応する量子化パラメータオフセット量とを加算することで、４番目の画像フレームに対応する符号化量子化パラメータを得る。
【００７６】
５、４番目の画像フレームに対応する符号化量子化パラメータに応じて、４番目の画像フレームを符号化する。
【００７７】
６、４番目の画像フレームに対応するビットレートと、Ｂ０層に対応する量子化オフセットパラメータとを取得し、４番目の画像フレームに対応する画像複雑さパラメータを算出して得て、４番目の画像フレームに対応する画像複雑さパラメータでビットレート制御モデルにおける画像複雑さパラメータを更新する。
【００７８】
７、２番目の画像フレーム、６番目の画像フレーム、１番目の画像フレーム、３番目の画像フレーム、５番目の画像フレーム、７番目の画像フレームを順に取得して符号化し、符号化の流れは、４番目の画像フレームのステップ２〜６の実行流れを参照し、ここで再度説明しない。
【００７９】
８、次の画像グループの最后の画像フレーム、即ち、Ｐフレームを取得し、ビットレート制御モデルと、７番目の画像フレームに対応する画像複雑さパラメータとに応じて、次の画像グループの最後の画像フレームに対応する量子化パラメータを算出して得る。
【００８０】
理解すべきことは、本出願の各実施例における各ステップは必ずしもステップ番号により指示された順次に従って実行されるわけではない。本明細書において明確に説明されていない限り、これらのステップの実行は順番に対する厳しい制限がなく、他の順番で実行されてもよい。そして、各実施例の少なくとも一部のステップは、複数のサブステップ又は複数の段階を含むことができる。これらのサブステップ又は段階は、必ずしも同じ時刻において実行されるわけではなく、異なる時刻において実行されてもよく、これらのサブステップ又は階段の実行の順番も必ずしも順次に実行されるわけではなく、他のステップ又は他のステップのサブステップ又は段階の少なくとも一部と順番に又は交互に実行されてもよい。
【００８１】
図９に示すように、一実施例において、ビデオ符号化装置を提供し、具体的には、
符号化待ちの現在の画像フレームを取得するための現在フレーム取得モジュール９０２と、
画像グループにおける現在の画像フレームの位置する現在の層を取得するための現在の層取得モジュール９０４であって、画像グループが複数の画像フレームを含む現在の層取得モジュール９０４と、
現在の層に応じて、現在の画像フレームに対応する現在の量子化パラメータオフセット量を取得するための現在のオフセット量取得モジュール９０６であって、画像グループにおける異なる層の画像フレームが異なる量子化パラメータオフセット量に対応する現在のオフセット量取得モジュール９０６と、
現在の画像フレームの参照画像フレームに対応する参照量子化パラメータを取得するための参照量子化パラメータ取得モジュール９０８と、
参照量子化パラメータと、現在の量子化パラメータオフセット量とに応じて、現在の画像フレームに対応する現在の量子化パラメータを取得するための現在の量子化パラメータ取得モジュール９１０と、
現在の量子化パラメータに応じて、現在の画像フレームを符号化するための符号化モジュール９１２とを含む。
【００８２】
図１０に示すように、一実施例において、参照画像フレームは複数であり、現在の量子化パラメータ取得モジュール９１０は、
各参照画像フレームと現在の画像フレームとの間のフレーム距離を取得するためのフレーム距離取得ユニット９１０Ａと、
各参照画像フレームと現在の画像フレームとの間のフレーム距離、及び対応する参照量子化パラメータに応じて、現在の画像フレームに対応する第１の量子化パラメータを算出するためのパラメータ算出ユニット９１０Ｂと、
現在の画像フレームに対応する第１の量子化パラメータと、現在の量子化パラメータオフセット量とに応じて、現在の画像フレームに対応する現在の量子化パラメータを取得するための現在の量子化パラメータ取得ユニット９１０Ｃとを含む。
【００８３】
一実施例において、パラメータ算出ユニット９１０Ｂは、現在の参照画像フレームと現在の画像フレームとの間のフレーム距離に応じて、現在の参照画像フレームに対応する重みを得て、フレーム距離は重みと負の相関がある。各参照画像フレームに対応する重み及び対応する参照量子化パラメータに基づいて現在の画像フレームに対応する第１の量子化パラメータを取得する。
【００８４】
図１１に示すように、一実施例において、参照量子化パラメータ取得モジュール９０８は、
参照画像フレームの参照フレームタイプと、参照画像フレームの符号化量子化パラメータとを取得するための参照フレーム情報取得ユニット９０８Ａと、
参照フレームタイプと、符号化量子化パラメータとに応じて、参照画像フレームに対応する参照量子化パラメータを取得するための参照量子化パラメータ取得ユニット９０８Ｂとを含む。
【００８５】
一実施例において、現在の画像フレームは双方向予測フレームであり、参照量子化パラメータ取得ユニット９０８Ｂは、参照フレームタイプが双方向予測フレームである場合に、画像グループにおける参照画像フレームの位置する層を取得する。画像グループにおける参照画像フレームの位置する層に応じて、参照画像フレームに対応する参照量子化パラメータオフセット量を得る。符号化量子化パラメータと、参照画像フレームに対応する参照量子化パラメータオフセット量とに応じて、前記参照画像フレームに対応する参照量子化パラメータを得る。
【００８６】
図１２に示すように、一実施例において、符号化モジュール９１２は、
現在の量子化パラメータに応じて、現在の画像フレームに対応する現在の量子化ステップサイズを取得するためのステップサイズ取得ユニット９１２Ａと、
現在の量子化ステップサイズに応じて、現在の画像フレームを符号化することで、現在の画像フレームに対応する現在のビットレートを取得するための符号化ユニット９１２Ｂとを含む。
【００８７】
図１３に示すように、一実施例において、現在の画像フレームは、双方向予測フレームであり、装置は、
予め設置された現在の層の画像フレームと一方向予測フレームとの間の量子化オフセットパラメータを取得するためのオフセットパラメータ取得モジュール１３０２と、
現在の画像フレームに対応する現在のビットレートと、量子化オフセットパラメータとに応じて、対応する複雑さ更新値を取得するための更新値取得モジュール１３０４と、
現在の画像フレームの前方画像フレームに対応する画像複雑さパラメータと、複雑さ更新値とに応じて、更新された画像複雑さパラメータを得るための更新モジュール１３０６とをさらに含む。
【００８８】
図１４に示すように、一実施例において、装置は、
現在の画像フレームに対応する後に符号化される後方画像フレームに対応するフレームタイプを取得するためのフレームタイプ取得モジュール１４０２と、
後方画像フレームが非双方向予測フレームである場合に、予め設置されたビットレート制御モデルと、更新された画像複雑さパラメータとに応じて、後方画像フレームに対応する量子化パラメータを取得するための後方量子化パラメータ取得モジュール１４０４とをさらに含む。
【００８９】
図１５に示すように、一実施例において、現在のオフセット量取得モジュール９０６は、
予め設置された現在の層の画像フレームと一方向予測フレームとの間の量子化オフセットパラメータを取得するためのオフセットパラメータ取得ユニット９０６Ａと、
量子化オフセットパラメータに応じて、現在の画像フレームに対応する現在の量子化パラメータオフセット量を取得するための現在のオフセット量取得ユニット９０６Ｂとを含む。
【００９０】
図１６は、一実施例におけるコンピュータ機器の内部構成図を示す。当該コンピュータ機器は、具体的に、図１Ｂにおける端末１１０であってもよい。図１６に示すように、当該コンピュータ機器は、システムバスを介して接続されるプロセッサー、メモリ、ネットワークインターフェース、入力装置及びディスプレイを含む。なお、メモリは不揮発性記憶媒体及び内部メモリを含む。当該コンピュータ機器の不揮発性記憶媒体にオペレーティングシステムが記憶されており、さらにコンピュータ読み取り可能な命令が記憶されており、当該コンピュータ読み取り可能な命令がプロセッサーによって実行される場合に、プロセッサーにビデオ符号化方法を実現させることができる。当該内部メモリにはコンピュータ読み取り可能な命令も記憶されており、当該コンピュータ読み取り可能な命令がプロセッサーによって実行される場合に、プロセッサーにビデオ符号化方法を実現させることができる。コンピュータ機器のディスプレイは、液晶ディスプレイ又は電子ペーパーディスプレイであってもよく、コンピュータ機器の入力装置は、ディスプレイを覆うタッチ層であってもよく、コンピュータ機器のハウジングに設置されるボタン、トラックボール又はタッチパッドであってもよく、外付けのキーボード、タッチパッド、マウスであってもよい。
【００９１】
図１７は、一実施例におけるコンピュータ機器の内部構成図を示す。当該コンピュータ機器は、具体的に、図１Ｂにおけるサーバ１２０であってもよい。図１７に示すように、当該コンピュータ機器は、システムバスを介して接続されるプロセッサー、メモリ、及びネットワークインターフェースを含む。メモリは不揮発性記憶媒体及び内部メモリを含む。当該コンピュータ機器の不揮発性記憶媒体にはオペレーティングシステム、さらに、コンピュータ読み取り可能な命令が記憶されており、当該コンピュータ読み取り可能な命令がプロセッサーによって実行される場合に、プロセッサーにビデオ符号化方法を実現させることができる。当該内部メモリにはコンピュータ読み取り可能な命令も記憶されており、当該コンピュータ読み取り可能な命令がプロセッサーによって実行される場合に、プロセッサーにビデオ符号化方法を実行させることができる。
【００９２】
当業者であれば、図１６と図１７に示された構造は、本出願の技術案に関連する一部の構造を示したブロック図に過ぎず、本出願の技術案を適用可能なコンピュータ機器を限定するものではないことを理解できる。具体的なコンピュータ機器は、図示されるものよりさらに多い又はさらに少ない部品を含み、あるいは幾つかの部品の組み合わせ、あるいは異なる部品配置を有することができる。
【００９３】
一実施例において、本出願で提供されるビデオ符号化装置は、コンピュータ読み取り可能な命令の形式として実現されてもよく、コンピュータ読み取り可能な命令は、図１６と図１７に示すコンピュータ機器で実行され得る。コンピュータ機器のメモリには、当該ビデオト符号化装置を形成する各プログラムモジュール、例えば、図９に示す現在のフレーム取得モジュール９０２、現在の層取得モジュール９０４、現在のオフセット量取得モジュール９０６、参照量子化パラメータ取得モジュール９０８、現在の量子化パラメータ取得モジュール９１０及び符号化モジュール９１２が記憶されることができる。各プログラムモジュールからなるコンピュータ読み取り可能な命令は、プロセッサーに本明細書に説明された本出願の各実施例のビデオ符号化方法におけるステップに実行させる。
【００９４】
例えば、図１６及び図１７に示すコンピュータ機器は、図９に示すビデオ符号化装置における現在のフレーム取得モジュール９０２により、符号化待ちの現在の画像フレームを取得する。現在の層取得モジュール９０４により、画像グループにおける現在の画像フレームの位置する現在の層を取得し、画像グループは複数の画像フレームを含む。現在のオフセット量取得モジュール９０６により、現在の層に応じて、現在の画像フレームに対応する現在の量子化パラメータオフセット量を取得する。参照量子化パラメータ取得モジュールにより、現在の画像フレームの参照画像フレームに対応する参照量子化パラメータを取得する。現在の量子化パラメータ取得モジュール９１０により、参照量子化パラメータと、現在の量子化パラメータオフセット量とに応じて、現在の画像フレームに対応する現在の量子化パラメータを取得する。符号化モジュール９１２により、現在の量子化パラメータに応じて現在の画像フレームを符号化する。
【００９５】
当業者であれば、前述の実施例の方法における全部又は一部の流れを実現することは、コンピュータ読み取り可能な命令により関連するハードウェアに命令することによって実施され得ることが理解され、前記プログラムは、不揮発性のコンピュータ読み取り可能な記憶媒体に格納することができる。プログラムが実行される場合に、前述の方法の実施例の流れが含まれ得る。なお、  本出願で提供される各実施例において使用される、メモリ、ストレージ、データベース、又は他の媒体に関する任意の参照は、不揮発性メモリ及び／又は揮発性メモリを含み得る。不揮発性メモリは、読出し専用メモリ（ＲＯＭ）、プログラマブルＲＯＭ（ＰＲＯＭ）、電気的プログラマブルＲＯＭ（ＥＰＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）又はフラッシュメモリを含み得る。揮発性メモリは、ランダムアクセスメモリ（ＲＡＭ）又は外部キャッシュメモリを含み得る。例示として、限定ではなく、ＲＡＭは、スタティックＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、同期ＤＲＡＭ（ＳＤＲＡＭ）、ダブルデータレートＳＤＲＡＭ（ＤＤＲ    ＳＤＲＡＭ）、ｅｎｈａｎｃｅｄＳＤＲＡＭ（ＥＳＤＲＡＭ）、ＳｙｎｃｈｌｉｎｋＤＲＡＭ（ＳＬＤＲＡＭ）、Ｒａｍｂｕｓ直接ＲＡＭ(ＲＤＲＡＭ)、直接ＲａｍｂｕｓＲＡＭ（ＤＲＲＡＭ）、ＲａｍｂｕｓダイナミックＲＡＭ(ＲＤＲＡＭ)など複数の形態で得られる。
【００９６】
前述の実施例の各技術的特徴を任意に組み合わせることができ、説明を簡潔にするために、前述の実施例の各技術的特徴の全ての可能な組み合わせが説明されていないが、技術的特徴が矛盾しない限り、本明細書に記載の範囲に入るとみなすべきである。
【００９７】
前述の実施例は、単に本願のいくつかの実施態様を表すものである。その説明は比較的具体的且つ詳細であるが、本出願の範囲に対する限定として理解されるべきではない。  当業者であれば、本願の思想から逸脱することなく、変換及び改良を行うことができることに留意されたい。これらの変換と改良はこの出願の保護範囲に属する。従って、この出願の保護範囲は添付の特許請求の範囲に従うべきである。
【図１Ａ】
0006906637.tif 000006
【図１Ｂ】
0006906637.tif 000007
【図２Ａ】
0006906637.tif 000008
【図２Ｂ】
0006906637.tif 000009
【図３】
0006906637.tif 000010
【図４】
0006906637.tif 000011
【図５】
0006906637.tif 000012
【図６】
0006906637.tif 000013
【図７】
0006906637.tif 000014
【図８】
0006906637.tif 000015
【図９】
0006906637.tif 000016
【図１０】
0006906637.tif 000017
【図１１】
0006906637.tif 000018
【図１２】
0006906637.tif 000019
【図１３】
0006906637.tif 000020
【図１４】
0006906637.tif 000021
【図１５】
0006906637.tif 000022
【図１６】
0006906637.tif 000023
【図１７】
0006906637.tif 000024