(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022189870
(43)【公開日】2022-12-22
(54)【発明の名称】適応変換タイプを有する空間的に変化する変換
(51)【国際特許分類】
H04N 19/12 20140101AFI20221215BHJP
H04N 19/157 20140101ALI20221215BHJP
H04N 19/176 20140101ALI20221215BHJP
H04N 19/60 20140101ALI20221215BHJP
H04N 19/70 20140101ALI20221215BHJP
【FI】
H04N19/12
H04N19/157
H04N19/176
H04N19/60
H04N19/70
【審査請求】有
【請求項の数】17
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2022164888
(22)【出願日】2022-10-13
(62)【分割の表示】P 2020566562の分割
【原出願日】2019-05-28
(31)【優先権主張番号】62/678,738
(32)【優先日】2018-05-31
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】503433420
【氏名又は名称】華為技術有限公司
【氏名又は名称原語表記】HUAWEI TECHNOLOGIES CO.,LTD.
【住所又は居所原語表記】Huawei Administration Building, Bantian, Longgang District, Shenzhen, Guangdong 518129, P.R. China
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ジャオ,イン
(72)【発明者】
【氏名】ヤン,ハイタオ
(72)【発明者】
【氏名】チェン,ジャンレ
(57)【要約】
【課題】本開示は、適応変換タイプを有するSVTを採用するビデオ復号化方法及び装置を開示する。
【解決手段】方法は、残差ブロックのためのSVT-V又はSVT-Hの使用を決定することと、残差ブロックの変換ブロックの変換ブロック位置を決定することと、変換ブロックの変換タイプを決定することであり、変換タイプは変換ブロックの水平変換及び垂直変換を示し、水平変換及び垂直変換のうちの少なくとも一方はDST-7である、ことと、変換タイプ、変換ブロック位置及び変換ブロックの変換係数に基づいて残差ブロックを再構成することとを有する。本開示の解決法を用いることによって、復号化品質を改善することができる。
【選択図】
図5
【特許請求の範囲】
【請求項1】
ビデオ復号化方法であって、
ビットストリーム内の第1フラグに従って、空間的に変化する変換(SVT)が残差ブロックに対して使用されていることを決定することと、
前記ビットストリーム内の第2フラグに従って、前記残差ブロックのためのSVTタイプを決定することであり、前記SVTタイプは、SVT-垂直(V)タイプ又はSVT-水平(H)タイプのどちらか一方であり、前記SVT-Vタイプは、前記残差ブロックの変換ブロックの第1の幅が前記残差ブロックの第2の幅の4分の1であること、及び前記変換ブロックの第1の高さが前記残差ブロックの第2の高さと同じであることを示し、前記SVT-Hタイプは、前記第1の幅が前記第2の幅と同じであること、及び前記第1の高さが前記第2の高さの4分の1であることを示す、ことと、
前記ビットストリーム内のシンタックス要素に従って、前記変換ブロックの変換ブロック位置を決定することと、
前記SVTタイプ及び前記変換ブロック位置に従って前記変換ブロックの変換タイプを決定することと、
変換ブロックサイズに従って前記変換ブロックの変換係数をパースすることと、
前記変換タイプ、前記変換ブロックサイズ、前記変換ブロック位置、及び前記変換係数に基づき前記残差ブロックを再構成することと
を有するビデオ復号化方法。
【請求項2】
前記変換ブロックの前記変換タイプは、前記変換ブロックのための水平変換及び垂直変換を示し、前記SVTタイプは前記SVT-Vタイプであり、前記変換ブロック位置は、前記残差ブロックの左上角をカバーし、前記水平変換は離散コサイン変換(DCT)-8に基づき、前記垂直変換は離散サイン変換(DST)-7に基づく、
請求項1に記載のビデオ復号化方法。
【請求項3】
前記変換ブロックの前記変換タイプは、前記変換ブロックのための水平変換及び垂直変換を示し、前記SVTタイプは前記SVT-Vタイプであり、前記変換ブロック位置は、前記残差ブロックの右下角をカバーし、前記水平変換は離散サイン変換(DST)-7に基づき、前記垂直変換は前記DST-7に基づく、
請求項1に記載のビデオ復号化方法。
【請求項4】
前記変換ブロックの前記変換タイプは、前記変換ブロックのための水平変換及び垂直変換を示し、前記SVTタイプは前記SVT-Hタイプであり、前記変換ブロック位置は、前記残差ブロックの左上角をカバーし、前記水平変換は離散サイン変換(DST)-7に基づき、前記垂直変換は離散コサイン変換(DCT)-8に基づく、
請求項1に記載のビデオ復号化方法。
【請求項5】
前記変換ブロックの前記変換タイプは、前記変換ブロックのための水平変換及び垂直変換を示し、前記SVTタイプは前記SVT-Hタイプであり、前記変換ブロック位置は、前記残差ブロックの右下角をカバーし、前記水平変換は離散サイン変換(DST)-7に基づき、前記垂直変換は前記DST-7に基づく、
請求項1に記載のビデオ復号化方法。
【請求項6】
ビデオ符号化方法であって、
空間的に変化する変換(SVT)が残差ブロックに対して使用されることを示す第1フラグの値を取得することと、
前記残差ブロックのためのSVTタイプを示す第2フラグの値を取得することであり、前記SVTタイプは、SVT-垂直(V)タイプ又はSVT-水平(H)タイプのどちらか一方であり、前記SVT-Vタイプは、前記残差ブロックの変換ブロックの第1の幅が前記残差ブロックの第2の幅の4分の1であること、及び前記変換ブロックの第1の高さが前記残差ブロックの第2の高さと同じであることを示し、前記SVT-Hタイプは、前記第1の幅が前記第2の幅と同じであること、及び前記第1の高さが前記第2の高さの4分の1であることを示す、ことと、
前記変換ブロックの変換ブロック位置を示すシンタックス要素を取得することであり、前記変換ブロックの変換タイプは、前記変換ブロック位置及び前記第2フラグの値に対応する、ことと、
前記変換ブロックの変換係数を取得することと、
前記第1フラグの値、前記第2フラグの値、前記シンタックス要素、及び前記変換係数をビットストリームに含めることと、
前記ビットストリームを送信することと
を有するビデオ符号化方法。
【請求項7】
前記変換ブロックの前記変換タイプは、前記変換ブロックのための水平変換及び垂直変換を示し、前記SVTタイプは前記SVT-Vタイプであり、前記変換ブロック位置は、前記残差ブロックの左上角をカバーし、前記水平変換は離散コサイン変換(DCT)-8に基づき、前記垂直変換は離散サイン変換(DST)-7に基づく、
請求項6に記載のビデオ符号化方法。
【請求項8】
前記変換ブロックの前記変換タイプは、前記変換ブロックのための水平変換及び垂直変換を示し、前記SVTタイプは前記SVT-Vタイプであり、前記変換ブロック位置は、前記残差ブロックの右下角をカバーし、前記水平変換は離散サイン変換(DST)-7に基づき、前記垂直変換は前記DST-7に基づく、
請求項6に記載のビデオ符号化方法。
【請求項9】
前記変換ブロックの前記変換タイプは、前記変換ブロックのための水平変換及び垂直変換を示し、前記SVTタイプは前記SVT-Hタイプであり、前記変換ブロック位置は、前記残差ブロックの左上角をカバーし、前記水平変換は離散サイン変換(DST)-7に基づき、前記垂直変換は離散コサイン変換(DCT)-8に基づく、
請求項6に記載のビデオ符号化方法。
【請求項10】
前記変換ブロックの前記変換タイプは、前記変換ブロックのための水平変換及び垂直変換を示し、前記SVTタイプは前記SVT-Hタイプであり、前記変換ブロック位置は、前記残差ブロックの右下角をカバーし、前記水平変換は離散サイン変換(DST)-7に基づき、前記垂直変換は前記DST-7に基づく、
請求項6に記載のビデオ符号化方法。
【請求項11】
ビデオ復号化装置であって、
1つ以上のプロセッサと、
前記プロセッサへ結合され、前記プロセッサによって実行されるプログラミングを記憶している非一時的なコンピュータ可読記憶媒体と
を有し、
前記プログラミングは、前記プロセッサによって実行されると、当該ビデオ復号化装置に、請求項1乃至5のうちいずれか一項に記載のビデオ復号化方法を実行させる、
ビデオ復号化装置。
【請求項12】
ビデオ符号化装置であって、
1つ以上のプロセッサと、
前記プロセッサへ結合され、前記プロセッサによって実行されるプログラミングを記憶している非一時的なコンピュータ可読記憶媒体と
を有し、
前記プログラミングは、前記プロセッサによって実行されると、当該ビデオ符号化装置に、請求項6乃至10のうちいずれか一項に記載のビデオ符号化方法を実行させる、
ビデオ符号化装置。
【請求項13】
1つ以上のプロセッサによって実行されると、該1つ以上のプロセッサに、請求項1乃至5のうちいずれか一項に記載のビデオ復号化方法を実行させるコンピュータ命令を記憶しているコンピュータ可読記憶媒体。
【請求項14】
1つ以上のプロセッサによって実行されると、該1つ以上のプロセッサに、請求項6乃至10のうちいずれか一項に記載のビデオ符号化方法を実行させるコンピュータ命令を記憶しているコンピュータ可読記憶媒体。
【請求項15】
コンピュータに、請求項1乃至5のうちいずれか一項に記載のビデオ復号化方法を実行させるよう構成されるコンピュータプログラム。
【請求項16】
コンピュータに、請求項6乃至10のうちいずれか一項に記載のビデオ符号化方法を実行させるよう構成されるコンピュータプログラム。
【請求項17】
ビットストリームを記憶するコンピュータ可読記憶媒体であって、
前記ビットストリームは、変換ブロックの変換係数と、複数のシンタックス要素とを含み、
前記複数のシンタックス要素は、
空間的に変化する変換(SVT)が残差ブロックに対して使用されることを示す第1フラグと、
前記残差ブロックのためのSVTタイプを示す第2フラグであり、前記SVTタイプは、SVT-垂直(V)タイプ又はSVT-水平(H)タイプのどちらか一方であり、前記SVT-Vタイプは、前記残差ブロックの変換ブロックの第1の幅が前記残差ブロックの第2の幅の4分の1であること、及び前記変換ブロックの第1の高さが前記残差ブロックの第2の高さと同じであることを示し、前記SVT-Hタイプは、前記第1の幅が前記第2の幅と同じであること、及び前記第1の高さが前記第2の高さの4分の1であることを示す、前記第2フラグと、
前記変換ブロックの変換ブロック位置を示すシンタックス要素であり、前記変換ブロックの変換タイプは、前記変換ブロック位置及び前記第2フラグの値に対応する、前記シンタックス要素と
を含む、
コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ビデオ復号化技術に、具体的に、適応変換タイプを有する空間的に変化する変換を採用するビデオ復号化方法及び関連する装置に関係がある。
【背景技術】
【0002】
H.265のようなビデオコーディングは、予測及び変換のフレームワークに基づく。エンコーダで、画像ブロック(複数のピクセルを含む)は、予測ブロック及び残差ブロックに分解され得、予測情報(例えば、予測モード及び動きベクトル情報)及び残差情報(例えば、変換モード、変換係数及び量子化パラメータ)はビットストリームにコーディングされる。デコーダで、予測情報及び残差情報はパースされる。予測情報に従って、イントラ又はインター予測は、予測サンプルを生成するよう行われる。残差情報に従って、逆量子化及び逆変換は、残差サンプルを生成するよう順次行われる。予測サンプル及び残差サンプルは、再構成されたサンプルを得るよう足し合わされる。
【0003】
空間的に変化する変換(SVT)は、ビデオコーディング効率を改善するために開発された。幅w及び高さh(すなわち、w×h)の矩形残差ブロックについて、残差ブロックよりも小さい変換ブロックは、残差ブロックの一部を変換するために使用され、残差ブロックの残りの部分はコーディングされない。SVTの裏側にある論理的根拠は、残差が残差ブロックにおいて等しく分布していないことがあることである。適応的な位置を有しているより小さい変換ブロックを使用することは、残差ブロックにおける主要な残差を捕捉することができ、よって、残差ブロックにおける全ての残差を変換することよりも良いコーディング効率を達成し得る。
【0004】
SVTがサイズw×hの残差ブロックのために適用される場合に、変換ブロックのサイズ及び位置情報はビデオビットストリームにコーディングされ、よって、デコーダは、変換ブロックを再構成し、それを、残差ブロックに関連する予測ブロックの適所に構成することができる。
【0005】
一例において、SVTブロックの3つのタイプが、
図1に表されるように、残差ブロックのために使用され得る。
1)SVT-I:w_t=w/2、h_t=h/2、このとき、w_t及びh_tは、夫々、変換ブロックの幅及び高さを表し、w及びhは、残差ブロックの幅及び高さを表す。言い換えれば、変換ブロックの幅及び高さは、両方とも、残差ブロックのそれらの半分である。
2)SVT-II:w_t=w/4、h_t=h。
3)SVT-III:w_t=w、h_t=h/4。
【0006】
SVTブロックのタイプ情報は、ビットストリームにコーディングされる。
【0007】
変換ブロックの位置は、残差ブロックの左上角への位置オフセット(x,y)によって表され、このとき、xは、ピクセルの単位での変換ブロックの左上角と残差ブロックのそれとの間の水平距離を示し、yは、ピクセルの単位での変換ブロックの左上角と残差ブロックのそれとの間の垂直距離を示す。変換ブロックを残差ブロック内にあるようにする各位置は、候補位置である。残差ブロックについて、候補位置の数は、SVTのタイプについて(w-w_t+1)×(h-h_t+1)である。より具体的には、16×16の残差ブロックについて、SVT-Iが使用される場合に、81個の候補位置が存在し、SVT-II又はSVT-IIIが使用される場合に、13個の候補位置が存在する。x及びyの値は、ビットストリームにコーディングされる。SVT-Iの複雑さを減らすよう、32個の位置のサブセットが、SVT-Iのための許可された候補位置として、81個の候補位置から選択される。
【0008】
SVTスキームの1つの欠点は、位置情報の重いシグナリングオーバーヘッドである。その上、エンコーダ複雑性は、レート歪み最適化(RDO)で試験される位置の数とともに大いに増大し得る。候補位置の数が残差ブロックのサイズとともに増えるので、オーバーヘッドは、32×32又は64×128のような、より大きい残差ブロックについて、より一層大きくなり得る。
【0009】
SVTスキームのもう1つの欠点は、変換ブロックのサイズが残差ブロックの1/4であることである。変換ブロックは、高い確実性で、残差ブロックにおける主要な残差をカバーするほど十分に大きくない。
【0010】
従って、簡単なSVTが開発されており、
図2に示されるように、SVT-H及びSVT-Vと表されるSVTブロックの2つのタイプが、残差コーディングのために使用される。
1)SVT-V:w_t=w/2及びh_t=t。
2)SVT-H:w_t=w及びh_t=h/2。
【0011】
SVT-Vは、SVT-IIに類似し、SVT-Hは、SVT-IIIに類似する。SVT-II及びSVT-IIIと比較して、SVT-V及びSVT-Hにおける変換ブロックは、残差ブロックの半分に広げられて、残差ブロックにおける更なる残差をカバーすることができる。
【0012】
候補位置は、候補位置ステップサイズ(CPSS)によって決定される。従って、候補位置は、CPSSによって指定された等間隔で離されている。候補位置の数は、5以下に減らされて、最良の変換ブロック位置を決定するためのエンコーダ複雑性に加えて位置情報のオーバーヘッドを軽減する。
【発明の概要】
【0013】
本開示は、復号化品質を改善するよう、適応変換タイプを有する空間的に変化する変換を採用するビデオ復号化方法及び関連する装置を開示する。
【0014】
上記及び他の目的は、独立請求項の主題によって達成される。更なる実施形態は、従属請求項、明細書及び図面から明らかである。
【0015】
第1の態様に従って、本開示は、ビデオ復号化方法に関係がある。方法は、ビデオ復号化装置によって実行される。方法は、残差ブロックのための空間的に変化する変換(SVT)の使用を決定することと、SVTが残差ブロックのために使用される場合に残差ブロックのためのSVTタイプを決定することであり、残差ブロックのためのSVTタイプは、SVT-V又はSVT-Hのどちらか一方である、ことと、残差ブロックの変換ブロックの変換ブロック位置を決定することであり、変換ブロックの変換タイプを決定することであり、変換タイプは、変換ブロックの水平変換及び垂直変換を示し、水平変換及び垂直変換のうちの少なくとも一方はDST-7である、ことと、変換タイプ、変換ブロック位置及び変換ブロックの変換係数に基づいて前記残差ブロックを再構成することとを含む。
【0016】
第1の態様に従う方法の可能な実施形態で、残差ブロックのためのSVTタイプがSVT-Vであり、変換ブロックの変換ブロック位置が残差ブロックの左上角をカバーする位置であるとき、水平変換はDCT-8であり、垂直変換はDST-7である。
【0017】
第1の態様に従う方法の可能な実施形態で、残差ブロックのためのSVTタイプがSVT-Vであり、変換ブロックの変換ブロック位置が残差ブロックの右下角をカバーする位置であるとき、水平変換はDST-7であり、垂直変換はDST-7である。
【0018】
第1の態様に従う方法の可能な実施形態で、残差ブロックのためのSVTタイプがSVT-Hであり、変換ブロックの変換ブロック位置が残差ブロックの左上角をカバーする位置であるとき、水平変換はDST-7であり、垂直変換はDCT-8である。
【0019】
第1の態様に従う方法の可能な実施形態で、残差ブロックのためのSVTタイプがSVT-Hであり、変換ブロックの変換ブロック位置が残差ブロックの右下角をカバーする位置であるとき、水平変換はDST-7であり、垂直変換はDST-7である。
【0020】
第2の態様に従って、本開示は、残差ブロックのための空間的に変化する変換(SVT)の使用を決定するよう構成されるユニットと、SVTが残差ブロックのために使用される場合に残差ブロックのためのSVTタイプを決定するよう構成され、残差ブロックのためのSVTタイプは、SVT-V又はSVT-Hのどちらか一方である、ユニットと、残差ブロックの変換ブロックの変換ブロック位置を決定するよう構成されるユニットと、変換ブロックの変換タイプを決定するよう構成され、変換タイプは、変換ブロックの水平変換及び垂直変換を示し、水平変換及び垂直変換のうちの少なくとも一方はDST-7である、ユニットと、変換タイプ、変換ブロック位置及び変換ブロックの変換係数に基づいて残差ブロックを再構成するよう構成されるユニットとを有するビデオ復号化装置に関係がある。
【0021】
第2の態様に従う装置の可能な実施形態で、残差ブロックのためのSVTタイプがSVT-Vであり、変換ブロックの変換ブロック位置が残差ブロックの左上角をカバーする位置であるとき、水平変換はDCT-8であり、垂直変換はDST-7である。
【0022】
第2の態様に従う装置の可能な実施形態で、残差ブロックのためのSVTタイプがSVT-Vであり、変換ブロックの変換ブロック位置が残差ブロックの右下角をカバーする位置であるとき、水平変換はDST-7であり、垂直変換はDST-7である。
【0023】
第2の態様に従う装置の可能な実施形態で、残差ブロックのためのSVTタイプがSVT-Hであり、変換ブロックの変換ブロック位置が残差ブロックの左上角をカバーする位置であるとき、水平変換はDST-7であり、垂直変換はDCT-8である。
【0024】
第2の態様に従う装置の可能な実施形態で、残差ブロックのためのSVTタイプがSVT-Hであり、変換ブロックの変換ブロック位置が残差ブロックの右下角をカバーする位置であるとき、水平変換はDST-7であり、垂直変換はDST-7である。
【0025】
第3の態様に従って、本開示は、1つ以上のプロセッサと、プロセッサへ結合され、プロセッサによる実行のためのプログラミングを記憶している非一時的なコンピュータ可読記憶媒体とを有し、プログラミングが、プロセッサによって実行される場合に、第1の態様に従う方法を実行するようビデオ復号化装置を構成する、ビデオ復号化装置に関係がある。
【0026】
第4の態様に従って、本開示は、1つ以上のプロセッサによって実行される場合に、1つ以上のプロセッサに、第1の態様に従う方法のステップを実行させるコンピュータ命令を記憶している不揮発性のコンピュータ可読記憶媒体に関係がある。
【0027】
本開示は、SVTタイプ及び位置情報に基づいて変換ブロックの複数の変換タイプを適応的に使用し、従って、復号化品質及び復号化効率を改善することができ、更には、変換アルゴリズムの数は、いくつかの実施形態で制限され、従って、復号化装置の実現を簡単にすることができる、ことが分かる。
【図面の簡単な説明】
【0028】
【
図1】SVT-I、SVT-II及びSVT-IIIの説明図である。
【
図3】SVT-V及びSVT-Hブロックの候補位置の説明図である。
【
図4】3つの候補位置を有するSVT-V及びSVT-Hの説明図である。
【
図5】本開示の実施形態に従うビデオ復号化方法のフローチャートである。
【
図6】本開示の実施形態に従うビデオ復号化装置の略構造図である。
【発明を実施するための形態】
【0029】
本開示は、改善されたSVTスキームを紹介する。改善は、SVTブロックの水平変換のタイプ及び垂直変換のタイプがSVTタイプ及びSVTブロック位置に基づいて決定されることである。水平変換は垂直変換とは異なり得る。
【0030】
第1の実施形態は、残差ブロックを復号するプロセスについて記載する。ビデオデータの少なくとも1つのピクチャを含むビットストリームが復号される。ピクチャは、複数の矩形画像領域に分割され、各領域は、コーディング・ツリー・ユニット(CTU)に対応する。CTUは、ビットストリームに含まれるブロックパーティション情報に従って、HEVCにおけるコーディングユニットのような複数のブロックにパーティショニングされる。ブロックのコーディング情報は、ビットストリームからパースされ、ブロックのピクセルは、コーディング情報に基づいて再構成される。
【0031】
一実施形態で、SVTは、インター予測されたブロックのために使用されることに制限される。他の実施形態では、SVTは、イントラ予測されたブロックのためにも使用されてよい。
【0032】
一例において、SVTは、特定のインター予測方法(例えば、平行移動モデルに基づく動き補償)を使用するブロックについて許可されるが、他の何らかのインター予測方法(例えば、アフィンモデルに基づく動き補償)を使用するブロックについては許可されないことがある。他の例では、SVTは、1/4画素動きベクトル差精度を有するマージモード又はAMVP(advanced motion vector prediction)モードを使用する予測ブロックについて許可されるが、1画素又は4画素動きベクトル差精度を有するアフィンマージモード、アフィンインターモード又はAMVPモードを使用する予測ブロックについては許可されないことがある。他の例では、SVTは、2よりも小さいマージインデックスを有するマージモードを使用する予測ブロックについて許可されるが、2よりも小さくないマージインデックスを有するマージモードを使用する予測ブロックについては許可されないことがある。マージモード及びAMVPモードは、H.265/HEVC標準において参照され得る。アフィンマージモード及びアフィンインターモードは、JVET(Joint Video Exploration Team)からのJEM(Joint Exploration Model)コーデックにおいて参照され得る。
【0033】
一例において、ブロックは、コーディングユニットを指してよく、このとき、コーディングユニットは、1つの予測ブロック及び1つの残差ブロックを含んでよい。予測ブロックは、コーディングユニットの全ての予測サンプルを含んでよく、残差ブロックは、コーディングユニットの全ての残差サンプルを含んでよく、予測ブロックは、残差ブロックと同じサイズを有する。他の例では、ブロックは、コーディングユニットを指してよく、コーディングユニットは、2つの予測ブロック及び1つの残差ブロックを含んでよく、各予測ブロックは、コーディングユニットの予測サンプルの一部を含んでよく、残差ブロックは、コーディングユニットの全ての残差サンプルを含んでよい。他の例では、ブロックは、コーディングユニットを指してよく、コーディングユニットは、2つの予測ブロック及び4つの残差ブロックを含んでよい。HEVCにおける残差四分木(RQT)のような、コーディングユニットにおける残差ブロックのパーティションパターンは、ビットストリームにおいて伝えられてよい。
【0034】
ブロックは、画像サンプル(又はピクセル)のY成分(ルーマ)しか含まなくてもよく、あるいは、それは、画像サンプルのY、U(クロミナンス)及びV(クロミナンス)成分を含んでよい。
【0035】
サイズw×hの残差ブロックROは、次のステップによって再構成され得る。
【0036】
ステップ1.残差ブロックROの変換ブロックサイズを決定する。
【0037】
ステップ1.1.シンタックス要素に従ってSVTの使用を決定する。SVTを使用することを許可されている残差ブロックについて、残差ブロックがY成分の非ゼロ変換係数を有している(あるいは、それが、任意の色成分の非ゼロ変換係数を有している)場合に、フラグ(すなわち、svt_flag)がビットストリームからパースされる。フラグは、残差ブロックが残差ブロックと同じサイズの変換ブロックを用いてコーディングされているか(例えば、svt_flag=0)、あるいは、残差ブロックが残差ブロックのサイズよりも小さいサイズの変換ブロックによりコーディングされているか(例えば、svt_flag=1)どうかを示す。ブロックが色成分の非ゼロ変換係数を有しているかどうかは、HEVCで使用されるような、色成分のコーディングされたブロックフラグ(cbf)によって示されてよい。ブロックが任意の色成分の非ゼロ変換係数を有しているかどうかは、HEVCで使用されるような、ルートコーディングされたブロックフラグ(root cbf)によって示されてよい。
【0038】
一例において、ブロックは、次の条件が満足される場合に、SVTを使用することを許可される。
1)ブロックは、インター予測を用いて予測される。
2)ブロック幅又はブロック高さのどちらか一方は、所定の範囲[a1,a2]、例えば、a1=16及びa2=64、又はa1=8及びa2=64、又はa1=16及びa2=128、に入る。a1及びa2の値は、固定値であることができる。値はまた、シーケンス・パラメータ・セット(SPS)又はスライスヘッダからも導出され得る。
【0039】
他の例では、ブロックは、次の条件が満足される場合に、SVTを使用することを許可される。
1)ブロックは、閾値(例えば、1又は2又は3)よりも小さいマージインデックスを有するマージモードを用いて、あるいは、1/4画素動きベクトル差精度を有するAMVPモードを用いて予測される。
2)ブロックの1つの次元は、所定の範囲[a1,a2]に入り、ブロックの他の次元は、閾値a3よりも大きくなく、例えば、a1=8、a2=32、及びa3=32である。パラメータa1は、最小変換サイズの2倍としてセットされてよく、a2及びa3は、両方とも、最大変換サイズとしてセットされてよい。a1、a2、及びa3の値は、固定値であることができる。値はまた、シーケンス・パラメータ・セット(SPS)又はスライスヘッダからも導出され得る。
【0040】
ブロックがSVTを使用しない場合に、変換ブロックサイズはw×hにセットされる。そうでなければ、ステップ1.2が、変換サイズを決定するために適用される。
【0041】
ステップ1.2.シンタックス要素に従ってSVTのタイプを決定し、SVTタイプに従って変換ブロックサイズを導出する。残差ブロックのための許可されたSVTタイプは、残差ブロックの幅及び高さに基づいて決定される。SVT-Vは、wが範囲[a1,a2]内にあり、hがa3よりも大きくない場合に許可され、SVT-Hは、hが範囲[a1,a2]内にあり、wがa3よりも大きくない場合に許可される。SVTは、Y成分のためにのみ使用されてよく、あるいは、それは、3つ全ての成分、すなわち、Y成分、U成分及びV成分のために使用されてよい。SVTがY成分のためにのみ使用される場合に、Y成分残差はSVTによって変換され、U及びV成分は残差ブロックのサイズに従って変換される。
【0042】
SVT-V及びSVT-Hの両方が許可される場合に、1つのフラグ(すなわち、svt_type_flag)がビットストリームからパースされ、それは、残差ブロックのためにSVT-Vが使用されるか(例えば、svt_type_flag=0)、あるいは、SVT-Hが使用されるか(例えば、svt_type_flag=1)どうかを示し、変換ブロックサイズは、信号により伝えられたSVTタイプに従ってセットされる(すなわち、SVT-Vについて、W_t=w/2及びh_t=h、かつ、SVT-Hについて、w_t=w及びh_t=h/2)。SVT-Vしか許可されないか、あるいは、SVT-Hしか許可されない場合に、svt_type_flagはビットストリームからパースされず、変換ブロックサイズは、許可されたSVTタイプに従ってセットされる。
【0043】
ステップ2.シンタックス要素に従って変換ブロック位置を決定し、SVTのタイプ及び変換ブロック位置情報に基づいて変換ブロックの変換タイプを決定する。
【0044】
ステップ2.1:シンタックス要素に従って変換ブロック位置を決定する。
【0045】
位置インデックスPは、ビットストリームからパースされ、残差ブロック左上角に対する変換ブロックの左上角の位置オフセットZは、Z=s×Pとして決定され、このとき、sは、候補位置ステップサイズ(CPSS)である。Pの値は、SVT-Vが使用される場合に、0,1,・・・,(w-w_t)/sの中の1つであり、あるいは、Pの値は、SVT-Hが使用される場合に、0,1,・・・,(h-h_t)/sの中の1つである。より具体的には、(0,0)が残差ブロックの左上角の座標を表すとすれば、変換ブロックの左上角の座標は、SVT-Vについて(Z,0)又はSVT-Hについて(0,Z)である。
【0046】
一例において、CPSSは、SVT-Vについてs=w/M1、又はSVT-Hについてs=h/M2と計算され、このとき、w及びhは、夫々、残差ブロックの幅及び高さであり、M1及びM2は、2から8の範囲にある所定の整数である。より多くの候補位置は、より大きいM1又はM2の値とともに許可される。この例で、M1及びM2は両方とも8としてセットされる。従って、Pの値は0から4の中の1つである。候補位置は、
図3で表される。
【0047】
他の例では、CPSSは、SVT-Vについてs=max(w/M1,Th1)、又はSVT-Hについてs=max(h/M2,Th2)と計算され、このとき、Th1及びTh2は、最小ステップサイズを指定する予め定義された整数である。Th1及びTh2は、2以上の整数である。この例では、Th1及びTh2は4としてセットされ、M1及びM2は8としてセットされる。この例で、異なるブロックサイズは、異なる数の候補位置を有してよい。例えば、w=8の場合に、2つの候補位置(
図3(a)及び
図3(e)によって表される)が、選択するために利用可能であり、w=16の場合に、3つの候補位置(
図3(a)、
図3(c)、及び
図3(e)によって表される)が、選択するために利用可能であり、w>16の場合に、5つの位置が、選択するために利用可能である。
【0048】
他の例では、CPSSは、SVT-Vについてs=w/M1、又はSVT-Hについてs=h/M2と計算され、このとき、M1及びM2は4としてセットされる。従って、3つの候補位置が許可される。
【0049】
他の例では、CPSSは、SVT-Vについてs=w/M1、又はSVT-Hについてs=h/M2と計算され、このとき、M1及びM2は2としてセットされる。従って、2つの候補位置が許可される。
【0050】
他の例では、CPSSは、SVT-Vについてs=max(w/M1,Th1)、又はSVT-Hについてs=max(h/M2,Th2)と計算され、このとき、Th1及びTh2は2としてセットされ、M1は、w≧hの場合に8としてセットされ、あるいは、w<hの場合に4としてセットされ、M2は、h≧wの場合に8としてセットされ、あるいは、h<wの場合に4としてセットされる。この場合に、SVT-H又はSVT-Vのための候補位置の数は、残差ブロックのアスペクト比に更に依存し得る。
【0051】
他の例では、CPSSは、SVT-Vについてs=max(w/M1,Th1)、又はSVT-Hについてs=max(h/M2,Th2)と計算され、このとき、M1、M2、Th1及びTh2の値は、ビットストリーム内のハイレベル・シンタックス構造(例えば、シーケンス・パラメータ・セット)から導出される。M1及びM2は、シンタックス要素からパースされた同じ値を共有してよく、Th1及びTh2は、他のシンタックス要素からパースされた同じ値を共有してよい。
【0052】
位置インデックスPは、truncated unary符号を用いて1つ以上のビンに2値化されてよい。例えば、P値が0から4の範囲内にある場合に、P値0、4、2、3及び1は、0、01、001、0001及び0000と夫々2値化され、P値が0から1の範囲内にある場合に、P値0及び1は、0及び1と夫々2値化される。
【0053】
位置インデックスPは、1つの最もありそうな位置及びいくつかの残りの位置を用いて1つ以上のビンに2値化されてよい。左及び上隣が利用可能である場合に、最もありそうな位置は、残差ブロックの右下角をカバーする位置としてセットされてよい。一例において、P値が0から4の範囲内にあり、位置4が最もありそうな位置としてセットされる場合に、P値4、0、1、2及び3は、1、000、001、010及び011と夫々2値化され、P値が0から2の範囲内にあり、位置2が最もありそうな位置としてセットされる場合に、P値2、0及び1は、1、01及び00と夫々2値化される。
【0054】
ステップ2.2:SVTのタイプ及び変換ブロック位置情報に基づいて変換ブロックの変換タイプを決定する。変換タイプは、2次元可分変換の水平変換及び垂直変換を含む。
【0055】
図4に示されるように、例えば、3つの候補位置が許可される場合を考える。位置0は左上角をカバーし、位置2は右下角をカバーする。位置1は、残差ブロックの真ん中にある。
図4に示されるように、SVT-V及びSVT-Hの両方について3つの位置が存在する。
【0056】
他の例では、2つの候補位置が許可される。位置0は左上角をカバーし、位置1は右上角をカバーする(
図4の位置2と同じ)。すなわち、SVT-V及びSVT-Hの両方について2つの位置が存在する。
【0057】
2次元変換は、1次元の水平変換及び垂直変換に分離可能であり得る。残差を変換係数に変える前方2D変換は、JEMコーデックで実施されるように、最初に、ブロックTAを生成するよう残差ブロックに水平変換を適用し、次いで、変換係数ブロックを生成するようブロックTAに垂直変換を適用することによって実現され得る。従って、変換係数を残差に戻す逆2D変換は、JEMコーデックで実施されるように、最初に、ブロックTBを生成するよう変換係数ブロックに逆垂直変換を適用し、次いで、残差ブロックを生成するようブロックTBに逆水平変換を適用することによって実現され得る。
【0058】
一例において、表Iにリストアップされるように、SVT-V位置0のための水平及び垂直変換は、DCT-8及びDST-7であり、SVT-V位置1のための水平及び垂直変換は、DST-1及びDST-7であり、SVT-V位置2のための水平及び垂直変換は、DST-7及びDST-7であり、SVT-H位置0のための水平及び垂直変換は、DST-7及びDCT-8であり、SVT-H位置1のための水平及び垂直変換は、DST-7及びDST-1であり、SVT-H位置2のための水平及び垂直変換は、DST-7及びDST7である。この例で、SVT-Vのための垂直変換及びSVT-Hのための水平変換は、DST-7としてセットされ、他の変換は、SVT位置に基づく。
【表1】
【0059】
他の例では、異なるSVTタイプ及び位置についての水平変換及び垂直変換は、表IIにリストアップされる。この例で、SVT-Vのための垂直変換及びSVT-Hのための水平変換は、DCT-2としてセットされ、他の変換は、SVT位置に基づく。
【表2】
【0060】
他の例では、異なるSVTタイプ及び位置についての水平変換及び垂直変換は、表IIIにリストアップされる。この例で、水平変換及び垂直変換は、SVT位置によってのみ決定される。
【表3】
【0061】
他の例では、異なるSVTタイプ及び位置についての水平変換及び垂直変換は、表IVにリストアップされる。
【表4】
【0062】
他の例では、異なるSVTタイプ及び位置についての水平変換及び垂直変換は、表Vにリストアップされる。
【表5】
【0063】
他の例では、異なるSVTタイプ及び位置についての水平変換及び垂直変換は、表VIにリストアップされる。
【表6】
【0064】
位置依存の複数の変換は、ルーマ変換ブロックにのみ適用されてよく、対応するクロマ変換ブロックは、逆変換プロセスにおいて逆DCT-2を常に使用する。
【0065】
ステップ3.変換ブロックサイズに基づいて変換ブロックの変換係数をパースする。
【0066】
これは、HEVC又はH.264/AVCにおける変換係数パージングのような、ビデオ復号化内の一般的に使用されているプロセスである。変換係数は、ランレングスコーディングを用いてコーディングされるか、あるいは、変換係数グループ(CG)の組としてより洗練されてコーディングされてよい。
【0067】
ステップ3は、ステップ2の前に行われてもよい。
【0068】
ステップ4.変換係数及び変換ブロック位置及び逆変換のタイプに基づいて残差ブロックROを再構成する。
【0069】
サイズw_t×h_tの逆量子化及び逆変換が、残差サンプルを回復するよう変換係数に適用される。残差サンプルのサイズは、w_t×h_tであり、変換ブロックサイズと同じである。逆変換は2次元可分変換である。逆量子化された変換係数ブロックは、最初に、ブロックTCを生成するよう逆垂直変換によって変換され、次いで、ブロックTCは、逆水平変換によって変換され、ここで、逆水平変換及び逆垂直変換は、変換ブロック位置に基づいて、又は変換ブロック位置及び変換ブロックのSVTタイプの両方に基づいて、ステップ2.2で決定されている。
【0070】
残差サンプルは変換ブロック位置に従って残差ブロックR
O内の対応する領域に割り当てられ、残差ブロック内の残りのサンプルは、ゼロにセットされる。例えば、SVT-Vが使用され、候補位置の数が5であり、位置インデックスが4である場合に、再構成された残差サンプルは、
図3(e)の領域Aに割り当てられ、領域Aの左側のサイズ(w/2)×hの領域はゼロ残差を有する。
【0071】
ステップ1からステップ4を行った後、再構成された残差ブロックは、コーディングユニットにおける再構成されたサンプルを生成するよう予測ブロックにより構成されてよい。HEVCにおけるデブロッキングフィルタ及びサンプル適応オフセット(SAO)処理のような、フィルタリングプロセスが、再構成されたサンプルに対して後で適用されてもよい。
【0072】
既存の解決法とは違って、本開示は、SVTタイプ及び位置情報に基づいて変換ブロックの複数の変換タイプを適応的に使用する。
【0073】
図5は、適応変換タイプを有する空間的に変化する変換を採用するビデオ復号化の例示的な方法のフローチャートである。方法は、デコーダでビットストリームを受信すると開始されてよい。方法は、予測ブロック及び変換された残差ブロックを決定するためにビットストリームを用いる。方法はまた、残差ブロックを決定するために用いられる変換ブロックを決定してもよい。残差ブロック及び予測ブロックは、次いで、画像ブロックを再構成するために用いられる。方法は、デコーダの視点から記載されるが、同様の方法は、SVTを用いることによってビデオを符号化するために(例えば、逆に)用いられてよいことが留意されるべきである。ここで、方法は、以下を含む。
【0074】
ステップ501,残差ブロックのためのSVTの使用を決定する。決定の具体的なプロセスは、ステップ1.1と同様である。
【0075】
ステップ502,SVTが残差ブロックのために使用される場合に残差ブロックのためのSVTタイプを決定し、このとき、残差ブロックのためのSVTタイプは、SVT-Vタイプ又はSVT-Hタイプのどちらか一方であり、SVT-Vタイプは、残差ブロックの変換ブロックの幅が残差ブロックの幅の半分のサイズであり、変換ブロックの高さが残差ブロックの高さの同じサイズであることを示し(
図4に示される)、SVT-Hタイプは、変換ブロックの幅が残差ブロックの幅の同じサイズであり、変換ブロックの高さが残差ブロックの高さの半分のサイズであることを示す(
図4に示される)。決定の具体的なプロセスは、ステップ1.2と同様である。
【0076】
ステップ503,SVTタイプに従って変換ブロックの変換ブロックサイズを導出する。導出の具体的なプロセスは、ステップ1.2と同様である。
【0077】
ステップ504,変換ブロックの変換ブロック位置を決定する。決定の具体的なプロセスは、ステップ2.1と同様であり得る。
【0078】
代替的に、SVTタイプの候補位置が2である場合に、1ビットフラグが、残差ブロックの変換ブロックの変換ブロック位置を示すために用いられてよい。例えば、
図4の位置0及び2のみがSVT-Vのために用いられる場合に、1ビットフラグは、変換ブロック位置が位置0又は位置2であるかどうかを示すのに十分である。
図4の位置0及び位置2のみがSVT-Hのために用いられる場合に、1ビットフラグは、変換ブロック位置が位置0又は位置2であるかどうかを示すのに十分である。
【0079】
ステップ505,SVTタイプ及び変換ブロックの変換ブロック位置に従って変換ブロックの変換タイプを決定し、このとき、変換タイプは、変換ブロックの水平変換及び垂直変換を示し、水平変換及び垂直変換のうちの少なくとも一方はDST-7である。決定の具体的なプロセスは、ステップ2.2と同様であり得る。
【0080】
具体的な変換タイプは、上述された表I、IV及びVのうちのいずれか1つのいずれかの変換タイプであることができ、あるいは、上述された表II、III及びVIのうちのいずれか1つのDST-7を含むいずれかの変換タイプであってよい。
【0081】
例えば、残差ブロックのためのSVTタイプがSVT-Vタイプであり、変換ブロックの変換ブロック位置が残差ブロックの左上角(すなわち、
図4の位置0)をカバーする位置であるとき、水平変換はDCT-8であり、垂直変換はDST-7である。
【0082】
例えば、残差ブロックのためのSVTタイプがSVT-Vタイプであり、変換ブロックの変換ブロック位置が残差ブロックの右下角(すなわち、
図4の位置2)をカバーする位置であるとき、水平変換はDST-7であり、垂直変換はDST-7である。
【0083】
例えば、残差ブロックのためのSVTタイプがSVT-Hタイプであり、変換ブロックの変換ブロック位置が残差ブロックの左上角(すなわち、
図4の位置0)をカバーする位置であるとき、水平変換はDST-7であり、垂直変換はDCT-8である。
【0084】
例えば、残差ブロックのためのSVTタイプがSVT-Hタイプであり、変換ブロックの変換ブロック位置が残差ブロックの右下角(すなわち、
図4の位置2)をカバーする位置であるとき、水平変換はDST-7であり、垂直変換はDST-7である。
【0085】
ステップ506,変換ブロックサイズに従って変換ブロックの変換係数をパースする。パージングの具体的なプロセスは、ステップ3と同様であり得る。
【0086】
ステップ507,変換タイプ、変換ブロック位置及び変換ブロックの変換係数に基づいて残差ブロックを再構成する。再構成の具体的なプロセスは、ステップ4と同様であり得る。
【0087】
本開示は、SVTタイプ及び位置情報に基づいて変換ブロックの複数の変換タイプを適応的に使用し、従って、復号化品質及び復号化効率を改善することができ、更には、変換アルゴリズムの数は、いくつかの実施形態で制限され、従って、復号化装置の実現を簡単にすることができる、ことが分かる。
【0088】
本開示は、本願の技術を実施するよう構成されるビデオ復号化装置であって:
残差ブロックのための空間的に変化する変換(SVT)の使用を決定するよう構成されるユニット。決定の具体的なプロセスは、ステップ1.1と同様である。
SVTが残差ブロックのために使用される場合に残差ブロックのためのSVTタイプを決定するよう構成されるユニットであって、残差ブロックのためのSVTタイプは、SVT-Vタイプ又はSVT-Hタイプのどちらか一方であり、SVT-Vタイプは、残差ブロックの変換ブロックの幅が残差ブロックの幅の半分のサイズであり、変換ブロックの高さが残差ブロックの高さの同じサイズであることを示し、SVT-Hタイプは、変換ブロックの幅が残差ブロックの幅の同じサイズであり、変換ブロックの高さが残差ブロックの高さの半分のサイズであることを示す、ユニット。決定の具体的なプロセスは、ステップ1.2と同様である。
SVTタイプに従って変換ブロックの変換ブロックサイズを導出するよう構成されるユニット。導出の具体的なプロセスは、ステップ1.2と同様である。
変換ブロックの変換ブロック位置を決定するよう構成されるユニット。決定の具体的なプロセスは、ステップ2.1と同様であり得る。代替的に、SVTタイプの候補位置が2である場合に、1ビットフラグが、残差ブロックの変換ブロックの変換ブロック位置を示すために用いられてよい。例えば、
図4の位置0及び2のみがSVT-Vのために用いられる場合に、1ビットフラグは、変換ブロック位置が位置0又は位置2であるかどうかを示すのに十分である。
図4の位置0及び位置2のみがSVT-Hのために用いられる場合に、1ビットフラグは、変換ブロック位置が位置0又は位置2であるかどうかを示すのに十分である。
SVTタイプ及び変換ブロックの変換ブロック位置に従って変換ブロックの変換タイプを決定するよう構成されるユニットであって、変換タイプは、変換ブロックの水平変換及び垂直変換を示し、水平変換及び垂直変換のうちの少なくとも一方はDST-7である。決定の具体的なプロセスは、ステップ2.2と同様であり得る。
変換ブロックサイズに従って変換ブロックの変換係数をパースするよう構成されるユニット。パージングの具体的なプロセスは、ステップ3と同様であり得る。
変換タイプ、変換ブロック位置及び変換ブロックの変換係数に基づいて残差ブロックを再構成するよう構成されるユニット。再構成の具体的なプロセスは、ステップ4と同様であり得る。
を含むビデオ復号化装置を開示する。
【0089】
具体的な変換タイプは、上述された表I、IV及びVのうちのいずれか1つのいずれかの変換タイプであることができ、あるいは、上述された表II、III及びVIのうちのいずれか1つのDST-7を含むいずれかの変換タイプであってよい。
【0090】
例えば、残差ブロックのためのSVTタイプがSVT-Vタイプであり、変換ブロックの変換ブロック位置が残差ブロックの左上角(すなわち、
図4の位置0)をカバーする位置であるとき、水平変換はDCT-8であり、垂直変換はDST-7である。
【0091】
例えば、残差ブロックのためのSVTタイプがSVT-Vタイプであり、変換ブロックの変換ブロック位置が残差ブロックの右下角(すなわち、
図4の位置2)をカバーする位置であるとき、水平変換はDST-7であり、垂直変換はDST-7である。
【0092】
例えば、残差ブロックのためのSVTタイプがSVT-Hタイプであり、変換ブロックの変換ブロック位置が残差ブロックの左上角(すなわち、
図4の位置0)をカバーする位置であるとき、水平変換はDST-7であり、垂直変換はDCT-8である。
【0093】
例えば、残差ブロックのためのSVTタイプがSVT-Hタイプであり、変換ブロックの変換ブロック位置が残差ブロックの右下角(すなわち、
図4の位置2)をカバーする位置であるとき、水平変換はDST-7であり、垂直変換はDST-7である。
【0094】
本開示は、本願の技術を実施するよう構成される他のビデオ復号化装置であって、1つ以上のプロセッサと、プロセッサへ結合され、プロセッサによる実行のためのプログラミングを記憶している不揮発性のコンピュータ可読記憶媒体とを有し、プログラミングが、プロセッサによって実行される場合に、上記の方法のいずれかを処理するようビデオ復号化装置を構成する、ビデオ復号化装置を開示する。
【0095】
本開示は、1つ以上のプロセッサによって実行される場合に、1つ以上のプロセッサに、上記の方法のいずれかのステップを実行させるコンピュータ命令を記憶している不揮発性のコンピュータ可読記憶媒体を開示する。
【0096】
図6は、本開示の実施形態に従うコーディングデバイス900の概略図である。コーディングデバイス900は、ここで記載されるような開示実施形態を実施するのに適している。コーディングデバイス900は、データを受けるための入口ポート910及び受信器ユニット(Rx)920と、データを処理するプロセッサ、ロジックユニット、又は中央演算処理装置(CPU)930と、データを送信するための送信器ユニット(Tx)940及び出口ポート950と、データを記憶するためのメモリ960とを有する。コーディングデバイス900はまた、光又は電気信号の出入りのために入口ポート910、受信器ユニット920、送信器ユニット940、及び出口ポート950へ結合された光-電気(OE)コンポーネント及び電気-光(EO)コンポーネントを有してもよい。
【0097】
プロセッサ930は、ハードウェア及びソフトウェアによって実施される。プロセッサ930は、1つ以上のCPUチップ、コア(例えば、マルチコアプロセッサとして)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、特定用途向け集積回路(ASIC)、及びデジタル信号プロセッサ(DSP)として実施されてよい。プロセッサ930は、入口ポート910、受信器ユニット920、送信器ユニット940、出口ポート950、及びメモリ960と通信する。プロセッサ930は、コーディングモジュール970を有する。コーディングモジュール970は、上述された開示実施形態を実施する。例えば、コーディングモジュール970は、様々なグラフィクス処理及び計算を実施、処理、パース、準備又は提供する。従って、コーディングモジュール970の包含は、デバイス900の機能に対する実質的な改善をもたらし、異なる状態へのデバイス900の転換をもたらす。代替的に、コーディングモジュール970は、メモリ960に記憶されておりプロセッサ930によって実行される命令として実施される。
【0098】
メモリ960は、1つ以上のディスク、テープドライブ、及びソリッドステートドライブを有し、プログラムが実行のために選択される場合にそのようなプログラムを記憶するために、かつ、プログラム実行中に読み出される命令及びデータを記憶するために、オーバーフローデータ記憶デバイスとして使用されてよい。メモリ960は、揮発性及び/又は不揮発性であってよく、リード・オンリー・メモリ(ROM)、ランダム・アクセス・メモリ(RAM)、三値連想メモリ(TCAM)、及び/又は静的ランダム・アクセス・メモリ(SRAM)であってよい。
【0099】
以下の参考文献は、それらの全文があたかも再現されるかのように参照により本願に援用される。
【0100】
いくつかの実施形態が本開示で提供されてきたが、開示されているシステム及び方法は、本開示の精神又は範囲から逸脱せずに、多くの他の具体的な形態で具現化され得る、と理解されるべきである。本例は、限定としてではなく実例として解釈されるべきであり、ここで与えられている詳細に制限する意図はない。例えば、様々な要素又はコンポーネントは、他のシステムでは結合又は一体化されてよく、あるいは、特定の特徴は、省略されても、又は実施されなくてもよい。
【0101】
その上、様々な実施形態で個別的又は別々に記載及び例示されている技術、システム、サブシステム、及び方法は、本開示の範囲から逸脱せずに、他のシステム、モジュール、技術、又は方法と結合又は一体化されてよい。互いと結合若しくは直接結合されるか又は通信するものとして図示又は議論されている他のアイテムは、電気的若しくは機械的であろうと、又は別な方法であろうと、何らかのインターフェース、デバイス、又は中間コンポーネントを通じて間接的に結合され又は通信してよい。変更、置換、及び修正の他の例は、当業者によって確かめられ、ここで開示されている精神及び範囲から逸脱せずに行われ得る。
【0102】
本願は、2018年5月31日付けで出願された米国特許仮出願第62/678738号の優先権を主張する。なお、先の米国出願は、その全文を参照により援用される。
【外国語明細書】