テレビ電話のための品質メトリックバイアス関心領域コーディング
【課題】テレビ電話(VT)のための関心領域(ROI)コーディングのための技術を開示する。
【解決手段】ROIビデオのための品質メトリックの発生のための技術を含む。これは、エンコードされたビデオシーケンスの品質を評価する際にROIにおけるユーザーの関心の度合い、ROIビデオフィデリティー、およびROI知覚品質を共同で考察する。品質メトリックは、ROIコーディングをバイアスするために、特に、ビデオフレームのROIエリアと非ROIエリア間のコーディングビットの割り当てのために使用されてもよい。
【解決手段】ROIビデオのための品質メトリックの発生のための技術を含む。これは、エンコードされたビデオシーケンスの品質を評価する際にROIにおけるユーザーの関心の度合い、ROIビデオフィデリティー、およびROI知覚品質を共同で考察する。品質メトリックは、ROIコーディングをバイアスするために、特に、ビデオフレームのROIエリアと非ROIエリア間のコーディングビットの割り当てのために使用されてもよい。
【発明の詳細な説明】
【関連出願】
【0001】
この出願は2005年3月1日に出願された米国仮出願第60/658,008の利益を主張する。
【技術分野】
【0002】
この開示はデジタルビデオエンコーディングに関し、特に、ビデオ電話(VT)アプリケーションのための関心領域(ROI)をエンコードする技術に関する。
【背景技術】
【0003】
デジタルビデオシーケンスをエンコードするために多数の異なるビデオエンコーディング規格が確立された。例えば、ムービングピクチャーイクスパーツグループ(MPEG)は、MPEG−1、MPEG−2およびMPEG−4を含む多数の規格を開発した。他の例は国際電気通信連合(ITU)H.263規格、および新生のITUH.264規格を含む。これらのビデオエンコーディング規格は一般に、圧縮された方法でデータをエンコードすることによりビデオシーケンスの改良された送信効率をサポートする。
【0004】
ビデオ電話(VT)は、ユーザーがビデオおよびオーディオ情報を共有し、テレビ会議のようなアプリケーションをサポートすることを可能にする。例示テレビ電話規格は、セッションイニシエーションプロトコル(SIP)、ITUH.323およびITUH.324規格により定義された規格を含む。VTシステムにおいて、ユーザーはビデオ情報を送信および受信してもよいし、ビデオ情報を受信のみしてもよいし、ビデオ情報を送信のみしてもよい。受信者は、一般にビデオ情報が送信者から送信されるフォームで受信されたビデオ情報を見る。
【0005】
ビデオ情報の選択された部分の優先的エンコーディングが提案された。例えば、送信者は、受信者に送信するためにより高い品質でエンコードされる関心領域(ROI)を指定してもよい。送信者は遠隔の受信者にROIを強調したいと思うかもしれない。送信者はビデオシーン内の他のオブジェクトに焦点を絞りたいと思うかもしれないけれども、ROIの典型的な例は人間の顔である。ROIの優先的エンコーディングを用いて、受信者は、非ROI領域よりもより明瞭にROIを見ることができる。
【発明の概要】
【0006】
この開示はテレビ電話(VT)のための関心領域(ROI)コーディングのための技術に向けられている。開示された技術は、ROIに割り当てるためのエンコーディングビットを節約するためにビデオフレームの非ROIエリアの適応スキッピングのための技術を含む。また、開示された技術は、ρ領域内のマクロブロック(MB)レベルにおける重み付けされたビットアロケーションモデルを用いてROIのビットのアロケーションのための技術を含む。さらに、開示された技術は、ROIビデオのための品質メトリック(metric)の発生のための技術を含む。これは、エンコードされたビデオシーケンスの品質を評価する際に、ROI、ROIビデオフィディリティー、およびROI知覚品質におけるユーザーの関心度を共同で検討する。
【0007】
非ROIスキッピング技術は、非ROI領域の画像品質を著しく劣化させずにROIの画像品質を高めるように機能する。特に、非ROIスキッピング技術は、ROIに割り当てるためにさらなるビットを供給するために非ROIビットを節約することができる。
【0008】
品質メトリックは、ビット割当技術にバイアスをかけ、エンコードされたビデオシーン内の主観的画像品質を強化するために適用されてもよい。ρ領域におけるビット割当は、強化された見栄えのためのROI量子化のより正確で一貫した制御を供給することができる。非ROIスキッピング、ρ領域ビット割当、及び品質メトリックは共同してまたは別個に使用して、ROIおよび非ROIエンコーディングの効率的な制御を得ることができる。
【0009】
一実施形態において、この開示は、先行するフレームのビデオフィデリティー、先行するフレームの知覚品質、および関心領域におけるユーザーの好みに基いて関心領域を含むエンコードされたビデオフレームのための品質メトリックを発生することを備えた方法を提供する。
【0010】
他の実施形態において、この開示は、関心領域を含むビデオフレームをエンコードするビデオエンコーダーと、先行するフレームのビデオフィデリティー、先行するフレームの知覚品質、および関心領域におけるユーザーの好みに基いてビデオフレームのための品質メトリックを発生する品質メトリック計算機とを備えた装置を提供する。
【0011】
さらなる実施形態において、この開示は、関心領域内のマクロブロックと、関心領域内に無いビデオフレームのエリア内のマクロブロックとの間のフレーム量と重み付けに基いて、ビデオフレーム内の関心領域の定義を得ることと、フレームに対して利用可能なエンコーディングビットの数を定義するフレーム量を得ることと、フレーム内のマクロブロックにロー領域値を割り当てることとを備えた方法を提供する。
【0012】
さらなる実施形態において、この開示は、ビデオフレーム内の関心領域の定義を発生する関心領域マッパーと、フレームに対して利用可能なエンコーディングビットの数を定義するフレーム量を発生するフレームレベルレートコントローラーと、関心領域内のマクロブロックと関心領域でないビデオフレームのエリア内のマクロブロックとの間のフレーム量と重み付けに基いてロー領域値をフレーム内のマクロブロックに割り当てるビットアロケーションモジュールとを備えた装置を提供する。
【0013】
他の実施形態において、この開示は、連続するフレームをフレームユニットにグループ化することと、フレームユニット内のそれぞれのフレーム内の関心領域をエンコードすることと、フレームユニット内のフレームの少なくとも1つのフレームに対してそれぞれの関心領域に無いエリアのエンコーディングをスキップすることとを備えた方法を提供する。
【0014】
さらなる実施形態において、この開示は、ビデオフレーム内の関心領域の定義を発生する関心領域マッパーと、ビデオフレームをエンコードするビデオエンコーダーと、グループ化する連続フレームをグループ化し、ビデオエンコーダーに、フレームユニット内のそれぞれのフレーム内の関心領域をエンコードするように命令し、ビデオエンコーダーに、フレームユニット内のフレームの少なくとも1つのフレームに対してそれぞれの関心領域内に無いエリアのエンコーディングをスキップするように命令するスキッピングモジュールとを備えた装置を提供する。
【0015】
ここに記載された技術は、ハードウエア、ソフトウエア、ファームウエアまたはそれらの任意の組み合わせで実施してもよい。ソフトウエアで実施されるなら、この技術は、実行されると、ここに記載した1つ以上の方法を実行する命令を含むプログラムコードを備えたコンピューター読み取り可能媒体により一部分実現してもよい。
【0016】
1つ以上の実施形態の詳細は、添付図面および以下の記述において述べられる。他の特徴、目的および利点は、詳細な説明と図面およびクレームから明らかになるであろう。
【図面の簡単な説明】
【0017】
【図1】図1はROIイネーブルビデオエンコーダー−デコーダー(CODECs)を内蔵するビデオエンコーディングおよびデコーディングシステムを図解するブロック図である。
【図2】図2は無線通信装置に関連したディスプレイ上に表示されたビデオシーン内のROIの定義を図解する図である。
【図3A】図3Aは図2に図解されたビデオシーンのROIおよび非ROIエリアを図解する図である。
【図3B】図3Bは図2に図解されたビデオシーンのROIおよび非ROIエリアを図解する図である。
【図4】図4は、非ROIスキッピングモジュール、ROIρ領域ビットアロケーションモジュール、およびROI重み計算機を有したROIイネーブルエンコーダーを内蔵するビデオ通信装置を図解するブロック図である。
【図5】図5はROI品質メトリック計算機を図解するブロック図である。
【図6】図6はROI品質メトリック計算のためのROIユーザーし好入力装置を内蔵する無線通信装置をさらに図解する図である。
【図7】図7はビデオエンコーダーにより適用されるコーディングパラメーターの最適化のためにビデオシーケンスを解析するためにROI品質メトリック計算機の使用を図解するブロック図である。
【図8】図8はビデオエンコーダーにより適用されるコーディングパラメーターの調節のためにエンコードされたビデオを解析するためにROI品質メトリック計算機の使用を図解するブロック図である。
【図9】図9はエンコードされたビデオのためのROI品質メトリック計算を図解するフロー図である。
【図10】図10はビデオシーケンスのためのROI品質メトリック計算を図解するフロー図である。
【図11】図11はρ領域ビットアロケーションを図解するフロー図である。
【図12】図12は重み付けされたビットアロケーションモデルおよび最適解を用いてエンコーディング技術の全体の知覚品質を比較するグラフである。
【図13】図13は非ROIスキッピングのための技術を図解するフロー図である。
【図14】図14は非ROIスキッピングをサポートするために連続するフレームをフレームユニットにグループ化することを図解する図である。
【図15】図15は非ROIスキッピングをサポートするために共通の非ROIエリアを有した連続するROIエリアのエンコーディングを図解する図である。
【図16】図16は、標準ビットアロケーション、重み付けされたビットアロケーション、およびユーザーし好係数α=0.9を有するバックグラウンドスキッピングを用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【図17】図17は標準ビットアロケーション、重み付けされたビットアロケーション、およびユーザーし好係数α=0.9を有したバックグラウンドスキッピングを用いてROIエンコーディング技術の全体のビデオフィディリティーを比較するグラフである。
【図18】図18は、標準ビットアロケーション、重み付けされたビットアロケーション、及びユーザーし好係数α=0.9を有したバックグラウンドスキッピングを用いてROIエンコーディング技術のROIビデオフィデリティーを比較するグラフである。
【図19】図19は標準ビットアロケーション、重み付けされたビットアロケーション、及びユーザーし好係数α=0.9を有したバックグラウンドスキッピングを用いてROIエンコーディング技術の非ROIビデオフィデリティーを比較するグラフである。
【図20】図20は標準ビットアロケーション、重み付けされたビットアロケーション、及びユーザーし好係数α=0.7を有するバックグラウンドスキッピングを用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【図21】図21は標準ビットアロケーション、重み付けされたビットアロケーション、およびユーザーし好係数α=0.7を有したバックグラウンドスキッピングを用いてROIエンコーディング技術の全体のビデオフィデリティーを比較するグラフである。
【図22】]図22は標準ビットアロケーション、重み付けされたビットアロケーション、及びユーザーし好係数α=0.5を有したバックグラウンドスキッピングを用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【図23】図23は標準ビットアロケーション、重み付けされたビットアロケーション、およびユーザーし好係数α=0.5を有したバックグラウンドスキッピングを用いてROIエンコーディング技術の全体のビデオフィデリティーを比較するグラフである。
【図24】図24は種々のユーザーし好係数値における標準フレームスキッピング及び非ROIスキッピングを用いてROIエンコーディング技術の知覚品質を比較するグラフである。
【図25】図25は非ROIスキッピングがオンおよびオフのときROIエンコーディング技術の知覚品質を比較するグラフである。
【図26】図26は例示ビデオシーケンスに対する非ROIスキッピングにより生じた歪みを図解するグラフである。
【図27】図27は非ROIスキッピングを用いて、非ROIスキッピングを用いないで、および適応非ROIスキッピングを用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【図28】図28はエンコーディングレートのレンジに対して例示ビデオシーケンスのための種々のビットアロケーション技術を用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【図29】図29は毎秒40キロビット(kps)のエンコーディングレートで、種々のビットアロケーション技術を用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【図30】図30は毎秒40キロビット(kps)のエンコーディングレートで種々のビットアロケーション技術を用いてROIエンコーディング技術の全体のビデオフィデリティーを比較するグラフである。
【図31】図31は毎秒40キロビット(kps)のエンコーディングレートで種々のビットアロケーション技術を用いてROIエンコーディング技術のROIビデオフィデリティーを比較するグラフである。
【図32】図32は毎秒40キロビット(kps)のエンコーディングレートで種々のビットアロケーション技術を用いてROIエンコーディング技術の非ROIビデオフィデリティーを比較するグラフである。
【図33】図33はエンコーディングレートのレンジに対して他の例示ビデオシーケンスのための種々のビットアロケーション技術を用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【発明を実施するための形態】
【0018】
図1はROIイネーブルビデオエンコーダー−デコーダー(CODECs)を内蔵するビデオエンコーディングおよびデコーディングシステム10を図解するブロック図である。図1に示されるように、システム10は第1のビデオ通信装置12と第2のビデオ通信装置14を含む。通信装置12、14は送信チャネル16により接続される。送信チャネル16は有線または無線通信システムであってもよい。システム10はテレビ電話のためのビデオ通信装置12、14間の双方向ビデオ送信をサポートする。装置12、14は実質的に対称な方法で動作してもよい。しかしながら、いくつかの実施形態において、一方または両方のビデオ通信装置12、14は、ROIイネーブルビデオストリーミングをサポートするために片方向通信だけのために構成されてもよい。
【0019】
ビデオ通信装置12の一方または両方は、ここに記載するように、テレビ電話(VT)のためのROIコーディングのための技術を適用するように構成されてもよい。ROIコーディング技術は、ROIへの割当のためのエンコーディングビットを節約するために非ROI領域の適応スキッピングと、ビデオブロックレベル、たとえばρ領域内のマクロブロック(MB)レベルで重み付けされたビットアロケーションモデルを用いてROIへのビットの割当と、ROIビデオのためのROIビデオ品質メトリックの発生を含む。これは、エンコードされたビデオシーケンスの品質を評価する際にROI、ROIビデオフィデリティー、ROI知覚品質におけるユーザーの関心度を共同で検討する。ρ(ロー)パラメーターは、MBのようなビデオブロック内のノンゼロAC係数の数を表す。ρ領域におけるレート制御はQP領域内のレート制御よりもより正確である傾向がある。非ROIスキッピング、ρ領域ビットアロケーション、および品質メトリックは、ROIおよび非ROIエンコーディングの効率的な制御を得るために共同でまたは別個に使用することができる。
【0020】
マクロブロックはフレームの一部を形成するビデオブロックである。
【0021】
MBのサイズは16×16ピクセルであってもよい。しかしながら、他のMBサイズが可能である。マクロブロックまたは他のビデオブロックはさまざまな異なるサイズを有していてもよいという理解とともに、マクロブロックは実例の目的のためにここに記載されるであろう。
【0022】
送受信両用のアプリケーションの場合、相互エンコーディング、デコーディング、マルチプレクシング(MUX)およびデマルチプレクシング(DEMUX)コンポーネントはチャネル16の反対端に設けてもよい。図1の例において、ビデオ通信装置12は、MUX/DEMUXコンポーネント18、ROI-イネーブルビデオCODEC20およびオーディオCODEC22を含む。同様に、ビデオ通信装置14は、MUX/DEMUXコンポーネント26、ROI-イネーブルビデオCODEC28およびオーディオCODEC30を含む。
【0023】
システム10は、セッションイニシエーテッドプロトコル(SIP)、ITU H.323規格、ITU H.324規格、または他の規格に従ってテレビ電話をサポートしてもよい。各ビデオCODEC20、28は、MPEG−2、MPEG−4、ITU H.263またはITU H.264のようなビデオ圧縮規格に従ってエンコードされたビデオデータを発生する。図1にさらに示されるように、ビデオCODECs20、28は、それぞれのオーディオCODECs22、30と統合してもよく、データストリームのオーディオ部分とビデオ部分を処理するために適当なMUX/DEMUXコンポーネント18、26を含む。オーディオ部分は音声または他のオーディオコンテンツを保持してもよい。MUX−DEMUXユニット18、26は、ITU H.223マルチプレクサプロトコル、またはユーザーデータグラムプロトコル(UDP)のような他のプロトコルに準拠していてもよい。
【0024】
各ROIイネーブルビデオCODEC20、28は、それぞれのビデオ通信装置12、14のローカルユーザーにより局所的に供給されるROI情報または他のビデオ通信装置12、14の遠隔ユーザーから遠隔的に供給されるROI情報を処理することができるようにしてもよい。例えば、ビデオ通信装置12のローカルユーザーは、ビデオ通信装置12により局所的に発生された「近端(near-end)」ビデオ内のROIを指定し、送信されたビデオの領域を装置14のリモートユーザーに強調してもよい。反対に、ビデオ通信装置12のローカルユーザーは、ビデオ通信装置14により遠隔的に発生された「遠端(far-end)」ビデオ内のROIを指定し、そのROIをリモートビデオ通信装置に通信してもよい。この場合、ビデオ通信装置12のユーザーは、例えば、ビデオ通信装置14から受信されたビデオ内のROIをより明瞭に見るために、ビデオ通信装置14によるROIの選択的エンコーディングを遠隔的に制御する。
【0025】
ビデオ通信装置12、14は、無線モバイル端末またはビデオストリーミング、テレビ電話または両方に適するように装備された優先端末として実施されてもよい。その目的のために、ビデオ通信装置12、14は、さらに適当な無線送信機、受信機、モデム、および無線通信をサポートするための処理電子機器を含んでいてもよい。無線モバイル端末の例は、モバイル無線電話、モバイルパーソナルデジタルアシスタンツ(PDAs)、モバイルコンピューター、または、無線通信能力およびビデオエンコーディングおよび/またはデコーディング能力を備えた他のモバイル装置を含む。有線端末の例は、デスクトップコンピューター、テレビ電話、ネットワーク装置、セットトップボックス、双方向テレビまたは同種のものを含む。どちらのビデオ通信装置12、14もビデオ情報を送信するように、ビデオ情報を受信するようにまたはビデオ情報を送受信するように構成されてもよい。
【0026】
テレビ電話アプリケーションの場合、装置12はビデオ送信能力およびビデオ受信能力の両方をサポートすることが一般的に望ましい。しかしながら、ストリーミングビデオアプリケーションもまた意図される。テレビ電話、特に無線通信によるテレビ電話において、極めて低いビットレートがしばしば要求されるので、帯域幅は、重視される。特に、通信チャネル16は制限された帯域幅を有していてもよく、チャネル16に対する品質ビデオシーケンスの効率的なリアルタイム送信を取り組みがいのあるものにさせる。例えば、通信チャネル16は、チャネル16における物理的制約により、または恐らくは通信チャネル16のプロバイダーにより課せられたサービスの質(QoS)制限または帯域幅割当制限により制限された帯域幅を有した無線通信リンクであってもよい。
【0027】
従って、ROIへのさらなるエンコーディングビットの選択的割当、より強いエラー保護、または他の優先的エンコーディングステップは、全体のエンコーディング効率を維持しながらビデオの一部分の画像品質を改良することができる。優先的エンコーディングの場合、さらなるビットをROIに割り当ててもよい。一方、ビデオシーン内のバックグラウンドのように、低減された数のビットを非ROI領域に割り当ててもよい。非ROIエリアはより一般的にROIの一部を形成しないビデオシーンの任意のエリアを含むけれども、非ROIエリアは「バックグラウンドエリア」と呼ばれるであろう。従って、非ROIとバックグラウンドという用語は、指定されたROI内に無いエリアを指すためにこの開示にわたって同義的に使用されてもよい。
【0028】
一般に、システム10はテレビ電話(VT)アプリケーションのための関心領域(ROI)処理のための技術を採用する。しかしながら、そのような技術はまた、上で示したようなビデオストリーミングアプリケーションに適用してもよい。実例の目的のために、各ビデオ通信装置12、14は、ビデオ情報の送信者および受信者の両方として動作することができ、それにより、VTセッションの全参加者として動作することができると仮定されるであろう。ビデオ通信装置12からビデオ通信装置14に送信されたビデオ情報の場合、ビデオ通信装置12は送信者装置であり、ビデオ通信装置14は受信者装置である。反対に、ビデオ通信装置14からビデオ通信装置12に送信されたビデオ情報の場合、ビデオ通信装置12が受信者装置であり、ビデオ通信装置14が送信者装置である。ここに記載される技術はまた、そのようなビデオを送信するのみまたは受信するのみの装置に適用可能である。ローカルビデオ通信装置12によりエンコードされ送信されるビデオ情報を論議するとき、ビデオ情報は、上述したように、「近端」ビデオと呼んでもよい。遠隔ビデオ通信装置によりエンコードされ、遠隔ビデオ通信装置から受信されたビデオ情報を議論するとき、ビデオ情報は「遠端」ビデオと呼んでもよい。
【0029】
開示された技術によれば、受信者装置として動作するとき、ビデオ通信装置12または14は、送信者装置から受信される遠端ビデオ情報のためのROI情報を定義する。この場合も先と同様に、送信者装置から受信されるビデオ情報は、通信チャネルの遠端に位置づけられる他の(送信者)装置から受信されるという意味では、「遠端」ビデオ情報と呼ばれるであろう。同様に、送信者装置から受信されるビデオ情報に対して定義されるROI情報は「遠端」ROI情報と呼ばれるであろう。遠端ROIは一般に、遠端ビデオの受信機に最も興味を起こさせる遠端ビデオ内の領域を指す。受信者装置は遠端ビデオ情報をデコードし、デコードされた遠端ビデオをディスプレイ装置を介してユーザーに提供する。ユーザーは遠端ビデオにより提供されるビデオシーン内のROIを選択する。あるいは、ROIは自動的に定義されてもよい。
【0030】
受信者装置は受信者装置におけるユーザーにより選択されたROIに基いて遠端ROI情報を発生し、遠端ROI情報を送信者装置に送信し、それにより送信者装置はそのような情報を使用することができる。遠端ROI情報は、ROI内に常駐するMBsの点から見るとROIを定義するROIマクロブロック(MB)マップのフォームをとってもよい。
【0031】
ROI MBマップは、ROI内にあるMBsに1のフラッグを立てても良く、ROI外部のMBsに0のフラッグを立ててもよく、ROIの(1)に含まれるMBsを容易に識別し、(0)から排除する。
【0032】
受信者装置により送信される遠端ROI情報を用いて、送信者装置は、優先的エンコーディングをビデオシーン内の対応するROIに適用する。特に、さらなるエンコーディングビットはROIに割り当てられてもよく、一方低減された量のエンコーディングビットは非ROI領域に割り当てられても良く、それによりROIの画像品質を改良する。このように、受信者装置は、送信者装置によって遠端ビデオ情報のROIエンコーディングを遠隔的に制御することができる。
【0033】
優先的エンコーディングは、優先的ビット割当またはROIエリア内の選択的量子化によりビデオシーンの非ROIエリアに対してよりもROIエリアに対してより高い品質のエンコーディングを適用する。優先的にエンコードされたROIは受信者装置のユーザーがオブジェクトまたは領域をより明瞭に見ることを可能にする。例えば、受信者装置のユーザーは、ビデオシーンのバックグラウンド領域よりも顔またはその他のオブジェクトをより明瞭に見ることを所望してもよい。
【0034】
送信者装置として動作するとき、ビデオ通信装置12または14もまた送信者装置により送信されるビデオ情報のためのROI情報を定義してもよい。この場合も先と同様に、送信者装置において発生されるビデオ情報は、通信チャネル近端で発生されるという意味では、「近端」ビデオと呼ばれるであろう。送信者装置により発生されるROI情報は、「近端」ROI情報と呼ばれるであろう。
【0035】
近端ROIは一般に、送信者が受信者に強調したい近端ビデオの領域を指す。それゆえ、ROIは、受信者装置によって遠端ROI情報として指定されてもよく、または、送信者装置によって近端ROI情報として使用されてもよい。送信者装置は近端ビデオをディスプレイ装置を介してユーザーに提供する。送信者装置に関連するユーザーは、近端ビデオにより提供されるビデオシーン内でROIを選択する。近端ビデオ内のROIが、例えば非ROIエリアに対してより高い品質エンコーディングで優先的にエンコードされるように、送信者装置は、ユーザーが選択したROIを用いて近端ビデオをエンコードする。
【0036】
送信者装置におけるローカルユーザーにより選択されるまたは定義される近端ROIは、送信者装置のユーザーがビデオシーン内の領域またはオブジェクトを強調することを可能にし、それにより、そのような領域またはオブジェクトを受信者装置ユーザーの注意に向ける。特に、送信者装置により選択された近端ROIは受信者装置に送信される必要はない。代わりに、送信者装置は選択された近端ROI情報を用いて、受信者装置に送信される前に、近端ビデオを局所的にエンコードする。しかしながら、いくつかの実施形態において、送信者装置は、より高い品質のエラー訂正またはポストプロセッシングのような優先的デコーディング技術のアプリケーションを可能にするために、受信者装置にROI情報を送信してもよい。
【0037】
ROI情報が送信者装置と受信者装置の両方により提供されるなら、送信者装置は、受信者装置からの受信された遠端ROI情報または局所的に発生された近端ROI情報を適用して近端ビデオをエンコードする。送信者装置と受信者装置により提供される近端ROI選択と遠端ROI選択との間にROI不一致が生じるかもしれない。そのような不一致は、ローカルユーザーによるアクティブ解像度または特定のアクセス権およびアクセスレベルに従う解像度のような解像度を要求してもよい。いずれにおいても、送信者装置は、送信者装置により局部的に提供されるまたは受信者装置により遠隔的に提供される近端ROI情報に基いてROIを優先的にエンコードする。
【0038】
ローカルユーザーかリモートユーザーにより指定されたROIを与えられると、この開示は一般的にROIエンコーディングのための技術に焦点を合わせる。特に、この開示は、ビデオシーン内のROIエリアと非ROIエリアとの間のビット割当に関して、ROIが優先的にエンコードされる方法を扱う。ROIビデオ品質メトリックはROIエリアと非ROIエリアとの間の重み付けされたビット割当をバイアスするために適用されてもよい。ビデオ品質メトリックは、ユーザーのし好の度合い、すなわちエンコードされたビデオシーケンスの品質を評価する際にROIにおける関心、ROIビデオフィデリティー、およびROI知覚品質を考慮する。重み付けされたビット割当はρ領域内に適用される。さらに、非ROI、または「バックグラウンド」スキッピングアルゴリズムは、ROIに割り当てるためのエンコーディングビットを節約するために適用されてもよい。
【0039】
図2は無線通信装置36に関連するディスプレイ34上に提示されるビデオシーン32内のROIの定義を図解する図である。図2の例において、ROIは長方形のROIまたは非長方形のROI40として描画される。非長方形のROI40は、円形または不規則な形状を有していてもよい。各ケースにおいて、ROI38またはROI40はビデオシーン32に提示される人の顔42を含む。図3Aおよび3Bは、図2に描画されたビデオシーン32のROIエリア38および非ROIエリア43を図解する図である。非ROIエリア、すなわち背景は、図3Bにおいて、シェーディングにより強調される。
【0040】
ROI38または40は、ユーザーにより手動で定義されてもよく、装置36により自動的に定義されてもよく、またはユーザーにより手動のROI描写および装置36により自動ROI定義の組み合わせを用いてもよい。長方形のROI38は、ユーザーにより選択されてもよい。非長方形のROI40は、ユーザーにより描画されてもよい。例えば、スタイラスペンまたはタッチスクリーンを用いて描画されてもよい。または、さまざまなオブジェクト検出またはセグメンテーション技術のいずれかを用いて装置36により自動的に選択されてもよい。VTアプリケーションの場合、ROI38または40は、テレビ会議における参加者の顔42を含むビデオシーンの一部分を含んでいてもよい。ROI38または40のサイズ、形状および位置は、固定であってもよいし、調節可能であってもよく、さまざまな方法で定義され、描画され、調節されてもよい。
【0041】
ROI38または40は、人の顔42のような、送信されたビデオシーン内の個々のオブジェクトをビデオ送信者が強調することを可能にする。反対に、ROI38または40は、ビデオ受信者が、受信したビデオシーン32内の所望のオブジェクトをより明瞭に見ることを可能にする。いずれの場合であっても、ROI38または40内の顔は、ビデオシーン32のバックグラウンド領域のような非ROIエリアに対してより高い画像品質でエンコードされる。このようにして、ユーザーは顔の表情、唇の動き、目の動き等をより明瞭に見ることができる。
【0042】
しかしながら、ROI38または40は、顔以外のオブジェクトを指定するために使用されてもよい。一般的に言えば、VTアプリケーション内のROIは非常に主観的であり得、ユーザー毎に異なってもよい。また、所望のROIはどのようにVTが使用されるかに依存する。一部の例では、テレビ会議とは対照的にオブジェクトを見て評価するために使用されてもよい。例えば、ユーザーは、プレゼンターの顔よりもむしろ方程式とか図を含むホワイトボードの一部に焦点を合わしたいと思うかもしれない。特に、プレゼンテーションがカメラから顔をそらしホワイトボードに向いているときはそうである。一部の例では、ビデオシーンは、2以上のROIを含んでいてもよい。これらは優先的エンコーディングのために指定される。
【0043】
図4はビデオ通信装置12に使用するためのROIイネーブルビデオエンコーディングシステム44を図解するブロック図である。図4に示されるように、システム44は、ROI重み計算機46、ρ領域ビット割当モジュール48、非ROI(すなわち、バックグラウンド)スキッピングモジュール50、ROIマクロブロック(MB)マッパー52、フレームレベルレートコントローラー54、ρ対量子化パラメーター(QP)マッパー56、ビデオエンコーダー58、および歪みアナライザー60を含む。図4において、MUX−DEMUXおよびオーディオコンポーネントは図を容易にするために省略されている。
【0044】
図4で描画されるさまざまなコンポーネントは、各モジュールに帰する機能性を含む機能モジュールまたはモノリシックモジュールとしてさまざまな方法で形成されてもよい。いずれにしても、ビデオエンコーディングシステム44のさまざまなコンポーネントは、ハードウエア、ソフトウエア、ファームウエアまたはそれらの組み合わせにおいて実現されてもよい。例えば、そのようなコンポーネントは、1つ以上のマイクロプロセッサーまたはデジタルシグナルプロセッサー(DSPs)、1つの以上の特定用途向け集積回路(ASICs)、1つ以上のフィールドプログラマブルゲートアレイ(FPGAs)、または他の等価な集積されたまたはディスクリートな論理回路上で実行するソフトウエアプロセスとして動作してもよい。
【0045】
図4の例において、ROI重み計算機46は、ビデオ通信装置12のローカルユーザーまたはビデオ通信装置14のリモートユーザーにより入力されたユーザーし好ファクターαを受信する。ユーザーし好αは、ROIのための知覚重要度ファクターである。これは、ROIのビジュアル品質の重要度が実際のユーザーの遠近感を形成することを表す。ユーザーし好αは、ユーザーがROI内のビジュアル品質を評価する度合いを定量化する。ユーザーがROIビジュアル品質を強く評価するなら、αは高くなるであろう。ROIのビジュアル品質がそれほど重要でないなら、αは低くなるであろう。し好αに基いて、ROI重み計算機46は、ビデオエンコーダー58によりエンコードされるビデオフレームの非ROIエリアとROIエリアとの間の重み付けされたビット割当をバイアスするためにROIρ領域ビット割当モジュール48に適用される重みのセットwiを発生する。重みwiはビデオフレーム内のマクロブロック(MBs)のような個々のビデオブロックに対して指定されてもよい。ROI重み計算機46は、ROIMBマッパー52からROIMBマップを受信し、それぞれの重みwiをROIMBマッパー52により識別されるROIおよび非ROIMBsに割り当てる。より高い重みwiを有するマクロブロックは、より高いコーディングビットの数を受信するであろう。
【0046】
ρ領域ビット割当モジュール48は、ROI重み計算機46から重み入力を受信し、非ROIバックグラウンドスキッピングモジュール50からスキッピングインディケーション(スキップオン/オフ)を受信し、ROIMBマッパー52からレートバジェットRBUDGETを受信し、ビデオエンコーダー58からエンコードされたMBsのための標準偏差σを受信する。標準偏差σは、動き検出の後に得られる実際の剰余の標準偏差であってもよいし、以前のフレームからの記憶された剰余統計であり得る。ROIMBマッパー52により提供されるROIMBマップは、指定されたROI内に含まれる所定のビデオフレーム内のMBsを識別する。ROIMBマップを用いて、ρ領域ビット割当モジュール48は、ROI MBsへの優先的ビット割当の目的のために、すなわち、ROI重み計算機46により供給される重みwiを用いて、非ROIMBsからROIMBsを区別する。ビット割当モジュール48は各MBのためのρパラメーターを発生する。ρパラメーターはMBにおけるノンゼロAC係数の数を表す。ρ領域のレート制御はQP領域におけるレート制御よりより正確である傾向がある。
【0047】
この開示の目的のために、ROIMBマップの発生のための適切なプロセスが利用可能であることを仮定される。例えば、ROIマッピングプロセスは、ROIを定義するユーザーからの手動入力に基いていてもよいし、または、例えば、顔の検出、顔のセグメンテーション、および受け入れ可能な精度を有した目標トラッキングのような一般的な技術を用いて、ROIの自動定義または検出に基いていてもよい。この開示において、図解の目的のために、頭または頭および肩のビデオシーンが考察される。しかしながら、ここに記載した技術は、人に加えてまたは人に代わるものとしてさまざまなオブジェクトを含むビデオシーケンスの他のタイプに適用されてもよい。
【0048】
フレームレベルレートコントローラー54は、ビデオシーケンス内の個々のフレームに対してビットの割当を発生する。特に、フレームレベルコントローラー54は、このフレーム内のMBsのすべて、すなわち、ROIMBsと非ROIMBsの両方をエンコードするために利用可能なビットの数を示す値RBUDGETを発生する。図4においてさらに示されるように、ρ領域ビット割当モジュール48は、非ROIバックグラウンドスキッピングモジュール50からのスキップ表示(スキップオン/オフ)を受信する。これは、現在のフレーム内のバックグラウンドがエンコードされるかまたはスキップされるかどうかを示す。バックグラウンドがスキップされるなら、ρ領域ビット割当モジュール48は、実際には、そうでなければ非ROIに割り当てられていたであろうビットを取り戻し、それらをROIをエンコードするために利用可能なビットのプールに再割当する。それゆえ、スキッピングが特定のフレームにおいてオンであるなら、ρ領域ビット割当モジュール48は、ROIに割り当てるためにRBUDGET内により多くのビットを有する。バックグラウンドが特定のフレームでスキップされるなら、以前にエンコードされたフレームからのバックグラウンドは、その場所に置き換えられる。あるいは、スキップされたバックグラウンドは補間により生成されてもよい。
【0049】
重みwi、ROIMBマップ、RBUDGET、スキップオン/オフ表示、および標準偏差σを用いて、ρ領域ビット割当モジュール48は各MBのρバジェット(budget)を示すρ領域出力を発生する。ρ領域出力はρ対QPマッパー56に適用される。これは、ρ値を各MBのための対応するQP値にマップする。フレーム内のMBsのためのQP値を用いて、ビデオエンコーダー58は、入力ビデオをエンコードしエンコードされたビデオを生成する。さらに、スキッピングモジュール50は、ビデオエンコーダーに、連続するフレームをフレームユニットにグループ化し、フレームのROIエリアをエンコードし、フレームユニット内のフレームの1つのための非ROIエリアのエンコーディングをスキップすることを命令するためにビデオエンコーダー58にスキップ表示(スキップオン/オフ)を供給する。先行するフレームユニットに関連する歪み値がしきい値未満ならスキッピングモジュール50がビデオエンコーダー58にフレームユニット内のフレームの1つのための非ROIエリアのエンコーディングをスキップすることを命令してもよいという意味においてスキッピングは適応できてもよい。このように、スキッピングモジュール50は、ビジュアル品質を維持するために歪みのレベルに基いて適応スキッピングを適用してもよい。
【0050】
入力ビデオは、ビデオ通信装置12と集積されるまたは動作可能に接続されるビデオカメラのようなビデオキャプチャー装置から得てもよい。例えば、いくつかの実施形態において、ビデオキャプチャー装置は携帯電話と一体化されいわゆるカメラ電話またはビデオ電話を形成してもよい。このように、ビデオキャプチャー装置40は、モバイルVTアプリケーションをサポートしてもよい。ビデオは、ビデオ通信装置12または14と一体化されてもよくまたは動作可能に接続されてもよい、液晶ディスプレイ(LCD)、プラズマスクリーン、等のようなディスプレイ装置を介して、局部的にビデオ通信装置12に、および送信するときにビデオ通信装置14の両方に提示されてもよい。
【0051】
歪みアナライザー60はオリジナル入力ビデオに対してエンコードされたビデオを解析する。例えば、歪みアナライザー60はオリジナル入力ビデオフレームFを再構成されたビデオフレームF’と比較する。歪みアナライザー60は、非ROIバックグラウンドスキッピングモジュール50に適用するために歪み値DNONROI_SKIPを発生する。歪み値DNONROI_SKIPは、次のビデオフレームの非ROIエリアがスキップされるべきか、スキップされるべきではないかを示す。従って、現在のフレームにおける適応非ROIスキッピングの場合、非ROIスキッピングモジュール50は一般的に、先行するフレームまたは2以上のフレームを含むフレームユニットに関連する歪み情報に依存してもよい。
【0052】
歪み値DNONROI_SKIPが所望のしきい値を超えるなら、非ROIバックグラウンドスキッピングモジュール50は、次のフレーム内の非ROIはスキップされるべきではないことを示す。この場合、ROIエリアおよび非ROIエリアは両方ともエンコードされる。しかしながら、歪み値が所望のしきい値未満なら、非ROIエリアは、歪みの過度のレベルを伴わずにスキップすることができる。この場合、以前のフレームに対してエンコードされた非ROIエリアは、現在のフレームにおいて使用される。記載されるように、非ROIスキッピングモジュール50は、連続するフレームをフレームユニットにグループ化してもよく、先行するユニット、すなわち、現在エンコードされているフレームに先行するフレームを含むフレームユニットのための歪み値DNONROI_SKIPに依存して、ビデオエンコーダー58にフレームの1つのための非ROIのエンコーディングをスキップするように命令してもよい。
【0053】
図5はこの開示の他の実施形態に従って、ROI品質メトリック計算機61を図解するブロック図である。図4のROI重み計算機46は、ROI品質メトリック計算機61の一部を形成してもよい。従って、ROI品質メトリック計算機46の1つの成果は、重みwiのセットであってもよい。これは、ユーザーし好ファクターα、並びにビデオフィデリティー、空間品質、および/または一時的な品質値に基いていてもよい。図5において示されるように、ROI品質メトリック計算機61は、ユーザーし好値αおよび1つ以上のビデオ歪み値を受信する。ビデオ歪み値は、ROI値および非ROI値に分割されてもよく、ビデオフィデリティー値DRF、DNF、空間品質値DRS、DNS、および一時的な品質値DRT、DNTを含んでいてもよい。DRFはROI内のビデオフィデリティーを表し、一方、DNFは、非ROI領域内のビデオフィデリティーを表す。DRSはROIエリア内の空間品質を表し、一方DNSは非ROIエリア内の空間品質を表す。DRTは、ROIエリア内の一時的な品質を表し、一方、DNTは非ROIエリア内の一時的な品質を表す。ROI品質メトリックは、エンコードされたビデオシーケンスの品質を評価する際に、共同でユーザーの関心、ビデオフィデリティーおよび知覚品質(空間、一時的または両方)を考察する。いくつかの実施形態において、より良い主観的ビジュアル品質を得るために、ρ領域ビット割当モジュール48により適用されるビット割当アルゴリズムをバイアスするために測定基準を用いてもよい。
【0054】
ROIビデオコーディングは広範囲に研究されたけれども、ROIビデオのための品質測定は、十分に詳細には、対処されなかった。ほとんどの品質測定技術は、ピーク信号対雑音比(PSNR)を歪み測定として使用し、ビデオフレームのROIおよび非ROI部分を評価する。ROIビデオ品質メトリックは、解析の目的のみならず、主観的なビジュアルの望ましい解決に向けた(例えば、図4のビット割当モジュールに適用された)重み付けされたビット割当技術をバイアスするための入力として有用である。一般に、成就したように、ROIビデオ品質の評価は、少なくとも3つのアスペクトを考察する。すなわち、ユーザーのROIビジュアル品質関心またはし好α、再構成されたビデオデータのビデオフィデリティー、および再構成されたビデオデータの知覚品質(空間、一時的または両方)である。
【0055】
ユーザーのし好αはビデオフレームのROI部分と非ROI部分への分類および関連する知覚重要度ファクターを直接決定する。テレビ電話アプリケーションにおいて、話し手の顔領域は、典型的なROIである。なぜならば、人間の顔の表現は非常に複雑であり、小さな変化が大量の情報を運ぶ可能性がある。ビデオフィデリティーファクターの場合、PSNRは良好な測定である。これは、オリジナルフレームと比較して、再構成されたビデオフレームの歪みの合計量を示す。再構成されたフレームは、エンコードされたビデオフレームをデコードすることにより生成されるのに対してオリジナルフレームは、エンコードする前のビデオフレームである。
【0056】
多くの場合において、ビデオフィデリティーは、ビデオコーディングのための最も重要な考察であろう。この場合、任意の改良は、より良い主観的なビジュアル品質を生じるかもしれない。しかしながら、これは常にそうだとは限らない。これは、いくつかの場合において知覚品質ファクターも考慮されなければならない理由である。知覚品質は、空間エラーと一時的エラーの両方を考慮する。空間エラーは、ブロッキングの存在(すなわち、ブロッキネス(blockiness))、リンギングアーチファクト、または両方を含んでいてもよい。一時的エラーは、一時的フリッカーの存在、すなわち、ビデオフレームのビジュアル品質が時間軸に沿って非均一に変換するときを含んでいてもよい。一時的なエラーは、ビデオシーケンスにおいて、不規則に変化する動きを生じる可能性がある。これは望ましくない。
【0057】
DRとDNRは、ROIと非ROIのピクセルあたりの正規化された歪みを示し、αは、ROI知覚重要度ファクターを示す。上で示した観点の中の関係がビデオ品質評価において線形関数に簡単化することができると仮定するなら、ビデオシーケンスの全体の歪みは以下のように表すことができる。
【数1】
【数2】
【0058】
は、ビデオシーケンス内のMフレーム内のi番目のオリジナルおよび再構成されたフレームである。βとγは、重みファクターである。DRとDNRはROIおよび非ROIのための合計歪みである。DRF、DRS、DRTは、フィデリティーにおけるROIの正規化されたエラー、空間知覚品質および一時的な知覚品質である。DNF、DNSおよびDNTは非ROIエリアのための対応するものである。値、α、βおよびγは0と1の間の実値が割り当てられなければならない。結果として生じる品質メトリックは、重み付けされたビット割り当てにおけるローパラメーターのための最適化問題を説明するための費用関数として使用することができ、またはROI処理における他の問題のために使用することができる。
【0059】
無線テレビ電話のような低ビットレートビデオアプリケーションにおいて、ブロッキング(すなわち、ブロッキネス(blockiness))アーチファクトは、空間知覚品質の主要な関心事である。この種のアーチファクトは量子化により生じる。この場合、ほとんどの高周波数係数は除去される、すなわち、ゼロに設定される。この結果得られる効果は、平坦化された画像ブロックは、ブロック境界を完全に顕著にさせるということである。極めて低ビットレートの場合において、DC係数のみがコード化されるであろう。これはデコードされた画像をピースのようなコンスタントブロックにさせる。この開示において、ROI空間品質値DRS(DNSに類似)は、正規化されたブロッキネス歪みとして定義される。これは次のように表してもよい。
【数3】
【0060】
知覚可能な不連続が存在するかどうかを見るためにブロック間の境界がチェックされる。ブロック境界にわたって強度スロープの平均2乗差の和をチェックする適切な不連続検出アプローチは、S. MinamiおよびA. Zakhor著の「変換コーディングにおけるブロッキング効果を除去するための最適アプローチ](An optimization approach for removing blocking effects in transform coding)IEEE Trans.ビデオ技術のための回路システムVol. 5, No. 2, pp.74-821995年4月に記載されている。その全体の内容は参照することによりここに組み込まれる。このアプローチの仮定は、ブロック境界の両側のスロープは同じでなければならず、スロープにおける突然の変化がおそらく量子化によるものであるということである。
【0061】
方程式(1)において、DRT(またはDNT)値は、ビデオシーケンスにおけるすべてのフレームのためのDRS(またはDNS)の分散に基いて[0,1]のレンジにおける割り当てられたスコアとして定義される。このように、ビデオフィデリティー、空間知覚品質、および一時的な知覚品質に関する表現は正規化され、重み付けされたパラメーターα、β、γによりブリッジされることが可能であり、制御可能なビデオ品質測定を形成する。これらの重み付けするパラメーターの選択は、それらの要件と期待値に基いてユーザー次第である。この場合も先と同様に、この測定は、お気に入りの主観的知覚に向けたビット割当プロセスをバイアスするために入力として有用かもしれない。従って、ユーザーは、ROIコーディングにおいて、よりビジュアルな満足のいく結果を得てもよい。
【0062】
図6はROI品質メトリック計算のためのROIユーザーし好入力装置62を組み込む無線通信装置36を図解する図である。図6において、無線通信装置36は一般的に図2に準拠するが、さらにユーザーのし好を捕らえるために入力装置62をさらに組み込む。これは、ビデオシーン32のROI部分と非ROI部分に割り当てられた関連重要度を指定する。図6の例において、入力装置62は、ユーザーの好みの度合いを示すためにスライダーバーの長手方向に沿って移動することができるスライダー64を有するスライダーバーの形態で示される。
【0063】
入力装置62を用いて、ユーザーは、例えば品質メトリック計算機61により、ダイナミックにROIビット割当に影響を及ぼすために、ユーザーのし好を選択的に調節することができる。ユーザーし好が変化するにつれて、ビデオフレームのROI部分と非ROI部分の間のビット割当は変化してもよい。図6において水平スライダーバーが描画されるけれども、入力装置62は、垂直スライダーバー、ボタン、ダイアル、ドロップダウンパーセンテージメニュー等のようなさまざまな等価な入力媒体のいずれかにより実現されてもよい。そのような入力媒体は、タッチスクリーンを介して、またはハードキー、ソフトキー、ポインティングデバイス等のいずれかを介して操作されてもよい。
【0064】
図7は、ROIイネーブルビデオエンコーダー63により適用されるコーディングパラメーターの最適化のためにビデオシーケンスを解析するためのROI品質メトリック計算機61の使用を図解するブロック図である。図7で示されるように、ROI品質メトリック計算機61は、ビデオシーケンスがROIイネーブルビデオエンコーダー63によりエンコードされる前に入力されるビデオシーケンスのための歪み値を解析するために適用される。それゆえ、ROI品質メトリック計算機は、例えばビデオビットストリームに対して図5を参照して記載されるように、歪み値を解析する。歪み値およびユーザーし好値αに基いて、ROI品質メトリック計算機は、入力されるビデオシーケンスをエンコードする際にビデオエンコーダー63により使用するために最適化されたパラメーターのセットを発生する。最適化されたパラメーターはビデオフレームのROIエリアと非ROIエリアとの間のエンコーディングビットを割り当てるためにビット割当モジュールにより使用される重みを含んでいてもよい。すなわち、重み付けファクターβおよびγのようなビットアロケーションにおいて使用される他のパラメーターのための値を含んでいてもよい。ある意味では、図7は、オープンループインプリメンテーションを表す。この場合、ROI品質メトリック計算機61は、エンコーディングする前に入力されるビデオストリームを解析するがエンコードされたビデオを解析しない。品質メトリックは、エンコーダー63により使用するための最適なコーディングパラメーターの発生を生じる。
【0065】
図8は、ROIイネーブルビデオエンコーダー63により適用されるコーディングパラメーターの調節のためにエンコードされたビデオを解析するためにROI品質メトリック計算機61の使用を図解するブロック図である。図8の例において、ROI品質メトリック計算機61はエンコードされたビデオ並びにユーザーし好値に関連する歪み値を解析し、ROIイネーブルビデオエンコーダー63により使用されるコーディングパラメーターに対する調節を生成する。それゆえ、ROI品質メトリック計算機61は、ビデオがROIイネーブルビデオエンコーダー63によりエンコードされた後でビデオを解析し、例えば、ビデオエンコーダーの性能およびエンコードされたビデオの品質を改良するためにクローズドループに基いて調節を生成する。コーディングパラメーターに対する調節は、ビデオフレームのROIエリアおよび非ROIエリアとの間にエンコーディングビットを割り当てるためにビット割当モジュールにより使用される重みを調節することを含んでいてもよい。または、重み係数βおよびγのようなビットアロケーションにおいて使用される他のパラメーターのための値を含んでいてもよい。図8の例において、しきい値との品質メトリックの比較が満足されるまで、ループで反復的に品質をエンコードし評価するために品質メトリックが使用される。各反復において、品質メトリック計算機61は、コーディングパラメーターの改良されたセットを送信する。最終的には、反復は品質メトリックしきい値の満足かまたは結果の収束により停止する。
【0066】
図9は、ROI品質メトリック計算を図解するフロー図である。図9に示されるように、適用可能なROIMBマップが与えられると、ROI品質メトリック計算機46は、ROIユーザーし好αを取得し(68)、ビデオフレームのROI部分および非ROI部分をエンコードする(70)。エンコードされたビデオフレームを再構成すると、歪みアナライザー60は、以前にエンコードされたビデオフレームとオリジナルビデオフレームを解析し、先行するビデオフレームのそれぞれROI部分と非ROI部分のビデオフィデリティーDRFおよびDNFを決定する。さらに歪みアナライザー60は、それぞれROIおよび非ROI知覚の一時的な品質値DRT、DNTを発生し、ならびにROIと非ROIの知覚の空間品質値DRSおよびDNSを発生する。ROI品質メトリック計算機46は、歪みアナライザー60からビデオフィデリティーを取得し(72)、ROIおよび非ROIの一時的な品質を取得し(74)、ROIと非ROIの空間品質を取得する(76)。
【0067】
ユーザーし好、ビデオフィデリティー、空間品質、および一時的な品質に基いて、ROI品質メトリック計算機46はROI品質メトリックを決定する(78)。ビデオフィデリティーは、例えば、ピクセル毎に色の強さの値に関して、オリジナルフレームに対する再構成されたビデオフレームにおけるビデオエラーを測定する。例えば、ピクセル毎の色の強さの値に関するエラーを測定する。空間品質は、オリジナルフレームに対する再構成されたフレームにおけるブロッキングおよびリンギングアーチファクト(artifacts)のような空間エラーを測定する。一時的な品質は、フレームビジュアル品質が時間軸に沿って非均一に変化する一時的なフリッカーのようなエラーを測定する。
【0068】
とりわけ、ユーザーし好は、ユーザーにより適用される現在の値であるのに対し、ビデオフィデリティー、空間品質および一時的な品質は、ビット割当モジュール48により操作される現在のフレームに先行する1つ以上のフレームから導き出される。ユーザーし好は、ユーザーが値を変化させるときまでフレーム毎に固定されていてもよい。ユーザーが値を指定していないなら、デフォルト値をユーザーし好ファクターに割り当ててもよい。図5を参照して上述したように、現在のフレームのROIと非ROIとの間のビット割当をバイアスするためにROI品質メトリックが適用されてもよい。例えば、品質メトリックは、ROIビット割当のための重みを調節するために使用されてもよい。いくつかの実施形態において、図9に示される機能性は、図8の「クローズドループ」例において、ROI品質メトリック計算機61により実行される動作を表してもよい。
【0069】
図10はビデオシーケンスのためのROI品質メトリック計算を図解するフロー図である。
【0070】
図10は実質的に図9に相当するが、ビデオストリームがエンコードされる前に品質メトリック計算がビデオストリームに対してなされる実施形態を表す。従って、図10のプロセスはさらにビデオストリームを取得することを含む(67)。さらに、図9と対照的に、ビデオエンコーディング(70)は、ROI/非ROIビット割当をバイアスした(80)後に実行される。いくつかの実施形態において、図9に示される機能性は、図7の「オープンループ」例においてROI品質メトリック計算機61により実行される動作を表してもよい。
【0071】
図11はROIρ領域ビット割当を図解するフロー図である。図11に示されるように、ビット割当モジュール48は、ROI定義(82)とフレームのためのレート量(84)を取得する。ROI定義は、ROIに含まれるMBsまたは他のビデオブロックを識別するROI MBマップの形態を取ってもよい。レート量は、ROIエリアおよび非ROIエリアを含む全体のフレームをエンコーディングするために利用可能なビット数を提供する。さらに、ビット割当モジュール48は、ROIと非ROIとの間のビット割当をバイアスするROI重み計算機46からROI重みwi(86)を取得する。フレームのための非ROIスキップモードを決定すると、すなわち、フレームに対してスキッピングがオンかまたはオフかどうかを決定すると、ビット割当モジュール48は、現在のフレームのための統計値を取得する。次に、現在のフレーム統計値(89)は、次のフレームまたはフレーム群のためのスキッピングモード決定を行うために使用することができる。フレーム統計値は、例えば、運動推定に続くフレームの剰余の標準偏差を含んでいてもよい。あるいは、フレーム統計値は、以前のフレームまたはフレーム群に対して取得されてもよい。スキップモードインジケーション(88)を用いて、ビット割当モジュール48は、すべての利用可能なビットがROI(非ROIフレームスキッピングオン)に供することができるかどうかまたはビットがROIと非ROIとの間で共有されなければならないかどうか(非ROIフレームスキッピングオフ)を決定することができる。
【0072】
ROI定義、フレームレート量、品質メトリックバイアス、及び非ROIスキップモードを使用して、ビット割当モジュール48は、ROIMBsと非ROIMBsとの間の重み付けされたρ領域のビットの割当を発生する(90)。ρ領域のビット割当を決定すると、マッパー56は、QPへのρマッピングを実行し、ビデオエンコーダー58に適用するためにMB QP値を供給する(92)。マッパー56は、ρをQPマッピングテーブルに適用してもよいし、または特定のρのためのQPを発生する方程式または関数を適用してもよい。ビデオエンコーダー58は、ビット割当モジュール48とマッパー56により供給されるQP値を使用して適用可能なビデオフレーム内の個々のROIおよび非ROIMBsをエンコードする。結果として生じるビット割当は、適用可能なフレーム量だけでなく、非ROIスキッピングの利用可能性およびビデオシーケンス内の先行するフレームまたはフレーム群に関連する品質メトリックを考慮してもよい。ビット割当モジュール48の動作は、以下にさらに詳細に記載されるであろう。
【0073】
この開示において記載されたビット割当技術は一般的に十分なROI検出または定義の利用可能性、および受け入れ可能なフレームレベルのレート制御の利用可能性を仮定する。これに基いて、ビット割当技術は一般的にROIと非ROIMBsとの間のMBレベルレート制御に焦点を合わせる。ほとんどの一般的なROIビット割当アルゴリズムは、ITU H.263+TMN8モデルの重み付けされたバージョンに基いている。この場合、費用関数が作成され、関数内のさまざまな領域上の歪み成分があらかじめ設定された重みのセットを使用することにより異なって重みづけされる。ほとんどの他のビデオ規格のように、TMN8はQ領域レート制御スキームを使用する。これはQPの関数を用いてレートと歪みをモデル化する。しかしながら、この開示において記載されたビット割当技術は、ρ領域レート制御モジュールを使用する。この場合、ρは、ビデオコーディングにおいてMB内のノンゼロ量子化AC係数の数を表す。ここに記載されるように、ρ領域ビット割当を使用することはQP領域レート制御よりもより正確になる傾向があり、レート変動を効率的に低減してもよい。
【0074】
ビデオコーディングアプリケーションにおいて、典型的な問題は、ビデオシーケンスのための与えられたビット量を用いて歪み値Dsequenceを最小化することである。この複雑な問題のための最適解は、最適フレームレベルレート制御アルゴリズムおよび最適のマクロブロックレベルビット割当スキームに依存する。しかしながら、現在のフレームをコーディングしているとき将来のフレームについての非常に限られた情報が入手可能なテレビ電話のようなリアルタイムのアプリケーションの場合、最適フレームレート制御を達成しようとすることは実用的ではないまたは実現可能ではない。典型的にポピュラーなアルゴリズム(「グリーディ(greedy)アルゴリズム)が適用される。グリーディアルゴリズムは、ビデオコンテンツの複雑さがビデオシーケンス内のフレームに沿って均一に分配されると仮定する。これに基いて、グリーディアルゴリズムは、利用可能なビットの一部分をシーケンス内のフレームの各々に割り当てる。リアルタイムアプリケーションにおいて、また、将来のフレーム情報の限られた利用可能性は、レート制御における一時的な品質を考慮することを困難にさせる。
【0075】
この開示において、実用的な解を見つけるためにおよびビット割当問題を簡単にするために、一般的に、良好なフレームレベルレート制御が利用可能であると仮定される。この仮定は、ビット割当問題をマクロブロックレベルのビット割当に低減する。同時に、ビット割当スキームは非ROIスキッピングアプローチをうまく利用してもよい。スキップされた領域は、以前のフレームの知覚品質と同じ知覚品質を提示するので、非ROIスキッピングは、一時的な歪み期間
【数4】
【0076】
の値を低減するための機会を増大させる。従って、非ROIエリアのスキッピングは、連続したフレーム間の知覚品質の変動を低減してもよい。
【0077】
説明のために、ビデオフレームの画像品質は方程式(1)に従って評価される。しかしながら、簡単にするために、β+γ=1となるようにβとγが設定される。与えられたフレームfとフレームをコーディングするためのビットレートRのための合計ビット量を示すと、問題は、以下の関数により表すことができる。
【数5】
【0078】
上述の最適化問題は、ラグランジュ緩和とダイナミックプログラミングにより解決することができるかもしれない。しかしながら、そのようなアプローチの計算上の複雑さは、リアルタイムシステムが負うことができるものよりもはるかに高いであろう。それゆえ、この開示に従って、低い複雑さの近最適解が好ましい。特に、この開示において、ρ領域における2段ビット割当アルゴリズムが適用される。第1段は以下の最適な問題を含む。
【数6】
【0079】
方程式(4)のための最適なコーディングパラメーターが得られた後で、第2段は、コーディングパラメーターを反復して調節し、ローカル最小値に到達するまで期間
【数7】
【0080】
を低減する。この2段アルゴリズムの結果は、βが相対的に大きな数であるとき、最適な解に非常に接近するかもしれない。β=1のとき、問題(3)と(4)は同一である。この開示において、焦点は、第1段と問題(4)に対する解に当てられる。
【0081】
ROIビデオコーディングにおいて、Nはフレーム内のMBsの数であり、{ρi}、{σi}、{Ri}、および{Di}は、それぞれi番目のマクロブロックのためのρのセット、標準偏差、レートおよび歪み(2乗誤差の和)である。従って、
【数8】
【0082】
である。重み{wi}のセットは、以下のようにフレーム内のすべてのMBsに対して定義される。
【数9】
【0083】
この場合、KはROI内のMBsの数である。方程式(5)は、例えばROI重み計算機46により実施されてもよい。それゆえ、フレームの重み付けされた歪みは、
【数10】
【0084】
である。それゆえ、問題(4)は以下のように書き換えることができる。
【0085】
R≦RbudgetとなるようにDを最小化する。 (7)
方程式(7)はモデリングベースビット割当アプローチを用いることにより解が得られる。自然画像のAC係数の分配は、ラプラシアン分配
【数11】
【0086】
により最良に近づけることができる。それゆえ、i番目のマクロブロックのレートと歪みは、ρの関数として以下に示す方程式(8)および(9)においてモデル化することができる。
【0087】
例えば、レートは以下のように表すことができる。
【0088】
Ri=Aρi+B (8)
この場合、AおよびBはコンスタントモデリングパラメーターである。Aはノンゼロ係数をエンコードするために必要な平均ビット数として考えることができる。Bは、非テクスチャー情報によるビットとして考えることができる。
【0089】
さらに、歪みは以下のように表すことができる。
【数12】
【0090】
この場合、θは未知の定数であり、σは、剰余データの標準偏差である。ここで、任意の選択されたρiから受け入れ可能な量子化の方法を発生するために利用可能な十分に正確なρ−QPテーブルがあると仮定されるので、ビット割当技術は、量子化の方法のかわりにρiを最適化する。一般に、方程式(7)は、ラグランジュ緩和を用いて解くことができる。この場合、制限された問題は、以下のように非制限された問題に変換される。
【数13】
【0091】
この場合λ*は、
【数14】
【0092】
をイネーブルにする解である。方程式(10)において、部分導関数をゼロに設定することにより、最適化されたρiのための以下の式が得られる。
【数15】
【0093】
これは、
【数16】
【0094】
である。従って、
【数17】
【0095】
である。そして、
【数18】
【0096】
である。他方、
【数19】
【0097】
なので、以下の関係を保持する。
【数20】
【0098】
方程式(14)と(16)から、ビット割当モデルIは以下のように得られる。
【数21】
【0099】
次に、結果として生じるρは、対応するQPにマップされ、適切な数のコーディングビットをそれぞれのROIMBまたは非ROIMBに割り当てるために使用される。
【0100】
他のビット割当モデル(ビット割当モデルII)は、代わりの歪みモデルを用いて得てもよい。代替歪みモデルによれば、ステップサイズqを有した均一な量子化の方法の利用可能性を仮定すると、量子化により生じる歪みは以下により与えられる。
【数22】
【0101】
そしてゼロのパーセンテージは以下により与えられる。
【数23】
【0102】
従って、
【数24】
【0103】
である。T.M. CoverおよびJ.A.Thomas著「情報理論の要素」(Elements of information theory)、Wiley, New York, NY., 1991に記載されるように、シャノンのソースコーディング理論によれば、ラプラシアンソースの場合、シンボルを表すために必要な最小ビット数は以下により与えられる。
【数25】
【数26】
【0104】
であり、384は、4:2:0ビデオのためのi番目のマクロブロックにおける係数の合計数であり、方程式(21)はテーラー展開を用いて拡張することができ、ビットレートとρとの間の関係は、Ri=Aρi+B (22)により近似することができる。但し、AおよびBは、コンスタンとモデリングパラメーターであり、Aは、ノンゼロ係数をエンコードするために必要な平均ビット数として考えることができ、Bは、非テクスチャー情報によるビットとして考えることができる。
【0105】
さらに係数の分散は以下により表される。
【数27】
【0106】
結果として、i番目のマクロブロックの歪みは以下により表すことができる。
【数28】
【0107】
ビット割当モデルIの導出におけるように、最適ビット割当スキームは、最適問題(7)、すなわち、以下の問題を解くことにより得ることができる。
【数29】
【0108】
一般に、方程式(25)は、ラグランジュ緩和を用いて解くことができる。この場合、制限された問題は以下のように非制限された問題に変換される。
【数30】
【0109】
但し、λ*は、
【数31】
【0110】
をイネーブルにする解である。(26)において部分導関数をゼロに設定することにより、最適化されたρのための以下の式が得られる。
【数32】
【0111】
これは、
【数33】
【0112】
である。従って、
【数34】
【0113】
である。
【0114】
他方、
【数35】
【0115】
なので、
【数36】
【0116】
である。
【0117】
方程式(28)および(30)から、以下の式が得られる。
【数37】
【0118】
但し、ρbudgetはフレームのための合計ρ量である。方程式(32)において、歪みは、異なってモデル化されているけれども、そのモデルに基いて、以下のビット割当モデルIIが得られる。
【数38】
【0119】
方程式(33)は、例えばビット割当モジュール48により実施されてもよい。
【0120】
図12は、重み付けされたビット割当モデルIおよびIIおよび最適解を用いてエンコーディング技術の全体の知覚品質を比較するグラフである。最適解はラグランジュ緩和により得られるのに対してビット割当モデルIおよびIIは上述したように実施される。図12は、標準フォーマンビデオテストシーケンスの最初の100フレームのROIコーディング中のフレーム番号対デシベルにおけるPSNRを示す。図12において、最適解、ビット割当モデルI、ビット割当モデルIIは、それぞれ参照符号91、93、および95で識別される。ビット割当モデルIおよびIIの場合、ビット割当重み付け方程式(5)の目的のためにαの値は0.9である。図12に示されるように、ビット割当モデルIおよびIIの両方は、最適解との比較において非常によく実行する。
【0121】
図13は、非ROI(「バックグラウンド」)スキッピングのための技術を図解するフロー図である。ビデオフレームの非ROIエリアのエンコーディングをスキップする能力は、ビット割当において、著しい節約を生じることができる。非RPIがエンコードされないなら、すなわちスキップされるなら、さもなければ非ROIに割り当てられたビットは、ROI内のMBsのビジュアル品質を改良するためにROIをエンコーディングするために、代わりに再割当することができる。非ROIが所定のフレームに対してスキップされるなら、先行するフレームに対してエンコードされる非ROIは、反復されるかまたは現在のフレームの補間された非ROIエリアにより置換される。ROIエンコーディングのための節約ビットに加えて、非ROIエリアのスキッピングは、現在のフレームの一時的品質を改良してもよい。特に、2以上の連続するフレームで同じ非ROIエリアを提示することは、非ROIエリアにおける一時的なフリッカーを低減する傾向があるであろう。
【0122】
非常に低いビットレート、例えば32kbpsにおいて、非ROI領域は、たとえ、ビットがMBsの間で均一に分配されていても通常粗雑にコード化される。この場合、フリッカリングのようなビジュアル品質問題は重要になる。他方、バックグラウンドが非ROIであるテレビ電話アプリケーションのほとんどの場合、バックグラウンドに非常に限定された動作がある。それゆえ、スキッピングがビデオフィデリティーを厳しく劣化させない限り、ROIの品質とコード化された非ROI領域を改良するためにバックグラウンドスキッピングは、ビットを再割当するための解である。
【0123】
フレームスキッピングは、コーディングビットを節約するために非常に低いビットレートのアプリケーションにおいて使用されるポピュラーなアプローチである。非ROIスキッピングとフレームスキッピングとの間の差異は、各フレームのためのROIは、ROIの良好なビジュアル品質を保証するために非ROIスキッピングアプローチにおいてコード化されることである。フレームスキッピングの多くのアプリケーションにおいて非常に有用である。しかしながら、ROIビデオコーディングにおいて、フレームスキッピングは、顔の表現のような重要な情報の損失の危険を冒すであろう。特に、方程式(1)において大きな値でαが設定されるとき、ROIの任意の歪みは、激しく重みづけされ、全体の性能を劣化させる可能性があるためである。それゆえ、非ROIスキッピングはより良い選択であり、一般的にかなりの数のビットを節約し、ROI品質を改良する。なぜなら、バックグラウンドMBsの数は、通常のビデオフレームにおいて支配的であるからである。
【0124】
図13に示されるように、非ROIスキッピング技術は、フレームのためのROIエリアおよびフレーム間で共有される共通非ROIエリアを含むユニットに、連続するフレームをグループ化することを含む。図13の例では、2つの連続するフレームがグループ化される。非ROIバックグラウンドスキッピングモジュール50は、フレームiおよびi+1をフレームユニットにグループ化し(96)、ビデオエンコーダー58に非ROIエリアがスキップされるであろうフレームを知らせる。これに応答して、ビデオエンコーダー58は、ビット割り当てモジュール48により供給される重み付けされたビット割り当てを用いてフレームiおよびi+1のそれぞれのROIエリアをエンコードする。(98)さらに、ビデオエンコーダー58は、重み付けされたビット割り当てを用いてフレームiの非ROIエリアをエンコードする。(100)しかしながら、ビデオエンコーダー58は、フレームi+1の非ROIエリアをエンコードしない。代わりに、フレームi+1の非ROIエリアがスキップされ、先行するフレームの非ROIエリアはその場所に提供される。
【0125】
非ROIスキッピングはフルタイムベースで供給されてもよい。例えば、代替フレームに基いて非ROIの連続するフルタイムスキッピングの目的のために、2フレーム毎にユニットにグループ化されてもよい。言い換えれば、毎秒フレームにおける非ROIは、フルタイムベースでスキップされてもよい。別の方法として、適応ベースに基いてアクティブにしたり非アクティブにしてもよい。最近の以前のフレームによって生成された非ROI歪みが歪みしきい値を超えると、スキッピングは非アクティブになってもよい。図13に示されるように、例えば、以前のフレームの非ROIエリアにおける歪みがしきい値未満なら(102)、フレームi+1の非ROIはスキップされ(104)、プロセスは、フレームインクリメントi=i+2により表されるように、2つの連続するフレームの次のグループに続く(106)。この場合、非ROI歪みのレベルは受け入れ可能であり、スキッピングはアクティブになる。しかしながら、非ROI歪みが歪みしきい値より大きければ(102)、フレームi+1の非ROIエリアは、重み付けされたビット割り当てを用いてエンコードされる(108)。この場合、スキッピングは過度の非ROI歪み、すなわち関連のあるビデオシーンの非ROIエリア内の過度の歪みにより非アクティブになる。
【0126】
図14は非ROIスキッピングをサポートするために、連続するフレームをユニットにグループ化することを図解する図である。図14に示されるように、フレーム0、1、2、3はビデオシーケンス内の連続するフレームを表す。この例において、フレーム0およびフレーム1はユニット1にグループ化され、フレーム2およびフレーム3はユニット2にグループ化される。各ユニットは共通の非ROIエリアを共有する。特に、受け入れ可能な歪みを有したフルタイムスキッピングまたはアダプティブスキッピングの場合に、フレーム0の非ROIエリアは、フレーム1に対して反復される。フレーム0の非ROIエリアはフレーム1に対して反復されるので、フレーム1の非ROIエリアをエンコードする必要はない。フレームをユニットにグループ化することは、ビデオシーケンス全体にわたって適用されてもよい。図14の例において、2つのフレームは1つのユニットにグループ化される。いくつかのアプリケーションにおいて、2以上のフレームが1ユニットにグループ化されてもよい。非ROIは全体でスキップされるがユニット内のフレームの1つにおいてである。
【0127】
図15は、共通の非ROIエリアを有する連続するROIエリアのエンコーディングを図解する図である。特に、連続フレーム0および1を1ユニットにグループ化すると、フレーム0および1内のROIエリア110、112はそれぞれエンコードされる。しかしながら、フレーム1のための非ROIエリア(図示せず)がスキップされるように、フレーム0の非ROIエリア114はフレーム0およびフレーム1の両方に対して反復される。この方法で、さもなければ、フレーム1非ROIエリアをエンコードするために必要なビット消費を回避することができる。図15の例において、「バックグラウンド」と呼ばれるけれども、非ROIエリア114は、人の肩のようなフォーグラウンド特徴を含んでいてもよい。従って、バックグラウンドは一般的にこの開示においてROI外の任意のエリアを呼ぶために使用され、ビデオシーン内のバックグラウンドイメージに厳密に制限されると考えるべきではないことに留意する必要がある。非ROIスキッピングは以下にさらに詳細に記載される。
【0128】
図4の非ROIスキッピングモジュール50の実施のための例示プロトタイプシステムについて以下記載する。プロトタイプシステムでは、図13−15を参照して上述したように、2フレーム毎にユニットにグループ化される。各ユニットにおいて、第1の非ROIエリアは、例えば、ゼロ運動ベクトルを有した予測されたMBsを用いてコード化され一方第2の非ROIエリアはスキップされる。各ユニットのビット割り当ては、シーケンス内のビデオフレームのコンテンツ複雑性は、フレームにわたって均一に分配されると仮定して、「グリーディ」フレームレベルビット割り当てと同じロジックに基いていてもよい。この仮定の場合、ビットは、
【数39】
【0129】
として2フレームユニットの中で均一に割り当てられなければならない。但し、ρsequenceは、ビデオシーケンス内のMの連続フレームのグループのための合計ρ量である。ρunit iは、i番目のユニットのためのρ割り当てである。ρusedは、第1の(i-1)/2ユニットのρ消費である。ユニット内において、ビットアロケーションモデル(IまたはII)は、ROIエリアと非ROIエリア内のMBsにビットを割り当てるために使用されてもよい。
【0130】
ここに記載されるように、非ROIスキッピングの結果を評価するために、いくつかのテストが実行された。テストにおいて、以下のビット割り当て技術が比較された。
【0131】
(a) フルタイム非ROIスキッピングを有したモデルIIに基いた重み付けされたビット割り当てアルゴリズム
(b) 非ROIスキッピングを有さない、モデルIIに基いた重み付けされたビット割り当てアルゴリズム
そして(c)ROIと非ROIMBsがビット割り当てにおいて等価に取扱われる「グリーディ」アルゴリズム
テストは、毎秒15フレーム(fps)のレートで、標準の「自動車電話」QCIFビデオシーケンスの最初の150フレームについて行った。比較の結果は、図16−23で示される。
【0132】
図16は、上述のエンコーディング技術(a)、(b)、(c)の全体の知覚品質を比較するグラフである。特に、図16は毎秒あたりキロビット(kbps)におけるエンコーディングレートのレンジに対してデシベル(db)で知覚PSNRをプロットする。図17は上述のエンコーディング技術(a)、(b)、(c)の全体のビデオフィデリティーを比較するグラフである。「全体」のビデオフィデリティーという用語は、ROIエリアと非ROIエリア両方の組み合わせ、すなわち全体のフレームのビデオフィデリティーを指し、その代わりに、「フレーム」ビデオフィデリティーを指してもよい。図17は、毎秒キロビット(kbps)におけるエンコーディングレートのレンジに対してデシベル(db)で「フレーム」PSNRをプロットする。
【0133】
図18および図19は、上述のエンコーディング技術(a)、(b)、(c)のそれぞれROIビデオフィデリティーと非ROIビデオフィデリティーを比較するグラフである。特に、図18および図19は、毎秒キロビット(kbps)におけるエンコーディングレートのレンジに対してデシベル(db)におけるPSNRをプロットする。図18において、ROIビデオフィデリティーは、ビデオフレームのROIエリア内のビデオフィデリティーを指す。図19において、非ROIビデオは、ビデオフレームの非ROIエリア内のビデオフィデリティーを指す。図16−19は、重み付けされたビット割り当てアルゴリズムにおいてユーザーし好ファクターα=0.9のアプリケーションを表す。図16−19の各々において、(a)フルタイム非ROIスキッピングを有した重み付けされたビット割り当て、(b)スキッピングを有さない重み付けされたビット割り当て、(c)グリーディアルゴリズムのための曲線は、それぞれ116、118、120の参照符号により識別される。
【0134】
図20および21は、上述したエンコーディング技術(a)、(b)、(c)のそれぞれ全体の知覚品質と全体のビデオフィデリティーを比較するグラフである。特に、図20は、毎秒キロビット(kbps)におけるエンコーディングレートのレンジに対してデシベル(db)における知覚PSNRをプロットする。図21は、毎秒キロビット(kbps)におけるエンコーディングレートのレンジに対してデシベル(db)におけるPSNRをプロットする。図20および21は重み付けされたビット割り当てアルゴリズムにおいてユーザーし好ファクターα=0.7のアプリケーションを表す。図22および図23は、エンコーディング技術(a)、(b)、(c)のそれぞれ全体の知覚品質と全体のビデオフィデリティーを比較するグラフである。図22および23は、重み付けされたビット割り当てアルゴリズムにおいてユーザーし好ファクターα=0.5のアプリケーションを表す。図20−23において、(a)フルタイム非ROIスキッピングを有した重み付けされたビット割り当て、(b)スキッピングを有さない重み付けされたビット割り当て、(c)グリーディアルゴリズムのための曲線は、それぞれ参照符号116、118、120により識別される。
【0135】
図16−23に示されるテスト結果の場合、ビデオ品質測定値、知覚PSNR、フレームPSNR、ROI PSNR、及び非ROI PSNRの4つのセットは以下のように定義された。
【数40】
【0136】
上の式において、DFrameは、フレームに対する全体の一時的歪みおよび空間歪みである。DFは、オリジナルフレームと再構成されたフレームとの間のビデオフィデリティーである。DRFは、オリジナルフレームと再構成されたフレームのROIエリア間のビデオフィデリティーである。DNFは、オリジナルフレームと再構成されたフレームの非ROIエリア間のビデオフィデリティーである。知覚PSNRは図16、20、22に示される。フレームPSNRは図17、21、23に示される。ROI PNSRは図18に示され、非ROI PSNRは図19に示される。図16−23に示される結果は、提案されている非ROIスキッピングアプローチは、すべてのテストにおいて他のアプローチと比べて知覚PSNR(PPSNR)において1dB以上の利得を有することを明示する。利得は、図18および図19に示されるように、フレームをコーディングする際にビットを非ROIからROIに再割当することによりROI品質の改良から得られる。
【0137】
関心ある観察は、図17、21、23に示すように、低ビットレートにおけるフレームPSNRに関して、非ROI(バックグラウンド)スキッピングアプローチはまた他のアプローチより効率がよいということである。さらに、グラフは、フレームPSNRにおける利得は、ユーザーし好ファクターの減少に伴い増加することを示す。これらの観察は、非ROIスキッピングアプローチは、無線VTのような非常に低いビットレートアプリケーションに対して非常に魅力があることを示す。なぜならばそれは、ビデオフィデリティーの観点のみならずビジュアル品質の観点において他のアプローチより効率がよいからである。重み付けされたビット割り当てアプローチは、αに大きな値、例えば図16においてα=0.9が割り当てられているときグリーディアルゴリズムより効率がよいことが期待される。しかしながら、利点は、図20および22に示すようにアルファの減少とともに減少する。
【0138】
さらなるテストは、フレームスキッピングに、すなわち、非ROIエリアのみスキップする代わりに全体のフレームのスキッピングに依存する重み付けされたビット割り当て技術に対して非ROIスキッピングを内蔵するビット割り当て技術の性能を評価するためにさらなるテストが実行された。図24は、標準フレームスキッピングとバックグラウンドスキッピングを用いてROIエンコーディング技術の知覚品質を比較するグラフである。各ケースにおいて、ここに記載されるように、重み付けされたビット割り当てが適用された。1つのケースにおいて、非ROI(バックグラウンド)スキッピングが適用された。他のケースにおいて、フルタイムフレームスキッピングは、1つおきの他のフレームが交互ベースでスキップされるように適用された。図24は、毎秒キロビット(kbps)におけるレートに対してデシベルにおける知覚PSNRをプロットする。図24において、参照符号122、124、126は、フレームスキッピングと、それぞれユーザーし好ファクター=0.9、0.7、0.5を有する重み付けされたビット割り当てのための曲線を示す。参照符号128、130、132、は非ROIスキッピングと、それぞれユーザーし好ファクター=0.9、0.7、0.5を有した重み付けされたビット割り当てのための曲線を同定する。図24に示されるように、非ROIスキッピングを有した重み付けされたビット割り当ては、全てのαの設定においてフレームスキッピングを有する重み付けされたビット割り当てより効率がよい。非ROIスキッピングにより供給される性能利得は、αの値の増加に伴い増加する。この結果は合理的である。なぜなら、より大きなαの場合、フレームスキッピングのためのROIに関する相殺はより重くなるからである。
【0139】
図16−24に明示されるように、非ROIバックグラウンドスキッピングアプローチは、良好な性能を生じる。特に、非ROIが相対的に低い運動を維持しているときそうである。しかしながら、大量の運動を含む非ROIエリアを有するビデオシーケンスの場合、性能利得は、減少されてもよい。同時に、重要なバックグラウンド情報はスキップしてもよく、システム性能の劣化を生じる。従って、スキッピングがビデオフィデリティーを厳しく低下させるとき、例えば、バックグラウンドコンテンツが重要な情報を含むとき、バックグラウンドスキッピングはオフになることが望ましい。一例として、オンおよびオフになる非ROIスキッピングを有した重み付けされたビット割り当てによりROIコーディングは、バックグラウンドが迅速に移動する標準の自動車電話ビデオテストシーケンスの第180番目乃至209番目に適用された。図25はこの解析の結果を示す。特に、図25は、ここに記載されるように、非ROIスキッピングがオンおよびオフになるとき、重み付けされたビット割り当てのためのROIエンコーディング技術の知覚品質を比較するグラフである。
【0140】
図25は、毎秒キロビットにおけるレートに対するデシベルにおける知覚PSNRのグラフである。図25において、参照符号134および136は、オンになった非ROIスキッピングと、それぞれユーザーし好ファクターα=0.9および0.5を有する重み付けされたビット割り当てのアプリケーションを表す曲線を同定する。参照符号138および140は、オフになった非ROIスキッピングと、それぞれユーザーし好ファクターα=0.9および0.5を有した重み付けされたビット割り当てのアプリケーションを表す曲線を同定する。図25の結果は、比較された非ROIスキッピングの利点は、αが例えば0.9から0.5に減少するのに伴い減少することを示す。また、この結果は、ビデオシーケンスのコンテンツと、ユーザーし好ファクターにより表されるようにユーザーの関心レベルに基いて、非ROIスキッピングのダイナミック制御をイネーブルにする適応非ROIスキッピングを作成する値を示す。
【0141】
非ROIスキッピングを有するおよび有さない重み付けされたビット割り当てにより生成される歪みは、以下に示すように、明示的に比較することができる。
【数41】
【0142】
この場合、Dskip_onは、非ROIスキッピングがオンのときのユニット合計歪みである。Dskip_offは、バックグラウンドスキッピングモードがオフのときのユニット合計歪みである。DNonROI_skipはユニットの第2のフレーム内の非ROIをスキップすることにより長じる歪みである。方程式(35)におけるρ1およびρ2および方程式(36)におけるρ1'、ρ2'、ρ3'は、ROIsおよび非ROIに割り当てられたAC係数(ρ)の数である。
【0143】
方程式(35)および(36)から、DNonROI_skip>>DNF(ρunit-ρ1'−ρ2'−ρ3')である場合にのみDSkip_on>DSkip_offが適用できることを観察することができる。なぜなら、一般に以下の式が適用できるからである。
【数42】
【0144】
この観察は図26に示すように自動車電話ビデオテストシーケンスのためのDNonROI_skipの統計値から真であることが検証される。図26は、例示ビデオシーケンスに対するバックグラウンドスキッピングにより生じた歪みを描画するグラフである。特に、図26は、自動車電話ビデオテストシーケンスの最初の240フレームに対するフレーム番号対平均非ROI領域剰余エネルギーDNonROI_skipをプロットする。図26からフレーム180−209の期間において値は他よりもはるかに大きいことが明らかである。これは、高度の運動により特徴づけられるフレームである。それゆえ、非ROIスキッピングは一般的に好ましいのに対して、フレーム180−209により提示される高運動部分の期間は望ましくない。
【0145】
上の観察に基いて、バックグラウンドスキッピングモードをオンおよびオフさせる基準を追跡するタスクは、DNonROI_skipの歪みのためのしきい値を探すタスクに変換される。ビデオシーケンスにおけるユニット歪みが平滑な方法で変化すると仮定するなら、これは一般的に真であるが、ほとんどの最近に処理されたユニット歪みの平均値は、ひずみしきい値を導き出すのに使用することができる。
【数43】
【0146】
を最も最近のnユニットの平均歪みとして示すと、(35)および(36)に基いて、
【数44】
【0147】
が適用されるなら、DSkip_on>DSkip_offを作ることは非常に可能である。言い換えれば、非ROIスキッピングをスイッチオフするための基準は、
【数45】
【0148】
として指定することができる。この基準は、適応非ROIスキッピングアルゴリズムのための基礎として機能することができる。
【0149】
適応非ROIスキッピングアルゴリズムは実質的に図13に示されるプロセスに準拠してもよく、以下のようにさらに記載することができる。
【0150】
ステップ0:データをイニシャライズし、
【数46】
【0151】
を設定し、スキッピングモード=ONである。
【0152】
ステップ1:方程式(34)を用いて現在のユニット(2つの連続するフレームFnおよびFn+1のグループ)のためのρ量を割り当てる。
【0153】
ステップ2:現在のユニット内において、方程式(32)により各マクロブロックのためのビットを割り当てる。スキッピングモードがONならユニット内の第2のフレームのための非ROIに対してビットは割り当てられない。
【0154】
ステップ3:現在のユニットのための歪みが得られた後で、
【数47】
【0155】
を
【数48】
【0156】
だけ更新する。ただし、ηは学習ファクターであり、[0,1]のレンジにある。
【0157】
ステップ4:次のユニットのためのデータを得る。これが最後のユニットならステップ6に行く。
【0158】
ステップ5:新しいユニット(次の2つのフレームFn+2とFn+3のグループ)のためのDNonROI_skipの歪みを計算する。
【数49】
【0159】
なら、スキッピングモードをオフにする。そうでなければ、スキッピングモードをオンにする。ステップ1に戻る。
【0160】
ステップ6:適応スキッピングアルゴリズムを終了する。
【0161】
図27は、非ROIスキッピングを用いて、非ROIスキッピングを用いないで、および適応非ROIスキッピングを用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。各ケースにおいて、ここに記載されたような重み付けされたビット割り当てが適用された。図27は標準自動車電話ビデオテストシーケンスのフレーム180−209のROIビデオコーディングに対する毎秒キロビットにおけるレートに対するデシベルにおける知覚PSNRをプロットする。参照符号142および144は、非ROIスキッピングオンと、それぞれユーザーし好ファクターα=0.9および0.5を有する重み付けされたビット割り当てを表す曲線を同定する。参照符号146および148は、非ROIスキッピングオフとそれぞれユーザーし好ファクターα=0.9および0.5を有した重み付けされたビット割り当てを表す曲線を同定する。参照符号150および152は、適応非ROIスキッピングとそれぞれユーザーし好ファクターα=0.9および0.5を有する重み付けされたビット割り当てを表す曲線を同定する。この評価において、値ηは、η=0.25に設定された。図27における結果は、適応非ROIスキッピングアプローチの結果は、αの種々の値のための最良の解に非常に近いことを示す。
【0162】
図28−33は、この開示において記載される重み付けされたビット割り当て技術を適用するROIコーディング技術のためのさらなる実験結果を示す。図28−32は、標準自動車電話ビデオテストシーケンスに対する種々のROIコーディング技術の適用を表す。図28−32の場合、重み付けされたビット割り当てアプローチ(「提案されたアプローチ」および「重み付けされたビット割り当て」)で使用されるユーザーし好ファクターαは0.9に設定された。「提案されたアプローチ」ラベルは、非ROIスキッピングを有する重み付けされたビット割り当てを指す。「重み付けされたビット割り当て」ラベルは、非ROIスキッピングを伴わない重み付けされたビット割り当てを指す。
【0163】
図28は、種々のビット割り当て技術を用いたROIエンコーディング技術の全体の知覚品質を比較するグラフであり、レート対知覚PSNRをプロットする。図28において、参照符号154、156、158、160、162は、それぞれフレームスキッピングアプローチ、非ROIスキッピングを用いて重み付けされたビット割り当てアプローチ、グリーディアルゴリズム、コンスタントQPアルゴリズム、非ROIスキッピングを伴わない重み付けされたビット割り当てアプローチのアプリケーションを表す曲線を同定する。
【0164】
図29は毎秒40キロビット(kps)のエンコーディングレートで、種々のビット割り当て技術を用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。特に、図29は、非ROIスキッピング、グリーディアルゴリズムおよびコンスタントQPアルゴリズムを有した重み付けされたビット割り当てのためのフレーム番号対知覚PSNRをプロットする。
【0165】
図30は、毎秒40キロビット(kps)のエンコーディングレートで種々のビット割り当て技術を用いてROIエンコーディング技術の全体のビデオフィデリティーを比較するグラフであり、フレーム番号対PSNRをプロットする。図31は毎秒40キロビット(kps)のエンコーディングレートで種々のビット割り当て技術を用いてROIエンコーディング技術のROIビデオフィデリティーを比較するグラフであり、フレーム番号対ROIにおけるPSNRをプロットする。図32は、毎秒40キロビット(kps)のエンコーディングレートで、種々のビット割り当て技術を用いてROIエンコーディング技術の非ROIビデオフィデリティーを比較するグラフであり、フレーム番号対非ROIPSNRをプロットする。
【0166】
図29−32において、非ROIスキッピングを有した重み付けされたビット割り当ては参照符号164により示され、グリーディアルゴリズムは参照符号166により示され、コンスタントQPアルゴリズムは参照符号168により示される。コンスタントQPアルゴリズムは、フレーム内のすべてのMBsに同一量子化方法が割り当てられるフレームレベルのみのレート制御アルゴリズムである。グリーディアルゴリズムは上に記述され、MBレベルで動作する。フレームスキッピングアルゴリズムは、交代ベースで1つおきのフレームのコンテンツをエンコードすることを回避するために標準フレームスキッピングを適用し、ROIエリアと非ROIエリアの両方をスキップする。非ROIスキッピングと伴わない重み付けされたビット割り当てと、適応フレームスキッピング(「提案されたアプローチ」)を有した重み付けされたビット割り当てが上に記載された。
【0167】
図28は、提案されたアプローチが、全体のビットレートレンジ内のすべての他のアプローチより効率がよく、性能利得は2dBまでであることを示す。図29−32において、提案されたアプローチ、グリーディアルゴリズムおよびコンスタントQPアルゴリズムのフレームレベル詳細が明示される。
【0168】
図33は、エンコーディングレートのレンジに対して他の例示ビデオシーケンスのための種々のビット割り当て技術を用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。特に、図33は、標準フォーマンビデオテストシーケンスの最初の180フレームにわたってレート対知覚PSNRをプロットする。図33において、参照符号154、156、158、160、および162は、それぞれフレームスキッピングアプローチ、非ROIスキッピングを有した重み付けされたビット割り当てアプローチ、グリーディアルゴリズム、コンスタントQPアルゴリズム、および非ROIスキッピングを伴わない重み付けされたビット割り当てアプローチのアプリケーションを表す曲線を同定する。
【0169】
図33において示されるように、フレームスキッピングアプローチは、自動車電話シーケンスと同様に実行しない。なぜなら、フォーマンシーケンスの顔は自動車電話シーケンスに比べてより大きな運動を含むからである。結果として、フレームスキッピングは、フォーマンシーケンスにおいて過度の量のROI情報を見逃す。とりわけ、適応非ROIスキッピングを有する重み付けされたビット割り当ての提案されたアプローチは、図33に明示されるようにフォーマンシーケンスに対して非常によく実行する。
【0170】
この開示において、テレビ電話またはビデオストリーミングアプリケーション、特に、例えば無線テレビ電話において非常に低いビットレートで定時されるときROIコーディングをサポートするために種々の技術が記載された。その開示は、ROIビデオコーディングのためのρ領域において2つの異なる最適な重み付けされたビット割り当てスキームを提供する。その開示は、また重み付けされたビット割り当てモデルと共同して動作することができ、より良い性能を得る適応非ROI(「バックグラウンド」)スキッピングを提供する。さらに、この開示は、ROIビデオの品質を測定するためのビデオ品質メトリックを提供する。ROI品質メトリックは、ROIにおけるユーザーし好、ビデオフィデリティー、空間知覚品質、および一時的な知覚品質を共同で考察することにより、最適化されたビット割り当て技術をガイドし、より良い主観的なビジュアル品質を生成するために使用することができる。ROI品質メトリックは、主観的知覚品質要件を満足するためにコーディングパラメーターをバイアスするためにユーザー相互作用をイネーブルにする。
【0171】
ここに記載された技術は、ハードウエア、ソフトウエア、ファームウエアまたはそれらの任意の組み合わせにおいて実施されてもよい。ソフトウエアで実施されるなら、この技術は、実行されると、上述した1つ以上の方法を実行する命令を含むプログラムコードを備えたコンピューター読み取り可能媒体により一部分実現されてもよい。この場合、コンピューター読み取り可能媒体は、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)のようなランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気的に消去可能なプログラマブルリードオンリーメモリ(EEPROM)、フラッシュメモリ(登録商標)、磁気または光学のデータ記憶媒体等を備えていてもよい。
【0172】
プログラムコードは、1つ以上のデジタルシグナルプロセッサー(DSPs)、汎用マイクロプロセッサー、特定用途向け集積回路(ASICs)、フィールドプログラマブルゲートアレイ、または他の等価な集積されたまたはディスクリートな論理回路のような1つ以上のプロセッサーにより実行されてもよい。いくつかの実施形態において、ここに記載された機能性は、エンコーディングおよびデコーディングのために構成された専用のソフトウエアモジュールまたはハードウエアユニット内で提供されてもよいしまたは結合されたエンコーダー−デコーダー(CODEC)に内蔵されてもよい。
【0173】
種々の実施形態が記載された。これらのおよび他の実施形態は以下のクレームの範囲内にある。
【関連出願】
【0001】
この出願は2005年3月1日に出願された米国仮出願第60/658,008の利益を主張する。
【技術分野】
【0002】
この開示はデジタルビデオエンコーディングに関し、特に、ビデオ電話(VT)アプリケーションのための関心領域(ROI)をエンコードする技術に関する。
【背景技術】
【0003】
デジタルビデオシーケンスをエンコードするために多数の異なるビデオエンコーディング規格が確立された。例えば、ムービングピクチャーイクスパーツグループ(MPEG)は、MPEG−1、MPEG−2およびMPEG−4を含む多数の規格を開発した。他の例は国際電気通信連合(ITU)H.263規格、および新生のITUH.264規格を含む。これらのビデオエンコーディング規格は一般に、圧縮された方法でデータをエンコードすることによりビデオシーケンスの改良された送信効率をサポートする。
【0004】
ビデオ電話(VT)は、ユーザーがビデオおよびオーディオ情報を共有し、テレビ会議のようなアプリケーションをサポートすることを可能にする。例示テレビ電話規格は、セッションイニシエーションプロトコル(SIP)、ITUH.323およびITUH.324規格により定義された規格を含む。VTシステムにおいて、ユーザーはビデオ情報を送信および受信してもよいし、ビデオ情報を受信のみしてもよいし、ビデオ情報を送信のみしてもよい。受信者は、一般にビデオ情報が送信者から送信されるフォームで受信されたビデオ情報を見る。
【0005】
ビデオ情報の選択された部分の優先的エンコーディングが提案された。例えば、送信者は、受信者に送信するためにより高い品質でエンコードされる関心領域(ROI)を指定してもよい。送信者は遠隔の受信者にROIを強調したいと思うかもしれない。送信者はビデオシーン内の他のオブジェクトに焦点を絞りたいと思うかもしれないけれども、ROIの典型的な例は人間の顔である。ROIの優先的エンコーディングを用いて、受信者は、非ROI領域よりもより明瞭にROIを見ることができる。
【発明の概要】
【0006】
この開示はテレビ電話(VT)のための関心領域(ROI)コーディングのための技術に向けられている。開示された技術は、ROIに割り当てるためのエンコーディングビットを節約するためにビデオフレームの非ROIエリアの適応スキッピングのための技術を含む。また、開示された技術は、ρ領域内のマクロブロック(MB)レベルにおける重み付けされたビットアロケーションモデルを用いてROIのビットのアロケーションのための技術を含む。さらに、開示された技術は、ROIビデオのための品質メトリック(metric)の発生のための技術を含む。これは、エンコードされたビデオシーケンスの品質を評価する際に、ROI、ROIビデオフィディリティー、およびROI知覚品質におけるユーザーの関心度を共同で検討する。
【0007】
非ROIスキッピング技術は、非ROI領域の画像品質を著しく劣化させずにROIの画像品質を高めるように機能する。特に、非ROIスキッピング技術は、ROIに割り当てるためにさらなるビットを供給するために非ROIビットを節約することができる。
【0008】
品質メトリックは、ビット割当技術にバイアスをかけ、エンコードされたビデオシーン内の主観的画像品質を強化するために適用されてもよい。ρ領域におけるビット割当は、強化された見栄えのためのROI量子化のより正確で一貫した制御を供給することができる。非ROIスキッピング、ρ領域ビット割当、及び品質メトリックは共同してまたは別個に使用して、ROIおよび非ROIエンコーディングの効率的な制御を得ることができる。
【0009】
一実施形態において、この開示は、先行するフレームのビデオフィデリティー、先行するフレームの知覚品質、および関心領域におけるユーザーの好みに基いて関心領域を含むエンコードされたビデオフレームのための品質メトリックを発生することを備えた方法を提供する。
【0010】
他の実施形態において、この開示は、関心領域を含むビデオフレームをエンコードするビデオエンコーダーと、先行するフレームのビデオフィデリティー、先行するフレームの知覚品質、および関心領域におけるユーザーの好みに基いてビデオフレームのための品質メトリックを発生する品質メトリック計算機とを備えた装置を提供する。
【0011】
さらなる実施形態において、この開示は、関心領域内のマクロブロックと、関心領域内に無いビデオフレームのエリア内のマクロブロックとの間のフレーム量と重み付けに基いて、ビデオフレーム内の関心領域の定義を得ることと、フレームに対して利用可能なエンコーディングビットの数を定義するフレーム量を得ることと、フレーム内のマクロブロックにロー領域値を割り当てることとを備えた方法を提供する。
【0012】
さらなる実施形態において、この開示は、ビデオフレーム内の関心領域の定義を発生する関心領域マッパーと、フレームに対して利用可能なエンコーディングビットの数を定義するフレーム量を発生するフレームレベルレートコントローラーと、関心領域内のマクロブロックと関心領域でないビデオフレームのエリア内のマクロブロックとの間のフレーム量と重み付けに基いてロー領域値をフレーム内のマクロブロックに割り当てるビットアロケーションモジュールとを備えた装置を提供する。
【0013】
他の実施形態において、この開示は、連続するフレームをフレームユニットにグループ化することと、フレームユニット内のそれぞれのフレーム内の関心領域をエンコードすることと、フレームユニット内のフレームの少なくとも1つのフレームに対してそれぞれの関心領域に無いエリアのエンコーディングをスキップすることとを備えた方法を提供する。
【0014】
さらなる実施形態において、この開示は、ビデオフレーム内の関心領域の定義を発生する関心領域マッパーと、ビデオフレームをエンコードするビデオエンコーダーと、グループ化する連続フレームをグループ化し、ビデオエンコーダーに、フレームユニット内のそれぞれのフレーム内の関心領域をエンコードするように命令し、ビデオエンコーダーに、フレームユニット内のフレームの少なくとも1つのフレームに対してそれぞれの関心領域内に無いエリアのエンコーディングをスキップするように命令するスキッピングモジュールとを備えた装置を提供する。
【0015】
ここに記載された技術は、ハードウエア、ソフトウエア、ファームウエアまたはそれらの任意の組み合わせで実施してもよい。ソフトウエアで実施されるなら、この技術は、実行されると、ここに記載した1つ以上の方法を実行する命令を含むプログラムコードを備えたコンピューター読み取り可能媒体により一部分実現してもよい。
【0016】
1つ以上の実施形態の詳細は、添付図面および以下の記述において述べられる。他の特徴、目的および利点は、詳細な説明と図面およびクレームから明らかになるであろう。
【図面の簡単な説明】
【0017】
【図1】図1はROIイネーブルビデオエンコーダー−デコーダー(CODECs)を内蔵するビデオエンコーディングおよびデコーディングシステムを図解するブロック図である。
【図2】図2は無線通信装置に関連したディスプレイ上に表示されたビデオシーン内のROIの定義を図解する図である。
【図3A】図3Aは図2に図解されたビデオシーンのROIおよび非ROIエリアを図解する図である。
【図3B】図3Bは図2に図解されたビデオシーンのROIおよび非ROIエリアを図解する図である。
【図4】図4は、非ROIスキッピングモジュール、ROIρ領域ビットアロケーションモジュール、およびROI重み計算機を有したROIイネーブルエンコーダーを内蔵するビデオ通信装置を図解するブロック図である。
【図5】図5はROI品質メトリック計算機を図解するブロック図である。
【図6】図6はROI品質メトリック計算のためのROIユーザーし好入力装置を内蔵する無線通信装置をさらに図解する図である。
【図7】図7はビデオエンコーダーにより適用されるコーディングパラメーターの最適化のためにビデオシーケンスを解析するためにROI品質メトリック計算機の使用を図解するブロック図である。
【図8】図8はビデオエンコーダーにより適用されるコーディングパラメーターの調節のためにエンコードされたビデオを解析するためにROI品質メトリック計算機の使用を図解するブロック図である。
【図9】図9はエンコードされたビデオのためのROI品質メトリック計算を図解するフロー図である。
【図10】図10はビデオシーケンスのためのROI品質メトリック計算を図解するフロー図である。
【図11】図11はρ領域ビットアロケーションを図解するフロー図である。
【図12】図12は重み付けされたビットアロケーションモデルおよび最適解を用いてエンコーディング技術の全体の知覚品質を比較するグラフである。
【図13】図13は非ROIスキッピングのための技術を図解するフロー図である。
【図14】図14は非ROIスキッピングをサポートするために連続するフレームをフレームユニットにグループ化することを図解する図である。
【図15】図15は非ROIスキッピングをサポートするために共通の非ROIエリアを有した連続するROIエリアのエンコーディングを図解する図である。
【図16】図16は、標準ビットアロケーション、重み付けされたビットアロケーション、およびユーザーし好係数α=0.9を有するバックグラウンドスキッピングを用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【図17】図17は標準ビットアロケーション、重み付けされたビットアロケーション、およびユーザーし好係数α=0.9を有したバックグラウンドスキッピングを用いてROIエンコーディング技術の全体のビデオフィディリティーを比較するグラフである。
【図18】図18は、標準ビットアロケーション、重み付けされたビットアロケーション、及びユーザーし好係数α=0.9を有したバックグラウンドスキッピングを用いてROIエンコーディング技術のROIビデオフィデリティーを比較するグラフである。
【図19】図19は標準ビットアロケーション、重み付けされたビットアロケーション、及びユーザーし好係数α=0.9を有したバックグラウンドスキッピングを用いてROIエンコーディング技術の非ROIビデオフィデリティーを比較するグラフである。
【図20】図20は標準ビットアロケーション、重み付けされたビットアロケーション、及びユーザーし好係数α=0.7を有するバックグラウンドスキッピングを用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【図21】図21は標準ビットアロケーション、重み付けされたビットアロケーション、およびユーザーし好係数α=0.7を有したバックグラウンドスキッピングを用いてROIエンコーディング技術の全体のビデオフィデリティーを比較するグラフである。
【図22】]図22は標準ビットアロケーション、重み付けされたビットアロケーション、及びユーザーし好係数α=0.5を有したバックグラウンドスキッピングを用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【図23】図23は標準ビットアロケーション、重み付けされたビットアロケーション、およびユーザーし好係数α=0.5を有したバックグラウンドスキッピングを用いてROIエンコーディング技術の全体のビデオフィデリティーを比較するグラフである。
【図24】図24は種々のユーザーし好係数値における標準フレームスキッピング及び非ROIスキッピングを用いてROIエンコーディング技術の知覚品質を比較するグラフである。
【図25】図25は非ROIスキッピングがオンおよびオフのときROIエンコーディング技術の知覚品質を比較するグラフである。
【図26】図26は例示ビデオシーケンスに対する非ROIスキッピングにより生じた歪みを図解するグラフである。
【図27】図27は非ROIスキッピングを用いて、非ROIスキッピングを用いないで、および適応非ROIスキッピングを用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【図28】図28はエンコーディングレートのレンジに対して例示ビデオシーケンスのための種々のビットアロケーション技術を用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【図29】図29は毎秒40キロビット(kps)のエンコーディングレートで、種々のビットアロケーション技術を用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【図30】図30は毎秒40キロビット(kps)のエンコーディングレートで種々のビットアロケーション技術を用いてROIエンコーディング技術の全体のビデオフィデリティーを比較するグラフである。
【図31】図31は毎秒40キロビット(kps)のエンコーディングレートで種々のビットアロケーション技術を用いてROIエンコーディング技術のROIビデオフィデリティーを比較するグラフである。
【図32】図32は毎秒40キロビット(kps)のエンコーディングレートで種々のビットアロケーション技術を用いてROIエンコーディング技術の非ROIビデオフィデリティーを比較するグラフである。
【図33】図33はエンコーディングレートのレンジに対して他の例示ビデオシーケンスのための種々のビットアロケーション技術を用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。
【発明を実施するための形態】
【0018】
図1はROIイネーブルビデオエンコーダー−デコーダー(CODECs)を内蔵するビデオエンコーディングおよびデコーディングシステム10を図解するブロック図である。図1に示されるように、システム10は第1のビデオ通信装置12と第2のビデオ通信装置14を含む。通信装置12、14は送信チャネル16により接続される。送信チャネル16は有線または無線通信システムであってもよい。システム10はテレビ電話のためのビデオ通信装置12、14間の双方向ビデオ送信をサポートする。装置12、14は実質的に対称な方法で動作してもよい。しかしながら、いくつかの実施形態において、一方または両方のビデオ通信装置12、14は、ROIイネーブルビデオストリーミングをサポートするために片方向通信だけのために構成されてもよい。
【0019】
ビデオ通信装置12の一方または両方は、ここに記載するように、テレビ電話(VT)のためのROIコーディングのための技術を適用するように構成されてもよい。ROIコーディング技術は、ROIへの割当のためのエンコーディングビットを節約するために非ROI領域の適応スキッピングと、ビデオブロックレベル、たとえばρ領域内のマクロブロック(MB)レベルで重み付けされたビットアロケーションモデルを用いてROIへのビットの割当と、ROIビデオのためのROIビデオ品質メトリックの発生を含む。これは、エンコードされたビデオシーケンスの品質を評価する際にROI、ROIビデオフィデリティー、ROI知覚品質におけるユーザーの関心度を共同で検討する。ρ(ロー)パラメーターは、MBのようなビデオブロック内のノンゼロAC係数の数を表す。ρ領域におけるレート制御はQP領域内のレート制御よりもより正確である傾向がある。非ROIスキッピング、ρ領域ビットアロケーション、および品質メトリックは、ROIおよび非ROIエンコーディングの効率的な制御を得るために共同でまたは別個に使用することができる。
【0020】
マクロブロックはフレームの一部を形成するビデオブロックである。
【0021】
MBのサイズは16×16ピクセルであってもよい。しかしながら、他のMBサイズが可能である。マクロブロックまたは他のビデオブロックはさまざまな異なるサイズを有していてもよいという理解とともに、マクロブロックは実例の目的のためにここに記載されるであろう。
【0022】
送受信両用のアプリケーションの場合、相互エンコーディング、デコーディング、マルチプレクシング(MUX)およびデマルチプレクシング(DEMUX)コンポーネントはチャネル16の反対端に設けてもよい。図1の例において、ビデオ通信装置12は、MUX/DEMUXコンポーネント18、ROI-イネーブルビデオCODEC20およびオーディオCODEC22を含む。同様に、ビデオ通信装置14は、MUX/DEMUXコンポーネント26、ROI-イネーブルビデオCODEC28およびオーディオCODEC30を含む。
【0023】
システム10は、セッションイニシエーテッドプロトコル(SIP)、ITU H.323規格、ITU H.324規格、または他の規格に従ってテレビ電話をサポートしてもよい。各ビデオCODEC20、28は、MPEG−2、MPEG−4、ITU H.263またはITU H.264のようなビデオ圧縮規格に従ってエンコードされたビデオデータを発生する。図1にさらに示されるように、ビデオCODECs20、28は、それぞれのオーディオCODECs22、30と統合してもよく、データストリームのオーディオ部分とビデオ部分を処理するために適当なMUX/DEMUXコンポーネント18、26を含む。オーディオ部分は音声または他のオーディオコンテンツを保持してもよい。MUX−DEMUXユニット18、26は、ITU H.223マルチプレクサプロトコル、またはユーザーデータグラムプロトコル(UDP)のような他のプロトコルに準拠していてもよい。
【0024】
各ROIイネーブルビデオCODEC20、28は、それぞれのビデオ通信装置12、14のローカルユーザーにより局所的に供給されるROI情報または他のビデオ通信装置12、14の遠隔ユーザーから遠隔的に供給されるROI情報を処理することができるようにしてもよい。例えば、ビデオ通信装置12のローカルユーザーは、ビデオ通信装置12により局所的に発生された「近端(near-end)」ビデオ内のROIを指定し、送信されたビデオの領域を装置14のリモートユーザーに強調してもよい。反対に、ビデオ通信装置12のローカルユーザーは、ビデオ通信装置14により遠隔的に発生された「遠端(far-end)」ビデオ内のROIを指定し、そのROIをリモートビデオ通信装置に通信してもよい。この場合、ビデオ通信装置12のユーザーは、例えば、ビデオ通信装置14から受信されたビデオ内のROIをより明瞭に見るために、ビデオ通信装置14によるROIの選択的エンコーディングを遠隔的に制御する。
【0025】
ビデオ通信装置12、14は、無線モバイル端末またはビデオストリーミング、テレビ電話または両方に適するように装備された優先端末として実施されてもよい。その目的のために、ビデオ通信装置12、14は、さらに適当な無線送信機、受信機、モデム、および無線通信をサポートするための処理電子機器を含んでいてもよい。無線モバイル端末の例は、モバイル無線電話、モバイルパーソナルデジタルアシスタンツ(PDAs)、モバイルコンピューター、または、無線通信能力およびビデオエンコーディングおよび/またはデコーディング能力を備えた他のモバイル装置を含む。有線端末の例は、デスクトップコンピューター、テレビ電話、ネットワーク装置、セットトップボックス、双方向テレビまたは同種のものを含む。どちらのビデオ通信装置12、14もビデオ情報を送信するように、ビデオ情報を受信するようにまたはビデオ情報を送受信するように構成されてもよい。
【0026】
テレビ電話アプリケーションの場合、装置12はビデオ送信能力およびビデオ受信能力の両方をサポートすることが一般的に望ましい。しかしながら、ストリーミングビデオアプリケーションもまた意図される。テレビ電話、特に無線通信によるテレビ電話において、極めて低いビットレートがしばしば要求されるので、帯域幅は、重視される。特に、通信チャネル16は制限された帯域幅を有していてもよく、チャネル16に対する品質ビデオシーケンスの効率的なリアルタイム送信を取り組みがいのあるものにさせる。例えば、通信チャネル16は、チャネル16における物理的制約により、または恐らくは通信チャネル16のプロバイダーにより課せられたサービスの質(QoS)制限または帯域幅割当制限により制限された帯域幅を有した無線通信リンクであってもよい。
【0027】
従って、ROIへのさらなるエンコーディングビットの選択的割当、より強いエラー保護、または他の優先的エンコーディングステップは、全体のエンコーディング効率を維持しながらビデオの一部分の画像品質を改良することができる。優先的エンコーディングの場合、さらなるビットをROIに割り当ててもよい。一方、ビデオシーン内のバックグラウンドのように、低減された数のビットを非ROI領域に割り当ててもよい。非ROIエリアはより一般的にROIの一部を形成しないビデオシーンの任意のエリアを含むけれども、非ROIエリアは「バックグラウンドエリア」と呼ばれるであろう。従って、非ROIとバックグラウンドという用語は、指定されたROI内に無いエリアを指すためにこの開示にわたって同義的に使用されてもよい。
【0028】
一般に、システム10はテレビ電話(VT)アプリケーションのための関心領域(ROI)処理のための技術を採用する。しかしながら、そのような技術はまた、上で示したようなビデオストリーミングアプリケーションに適用してもよい。実例の目的のために、各ビデオ通信装置12、14は、ビデオ情報の送信者および受信者の両方として動作することができ、それにより、VTセッションの全参加者として動作することができると仮定されるであろう。ビデオ通信装置12からビデオ通信装置14に送信されたビデオ情報の場合、ビデオ通信装置12は送信者装置であり、ビデオ通信装置14は受信者装置である。反対に、ビデオ通信装置14からビデオ通信装置12に送信されたビデオ情報の場合、ビデオ通信装置12が受信者装置であり、ビデオ通信装置14が送信者装置である。ここに記載される技術はまた、そのようなビデオを送信するのみまたは受信するのみの装置に適用可能である。ローカルビデオ通信装置12によりエンコードされ送信されるビデオ情報を論議するとき、ビデオ情報は、上述したように、「近端」ビデオと呼んでもよい。遠隔ビデオ通信装置によりエンコードされ、遠隔ビデオ通信装置から受信されたビデオ情報を議論するとき、ビデオ情報は「遠端」ビデオと呼んでもよい。
【0029】
開示された技術によれば、受信者装置として動作するとき、ビデオ通信装置12または14は、送信者装置から受信される遠端ビデオ情報のためのROI情報を定義する。この場合も先と同様に、送信者装置から受信されるビデオ情報は、通信チャネルの遠端に位置づけられる他の(送信者)装置から受信されるという意味では、「遠端」ビデオ情報と呼ばれるであろう。同様に、送信者装置から受信されるビデオ情報に対して定義されるROI情報は「遠端」ROI情報と呼ばれるであろう。遠端ROIは一般に、遠端ビデオの受信機に最も興味を起こさせる遠端ビデオ内の領域を指す。受信者装置は遠端ビデオ情報をデコードし、デコードされた遠端ビデオをディスプレイ装置を介してユーザーに提供する。ユーザーは遠端ビデオにより提供されるビデオシーン内のROIを選択する。あるいは、ROIは自動的に定義されてもよい。
【0030】
受信者装置は受信者装置におけるユーザーにより選択されたROIに基いて遠端ROI情報を発生し、遠端ROI情報を送信者装置に送信し、それにより送信者装置はそのような情報を使用することができる。遠端ROI情報は、ROI内に常駐するMBsの点から見るとROIを定義するROIマクロブロック(MB)マップのフォームをとってもよい。
【0031】
ROI MBマップは、ROI内にあるMBsに1のフラッグを立てても良く、ROI外部のMBsに0のフラッグを立ててもよく、ROIの(1)に含まれるMBsを容易に識別し、(0)から排除する。
【0032】
受信者装置により送信される遠端ROI情報を用いて、送信者装置は、優先的エンコーディングをビデオシーン内の対応するROIに適用する。特に、さらなるエンコーディングビットはROIに割り当てられてもよく、一方低減された量のエンコーディングビットは非ROI領域に割り当てられても良く、それによりROIの画像品質を改良する。このように、受信者装置は、送信者装置によって遠端ビデオ情報のROIエンコーディングを遠隔的に制御することができる。
【0033】
優先的エンコーディングは、優先的ビット割当またはROIエリア内の選択的量子化によりビデオシーンの非ROIエリアに対してよりもROIエリアに対してより高い品質のエンコーディングを適用する。優先的にエンコードされたROIは受信者装置のユーザーがオブジェクトまたは領域をより明瞭に見ることを可能にする。例えば、受信者装置のユーザーは、ビデオシーンのバックグラウンド領域よりも顔またはその他のオブジェクトをより明瞭に見ることを所望してもよい。
【0034】
送信者装置として動作するとき、ビデオ通信装置12または14もまた送信者装置により送信されるビデオ情報のためのROI情報を定義してもよい。この場合も先と同様に、送信者装置において発生されるビデオ情報は、通信チャネル近端で発生されるという意味では、「近端」ビデオと呼ばれるであろう。送信者装置により発生されるROI情報は、「近端」ROI情報と呼ばれるであろう。
【0035】
近端ROIは一般に、送信者が受信者に強調したい近端ビデオの領域を指す。それゆえ、ROIは、受信者装置によって遠端ROI情報として指定されてもよく、または、送信者装置によって近端ROI情報として使用されてもよい。送信者装置は近端ビデオをディスプレイ装置を介してユーザーに提供する。送信者装置に関連するユーザーは、近端ビデオにより提供されるビデオシーン内でROIを選択する。近端ビデオ内のROIが、例えば非ROIエリアに対してより高い品質エンコーディングで優先的にエンコードされるように、送信者装置は、ユーザーが選択したROIを用いて近端ビデオをエンコードする。
【0036】
送信者装置におけるローカルユーザーにより選択されるまたは定義される近端ROIは、送信者装置のユーザーがビデオシーン内の領域またはオブジェクトを強調することを可能にし、それにより、そのような領域またはオブジェクトを受信者装置ユーザーの注意に向ける。特に、送信者装置により選択された近端ROIは受信者装置に送信される必要はない。代わりに、送信者装置は選択された近端ROI情報を用いて、受信者装置に送信される前に、近端ビデオを局所的にエンコードする。しかしながら、いくつかの実施形態において、送信者装置は、より高い品質のエラー訂正またはポストプロセッシングのような優先的デコーディング技術のアプリケーションを可能にするために、受信者装置にROI情報を送信してもよい。
【0037】
ROI情報が送信者装置と受信者装置の両方により提供されるなら、送信者装置は、受信者装置からの受信された遠端ROI情報または局所的に発生された近端ROI情報を適用して近端ビデオをエンコードする。送信者装置と受信者装置により提供される近端ROI選択と遠端ROI選択との間にROI不一致が生じるかもしれない。そのような不一致は、ローカルユーザーによるアクティブ解像度または特定のアクセス権およびアクセスレベルに従う解像度のような解像度を要求してもよい。いずれにおいても、送信者装置は、送信者装置により局部的に提供されるまたは受信者装置により遠隔的に提供される近端ROI情報に基いてROIを優先的にエンコードする。
【0038】
ローカルユーザーかリモートユーザーにより指定されたROIを与えられると、この開示は一般的にROIエンコーディングのための技術に焦点を合わせる。特に、この開示は、ビデオシーン内のROIエリアと非ROIエリアとの間のビット割当に関して、ROIが優先的にエンコードされる方法を扱う。ROIビデオ品質メトリックはROIエリアと非ROIエリアとの間の重み付けされたビット割当をバイアスするために適用されてもよい。ビデオ品質メトリックは、ユーザーのし好の度合い、すなわちエンコードされたビデオシーケンスの品質を評価する際にROIにおける関心、ROIビデオフィデリティー、およびROI知覚品質を考慮する。重み付けされたビット割当はρ領域内に適用される。さらに、非ROI、または「バックグラウンド」スキッピングアルゴリズムは、ROIに割り当てるためのエンコーディングビットを節約するために適用されてもよい。
【0039】
図2は無線通信装置36に関連するディスプレイ34上に提示されるビデオシーン32内のROIの定義を図解する図である。図2の例において、ROIは長方形のROIまたは非長方形のROI40として描画される。非長方形のROI40は、円形または不規則な形状を有していてもよい。各ケースにおいて、ROI38またはROI40はビデオシーン32に提示される人の顔42を含む。図3Aおよび3Bは、図2に描画されたビデオシーン32のROIエリア38および非ROIエリア43を図解する図である。非ROIエリア、すなわち背景は、図3Bにおいて、シェーディングにより強調される。
【0040】
ROI38または40は、ユーザーにより手動で定義されてもよく、装置36により自動的に定義されてもよく、またはユーザーにより手動のROI描写および装置36により自動ROI定義の組み合わせを用いてもよい。長方形のROI38は、ユーザーにより選択されてもよい。非長方形のROI40は、ユーザーにより描画されてもよい。例えば、スタイラスペンまたはタッチスクリーンを用いて描画されてもよい。または、さまざまなオブジェクト検出またはセグメンテーション技術のいずれかを用いて装置36により自動的に選択されてもよい。VTアプリケーションの場合、ROI38または40は、テレビ会議における参加者の顔42を含むビデオシーンの一部分を含んでいてもよい。ROI38または40のサイズ、形状および位置は、固定であってもよいし、調節可能であってもよく、さまざまな方法で定義され、描画され、調節されてもよい。
【0041】
ROI38または40は、人の顔42のような、送信されたビデオシーン内の個々のオブジェクトをビデオ送信者が強調することを可能にする。反対に、ROI38または40は、ビデオ受信者が、受信したビデオシーン32内の所望のオブジェクトをより明瞭に見ることを可能にする。いずれの場合であっても、ROI38または40内の顔は、ビデオシーン32のバックグラウンド領域のような非ROIエリアに対してより高い画像品質でエンコードされる。このようにして、ユーザーは顔の表情、唇の動き、目の動き等をより明瞭に見ることができる。
【0042】
しかしながら、ROI38または40は、顔以外のオブジェクトを指定するために使用されてもよい。一般的に言えば、VTアプリケーション内のROIは非常に主観的であり得、ユーザー毎に異なってもよい。また、所望のROIはどのようにVTが使用されるかに依存する。一部の例では、テレビ会議とは対照的にオブジェクトを見て評価するために使用されてもよい。例えば、ユーザーは、プレゼンターの顔よりもむしろ方程式とか図を含むホワイトボードの一部に焦点を合わしたいと思うかもしれない。特に、プレゼンテーションがカメラから顔をそらしホワイトボードに向いているときはそうである。一部の例では、ビデオシーンは、2以上のROIを含んでいてもよい。これらは優先的エンコーディングのために指定される。
【0043】
図4はビデオ通信装置12に使用するためのROIイネーブルビデオエンコーディングシステム44を図解するブロック図である。図4に示されるように、システム44は、ROI重み計算機46、ρ領域ビット割当モジュール48、非ROI(すなわち、バックグラウンド)スキッピングモジュール50、ROIマクロブロック(MB)マッパー52、フレームレベルレートコントローラー54、ρ対量子化パラメーター(QP)マッパー56、ビデオエンコーダー58、および歪みアナライザー60を含む。図4において、MUX−DEMUXおよびオーディオコンポーネントは図を容易にするために省略されている。
【0044】
図4で描画されるさまざまなコンポーネントは、各モジュールに帰する機能性を含む機能モジュールまたはモノリシックモジュールとしてさまざまな方法で形成されてもよい。いずれにしても、ビデオエンコーディングシステム44のさまざまなコンポーネントは、ハードウエア、ソフトウエア、ファームウエアまたはそれらの組み合わせにおいて実現されてもよい。例えば、そのようなコンポーネントは、1つ以上のマイクロプロセッサーまたはデジタルシグナルプロセッサー(DSPs)、1つの以上の特定用途向け集積回路(ASICs)、1つ以上のフィールドプログラマブルゲートアレイ(FPGAs)、または他の等価な集積されたまたはディスクリートな論理回路上で実行するソフトウエアプロセスとして動作してもよい。
【0045】
図4の例において、ROI重み計算機46は、ビデオ通信装置12のローカルユーザーまたはビデオ通信装置14のリモートユーザーにより入力されたユーザーし好ファクターαを受信する。ユーザーし好αは、ROIのための知覚重要度ファクターである。これは、ROIのビジュアル品質の重要度が実際のユーザーの遠近感を形成することを表す。ユーザーし好αは、ユーザーがROI内のビジュアル品質を評価する度合いを定量化する。ユーザーがROIビジュアル品質を強く評価するなら、αは高くなるであろう。ROIのビジュアル品質がそれほど重要でないなら、αは低くなるであろう。し好αに基いて、ROI重み計算機46は、ビデオエンコーダー58によりエンコードされるビデオフレームの非ROIエリアとROIエリアとの間の重み付けされたビット割当をバイアスするためにROIρ領域ビット割当モジュール48に適用される重みのセットwiを発生する。重みwiはビデオフレーム内のマクロブロック(MBs)のような個々のビデオブロックに対して指定されてもよい。ROI重み計算機46は、ROIMBマッパー52からROIMBマップを受信し、それぞれの重みwiをROIMBマッパー52により識別されるROIおよび非ROIMBsに割り当てる。より高い重みwiを有するマクロブロックは、より高いコーディングビットの数を受信するであろう。
【0046】
ρ領域ビット割当モジュール48は、ROI重み計算機46から重み入力を受信し、非ROIバックグラウンドスキッピングモジュール50からスキッピングインディケーション(スキップオン/オフ)を受信し、ROIMBマッパー52からレートバジェットRBUDGETを受信し、ビデオエンコーダー58からエンコードされたMBsのための標準偏差σを受信する。標準偏差σは、動き検出の後に得られる実際の剰余の標準偏差であってもよいし、以前のフレームからの記憶された剰余統計であり得る。ROIMBマッパー52により提供されるROIMBマップは、指定されたROI内に含まれる所定のビデオフレーム内のMBsを識別する。ROIMBマップを用いて、ρ領域ビット割当モジュール48は、ROI MBsへの優先的ビット割当の目的のために、すなわち、ROI重み計算機46により供給される重みwiを用いて、非ROIMBsからROIMBsを区別する。ビット割当モジュール48は各MBのためのρパラメーターを発生する。ρパラメーターはMBにおけるノンゼロAC係数の数を表す。ρ領域のレート制御はQP領域におけるレート制御よりより正確である傾向がある。
【0047】
この開示の目的のために、ROIMBマップの発生のための適切なプロセスが利用可能であることを仮定される。例えば、ROIマッピングプロセスは、ROIを定義するユーザーからの手動入力に基いていてもよいし、または、例えば、顔の検出、顔のセグメンテーション、および受け入れ可能な精度を有した目標トラッキングのような一般的な技術を用いて、ROIの自動定義または検出に基いていてもよい。この開示において、図解の目的のために、頭または頭および肩のビデオシーンが考察される。しかしながら、ここに記載した技術は、人に加えてまたは人に代わるものとしてさまざまなオブジェクトを含むビデオシーケンスの他のタイプに適用されてもよい。
【0048】
フレームレベルレートコントローラー54は、ビデオシーケンス内の個々のフレームに対してビットの割当を発生する。特に、フレームレベルコントローラー54は、このフレーム内のMBsのすべて、すなわち、ROIMBsと非ROIMBsの両方をエンコードするために利用可能なビットの数を示す値RBUDGETを発生する。図4においてさらに示されるように、ρ領域ビット割当モジュール48は、非ROIバックグラウンドスキッピングモジュール50からのスキップ表示(スキップオン/オフ)を受信する。これは、現在のフレーム内のバックグラウンドがエンコードされるかまたはスキップされるかどうかを示す。バックグラウンドがスキップされるなら、ρ領域ビット割当モジュール48は、実際には、そうでなければ非ROIに割り当てられていたであろうビットを取り戻し、それらをROIをエンコードするために利用可能なビットのプールに再割当する。それゆえ、スキッピングが特定のフレームにおいてオンであるなら、ρ領域ビット割当モジュール48は、ROIに割り当てるためにRBUDGET内により多くのビットを有する。バックグラウンドが特定のフレームでスキップされるなら、以前にエンコードされたフレームからのバックグラウンドは、その場所に置き換えられる。あるいは、スキップされたバックグラウンドは補間により生成されてもよい。
【0049】
重みwi、ROIMBマップ、RBUDGET、スキップオン/オフ表示、および標準偏差σを用いて、ρ領域ビット割当モジュール48は各MBのρバジェット(budget)を示すρ領域出力を発生する。ρ領域出力はρ対QPマッパー56に適用される。これは、ρ値を各MBのための対応するQP値にマップする。フレーム内のMBsのためのQP値を用いて、ビデオエンコーダー58は、入力ビデオをエンコードしエンコードされたビデオを生成する。さらに、スキッピングモジュール50は、ビデオエンコーダーに、連続するフレームをフレームユニットにグループ化し、フレームのROIエリアをエンコードし、フレームユニット内のフレームの1つのための非ROIエリアのエンコーディングをスキップすることを命令するためにビデオエンコーダー58にスキップ表示(スキップオン/オフ)を供給する。先行するフレームユニットに関連する歪み値がしきい値未満ならスキッピングモジュール50がビデオエンコーダー58にフレームユニット内のフレームの1つのための非ROIエリアのエンコーディングをスキップすることを命令してもよいという意味においてスキッピングは適応できてもよい。このように、スキッピングモジュール50は、ビジュアル品質を維持するために歪みのレベルに基いて適応スキッピングを適用してもよい。
【0050】
入力ビデオは、ビデオ通信装置12と集積されるまたは動作可能に接続されるビデオカメラのようなビデオキャプチャー装置から得てもよい。例えば、いくつかの実施形態において、ビデオキャプチャー装置は携帯電話と一体化されいわゆるカメラ電話またはビデオ電話を形成してもよい。このように、ビデオキャプチャー装置40は、モバイルVTアプリケーションをサポートしてもよい。ビデオは、ビデオ通信装置12または14と一体化されてもよくまたは動作可能に接続されてもよい、液晶ディスプレイ(LCD)、プラズマスクリーン、等のようなディスプレイ装置を介して、局部的にビデオ通信装置12に、および送信するときにビデオ通信装置14の両方に提示されてもよい。
【0051】
歪みアナライザー60はオリジナル入力ビデオに対してエンコードされたビデオを解析する。例えば、歪みアナライザー60はオリジナル入力ビデオフレームFを再構成されたビデオフレームF’と比較する。歪みアナライザー60は、非ROIバックグラウンドスキッピングモジュール50に適用するために歪み値DNONROI_SKIPを発生する。歪み値DNONROI_SKIPは、次のビデオフレームの非ROIエリアがスキップされるべきか、スキップされるべきではないかを示す。従って、現在のフレームにおける適応非ROIスキッピングの場合、非ROIスキッピングモジュール50は一般的に、先行するフレームまたは2以上のフレームを含むフレームユニットに関連する歪み情報に依存してもよい。
【0052】
歪み値DNONROI_SKIPが所望のしきい値を超えるなら、非ROIバックグラウンドスキッピングモジュール50は、次のフレーム内の非ROIはスキップされるべきではないことを示す。この場合、ROIエリアおよび非ROIエリアは両方ともエンコードされる。しかしながら、歪み値が所望のしきい値未満なら、非ROIエリアは、歪みの過度のレベルを伴わずにスキップすることができる。この場合、以前のフレームに対してエンコードされた非ROIエリアは、現在のフレームにおいて使用される。記載されるように、非ROIスキッピングモジュール50は、連続するフレームをフレームユニットにグループ化してもよく、先行するユニット、すなわち、現在エンコードされているフレームに先行するフレームを含むフレームユニットのための歪み値DNONROI_SKIPに依存して、ビデオエンコーダー58にフレームの1つのための非ROIのエンコーディングをスキップするように命令してもよい。
【0053】
図5はこの開示の他の実施形態に従って、ROI品質メトリック計算機61を図解するブロック図である。図4のROI重み計算機46は、ROI品質メトリック計算機61の一部を形成してもよい。従って、ROI品質メトリック計算機46の1つの成果は、重みwiのセットであってもよい。これは、ユーザーし好ファクターα、並びにビデオフィデリティー、空間品質、および/または一時的な品質値に基いていてもよい。図5において示されるように、ROI品質メトリック計算機61は、ユーザーし好値αおよび1つ以上のビデオ歪み値を受信する。ビデオ歪み値は、ROI値および非ROI値に分割されてもよく、ビデオフィデリティー値DRF、DNF、空間品質値DRS、DNS、および一時的な品質値DRT、DNTを含んでいてもよい。DRFはROI内のビデオフィデリティーを表し、一方、DNFは、非ROI領域内のビデオフィデリティーを表す。DRSはROIエリア内の空間品質を表し、一方DNSは非ROIエリア内の空間品質を表す。DRTは、ROIエリア内の一時的な品質を表し、一方、DNTは非ROIエリア内の一時的な品質を表す。ROI品質メトリックは、エンコードされたビデオシーケンスの品質を評価する際に、共同でユーザーの関心、ビデオフィデリティーおよび知覚品質(空間、一時的または両方)を考察する。いくつかの実施形態において、より良い主観的ビジュアル品質を得るために、ρ領域ビット割当モジュール48により適用されるビット割当アルゴリズムをバイアスするために測定基準を用いてもよい。
【0054】
ROIビデオコーディングは広範囲に研究されたけれども、ROIビデオのための品質測定は、十分に詳細には、対処されなかった。ほとんどの品質測定技術は、ピーク信号対雑音比(PSNR)を歪み測定として使用し、ビデオフレームのROIおよび非ROI部分を評価する。ROIビデオ品質メトリックは、解析の目的のみならず、主観的なビジュアルの望ましい解決に向けた(例えば、図4のビット割当モジュールに適用された)重み付けされたビット割当技術をバイアスするための入力として有用である。一般に、成就したように、ROIビデオ品質の評価は、少なくとも3つのアスペクトを考察する。すなわち、ユーザーのROIビジュアル品質関心またはし好α、再構成されたビデオデータのビデオフィデリティー、および再構成されたビデオデータの知覚品質(空間、一時的または両方)である。
【0055】
ユーザーのし好αはビデオフレームのROI部分と非ROI部分への分類および関連する知覚重要度ファクターを直接決定する。テレビ電話アプリケーションにおいて、話し手の顔領域は、典型的なROIである。なぜならば、人間の顔の表現は非常に複雑であり、小さな変化が大量の情報を運ぶ可能性がある。ビデオフィデリティーファクターの場合、PSNRは良好な測定である。これは、オリジナルフレームと比較して、再構成されたビデオフレームの歪みの合計量を示す。再構成されたフレームは、エンコードされたビデオフレームをデコードすることにより生成されるのに対してオリジナルフレームは、エンコードする前のビデオフレームである。
【0056】
多くの場合において、ビデオフィデリティーは、ビデオコーディングのための最も重要な考察であろう。この場合、任意の改良は、より良い主観的なビジュアル品質を生じるかもしれない。しかしながら、これは常にそうだとは限らない。これは、いくつかの場合において知覚品質ファクターも考慮されなければならない理由である。知覚品質は、空間エラーと一時的エラーの両方を考慮する。空間エラーは、ブロッキングの存在(すなわち、ブロッキネス(blockiness))、リンギングアーチファクト、または両方を含んでいてもよい。一時的エラーは、一時的フリッカーの存在、すなわち、ビデオフレームのビジュアル品質が時間軸に沿って非均一に変換するときを含んでいてもよい。一時的なエラーは、ビデオシーケンスにおいて、不規則に変化する動きを生じる可能性がある。これは望ましくない。
【0057】
DRとDNRは、ROIと非ROIのピクセルあたりの正規化された歪みを示し、αは、ROI知覚重要度ファクターを示す。上で示した観点の中の関係がビデオ品質評価において線形関数に簡単化することができると仮定するなら、ビデオシーケンスの全体の歪みは以下のように表すことができる。
【数1】
【数2】
【0058】
は、ビデオシーケンス内のMフレーム内のi番目のオリジナルおよび再構成されたフレームである。βとγは、重みファクターである。DRとDNRはROIおよび非ROIのための合計歪みである。DRF、DRS、DRTは、フィデリティーにおけるROIの正規化されたエラー、空間知覚品質および一時的な知覚品質である。DNF、DNSおよびDNTは非ROIエリアのための対応するものである。値、α、βおよびγは0と1の間の実値が割り当てられなければならない。結果として生じる品質メトリックは、重み付けされたビット割り当てにおけるローパラメーターのための最適化問題を説明するための費用関数として使用することができ、またはROI処理における他の問題のために使用することができる。
【0059】
無線テレビ電話のような低ビットレートビデオアプリケーションにおいて、ブロッキング(すなわち、ブロッキネス(blockiness))アーチファクトは、空間知覚品質の主要な関心事である。この種のアーチファクトは量子化により生じる。この場合、ほとんどの高周波数係数は除去される、すなわち、ゼロに設定される。この結果得られる効果は、平坦化された画像ブロックは、ブロック境界を完全に顕著にさせるということである。極めて低ビットレートの場合において、DC係数のみがコード化されるであろう。これはデコードされた画像をピースのようなコンスタントブロックにさせる。この開示において、ROI空間品質値DRS(DNSに類似)は、正規化されたブロッキネス歪みとして定義される。これは次のように表してもよい。
【数3】
【0060】
知覚可能な不連続が存在するかどうかを見るためにブロック間の境界がチェックされる。ブロック境界にわたって強度スロープの平均2乗差の和をチェックする適切な不連続検出アプローチは、S. MinamiおよびA. Zakhor著の「変換コーディングにおけるブロッキング効果を除去するための最適アプローチ](An optimization approach for removing blocking effects in transform coding)IEEE Trans.ビデオ技術のための回路システムVol. 5, No. 2, pp.74-821995年4月に記載されている。その全体の内容は参照することによりここに組み込まれる。このアプローチの仮定は、ブロック境界の両側のスロープは同じでなければならず、スロープにおける突然の変化がおそらく量子化によるものであるということである。
【0061】
方程式(1)において、DRT(またはDNT)値は、ビデオシーケンスにおけるすべてのフレームのためのDRS(またはDNS)の分散に基いて[0,1]のレンジにおける割り当てられたスコアとして定義される。このように、ビデオフィデリティー、空間知覚品質、および一時的な知覚品質に関する表現は正規化され、重み付けされたパラメーターα、β、γによりブリッジされることが可能であり、制御可能なビデオ品質測定を形成する。これらの重み付けするパラメーターの選択は、それらの要件と期待値に基いてユーザー次第である。この場合も先と同様に、この測定は、お気に入りの主観的知覚に向けたビット割当プロセスをバイアスするために入力として有用かもしれない。従って、ユーザーは、ROIコーディングにおいて、よりビジュアルな満足のいく結果を得てもよい。
【0062】
図6はROI品質メトリック計算のためのROIユーザーし好入力装置62を組み込む無線通信装置36を図解する図である。図6において、無線通信装置36は一般的に図2に準拠するが、さらにユーザーのし好を捕らえるために入力装置62をさらに組み込む。これは、ビデオシーン32のROI部分と非ROI部分に割り当てられた関連重要度を指定する。図6の例において、入力装置62は、ユーザーの好みの度合いを示すためにスライダーバーの長手方向に沿って移動することができるスライダー64を有するスライダーバーの形態で示される。
【0063】
入力装置62を用いて、ユーザーは、例えば品質メトリック計算機61により、ダイナミックにROIビット割当に影響を及ぼすために、ユーザーのし好を選択的に調節することができる。ユーザーし好が変化するにつれて、ビデオフレームのROI部分と非ROI部分の間のビット割当は変化してもよい。図6において水平スライダーバーが描画されるけれども、入力装置62は、垂直スライダーバー、ボタン、ダイアル、ドロップダウンパーセンテージメニュー等のようなさまざまな等価な入力媒体のいずれかにより実現されてもよい。そのような入力媒体は、タッチスクリーンを介して、またはハードキー、ソフトキー、ポインティングデバイス等のいずれかを介して操作されてもよい。
【0064】
図7は、ROIイネーブルビデオエンコーダー63により適用されるコーディングパラメーターの最適化のためにビデオシーケンスを解析するためのROI品質メトリック計算機61の使用を図解するブロック図である。図7で示されるように、ROI品質メトリック計算機61は、ビデオシーケンスがROIイネーブルビデオエンコーダー63によりエンコードされる前に入力されるビデオシーケンスのための歪み値を解析するために適用される。それゆえ、ROI品質メトリック計算機は、例えばビデオビットストリームに対して図5を参照して記載されるように、歪み値を解析する。歪み値およびユーザーし好値αに基いて、ROI品質メトリック計算機は、入力されるビデオシーケンスをエンコードする際にビデオエンコーダー63により使用するために最適化されたパラメーターのセットを発生する。最適化されたパラメーターはビデオフレームのROIエリアと非ROIエリアとの間のエンコーディングビットを割り当てるためにビット割当モジュールにより使用される重みを含んでいてもよい。すなわち、重み付けファクターβおよびγのようなビットアロケーションにおいて使用される他のパラメーターのための値を含んでいてもよい。ある意味では、図7は、オープンループインプリメンテーションを表す。この場合、ROI品質メトリック計算機61は、エンコーディングする前に入力されるビデオストリームを解析するがエンコードされたビデオを解析しない。品質メトリックは、エンコーダー63により使用するための最適なコーディングパラメーターの発生を生じる。
【0065】
図8は、ROIイネーブルビデオエンコーダー63により適用されるコーディングパラメーターの調節のためにエンコードされたビデオを解析するためにROI品質メトリック計算機61の使用を図解するブロック図である。図8の例において、ROI品質メトリック計算機61はエンコードされたビデオ並びにユーザーし好値に関連する歪み値を解析し、ROIイネーブルビデオエンコーダー63により使用されるコーディングパラメーターに対する調節を生成する。それゆえ、ROI品質メトリック計算機61は、ビデオがROIイネーブルビデオエンコーダー63によりエンコードされた後でビデオを解析し、例えば、ビデオエンコーダーの性能およびエンコードされたビデオの品質を改良するためにクローズドループに基いて調節を生成する。コーディングパラメーターに対する調節は、ビデオフレームのROIエリアおよび非ROIエリアとの間にエンコーディングビットを割り当てるためにビット割当モジュールにより使用される重みを調節することを含んでいてもよい。または、重み係数βおよびγのようなビットアロケーションにおいて使用される他のパラメーターのための値を含んでいてもよい。図8の例において、しきい値との品質メトリックの比較が満足されるまで、ループで反復的に品質をエンコードし評価するために品質メトリックが使用される。各反復において、品質メトリック計算機61は、コーディングパラメーターの改良されたセットを送信する。最終的には、反復は品質メトリックしきい値の満足かまたは結果の収束により停止する。
【0066】
図9は、ROI品質メトリック計算を図解するフロー図である。図9に示されるように、適用可能なROIMBマップが与えられると、ROI品質メトリック計算機46は、ROIユーザーし好αを取得し(68)、ビデオフレームのROI部分および非ROI部分をエンコードする(70)。エンコードされたビデオフレームを再構成すると、歪みアナライザー60は、以前にエンコードされたビデオフレームとオリジナルビデオフレームを解析し、先行するビデオフレームのそれぞれROI部分と非ROI部分のビデオフィデリティーDRFおよびDNFを決定する。さらに歪みアナライザー60は、それぞれROIおよび非ROI知覚の一時的な品質値DRT、DNTを発生し、ならびにROIと非ROIの知覚の空間品質値DRSおよびDNSを発生する。ROI品質メトリック計算機46は、歪みアナライザー60からビデオフィデリティーを取得し(72)、ROIおよび非ROIの一時的な品質を取得し(74)、ROIと非ROIの空間品質を取得する(76)。
【0067】
ユーザーし好、ビデオフィデリティー、空間品質、および一時的な品質に基いて、ROI品質メトリック計算機46はROI品質メトリックを決定する(78)。ビデオフィデリティーは、例えば、ピクセル毎に色の強さの値に関して、オリジナルフレームに対する再構成されたビデオフレームにおけるビデオエラーを測定する。例えば、ピクセル毎の色の強さの値に関するエラーを測定する。空間品質は、オリジナルフレームに対する再構成されたフレームにおけるブロッキングおよびリンギングアーチファクト(artifacts)のような空間エラーを測定する。一時的な品質は、フレームビジュアル品質が時間軸に沿って非均一に変化する一時的なフリッカーのようなエラーを測定する。
【0068】
とりわけ、ユーザーし好は、ユーザーにより適用される現在の値であるのに対し、ビデオフィデリティー、空間品質および一時的な品質は、ビット割当モジュール48により操作される現在のフレームに先行する1つ以上のフレームから導き出される。ユーザーし好は、ユーザーが値を変化させるときまでフレーム毎に固定されていてもよい。ユーザーが値を指定していないなら、デフォルト値をユーザーし好ファクターに割り当ててもよい。図5を参照して上述したように、現在のフレームのROIと非ROIとの間のビット割当をバイアスするためにROI品質メトリックが適用されてもよい。例えば、品質メトリックは、ROIビット割当のための重みを調節するために使用されてもよい。いくつかの実施形態において、図9に示される機能性は、図8の「クローズドループ」例において、ROI品質メトリック計算機61により実行される動作を表してもよい。
【0069】
図10はビデオシーケンスのためのROI品質メトリック計算を図解するフロー図である。
【0070】
図10は実質的に図9に相当するが、ビデオストリームがエンコードされる前に品質メトリック計算がビデオストリームに対してなされる実施形態を表す。従って、図10のプロセスはさらにビデオストリームを取得することを含む(67)。さらに、図9と対照的に、ビデオエンコーディング(70)は、ROI/非ROIビット割当をバイアスした(80)後に実行される。いくつかの実施形態において、図9に示される機能性は、図7の「オープンループ」例においてROI品質メトリック計算機61により実行される動作を表してもよい。
【0071】
図11はROIρ領域ビット割当を図解するフロー図である。図11に示されるように、ビット割当モジュール48は、ROI定義(82)とフレームのためのレート量(84)を取得する。ROI定義は、ROIに含まれるMBsまたは他のビデオブロックを識別するROI MBマップの形態を取ってもよい。レート量は、ROIエリアおよび非ROIエリアを含む全体のフレームをエンコーディングするために利用可能なビット数を提供する。さらに、ビット割当モジュール48は、ROIと非ROIとの間のビット割当をバイアスするROI重み計算機46からROI重みwi(86)を取得する。フレームのための非ROIスキップモードを決定すると、すなわち、フレームに対してスキッピングがオンかまたはオフかどうかを決定すると、ビット割当モジュール48は、現在のフレームのための統計値を取得する。次に、現在のフレーム統計値(89)は、次のフレームまたはフレーム群のためのスキッピングモード決定を行うために使用することができる。フレーム統計値は、例えば、運動推定に続くフレームの剰余の標準偏差を含んでいてもよい。あるいは、フレーム統計値は、以前のフレームまたはフレーム群に対して取得されてもよい。スキップモードインジケーション(88)を用いて、ビット割当モジュール48は、すべての利用可能なビットがROI(非ROIフレームスキッピングオン)に供することができるかどうかまたはビットがROIと非ROIとの間で共有されなければならないかどうか(非ROIフレームスキッピングオフ)を決定することができる。
【0072】
ROI定義、フレームレート量、品質メトリックバイアス、及び非ROIスキップモードを使用して、ビット割当モジュール48は、ROIMBsと非ROIMBsとの間の重み付けされたρ領域のビットの割当を発生する(90)。ρ領域のビット割当を決定すると、マッパー56は、QPへのρマッピングを実行し、ビデオエンコーダー58に適用するためにMB QP値を供給する(92)。マッパー56は、ρをQPマッピングテーブルに適用してもよいし、または特定のρのためのQPを発生する方程式または関数を適用してもよい。ビデオエンコーダー58は、ビット割当モジュール48とマッパー56により供給されるQP値を使用して適用可能なビデオフレーム内の個々のROIおよび非ROIMBsをエンコードする。結果として生じるビット割当は、適用可能なフレーム量だけでなく、非ROIスキッピングの利用可能性およびビデオシーケンス内の先行するフレームまたはフレーム群に関連する品質メトリックを考慮してもよい。ビット割当モジュール48の動作は、以下にさらに詳細に記載されるであろう。
【0073】
この開示において記載されたビット割当技術は一般的に十分なROI検出または定義の利用可能性、および受け入れ可能なフレームレベルのレート制御の利用可能性を仮定する。これに基いて、ビット割当技術は一般的にROIと非ROIMBsとの間のMBレベルレート制御に焦点を合わせる。ほとんどの一般的なROIビット割当アルゴリズムは、ITU H.263+TMN8モデルの重み付けされたバージョンに基いている。この場合、費用関数が作成され、関数内のさまざまな領域上の歪み成分があらかじめ設定された重みのセットを使用することにより異なって重みづけされる。ほとんどの他のビデオ規格のように、TMN8はQ領域レート制御スキームを使用する。これはQPの関数を用いてレートと歪みをモデル化する。しかしながら、この開示において記載されたビット割当技術は、ρ領域レート制御モジュールを使用する。この場合、ρは、ビデオコーディングにおいてMB内のノンゼロ量子化AC係数の数を表す。ここに記載されるように、ρ領域ビット割当を使用することはQP領域レート制御よりもより正確になる傾向があり、レート変動を効率的に低減してもよい。
【0074】
ビデオコーディングアプリケーションにおいて、典型的な問題は、ビデオシーケンスのための与えられたビット量を用いて歪み値Dsequenceを最小化することである。この複雑な問題のための最適解は、最適フレームレベルレート制御アルゴリズムおよび最適のマクロブロックレベルビット割当スキームに依存する。しかしながら、現在のフレームをコーディングしているとき将来のフレームについての非常に限られた情報が入手可能なテレビ電話のようなリアルタイムのアプリケーションの場合、最適フレームレート制御を達成しようとすることは実用的ではないまたは実現可能ではない。典型的にポピュラーなアルゴリズム(「グリーディ(greedy)アルゴリズム)が適用される。グリーディアルゴリズムは、ビデオコンテンツの複雑さがビデオシーケンス内のフレームに沿って均一に分配されると仮定する。これに基いて、グリーディアルゴリズムは、利用可能なビットの一部分をシーケンス内のフレームの各々に割り当てる。リアルタイムアプリケーションにおいて、また、将来のフレーム情報の限られた利用可能性は、レート制御における一時的な品質を考慮することを困難にさせる。
【0075】
この開示において、実用的な解を見つけるためにおよびビット割当問題を簡単にするために、一般的に、良好なフレームレベルレート制御が利用可能であると仮定される。この仮定は、ビット割当問題をマクロブロックレベルのビット割当に低減する。同時に、ビット割当スキームは非ROIスキッピングアプローチをうまく利用してもよい。スキップされた領域は、以前のフレームの知覚品質と同じ知覚品質を提示するので、非ROIスキッピングは、一時的な歪み期間
【数4】
【0076】
の値を低減するための機会を増大させる。従って、非ROIエリアのスキッピングは、連続したフレーム間の知覚品質の変動を低減してもよい。
【0077】
説明のために、ビデオフレームの画像品質は方程式(1)に従って評価される。しかしながら、簡単にするために、β+γ=1となるようにβとγが設定される。与えられたフレームfとフレームをコーディングするためのビットレートRのための合計ビット量を示すと、問題は、以下の関数により表すことができる。
【数5】
【0078】
上述の最適化問題は、ラグランジュ緩和とダイナミックプログラミングにより解決することができるかもしれない。しかしながら、そのようなアプローチの計算上の複雑さは、リアルタイムシステムが負うことができるものよりもはるかに高いであろう。それゆえ、この開示に従って、低い複雑さの近最適解が好ましい。特に、この開示において、ρ領域における2段ビット割当アルゴリズムが適用される。第1段は以下の最適な問題を含む。
【数6】
【0079】
方程式(4)のための最適なコーディングパラメーターが得られた後で、第2段は、コーディングパラメーターを反復して調節し、ローカル最小値に到達するまで期間
【数7】
【0080】
を低減する。この2段アルゴリズムの結果は、βが相対的に大きな数であるとき、最適な解に非常に接近するかもしれない。β=1のとき、問題(3)と(4)は同一である。この開示において、焦点は、第1段と問題(4)に対する解に当てられる。
【0081】
ROIビデオコーディングにおいて、Nはフレーム内のMBsの数であり、{ρi}、{σi}、{Ri}、および{Di}は、それぞれi番目のマクロブロックのためのρのセット、標準偏差、レートおよび歪み(2乗誤差の和)である。従って、
【数8】
【0082】
である。重み{wi}のセットは、以下のようにフレーム内のすべてのMBsに対して定義される。
【数9】
【0083】
この場合、KはROI内のMBsの数である。方程式(5)は、例えばROI重み計算機46により実施されてもよい。それゆえ、フレームの重み付けされた歪みは、
【数10】
【0084】
である。それゆえ、問題(4)は以下のように書き換えることができる。
【0085】
R≦RbudgetとなるようにDを最小化する。 (7)
方程式(7)はモデリングベースビット割当アプローチを用いることにより解が得られる。自然画像のAC係数の分配は、ラプラシアン分配
【数11】
【0086】
により最良に近づけることができる。それゆえ、i番目のマクロブロックのレートと歪みは、ρの関数として以下に示す方程式(8)および(9)においてモデル化することができる。
【0087】
例えば、レートは以下のように表すことができる。
【0088】
Ri=Aρi+B (8)
この場合、AおよびBはコンスタントモデリングパラメーターである。Aはノンゼロ係数をエンコードするために必要な平均ビット数として考えることができる。Bは、非テクスチャー情報によるビットとして考えることができる。
【0089】
さらに、歪みは以下のように表すことができる。
【数12】
【0090】
この場合、θは未知の定数であり、σは、剰余データの標準偏差である。ここで、任意の選択されたρiから受け入れ可能な量子化の方法を発生するために利用可能な十分に正確なρ−QPテーブルがあると仮定されるので、ビット割当技術は、量子化の方法のかわりにρiを最適化する。一般に、方程式(7)は、ラグランジュ緩和を用いて解くことができる。この場合、制限された問題は、以下のように非制限された問題に変換される。
【数13】
【0091】
この場合λ*は、
【数14】
【0092】
をイネーブルにする解である。方程式(10)において、部分導関数をゼロに設定することにより、最適化されたρiのための以下の式が得られる。
【数15】
【0093】
これは、
【数16】
【0094】
である。従って、
【数17】
【0095】
である。そして、
【数18】
【0096】
である。他方、
【数19】
【0097】
なので、以下の関係を保持する。
【数20】
【0098】
方程式(14)と(16)から、ビット割当モデルIは以下のように得られる。
【数21】
【0099】
次に、結果として生じるρは、対応するQPにマップされ、適切な数のコーディングビットをそれぞれのROIMBまたは非ROIMBに割り当てるために使用される。
【0100】
他のビット割当モデル(ビット割当モデルII)は、代わりの歪みモデルを用いて得てもよい。代替歪みモデルによれば、ステップサイズqを有した均一な量子化の方法の利用可能性を仮定すると、量子化により生じる歪みは以下により与えられる。
【数22】
【0101】
そしてゼロのパーセンテージは以下により与えられる。
【数23】
【0102】
従って、
【数24】
【0103】
である。T.M. CoverおよびJ.A.Thomas著「情報理論の要素」(Elements of information theory)、Wiley, New York, NY., 1991に記載されるように、シャノンのソースコーディング理論によれば、ラプラシアンソースの場合、シンボルを表すために必要な最小ビット数は以下により与えられる。
【数25】
【数26】
【0104】
であり、384は、4:2:0ビデオのためのi番目のマクロブロックにおける係数の合計数であり、方程式(21)はテーラー展開を用いて拡張することができ、ビットレートとρとの間の関係は、Ri=Aρi+B (22)により近似することができる。但し、AおよびBは、コンスタンとモデリングパラメーターであり、Aは、ノンゼロ係数をエンコードするために必要な平均ビット数として考えることができ、Bは、非テクスチャー情報によるビットとして考えることができる。
【0105】
さらに係数の分散は以下により表される。
【数27】
【0106】
結果として、i番目のマクロブロックの歪みは以下により表すことができる。
【数28】
【0107】
ビット割当モデルIの導出におけるように、最適ビット割当スキームは、最適問題(7)、すなわち、以下の問題を解くことにより得ることができる。
【数29】
【0108】
一般に、方程式(25)は、ラグランジュ緩和を用いて解くことができる。この場合、制限された問題は以下のように非制限された問題に変換される。
【数30】
【0109】
但し、λ*は、
【数31】
【0110】
をイネーブルにする解である。(26)において部分導関数をゼロに設定することにより、最適化されたρのための以下の式が得られる。
【数32】
【0111】
これは、
【数33】
【0112】
である。従って、
【数34】
【0113】
である。
【0114】
他方、
【数35】
【0115】
なので、
【数36】
【0116】
である。
【0117】
方程式(28)および(30)から、以下の式が得られる。
【数37】
【0118】
但し、ρbudgetはフレームのための合計ρ量である。方程式(32)において、歪みは、異なってモデル化されているけれども、そのモデルに基いて、以下のビット割当モデルIIが得られる。
【数38】
【0119】
方程式(33)は、例えばビット割当モジュール48により実施されてもよい。
【0120】
図12は、重み付けされたビット割当モデルIおよびIIおよび最適解を用いてエンコーディング技術の全体の知覚品質を比較するグラフである。最適解はラグランジュ緩和により得られるのに対してビット割当モデルIおよびIIは上述したように実施される。図12は、標準フォーマンビデオテストシーケンスの最初の100フレームのROIコーディング中のフレーム番号対デシベルにおけるPSNRを示す。図12において、最適解、ビット割当モデルI、ビット割当モデルIIは、それぞれ参照符号91、93、および95で識別される。ビット割当モデルIおよびIIの場合、ビット割当重み付け方程式(5)の目的のためにαの値は0.9である。図12に示されるように、ビット割当モデルIおよびIIの両方は、最適解との比較において非常によく実行する。
【0121】
図13は、非ROI(「バックグラウンド」)スキッピングのための技術を図解するフロー図である。ビデオフレームの非ROIエリアのエンコーディングをスキップする能力は、ビット割当において、著しい節約を生じることができる。非RPIがエンコードされないなら、すなわちスキップされるなら、さもなければ非ROIに割り当てられたビットは、ROI内のMBsのビジュアル品質を改良するためにROIをエンコーディングするために、代わりに再割当することができる。非ROIが所定のフレームに対してスキップされるなら、先行するフレームに対してエンコードされる非ROIは、反復されるかまたは現在のフレームの補間された非ROIエリアにより置換される。ROIエンコーディングのための節約ビットに加えて、非ROIエリアのスキッピングは、現在のフレームの一時的品質を改良してもよい。特に、2以上の連続するフレームで同じ非ROIエリアを提示することは、非ROIエリアにおける一時的なフリッカーを低減する傾向があるであろう。
【0122】
非常に低いビットレート、例えば32kbpsにおいて、非ROI領域は、たとえ、ビットがMBsの間で均一に分配されていても通常粗雑にコード化される。この場合、フリッカリングのようなビジュアル品質問題は重要になる。他方、バックグラウンドが非ROIであるテレビ電話アプリケーションのほとんどの場合、バックグラウンドに非常に限定された動作がある。それゆえ、スキッピングがビデオフィデリティーを厳しく劣化させない限り、ROIの品質とコード化された非ROI領域を改良するためにバックグラウンドスキッピングは、ビットを再割当するための解である。
【0123】
フレームスキッピングは、コーディングビットを節約するために非常に低いビットレートのアプリケーションにおいて使用されるポピュラーなアプローチである。非ROIスキッピングとフレームスキッピングとの間の差異は、各フレームのためのROIは、ROIの良好なビジュアル品質を保証するために非ROIスキッピングアプローチにおいてコード化されることである。フレームスキッピングの多くのアプリケーションにおいて非常に有用である。しかしながら、ROIビデオコーディングにおいて、フレームスキッピングは、顔の表現のような重要な情報の損失の危険を冒すであろう。特に、方程式(1)において大きな値でαが設定されるとき、ROIの任意の歪みは、激しく重みづけされ、全体の性能を劣化させる可能性があるためである。それゆえ、非ROIスキッピングはより良い選択であり、一般的にかなりの数のビットを節約し、ROI品質を改良する。なぜなら、バックグラウンドMBsの数は、通常のビデオフレームにおいて支配的であるからである。
【0124】
図13に示されるように、非ROIスキッピング技術は、フレームのためのROIエリアおよびフレーム間で共有される共通非ROIエリアを含むユニットに、連続するフレームをグループ化することを含む。図13の例では、2つの連続するフレームがグループ化される。非ROIバックグラウンドスキッピングモジュール50は、フレームiおよびi+1をフレームユニットにグループ化し(96)、ビデオエンコーダー58に非ROIエリアがスキップされるであろうフレームを知らせる。これに応答して、ビデオエンコーダー58は、ビット割り当てモジュール48により供給される重み付けされたビット割り当てを用いてフレームiおよびi+1のそれぞれのROIエリアをエンコードする。(98)さらに、ビデオエンコーダー58は、重み付けされたビット割り当てを用いてフレームiの非ROIエリアをエンコードする。(100)しかしながら、ビデオエンコーダー58は、フレームi+1の非ROIエリアをエンコードしない。代わりに、フレームi+1の非ROIエリアがスキップされ、先行するフレームの非ROIエリアはその場所に提供される。
【0125】
非ROIスキッピングはフルタイムベースで供給されてもよい。例えば、代替フレームに基いて非ROIの連続するフルタイムスキッピングの目的のために、2フレーム毎にユニットにグループ化されてもよい。言い換えれば、毎秒フレームにおける非ROIは、フルタイムベースでスキップされてもよい。別の方法として、適応ベースに基いてアクティブにしたり非アクティブにしてもよい。最近の以前のフレームによって生成された非ROI歪みが歪みしきい値を超えると、スキッピングは非アクティブになってもよい。図13に示されるように、例えば、以前のフレームの非ROIエリアにおける歪みがしきい値未満なら(102)、フレームi+1の非ROIはスキップされ(104)、プロセスは、フレームインクリメントi=i+2により表されるように、2つの連続するフレームの次のグループに続く(106)。この場合、非ROI歪みのレベルは受け入れ可能であり、スキッピングはアクティブになる。しかしながら、非ROI歪みが歪みしきい値より大きければ(102)、フレームi+1の非ROIエリアは、重み付けされたビット割り当てを用いてエンコードされる(108)。この場合、スキッピングは過度の非ROI歪み、すなわち関連のあるビデオシーンの非ROIエリア内の過度の歪みにより非アクティブになる。
【0126】
図14は非ROIスキッピングをサポートするために、連続するフレームをユニットにグループ化することを図解する図である。図14に示されるように、フレーム0、1、2、3はビデオシーケンス内の連続するフレームを表す。この例において、フレーム0およびフレーム1はユニット1にグループ化され、フレーム2およびフレーム3はユニット2にグループ化される。各ユニットは共通の非ROIエリアを共有する。特に、受け入れ可能な歪みを有したフルタイムスキッピングまたはアダプティブスキッピングの場合に、フレーム0の非ROIエリアは、フレーム1に対して反復される。フレーム0の非ROIエリアはフレーム1に対して反復されるので、フレーム1の非ROIエリアをエンコードする必要はない。フレームをユニットにグループ化することは、ビデオシーケンス全体にわたって適用されてもよい。図14の例において、2つのフレームは1つのユニットにグループ化される。いくつかのアプリケーションにおいて、2以上のフレームが1ユニットにグループ化されてもよい。非ROIは全体でスキップされるがユニット内のフレームの1つにおいてである。
【0127】
図15は、共通の非ROIエリアを有する連続するROIエリアのエンコーディングを図解する図である。特に、連続フレーム0および1を1ユニットにグループ化すると、フレーム0および1内のROIエリア110、112はそれぞれエンコードされる。しかしながら、フレーム1のための非ROIエリア(図示せず)がスキップされるように、フレーム0の非ROIエリア114はフレーム0およびフレーム1の両方に対して反復される。この方法で、さもなければ、フレーム1非ROIエリアをエンコードするために必要なビット消費を回避することができる。図15の例において、「バックグラウンド」と呼ばれるけれども、非ROIエリア114は、人の肩のようなフォーグラウンド特徴を含んでいてもよい。従って、バックグラウンドは一般的にこの開示においてROI外の任意のエリアを呼ぶために使用され、ビデオシーン内のバックグラウンドイメージに厳密に制限されると考えるべきではないことに留意する必要がある。非ROIスキッピングは以下にさらに詳細に記載される。
【0128】
図4の非ROIスキッピングモジュール50の実施のための例示プロトタイプシステムについて以下記載する。プロトタイプシステムでは、図13−15を参照して上述したように、2フレーム毎にユニットにグループ化される。各ユニットにおいて、第1の非ROIエリアは、例えば、ゼロ運動ベクトルを有した予測されたMBsを用いてコード化され一方第2の非ROIエリアはスキップされる。各ユニットのビット割り当ては、シーケンス内のビデオフレームのコンテンツ複雑性は、フレームにわたって均一に分配されると仮定して、「グリーディ」フレームレベルビット割り当てと同じロジックに基いていてもよい。この仮定の場合、ビットは、
【数39】
【0129】
として2フレームユニットの中で均一に割り当てられなければならない。但し、ρsequenceは、ビデオシーケンス内のMの連続フレームのグループのための合計ρ量である。ρunit iは、i番目のユニットのためのρ割り当てである。ρusedは、第1の(i-1)/2ユニットのρ消費である。ユニット内において、ビットアロケーションモデル(IまたはII)は、ROIエリアと非ROIエリア内のMBsにビットを割り当てるために使用されてもよい。
【0130】
ここに記載されるように、非ROIスキッピングの結果を評価するために、いくつかのテストが実行された。テストにおいて、以下のビット割り当て技術が比較された。
【0131】
(a) フルタイム非ROIスキッピングを有したモデルIIに基いた重み付けされたビット割り当てアルゴリズム
(b) 非ROIスキッピングを有さない、モデルIIに基いた重み付けされたビット割り当てアルゴリズム
そして(c)ROIと非ROIMBsがビット割り当てにおいて等価に取扱われる「グリーディ」アルゴリズム
テストは、毎秒15フレーム(fps)のレートで、標準の「自動車電話」QCIFビデオシーケンスの最初の150フレームについて行った。比較の結果は、図16−23で示される。
【0132】
図16は、上述のエンコーディング技術(a)、(b)、(c)の全体の知覚品質を比較するグラフである。特に、図16は毎秒あたりキロビット(kbps)におけるエンコーディングレートのレンジに対してデシベル(db)で知覚PSNRをプロットする。図17は上述のエンコーディング技術(a)、(b)、(c)の全体のビデオフィデリティーを比較するグラフである。「全体」のビデオフィデリティーという用語は、ROIエリアと非ROIエリア両方の組み合わせ、すなわち全体のフレームのビデオフィデリティーを指し、その代わりに、「フレーム」ビデオフィデリティーを指してもよい。図17は、毎秒キロビット(kbps)におけるエンコーディングレートのレンジに対してデシベル(db)で「フレーム」PSNRをプロットする。
【0133】
図18および図19は、上述のエンコーディング技術(a)、(b)、(c)のそれぞれROIビデオフィデリティーと非ROIビデオフィデリティーを比較するグラフである。特に、図18および図19は、毎秒キロビット(kbps)におけるエンコーディングレートのレンジに対してデシベル(db)におけるPSNRをプロットする。図18において、ROIビデオフィデリティーは、ビデオフレームのROIエリア内のビデオフィデリティーを指す。図19において、非ROIビデオは、ビデオフレームの非ROIエリア内のビデオフィデリティーを指す。図16−19は、重み付けされたビット割り当てアルゴリズムにおいてユーザーし好ファクターα=0.9のアプリケーションを表す。図16−19の各々において、(a)フルタイム非ROIスキッピングを有した重み付けされたビット割り当て、(b)スキッピングを有さない重み付けされたビット割り当て、(c)グリーディアルゴリズムのための曲線は、それぞれ116、118、120の参照符号により識別される。
【0134】
図20および21は、上述したエンコーディング技術(a)、(b)、(c)のそれぞれ全体の知覚品質と全体のビデオフィデリティーを比較するグラフである。特に、図20は、毎秒キロビット(kbps)におけるエンコーディングレートのレンジに対してデシベル(db)における知覚PSNRをプロットする。図21は、毎秒キロビット(kbps)におけるエンコーディングレートのレンジに対してデシベル(db)におけるPSNRをプロットする。図20および21は重み付けされたビット割り当てアルゴリズムにおいてユーザーし好ファクターα=0.7のアプリケーションを表す。図22および図23は、エンコーディング技術(a)、(b)、(c)のそれぞれ全体の知覚品質と全体のビデオフィデリティーを比較するグラフである。図22および23は、重み付けされたビット割り当てアルゴリズムにおいてユーザーし好ファクターα=0.5のアプリケーションを表す。図20−23において、(a)フルタイム非ROIスキッピングを有した重み付けされたビット割り当て、(b)スキッピングを有さない重み付けされたビット割り当て、(c)グリーディアルゴリズムのための曲線は、それぞれ参照符号116、118、120により識別される。
【0135】
図16−23に示されるテスト結果の場合、ビデオ品質測定値、知覚PSNR、フレームPSNR、ROI PSNR、及び非ROI PSNRの4つのセットは以下のように定義された。
【数40】
【0136】
上の式において、DFrameは、フレームに対する全体の一時的歪みおよび空間歪みである。DFは、オリジナルフレームと再構成されたフレームとの間のビデオフィデリティーである。DRFは、オリジナルフレームと再構成されたフレームのROIエリア間のビデオフィデリティーである。DNFは、オリジナルフレームと再構成されたフレームの非ROIエリア間のビデオフィデリティーである。知覚PSNRは図16、20、22に示される。フレームPSNRは図17、21、23に示される。ROI PNSRは図18に示され、非ROI PSNRは図19に示される。図16−23に示される結果は、提案されている非ROIスキッピングアプローチは、すべてのテストにおいて他のアプローチと比べて知覚PSNR(PPSNR)において1dB以上の利得を有することを明示する。利得は、図18および図19に示されるように、フレームをコーディングする際にビットを非ROIからROIに再割当することによりROI品質の改良から得られる。
【0137】
関心ある観察は、図17、21、23に示すように、低ビットレートにおけるフレームPSNRに関して、非ROI(バックグラウンド)スキッピングアプローチはまた他のアプローチより効率がよいということである。さらに、グラフは、フレームPSNRにおける利得は、ユーザーし好ファクターの減少に伴い増加することを示す。これらの観察は、非ROIスキッピングアプローチは、無線VTのような非常に低いビットレートアプリケーションに対して非常に魅力があることを示す。なぜならばそれは、ビデオフィデリティーの観点のみならずビジュアル品質の観点において他のアプローチより効率がよいからである。重み付けされたビット割り当てアプローチは、αに大きな値、例えば図16においてα=0.9が割り当てられているときグリーディアルゴリズムより効率がよいことが期待される。しかしながら、利点は、図20および22に示すようにアルファの減少とともに減少する。
【0138】
さらなるテストは、フレームスキッピングに、すなわち、非ROIエリアのみスキップする代わりに全体のフレームのスキッピングに依存する重み付けされたビット割り当て技術に対して非ROIスキッピングを内蔵するビット割り当て技術の性能を評価するためにさらなるテストが実行された。図24は、標準フレームスキッピングとバックグラウンドスキッピングを用いてROIエンコーディング技術の知覚品質を比較するグラフである。各ケースにおいて、ここに記載されるように、重み付けされたビット割り当てが適用された。1つのケースにおいて、非ROI(バックグラウンド)スキッピングが適用された。他のケースにおいて、フルタイムフレームスキッピングは、1つおきの他のフレームが交互ベースでスキップされるように適用された。図24は、毎秒キロビット(kbps)におけるレートに対してデシベルにおける知覚PSNRをプロットする。図24において、参照符号122、124、126は、フレームスキッピングと、それぞれユーザーし好ファクター=0.9、0.7、0.5を有する重み付けされたビット割り当てのための曲線を示す。参照符号128、130、132、は非ROIスキッピングと、それぞれユーザーし好ファクター=0.9、0.7、0.5を有した重み付けされたビット割り当てのための曲線を同定する。図24に示されるように、非ROIスキッピングを有した重み付けされたビット割り当ては、全てのαの設定においてフレームスキッピングを有する重み付けされたビット割り当てより効率がよい。非ROIスキッピングにより供給される性能利得は、αの値の増加に伴い増加する。この結果は合理的である。なぜなら、より大きなαの場合、フレームスキッピングのためのROIに関する相殺はより重くなるからである。
【0139】
図16−24に明示されるように、非ROIバックグラウンドスキッピングアプローチは、良好な性能を生じる。特に、非ROIが相対的に低い運動を維持しているときそうである。しかしながら、大量の運動を含む非ROIエリアを有するビデオシーケンスの場合、性能利得は、減少されてもよい。同時に、重要なバックグラウンド情報はスキップしてもよく、システム性能の劣化を生じる。従って、スキッピングがビデオフィデリティーを厳しく低下させるとき、例えば、バックグラウンドコンテンツが重要な情報を含むとき、バックグラウンドスキッピングはオフになることが望ましい。一例として、オンおよびオフになる非ROIスキッピングを有した重み付けされたビット割り当てによりROIコーディングは、バックグラウンドが迅速に移動する標準の自動車電話ビデオテストシーケンスの第180番目乃至209番目に適用された。図25はこの解析の結果を示す。特に、図25は、ここに記載されるように、非ROIスキッピングがオンおよびオフになるとき、重み付けされたビット割り当てのためのROIエンコーディング技術の知覚品質を比較するグラフである。
【0140】
図25は、毎秒キロビットにおけるレートに対するデシベルにおける知覚PSNRのグラフである。図25において、参照符号134および136は、オンになった非ROIスキッピングと、それぞれユーザーし好ファクターα=0.9および0.5を有する重み付けされたビット割り当てのアプリケーションを表す曲線を同定する。参照符号138および140は、オフになった非ROIスキッピングと、それぞれユーザーし好ファクターα=0.9および0.5を有した重み付けされたビット割り当てのアプリケーションを表す曲線を同定する。図25の結果は、比較された非ROIスキッピングの利点は、αが例えば0.9から0.5に減少するのに伴い減少することを示す。また、この結果は、ビデオシーケンスのコンテンツと、ユーザーし好ファクターにより表されるようにユーザーの関心レベルに基いて、非ROIスキッピングのダイナミック制御をイネーブルにする適応非ROIスキッピングを作成する値を示す。
【0141】
非ROIスキッピングを有するおよび有さない重み付けされたビット割り当てにより生成される歪みは、以下に示すように、明示的に比較することができる。
【数41】
【0142】
この場合、Dskip_onは、非ROIスキッピングがオンのときのユニット合計歪みである。Dskip_offは、バックグラウンドスキッピングモードがオフのときのユニット合計歪みである。DNonROI_skipはユニットの第2のフレーム内の非ROIをスキップすることにより長じる歪みである。方程式(35)におけるρ1およびρ2および方程式(36)におけるρ1'、ρ2'、ρ3'は、ROIsおよび非ROIに割り当てられたAC係数(ρ)の数である。
【0143】
方程式(35)および(36)から、DNonROI_skip>>DNF(ρunit-ρ1'−ρ2'−ρ3')である場合にのみDSkip_on>DSkip_offが適用できることを観察することができる。なぜなら、一般に以下の式が適用できるからである。
【数42】
【0144】
この観察は図26に示すように自動車電話ビデオテストシーケンスのためのDNonROI_skipの統計値から真であることが検証される。図26は、例示ビデオシーケンスに対するバックグラウンドスキッピングにより生じた歪みを描画するグラフである。特に、図26は、自動車電話ビデオテストシーケンスの最初の240フレームに対するフレーム番号対平均非ROI領域剰余エネルギーDNonROI_skipをプロットする。図26からフレーム180−209の期間において値は他よりもはるかに大きいことが明らかである。これは、高度の運動により特徴づけられるフレームである。それゆえ、非ROIスキッピングは一般的に好ましいのに対して、フレーム180−209により提示される高運動部分の期間は望ましくない。
【0145】
上の観察に基いて、バックグラウンドスキッピングモードをオンおよびオフさせる基準を追跡するタスクは、DNonROI_skipの歪みのためのしきい値を探すタスクに変換される。ビデオシーケンスにおけるユニット歪みが平滑な方法で変化すると仮定するなら、これは一般的に真であるが、ほとんどの最近に処理されたユニット歪みの平均値は、ひずみしきい値を導き出すのに使用することができる。
【数43】
【0146】
を最も最近のnユニットの平均歪みとして示すと、(35)および(36)に基いて、
【数44】
【0147】
が適用されるなら、DSkip_on>DSkip_offを作ることは非常に可能である。言い換えれば、非ROIスキッピングをスイッチオフするための基準は、
【数45】
【0148】
として指定することができる。この基準は、適応非ROIスキッピングアルゴリズムのための基礎として機能することができる。
【0149】
適応非ROIスキッピングアルゴリズムは実質的に図13に示されるプロセスに準拠してもよく、以下のようにさらに記載することができる。
【0150】
ステップ0:データをイニシャライズし、
【数46】
【0151】
を設定し、スキッピングモード=ONである。
【0152】
ステップ1:方程式(34)を用いて現在のユニット(2つの連続するフレームFnおよびFn+1のグループ)のためのρ量を割り当てる。
【0153】
ステップ2:現在のユニット内において、方程式(32)により各マクロブロックのためのビットを割り当てる。スキッピングモードがONならユニット内の第2のフレームのための非ROIに対してビットは割り当てられない。
【0154】
ステップ3:現在のユニットのための歪みが得られた後で、
【数47】
【0155】
を
【数48】
【0156】
だけ更新する。ただし、ηは学習ファクターであり、[0,1]のレンジにある。
【0157】
ステップ4:次のユニットのためのデータを得る。これが最後のユニットならステップ6に行く。
【0158】
ステップ5:新しいユニット(次の2つのフレームFn+2とFn+3のグループ)のためのDNonROI_skipの歪みを計算する。
【数49】
【0159】
なら、スキッピングモードをオフにする。そうでなければ、スキッピングモードをオンにする。ステップ1に戻る。
【0160】
ステップ6:適応スキッピングアルゴリズムを終了する。
【0161】
図27は、非ROIスキッピングを用いて、非ROIスキッピングを用いないで、および適応非ROIスキッピングを用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。各ケースにおいて、ここに記載されたような重み付けされたビット割り当てが適用された。図27は標準自動車電話ビデオテストシーケンスのフレーム180−209のROIビデオコーディングに対する毎秒キロビットにおけるレートに対するデシベルにおける知覚PSNRをプロットする。参照符号142および144は、非ROIスキッピングオンと、それぞれユーザーし好ファクターα=0.9および0.5を有する重み付けされたビット割り当てを表す曲線を同定する。参照符号146および148は、非ROIスキッピングオフとそれぞれユーザーし好ファクターα=0.9および0.5を有した重み付けされたビット割り当てを表す曲線を同定する。参照符号150および152は、適応非ROIスキッピングとそれぞれユーザーし好ファクターα=0.9および0.5を有する重み付けされたビット割り当てを表す曲線を同定する。この評価において、値ηは、η=0.25に設定された。図27における結果は、適応非ROIスキッピングアプローチの結果は、αの種々の値のための最良の解に非常に近いことを示す。
【0162】
図28−33は、この開示において記載される重み付けされたビット割り当て技術を適用するROIコーディング技術のためのさらなる実験結果を示す。図28−32は、標準自動車電話ビデオテストシーケンスに対する種々のROIコーディング技術の適用を表す。図28−32の場合、重み付けされたビット割り当てアプローチ(「提案されたアプローチ」および「重み付けされたビット割り当て」)で使用されるユーザーし好ファクターαは0.9に設定された。「提案されたアプローチ」ラベルは、非ROIスキッピングを有する重み付けされたビット割り当てを指す。「重み付けされたビット割り当て」ラベルは、非ROIスキッピングを伴わない重み付けされたビット割り当てを指す。
【0163】
図28は、種々のビット割り当て技術を用いたROIエンコーディング技術の全体の知覚品質を比較するグラフであり、レート対知覚PSNRをプロットする。図28において、参照符号154、156、158、160、162は、それぞれフレームスキッピングアプローチ、非ROIスキッピングを用いて重み付けされたビット割り当てアプローチ、グリーディアルゴリズム、コンスタントQPアルゴリズム、非ROIスキッピングを伴わない重み付けされたビット割り当てアプローチのアプリケーションを表す曲線を同定する。
【0164】
図29は毎秒40キロビット(kps)のエンコーディングレートで、種々のビット割り当て技術を用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。特に、図29は、非ROIスキッピング、グリーディアルゴリズムおよびコンスタントQPアルゴリズムを有した重み付けされたビット割り当てのためのフレーム番号対知覚PSNRをプロットする。
【0165】
図30は、毎秒40キロビット(kps)のエンコーディングレートで種々のビット割り当て技術を用いてROIエンコーディング技術の全体のビデオフィデリティーを比較するグラフであり、フレーム番号対PSNRをプロットする。図31は毎秒40キロビット(kps)のエンコーディングレートで種々のビット割り当て技術を用いてROIエンコーディング技術のROIビデオフィデリティーを比較するグラフであり、フレーム番号対ROIにおけるPSNRをプロットする。図32は、毎秒40キロビット(kps)のエンコーディングレートで、種々のビット割り当て技術を用いてROIエンコーディング技術の非ROIビデオフィデリティーを比較するグラフであり、フレーム番号対非ROIPSNRをプロットする。
【0166】
図29−32において、非ROIスキッピングを有した重み付けされたビット割り当ては参照符号164により示され、グリーディアルゴリズムは参照符号166により示され、コンスタントQPアルゴリズムは参照符号168により示される。コンスタントQPアルゴリズムは、フレーム内のすべてのMBsに同一量子化方法が割り当てられるフレームレベルのみのレート制御アルゴリズムである。グリーディアルゴリズムは上に記述され、MBレベルで動作する。フレームスキッピングアルゴリズムは、交代ベースで1つおきのフレームのコンテンツをエンコードすることを回避するために標準フレームスキッピングを適用し、ROIエリアと非ROIエリアの両方をスキップする。非ROIスキッピングと伴わない重み付けされたビット割り当てと、適応フレームスキッピング(「提案されたアプローチ」)を有した重み付けされたビット割り当てが上に記載された。
【0167】
図28は、提案されたアプローチが、全体のビットレートレンジ内のすべての他のアプローチより効率がよく、性能利得は2dBまでであることを示す。図29−32において、提案されたアプローチ、グリーディアルゴリズムおよびコンスタントQPアルゴリズムのフレームレベル詳細が明示される。
【0168】
図33は、エンコーディングレートのレンジに対して他の例示ビデオシーケンスのための種々のビット割り当て技術を用いてROIエンコーディング技術の全体の知覚品質を比較するグラフである。特に、図33は、標準フォーマンビデオテストシーケンスの最初の180フレームにわたってレート対知覚PSNRをプロットする。図33において、参照符号154、156、158、160、および162は、それぞれフレームスキッピングアプローチ、非ROIスキッピングを有した重み付けされたビット割り当てアプローチ、グリーディアルゴリズム、コンスタントQPアルゴリズム、および非ROIスキッピングを伴わない重み付けされたビット割り当てアプローチのアプリケーションを表す曲線を同定する。
【0169】
図33において示されるように、フレームスキッピングアプローチは、自動車電話シーケンスと同様に実行しない。なぜなら、フォーマンシーケンスの顔は自動車電話シーケンスに比べてより大きな運動を含むからである。結果として、フレームスキッピングは、フォーマンシーケンスにおいて過度の量のROI情報を見逃す。とりわけ、適応非ROIスキッピングを有する重み付けされたビット割り当ての提案されたアプローチは、図33に明示されるようにフォーマンシーケンスに対して非常によく実行する。
【0170】
この開示において、テレビ電話またはビデオストリーミングアプリケーション、特に、例えば無線テレビ電話において非常に低いビットレートで定時されるときROIコーディングをサポートするために種々の技術が記載された。その開示は、ROIビデオコーディングのためのρ領域において2つの異なる最適な重み付けされたビット割り当てスキームを提供する。その開示は、また重み付けされたビット割り当てモデルと共同して動作することができ、より良い性能を得る適応非ROI(「バックグラウンド」)スキッピングを提供する。さらに、この開示は、ROIビデオの品質を測定するためのビデオ品質メトリックを提供する。ROI品質メトリックは、ROIにおけるユーザーし好、ビデオフィデリティー、空間知覚品質、および一時的な知覚品質を共同で考察することにより、最適化されたビット割り当て技術をガイドし、より良い主観的なビジュアル品質を生成するために使用することができる。ROI品質メトリックは、主観的知覚品質要件を満足するためにコーディングパラメーターをバイアスするためにユーザー相互作用をイネーブルにする。
【0171】
ここに記載された技術は、ハードウエア、ソフトウエア、ファームウエアまたはそれらの任意の組み合わせにおいて実施されてもよい。ソフトウエアで実施されるなら、この技術は、実行されると、上述した1つ以上の方法を実行する命令を含むプログラムコードを備えたコンピューター読み取り可能媒体により一部分実現されてもよい。この場合、コンピューター読み取り可能媒体は、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)のようなランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気的に消去可能なプログラマブルリードオンリーメモリ(EEPROM)、フラッシュメモリ(登録商標)、磁気または光学のデータ記憶媒体等を備えていてもよい。
【0172】
プログラムコードは、1つ以上のデジタルシグナルプロセッサー(DSPs)、汎用マイクロプロセッサー、特定用途向け集積回路(ASICs)、フィールドプログラマブルゲートアレイ、または他の等価な集積されたまたはディスクリートな論理回路のような1つ以上のプロセッサーにより実行されてもよい。いくつかの実施形態において、ここに記載された機能性は、エンコーディングおよびデコーディングのために構成された専用のソフトウエアモジュールまたはハードウエアユニット内で提供されてもよいしまたは結合されたエンコーダー−デコーダー(CODEC)に内蔵されてもよい。
【0173】
種々の実施形態が記載された。これらのおよび他の実施形態は以下のクレームの範囲内にある。
【特許請求の範囲】
【請求項1】
先行フレームのビデオフィデリティー、先行フレームの知覚品質、および関心領域のユーザーし好に基いて、関心領域を含むエンコードされたビデオフレームのための品質メトリックを発生することを備えた方法。
【請求項2】
前記知覚品質は先行フレームのための一時的な品質値と空間品質値を含む、請求項1の方法。
【請求項3】
前記一時的な品質値は、関心領域のための第1の一時的な品質値と関心領域内にないエリアのための第2の一時的な品質値を含む、請求項2の方法。
【請求項4】
前記空間品質値は、関心領域のための第1の空間品質値と関心領域にないエリアのための第2の空間品質値を含む、請求項2の方法。
【請求項5】
前記空間品質値は、先行フレーム内のブロッキングアーティファクトの存在に少なくとも一部分基いており、前記一時的な品質値は、先行フレーム内の一時的なフリッカーアーティファクトの存在に少なくとも一部分基いている、請求項2の方法。
【請求項6】
前記ビデオフィデリティーは、前記先行するビデオフレームのためのピーク信号対雑音比に少なくとも一部分基いた歪み値を含む、請求項1の方法。
【請求項7】
少なくとも一部分前記品質メトリックに基いて関心領域と、関心領域内にないビデオフレームのエリアとの間にエンコーディングビットを割り当てることをさらに備えた、請求項1の方法。
【請求項8】
前記エンコーディングビットを割り当てることは、フレーム量、および関心領域内のマクロブロックと、関心領域内にないビデオフレームのエリア内のマクロブロックとの間の重み付けに基いてフレーム内のマクロブロックにロー領域値を割り当てることと、多数のエンコーディングビットをマクロブロックの各々に割り当てるために対応する量子化パラメーター(QP)値にロー領域値をマッピングすることとを含む、請求項7の方法。
【請求項9】
前記品質メトリック、ビデオフレームのために利用可能なエンコーディングビットの数を指定するレート量、および関心領域にないエリアのエンコーディングがスキップされるかどうかの表示に基いて、関心領域と関心領域内にないビデオフレームのエリアとの間にエンコーディングビットを割り当てることをさらに備えた、請求項1の方法。
【請求項10】
連続するフレームをフレームユニットにグループ化することと、それぞれのフレームに関連する関心領域をエンコードすることと、フレームユニット内のフレームの少なくとも1つに対してそれぞれの関心領域内にないエリアのエンコーディングをスキップすることとをさらに備えた、請求項1の方法。
【請求項11】
先行フレームユニットに関連する歪み値がしきい値未満のとき、前記フレームの少なくとも1つに対してそれぞれの関心領域内にないエリアのエンコーディングを選択的にスキップすることをさらに備えた、請求項10の方法。
【請求項12】
前記ユーザし好は、ユーザーによる関心領域のビジュアル品質に置かれた値を示す、請求項1の方法
【請求項13】
関心領域を含むビデオフレームをエンコードするビデオエンコーダーと、
先行フレームのビデオフィデリティー、先行フレームの知覚品質、および関心領域のユーザーし好に基いて前記ビデオフレームのための品質メトリックを発生する品質メトリック計算機と、
を備えた装置。
【請求項14】
前記知覚品質は、先行フレームのための一時的な品質値と空間品質値を含む、請求項13の装置。
【請求項15】
前記一次品質値は、関心領域のための第1の一時的な品質値と関心領域内にないエリアのための第2の一時的な品質値を含む、請求項14の装置。
【請求項16】
前記空間品質値は、関心領域のための第1の空間品質値と関心領域内にないエリアのための第2の空間品質値を含む、請求項14の装置。
【請求項17】
前記空間品質値は先行フレームにおけるブロッキングアーティファクトの存在に少なくとも一部分基いており、前記一時的な品質値は、先行フレーム内の一時的なフリッカーアーティファクトの存在に少なくとも一部分基いている、請求項14の装置。
【請求項18】
前記ビデオフィデリティーは、先行ビデオフレームのためのピーク信号対雑音比に少なくとも一部分基いた歪み値を含む、請求項13の装置。
【請求項19】
少なくとも一部分前記品質メトリックに基いて関心領域と関心領域内にないエリアとの間にエンコーディングビットを割り当てるビット割り当てモジュールをさらに備えた、請求項13の装置。
【請求項20】
前記ビット割り当てモジュールは、フレーム量と、関心領域内のマクロブロックと関心領域内にないビデオフレームのエリア内のマクロブロックとの間の重み付けとに基いて、前記フレーム内のマクロブロックにロー領域値を割り当て、多数のエンコーディングビットをマクロブロックの各々に割り当てるために対応する量子化パラメーター(QP)値にロー領域値をマップする、請求項19の装置。
【請求項21】
品質メトリック、ビデオフレームのために利用可能なエンコーディングビットの数を指定するレート量と、関心領域内にないエリアのエンコーディングがスキップされるかどうかの表示とに基いて、関心領域と関心領域内にない前記ビデオフレームのエリアとの間にエンコーディングビットを割り当てるビット割り当てモジュールをさらに備えた、請求項13の装置。
【請求項22】
前記ビデオエンコーダーに、連続するフレームをフレームユニットにグループ化し、前記それぞれのフレームに関連する関心領域をエンコードし、前記フレームユニット内の前記フレームの少なくとも1つに対してそれぞれの関心領域内にない前記ビデオフレームのエリアのエンコーディングをスキップするように命令するスキッピングモジュールをさらに備えた、請求項13の装置。
【請求項23】
先行フレームユニットに関連する歪み値がしきい値未満であるとき、前記スキッピングモジュールは、前記ビデオエンコーダーに、前記フレームの少なくとも1つに対してそれぞれの関心領域にない前記ビデオフレームのエリアのエンコーディングを選択的にスキップするように命令する、請求項22の装置。
【請求項24】
無線通信チャネルを介して前記エンコードされたビデオフレームを送信する無線送信機をさらに備え、前記装置は、モバイルテレビ電話をサポートするように構成される、請求項13の装置。
【請求項25】
前記ユーザーし好は、ユーザーによる関心領域のビジュアル品質に置かれた値を示す、請求項13の装置。
【請求項26】
先行フレームのビデオフィデリティー、前記先行フレームの知覚品質、および前記関心領域のためのユーザーし好に基いて関心領域を含むエンコードされたビデオフレームのための品質メトリックをプロセッサーに発生させる命令を備えたコンピューター読み取り可能媒体。
【請求項27】
前記知覚品質は先行フレームのための一時的な品質値と空間品質値を含む、請求項26のコンピューター読み取り可能媒体。
【請求項28】
前記一時的な品質値は、関心領域のための第1の一時的な品質値と前記関心領域内にないエリアのための第2の一時的な品質値とを含む、請求項27のコンピューター読み取り可能媒体。
【請求項29】
前記空間品質値は、関心領域のための第1の空間品質値と前記関心領域内にないエリアのための第2の空間品質値を含む、請求項27のコンピューター読み取り可能媒体。
【請求項30】
前記空間品質値は、前記先行フレーム内のブロッキングアーティファクトの存在に少なくとも一部分基いており、前記一時的な品質値は、前記先行フレーム内の一時的なフリッカーアーティファクトの存在に少なくとも一部分基いている、請求項27のコンピューター読み取り可能媒体。
【請求項31】
前記ビデオフィデリティーは前記先行ビデオフレームのためのピーク信号対雑音比に少なくとも一部分基いた歪み値を含む、請求項26のコンピューター読み取り可能媒体。
【請求項32】
少なくとも一部分前記品質メトリックに基いて前記関心領域と前記関心領域内にない前記ビデオフレームのエリアとの間にエンコーディングビットをプロセッサーに割り当てさせるための命令をさらに備えた、請求項26のコンピューター読み取り可能媒体。
【請求項33】
前記命令は、フレーム量と、関心領域内のマクロブロックと関心領域内にない前記ビデオフレームのエリア内のマクロブロックとの間の重みづけに基いて、前記プロセッサーに前記フレーム内のマクロブロックにロー領域値を割り当てさせ、多数のエンコーディングビットを前記マクロブロックの各々に割り当てるために対応する量子化パラメーター(QP)値にロー領域値を前記プロセッサーにマップさせる、請求項32のコンピューター読み取り可能媒体。
【請求項34】
前記命令は、前記プロセッサーに、品質メトリック、前記ビデオフレームのために利用可能なエンコーディングビットの数を指定するレート量、前記関心領域内にないエリアのエンコーディングがスキップされるかどうかの表示に基いて関心領域と関心領域内にない前記ビデオフレームのエリアとの間にエンコーディングビットを割り当てさせる、請求項26のコンピューター読み取り可能媒体。
【請求項35】
プロセッサーに連続フレームをフレームユニットにグループ化させ、それぞれのフレームに関連する関心領域をエンコードさせ、前記フレームユニット内の前記フレームの少なくとも1つに対してそれぞれの関心領域内にないエリアのエンコーディングをスキップさせる命令をさらに備えた、請求項26のコンピューター読み取り可能媒体。
【請求項36】
先行フレームユニットに関連する歪み値がしきい値未満であるとき、前記フレームの少なくとも1つに対してそれぞれの関心領域内にないエリアのエンコーディングを選択的にプロセッサーにスキップさせるための命令をさらに備えた、請求項35のコンピューター読み取り可能媒体。
【請求項37】
前記ユーザーし好は、ユーザーにより関心領域のビジュアル品質に置かれた値を示す、請求項26のコンピューター読み取り可能媒体。
【請求項1】
先行フレームのビデオフィデリティー、先行フレームの知覚品質、および関心領域のユーザーし好に基いて、関心領域を含むエンコードされたビデオフレームのための品質メトリックを発生することを備えた方法。
【請求項2】
前記知覚品質は先行フレームのための一時的な品質値と空間品質値を含む、請求項1の方法。
【請求項3】
前記一時的な品質値は、関心領域のための第1の一時的な品質値と関心領域内にないエリアのための第2の一時的な品質値を含む、請求項2の方法。
【請求項4】
前記空間品質値は、関心領域のための第1の空間品質値と関心領域にないエリアのための第2の空間品質値を含む、請求項2の方法。
【請求項5】
前記空間品質値は、先行フレーム内のブロッキングアーティファクトの存在に少なくとも一部分基いており、前記一時的な品質値は、先行フレーム内の一時的なフリッカーアーティファクトの存在に少なくとも一部分基いている、請求項2の方法。
【請求項6】
前記ビデオフィデリティーは、前記先行するビデオフレームのためのピーク信号対雑音比に少なくとも一部分基いた歪み値を含む、請求項1の方法。
【請求項7】
少なくとも一部分前記品質メトリックに基いて関心領域と、関心領域内にないビデオフレームのエリアとの間にエンコーディングビットを割り当てることをさらに備えた、請求項1の方法。
【請求項8】
前記エンコーディングビットを割り当てることは、フレーム量、および関心領域内のマクロブロックと、関心領域内にないビデオフレームのエリア内のマクロブロックとの間の重み付けに基いてフレーム内のマクロブロックにロー領域値を割り当てることと、多数のエンコーディングビットをマクロブロックの各々に割り当てるために対応する量子化パラメーター(QP)値にロー領域値をマッピングすることとを含む、請求項7の方法。
【請求項9】
前記品質メトリック、ビデオフレームのために利用可能なエンコーディングビットの数を指定するレート量、および関心領域にないエリアのエンコーディングがスキップされるかどうかの表示に基いて、関心領域と関心領域内にないビデオフレームのエリアとの間にエンコーディングビットを割り当てることをさらに備えた、請求項1の方法。
【請求項10】
連続するフレームをフレームユニットにグループ化することと、それぞれのフレームに関連する関心領域をエンコードすることと、フレームユニット内のフレームの少なくとも1つに対してそれぞれの関心領域内にないエリアのエンコーディングをスキップすることとをさらに備えた、請求項1の方法。
【請求項11】
先行フレームユニットに関連する歪み値がしきい値未満のとき、前記フレームの少なくとも1つに対してそれぞれの関心領域内にないエリアのエンコーディングを選択的にスキップすることをさらに備えた、請求項10の方法。
【請求項12】
前記ユーザし好は、ユーザーによる関心領域のビジュアル品質に置かれた値を示す、請求項1の方法
【請求項13】
関心領域を含むビデオフレームをエンコードするビデオエンコーダーと、
先行フレームのビデオフィデリティー、先行フレームの知覚品質、および関心領域のユーザーし好に基いて前記ビデオフレームのための品質メトリックを発生する品質メトリック計算機と、
を備えた装置。
【請求項14】
前記知覚品質は、先行フレームのための一時的な品質値と空間品質値を含む、請求項13の装置。
【請求項15】
前記一次品質値は、関心領域のための第1の一時的な品質値と関心領域内にないエリアのための第2の一時的な品質値を含む、請求項14の装置。
【請求項16】
前記空間品質値は、関心領域のための第1の空間品質値と関心領域内にないエリアのための第2の空間品質値を含む、請求項14の装置。
【請求項17】
前記空間品質値は先行フレームにおけるブロッキングアーティファクトの存在に少なくとも一部分基いており、前記一時的な品質値は、先行フレーム内の一時的なフリッカーアーティファクトの存在に少なくとも一部分基いている、請求項14の装置。
【請求項18】
前記ビデオフィデリティーは、先行ビデオフレームのためのピーク信号対雑音比に少なくとも一部分基いた歪み値を含む、請求項13の装置。
【請求項19】
少なくとも一部分前記品質メトリックに基いて関心領域と関心領域内にないエリアとの間にエンコーディングビットを割り当てるビット割り当てモジュールをさらに備えた、請求項13の装置。
【請求項20】
前記ビット割り当てモジュールは、フレーム量と、関心領域内のマクロブロックと関心領域内にないビデオフレームのエリア内のマクロブロックとの間の重み付けとに基いて、前記フレーム内のマクロブロックにロー領域値を割り当て、多数のエンコーディングビットをマクロブロックの各々に割り当てるために対応する量子化パラメーター(QP)値にロー領域値をマップする、請求項19の装置。
【請求項21】
品質メトリック、ビデオフレームのために利用可能なエンコーディングビットの数を指定するレート量と、関心領域内にないエリアのエンコーディングがスキップされるかどうかの表示とに基いて、関心領域と関心領域内にない前記ビデオフレームのエリアとの間にエンコーディングビットを割り当てるビット割り当てモジュールをさらに備えた、請求項13の装置。
【請求項22】
前記ビデオエンコーダーに、連続するフレームをフレームユニットにグループ化し、前記それぞれのフレームに関連する関心領域をエンコードし、前記フレームユニット内の前記フレームの少なくとも1つに対してそれぞれの関心領域内にない前記ビデオフレームのエリアのエンコーディングをスキップするように命令するスキッピングモジュールをさらに備えた、請求項13の装置。
【請求項23】
先行フレームユニットに関連する歪み値がしきい値未満であるとき、前記スキッピングモジュールは、前記ビデオエンコーダーに、前記フレームの少なくとも1つに対してそれぞれの関心領域にない前記ビデオフレームのエリアのエンコーディングを選択的にスキップするように命令する、請求項22の装置。
【請求項24】
無線通信チャネルを介して前記エンコードされたビデオフレームを送信する無線送信機をさらに備え、前記装置は、モバイルテレビ電話をサポートするように構成される、請求項13の装置。
【請求項25】
前記ユーザーし好は、ユーザーによる関心領域のビジュアル品質に置かれた値を示す、請求項13の装置。
【請求項26】
先行フレームのビデオフィデリティー、前記先行フレームの知覚品質、および前記関心領域のためのユーザーし好に基いて関心領域を含むエンコードされたビデオフレームのための品質メトリックをプロセッサーに発生させる命令を備えたコンピューター読み取り可能媒体。
【請求項27】
前記知覚品質は先行フレームのための一時的な品質値と空間品質値を含む、請求項26のコンピューター読み取り可能媒体。
【請求項28】
前記一時的な品質値は、関心領域のための第1の一時的な品質値と前記関心領域内にないエリアのための第2の一時的な品質値とを含む、請求項27のコンピューター読み取り可能媒体。
【請求項29】
前記空間品質値は、関心領域のための第1の空間品質値と前記関心領域内にないエリアのための第2の空間品質値を含む、請求項27のコンピューター読み取り可能媒体。
【請求項30】
前記空間品質値は、前記先行フレーム内のブロッキングアーティファクトの存在に少なくとも一部分基いており、前記一時的な品質値は、前記先行フレーム内の一時的なフリッカーアーティファクトの存在に少なくとも一部分基いている、請求項27のコンピューター読み取り可能媒体。
【請求項31】
前記ビデオフィデリティーは前記先行ビデオフレームのためのピーク信号対雑音比に少なくとも一部分基いた歪み値を含む、請求項26のコンピューター読み取り可能媒体。
【請求項32】
少なくとも一部分前記品質メトリックに基いて前記関心領域と前記関心領域内にない前記ビデオフレームのエリアとの間にエンコーディングビットをプロセッサーに割り当てさせるための命令をさらに備えた、請求項26のコンピューター読み取り可能媒体。
【請求項33】
前記命令は、フレーム量と、関心領域内のマクロブロックと関心領域内にない前記ビデオフレームのエリア内のマクロブロックとの間の重みづけに基いて、前記プロセッサーに前記フレーム内のマクロブロックにロー領域値を割り当てさせ、多数のエンコーディングビットを前記マクロブロックの各々に割り当てるために対応する量子化パラメーター(QP)値にロー領域値を前記プロセッサーにマップさせる、請求項32のコンピューター読み取り可能媒体。
【請求項34】
前記命令は、前記プロセッサーに、品質メトリック、前記ビデオフレームのために利用可能なエンコーディングビットの数を指定するレート量、前記関心領域内にないエリアのエンコーディングがスキップされるかどうかの表示に基いて関心領域と関心領域内にない前記ビデオフレームのエリアとの間にエンコーディングビットを割り当てさせる、請求項26のコンピューター読み取り可能媒体。
【請求項35】
プロセッサーに連続フレームをフレームユニットにグループ化させ、それぞれのフレームに関連する関心領域をエンコードさせ、前記フレームユニット内の前記フレームの少なくとも1つに対してそれぞれの関心領域内にないエリアのエンコーディングをスキップさせる命令をさらに備えた、請求項26のコンピューター読み取り可能媒体。
【請求項36】
先行フレームユニットに関連する歪み値がしきい値未満であるとき、前記フレームの少なくとも1つに対してそれぞれの関心領域内にないエリアのエンコーディングを選択的にプロセッサーにスキップさせるための命令をさらに備えた、請求項35のコンピューター読み取り可能媒体。
【請求項37】
前記ユーザーし好は、ユーザーにより関心領域のビジュアル品質に置かれた値を示す、請求項26のコンピューター読み取り可能媒体。
【図1】
【図2】
【図3A】
【図3B】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図2】
【図3A】
【図3B】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【公開番号】特開2012−147431(P2012−147431A)
【公開日】平成24年8月2日(2012.8.2)
【国際特許分類】
【外国語出願】
【出願番号】特願2012−1295(P2012−1295)
【出願日】平成24年1月6日(2012.1.6)
【分割の表示】特願2007−558149(P2007−558149)の分割
【原出願日】平成18年2月28日(2006.2.28)
【出願人】(595020643)クゥアルコム・インコーポレイテッド (7,166)
【氏名又は名称原語表記】QUALCOMM INCORPORATED
【Fターム(参考)】
【公開日】平成24年8月2日(2012.8.2)
【国際特許分類】
【出願番号】特願2012−1295(P2012−1295)
【出願日】平成24年1月6日(2012.1.6)
【分割の表示】特願2007−558149(P2007−558149)の分割
【原出願日】平成18年2月28日(2006.2.28)
【出願人】(595020643)クゥアルコム・インコーポレイテッド (7,166)
【氏名又は名称原語表記】QUALCOMM INCORPORATED
【Fターム(参考)】
[ Back to top ]