特許第6928041号(P6928041)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 北京百度网▲訊▼科技有限公司の特許一覧

<>
  • 特許6928041-動画を処理するための方法および装置 図000002
  • 特許6928041-動画を処理するための方法および装置 図000003
  • 特許6928041-動画を処理するための方法および装置 図000004
  • 特許6928041-動画を処理するための方法および装置 図000005
  • 特許6928041-動画を処理するための方法および装置 図000006
  • 特許6928041-動画を処理するための方法および装置 図000007
  • 特許6928041-動画を処理するための方法および装置 図000008
  • 特許6928041-動画を処理するための方法および装置 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6928041
(24)【登録日】2021年8月10日
(45)【発行日】2021年9月1日
(54)【発明の名称】動画を処理するための方法および装置
(51)【国際特許分類】
   H04N 21/238 20110101AFI20210823BHJP
【FI】
   H04N21/238
【請求項の数】12
【外国語出願】
【全頁数】16
(21)【出願番号】特願2019-161973(P2019-161973)
(22)【出願日】2019年9月5日
(65)【公開番号】特開2020-96342(P2020-96342A)
(43)【公開日】2020年6月18日
【審査請求日】2019年9月6日
(31)【優先権主張番号】201811536277.0
(32)【優先日】2018年12月14日
(33)【優先権主張国】CN
(73)【特許権者】
【識別番号】515002757
【氏名又は名称】北京百度网▲訊▼科技有限公司
【氏名又は名称原語表記】BEIJING BAIDU NETCOM SCIENCE AND TECHNOLOGY CO.,LTD.
(74)【代理人】
【識別番号】110002675
【氏名又は名称】特許業務法人ドライト国際特許事務所
(72)【発明者】
【氏名】▲刑▼ ▲杯飛▼
(72)【発明者】
【氏名】王 加良
(72)【発明者】
【氏名】沈 慧▲鋒▼
(72)【発明者】
【氏名】曹 菲菲
【審査官】 富樫 明
(56)【参考文献】
【文献】 米国特許出願公開第2017/0359580(US,A1)
【文献】 特開2002−142218(JP,A)
【文献】 特表2014−505400(JP,A)
【文献】 特表2014−530587(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00−21/858
(57)【特許請求の範囲】
【請求項1】
処理待ちの動画を取得し、前記動画をシーンに応じて少なくとも1つの動画セグメントに区分することと、
前記少なくとも1つの動画セグメントにおける動画セグメントに対し、当該動画セグメントの特徴を抽出することと、
前記特徴および目標動画品質を予め訓練されたエンコードパラメータ予測モデルに入力して、当該動画セグメントのエンコードパラメータを取得し、ここで、前記エンコードパラメータ予測モデルは、動画セグメントの特徴と目標動画品質におけるエンコードパラメータとの対応関係を表すために使用されることと、
前記少なくとも1つの動画セグメントにおける動画セグメントに対応するエンコードパラメータに基づいて前記動画をエンコード処理し、エンコードされた動画を生成することと、
を含み、
前記エンコードパラメータ予測モデルは、
サンプル動画セットを取得し、前記サンプル動画セットにおけるサンプル動画のエンコードパラメータと動画品質を標示することと、
前記サンプル動画セットにおけるサンプル動画に対し、当該サンプル動画の特徴を抽出し、当該サンプル動画の特徴に基づいて、当該サンプル動画の複雑度因子を確定することと、
複雑度因子に基づいて、前記サンプル動画セットにおけるサンプル動画を少なくとも1つのカテゴリに分類することと、
前記少なくとも1つのカテゴリにおけるカテゴリに対し、当該カテゴリに属するサンプル動画のエンコードパラメータと動画品質を回帰させ、エンコードパラメータと動画品質との関係曲線を得ることと、
を含むステップで訓練されることによって得られる、
動画を処理するための方法。
【請求項2】
エンコードされた動画の動画品質を確定することと、
確定された動画品質は前記目標動画品質と一致しないことに応答して、所定の情報を出力することと、
をさらに含む請求項1に記載の方法。
【請求項3】
前記当該動画セグメントの特徴を抽出することは、
当該動画セグメントをデコードし、当該動画セグメントの時間領域特徴および/または周波数領域特徴を抽出することを含む、
請求項1に記載の方法。
【請求項4】
前記サンプル動画セットにおけるサンプル動画のエンコードパラメータと動画品質を標示することは、
前記サンプル動画セットにおけるサンプル動画に対し、所定の一定品質の値に基づいて当該サンプル動画をエンコードし、エンコードプロセスにおけるエンコードパラメータ、動画品質を標示することを含む、
請求項に記載の方法。
【請求項5】
前記複雑度因子は、エンコードされたサンプル動画のピクセル深度に関連する請求項に記載の方法。
【請求項6】
処理待ちの動画を取得し、前記動画をシーンに応じて少なくとも1つの動画セグメントに区分するように構成された区分ユニットと、
前記少なくとも1つの動画セグメントにおける動画セグメントに対し、当該動画セグメントの特徴を抽出するように構成された抽出ユニットと、
前記特徴および目標動画品質を予め訓練された動画セグメントの特徴と目標動画品質におけるエンコードパラメータとの対応関係を表すために使用されるエンコードパラメータ予測モデルに入力して、当該動画セグメントのエンコードパラメータを取得するように構成された入力ユニットと、
前記少なくとも1つの動画セグメントにおける動画セグメントに対応するエンコードパラメータに基づいて前記動画をエンコード処理し、エンコードされた動画を生成するように構成された処理ユニットと、
サンプル動画セットを取得し、前記サンプル動画セットにおけるサンプル動画のエンコードパラメータと動画品質を標示し、
前記サンプル動画セットにおけるサンプル動画に対し、当該サンプル動画の特徴を抽出し、当該サンプル動画の特徴に基づいて、当該サンプル動画の複雑度因子を確定し、
複雑度因子に基づいて、前記サンプル動画セットにおけるサンプル動画を少なくとも1つのカテゴリに分類し、
前記少なくとも1つのカテゴリにおけるカテゴリに対し、当該カテゴリに属するサンプル動画のエンコードパラメータと動画品質を回帰させ、エンコードパラメータと動画品質との関係曲線を得る、ように構成された訓練ユニットと、
を含む動画を処理するための装置。
【請求項7】
エンコードされた動画の動画品質を確定し、
確定された動画品質は前記目標動画品質と一致しないことに応答して、所定の情報を出力する、
ように構成された検証ユニットをさらに含む請求項に記載の装置。
【請求項8】
前記抽出ユニットは、さらに、当該動画セグメントをデコードし、当該動画セグメントの時間領域特徴および/または周波数領域特徴を抽出するように構成される、
請求項に記載の装置。
【請求項9】
前記訓練ユニットは、さらに、前記サンプル動画セットにおけるサンプル動画に対し、所定の一定品質の値に基づいて当該サンプル動画をエンコードし、エンコードプロセスにおけるエンコードパラメータ、動画品質を標示するように構成される、
請求項に記載の装置。
【請求項10】
前記複雑度因子は、エンコードされたサンプル動画のピクセル深度に関連する請求項に記載の装置。
【請求項11】
1つ以上のプロセッサと、
1つ以上のプログラムが記憶された記憶装置と、
を含み、
前記1つ以上のプログラムが前記1つ以上のプロセッサによって実行されるとき、請求項1からのいずれか1項に記載の方法を前記1つ以上のプロセッサに実現させる、
電子機器。
【請求項12】
コンピュータプログラムが記憶されたコンピュータ可読媒体であって、
前記コンピュータプログラムがプロセッサによって実行されるとき、請求項1からのいずれか1項に記載の方法を実現する、
コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施例は、コンピュータ技術の分野に関し、具体的には動画を処理するための方法および装置に関する。
【背景技術】
【0002】
動画トランスコーディング(Video transcoding)とは、異なるネットワーク帯域幅、異なる端末処理能力、または異なるユーザニーズに適応するために、エンコードされて圧縮された動画コードストリームを別の動画コードストリームに変換することである。
【0003】
関連するコンテンツ適応型のエンコード技術は、基本的には複数回エンコードする方式を利用し、すなわち、まずCRF (constant ratefactor、一定の品質を保証してビットレートを知能的に配布する)のエンコードを使用して動画全体の複雑度因子を計算し、次に動画全体のエンコードパラメータを調整し、つまり、コンテンツ適応型の基本は、タイトル(title)のレベルである。
【0004】
しかしながら、長さの異なる動画コンテンツについて、その中のシーンは頻繁に変わる可能性があり、異なるシーンはより細かい粒度のコンテンツ適応型の精度を意味する。
【発明の概要】
【課題を解決するための手段】
【0005】
本発明の実施例は、動画を処理するための方法および装置を提案する。
【0006】
第1側面において、本発明の実施例は、処理待ちの動画を取得し、動画をシーンに応じて少なくとも1つの動画セグメントに区分することと、少なくとも1つの動画セグメントにおける動画セグメントに対し、当該動画セグメントの特徴を抽出することと、特徴および目標動画品質を予め訓練されたエンコードパラメータ予測モデルに入力して、当該動画セグメントのエンコードパラメータを取得し、ここで、エンコードパラメータ予測モデルは、動画セグメントの特徴と目標動画品質におけるエンコードパラメータとの対応関係を表すために使用されることと、少なくとも1つの動画セグメントにおける動画セグメントに対応するエンコードパラメータに基づいて動画をエンコード処理し、エンコードされた動画を生成することと、を含む動画を処理するための方法に関する。
【0007】
いくつかの実施例において、当該方法は、エンコードされた動画の動画品質を確定することと、確定された動画品質は目標動画品質と一致しないことに応答して、所定の情報を出力することと、をさらに含む。
【0008】
いくつかの実施例において、当該動画セグメントの特徴を抽出することは、当該動画セグメントをデコードし、当該動画セグメントの時間領域特徴および/または周波数領域特徴を抽出することを含む。
【0009】
いくつかの実施例において、エンコードパラメータ予測モデルは、以下のステップで訓練されることによって得られ、ステップは、サンプル動画セットを取得し、サンプル動画セットにおけるサンプル動画のエンコードパラメータと動画品質を標示することと、サンプル動画セットにおけるサンプル動画に対し、当該サンプル動画の特徴を抽出し、当該サンプル動画の特徴に基づいて、当該サンプル動画の複雑度因子を確定することと、複雑度因子に基づいて、サンプル動画セットにおけるサンプル動画を少なくとも1つのカテゴリに分類することと、少なくとも1つのカテゴリにおけるカテゴリに対し、当該カテゴリに属するサンプル動画のエンコードパラメータと動画品質を回帰させ、エンコードパラメータと動画品質との関係曲線を得ることと、を含む。
【0010】
いくつかの実施例において、サンプル動画セットにおけるサンプル動画のエンコードパラメータと動画品質を標示することは、サンプル動画セットにおけるサンプル動画に対し、所定の一定品質の値に基づいて当該サンプル動画をエンコードし、エンコードプロセスにおけるエンコードパラメータ、動画品質を標示することを含む。
【0011】
いくつかの実施例において、複雑度因子は、エンコードされたサンプル動画のピクセル深度に関連する。
【0012】
第2側面において、本発明の実施例は、処理待ちの動画を取得し、動画をシーンに応じて少なくとも1つの動画セグメントに区分するように構成された区分ユニットと、少なくとも1つの動画セグメントにおける動画セグメントに対し、当該動画セグメントの特徴を抽出するように構成された抽出ユニットと、特徴および目標動画品質を予め訓練された動画セグメントの特徴と目標動画品質におけるエンコードパラメータとの対応関係を表すために使用されるエンコードパラメータ予測モデルに入力して、当該動画セグメントのエンコードパラメータを取得するように構成された入力ユニットと、少なくとも1つの動画セグメントにおける動画セグメントに対応するエンコードパラメータに基づいて動画をエンコード処理し、エンコードされた動画を生成するように構成された処理ユニットと、を含む動画を処理するための装置に関する。
【0013】
いくつかの実施例において、当該装置は、エンコードされた動画の動画品質を確定し、確定された動画品質は目標動画品質と一致しないことに応答して、所定の情報を出力するように構成された検証ユニットをさらに含む。
【0014】
いくつかの実施例において、抽出ユニットは、さらに、当該動画セグメントをデコードし、当該動画セグメントの時間領域特徴および/または周波数領域特徴を抽出するように構成される。
【0015】
いくつかの実施例において、当該装置は、サンプル動画セットを取得し、サンプル動画セットにおけるサンプル動画のエンコードパラメータと動画品質を標示し、サンプル動画セットにおけるサンプル動画に対し、当該サンプル動画の特徴を抽出し、当該サンプル動画の特徴に基づいて、当該サンプル動画の複雑度因子を確定し、複雑度因子に基づいて、サンプル動画セットにおけるサンプル動画を少なくとも1つのカテゴリに分類し、少なくとも1つのカテゴリにおけるカテゴリに対し、当該カテゴリに属するサンプル動画のエンコードパラメータと動画品質を回帰させ、エンコードパラメータと動画品質との関係曲線を得るように構成された訓練ユニットをさらに含む。
【0016】
いくつかの実施例において、訓練ユニットは、さらに、サンプル動画セットにおけるサンプル動画に対し、所定の一定品質の値に基づいて当該サンプル動画をエンコードし、エンコードプロセスにおけるエンコードパラメータ、動画品質を標示するように構成される。
【0017】
いくつかの実施例において、複雑度因子は、エンコードされたサンプル動画のピクセル深度に関連する。
【0018】
第3側面において、本発明の実施例は、1つ以上のプロセッサと、1つ以上のプログラムが記憶された記憶装置と、を含み、1つ以上のプログラムが1つ以上のプロセッサによって実行されるとき、第1側面のいずれかの実施形態に記載の方法を1つ以上のプロセッサに実現させる、電子機器に関する。
【0019】
第4側面において、本発明の実施例は、コンピュータプログラムが記憶されたコンピュータ可読媒体であって、コンピュータプログラムがプロセッサによって実行されるとき、第1側面のいずれかの実施形態に記載の方法を実現するコンピュータ可読媒体に関する。
【0020】
本発明の実施例に係る動画を処理するための方法と装置は、シーンに基づいて動画をセグメント化し、マシンで学んだエンコードパラメータ予測モデルによって目標動画品質におけるエンコードパラメータを予測する。予測されたエンコードパラメータに基づいて動画に対しコンテンツ適応型のエンコードを行う。よって、圧縮率を高め、動画の品質を向上させる。
【図面の簡単な説明】
【0021】
本発明のその他の特徴、目的および利点をより明確にするために、以下の図面を参照してなされた非限定的な実施例の詳細な説明を参照する。
図1】本発明の一実施例が適用され得る例示的なシステムアーキテクチャ図である。
図2】本発明に係る動画を処理するための方法の一実施例のフローチャートである。
図3】本発明に係る動画を処理するための方法の一適用状況の概略図である。
図4】本発明に係る動画を処理するための方法の別の一実施例のフローチャートである。
図5a】本発明に係る動画を処理するための方法のエンコードパラメータと動画品質との関係曲線である。
図5b】本発明に係る動画を処理するための方法のエンコードパラメータと動画品質との関係曲線である。
図6】本発明に係る動画を処理するための装置の一実施例の概略構造図である。
図7】本発明の実施例を実現するための電子機器のコンピュータシステムの概略構造図である。
【発明を実施するための形態】
【0022】
以下、図面及び実施例を参照して本発明についてより詳細に説明する。ここで説明された具体的な実施例は、関連する発明を説明するためだけのものであり、この発明を制限するものではないことを理解できる。なお、説明を容易にするために、図面には関連する発明に関連する部分のみを示している。
【0023】
なお、矛盾しない場合には、本発明の実施例及び実施例における特徴を互いに組み合わせることができる。以下、図面を参照して、実施例に合わせて本発明を詳細に説明する。
【0024】
図1には、本発明が適用され得る、動画を処理するための方法又は動画を処理するための装置の実施例の例示的なシステムアーキテクチャ100が示されている。
【0025】
図1に示すように、システムアーキテクチャ100は、端末装置101、102、103、ネットワーク104およびサーバ105を含むことができる。ネットワーク104は、端末装置101、102、103とサーバ105との間に通信リンクの媒体を提供するために使用される。ネットワーク104は、例えば有線、無線通信リンク、または光ファイバケーブルなどの様々な接続タイプを含むことができる。
【0026】
ユーザは、端末装置101、102、103を使用してネットワーク104を介してサーバ105とインタラクティブすることにより、メッセージなどを送受信することができる。端末装置101、102、103には、例えばウェブブラウザアプリケーション、動画プレーヤ、検索アプリケーション、即時通信ツール、メールクライアント、社交プラットフォームソフトウェアなどの様々なクライアントアプリケーションがインストールされることができる。
【0027】
端末装置101、102、103は、ハードウェアでもソフトウェアでもよい。端末装置101、102、103がハードウェアである場合、ディスプレイを備え、ウェブページの閲覧をサポートする様々な電子機器であってもよく、スマートフォン、タブレット、電子書籍リーダ、MP3プレーヤ(Moving Picture Experts Group Audio Layer III、エムペグオーディオレイヤー3)、MP4プレーヤ(Moving Picture Experts Group Audio Layer IV、エムペグオーディオレイヤー4)、ラップトップパソコン、デスクトップコンピュータなどを含むがこれらに限定されない。端末装置101、102、103がソフトウェアである場合、上記に挙げられた電子機器にインストールされることができる。それは、複数のソフトウェアまたはソフトウェアモジュール(例えば分散型サービスを提供する)として実現されてもよく、単一のソフトウェアまたはソフトウェアモジュールとして実現されてもよい。ここで、具体的に限定しない。
【0028】
サーバ105は、様々なサービスを提供するサーバであってもよく、例えば、端末装置101、102、103に標示された動画を処理する動画処理サーバである。動画処理サーバは、受信したトランスコーディング待ち動画などのデータに対し解析などの処理を行い、処理結果(例えば、トランスコーディングされた動画セグメント)を端末装置にフィードバックしてもよい。
【0029】
なお、サーバは、ハードウェアでもソフトウェアでもよい。サーバがハードウェアである場合、複数のサーバからなる分散型サーバクラスタとして実現されてもよく、単一のサーバとして実現されてもよい。サーバがソフトウェアである場合、複数のソフトウェアまたはソフトウェアモジュール(例えば分散型サービスを提供するための複数のソフトウェアまたはソフトウェアモジュール)として実現されてもよく、単一のソフトウェアまたはソフトウェアモジュールとして実現されてもよい。ここで、具体的に限定しない。
【0030】
なお、本発明の実施例に係る動画を処理するための方法は、一般的に、サーバ105によって実行される。それに対応して、動画を処理するための装置は、一般的に、サーバ105に配置される。
【0031】
図1の端末装置、ネットワーク、およびサーバの数は単なる例示であることを理解すべきである。必要に応じて、任意の数の端末装置、ネットワーク、およびサーバを備えることができる。
【0032】
続けて図2を参照すると、本発明による動画を処理するための方法の一実施例のフロー200が示されている。当該動画を処理するための方法は、以下のステップを含む。
【0033】
ステップ201において、処理待ちの動画を取得し、動画をシーンに応じて少なくとも1つの動画セグメントに区分する。
【0034】
本実施例において、電子機器(例えば、図1に示されるサーバ)で動画を処理するための方法を実行し、有線接続または無線接続によって処理待ち(すなわち、トランスコーディング待ち)の動画を取得し、処理待ちの動画をシーンに応じて少なくとも1つの動画セグメントに区分することができる。シーンに基づいてセグメント化する方法には多くの公知の技術があり、例えば、一つの指標としてフレーム間標準差分、平均二乗差分などを用いて、一つの閾値を固定し、一つの閾値より大きい場合には一つのシーンの分割の境界とすることができる。いわゆる一つのシーンとは、一つのシーン内でこのシーンは連続的に変換された一つのシーンであると考えられ、複雑さは比較的に一致していると考えられている。
【0035】
ステップ202において、少なくとも1つの動画セグメントにおける動画セグメントに対し、当該動画セグメントの特徴を抽出する。
【0036】
本実施例において、シーンをセグメント化トランスコーディングの基本単位として、このシーン内の動画をデコードし、動画の時間領域特徴または周波数領域特徴を抽出する。これらの特徴は、隣接するフレーム間のmotion(動き)情報、VIF(visual information fidelity、視覚情報忠実度)、DLM(detail loss measure、詳細損失測定)などを含むことができる。
【0037】
動画の特徴に基づいて動画の複雑度因子を確定することによって動画を分類することができる。各シーンのセグメント化は、与えられた一定品質の値に従ってCRFのトランスコーディングを行い、トランスコーディングした後、トランスコーディングされたすべてのフレームの各ピクセルの占有するビット数BPP(bits per pixel、1ピクセルあたりのビット数、すなわちピクセル深度)を統計し、次にBPPの値から特定の数学演算(例えばLog10)を行って、この値を動画の複雑度係数として一定の範囲内に収める。一つの動画におけるすべての動画セグメントの動画複雑度係数の平均値を平均複雑度係数として統計し、次に各動画セグメントの複雑度因子を算出する:
【0038】
複雑度因子=複雑度係数/(平均複雑度係数)。
【0039】
ステップ203において、特徴および目標動画品質を予め訓練されたエンコードパラメータ予測モデルに入力して、当該動画セグメントのエンコードパラメータを取得する。
【0040】
本実施例において、エンコードパラメータ予測モデルはディープニューラルネットワーク予測器とすることができる。エンコードパラメータ予測モデルは、動画セグメントの特徴と目標動画品質におけるエンコードパラメータとの対応関係を表すために使用される。具体的に、例として、エンコードパラメータ予測モデルは、技術者が多くの特徴および異なる動画品質におけるエンコードパラメータに対する統計に基づいて事前に作成したもので、そこに多くの特徴と異なる動画品質におけるエンコードパラメータとの対応関係を表すための対応関係表が記憶されてもよく、また、技術者が大量のデータに対する統計に基づいて事前設定され上記電子機器に記憶されている、異なる動画品質におけるエンコードパラメータの1つまたは複数の値を回帰させ、得られた回帰曲線であってもよい。動画の特徴から確定された複雑度因子に基づいて分類し、異なる回帰曲線を照会することができ、各回帰曲線は、一つの複雑度因子の動画の異なる動画品質におけるエンコードパラメータを表す。エンコードパラメータは、ビットレート、解像度、CRFなどを含むことができる。
【0041】
動画の品質は、PSNR (Peak Signal to Noise Ratio、ピーク信号対雑音比)、VMAF (Visual Multimethod Assessment Fusion)、MOS (Mean Opinion Score、平均オピニオン値) によって表すことができる。目標動画品質とは、ユーザが所望する動画品質を指す。
【0042】
ステップ204において、少なくとも1つの動画セグメントにおける動画セグメントに対応するエンコードパラメータに基づいて動画をエンコード処理し、エンコードされた動画を生成する。
【0043】
本実施例において、異なる動画セグメントについて、異なるエンコード方式を採用し、各動画セグメントについて、対応するエンコード方式でそれぞれにエンコードした後に、完全なビデオに結合される。
【0044】
本実施例のいくつかの選択可能な実施形態において、当該方法は、エンコードされた動画の動画品質を確定することを含む。確定された動画品質は目標動画品質と一致しないことに応答して、所定の情報を出力する。エンコードパラメータ予測モデルの不正確さによる不良結果を防止するために、予測されたエンコードパラメータを検証する。所定の情報は、エンコードされた動画品質が目標動画品質に達していないことを示すための情報であってもよい。
【0045】
続けて図3を参照すると、図3は、本実施例に係る動画を処理するための方法の一適用状況の概略図である。図3の適用状況では、まず、サーバ301は端末装置302から送信されたトランスコーディング待ち動画303を取得し、トランスコーディング待ち動画303をシーンに応じて2つのトランスコーディング待ち動画セグメント3031および3032に区分することができる。次に、トランスコーディング待ち動画セグメント3031およびトランスコーディング待ち動画セグメント3032に対し、以下のステップを実行することができ、すなわち、トランスコーディング待ち動画セグメント3031とトランスコーディング待ち動画セグメント3032の特徴を確定する。生成された特徴をそれぞれ予め訓練されたエンコードパラメータ予測モデルに入力する同時に、目標動画品質を入力して、目標動画品質におけるトランスコーディング待ち動画セグメント3031の最適エンコードパラメータおよび目標動画品質におけるトランスコーディング待ち動画セグメント3032の最適エンコードパラメータが得られる。次に、得られたエンコードパラメータに基づいて、サーバ301は、トランスコーディング待ち動画セグメント3031のトランスコーディング用ビットレート304とトランスコーディング待ち動画セグメント3032のトランスコーディング用ビットレート305を確定することができる。最後に、サーバ301は、確定されたトランスコーディング用ビットレート304、305に基づいて、トランスコーディング待ち動画セグメント3031および3032をそれぞれトランスコーディングし、トランスコーディングされた動画セグメント306および307を生成することができる。そして、動画セグメント306および307をトランスコーディングされた動画308に合併して、端末装置302に返す。
【0046】
本発明の上記実施例に係る方法は、シーンに応じてトランスコーディング待ちの動画を動画セグメントに区分してから、それぞれ予め訓練されたエンコードパラメータ予測モデルに入力することによって、異なる動画セグメントのエンコードパラメータを得る。次に、各動画セグメントについて、それぞれのエンコードパラメータに基づいてエンコードした後、トランスコーディングされた動画に合併する。コンテンツの複雑度に基づいてエンコードパラメータの設定を行い、エンコードの圧縮効率を高め、動画品質を向上させる目的を実現する。
【0047】
さらに図4を参照すると、動画を処理するための方法の別の一実施例のフロー400が示されている。当該動画を処理するための方法のフロー400は、以下のステップを含む。
【0048】
ステップ401において、サンプル動画セットを取得し、サンプル動画セットにおけるサンプル動画のエンコードパラメータと動画品質を標示する。
【0049】
本実施例において、電子機器(例えば、図1に示されるサーバ)で動画を処理するための方法を実行し、有線接続または無線接続によって第三者サーバからサンプル動画セットを取得することができる。サンプル動画は、指定されたテストシーケンスであってもよく、各テストシーケンスは、異なる空間複雑度(SI、Spatial perceptual Information)および時間複雑度(TI、Temporal perceptual Information)を特徴付ける。TI、SIの計算方法は国際標準ITU-T P.910で提案されている。
【0050】
サンプル動画セットの構築は、開放されたデータセットによるものであってもよく、実際のオンラインサンプル動画セットによるものであってもよい。これらのデータセットは様々な異なるカテゴリに分類され、または、各動画は独自の複雑度を持っている。同じ空間複雑度および時間複雑度を持つ動画は、動画エンコードアルゴリズムによって圧縮された動画と同一のエンコード複雑度を持つと考えられる。マニュアル標示または自動標示でサンプル動画セットにおけるサンプル動画のエンコードパラメータと動画品質を標示することができる。
【0051】
本実施例のいくつかの選択可能な実施形態において、サンプル動画セットにおけるサンプル動画のエンコードパラメータと動画品質を標示することは、サンプル動画セットにおけるサンプル動画に対し、所定の一定品質の値に基づいて当該サンプル動画をエンコードし、エンコードプロセスにおけるエンコードパラメータ、動画品質を標示することを含む。同じ複雑度(時間、空間)の動画については、同じエンコード特性を持ち、例えば、同じCRF(例えばCRF=23)でエンコードされた動画は同じビットレートを持ち、同時に同じ動画品質を持つ可能性もある。
【0052】
CRF = 8、10、12、…49これらの離散的な値をそれぞれ採用して、サンプル動画セットにおけるサンプル動画をエンコードしてから、エンコード生成ビットレートのビットレート(bps)、動画品質を統計する(例えば、PSNR、VMAFまたはMOS)。このようにして、すべてのサンプル動画に対する標示作業が実現される。SIやTIも標示可能である。
【0053】
ステップ402において、サンプル動画セットにおけるサンプル動画に対し、当該サンプル動画の特徴を抽出し、当該サンプル動画の特徴に基づいて、当該サンプル動画の複雑度因子を確定する。
【0054】
本実施例において、サンプル動画セットにおける各サンプル動画に対し、このサンプル動画をデコードし、動画の時間領域特徴または周波数領域特徴を抽出する。これらの特徴は、隣接するフレーム間のmotion(動き)情報、VIF(visual information fidelity、視覚情報忠実度)、DLM(detail loss measure、詳細損失測定)などを含むことができる。
【0055】
動画の特徴に基づいて動画の複雑度因子を確定することによって動画を分類することができる。各シーンのセグメント化は、与えられた一定品質の値に従ってCRFのトランスコーディングを行い、トランスコーディングした後、トランスコーディングされたすべてのフレームの各ピクセルの占有するビット数BPP(bits per pixel、ピクセル深度)を統計し、次にBPPの値から特定の数学演算(例えばLog10)を行って、この値を動画の複雑度係数として一定の範囲内に収める。一つの動画におけるすべての動画セグメントの動画複雑度の平均値を平均複雑度係数として統計し、次に各動画セグメントの複雑度因子を算出する:
【0056】
複雑度因子=複雑度係数/(平均複雑度係数)。
【0057】
ステップ403において、複雑度因子に基づいて、サンプル動画セットにおけるサンプル動画を少なくとも1つのカテゴリに分類する。
【0058】
本実施例において、複雑度因子が同じサンプル動画を1つのカテゴリに分類する。次に、各カテゴリのサンプル動画の動画品質とエンコードパラメータに対し、回帰解析を行うことによって、回帰曲線が確定される。
【0059】
ステップ404において、少なくとも1つのカテゴリにおけるカテゴリに対し、当該カテゴリに属するサンプル動画のエンコードパラメータと動画品質を回帰させ、エンコードパラメータと動画品質との関係を得る。
【0060】
本実施例において、従来の回帰方式を用いて曲線フィッティングを行うことによって、エンコードパラメータと動画品質との関係曲線を得ることができる。図5a、図5bに示したように、右側は異なる動画コンテンツ(BQ-1080、BI-1080などは異なる動画シーケンスを表す)を標示し、異なる動画コンテンツは異なる複雑度因子を有し、各複雑度因子は1つの曲線に対応する。横座標はエンコードパラメータ(CRFまたはビットレート(bit rate)であり、縦座標は動画品質(VMAF)である。
【0061】
図4から分かるように、図2に対応する実施例と比較して、本実施例における動画を処理するための方法のフロー400には、エンコードパラメータ予測モデルを訓練するステップが示されている。したがって、本実施例で説明した態様は、より多くの種類の動画複雑度のビデオに関するデータを導入することができる。これにより、より包括的な動画エンコードパラメータ予測が実現される。
【0062】
さらに図6を参照し、上記の各図面に示す方法の実現として、本発明は動画を処理するための装置の一実施例を提供する。当該装置の実施例は、図2に示す方法の実施例に対応し、具体的に様々な電子機器に適用できる。
【0063】
図6に示すように、本実施例に係る動画を処理するための装置600は、区分ユニット601と、抽出ユニット602と、入力ユニット603と、処理ユニット604とを含む。区分ユニット601は、処理待ちの動画を取得し、動画をシーンに応じて少なくとも1つの動画セグメントに区分するように構成される。抽出ユニット602は、少なくとも1つの動画セグメントにおける動画セグメントに対し、当該動画セグメントの特徴を抽出するように構成される。入力ユニット603は、特徴および目標動画品質を予め訓練された動画セグメントの特徴と目標動画品質におけるエンコードパラメータとの対応関係を表すために使用されるエンコードパラメータ予測モデルに入力して、当該動画セグメントのエンコードパラメータを取得するように構成される。処理ユニット604は、少なくとも1つの動画セグメントにおける動画セグメントに対応するエンコードパラメータに基づいて動画をエンコード処理し、エンコードされた動画を生成するように構成される。
【0064】
本実施例において、動画を処理するための装置600の区分ユニット601、抽出ユニット602、入力ユニット603、処理ユニット604の具体的な処理について、図2の対応する実施例のステップ201、ステップ202、ステップ203、ステップ204を参照することができる。
【0065】
本実施例のいくつかの選択可能な実施形態において、装置600は、エンコードされた動画の動画品質を確定し、確定された動画品質は前記目標動画品質と一致しないことに応答して、所定の情報を出力するように構成された検証ユニット(図示せず)をさらに含む。
【0066】
本実施例のいくつかの選択可能な実施形態において、抽出ユニット602は、さらに、当該動画セグメントをデコードし、当該動画セグメントの時間領域特徴および/または周波数領域特徴を抽出するように構成される。
【0067】
本実施例のいくつかの選択可能な実施形態において、装置600は訓練ユニット(図示せず)をさらに含み、訓練ユニットは、サンプル動画セットを取得し、サンプル動画セットにおけるサンプル動画のエンコードパラメータと動画品質を標示し、サンプル動画セットにおけるサンプル動画に対し、当該サンプル動画の特徴を抽出し、当該サンプル動画の特徴に基づいて、当該サンプル動画の複雑度因子を確定し、複雑度因子に基づいて、サンプル動画セットにおけるサンプル動画を少なくとも1つのカテゴリに分類し、少なくとも1つのカテゴリにおけるカテゴリに対し、当該カテゴリに属するサンプル動画のエンコードパラメータと動画品質を回帰させ、エンコードパラメータと動画品質との関係曲線を得るように構成される。
【0068】
本実施例のいくつかの選択可能な実施形態において、訓練ユニットは、さらに、サンプル動画セットにおけるサンプル動画に対し、所定の一定品質の値に基づいて当該サンプル動画をエンコードし、エンコードプロセスにおけるエンコードパラメータ、動画品質を標示するように構成される。
【0069】
本実施例のいくつかの選択可能な実施形態において、複雑度因子は、エンコードされたサンプル動画のピクセル深度に関連する。
【0070】
以下、図7には、本発明の実施例を実現するための電子機器(例えば図1に示したサーバ)のコンピュータシステム700の概略構造図が示されている。図7に示した電子機器は一例であり、本発明の実施例の機能と使用範囲を限定するものではない。
【0071】
図7に示すように、コンピュータシステム700は、読み出し専用メモリ(ROM)702に記憶されているプログラムまたは記憶部708からランダムアクセスメモリ(RAM)703にロードされたプログラムに従って各種の適切な動作と処理を行うことができる中央処理装置(CPU)701を含む。RAM703には、システム700の操作に必要な様々なプログラムとデータが記憶されている。CPU701、ROM702、およびRAM703は、バス704によって相互に接続されている。入力/出力(I/O)インターフェース705もバス704に接続されている。
【0072】
I/Oインターフェース705には、キーボード、マウスなどを含む入力部706と、陰極線管(CRT)、液晶ディスプレイ(LCD)、スピーカなどを含む出力部707と、ハードディスクなどを含む記憶部708と、LANカード、デモジュレータなどのネットワークインターフェースカードを含む通信部709とが接続されている。通信部709は、インターネットのようなネットワークを介して通信処理を行う。ドライバ710も必要に応じてI/Oインターフェース705に接続されている。ディスク、光ディスク、磁気ディスク、半導体メモリなどの着脱可能な媒体711は、必要に応じてドライバ710に取り付けられることにより、そこから読み出されるコンピュータプログラムが必要に応じて記憶部708にインストールされる。
【0073】
特に、本発明の実施例によると、上記のフローチャートを参照して説明されたプロセスは、コンピュータソフトウェアのプログラムとして実現されることができる。例えば、本発明の実施例は、コンピュータ可読媒体に担持されたコンピュータプログラムを含むコンピュータプログラム製品を含み、当該コンピュータプログラムは、フローチャートに示された方法を実行するためのプログラムコードを含む。このような実施例では、このコンピュータプログラムは、通信部709を介してネットワークからダウンロードされてインストールされ、および/または着脱可能な媒体711からインストールされることができる。このコンピュータプログラムが中央処理装置(CPU)701によって実行されるときに、本発明のシステムで限定された上記の機能を実行する。なお、本発明に示したコンピュータ可読媒体は、コンピュータ可読信号媒体、あるいはコンピュータ可読記憶媒体、または上記の両方の任意の組合せであってもよい。コンピュータ可読記憶媒体は、例えば、電気、磁気、光、電磁気、赤外線、あるいは半導体のシステム、装置またはデバイス、あるいは上記の任意の組合せであってもよいが、これらに限らない。コンピュータ可読記憶媒体のより具体的な例には、1本以上のワイヤによる電気的接続、携帯型コンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROMまたはフラッシュメモリ)、光ファイバ、コンパクトディスク読み取り専用メモリ(CD-ROM)、光記憶装置、磁気記憶装置、または上記の任意の組み合わせが含まれるが、これらに限らない。本発明では、コンピュータ可読記憶媒体は、プログラムを含むかまたは記憶する任意の有形の媒体であることができ、このプログラムは、指令実行システム、装置またはデバイスによって使用され、またはそれらと組み合わせて使用されることができる。本発明では、コンピュータが読み取り可能な信号媒体は、コンピュータが読み取り可能なプログラムコードを担持した、ベースバンド内でまたは搬送波の一部として伝播されるデータ信号を含んでもよい。このような伝播されたデータ信号は、多種の形式を採用でき、電磁気信号、光信号、または上記の任意の適切な組み合わせを含むが、これらに限らない。コンピュータが読み取り可能な信号媒体は、コンピュータ可読記憶媒体以外のいかなるコンピュータ可読媒体であってもよく、このコンピュータ可読媒体は、指令実行システム、装置またはデバイスによって使用され、またはそれらと組み合わせて使用されるためのプログラムを送信、伝播または伝送することができる。コンピュータ可読媒体に含まれるプログラムコードは、任意の適切な媒体で伝送されることができ、無線、ワイヤ、光ファイバケーブル、RFなど、または上記の任意の適切な組み合わせを含むが、これらに限らない。
【0074】
本発明の操作を実行するためのコンピュータプログラムコードを、1以上のプログラミング言語またはそれらの組み合わせで書くことができ、前記プログラミング言語には、Java(登録商標)、Smalltalk、C ++などのオブジェクト指向プログラミング言語を含み、さらに「C」言語または同様のプログラミング言語などの従来の手続き型プログラミング言語も含まれる。プログラムコードは、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上、1つの単独のソフトウェアパッケージとして、部分的にユーザのコンピュータ上かつ部分的にリモートコンピュータ上で、あるいは完全に遠隔コンピュータまたはサーバ上で実行されることができる。遠隔コンピュータに関する場合には、遠隔コンピュータは、ローカルエリアネットワーク(LAN)または広域ネットワーク(WAN)を含む任意の種類のネットワークを介してユーザのコンピュータに接続されることができ、または、外部のコンピュータに接続されることができる(例えばインターネットサービスプロバイダを利用してインターネットを介して接続する)。
【0075】
図の中のフローチャートおよびブロック図には、本発明の様々な実施例によるシステム、方法とコンピュータプログラム製品の実現可能なアーキテクチャ、機能、および操作が示されている。この点で、フローチャート又はブロック図の各ブロックは、1つのモジュール、プログラミングのセグメント、またはコードの一部を代表でき、このモジュール、プログラミングのセグメント、またはコードの一部は、所定のロジック機能を実現するための1つ以上の実行可能指令を含む。また、いくつかの代替の実施例では、ブロックに示されている機能は、図面に示された順序と異なる順序で発生してもよいことに留意されたい。例えば、連続して示す2つのブロックは実際に並行して実行されてもよく、それらは係る機能に応じて時に逆の順序で実行されてもよい。ブロック図および/またはフローチャートの各ブロック、およびブロック図および/またはフローチャートのブロックの組み合わせは、特定の機能または操作を実行する専用のハードウェアによるシステムによって実現されてもよく、または専用ハードウェアとコンピュータ指令の組み合わせによって実現されてもよいことにも留意されたい。
【0076】
本発明の実施例に係るユニットは、ソフトウェアによって実現されてもよく、ハードウェアによって実現されてもよい。説明されたユニットは、プロセッサに設置されてもよく、例えば、「区分ユニットと、入力ユニットと、処理ユニットとを含むプロセッサである」と記載してもよい。ここで、これらのユニットの名は、ある場合にはそのユニット自体を限定しないで、例えば、区分ユニットを「処理待ちの動画を取得し、動画をシーンに応じて少なくとも1つの動画セグメントに区分するユニット」と記載してもよい。
【0077】
別の側面において、本発明は、コンピュータ可読媒体をさらに提供し、このコンピュータ可読媒体は、上記の実施形例で説明された装置に含まれてもよく、個別に存在しこの装置に組み込まれなくてもよい。上記のコンピュータ可読媒体は、1つ以上のプログラムを担持し、上記の1つ以上のプログラムが一つのこの電子機器によって実行されたとき、当該装置は、処理待ちの動画を取得し、動画をシーンに応じて少なくとも1つの動画セグメントに区分し、少なくとも1つの動画セグメントにおける動画セグメントに対し、当該動画セグメントの特徴を抽出し、特徴および目標動画品質を予め訓練された動画セグメントの特徴と目標動画品質におけるエンコードパラメータとの対応関係を表すために使用されるエンコードパラメータ予測モデルに入力して、当該動画セグメントのエンコードパラメータを取得し、少なくとも1つの動画セグメントにおける動画セグメントに対応するエンコードパラメータに基づいて動画をエンコード処理し、エンコードされた動画を生成する。
【0078】
上記の説明は、本発明の好ましい実施例および応用された技術の原理の説明にすぎない。本発明に係る発明の範囲が、上記の技術的特徴を組み合わせて得られた技術案に限定されず、同時に上記の発明の概念から逸脱しない場合に、上記の技術的特徴またはこれと同等の技術的特徴を任意に組み合わせて得られた他の技術案を含むべきであることを当業者は理解すべきである。例えば、上述の特徴が本発明において開示されているもの(しかしこれに限らず)と類似した機能を有する技術的特徴と相互に入れ替わって形成された技術案が挙げられる。
図1
図2
図3
図4
図5a
図5b
図6
図7