(57)【要約】  ビデオ情報をコーディングする方法および装置を開示する。一構成では、この方法は、固定レートのコーデックのために、各々がレート歪コストを有する1つまたは複数の予測モードを識別するステップと、現在のブロックのために、以前に選択されていない1つまたは複数の予測モードの中から最も低いレート歪コストを有する予測モードを選択するステップとを含み得る。この方法は、(i)選択された予測モードが固定レートのコーデックのバッファのオーバーフローまたはアンダーフローをもたらすかどうかを決定するステップと、(ii)選択された予測モードが、スライスの残りのブロックをコーディングするにはスライスにおける残りのビットが不足することをもたらすかどうかを決定するステップとを含み得る。この方法は、条件(i)および条件(ii)のうちの少なくとも一方が真であることをもたらす、選択された1つまたは複数の予測モードの各々に応じて、現在のブロックをコーディングするためにフォールバックモードを利用するステップを含み得る。
2018516491.tif 000002
【特許請求の範囲】
【請求項１】
画像のスライスに関係するビデオ情報をコーディングするための方法であって、前記スライスが1つまたは複数のブロックを含み、前記方法が、
固定レートのコーデックのために、各々がレート歪コストを有する1つまたは複数の予測モードを識別するステップと、
現在のブロックのために、以前に選択されていない前記1つまたは複数の予測モードの中から最も低いレート歪コストを有する予測モードを選択するステップと、
前記選択された予測モードが前記固定レートのコーデックのバッファのオーバーフローまたはアンダーフローをもたらすかどうかを決定するステップと、
前記選択された予測モードが前記スライスの残りのブロックをコーディングするには前記スライスにおける残りのビットが不足することをもたらすかどうかを決定するステップと、
(i)前記バッファのオーバーフローまたはアンダーフロー、および(ii)前記スライスの前記残りのブロックをコーディングするには前記スライスにおける残りのビットが不足することのうちの少なくとも一方をもたらす、前記選択された1つまたは複数の予測モードの各々に応じて、前記現在のブロックをコーディングするためにフォールバックモードを利用するステップであって、前記フォールバックモードが、前記現在のブロックの中間点値を決定すること、および前記中間点値から現在のブロックサンプルを予測することを含む、フォールバックモードを利用するステップと
を含む、方法。
【請求項２】
前記中間点値を決定することが、前記現在のブロックが前記スライスにおける最初のブロックであることに応じて、前記現在のブロックの色空間成分のダイナミックレンジの半分をデフォルトにすることを含む、請求項1に記載の方法。
【請求項３】
前記中間点値を前記決定することが、前記現在のブロックに隣接する再構築ピクセル値の平均に基づく、請求項1に記載の方法。
【請求項４】
前記中間点値を前記決定することが、前の再構築ブロックおよび前の再構築ラインのうちの少なくとも一方に基づく、請求項1に記載の方法。
【請求項５】
前記中間点値を前記決定することが、前記現在のブロックがスライスの最初のライン内にあることに応じて、前記前の再構築ブロックにさらに基づく、請求項4に記載の方法。
【請求項６】
前記中間点値を前記決定することが、前記現在のブロックがスライスの最初のライン内にないことに応じて、前記前の再構築ラインにさらに基づく、請求項4に記載の方法。
【請求項７】
前記中間点値を前記決定することが、前記現在のブロックの現在のサンプルのダイナミックレンジおよび前記フォールバックモードの量子化器のステップサイズに基づく、請求項1に記載の方法。
【請求項８】
前記1つまたは複数の予測モードが、離散コサイン変換(DCT)モード、ブロック予測モード、およびパターン予測モードのうちの1つまたは複数を含む、請求項1に記載の方法。
【請求項９】
画像のスライスに関係するビデオ情報を記憶するように構成されたメモリであって、前記スライスが、1つまたは複数のブロックを含む、メモリと、
前記メモリに結合され、
固定レートのコーデックのために、各々がレート歪コストを有する1つまたは複数の予測モードを識別することと、
現在のブロックのために、以前に選択されていない前記1つまたは複数の予測モードの中から最も低いレート歪コストを有する予測モードを選択することと、
前記選択された予測モードが前記固定レートのコーデックのバッファのオーバーフローまたはアンダーフローをもたらすかどうかを決定することと、
前記選択された予測モードが前記スライスの残りのブロックをコーディングするには前記スライスにおける残りのビットが不足することをもたらすかどうかを決定することと、
(i)前記バッファのオーバーフローまたはアンダーフロー、および(ii)前記スライスの前記残りのブロックをコーディングするには前記スライスにおける残りのビットが不足することのうちの少なくとも一方をもたらす、前記選択された1つまたは複数の予測モードの各々に応じて、前記現在のブロックをコーディングするためにフォールバックモードを利用するステップであって、前記フォールバックモードが、前記現在のブロックの中間点値を決定すること、および前記中間点値から現在のブロックサンプルを予測することを含む、フォールバックモードを利用することと
を行うように構成された、少なくとも1つのプロセッサ回路と
を備える、デバイス。
【請求項１０】
前記少なくとも1つのプロセッサが、前記現在のブロックが前記スライスにおける前記最初のブロックであることに応じて、前記現在のブロックの色空間成分のダイナミックレンジの半分をデフォルトにすることにより、前記中間点値を決定するようにさらに構成される、請求項9に記載のデバイス。
【請求項１１】
前記少なくとも1つのプロセッサが、前記現在のブロックに隣接する再構築ピクセル値の平均に基づいて前記中間点値を決定するようにさらに構成される、請求項9に記載のデバイス。
【請求項１２】
前記少なくとも1つのプロセッサが、前の再構築ブロックおよび前の再構築ラインのうちの少なくとも一方に基づいて前記中間点値を決定するようにさらに構成される、請求項9に記載のデバイス。
【請求項１３】
前記少なくとも1つのプロセッサが、前記現在のブロックがスライスの最初のライン内にあることに応じて、前記前の再構築ブロックに基づいて前記中間点値を決定するようにさらに構成される、請求項12に記載のデバイス。
【請求項１４】
前記少なくとも1つのプロセッサが、前記現在のブロックがスライスの最初のライン内にないことに応じて、前記前の再構築ラインに基づいて前記中間点値を決定するようにさらに構成される、請求項12に記載のデバイス。
【請求項１５】
前記少なくとも1つのプロセッサがさらに、前記現在のブロックの現在のサンプルのダイナミックレンジおよび前記フォールバックモードの量子化器のステップサイズに基づいて前記中間点値を決定するように構成される、請求項9に記載のデバイス。
【請求項１６】
前記1つまたは複数の予測モードが、離散コサイン変換(DCT)モード、ブロック予測モード、およびパターン予測モードのうちの1つまたは複数を含む、請求項9に記載のデバイス。
【請求項１７】
画像のスライスに関係するビデオ情報をコーディングするための装置であって、前記スライスが1つまたは複数のブロックを含み、前記装置が、
固定レートのコーデックのために、各々がレート歪コストを有する1つまたは複数の予測モードを識別するための手段と、
現在のブロックのために、以前に選択されていない前記1つまたは複数の予測モードの中から最も低いレート歪コストを有する予測モードを選択するための手段と、
前記選択された予測モードが前記固定レートのコーデックのバッファのオーバーフローまたはアンダーフローをもたらすかどうかを決定するための手段と、
前記選択された予測モードが前記スライスの残りのブロックをコーディングするには前記スライスにおける残りのビットが不足することをもたらすかどうかを決定するための手段と、
(i)前記バッファのオーバーフローまたはアンダーフロー、および(ii)前記スライスの前記残りのブロックをコーディングするには前記スライスにおける残りのビットが不足することのうちの少なくとも一方をもたらす、前記選択された1つまたは複数の予測モードの各々に応じて前記現在のブロックをコーディングするために、フォールバックモードを利用するための手段であって、前記フォールバックモードを利用するための前記手段が、前記現在のブロックの中間点値を決定するための手段、および前記中間点値から現在のブロックサンプルを予測するための手段を含む、フォールバックモードを利用するための手段と
を行うように構成された、少なくとも1つのプロセッサ回路と
を備える、装置。
【請求項１８】
前記中間点値を決定するための前記手段が、前記現在のブロックが前記スライスにおける前記最初のブロックであることに応じて、前記現在のブロックの色空間成分のダイナミックレンジの半分をデフォルトにするための手段を含む、請求項17に記載の装置。
【請求項１９】
前記決定するための前記手段が、前記現在のブロックに隣接する再構築ピクセル値の平均に基づいて前記中間点値を算出するための手段を含む、請求項17に記載の装置。
【請求項２０】
決定するための前記手段が、前の再構築ブロックおよび前の再構築ラインのうちの少なくとも一方に基づいて前記中間点値を算出するための手段を含む、請求項17に記載の装置。
【請求項２１】
計算するための前記手段が、前記現在のブロックがスライスの最初のライン内にあることに応じて、前記前の再構築ブロックに基づいて前記中間点値を算出するための手段を含む、請求項20に記載の装置。
【請求項２２】
計算するための前記手段が、前記現在のブロックがスライスの最初のライン内にないことに応じて、前記前の再構築ラインに基づいて前記中間点値を算出するための手段を含む、請求項20に記載の装置。
【請求項２３】
決定するための前記手段が、前記現在のブロックの現在のサンプルのダイナミックレンジおよび前記フォールバックモードの量子化器のステップサイズに基づいて前記中間点を算出するための手段を含む、請求項17に記載の装置。
【請求項２４】
前記1つまたは複数の予測モードが、離散コサイン変換(DCT)モード、ブロック予測モード、およびパターン予測モードのうちの1つまたは複数を含む、請求項17に記載の装置。
【請求項２５】
画像のスライスに関係するビデオ情報を記憶したコンピュータ可読記憶媒体であって、前記スライスが1つまたは複数のブロックを含み、前記記憶媒体がさらに、実行されるとデバイスのプロセッサに、
固定レートのコーデックのために、各々がレート歪コストを有する1つまたは複数の予測モードを識別することと、
現在のブロックのために、以前に選択されていない前記1つまたは複数の予測モードの中から最も低いレート歪コストを有する予測モードを選択することと、
前記選択された予測モードが前記固定レートのコーデックのバッファのオーバーフローまたはアンダーフローをもたらすかどうかを決定することと、
前記選択された予測モードが前記スライスの残りのブロックをコーディングするには前記スライスにおける残りのビットが不足することをもたらすかどうかを決定することと、
(i)前記バッファのオーバーフローまたはアンダーフロー、および(ii)前記スライスの前記残りのブロックをコーディングするには前記スライスにおける残りのビットが不足することのうちの少なくとも一方をもたらす、前記選択された1つまたは複数の予測モードの各々に応じて、前記現在のブロックをコーディングするためにフォールバックモードを利用するステップであって、前記フォールバックモードが、前記現在のブロックの中間点値を決定すること、および前記中間点値から現在のブロックサンプルを予測することを含む、フォールバックモードを利用することと
を行わせる命令を記憶した、コンピュータ可読記憶媒体。
【請求項２６】
実行されると前記プロセッサに、前記現在のブロックが前記スライスにおける前記最初のブロックであることに応じて、前記現在のブロックの色空間成分のダイナミックレンジの半分をデフォルトにすることに基づいて、前記中間点値を決定させる命令をさらに記憶した、請求項25に記載のコンピュータ可読記憶媒体。
【請求項２７】
実行されると前記プロセッサに、前記現在のブロックに隣接する再構築ピクセル値の平均に基づいて、前記中間点値を決定させる命令をさらに記憶した、請求項25に記載のコンピュータ可読記憶媒体。
【請求項２８】
実行されると前記プロセッサに、前の再構築ブロックおよび前の再構築ラインのうちの少なくとも一方に基づいて前記中間点値を決定させる命令をさらに記憶した、請求項25に記載のコンピュータ可読記憶媒体。
【請求項２９】
実行されると前記プロセッサに、(i)前記現在のブロックがスライスの最初のライン内にあることに応じて、前記前の再構築ブロックに基づいて、または(ii)前記現在のブロックがスライスの最初のライン内にないことに応じて、前記前の再構築ラインに基づいて、前記中間点値を決定させる命令をさらに記憶した、請求項28に記載のコンピュータ可読記憶媒体。
【請求項３０】
実行されると前記プロセッサに、前記現在のブロックの現在のサンプルのダイナミックレンジおよび前記フォールバックモードの量子化器のステップサイズに基づいて、前記中間点を決定させる命令をさらに記憶した、請求項25に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ビデオコーディングおよび圧縮の分野に関し、詳細には、ディスプレイストリーム圧縮(DSC)など、ディスプレイリンクを介した送信のためのビデオ圧縮に関する。
【背景技術】
【０００２】
デジタルビデオ能力は、デジタルテレビジョン、携帯情報端末(PDA)、ラップトップコンピュータ、デスクトップモニタ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラー電話または衛星無線電話、ビデオ遠隔会議デバイスなどを含む、広範囲のディスプレイに組み込まれ得る。ディスプレイリンクは、ディスプレイを適切なソースデバイスに接続するのに使われる。ディスプレイリンクの帯域幅要件は、ディスプレイの解像度に比例し、したがって、高解像度ディスプレイは広帯域幅ディスプレイリンクを要する。いくつかのディスプレイリンクは、高解像度ディスプレイをサポートするための帯域幅をもたない。ビデオ圧縮は、高解像度ディスプレイにデジタルビデオを提供するのにより低帯域幅のディスプレイリンクを使えばよいように、帯域幅要件を削減するのに使われ得る。
【０００３】
他のやり方では、ピクセルデータに対して画像圧縮を使用することを試みた。ただし、そのような方式は、視覚的に無損失ではないこともあり、または従来のディスプレイデバイスにおいて実装するのが難しく、コストがかかる場合がある。
【０００４】
ビデオエレクトロニクススタンダーズアソシエーション(VESA:Video Electronics Standards Association)が、ディスプレイリンクビデオ圧縮のための規格としてディスプレイストリーム圧縮(DSC)を開発した。DSCなどのディスプレイリンクビデオ圧縮技法は、特に、視覚的に無損失である(すなわち、圧縮がアクティブであることがユーザにわからないようなレベルの品質をピクチャが有する)ピクチャ品質を提供するべきである。ディスプレイリンクビデオ圧縮技法は、従来のハードウェアを用いてリアルタイムで実装するのが容易であり、コストがかからない方式も提供するべきである。
【発明の概要】
【課題を解決するための手段】
【０００５】
本開示のシステム、方法、およびデバイスは、それぞれ、複数の革新的態様を有し、それらの態様のうちのどれ1つ本明細書に開示されている望ましい属性に単独で関与することはない。
【０００６】
一態様では、画像のスライスに関係するビデオ情報をコーディングするための方法が提供され、スライスは、1つまたは複数のブロックを含む。この方法は、固定レートのコーデックのために1つまたは複数の予測モードを識別するステップを含んでもよく、各予測モードが、関連するレート歪コストを有する。この方法は、現在のブロックのために、以前に選択されていない1つまたは複数の予測モードの中から最も低いレート歪コストを有する予測モードを選択するステップを含み得る。この方法は、選択された予測モードが固定レートのコーデックのバッファのオーバーフローまたはアンダーフローをもたらすかどうかを決定することを含み得る。この方法は、選択された予測モードが、スライスの残りのブロックをコーディングするにはスライスにおける残りのビットが不足することをもたらすかどうかを決定することを含み得る。この方法は、(i)バッファのオーバーフローまたはアンダーフロー、および(ii)スライスの残りのブロックをコーディングするにはスライスにおける残りのビットが不足することのうちの少なくとも一方をもたらす、選択された1つまたは複数の予測モードの各々に応じて、現在のブロックをコーディングするためにフォールバックモードを利用するステップを含み得る。関係する態様では、フォールバックモードは、現在のブロックの中間点値を決定することと、中間点値から現在のブロックサンプルを予測することとを含み得る。
【０００７】
別の態様では、画像のスライスに関係するビデオ情報を記憶するように構成されたメモリを含み得るデバイスが提供され、スライスは、1つまたは複数のブロックを含む。このデバイスは、メモリに結合された少なくとも1つのプロセッサであって、固定レートのコーデックのために、各々がレート歪コストを有する、1つまたは複数の予測モードを識別することと、現在のブロックのために、以前に選択されていない1つまたは複数の予測モードの中から最も低いレート歪コストを有する予測モードを選択することと、選択された予測モードが固定レートのコーデックのバッファのオーバーフローまたはアンダーフローをもたらすかどうかを決定することと、選択された予測モードがスライスの残りのブロックをコーディングするにはスライスにおける残りのビットが不足することをもたらすかどうかを決定することと、(i)バッファのオーバーフローまたはアンダーフロー、および(ii)スライスの残りのブロックをコーディングするにはスライスにおける残りのビットが不足することのうちの少なくとも一方をもたらす、選択された1つまたは複数の予測モードの各々に応じて、現在のブロックをコーディングするためにフォールバックモードを利用することであって、フォールバックモードが、現在のブロックの中間点値を決定すること、および中間点値から現在のブロックサンプルを予測することを含む、フォールバックモードを利用することとを行うように構成された、少なくとも1つのプロセッサを含み得る。
【図面の簡単な説明】
【０００８】
【図１Ａ】本開示で説明する態様による技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図である。
【図１Ｂ】本開示で説明する態様による技法を実施し得る別の例示的なビデオ符号化および復号システムを示すブロック図である。
【図２Ａ】本開示で説明する態様による技法を実装し得るビデオエンコーダの例を示すブロック図である。
【図２Ｂ】本開示で説明する態様による技法を実装し得るビデオデコーダの例を示すブロック図である。
【図３】量子化パラメータ(QP)調整値を決定するための例示的な手法を示す図である。
【図４】本開示で説明する態様による、固定レートのコーデックのためにレート歪基準に基づいてスライスの現在のブロックをコーディングする例示的な方法を示すフローチャートである。
【図５】本開示で説明する態様による、ビデオ情報をコーディングするための例示的な方法を示すフローチャートである。
【発明を実施するための形態】
【０００９】
概して、本開示は、ディスプレイストリーム圧縮(DSC)などのビデオ圧縮技法を改良する技法に関する。より詳細には、本開示は、コーディングされる画像の、平坦または平滑領域から複雑領域への遷移を検出するためのシステムおよび方法に関する。本明細書では、たとえば、DSCなどのビデオ圧縮技法のコンテキストにおいてビデオデータにおける複雑領域検出のための技法を説明する。本開示の態様は、コーディング中のレートバッファのアンダーフローまたはオーバーフローが回避されることを保証することに関する。
【００１０】
いくつかの実施形態は、DSC規格のコンテキストにおいて本明細書において説明されるが、本明細書で開示するシステムおよび方法は、どの適切なビデオコーディング規格にも適用可能であり得ることが当業者には諒解されよう。たとえば、本明細書で開示する実施形態は、国際電気通信連合(ITU)電気通信規格化部門(ITU-T)H.261、国際標準化機構/国際電気標準会議(ISO/IEC)Moving Picture Experts Group-1(MPEG 1)Visual、ITU-T H.262またはISO/IEC MPEG-2 Visual、ITU-T H.263、ISO/IEC MPEG 4 Visual、ITU-T H.264(ISO/IEC MPEG-4 AVCとしても知られる)、高効率ビデオコーディング(HEVC)という規格のうちの1つまたは複数、およびそのような規格へのいかなる拡張にも適用可能であり得る。本明細書で説明する技法は、詳細には、固定ビットレート(CBR)バッファモデルを組み込む規格に適用可能であり得る。また、本開示に記載する技法は、将来開発される規格の一部になる可能性がある。言い換えると、本開示に記載する技法は、以前開発されたビデオコーディング規格、現在開発中のビデオコーディング規格、および今度のビデオコーディング規格に適用可能であり得る。
【００１１】
本開示の概念は、視覚的に無損失な実行で様々なタイプのコンテンツを符号化/復号することを目的とするいくつかの要素および/またはモードを含むコーデック(たとえば、DSC)に組み込まれる、またはその一部であってもよい。本開示は、平滑/平坦領域(たとえば、コーディングが容易である領域)から複雑領域(たとえば、コーディングが比較的困難である、またはコーディングにより大きいビット数を必要とする領域)への遷移を検出する複雑領域検出アルゴリズムを提供する。そのような遷移が検出されるとき、現在のブロックをコーディングするために必要な予想レートを下げるために、コーデックで使用される量子化パラメータ(QP)は、高い値に上げられる。これは、複雑領域における視覚情報の複雑さは、平滑/平坦領域の場合に起こるよりももっとアーチファクトをマスクし得るので、望ましい。加えて、低レートは、コーダが複雑なブロックに(たとえば、ターゲットビットレートをかなり超えて)非常に多くのビットを費やすことを防ぐために望ましい。
【００１２】
ビデオコーディング規格
ビデオ画像、TV画像、静止画像またはビデオレコーダもしくはコンピュータによって生成された画像などのデジタル画像は、水平および垂直ライン中に配列されたピクセルまたはサンプルを含み得る。単一の画像中のピクセルの数は通常、数万である。各ピクセルは通常、ルミナンスおよびクロミナンス情報を含む。圧縮なしだと、画像エンコーダから画像デコーダへ伝えられるべき莫大な量の情報により、リアルタイムの画像送信が非現実的になる。送信されるべき情報の量を削減するために、JPEG、MPEGおよびH.263規格など、いくつかの異なる圧縮方法が開発されている。
【００１３】
ビデオコーディング規格は、ITU-T H.261、ISO/IEC MPEG-1 Visual、ITU-T H.262またはISO/IEC MPEG-2 Visual、ITU-T H.263、ISO/IEC MPEG-4 Visual、ITU-T H.264(ISO/IEC MPEG-4 AVCとしても知られる)、およびそのような規格の拡張を含むHEVCを含む。
【００１４】
さらに、ビデオコーディング規格、すなわちDSCが、VESAによって開発されている。DSC規格は、ビデオを、ディスプレイリンクを介した送信用に圧縮することができるビデオ圧縮規格である。ディスプレイの解像度が増大すると、ディスプレイを駆動するのに求められるビデオデータの帯域幅が対応して増大する。いくつかのディスプレイリンクは、そのような解像度向けのディスプレイにビデオデータすべてを送信するための帯域幅をもたない場合がある。したがって、DSC規格は、ディスプレイリンクを介した、相互動作可能な、視覚的に無損失な圧縮のための圧縮規格を規定する。
【００１５】
DSC規格は、H.264およびHEVCなど、他のビデオコーディング規格とは異なる。DSCは、フレーム内圧縮を含むが、フレーム間圧縮は含まず、これは、ビデオデータをコーディングする際に、DSC規格によって時間情報を使うことができないことを意味する。対照的に、他のビデオコーディング規格は、ビデオコーディング技法においてフレーム間圧縮を利用し得る。
【００１６】
ビデオコーディングシステム
新規のシステム、装置、および方法の種々の態様が、添付の図面を参照しながら以下にさらに十分に説明される。しかしながら、本開示は、多くの異なる形態で実施され得るものであり、本開示の全体を通して示される任意の特定の構造または機能に限定されるものと解釈されるべきでない。むしろ、これらの態様は、本開示が、完全で完璧となるように、および当業者に完全に本開示の範囲を伝えるように提供される。本明細書の教示に基づいて、本開示の範囲は、本開示の他の態様とは無関係に実装されるにせよ、本開示の他の態様と組み合わせて実装されるにせよ、本明細書で開示する新規のシステム、装置、および方法のいかなる態様をもカバーするものであることを、当業者なら諒解されたい。たとえば、本明細書に記載の任意の数の態様を使用して、装置が実装され得るか、または方法が実施され得る。さらに、本開示の範囲は、本明細書に記載の本開示の様々な態様に加えてまたはそれらの態様以外に、他の構造、機能性、または構造および機能性を使用して実施されるそのような装置または方法をカバーするものとする。本明細書で開示する任意の態様は、特許請求の範囲の1つまたは複数の要素により具現化され得ることが理解されるべきである。
【００１７】
特定の態様について本明細書で説明するが、これらの態様の多くの変形体および置換は本開示の範囲内に入る。好ましい態様のいくつかの利益および利点に言及するが、本開示の範囲は特定の利益、使用、または目的に限定されるものではない。むしろ、本開示の態様は、様々なワイヤレス技術、システム構成、ネットワーク、および送信プロトコルに広く適用可能であるものとし、そのうちのいくつかが例として図および好ましい態様についての以下の説明で示される。発明を実施するための形態および図面は、限定的なものではなく本開示を説明するものにすぎず、本開示の範囲は添付の特許請求の範囲およびその等価物によって規定される。
【００１８】
添付の図面は、例を示す。添付の図面において参照番号によって示される要素は、以下の説明において同様の参照番号によって示される要素に対応する。本開示において、順序を示す言葉(たとえば、「第1」、「第2」、「第3」など)で始まる名称を有する要素は、それらの要素が特定の順序を有することを必ずしも含意するわけではない。そうではなく、そのような順序を示す言葉は単に、同じまたは類似したタイプの異なる要素を指すのに使われる。
【００１９】
図1Aは、本開示で説明する態様による技法を利用し得る例示的なビデオコーディングシステム10を示すブロック図である。本明細書で使用し、記載する「ビデオコーダ」または「コーダ」という用語は、ビデオエンコーダとビデオデコーダの両方を総称的に指す。本開示では、「ビデオコーディング」または「コーディング」という用語は、ビデオ符号化およびビデオ復号を総称的に指す場合がある。ビデオエンコーダおよびビデオデコーダに加え、本出願に記載する態様は、トランスコーダ(たとえば、ビットストリームを復号し、別のビットストリームを再符号化することができるデバイス)およびミドルボックス(たとえば、ビットストリームを修正し、変換し、かつ/またはさもなければ操作することができるデバイス)など、他の関連デバイスに拡張され得る。
【００２０】
図1Aに示すように、ビデオコーディングシステム10は、宛先デバイス14によって後で復号されるべき符号化ビデオデータを生成するソースデバイス12を含む。図1Aの例において、ソースデバイス12および宛先デバイス14は別個のデバイスを構成する。ただし、ソースデバイス12および宛先デバイス14は、図1Bの例に示すように、同じデバイスの上にあるか、またはその一部であってよいことに留意されたい。
【００２１】
図1Aをもう一度参照すると、ソースデバイス12および宛先デバイス14は、それぞれ、デスクトップコンピュータ、ノートブック(たとえば、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、車内コンピュータ、ビデオストリーミングデバイス、アイウェアおよび/またはウェアラブルコンピュータなどのエンティティ(たとえば、人間、動物、および/または別の制御されたデバイス)によって(エンティティに)装着可能である(または取外し可能な形で取付け可能な)デバイス、エンティティ内で消費され、取り込まれ、または配置され得るデバイスまたは装置などを含む、広範囲のデバイスのいずれかを含むことができる。様々な実施形態において、ソースデバイス12および宛先デバイス14は、ワイヤレス通信のために装備されてもよい。
【００２２】
宛先デバイス14は、リンク16を介して、復号されるべき符号化ビデオデータを受信し得る。リンク16は、ソースデバイス12から宛先デバイス14に符号化ビデオデータを移動することが可能な任意のタイプの媒体またはデバイスを備えてもよい。図1Aの例では、リンク16は、ソースデバイス12がリアルタイムで宛先デバイス14に符号化ビデオデータを送信することを可能にする通信媒体を備えてもよい。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス14に送信されてもよい。通信媒体は、無線周波数(RF)スペクトルなどの任意のワイヤレスもしくはワイヤード通信媒体、または、1つもしくは複数の物理的伝送線を備えてもよい。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなどの、パケットベースのネットワークの一部を形成してもよい。通信媒体は、ルータ、スイッチ、基地局、または、ソースデバイス12から宛先デバイス14への通信を容易にするために有用であってもよい任意の他の機器を含んでもよい。
【００２３】
図1Aの例では、ソースデバイス12は、ビデオソース18と、ビデオエンコーダ20と、出力インターフェース22とを含む。いくつかの場合には、出力インターフェース22は、変調器/復調器(モデム)および/または送信機を含んでもよい。ソースデバイス12において、ビデオソース18は、ビデオキャプチャデバイス、たとえば、ビデオカメラ、以前にキャプチャされたビデオを含むビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および/もしくはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステム、またはそのようなソースの組合せ、などのソースを含んでもよい。一例として、ビデオソース18がビデオカメラである場合、ソースデバイス12および宛先デバイス14は、図1Bの例に示すように、いわゆる「カメラフォン」または「ビデオフォン」を形成し得る。しかしながら、本開示で説明する技術は、一般にビデオコーディングに適用可能であってもよく、ワイヤレス用途および/またはワイヤード用途に適用されてもよい。
【００２４】
キャプチャされた、事前にキャプチャされた、またはコンピュータによって生成されたビデオは、ビデオエンコーダ20によって符号化されてもよい。符号化ビデオデータは、ソースデバイス12の出力インターフェース22を介して宛先デバイス14に送信され得る。符号化ビデオデータは、さらに(または代替的に)、復号および/または再生のための宛先デバイス14または他のデバイスによる後のアクセスのために記憶デバイス31上に記憶され得る。図1Aおよび図1Bに示されるビデオエンコーダ20は、図2Aに示されるビデオエンコーダ20または本明細書に記載する他のどのビデオエンコーダも含み得る。
【００２５】
図1Aの例では、宛先デバイス14は、入力インターフェース28と、ビデオデコーダ30と、ディスプレイデバイス32とを含む。いくつかの場合には、入力インターフェース28は、受信機および/またはモデムを含んでもよい。宛先デバイス14の入力インターフェース28は、リンク16を介して、および/または記憶デバイス31から、符号化ビデオデータを受信し得る。リンク16を介して通信され、または記憶デバイス31上に与えられた符号化ビデオデータは、ビデオデータを復号する際に、ビデオデコーダ30などのビデオデコーダが使用するための、ビデオエンコーダ20によって生成される様々なシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体上で送信された、記憶媒体上に記憶された、またはファイルサーバ上に記憶された符号化ビデオデータとともに含まれてもよい。図1Aおよび図1Bに示すビデオデコーダ30は、図2Bに示すビデオデコーダ30または本明細書に記載する他のどのビデオデコーダも含み得る。
【００２６】
ディスプレイデバイス32は、宛先デバイス14と一体化されてよく、またはその外部にあってよい。いくつかの例では、宛先デバイス14は、集積ディスプレイデバイスを含み、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先デバイス14はディスプレイデバイスであり得る。一般に、ディスプレイデバイス32は、復号ビデオデータをユーザに表示し、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを含み得る。
【００２７】
関連態様において、図1Bは、例示的ビデオコーディングシステム10'を示し、ここで、ソースデバイス12および宛先デバイス14は、デバイス11の上にあるか、またはその一部である。デバイス11は、「スマート」フォンなどの電話ハンドセットであってよい。デバイス11は、ソースデバイス12および宛先デバイス14と動作可能に通信するプロセッサ/コントローラデバイス13(随意で存在する)を含み得る。図1Bのビデオコーディングシステム10'、およびその構成要素は、場合によっては、図1Aのビデオコーディングシステム10、およびその構成要素と同様である。
【００２８】
ビデオエンコーダ20およびビデオデコーダ30は、DSCなどのビデオ圧縮規格に従って動作し得る。代替的に、ビデオエンコーダ20およびビデオデコーダ30は、代替的にMPEG-4, Part 10, AVC、HEVCと呼ばれるITU-T H.264規格など、他のプロプライエタリ規格もしくは業界規格、またはそのような規格の拡張に従って動作し得る。本開示の技術は、しかしながら、任意の特定のコーディング規格に限定されない。ビデオ圧縮規格の他の例は、MPEG-2とITU-T H.263とを含む。
【００２９】
図1Aおよび図1Bの例には示されていないが、ビデオエンコーダ20およびビデオデコーダ30は各々、オーディオエンコーダおよびオーディオデコーダと一体化され得、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するために、適切なMUX-DEMUXユニット、または他のハードウェアおよびソフトウェアを含み得る。該当する場合、いくつかの例では、MUX-DEMUXユニットは、ITU H.223マルチプレクサプロトコル、または、ユーザデータグラムプロトコル(UDP)などの他のプロトコルに準拠してもよい。
【００３０】
ビデオエンコーダ20およびビデオデコーダ30は各々、1つもしくは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアまたはそれらの任意の組合せなど、様々な適切なエンコーダ回路のいずれかとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、ソフトウェアのための命令を好適な非一時的コンピュータ可読媒体に記憶し、本開示の技法を実施するために1つまたは複数のプロセッサを使用してハードウェアでその命令を実行し得る。ビデオエンコーダ20およびビデオデコーダ30の各々は、1つまたは複数のエンコーダまたはデコーダに含まれてもよく、これらのいずれもが、それぞれのデバイス内の複合エンコーダ/デコーダの一部として統合されてもよい。
【００３１】
ビデオコーディングプロセス
上で手短に言及したように、ビデオエンコーダ20はビデオデータを符号化する。ビデオデータは、1つまたは複数のピクチャを含み得る。ピクチャの各々は、ビデオの一部を形成する静止画像である。いくつかの事例では、ピクチャはビデオ「フレーム」と呼ばれ得る。ビデオエンコーダ20がビデオデータを符号化するとき、ビデオエンコーダ20はビットストリームを生成し得る。ビットストリームは、ビデオデータのコード化表現を形成するビットのシーケンスを含み得る。ビットストリームは、コード化ピクチャおよび関連データを含み得る。コード化ピクチャは、ピクチャのコード化表現である。
【００３２】
ビットストリームを生成するために、ビデオエンコーダ20は、ビデオデータ中の各ピクチャに対して符号化動作を実施し得る。ビデオエンコーダ20がピクチャに対して符号化動作を実施するとき、ビデオエンコーダ20は、一連のコード化ピクチャおよび関連データを生成し得る。関連データは、QPなどのコーディングパラメータのセットを含み得る。コード化ピクチャを生成するために、ビデオエンコーダ20は、ピクチャを、等しいサイズのビデオブロックに区分すればよい。ビデオブロックは、サンプルの2次元アレイであり得る。コーディングパラメータは、ビデオデータのすべてのブロックについてコーディングオプション(たとえば、コーディングモード)を定義し得る。コーディングオプションは、所望のレート歪み特性を達成するために選択されてよい。
【００３３】
いくつかの例では、ビデオエンコーダ20は、ピクチャを複数のスライスに区分し得る。スライスの各々は、画像またはフレーム中の領域の残りからの情報なしで単独で復号することができる、画像(たとえば、フレーム)中の空間的に別個の領域を含み得る。各画像またはビデオフレームは、単一のスライス中で符号化されてもよく、各画像またはビデオフレームは、いくつかのスライス中で符号化されてもよい。DSCにおいて、各スライスを符号化するために割り振られるターゲットビットは、実質的に固定であり得る。ピクチャに対して符号化動作を実施することの一部として、ビデオエンコーダ20は、ピクチャの各スライスに対して符号化動作を実施し得る。ビデオエンコーダ20がスライスに対して符号化動作を実施するとき、ビデオエンコーダ20は、スライスに関連した符号化データを生成することができる。スライスに関連した符号化データは、「コード化スライス」と呼ばれ得る。
【００３４】
DSCビデオエンコーダ
図2Aは、本開示で説明する態様による技法を実装し得るビデオエンコーダ20の例を示すブロック図である。ビデオエンコーダ20は、本開示の技法のうちの一部または全部を実施するように構成され得る。いくつかの例では、本開示で説明する技法は、ビデオエンコーダ20の様々な構成要素の間で共有され得る。いくつかの例では、追加的または代替的に、プロセッサ(図示せず)が本開示で説明する技法のうちの一部または全部を実施するように構成され得る。
【００３５】
説明のために、本開示は、DSCコーディングのコンテキストにおいてビデオエンコーダ20を説明する。ただし、本開示の技法は他のコーディング規格または方法に適用可能であり得る。
【００３６】
図2Aの例において、ビデオエンコーダ20は複数の機能構成要素を含む。ビデオエンコーダ20の機能構成要素は、色空間コンバータ105、バッファ110、平坦度検出器115、レートコントローラ120、予測器、量子化器、および再構築器構成要素125、ラインバッファ130、索引付き色履歴135、エントロピーエンコーダ140、サブストリームマルチプレクサ145、ならびにレートバッファ150を含む。他の例では、ビデオエンコーダ20は、より多数の、より少数の、または異なる機能的構成要素を含み得る。
【００３７】
色空間コンバータ105は、入力色空間を、コーディング実装において使われる色空間にコンバートし得る。たとえば、例示的な一実施形態では、入力ビデオデータの色空間は、赤、緑、および青(RGB)色空間にあり、コーディングは、ルミナンスY、クロミナンス緑Cg、およびクロミナンス橙Co(YCoCg)色空間において実装される。色空間コンバージョンは、ビデオデータへのシフトおよび加算を含む方法によって実施することができる。他の色空間中の入力ビデオデータを処理することができ、他の色空間へのコンバージョンも実施することができることに留意されたい。
【００３８】
関連態様において、ビデオエンコーダ20は、バッファ110、ラインバッファ130、および/またはレートバッファ150を含み得る。たとえば、バッファ110は、ビデオエンコーダ20の他の部分によるその使用に先立って、色空間コンバートされたビデオデータを保持することができる。別の例では、ビデオデータはRGB色空間中に記憶することができ、色空間コンバートされたデータはより多くのビットを要し得るので、色空間コンバージョンは必要に応じて実施すればよい。
【００３９】
レートバッファ150は、レートコントローラ120に関連して下でより詳細に記載する、ビデオエンコーダ20内のレート制御機構の一部として機能し得る。各ブロックを符号化するのに費やされるビットは、ブロックの性質に基づいてかなり大幅に変わり得る。レートバッファ150は、圧縮ビデオにおけるレート変動を平滑化することができる。いくつかの実施形態では、バッファからビットが固定ビットレートで取り出されるCBRバッファモデルが利用される。CBRバッファモデルにおいて、ビデオエンコーダ20が、ビットストリームにあまりにも多くのビットを追加した場合、レートバッファ150はオーバーフローし得る。一方、ビデオエンコーダ20は、レートバッファ150のアンダーフローを防止するために、十分なビットを追加しなければならない。
【００４０】
ビデオデコーダ側において、ビットは、ビデオデコーダ30のレートバッファ155(下でさらに詳しく記載する図2Bを参照)に固定ビットレートで追加することができ、ビデオデコーダ30は、各ブロックについて可変数のビットを削除してよい。適正な復号を確実にするために、ビデオデコーダ30のレートバッファ155は、圧縮ビットストリームの復号中に「アンダーフロー」も「オーバーフロー」もするべきでない。
【００４１】
いくつかの実施形態では、バッファフルネス(BF)は、バッファ中に現在あるビットの数を表す値BufferCurrentSizeと、レートバッファ150のサイズを表すBufferMaxSize、すなわち、任意の時点でレートバッファ150中に記憶することができるビットの最大数とに基づいて定義され得る。BFは、次のように算出され得る。
BF=((BufferCurrentSize*100)/BufferMaxSize)
【００４２】
BFを算出する上記の手法は例にすぎず、BFは、特定の実装形態またはコンテキストに応じて、いかなる数の異なる方法でも算出され得ることに留意されたい。
【００４３】
平坦度検出器115は、ビデオデータ中の複雑(すなわち、非平坦)エリアから、ビデオデータ中の平坦(すなわち、単純または均一)エリアへの、および/またはその逆の変更を検出し得る。「複雑」および「平坦」という用語は、本明細書において、概して、ビデオエンコーダ20がビデオデータのそれぞれの領域を符号化するための難しさを指すのに使われる。したがって、本明細書において使われる複雑という用語は概して、ビデオデータの領域を、ビデオエンコーダ20が符号化するのが複雑なものとして記述し、たとえば、テクスチャ化ビデオデータ、高い空間周波数、および/または符号化するのには複雑な他の特徴を含み得る。本明細書において使われる平坦という用語は概して、ビデオデータの領域を、ビデオエンコーダ20が符号化するのに簡単なものとして記述し、たとえば、ビデオデータ中の平滑勾配、低い空間周波数、および/または符号化するのが簡単な他の特徴を含み得る。複雑領域から平坦領域への遷移は、ビデオエンコーダ20によって、符号化ビデオデータにおける量子化乱れを削減するのに使うことができる。具体的には、複雑領域から平坦領域への遷移が識別されると、レートコントローラ120ならびに予測器、量子化器、および再構築器構成要素125がそのような量子化乱れを削減することができる。同様に、平坦領域から複雑領域への遷移は、現在のブロックをコーディングするために必要な予想レートを下げるために、ビデオエンコーダ20によってQPを上げるように使用され得る。
【００４４】
レートコントローラ120は、コーディングパラメータのセット、たとえば、QPを決定する。QPは、レートバッファ150がオーバーフローもアンダーフローもしないことを確実にするターゲットビットレートに対するピクチャ品質を最大限にするために、レートバッファ150のバッファフルネスおよびビデオデータの画像活動度(たとえば、複雑領域から平坦領域へのまたはその逆の遷移)に基づいて、レートコントローラ120によって調節され得る。レートコントローラ120は、最適レート歪み特性を達成するために、ビデオデータの各ブロック向けの特定のコーディングオプション(たとえば、特定のモード)も選択する。レートコントローラ120は、歪みがビットレート制約を満足するように、すなわち、全体的な実際の符号化レートがターゲットビットレート内に収まるように、再構築画像の歪みを最小限にする。したがって、レートコントローラ120の1つの目的は、レート歪特性を最大にしながら、レートに関する瞬間的および平均的な制約を満たすために、QP、コーディングモードなどのコーディングパラメータのセットを決定することである。
【００４５】
予測器、量子化器、および再構築器構成要素125は、ビデオエンコーダ20の少なくとも3つの符号化動作を実施することができる。予測器、量子化器、および再構築器構成要素125は、いくつかの異なるモードで予測を実施することができる。1つの例示的な予測モードが、中央値適応予測の修正バージョンである。中央値適応予測は、無損失JPEG規格(JPEG-LS)によって実装することができる。予測器、量子化器、および再構築器構成要素125によって実施することができる中央値適応予測の修正バージョンは、3つの連続するサンプル値の並列予測を可能にし得る。別の例示的予測モードはブロック予測である。ブロック予測において、サンプルは、前に再構築された上のラインのピクセルから、または同じライン上の左に向かって予測される。いくつかの実施形態では、ビデオエンコーダ20およびビデオデコーダ30は両方とも、再構築ピクセルに対して同一の探索を実施して、ブロック予測の使用を決定し得、したがって、どのビットも、ブロック予測モードで送られる必要はない。他の実施形態では、ビデオエンコーダ20は、ビデオデコーダ30が別個の探索を実施する必要がないように、探索を実施し、ビットストリーム中のブロック予測ベクトルをシグナリングすることができる。成分範囲の中間点を使ってサンプルが予測される中間点予測モードも実装されてよい。中間点予測モードは、ワーストケースサンプルにおいてさえも圧縮ビデオに求められるビットの数のバウンディングを可能にし得る。
【００４６】
予測器、量子化器、および再構築器構成要素125は、量子化も実施する。たとえば、量子化は、シフタを使って実装され得る2のべき乗量子化器により実施することができる。2のべき乗量子化器の代わりに、他の量子化技法が実装されてもよいことに留意されたい。予測器、量子化器、および再構築器構成要素125によって実施される量子化は、レートコントローラ120によって決定されるQPに基づき得る。最後に、予測器、量子化器、および再構築器構成要素125は、逆量子化残差を予測値に加算すること、および結果がサンプル値の有効範囲の外になることを確実にすることを含む再構築も実施する。
【００４７】
予測器、量子化器、および再構築器構成要素125によって実施される予測、量子化、および再構築のための、上で記載した例示的手法は例示にすぎないこと、ならびに他の手法が実装されてよいことに留意されたい。予測器、量子化器、および再構築器構成要素125は、予測、量子化、および/または再構築を実施するための下位構成要素を含み得ることにも留意されたい。予測、量子化、および/または再構築は、予測器、量子化器、および再構築器構成要素125の代わりに、いくつかの別個のエンコーダ構成要素によって実施されてよいことにさらに留意されたい。
【００４８】
ラインバッファ130は、予測器、量子化器、および再構築器構成要素125ならびに索引付き色履歴135が、バッファリングされたビデオデータを使うことができるように、予測器、量子化器、および再構築器構成要素125からの出力を保持する。索引付き色履歴135は、最近使われたピクセル値を記憶する。これらの最近使われたピクセル値は、専用シンタックスにより、ビデオエンコーダ20によって直接参照することができる。
【００４９】
エントロピーエンコーダ140は、予測器、量子化器、および再構築器構成要素125から受信された予測残差ならびに他のどのデータ(たとえば、予測器、量子化器、および再構築器構成要素125によって識別された索引)も、索引付き色履歴135と、平坦度検出器115によって識別された平坦度遷移とに基づいて符号化する。いくつかの例では、エントロピーエンコーダ140は、サブストリームエンコーダごとに、1クロックあたり3つのサンプルを符号化することができる。サブストリームマルチプレクサ145は、ヘッダなしパケット多重化方式に基づいてビットストリームを多重化することができる。こうすることにより、ビデオデコーダ30は、3つのエントロピーデコーダを並行して稼働させることができ、1クロックあたり3つのピクセルの復号を容易にする。サブストリームマルチプレクサ145は、ビデオデコーダ30によってパケットが効率的に復号され得るように、パケット順序を最適化することができる。1クロックあたり2のべき乗ピクセル(たとえば、2ピクセル/クロックまたは4ピクセル/クロック)の復号を容易にし得る、エントロピーコーディングのための異なる手法が実装されてよいことに留意されたい。
【００５０】
DSCビデオデコーダ
図2Bは、本開示で説明する態様による技法を実装し得るビデオデコーダ30の例を示すブロック図である。ビデオデコーダ30は、本開示の技法のうちの一部または全部を実施するように構成され得る。いくつかの例では、本開示で説明する技法は、ビデオエンコーダ30の様々な構成要素の間で共有され得る。いくつかの例では、追加的または代替的に、プロセッサ(図示せず)が本開示で説明する技法のうちの一部または全部を実施するように構成され得る。
【００５１】
説明のために、本開示は、DSCコーディングのコンテキストにおいてビデオデコーダ30を説明する。ただし、本開示の技法は他のコーディング規格または方法に適用可能であり得る。
【００５２】
図2Bの例において、ビデオデコーダ30は複数の機能構成要素を含む。ビデオデコーダ30の機能構成要素は、レートバッファ155、サブストリームデマルチプレクサ160、エントロピーデコーダ165、レートコントローラ170、予測器、量子化器、および再構築器構成要素175、索引付き色履歴180、ラインバッファ185、ならびに色空間コンバータ190を含む。ビデオデコーダ30の図示する構成要素は、図2Aのビデオエンコーダ20に関連して上述した対応する構成要素に類似している。したがって、ビデオデコーダ30の構成要素の各々は、上述したビデオエンコーダ20の対応する構成要素と同様に動作し得る。
【００５３】
QP計算
1つの手法では、現在のブロック用のQP(currQPとして示す)は、以下の式に基づいて導出または算出され得る。
currQP=prevQ+QpAdj*(diffBits>0?1:-1)
【００５４】
上式で、prevQPは前のブロックに関連するQPであり、diffBitsは、previousBlockBitsとtargetBitsとの差分を表し、QpAdjは、diffBitsの大きさに基づいて計算されるQPオフセット値(たとえば、QP調整値)であり、previousBlockBitsは、前のブロックをコーディングするために使用されるビット数を表し、targetBitsは、現在のブロックをコーディングするためのターゲットビット数を表す。previousBlockBits>targetBitsのとき、diffBitsは正数であり、現在のブロックのQPは、オフセット値QpAdjをprevQPに加算することによって導出され得る。言い換えれば、diffBitsが正数であるとき、QP値は、prevQPから値が下がらない。previousBlockBits≦targetBitsのとき、diffBitsは負数またはゼロであり、currQPはprevQP値から増えない。オフセット値QpAdjは、たとえば、diffBitsの大きさが増えるにつれてQpAdjが単調に増加するようにdiffBitsの関数として算出され得ることに留意されたい。
【００５５】
QP調整値QpAdjを計算するための、本明細書ではデフォルト技法と呼ぶ1つの技法について、図3を参照しながら次に説明する。図3は、ゼロから始まるdiffBitsの値が描かれる軸を含むグラフ300を提供する。デフォルト技法では、diffBits>0のとき、diffBitsは、K個の閾値を使用してK+1個の範囲に分類され得る。これらの閾値は、閾値1、閾値2、閾値3、……、および閾値Kというラベルによって示され、範囲は、範囲1、範囲2、範囲3、……、および範囲K+1というラベルによって示される。図3のデフォルト技法では、diffBitsを、K個の閾値を使用してK+1個の範囲に分ける1つの手法が示されている。各範囲は、特定のQpAdj値に関連付けられてもよく、QpAdj値は、範囲指標が増えるにつれて増える。diffBits≦0のとき、diffBitsの絶対値は、J個の閾値を使用してJ+1個の範囲に分類されてもよく(図示せず)、J+1個の範囲の各々に割り当てられた特定のQpAdj値があってもよい。
【００５６】
他の態様では、currQP値は、バッファのアンダーフローおよび/またはオーバーフローを防ぐために、バッファのフルネス(バッファフルネス(BF)として表され得る)に基づいて調整されてもよい。詳細には、BFがある閾値(たとえば、P1)を超えるとき、currQPは固定オフセット値(たとえば、p1)だけインクリメントされ得る。たとえば、currQPは、次のように調整され得る:currQP+=p1。さらに、BFがある閾値(たとえば、Q1)を下回るとき、currQPはq1だけデクリメントされ、たとえば、currQP-=q1であり得る。ある態様では、複数の閾値が用いられてもよく、各閾値に対して、currQPを調整するための対応するオフセット値があってもよい。
【００５７】
複雑領域から平坦領域への遷移が識別されるとき、または平坦領域が識別されるとき、currQPは、以下でさらに詳細に説明するように、低い値(たとえば、定義されたcurrQP値を下回る値)に設定されてもよい。
【００５８】
画像領域をコーディングするためのフォールバック予測モード
本開示の1つまたは複数の態様によれば、各々がコンテンツタイプをコーディングすることを目的とする多数の予測/コーディングモードを有するブロックベースのコーデックのためのフォールバックモードが提供される。一実装形態では、各予測モードのレートと歪の両方を検討することにより、画像中の各ブロックに対して予測モードの中から選択するために、レート制御機構が利用され得る。
【００５９】
たとえば、予測モードの各々に対して、レート歪コストが算出されてもよく、それぞれのレート歪コストは、利用可能な予測モードを検討するとき検討されてもよい。レート制御機構は、たとえば、仮想参照デコーダ(HRD)バッファモデルによってサポートされてもよく、バッファがアンダーフロー(たとえば、バッファにはゼロ未満のビット)またはオーバーフロー(たとえば、バッファサイズが設定された最大サイズを超えて増加している)の状態に決してないことが、コーデックの設計要件であってもよい。そのような技法は、固定レートのコーデック(たとえば、DSC)には一般的である、バッファアンダーフロー/オーバーフローが防止されるべきである、レートバッファを利用するどんなコーデックにも適用可能である。
【００６０】
図4を参照すると、レート歪基準に基づいてスライスの現在のブロックをコーディングするために予測モードを選択するステップを含む例示的な方法400のためのフローチャートが示されている。ブロック410において、方法400は、各予測モードに対してレート歪コストを計算するステップを含み得る。たとえば、レート歪コストは次の式Cmode=Dmode+λRmodeに従って算出され得る。
【００６１】
Dmodeは、予測モードに対する歪を示す。一例では、Dmodeは、YCoCgまたは別の色空間についての絶対差分和として(または、重み付き絶対差分和として)算出されてもよい。しかしながら、絶対差分和または重み付き絶対差分和に基づくそのようなメトリックに加えてまたはその代わりに他の歪メトリックが使用され得ることに留意されたい。Rmodeは、予測モードのビットレートを示す。λは、ラグランジュパラメータを示す。ラグランジュパラメータは、ビットレートおよびバッファフルネスの関数であってもよい。
【００６２】
ブロック420において、方法400は、予測モードをそれらのそれぞれのレート歪コストに基づいてソートするステップまたはランク付けするステップを含み得る。ブロック430において開始して、方法400は、選択したモードがいくつかの条件/基準を満たすかどうかを決定するために、(以前に選択されていない)利用可能な予測モードの中から最小のレート歪コストを有する予測モードmを選択するステップを含み得る。図4の例では、条件/基準は、(ブロック440における)条件Aおよび(ブロック450における)条件Bである。
【００６３】
決定ブロック440における条件Aは、予測モードmの選択が、バッファが最終的に、固定レートのコーデックに対してオーバーフローおよび/またはアンダーフローの状態にならないことを確実にするかどうかである。決定ブロック450における条件Bは、予測モードmの選択が、スライスの残りブロックをコーディングするためにスライスに十分な残りビットを生じるかどうかである。
【００６４】
決定ブロック440における条件Aが満たされる(すなわち、予測モードmの選択が、バッファが最終的に固定レートのコーデックに対してオーバーフローおよび/またはアンダーフローの状態にならないことを確実にする)場合、方法400は、条件Bが満たされる(すなわち、予測モードmの選択が、スライスの残りのブロックをコーディングするためにスライスに十分な残りビットを生じる)かどうかを決定するために決定ブロック450に進んでもよい。条件Bが満たされる場合、方法400は、ブロック460に進んで中断または終了してもよい。
【００６５】
決定ブロック440における条件Aまたは決定ブロック450における条件Bのいずれかが満たされない場合、方法400はブロック470に進んでもよく、予測モードmは、現在のブロックに対して無効にされ、次いで決定ブロック480に進み、方法は、現在のブロックに対して残りの予測モードが残っているかどうかを決定してもよい。
【００６６】
決定ブロック480において、現在のブロックに対してさらに予測モードが残っていると決定される場合、方法400はブロック430に戻って、残りの予測モードの中から最小のレート歪コストを有する次の予測モードを選択してもよい。この選択された予測モードは、次いで、この選択された予測モードが条件Aおよび条件Bを満たすかどうかを決定するためにテストされる。
【００６７】
決定ブロック480において、現在のブロックに対してそれ以上予測モードが残っていないと決定される場合、方法400はブロック490に進んでもよく、中間点予測(MPP)フォールバックモードが選択される。MPPフォールバックモードは、MPPFモードと略される場合がある。
【００６８】
MPPFモードで、ブロック中の各サンプルが、あらかじめ定義された中間点値から予測され得る。この中間点値は、以下でさらに詳細に説明するように、いくつかの異なる方法で計算され得る。関係する態様では、現在のブロックに対する中間点値は、固定であることがあり、または隣接ピクセル値に左右される場合がある(たとえば、隣接ピクセル値に少なくとも部分的に基づいて算出される場合がある)。たとえば、中間点値を算出することは、現在のブロックに隣接するピクセル値の平均に基づいて中間点値を算出することを含み得る。
【００６９】
一態様では、中間点値を算出することは、現在のブロックがスライスにおける最初のブロックであることに応じて、現在のブロックの色空間成分のダイナミックレンジの半分をデフォルトにすることを含んでもよい。一例では、RGB888コンテンツについて、中間点は、1≪(8-1)=128であり得る。別の例では、クロマ成分当たりに9ビットを有するYCoCgコンテンツについて、中間点は256に等しくなり得る。ここでは、中間点値は、クロマが範囲[0, 511]にある場合、256をデフォルトにしてもよく、または、クロマが範囲[-256, 255]にある場合、0をデフォルトにしてもよい。
【００７０】
別の態様では、中間点の選択または計算は、現在のブロックがスライスの最初のライン内にある(FLS)か、それともスライス中の最初のライン内にない(NFLS)かに基づき得る。たとえば、現在のブロックがFLS内にあるが、スライス中の最初のブロックではない場合、現在のラインからの前の再構築ブロックが、中間点を計算するために使用され得る。別の例では、現在のブロックがNFLS内である場合、前の再構築ラインが、中間点を計算するために使用され得る。
【００７１】
したがって、中間点値を算出することは、前の再構築ブロックおよび前の再構築ラインの少なくとも一方に基づいて中間点値を計算することを含み得る。たとえば、中間点値を計算することは、現在のブロックがスライスの最初のライン内にあることに応じて、前の再構築ブロックに基づき得る。別の例では、中間点値を計算することは、現在のブロックがスライスの最初のライン内にないことに応じて、前の再構築ラインに基づき得る。
【００７２】
また別の態様では、中間点は、現在のブロックの現在のサンプルのダイナミックレンジおよび/またはフォールバックモードの量子化器のステップサイズに基づいて算出され得る。一実装形態では、中間点は、以下の式に従って計算され得る。
【００７３】
【数１】
2018516491.tif 000003
【００７４】
DRは、現在のサンプルのダイナミックレンジを示し、stepSizeは、量子化器の現在のステップサイズを示す。値xは、たとえば、現在のブロックがFLS状態か、それともNFLS状態かに応じて、前の再構築ブロック、または前の再構築ラインのいずれかに基づき得る。
【００７５】
たとえば、xは、前の再構築ブロックの平均として算出され得る。このシナリオでは、ステップサイズが切り捨てるビットプレーン数を決定するように、単純な2のべき乗量子化器が使用され得る。この中間点は、次の範囲内となる。
【００７６】
【数２】
2018516491.tif 000004
【００７７】
量子化残差は、2の補数算術における余り符号のために、正の領域ではなく、負の領域に1つの追加の符号を有することになるので、上記の範囲は、正の値に偏っている。2ビットの2の補数値に対する例示的な符号語は、下記の表で与えられる。この範囲[-2,1]は、1つの追加の負の符号を有することに留意されたい。
【００７８】
【表１】
2018516491.tif 000005
【００７９】
別の実装形態では、オフセットは省略され得る。すなわち、各サンプルは、ダイナミックレンジの半分のみから予測され得る。また別の実装形態では、エンコーダが中間点予測にオフセットを付加するかどうかをブロックごとに決定する動的手法が利用され得る。そのような情報は、たとえば、1ビットをデコーダに送信することによってシグナリングされ得る。
【００８０】
さらに別の実装形態では、明示的というよりむしろ暗黙的である動的手法が利用され得る。すなわち、エンコーダおよびデコーダは、両方とも、前の再構築ブロックまたは前の再構築ラインからのデータに基づいて中間点にオフセットを付加するかどうかを決定することができる。
【００８１】
別の実装形態では、中間点を計算するために使用されるネイバーは、前の再構築ラインではなく、前の再構築ブロック(同じライン)によるものであってもよい。また別の実装形態では、中間点(MP)値は、以下の式に基づいて算出され得、ここでは、%は、(1≪stepSize)に対するxの余剰を示す。
【００８２】
【数３】
2018516491.tif 000006
【００８３】
さらに別の実装形態では、中間点値は、隣接ピクセル値の平均として計算されるが、現在のビット深度の係数(modulus)を計算することによってクリッピングされない場合がある。
【００８４】
現在のブロックに対して中間点値が計算されると、現在のブロックサンプルは、中間点値から予測され得、残差は量子化され、デコーダにシグナリングされ得る。現在のブロックに対して計算された中間点値は、エンコーダとデコーダとの間で同じとなることに留意されたい。
【００８５】
MPPFモードは、空間相関が利用可能ではないランダムノイズ領域での使用を対象とし得るので、量子化残差は、サンプルあたりに固定数のビットを使用してコーディングされ得る。これは、MPPFモードに対するワーストケースの挙動を確実なものにする効果も有する。
【００８６】
一態様では、量子化残差は、グループ化され、エントロピー符号化される、またはたとえば、指数ゴロム、ハフマンテーブルなどの代替の可変長符号を使用してコーディングされる場合がある。
【００８７】
別の態様では、現在のブロックは、サブブロックのセットに区分され得る。たとえば、2×8ブロックが、4個の1×4ブロックに区分され得る。各サブブロックに対して、個別の中間点値が算出され得る。現在のブロック中の各サンプルは、それが交わる中間点から予測され得る。たとえば、1×4というサブブロックのサイズを仮定すると、現在のブロック中の最初の4つのピクセルは、同じ中間点値(たとえば、MP0)から予測され得る。次の4つのサンプルは、MP1などから予測され得る。
【００８８】
また別の態様では、MPPFモードに対するサンプルあたりのビット数は、所望のアプリケーションに少なくとも部分的に基づいて選択され得る。1つの提案する手法では、MPPFブロックに対する総ビット数は、エンコーダのターゲットビットレート未満であり得る。たとえば、ソースコンテンツがRGB888(24ビット/ピクセル)である場合、ブロックサイズは2×8であり、圧縮率は4:1であり、ターゲットビットレートは、以下の式に従って算出され得る。
【００８９】
【数４】
2018516491.tif 000007
【００９０】
上記の例では、MPPFブロックの総レートは、厳密に96ビット未満であるべきである。上記の例の変形形態では、各MPPFブロックが96ビット以下であるように、以下(≦)という表記が、未満(<)という表記の代わりに使用され得る。
【００９１】
提案するMPPFモードは、ブロックあたりのワーストケースのレートを有するように調整され得ることに留意されたい。これは、コーデックが現在のスライス内の任意のブロックに所与のビット数が実質的に利用可能であることを前もって確実にすることができるので、望ましい。一例では、唯一の要件は、バッファオーバーフローを防ぐためにMPPFモードのレートがターゲット圧縮ビットレート未満であることであってもよい。
【００９２】
提案するフォールバックモードは、最大エントロピーを有し得るランダムノイズ領域を符号化するのに好適であることにさらに留意されたい。そのような場合には空間相関はゼロであり得るので、予測がレート節減をもたらすことはない。したがって、単にランダム分布の平均から予測することが最適であり得る。たとえば、ビット深度Nの場合、すべての残差は、[-2N-1, 2N-1-1]間に一様に分布され得る。[0, 2N-1]にわたって一様ではないノイズの場合、MPPFモードの予測部分は、予想レートを下げることをさらに含み得る。
【００９３】
レート制約フォールバックモードのための例示的なフローチャート
図5を参照して、ビデオ情報をコーディングするための例示的な手順について説明する。ビデオ情報は、画像のスライスを含んでもよく、スライスは、1つまたは複数のブロックを含んでもよい。
【００９４】
図5は、本開示の一実施形態による、ビデオ情報をコーディングするための方法500を示すフローチャートである。図5に示すステップは、ビデオエンコーダ(たとえば、図2A中のビデオエンコーダ20)、ビデオデコーダ(たとえば、図2B中のビデオデコーダ30)、または、たとえば、レートコントローラ120、予測器、量子化器、および再構築器構成要素125、エントロピーエンコーダ140、ならびにレートバッファ150など、それらの構成要素によって実行され得る。便宜上、方法500については、ビデオエンコーダ20、ビデオデコーダ30、または他の構成要素であってもよいビデオコーダ(単にコーダとも呼ばれる)によって実施されるものとして説明する。
【００９５】
コーダまたはその構成要素は、バッファを含む、複数のプログラム可能計算ユニットによって共有される集積グローバルメモリを含むデバイスに実装され得、バッファは、先入れ先出し(FIFO)バッファを含み得る。デバイスは、グラフィックス処理ユニット(GPU)を含む集積回路(IC)をさらに含み得、GPUは、1つまたは複数のプログラム可能計算ユニットを含み得る。
【００９６】
方法500は、ブロック510から開始する。ブロック510において、コーダは、固定レートのコーデックのために、各々がレート歪コストを有する1つまたは複数の予測モードを識別する。1つまたは複数の予測モードは、たとえば、DCTモード、ブロック予測モード、およびパターン予測モードのうちの1つまたは複数を含み得る。ブロック520において、コーダは、現在のブロックのために、以前に選択されていない1つまたは複数の予測モードの中から最も低いレート歪コストを有する予測モードを選択する。
【００９７】
ブロック530において、コーダは、選択された予測モードが固定レートのコーデックのバッファのオーバーフローまたはアンダーフローをもたらすかどうかを決定する。ブロック540において、コーダは、選択された予測モードが、スライスの残りのブロックをコーディングするにはスライスにおける残りのビットが不足することをもたらすかどうかを決定する。
【００９８】
ブロック550において、(i)バッファのオーバーフローまたはアンダーフロー、および(ii)スライスの残りのブロックをコーディングするにはスライスにおける残りのビットが不足することのうちの少なくとも一方をもたらす、選択された1つまたは複数の予測モードの各々に応じて、コーダは、現在のブロックをコーディングするためにフォールバックモードを利用する。フォールバックモードは、現在のブロックの中間点値を決定することと、中間点値から現在のブロックサンプルを予測することとを含み得る。
【００９９】
一例では、ブロック550は、現在のブロックがスライスにおける最初のブロックであることに応じて、現在のブロックの色空間成分のダイナミックレンジの半分をデフォルトにすることによってコーダが中間点値を決定することを含み得る。別の例では、ブロック550は、現在のブロックに隣接するピクセル値の平均に基づいてコーダが中間点値を決定することを含み得る。
【０１００】
また別の例では、ブロック550は、前の再構築ブロックおよび前の再構築ラインのうちの少なくとも一方に基づいてコーダが中間点値を決定することを含み得る。たとえば、コーダは、現在のブロックがスライスの最初のライン内にあることに応じて、前の再構築ブロックに基づいて中間点値を算出または計算する場合もある。別の例では、コーダは、現在のブロックがスライスの最初のライン内にないことに応じて、前の再構築ラインに基づいて中間点値を算出または計算する場合もある。
【０１０１】
さらに別の例では、コーダは、現在のブロックの現在のサンプルのダイナミックレンジおよびフォールバックモードの量子化器のステップサイズに基づいて中間点を決定し得る。
【０１０２】
他の検討事項
本開示の態様は、図2Aのビデオエンコーダ20などのエンコーダの観点から説明してきたことに留意されたい。ただし、たとえば図2Bのビデオデコーダ30によって、生成されたビットストリームを復号するために、上記で説明した動作と逆の動作が適用され得ることを当業者は諒解されよう。
【０１０３】
本明細書で開示する情報および信号は、種々の異なる技術および技法のいずれかを使用して表すことができる。たとえば、上記の説明全体にわたって参照される場合があるデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場もしくは磁性粒子、光学場もしくは光学粒子、またはそれらの任意の組合せによって表すことができる。
【０１０４】
本明細書において開示された実施形態に関して記載された様々な例示的な論理ブロック、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、またはその両方の組合せとして実装される場合がある。ハードウェアおよびソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、およびステップは、それらの機能性の点から一般的に上に説明されている。そのような機能性がハードウェアとして実装されるかソフトウェアとして実装されるかは、特定の適用例および全体的なシステムに課された設計制約に依存する。当業者は、説明された機能性を特定の適用例ごとに様々な方式で実装し得るが、そのような実装の決定は、本開示の範囲からの逸脱を引き起こすと解釈されるべきではない。
【０１０５】
本明細書で説明した技法は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装することができる。そのような技法は、汎用コンピュータ、ワイヤレス通信デバイスハンドセット、またはワイヤレス通信デバイスハンドセット、自動車、アプライアンス、ウェアラブル、および/もしくは他のデバイスにおける適用例を含む複数の用途を有する集積回路デバイスなどの、様々なデバイスのいずれかにおいて実装され得る。デバイスまたは構成要素として記載された任意の特徴は、集積論理デバイス内で一緒に、または個別であるが相互運用可能な論理デバイスとして別々に実装され得る。ソフトウェアに実装された場合、本技法は、実行されると、上記で説明された方法のうちの1つまたは複数を実施する命令を含むプログラムコードを備えるコンピュータ可読データ記憶媒体に少なくとも部分的によって、実現され得る。コンピュータ可読データ記憶媒体は、パッケージング材料を含むことがあるコンピュータプログラム製品の一部を形成し得る。コンピュータ可読媒体は、ランダムアクセスメモリ(RAM)、たとえば同期式ダイナミックランダムアクセスメモリ(SDRAM)、読取り専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気消去可能プログラマブル読取り専用メモリ(EEPROM)、FLASHメモリ、磁気または光学データ記憶媒体などのようなメモリまたはデータ記憶媒体を含み得る。本技法は、追加または代替として、伝搬信号または電波などの、命令またはデータ構造の形態でプログラムコードを搬送または伝達し、コンピュータによってアクセスされ、読み取られ、および/または実行され得るコンピュータ可読通信媒体に少なくとも部分的によって、実現され得る。
【０１０６】
プログラムコードは、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、または他の等価の集積論理回路もしくはディスクリート論理回路のような、1つまたは複数のプロセッサを含み得るプロセッサによって実行され得る。そのようなプロセッサは、本開示に記載された技法のいずれかを実施するように構成され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替実施形態では、プロセッサは、任意の従来型プロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つもしくは複数のマイクロプロセッサ、または任意の他のそのような構成としても実装され得る。したがって、本明細書で使用する「プロセッサ」という用語は、本明細書で説明する技法の実装に適した、前述の構造、前述の構造または任意の他の構造もしくは装置の任意の組合せのうちの任意のものを指し得る。さらに、いくつかの態様では、本明細書に記載された機能は、符号化および復号のために構成された専用のソフトウェアもしくはハードウェア内に提供され得るか、または複合ビデオエンコーダ/デコーダ(コーデック)に組み込まれ得る。また、技法は、1つまたは複数の回路または論理要素で完全に実装されてよい。
【０１０７】
本開示の技法は、ワイヤレスハンドセット、ICまたはICのセット(たとえば、チップセット)を含む、多種多様なデバイスまたは装置において実装され得る。開示する技法を実施するように構成されたデバイスの機能的態様を強調するために、様々な構成要素、またはユニットについて本開示で説明したが、これらの構成要素、またはユニットは、必ずしも異なるハードウェアユニットによる実現を必要とするとは限らない。そうではなくて、上で説明されたように、様々なユニットは、コーデックハードウェアユニットの中で組み合わされてよく、または適切なソフトウェアおよび/もしくはファームウェアとともに、前述のような1つもしくは複数のプロセッサを含む、相互動作可能なハードウェアユニットの集合によって提供されてよい。
【０１０８】
上記は、異なる様々な実施形態に関連して記載されているが、本開示の教示から逸脱することなく、ある実施形態からの特徴または要素が、他の実施形態と組み合わされてよい。ただし、それぞれの実施形態の間での特徴の組合せは、必ずしもそれらに限定されるとは限らない。本開示の様々な実施形態が説明されてきた。これらおよび他の実施形態は、以下の特許請求の範囲に含まれる。
【符号の説明】
【０１０９】
10  ビデオコーディングシステム
10'  ビデオコーディングシステム
11  デバイス
12  ソースデバイス
13  プロセッサ/コントローラデバイス
14  宛先デバイス
16  リンク
18  ビデオソース
20  ビデオエンコーダ
22  出力インターフェース
28  入力インターフェース
30  ビデオデコーダ
32  ディスプレイデバイス
105  色空間コンバータ
110  バッファ
115  平坦度検出器
120  レートコントローラ
125  予測器、量子化器、および再構築器構成要素
130  ラインバッファ
135  索引付き色履歴
140  エントロピーエンコーダ
145  サブストリームマルチプレクサ
150  レートバッファ
155  レートバッファ
160  サブストリームデマルチプレクサ
165  エントロピーデコーダ
170  レートコントローラ
175  予測器、量子化器、および再構築器構成要素
180  索引付き色履歴
185  ラインバッファ
【図１Ａ】
2018516491.tif 000008
【図１Ｂ】
2018516491.tif 000009
【図２Ａ】
2018516491.tif 000010
【図２Ｂ】
2018516491.tif 000011
【図３】
2018516491.tif 000012
【図４】
2018516491.tif 000013
【図５】
2018516491.tif 000014
【国際調査報告】
2018516491.tif 000015
2018516491.tif 000016
2018516491.tif 000017