(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-06-23
(54)【発明の名称】8ビットおよび10ビットのコアが使用される線グラフ変換(LGT)
(51)【国際特許分類】
H04N 19/12 20140101AFI20220616BHJP
G06T 9/40 20060101ALI20220616BHJP
【FI】
H04N19/12
G06T9/40
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021562152
(86)(22)【出願日】2021-02-03
(85)【翻訳文提出日】2021-10-19
(86)【国際出願番号】 US2021016347
(87)【国際公開番号】W WO2021162908
(87)【国際公開日】2021-08-19
(32)【優先日】2020-02-12
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2020-10-22
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100150197
【氏名又は名称】松尾 直樹
(72)【発明者】
【氏名】マドゥー・ペリンガーサリー・クリシュナン
(72)【発明者】
【氏名】シン・ジャオ
(72)【発明者】
【氏名】シャン・リュウ
【テーマコード(参考)】
5B057
5C159
【Fターム(参考)】
5B057CG07
5B057DA17
5C159TA37
5C159TB08
(57)【要約】
ビデオデータをコーディングするための方法、コンピュータプログラム、およびコンピュータシステムが提供されている。ビデオデータを受信する。ビデオデータに関連付けられた変換に対応する1つ以上の変換コアを識別する。1つ以上の変換コアには、線グラフ変換(LGT)および離散サイン変換(DST)のうちの1つ以上が含まれる。識別された変換コアに基づいて、ビデオデータを復号する。変換コアは、8ビット変換コアおよび10ビット変換コアのうちの1つ以上に対応する。変換は、2ポイント変換、4ポイント変換、8ポイント変換、および16ポイント変換のうちの1つ以上に対応する。
【特許請求の範囲】
【請求項1】
プロセッサが実行することができる、ビデオデータをコーディングするための方法であって、
ビデオデータを受信するステップと、
前記ビデオデータに関連付けられた1つ以上の変換コアを識別するステップであって、前記1つ以上の変換コアには、線グラフ変換(LGT)および離散サイン変換(DST)のうちの1つ以上が含まれるステップと、
前記識別された1つ以上の変換コアに基づいて、前記ビデオデータを復号するステップと、
を含むことを特徴とする方法。
【請求項2】
前記変換コアは、8ビット変換コアおよび10ビット変換コアのうちの1つ以上に対応する、
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記1つ以上の変換コアは、2ポイント変換、4ポイント変換、8ポイント変換、16ポイント変換、32ポイント変換、および64ポイント変換のうちの1つ以上に対応する、
ことを特徴とする請求項2に記載の方法。
【請求項4】
前記8ビット変換コアに対応する前記4ポイント変換は、下記の行列:
{a, b, c, d,
b, d, a, -c,
c, a, -d, b,
d, -c, b, -a}
を含む線グラフ変換であり、ここで、{a、b、c、d}は、{25、71、106、126}に対応する、
ことを特徴とする請求項3に記載の方法。
【請求項5】
前記8ビット変換コアに対応する8ポイント変換は、下記の1つ以上の行列:
{16, 40, 62, 82, 99, 112, 122, 126,
48, 104, 126, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20};
{15, 40, 62, 82, 99, 112, 122, 126,
47, 104, 127, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20};
{15, 40, 62, 82, 99, 112, 122, 126,
48, 103, 127, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20}; および
{15, 40, 62, 82, 99, 112, 122, 126,
48, 104, 127, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20}
を含む線グラフ変換である、
ことを特徴とする請求項3に記載の方法。
【請求項6】
前記8ビット変換コアに対応する16ポイント変換は、下記の行列:
{a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p,
c, f, i, l, o, o, l, i, f, c, 0, -c, -f, -i, -l, -o,
e, j, o, m, h, c, -b, -g, -l, -p, -k, -f, -a, d, i, n,
g, n, l, e, -b, -i, -p, -j, -c, d, k, o, h, a, -f, -m,
i, o, f, -c, -l, -l, -c, f, o, i, 0, -i, -o, -f, c, l,
k, k, 0, -k, -k, 0, k, k, 0, -k, -k, 0, k, k, 0, -k,
m, g, -f, -n, -a, l, h, -e, -o, -b, k, i, -d, -p, -c, j,
o, c, -l, -f, i, i, -f, -l, c, o, 0, -o, -c, l, f, -i,
p, -a, -o, b, n, -c, -m, d, l, -e, -k, f, j, -g, -i, h,
n, -e, -i, j, d, -o, a, m, -f, -h, k, c, -p, b, l, -g,
l, -i, -c, o, -f, -f, o, -c, -i, l, 0, -l, i, c, -o, f,
j, -m, c, g, -p, f, d, -n, i, a, -k, l, -b, -h, o, -e,
h, -p, i, -a, -g, o, -j, b, f, -n, k, -c, -e, m, -l, d,
f, -l, o, -i, c, c, -i, o, -l, f, 0, -f, l, -o, i, -c,
d, -h, l, -p, m, -i, e, -a, -c, g, -k, o, -n, j, -f, b,
b, -d, f, -h, j, -l, n, -p, o, -m, k, -i, g, -e, c, -a,}
を含む線グラフ変換であり、ここで、{a、b、c、d、e、f、g、h、i、j、k、l、m、n、o、p}には、
{12, 24, 36, 47, 57, 69, 78, 87, 94, 103, 109, 115, 118, 123, 125, 126},
{11, 22, 36, 47, 56, 69, 78, 89, 94, 104, 109, 115, 116, 125, 125, 125},および
{12, 22, 34, 47, 58, 68, 79, 89, 95, 102, 109, 114, 117, 123, 126, 126}
のうちの1つ以上が含まれる、
ことを特徴とする請求項3に記載の方法。
【請求項7】
前記10ビット変換コアに対応する4ポイント変換は、下記の行列:
{a, b, c, d,
b, d, a, -c,
c, a, -d, b,
d, -c, b, -a}
を含む線グラフ変換であり、ここで、{a、b、c、d}には、
{198, 570, 849, 1006},
{198, 570, 850, 1004},
{198, 570, 850, 1005},
{198, 570, 850, 1006},
{198, 570, 851, 1004},
{198, 571, 850, 1005},
{198, 571, 851, 1004},
{198, 571, 851, 1005},
{198, 571, 852, 1002},
{198, 571, 852, 1003},
{198, 571, 852, 1004},
{198, 571, 853, 1002},
{199, 569, 849, 1006},
{199, 569, 850, 1005},
{199, 569, 850, 1006},
{199, 569, 851, 1004},
{199, 569, 851, 1005},
{199, 569, 852, 1004},
{199, 570, 850, 1005},
{199, 570, 851, 1004},
{199, 570, 851, 1005},
{199, 570, 852, 1003},
{199, 570, 852, 1004},
{199, 570, 853, 1002},
{199, 570, 853, 1003},
{199, 571, 853, 1002},
{200, 568, 850, 1005},
{200, 568, 850, 1006},
{200, 568, 851, 1005},
{200, 568, 852, 1004},
{200, 569, 851, 1005},
{200, 569, 852, 1003},
{200, 569, 852, 1004},
{200, 569, 853, 1002},
{200, 569, 853, 1003},
{200, 570, 853, 1002},
{200, 570, 853, 1003},
{201, 567, 850, 1006},
{201, 567, 851, 1005},
{201, 567, 851, 1006},
{201, 568, 851, 1005},
{201, 568, 852, 1004},
{201, 568, 852, 1005},
{201, 568, 853, 1002},
{201, 568, 853, 1003},
{201, 568, 853, 1004},
{201, 569, 853, 1003},
{202, 567, 851, 1005},
{202, 567, 851, 1006},
{202, 567, 852, 1004},
{202, 567, 852, 1005},
{202, 567, 853, 1003},
{202, 567, 853, 1004},
{202, 568, 853, 1003}}
のうちの1つ以上が含まれる、
ことを特徴とする請求項3に記載の方法。
【請求項8】
前記10ビット変換コアに対応する8ポイント変換は、下記の1つ以上の行列:
{130, 319, 497, 657, 792 898, 972, 1009, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159};
{130, 320, 497, 657, 792 898, 972, 1008, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159}; および
{130, 320, 497, 657, 792 898, 972, 1009, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159}
を含む線グラフ変換である、
ことを特徴とする請求項3に記載の方法。
【請求項9】
前記10ビット変換コアに対応する16ポイント変換は、下記の行列:
{a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p,
c, f, i, l, o, o, l, i, f, c, 0, -c, -f, -i, -l, -o,
e, j, o, m, h, c, -b, -g, -l, -p, -k, -f, -a, d, i, n,
g, n, l, e, -b, -i, -p, -j, -c, d, k, o, h, a, -f, -m,
i, o, f, -c, -l, -l, -c, f, o, i, 0, -i, -o, -f, c, l,
k, k, 0, -k, -k, 0, k, k, 0, -k, -k, 0, k, k, 0, -k,
m, g, -f, -n, -a, l, h, -e, -o, -b, k, i, -d, -p, -c, j,
o, c, -l, -f, i, i, -f, -l, c, o, 0, -o, -c, l, f, -i,
p, -a, -o, b, n, -c, -m, d, l, -e, -k, f, j, -g, -i, h,
n, -e, -i, j, d, -o, a, m, -f, -h, k, c, -p, b, l, -g,
l, -i, -c, o, -f, -f, o, -c, -i, l, 0, -l, i, c, -o, f,
j, -m, c, g, -p, f, d, -n, i, a, -k, l, -b, -h, o, -e,
h, -p, i, -a, -g, o, -j, b, f, -n, k, -c, -e, m, -l, d,
f, -l, o, -i, c, c, -i, o, -l, f, 0, -f, l, -o, i, -c,
d, -h, l, -p, m, -i, e, -a, -c, g, -k, o, -n, j, -f, b,
b, -d, f, -h, j, -l, n, -p, o, -m, k, -i, g, -e, c, -a,}
を含む線グラフ変換である、
ことを特徴とする請求項3に記載の方法。
【請求項10】
{a、b、c、d、e、f、g、h、i、j、k、l、m、n、o、p}には、
{94,189,283,375,461,544,623,698,764,823,873,917,953,981,998,1005},
{94,189,284,375,460,545,623,698,762,823,873,917,951,982,998,1005},
{94,189,284,375,461,544,622,697,764,823,873,917,953,981,997,1005},
{94,189,284,375,461,544,623,697,764,823,873,917,953,981,998,1005},
{94,190,282,376,461,545,624,698,761,822,873,916,951,980,1000,1006},
{94,190,282,376,461,545,624,698,762,822,873,916,952,980,1000,1006},{94,190,283,375,461,544,623,697,764,823,873,917,954,980,998,1005},
{94,190,283,376,460,546,624,698,760,823,873,917,950,981,1000,1006},
{94,190,283,376,460,546,624,698,761,823,873,917,951,981,1000,1006},
{94,190,284,375,460,545,623,697,762,823,873,917,952,981,998,1005},
{94,190,284,375,460,545,623,698,762,823,873,917,952,982,998,1005},
{94,190,284,375,461,544,622,696,764,823,873,917,954,980,997,1005},
{94,190,284,375,461,545,623,697,762,823,873,917,952,981,998,1006},
{94,190,284,375,461,545,623,697,763,823,873,917,953,981,998,1006},
{94,191,282,376,461,545,624,697,761,822,873,916,952,979,1000,1006},
{94,191,282,376,461,545,624,697,762,822,873,916,953,979,1000,1006},
{94,191,282,376,461,545,624,698,761,822,873,916,952,980,1000,1006},
{94,191,283,375,461,544,623,696,764,823,873,917,955,979,998,1005},
{94,191,283,376,460,546,624,697,760,823,873,917,951,980,1000,1006},
{94,191,283,376,460,546,624,697,761,823,873,917,952,980,1000,1006},
{94,191,283,376,460,546,624,698,760,823,873,917,951,981,1000,1006},
および
{94,191,283,376,461,545,623,697,762,823,873,917,953,980,999,1006}
のうちの1つ以上が含まれる、
ことを特徴とする請求項9に記載の方法。
【請求項11】
ビデオデータをコーディングするためのコンピュータシステムであって、
コンピュータプログラムコードを記憶するように構成された1つ以上のコンピュータ読み取り可能な非一時的記憶媒体と、
前記コンピュータプログラムコードにアクセスして、前記コンピュータプログラムコードによって指示されるように動作するように構成された1つ以上のコンピュータプロセッサであって、前記コンピュータプログラムコードには、前記1つ以上のコンピュータプロセッサにビデオデータを受信させるように構成された受信コードと、前記ビデオデータに関連付けられた、線グラフ変換(LGT)および離散サイン変換(DST)のうちの1つ以上を含む1つ以上の変換コアを、前記1つ以上のコンピュータプロセッサに識別させるように構成された識別コードと、前記識別された変換コアに基づいて前記1つ以上のコンピュータプロセッサに前記ビデオデータを復号させるように構成された復号コードと、が含まれるコンピュータプロセッサと、
を含むことを特徴とするコンピュータシステム。
【請求項12】
前記変換コアは、8ビット変換コアおよび10ビット変換コアのうちの1つ以上に対応する、
ことを特徴とする請求項11に記載のコンピュータシステム。
【請求項13】
前記1つ以上の変換コアは、2ポイント変換、4ポイント変換、8ポイント変換、16ポイント変換、32ポイント変換、および64ポイント変換のうちの1つ以上に対応する、
ことを特徴とする請求項12に記載のコンピュータシステム。
【請求項14】
前記8ビット変換コアに対応する前記4ポイント変換は、下記の行列:
{a, b, c, d,
b, d, a, -c,
c, a, -d, b,
d, -c, b, -a}
を含む線グラフ変換であり、ここで、{a、b、c、d}は、{25、71、106、126}に対応する、
ことを特徴とする請求項13に記載のコンピュータシステム。
【請求項15】
前記8ビット変換コアに対応する8ポイント変換は、下記の1つ以上の行列:
{16, 40, 62, 82, 99, 112, 122, 126,
48, 104, 126, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20};
{15, 40, 62, 82, 99, 112, 122, 126,
47, 104, 127, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20};
{15, 40, 62, 82, 99, 112, 122, 126,
48, 103, 127, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20}; および
{15, 40, 62, 82, 99, 112, 122, 126,
48, 104, 127, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20}
を含む線グラフ変換である、
ことを特徴とする請求項13に記載のコンピュータシステム。
【請求項16】
前記8ビット変換コアに対応する16ポイント変換は、下記の行列:
{a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p,
c, f, i, l, o, o, l, i, f, c, 0, -c, -f, -i, -l, -o,
e, j, o, m, h, c, -b, -g, -l, -p, -k, -f, -a, d, i, n,
g, n, l, e, -b, -i, -p, -j, -c, d, k, o, h, a, -f, -m,
i, o, f, -c, -l, -l, -c, f, o, i, 0, -i, -o, -f, c, l,
k, k, 0, -k, -k, 0, k, k, 0, -k, -k, 0, k, k, 0, -k,
m, g, -f, -n, -a, l, h, -e, -o, -b, k, i, -d, -p, -c, j,
o, c, -l, -f, i, i, -f, -l, c, o, 0, -o, -c, l, f, -i,
p, -a, -o, b, n, -c, -m, d, l, -e, -k, f, j, -g, -i, h,
n, -e, -i, j, d, -o, a, m, -f, -h, k, c, -p, b, l, -g,
l, -i, -c, o, -f, -f, o, -c, -i, l, 0, -l, i, c, -o, f,
j, -m, c, g, -p, f, d, -n, i, a, -k, l, -b, -h, o, -e,
h, -p, i, -a, -g, o, -j, b, f, -n, k, -c, -e, m, -l, d,
f, -l, o, -i, c, c, -i, o, -l, f, 0, -f, l, -o, i, -c,
d, -h, l, -p, m, -i, e, -a, -c, g, -k, o, -n, j, -f, b,
b, -d, f, -h, j, -l, n, -p, o, -m, k, -i, g, -e, c, -a,}
を含む線グラフ変換であり、ここで、{a、b、c、d、e、f、g、h、i、j、k、l、m、n、o、p}には、
{12, 24, 36, 47, 57, 69, 78, 87, 94, 103, 109, 115, 118, 123, 125, 126},
{11, 22, 36, 47, 56, 69, 78, 89, 94, 104, 109, 115, 116, 125, 125, 125},および
{12, 22, 34, 47, 58, 68, 79, 89, 95, 102, 109, 114, 117, 123, 126, 126}
のうちの1つ以上が含まれる、
ことを特徴とする請求項13に記載のコンピュータシステム。
【請求項17】
前記10ビット変換コアに対応する4ポイント変換は、下記の行列:
{a, b, c, d,
b, d, a, -c,
c, a, -d, b,
d, -c, b, -a}
を含む線グラフ変換であり、ここで、{a、b、c、d}には、
{198, 570, 849, 1006},
{198, 570, 850, 1004},
{198, 570, 850, 1005},
{198, 570, 850, 1006},
{198, 570, 851, 1004},
{198, 571, 850, 1005},
{198, 571, 851, 1004},
{198, 571, 851, 1005},
{198, 571, 852, 1002},
{198, 571, 852, 1003},
{198, 571, 852, 1004},
{198, 571, 853, 1002},
{199, 569, 849, 1006},
{199, 569, 850, 1005},
{199, 569, 850, 1006},
{199, 569, 851, 1004},
{199, 569, 851, 1005},
{199, 569, 852, 1004},
{199, 570, 850, 1005},
{199, 570, 851, 1004},
{199, 570, 851, 1005},
{199, 570, 852, 1003},
{199, 570, 852, 1004},
{199, 570, 853, 1002},
{199, 570, 853, 1003},
{199, 571, 853, 1002},
{200, 568, 850, 1005},
{200, 568, 850, 1006},
{200, 568, 851, 1005},
{200, 568, 852, 1004},
{200, 569, 851, 1005},
{200, 569, 852, 1003},
{200, 569, 852, 1004},
{200, 569, 853, 1002},
{200, 569, 853, 1003},
{200, 570, 853, 1002},
{200, 570, 853, 1003},
{201, 567, 850, 1006},
{201, 567, 851, 1005},
{201, 567, 851, 1006},
{201, 568, 851, 1005},
{201, 568, 852, 1004},
{201, 568, 852, 1005},
{201, 568, 853, 1002},
{201, 568, 853, 1003},
{201, 568, 853, 1004},
{201, 569, 853, 1003},
{202, 567, 851, 1005},
{202, 567, 851, 1006},
{202, 567, 852, 1004},
{202, 567, 852, 1005},
{202, 567, 853, 1003},
{202, 567, 853, 1004},
{202, 568, 853, 1003}}
のうちの1つ以上が含まれる、
ことを特徴とする請求項13に記載のコンピュータシステム。
【請求項18】
前記10ビット変換コアに対応する8ポイント変換は、下記の1つ以上の行列:
{130, 319, 497, 657, 792 898, 972, 1009, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159};
{130, 320, 497, 657, 792 898, 972, 1008, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159}; および
{130, 320, 497, 657, 792 898, 972, 1009, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159}
を含む線グラフ変換である、
ことを特徴とする請求項13に記載のコンピュータシステム。
【請求項19】
前記10ビット変換コアに対応する16ポイント変換は、下記の行列:
{a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p,
c, f, i, l, o, o, l, i, f, c, 0, -c, -f, -i, -l, -o,
e, j, o, m, h, c, -b, -g, -l, -p, -k, -f, -a, d, i, n,
g, n, l, e, -b, -i, -p, -j, -c, d, k, o, h, a, -f, -m,
i, o, f, -c, -l, -l, -c, f, o, i, 0, -i, -o, -f, c, l,
k, k, 0, -k, -k, 0, k, k, 0, -k, -k, 0, k, k, 0, -k,
m, g, -f, -n, -a, l, h, -e, -o, -b, k, i, -d, -p, -c, j,
o, c, -l, -f, i, i, -f, -l, c, o, 0, -o, -c, l, f, -i,
p, -a, -o, b, n, -c, -m, d, l, -e, -k, f, j, -g, -i, h,
n, -e, -i, j, d, -o, a, m, -f, -h, k, c, -p, b, l, -g,
l, -i, -c, o, -f, -f, o, -c, -i, l, 0, -l, i, c, -o, f,
j, -m, c, g, -p, f, d, -n, i, a, -k, l, -b, -h, o, -e,
h, -p, i, -a, -g, o, -j, b, f, -n, k, -c, -e, m, -l, d,
f, -l, o, -i, c, c, -i, o, -l, f, 0, -f, l, -o, i, -c,
d, -h, l, -p, m, -i, e, -a, -c, g, -k, o, -n, j, -f, b,
b, -d, f, -h, j, -l, n, -p, o, -m, k, -i, g, -e, c, -a,}
を含む線グラフ変換である、
ことを特徴とする請求項13に記載のコンピュータシステム。
【請求項20】
ビデオデータをコーディングするためのコンピュータプログラムが記憶されている非一時的コンピュータ読み取り可能な媒体であって、
ビデオデータを受信するステップと、
前記ビデオデータに関連付けられた1つ以上の変換コアを識別するステップであって、前記1つ以上の変換コアには、線グラフ変換(LGT)および離散サイン変換(DST)のうちの1つ以上が含まれるステップと、
前記識別された1つ以上の変換コアに基づいて、前記ビデオデータを復号するステップと、を実行させる、
ことを特徴とする非一時的コンピュータ読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、データ処理の分野、より具体的には、ビデオの符号化および復号に関する。
【0002】
「関連出願の相互参照」
この出願は、2020年2月12日に出願された米国特許仮出願第62/975,417号、および2020年10月22日に出願された米国出願第17/077,635号の優先権を主張し、これらの出願の開示は、その全体が参照により本明細書に組み込まれる。
【背景技術】
【0003】
AOMedia Video 1(AV1)は、2015年に設立されたコンソーシアム(consortium)であるオープンメディア同盟(AOMedia:Alliance for Open Media)によって、VP9の後継として開発されたものである。このコンソーシアムには、半導体企業、ビデオオンデマンドプロバイダー(video on demand providers)、ビデオコンテンツ制作者(video content producers)、ソフトウェア開発会社(software development companies)、およびWebブラウザーベンダー(web browser vendors)が含まれる。AV1プロジェクトの多くの構成部分は、同盟メンバーによる以前の研究活動から由来している。個人貢献者は、数年前から実験的な技術プラットフォームを開始している。Xiph/MozillaのDaalaは、2010年にすでにコードを公開し、Googleの実験的なVP9進化プロジェクトVP10は、2014年9月12日に発表され、CiscoのThorは、2015年8月11日に公開された。VP9のコードベースに基づいて構築されたAV1には、追加のテクニックが組み込まれており、そのうちのいくつかは、これらの実験形式で開発されたものである。AV1参照コーデックの最初のバージョン0.1.0は、2016年4月7日に公開された。この同盟は、リファレンス、ソフトウェアベースのエンコーダおよびデコーダとともに、2018年3月28日にAV1ビットストリーム仕様のリリースを発表した。2018年6月25日、この仕様の検証済みバージョン1.0.0がリリースされた。2019年1月8日に、仕様訂正表1(Errata1)を含む検証済みバージョン1.0.0がリリースされた。AV1ビットストリーム仕様には、参照ビデオコーデックが含まれる。AOMedia Video 2(AV2)は、現在開発中である。
【発明の概要】
【課題を解決するための手段】
【0004】
実施形態は、ビデオコーデックの方法、システム、およびコンピュータ読み取り可能な媒体に関する。一態様によれば、コーディング方法が提供される。この方法は、ビデオデータの受信を含み得る。ビデオデータに関連付けられた変換に対応する1つ以上の変換コアは、識別される。1つ以上の変換コアには、線グラフ変換(LGT)および離散サイン変換(DST)のうちの1つ以上が含まれる。ビデオデータは、識別された変換コアに基づいて符号化および/または復号される。変換コアは、8ビット変換コアおよび10ビット変換コアのうちの1つ以上に対応する。前記変換は、2ポイント変換、4ポイント変換、8ポイント変換、および16ポイント変換のうちの1つ以上に対応する。
【0005】
別の態様によれば、ビデオデータをコーディングするためのコンピュータシステムが提供される。コンピュータシステムは、1つ以上のプロセッサと、1つ以上のコンピュータ読み取り可能なメモリと、1つ以上のコンピュータ読み取り可能な有形記憶デバイスと、1つ以上の記憶装置のうちの少なくとも1つに記憶されているプログラム命令と、を含み得て、前記プログラム命令は、1つ以上のメモリのうちの少なくとも1つを介して、1つ以上のプロセッサのうちの少なくとも1つによって実行され、これにより、コンピュータシステムは、方法を実行することができる。この方法は、ビデオデータの受信を含み得る。ビデオデータに関連付けられた変換に対応する1つ以上の変換コアは、識別される。1つ以上の変換コアには、線グラフ変換(LGT)および離散サイン変換(DST)のうちの1つ以上が含まれる。ビデオデータは、識別された変換コアに基づいて符号化および/または復号される。変換コアは、8ビット変換コアおよび10ビット変換コアのうちの1つ以上に対応する。前記変換は、2ポイント変換、4ポイント変換、8ポイント変換、および16ポイント変換のうちの1つ以上に対応する。
【0006】
さらに別の態様によれば、ビデオデータをコーディングするためのコンピュータ読み取り可能な媒体が提供される。コンピュータ読み取り可能な媒体は、1つ以上のコンピュータ読み取り可能な記憶デバイスと、1つ以上の有形記憶デバイスのうちの少なくとも1つに記憶されているプログラム命令とを含み得て、前記プログラム命令は、プロセッサによって実行され得る。プログラム命令は、相応的にビデオデータの受信を含み得る方法を実行させるために、プロセッサによって実行される。ビデオデータに関連付けられた変換に対応する1つ以上の変換コアは、識別される。1つ以上の変換コアには、線グラフ変換(LGT)および離散サイン変換(DST)のうちの1つ以上が含まれる。ビデオデータは、識別された変換コアに基づいて符号化および/または復号される。変換コアは、8ビット変換コアおよび10ビット変換コアのうちの1つ以上に対応する。前記変換は、2ポイント変換、4ポイント変換、8ポイント変換、および16ポイント変換のうちの1つ以上に対応する。
【0007】
これらの、および他の目的、特徴および利点は、添付図面に関連して読まれるべき例示的な実施形態の以下の詳細な説明から明らかになる。添付図面は、当業者が容易に詳細な説明と組み合わせて理解を行う場合の明確性のために使用されるものであるため、図面の様々な特徴は、比例して描かれていない。
【図面の簡単な説明】
【0008】
【
図1】少なくとも1つの実施形態によるネットワーク化されたコンピュータ環境を示す。
【
図2】少なくとも1つの実施形態による、平面回転の例示的な蝶形および行列表現である。
【
図3】少なくとも1つの実施形態による、例示的な線グラフ変換である。
【
図4】少なくとも1つの実施形態による、ビデオデータをコード化するプログラムによって実行されるステップを示す動作フローチャートである。
【
図5】少なくとも1つの実施形態による、
図1に示されるコンピュータおよびサーバの内部および外部のコンポーネントのブロック図である。
【
図6】少なくとも1つの実施形態による、
図1に示されるコンピュータシステムを含む例示的なクラウドコンピューティング環境のブロック図である。
【
図7】少なくとも1つの実施形態による、
図6の例示的なクラウドコンピューティング環境の機能層のブロック図である。
【発明を実施するための形態】
【0009】
請求された構造および方法の詳細な実施形態は、本明細書に開示されている。しかしながら、開示された実施形態は、様々な形態で具体化され得る、請求された構造および方法の単なる例示である、ということが理解され得る。しかしながら、これらの構造および方法は、多くの異なる形態で具体化され得て、本明細書に記載の例示的な実施形態に限定されると解釈されるべきではない。むしろ、本開示を徹底的かつ完全にし、および本開示の範囲を当業者に十分に伝えるために、これらの例示的な実施形態は提供される。説明では、提示された実施形態を不必要に曖昧にすることを回避するために、周知の特徴および技術の詳細は省略されてもよい。
【0010】
実施形態は、一般に、データ処理の分野に関し、具体的には、ビデオの符号化および復号に関する。以下に説明される例示的な実施形態は、他のものを除いて、8ビットおよび10ビットの変換コアに基づいてビデオデータを符号化するためのシステム、方法、およびコンピュータプログラムを提供する。したがって、いくつかの実施形態は、ビデオデータの符号化、復号、圧縮、および解凍の改善を可能にすることによって、コンピューティング分野を改善する能力を有する。
【0011】
前述のように、AOMedia Video 1(AV1)は、2015年に設立されたコンソーシアムであるオープンメディア同盟(AOMedia:Alliance for Open Media)によって、VP9の後継として開発されたものである。このコンソーシアムには、半導体企業、ビデオオンデマンドプロバイダー、ビデオコンテンツ制作者、ソフトウェア開発会社、およびWebブラウザーベンダーが含まれる。AV1プロジェクトの多くの構成部分は、同盟メンバーによる以前の研究活動から由来している。個人貢献者は、数年前から実験的な技術プラットフォームを開始している。Xiph/MozillaのDaalaは、2010年にすでにコードを公開し、Googleの実験的なVP9進化プロジェクトVP10は、2014年9月12日に発表され、CiscoのThorは、2015年8月11日に公開された。VP9のコードベースに基づいて構築されたAV1には、追加のテクニックが組み込まれており、そのうちのいくつかは、これらの実験形式で開発されたものである。AV1参照コーデックの最初のバージョン0.1.0は、2016年4月7日に公開された。この同盟は、リファレンス、ソフトウェアベースのエンコーダおよびデコーダとともに、2018年3月28日にAV1ビットストリーム仕様のリリースを発表した。2018年6月25日、この仕様の検証済みバージョン1.0.0がリリースされた。2019年1月8日に、仕様訂正表1(Errata1)を含む検証済みバージョン1.0.0がリリースされた。AV1ビットストリーム仕様には、参照ビデオコーデックが含まれる。AOMedia Video 2(AV2)は、現在開発中である。AV2では、4ポイントおよび16ポイントの線グラフ変換(LGT)は、それぞれ、4つおよび16つの一意の整数を使用して表現され得る(それらは、DST-4およびDST-7であるため)。ただし、例えば8ポイントLGTなどのような、ある特定の変換については、そのような表現がない場合がある。したがって、より良い符号化効率および/または精度のために調整された、8ビットおよび10ビットの4ポイント、8ポイント、16ポイント、32ポイント、および64ポイントのプライマリト変換コアの完全なセットを導入することにより、可能な変換の範囲を拡張することは、有利であり得る。
【0012】
本明細書では、様々な実施形態による方法、装置(システム)、およびコンピュータ読み取り可能な媒体のフローチャート図および/またはブロック図を参照して、各態様を説明する。フローチャートおよび/またはブロック図の各ブロック、およびフローチャートおよび/またはブロック図の各ブロックの組み合わせは、コンピュータ読み取り可能なプログラム命令によって実現され得る、ということを理解されたい。
【0013】
ここで、8ビットおよび10ビット変換コアでの線グラフ変換に基づいてビデオデータをコーディングするためのビデオコーディングシステム100(以下、「システム」という)を示す、ネットワーク化されたコンピュータ環境の機能ブロック図である
図1を参照する。
図1は、1つの実現の説明のみを提供し、異なる実施形態が実現され得る環境に関するいかなる制限を意味するものではない、ということを理解されたい。示されている環境に対する多くの変更は、設計および実現の要件に基づいて行われ得る。
【0014】
システム100は、コンピュータ102およびサーバコンピュータ114を含み得る。コンピュータ102は、通信ネットワーク110(以下、「ネットワーク」という)を介して、サーバコンピュータ114と通信することができる。コンピュータ102は、プロセッサ104と、データ記憶デバイス106に記憶され、ユーザとインタフェースをとり、サーバコンピュータ114と通信することが可能であるソフトウェアプログラム108とを含み得る。
図5を参照して以下で説明するように、コンピュータ102は、それぞれ、内部コンポーネント800Aおよび外部コンポーネント900Aを含み得、サーバコンピュータ114は、それぞれ、内部コンポーネント800Bおよび外部コンポーネント900Bを含み得る。コンピュータ102は、例えば、モバイルデバイス、パーソナルデジタルアシスタント、インターネットブック、ラップトップコンピュータ、タブレットコンピュータ、デスクトップコンピュータ、またはプログラムを実行し、ネットワークにアクセスし、データベースにアクセスすることができる任意のタイプのコンピューティングデバイスであリ得る。
【0015】
サーバコンピュータ114は、また、
図6および
図7に関連して以下で説明するように、サービスとしてのソフトウェア(SaaS:Software as a Service)、サービスとしてのプラットフォーム(PaaS:Platform as a Service)、またはサービスとしてのインフラストラクチャ(laaS:Infrastructure as a Service)などのクラウドコンピューティングサービスモデルで動作し得る。サーバコンピュータ114は、また、プライベートクラウド、コミュニティクラウド、パブリッククラウド、またはハイブリッドクラウドなどのクラウドコンピューティング展開モデルに配置され得る。
【0016】
ビデオの符号化および復号のために使用され得るサーバコンピュータ114は、データベース112と相互作用することができるビデオコーディングプログラム116(以下、「プログラム」という)を実行することが可能である。ビデオコーディングプログラムの方法は、
図4に関して以下でより詳細に説明される。一実施形態では、コンピュータ102は、ユーザインタフェースを含む入力デバイスとして動作してもよく、一方、プログラム116は、主に、サーバコンピュータ114上で実行されてもよい。代替の実施形態では、プログラム116は、主に、1つ以上のコンピュータ102上で実行されてもよく、一方、サーバコンピュータ114は、プログラム116によって使用されるデータを処理および記憶するために使用されてもよい。注意すべきものとして、プログラム116は、スタンドアロンプログラムであってもよく、より大きなビデオコーディングプログラムに統合されてもよい。
【0017】
しかしながら、注意すべきものとして、プログラム116の処理は、場合によっては、コンピュータ102とサーバコンピュータ114との間で任意の比率で共有されてもよい。別の実施形態では、プログラム116は、複数のコンピュータ、サーバコンピュータ、またはコンピュータとサーバコンピュータのいくつかの組み合わせ、例えば、ネットワーク110を介して単一のサーバコンピュータ114と通信する複数のコンピュータ102上で実行されてもよい。別の実施形態では、例えば、プログラム116は、ネットワーク110を介して複数のクライアントコンピュータと通信する複数のサーバコンピュータ114上で実行されてもよい。あるいは、プログラムは、ネットワークを介してサーバおよび複数のクライアントコンピュータと通信するネットワークサーバ上で実行されてもよい。
【0018】
ネットワーク110には、有線接続、無線接続、光ファイバー接続、またはそれらのいくつかの組み合わせが含まれてもよい。一般に、ネットワーク110は、コンピュータ102とサーバコンピュータ114との間の通信をサポートする接続とプロトコルとの間の任意の組み合わせであり得る。ネットワーク110には、例えば、ローカルエリアネットワーク(LAN)、インターネットなどのワイドエリアネットワーク(WAN)、公衆交換電話網(PSTN)などの電気通信ネットワーク、無線ネットワーク、公衆交換網、衛星ネットワーク、セルラーネットワーク(例えば、第5世代(5G)ネットワーク、長期進化(LTE)ネットワーク、第3世代(3G)ネットワーク、符号分割多元接続(CDMA)ネットワークなど)、公衆陸上移動体網(PLMN)、都市圏ネットワーク(MAN)、プライベートネットワーク、アドホックネットワーク、イントラネット、光ファイバーベースのネットワークなど、および/またはこれらまたは他のタイプのネットワークの組み合わせなどの、様々な種類のネットワークが含まれてもよい。
【0019】
図1に示されるデバイスおよびネットワークの数および配置は、例示的なものとして提供される。実際には、
図1に示されるものよりも、追加のデバイスおよび/またはネットワーク、より少ないデバイスおよび/またはネットワーク、異なるデバイスおよび/またはネットワーク、または異なる配置のデバイスおよび/またはネットワークが存在してもよい。さらに、
図1に示される2つ以上のデバイスは、単一のデバイス内に実現されてもよく、
図1に示される単一のデバイスは、複数の分散デバイスとして実現されてもよい。追加的にまたは代替的には、システム100の1セットのデバイス(例えば、1つ以上のデバイス)は、システム100の別のセットのデバイスによって実行されるものとして説明される1つ以上の機能を実行することができる。
【0020】
ここで、平面回転200の例示的な表現が示されている
図2を参照する。平面回転200は、蝶形表現202および行列表現204を使用して示され得る。AV1では、主な1D変換は、a)4ポイント、8ポイント、16ポイント、32ポイント、および64ポイントのDCT-2、b)4ポイント、8ポイント、16ポイントの非対称DSTとその反転バージョン、およびc)4ポイント、8ポイント、16ポイント、および32ポイントのアイデンティティ変換である。2D変換プロセスには、ハイブリッド変換(符号化された残差ブロックの各次元に対して異なる変換が使用される)の使用が含まれ、各次元に使用される変換への選択は、レート歪み(RD)基準に基づいている。DCT-2(4ポイントから64ポイント)、DST-4(8ポイント、16ポイント)、およびDST-7(4ポイント)変換は、対称/非対称特性を示し、したがって、いわゆる「部分的な蝶形」の実現は、演算カウント(乗算、加算/減算、シフト)の数を削減するためにサポートされている。部分的な蝶形の実現には、様々な角度で三角関数の余弦および正弦関数を使用して平面回転を行うことが含まれる。12ビットのルックアップテーブルは、三角関数の値を生成するために使用されてもよい。
【0021】
ここで、例示的な線グラフ変換(LGT)300が示されている
図3を参照する。グラフは、頂点とエッジのセットで構成される一般的な数学的構造であってもよく、関心のあるオブジェクト間の厳密な関係をモデル化するために使用されるものである。実際には、重み付きグラフ(そのうちの1セットの重みがエッジに割り当てられ、場合によっては頂点に割り当てられる)は、信号/データのロバストモデリングのために疎表現を提供することができる。LGTは、多様なブロック統計へのより良い適応を提供することにより、コーディング効率を向上させることができる。分離可能なLGTは、データから線グラフを学習することにより設計および最適化され得て、これによって、ブロックの残差信号の基礎となる行および列ごと(underlying row and column-wise)の統計はモデル化され得、ここで、関連付けられた一般化グラフLaplacan(GGL)行列は、LGTを導出するために使用される。
【0022】
例えば、重み付きグラフG(W,V)が与えられると、GGL行列は、Lc=D-W+Vとして定義され得、ここで、Wは、非負のエッジ重みwcからなる隣接行列であり得、Dは、対角度行列であり得て、Vは、重み付きセルフループ(weighted self-loops)vc1、vc2を示す対角行列であり得る。行列Lcは、次のように表され得る。
[式1]
【0023】
【0024】
次に、GGL Lcの固有分解によって、LGT:Lc=UΦUTが導出され得て、ここで、直交行列Uの列は、LGTのベースベクトルであり、Φは、対角固有値行列である。実際には、DCT-2、DCT-8、およびDST-7を含むDCTおよびDSTは、いずれも、特定の形式のGGLから派生されたLGTである。DCT-2は、vc1=0を設定することによって導出される。DST-7は、vc1=wcを設定することによって導出される。DCT-8は、vc2=wcを設定することによって導出される。DST-4は、vc1=2wcを設定することによって導出される。DCT-4は、vc2=2wcを設定することによって導出される。
【0025】
LGTは、変換サイズ4、8、および16のための行列乗算を使用して実現される。4ポイントのLGTコアは、Lcにおいてvc1=2wcを設定することによって導出され、それがDST-4であることを意味する。8ポイントのLGTコアは、Lcにおいてvc1=1.5wcを設定することで導出され、16ポイントのLGTコアは、Lcにおいてvc1=wcを設定することで導出され、それがDST-7であることを意味する。4ポイント、8ポイント、および16ポイントコアは、10ビット整数(符号ビットを除く)を使用して表される。LGTコアは、以下に説明される。
【0026】
4ポイントLGT(DST-4):
{a, b, c, d,
b, d, a, -c,
c, a, -d, b,
d, -c, b, -a}
ここで、{a、b、c、d} = {200、569、851、1004}。
【0027】
8ポイントLGT:
{130, 319, 497, 657, 792, 899, 972, 1009, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159}。
【0028】
16ポイントLGT(DST-7):
{a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p,
c, f, i, l, o, o, l, i, f, c, 0, -c, -f, -i, -l, -o,
e, j, o, m, h, c, -b, -g, -l, -p, -k, -f, -a, d, i, n,
g, n, l, e, -b, -i, -p, -j, -c, d, k, o, h, a, -f, -m,
i, o, f, -c, -l, -l, -c, f, o, i, 0, -i, -o, -f, c, l,
k, k, 0, -k, -k, 0, k, k, 0, -k, -k, 0, k, k, 0, -k,
m, g, -f, -n, -a, l, h, -e, -o, -b, k, i, -d, -p, -c, j,
o, c, -l, -f, i, i, -f, -l, c, o, 0, -o, -c, l, f, -i,
p, -a, -o, b, n, -c, -m, d, l, -e, -k, f, j, -g, -i, h,
n, -e, -i, j, d, -o, a, m, -f, -h, k, c, -p, b, l, -g,
l, -i, -c, o, -f, -f, o, -c, -i, l, 0, -l, i, c, -o, f,
j, -m, c, g, -p, f, d, -n, i, a, -k, l, -b, -h, o, -e,
h, -p, i, -a, -g, o, -j, b, f, -n, k, -c, -e, m, -l, d,
f, -l, o, -i, c, c, -i, o, -l, f, 0, -f, l, -o, i, -c,
d, -h, l, -p, m, -i, e, -a, -c, g, -k, o, -n, j, -f, b,
b, -d, f, -h, j, -l, n, -p, o, -m, k, -i, g, -e, c, -a,}
ここで、{a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p} = {96, 191, 284, 375, 462, 545, 623, 696, 762, 821, 873, 917, 953, 980, 998, 1007}。
【0029】
4ポイントおよび16ポイントのLGTは、それぞれ、4つおよび16つの一意の整数を使用して表され得る(それらは、DST-4およびDST-7であるため)が、8ポイントのLGTは、このような表現がない。
【0030】
1セットの8ビットおよび10ビットの4ポイント、8ポイント、および16ポイントの線グラフ変換コアは使用され得る。それらは、以下を含み得る。
【0031】
8ビットの4ポイントLGT(DST-4):
{a, b, c, d,
b, d, a, -c,
c, a, -d, b,
d, -c, b, -a},
ここで、{a, b, c, d} is {25, 71, 106, 126}。
【0032】
8ビットの8ポイントLGT:
{16, 40, 62, 82, 99, 112, 122, 126,
48, 104, 126, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20}
{15, 40, 62, 82, 99, 112, 122, 126,
47, 104, 127, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20}
{15, 40, 62, 82, 99, 112, 122, 126,
48, 103, 127, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20}
{15, 40, 62, 82, 99, 112, 122, 126,
48, 104, 127, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20}。
【0033】
8ビットの16ポイントLGT(DST-7):
{a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p,
c, f, i, l, o, o, l, i, f, c, 0, -c, -f, -i, -l, -o,
e, j, o, m, h, c, -b, -g, -l, -p, -k, -f, -a, d, i, n,
g, n, l, e, -b, -i, -p, -j, -c, d, k, o, h, a, -f, -m,
i, o, f, -c, -l, -l, -c, f, o, i, 0, -i, -o, -f, c, l,
k, k, 0, -k, -k, 0, k, k, 0, -k, -k, 0, k, k, 0, -k,
m, g, -f, -n, -a, l, h, -e, -o, -b, k, i, -d, -p, -c, j,
o, c, -l, -f, i, i, -f, -l, c, o, 0, -o, -c, l, f, -i,
p, -a, -o, b, n, -c, -m, d, l, -e, -k, f, j, -g, -i, h,
n, -e, -i, j, d, -o, a, m, -f, -h, k, c, -p, b, l, -g,
l, -i, -c, o, -f, -f, o, -c, -i, l, 0, -l, i, c, -o, f,
j, -m, c, g, -p, f, d, -n, i, a, -k, l, -b, -h, o, -e,
h, -p, i, -a, -g, o, -j, b, f, -n, k, -c, -e, m, -l, d,
f, -l, o, -i, c, c, -i, o, -l, f, 0, -f, l, -o, i, -c,
d, -h, l, -p, m, -i, e, -a, -c, g, -k, o, -n, j, -f, b,
b, -d, f, -h, j, -l, n, -p, o, -m, k, -i, g, -e, c, -a,}
ここで、{a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p}は、以下のセットの任意の要素であってもよい。
{{12, 24, 36, 47, 57, 69, 78, 87, 94, 103, 109, 115, 118, 123, 125, 126},
{11, 22, 36, 47, 56, 69, 78, 89, 94, 104, 109, 115, 116, 125, 125, 125},
{12, 22, 34, 47, 58, 68, 79, 89, 95, 102, 109, 114, 117, 123, 126, 126}}。
【0034】
10ビットの4ポイントLGT(DST-4):
{a, b, c, d,
b, d, a, -c,
c, a, -d, b,
d, -c, b, -a},
ここで、{a, b, c, d}は、以下のセットの任意の要素であってよい。
{{198, 570, 849, 1006},
{198, 570, 850, 1004},
{198, 570, 850, 1005},
{198, 570, 850, 1006},
{198, 570, 851, 1004},
{198, 571, 850, 1005},
{198, 571, 851, 1004},
{198, 571, 851, 1005},
{198, 571, 852, 1002},
{198, 571, 852, 1003},
{198, 571, 852, 1004},
{198, 571, 853, 1002},
{199, 569, 849, 1006},
{199, 569, 850, 1005},
{199, 569, 850, 1006},
{199, 569, 851, 1004},
{199, 569, 851, 1005},
{199, 569, 852, 1004},
{199, 570, 850, 1005},
{199, 570, 851, 1004},
{199, 570, 851, 1005},
{199, 570, 852, 1003},
{199, 570, 852, 1004},
{199, 570, 853, 1002},
{199, 570, 853, 1003},
{199, 571, 853, 1002},
{200, 568, 850, 1005},
{200, 568, 850, 1006},
{200, 568, 851, 1005},
{200, 568, 852, 1004},
{200, 569, 851, 1005},
{200, 569, 852, 1003},
{200, 569, 852, 1004},
{200, 569, 853, 1002},
{200, 569, 853, 1003},
{200, 570, 853, 1002},
{200, 570, 853, 1003},
{201, 567, 850, 1006},
{201, 567, 851, 1005},
{201, 567, 851, 1006},
{201, 568, 851, 1005},
{201, 568, 852, 1004},
{201, 568, 852, 1005},
{201, 568, 853, 1002},
{201, 568, 853, 1003},
{201, 568, 853, 1004},
{201, 569, 853, 1003},
{202, 567, 851, 1005},
{202, 567, 851, 1006},
{202, 567, 852, 1004},
{202, 567, 852, 1005},
{202, 567, 853, 1003},
{202, 567, 853, 1004},
{202, 568, 853, 1003}}。
【0035】
10ビットの8ポイントLGT:
{130, 319, 497, 657, 792 898, 972, 1009, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159}
{130, 320, 497, 657, 792 898, 972, 1008, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159}
{130, 320, 497, 657, 792 898, 972, 1009, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159}。
【0036】
10ビットの16ポイントLGT(DST-7):
{a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p,
c, f, i, l, o, o, l, i, f, c, 0, -c, -f, -i, -l, -o,
e, j, o, m, h, c, -b, -g, -l, -p, -k, -f, -a, d, i, n,
g, n, l, e, -b, -i, -p, -j, -c, d, k, o, h, a, -f, -m,
i, o, f, -c, -l, -l, -c, f, o, i, 0, -i, -o, -f, c, l,
k, k, 0, -k, -k, 0, k, k, 0, -k, -k, 0, k, k, 0, -k,
m, g, -f, -n, -a, l, h, -e, -o, -b, k, i, -d, -p, -c, j,
o, c, -l, -f, i, i, -f, -l, c, o, 0, -o, -c, l, f, -i,
p, -a, -o, b, n, -c, -m, d, l, -e, -k, f, j, -g, -i, h,
n, -e, -i, j, d, -o, a, m, -f, -h, k, c, -p, b, l, -g,
l, -i, -c, o, -f, -f, o, -c, -i, l, 0, -l, i, c, -o, f,
j, -m, c, g, -p, f, d, -n, i, a, -k, l, -b, -h, o, -e,
h, -p, i, -a, -g, o, -j, b, f, -n, k, -c, -e, m, -l, d,
f, -l, o, -i, c, c, -i, o, -l, f, 0, -f, l, -o, i, -c,
d, -h, l, -p, m, -i, e, -a, -c, g, -k, o, -n, j, -f, b,
b, -d, f, -h, j, -l, n, -p, o, -m, k, -i, g, -e, c, -a,}
ここで、 {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p}、以下のセットの任意の要素であってもよい。
{{94,189,283,375,461,544,623,698,764,823,873,917,953,981,998,1005},
{94,189,284,375,460,545,623,698,762,823,873,917,951,982,998,1005},
{94,189,284,375,461,544,622,697,764,823,873,917,953,981,997,1005},
{94,189,284,375,461,544,623,697,764,823,873,917,953,981,998,1005},
{94,190,282,376,461,545,624,698,761,822,873,916,951,980,1000,1006},
{94,190,282,376,461,545,624,698,762,822,873,916,952,980,1000,1006},
{94,190,283,375,461,544,623,697,764,823,873,917,954,980,998,1005},
{94,190,283,376,460,546,624,698,760,823,873,917,950,981,1000,1006},
{94,190,283,376,460,546,624,698,761,823,873,917,951,981,1000,1006},
{94,190,284,375,460,545,623,697,762,823,873,917,952,981,998,1005},
{94,190,284,375,460,545,623,698,762,823,873,917,952,982,998,1005},
{94,190,284,375,461,544,622,696,764,823,873,917,954,980,997,1005},
{94,190,284,375,461,545,623,697,762,823,873,917,952,981,998,1006},
{94,190,284,375,461,545,623,697,763,823,873,917,953,981,998,1006},
{94,191,282,376,461,545,624,697,761,822,873,916,952,979,1000,1006},
{94,191,282,376,461,545,624,697,762,822,873,916,953,979,1000,1006},
{94,191,282,376,461,545,624,698,761,822,873,916,952,980,1000,1006},
{94,191,283,375,461,544,623,696,764,823,873,917,955,979,998,1005},
{94,191,283,376,460,546,624,697,760,823,873,917,951,980,1000,1006},
{94,191,283,376,460,546,624,697,761,823,873,917,952,980,1000,1006},
{94,191,283,376,460,546,624,698,760,823,873,917,951,981,1000,1006},
{94,191,283,376,461,545,623,697,762,823,873,917,953,980,999,1006}}。
【0037】
ここで、ビデオコーディングのための方法400のステップを示す動作フローチャートが示されている
図4を参照する。いくつかの実現では、
図4の1つ以上のプロセスブロックは、コンピュータ102(
図1)およびサーバコンピュータ114(
図1)によって実行され得る。いくつかの実現では、
図4の1つ以上のプロセスブロックは、コンピュータ102およびサーバコンピュータ114から分離される他のデバイスまたは他のグループのデバイスによって、またはコンピュータ102およびサーバコンピュータ114を含む他のデバイスまたは他のグループのデバイスによって実行されてもよい。
【0038】
402で、方法400は、ビデオデータを受信することを含む。
【0039】
404で、方法400は、ビデオデータに関連付けられた変換に対応する1つ以上の変換コアを識別することを含む。1つ以上の変換コアには、線グラフ変換(LGT)および離散サイン変換(DST)のうちの1つ以上が含まれる。
【0040】
406で、方法400は、識別された変換コアに基づいてビデオデータを復号することを含む。
【0041】
図4は、1つの実現の説明のみを提供し、異なる実施形態をどのように実現できるかに関するついてのいかなる制限を意味するものではない、ということを理解されたい。示されている環境に対する多くの変更は、設計および実現の要件に基づいて行われ得る。例えば、本願の精神から逸脱しない場合、この方法は、ビデオデータに関連付けられた変換に対応する1つ以上の変換コアを識別することを含み得、ここで、1つ以上の変換コアには、線グラフ変換(LGT)および離散サイン変換(DST)のうちの1つまたは複数が含まれる。さらに、この方法は、識別された変換コアに基づいてビデオデータを符号化することと、符号化されたビデオデータを送信することと、を含み得る。
【0042】
図5は、例示的な実施形態による、
図1に示されるコンピュータの内部および外部のコンポーネントのブロック
図500である。
図5は、1つの実現の説明のみを提供し、異なる実施形態が実現され得る環境に関するいかなる制限を意味するものではない、ということを理解されたい。示されている環境に対する多くの変更は、設計および実現の要件に基づいて行われ得る。
【0043】
コンピュータ102(
図1)およびサーバコンピュータ114(
図1)は、
図4に示される内部コンポーネント800A、Bおよび外部コンポーネント900A、Bの異なるセットを含み得る。内部コンポーネント800の各セットには、1つ以上のプロセッサ820と、1つ以上のバス826上の1つ以上のコンピュータ読み取り可能なRAM822および1つ以上のコンピュータ読み取り可能なROM824と、1つ以上のオペレーティングシステム828と、1つ以上のコンピュータ読み取り可能な有形記憶デバイス830と、が含まれる。
【0044】
プロセッサ820は、ハードウェア、ファームウェア、またはハードウェアとソフトウェアの組み合わせで実現される。プロセッサ820は、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、加速処理ユニット(APU)、マイクロプロセッサ、マイクロコントローラ、デジタルシグナルプロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、または別のタイプの処理コンポーネントである。いくつかの実現では、プロセッサ820は、機能を実行するようにプログラム化することができる1つ以上のプロセッサを含む。バス826は、内部コンポーネント800A、B間の通信を可能にするコンポーネントを含む。
【0045】
サーバコンピュータ114(
図1)上の1つ以上のオペレーティングシステム828、ソフトウェアプログラム108(
図1)、およびビデオコーディングプログラム116(
図1)は、1つ以上の相応的なRAM822(一般的には、キャッシュメモリが含まれる)を介して、1つ以上の相応的なプロセッサ820によって実行されるために、1つ以上の相応的なコンピュータ読み取り可能な有形記憶デバイス830に記憶される。
図5に示される実施形態では、コンピュータ読み取り可能な有形記憶デバイス830のそれぞれは、内蔵ハードドライブの磁気ディスク記憶デバイスである。あるいは、コンピュータ読み取り可能な有形記憶デバイス830のそれぞれは、ROM824、EPROM、フラッシュメモリ、光ディスク、磁気光学ディスク、ソリッドステートディスク、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)、フロッピー(登録商標)ディスク、カートリッジ、磁気テープなどの半導体記憶デバイス、および/またはコンピュータプログラムとデジタル情報を記憶することができる別のタイプの非一時的なコンピュータ読み取り可能な有形記憶デバイスなどの半導体記憶装置である。
【0046】
内部コンポーネント800A、Bの各セットには、また、例えばCD-ROM、DVD、メモリスティック、磁気テープ、磁気ディスク、光ディスク、または半導体記憶デバイスなどのような、1つ以上の携帯型コンピュータ読み取り可能な有形記憶デバイス936からの読み取りおよび書き込むためのR/Wドライブまたはインタフェース832が含まれる。例えばソフトウェアプログラム108(
図1)およびビデオコーディングプログラム116(
図1)などのようなソフトウェアプログラムは、1つ以上の相応的な携帯型コンピュータ読み取り可能な有形記憶デバイス936に記憶され、相応的なR/Wドライブまたはインタフェース832を介して読み取られ、相応的なハードドライブ830にロードされ得る。
【0047】
内部コンポーネント800A、Bの各セットには、例えばTCP/IPアダプタカードなどのようなネットワークアダプタまたはインタフェース836、無線Wi-Fiインタフェースカード、あるいは3G、4Gまたは5G無線インタフェースカードまたはその他の有線または無線通信リンクも含まれる。サーバコンピュータ114(
図1)上のソフトウェアプログラム108(
図1)およびビデオコーディングプログラム116(
図1)は、ネットワーク(例えば、インターネット、ローカルエリアネットワークまたはその他のネットワーク、ワイドエリアネットワーク)および相応的なネットワークアダプタまたはインタフェース836を介して、外部コンピュータから、コンピュータ102(
図1)およびサーバコンピュータ114にダウンロードされる。ネットワークアダプタまたはインタフェース836から、サーバコンピュータ114上のソフトウェアプログラム108およびビデオコーディングプログラム116が、相応的なハードドライブ830にロードされる。ネットワークには、銅線、光ファイバー、無線伝送、ルーター、ファイアウォール、スイッチ、ゲートウェイコンピュータ、および/またはエッジサーバが含まれる。
【0048】
外部コンポーネント900A、Bの各セットには、コンピュータディスプレイモニタ920、キーボード930、およびコンピュータマウス934が含まれる。外部コンポーネント900A、Bには、また、タッチスクリーン、仮想キーボード、タッチパッド、ポインティングデバイス、および他のヒューマンインタフェースデバイスが含まれる。内部コンポーネント800A、Bの各セットには、また、コンピュータディスプレイモニタ920、キーボード930、およびコンピュータマウス934とインタフェースをとるためのデバイスドライバ840含まれる。デバイスドライバ840、R/Wドライブまたはインタフェース832、およびネットワークアダプタまたはインタフェース836には、ハードウェア、および(記憶デバイス830および/またはROM824に記憶されている)ソフトウェアが含まれる。
【0049】
本開示は、クラウドコンピューティングに関する詳細な説明を含むが、本明細書に列挙される教示の実現は、クラウドコンピューティング環境に限定されない、ということを事前に理解されたい。むしろ、いくつかの実施形態は、現在知られている、または後で開発される他のタイプのコンピューティング環境と組み合わせて実現され得る。
【0050】
クラウドコンピューティングは、配置可能なコンピューティングリソース(例えば、ネットワーク、ネットワーク帯域幅、サーバ、プロセシング、メモリ、ストレージ、アプリケーション、仮想マシン、およびサービス)の共用プールへの、便利でかつオンデマンドのネットワークアクセスを可能にするための、サービス配布モデルであり、最小限の管理作業またはサービスのプロバイダーとのインタラクションで、迅速にプロビジョニングおよびリリースされ得る。このクラウドモデルは、少なくとも5つの特徴、少なくとも3つのサービスモデル、および少なくとも4つの展開モデルを含み得る。
【0051】
特徴は、以下の通りである。
【0052】
オンデマンドセルフサービス(On-demand self-service):クラウド消費者は、サービスのプロバイダーとの間の人工的なインタラクションを必要とせず、必要に応じて自動的に、サーバ時間およびネットワークストレージなどのコンピューティング能力を一方的にプロビジョニングすることができる。
【0053】
広範囲のネットワークアクセス:該能力は、ネットワーク経由で利用可能になり、標準的なメカニズムを介してアクセスされ得て、これにより、異種のシンまたはシッククライアントプラットフォーム(例えば、携帯電話、ラップトップ、およびPDAなど)による使用が促進される。
【0054】
リソースプーリング:プロバイダーのコンピューティングリソースは、マルチテナントモデル(multi-tenant model)を使用して複数の消費者にサービスを提供するためにプールされ、さまざまな物理リソースおよび仮想リソースが、需要に応じて動的に割り当てられ、および再割り当てられる。消費者は、通常、提供されたリソースの正確な場所に対する制御も知識も有しないため、場所に依存しないという感覚があるが、より高い抽象的なレベル(例えば、国、州、またはデータセンタ)で場所を指定することができる。
【0055】
迅速的弾性:該能力は、迅速かつ弾力的に、場合によっては自動的に、プロビジョニングされ得て、これにより素早くスケールアウトされて迅速にリリースされ、これによって素早くスケールインされ得る。消費者にとっては、プロビジョニングに利用可能な能力は、一般的に無制限のように見えられ、いつでも任意の数量で購入され得る。
【0056】
測定可能なサービス:クラウドシステムは、サービスのタイプ(例えば、ストレージ、プロセシング、帯域幅、およびアクティブなユーザアカウントなど)に適したある抽象的なレベルでの計量能力を活用することにより、リソースの使用を自動的に制御および最適化する。リソースの使用状況は、監視、制御、および報告され得て、これにより、使用されたサービスのプロバイダーおよび消費者の両方に対して透明性が提供される。
【0057】
サービスモデルは、以下の通りである。
【0058】
サービスとしてのソフトウェア(Software as a Service):消費者に提供される能力は、クラウドインフラストラクチャ上で実行されるプロバイダーのアプリケーションを使用することである。これらのアプリケーションは、ウェブブラウザ(例えば、ウェブベースの電子メール)などのシンクライアントインタフェースを介して、様々なクライアントデバイスからアクセスされ得る。消費者は、限られたユーザ固有のアプリケーション構成設定を除いて、ネットワーク、サーバ、オペレーティングシステム、ストレージ、さらには個別のアプリケーション能力を含む基盤となるクラウドインフラストラクチャを、管理または制御しない。
【0059】
サービスとしてのプラットフォーム(PaaS:Platform as a Service):消費者に提供される能力は、消費者が作成または取得したアプリケーションをクラウドインフラストラクチャ上に展開することであり、これらのアプリケーションは、プロバイダーによってサポートされているプログラミング言語およびツールを使用して作成されたものである。消費者は、ネットワーク、サーバ、オペレーティングシステム、またはストレージ含む基盤となるクラウドインフラストラクチャを管理または制御しないが、展開されたアプリケーション、および可能なアプリケーションホスティング環境構成を制御することができる。
【0060】
サービスとしてのインフラストラクチャ(Infrastructure as a Service):消費者に提供される能力は、プロセシング、ストレージ、ネットワーク、および他の基本的なコンピューティングリソースをプロビジョニングすることであり、消費者が、オペレーティングシステムおよびアプリケーションを含み得る任意のソフトウェアをその中で展開および実行することができる。消費者は、基盤となるクラウドインフラストラクチャを管理または制御しないが、オペレーティングシステム、ストレージ、展開されたアプリケーションを制御することができ、選定されたネットワークコンポーネント(例えば、ホストのファイアウォール)を有限に制御することもできる。
【0061】
展開モデルは、以下の通りである。
【0062】
プライベートクラウド:クラウドインフラストラクチャは、ある組織のためだけに運用される。それは、該組織またはサードパーティによって管理され得て、オンプレミスまたはオフプレミス(on-premises or off-premises)に存在することができる。
【0063】
コミュニティクラウド:クラウドインフラストラクチャは、いくつかの組織によって共有され、共有された関心事項(例えば、ミッション、セキュリティ要件、ポリシー、およびコンプライアンスに関する考慮事項)を有する特定のコミュニティをサポートする。これは、これらの組織またはサードパーティによって管理され得て、オンプレミスまたはオフプレミスに存在することができる。
【0064】
パブリッククラウド:クラウドインフラストラクチャは、公衆または大手業界グループに提供され、クラウドサービスを販売する組織によって所有される。
【0065】
ハイブリッドクラウド:クラウドインフラストラクチャは、2つ以上のクラウド(プライベート、コミュニティ、またはパブリック)によって構成され、これらは、依然として唯一のエンティティであるが、標準的または専有の技術によって一緒に結合され、これにより、データおよびアプリケーションの移植性が可能になる(例えば、クラウド間の負荷バランスのためのクラウドバースト)。
【0066】
クラウドコンピューティング環境は、サービス指向であり、無状態、低結合、モジュール化、およびセマンティック相互操作性に焦点を合わせている。クラウドコンピューティングの中心は、相互接続されたノードのネットワークで構成されるインフラストラクチャである。
【0067】
例示的なクラウドコンピューティング環境600が示されている
図6を参照する。示されているように、クラウドコンピューティング環境600は、1つ以上のクラウドコンピューティングノード10を含み、例えばパーソナルデジタルアシスタント(PDA)またはセルラー電話54A、デスクトップコンピュータ54B、ラップトップコンピュータ54C、および/または自動車コンピュータシステム54Nなどの、クラウド消費者によって使用されるローカルコンピューティングデバイスは、それと通信することができる。クラウドコンピューティングノード10は、互いに通信することができる。それらは、例えば上記のプライベート、コミュニティ、パブリックまたはハイブリッドクラウド、あるいはそれらの組み合わせなどの、1つ以上のネットワークにおいて、物理的にまたは仮想的にグループ化され得る(図示せず)。これは、クラウドコンピューティング環境600が、インフラストラクチャ、プラットフォーム、および/またはソフトウェアをサービスとして提供することを可能にし、これらのサービスに対しては、クラウド消費者はローカルのコンピューティングデバイスでリソースを維持する必要がない。
図6に示されるコンピューティングデバイス54A~54Nのタイプは、例示だけを意図しており、コンピューティングノード10およびクラウドコンピューティング環境600は、任意のタイプのネットワークおよび/またはネットワークアドレス可能な接続を介して(例えば、ウェブブラウザを使用して)、任意のタイプのコンピュータ化されたデバイスと通信することができる、ということを理解されたい。
【0068】
(
図6の)クラウドコンピューティング環境600によって提供される1セットの機能的抽象化層700が示されている
図7を参照する。
図6に示されているコンポーネント、層、および機能は、例示だけを意図しており、実施形態はこれらに限定されない、ということを事前に理解されたい。示されているように、以下の層および対応する機能が提供される。
【0069】
ハードウェアおよびソフトウェア層60には、ハードウェアおよびソフトウェアコンポーネントが含まれる。ハードウェアコンポーネントの例には、メインフレーム61、RISC(簡素化された命令セットコンピュータ)アーキテクチャベースのサーバ62、サーバ63、ブレードサーバ64、記憶デバイス65、およびネットワークとネットワーキングコンポーネント66が含まれる。いくつかの実施形態では、ソフトウェアコンポーネントには、ネットワークアプリケーションサーバソフトウェア67、およびデータベースソフトウェア68が含まれる。
【0070】
仮想化層70は、仮想エンティティの以下の例、即ち、仮想サーバ71、仮想ストレージ72、仮想プライベートネットワークを含む仮想ネットワーク73、仮想アプリケーションおよびオペレーティングシステム74、および仮想クライアント75が提供され得る抽象化層を提供する。
【0071】
一例では、管理層80は、下記の機能を提供することができる。リソースプロビジョニング81は、クラウドコンピューティング環境内でタスクを実行するために使用されるコンピューティングリソースおよび他のリソースへの動的な調達を提供する。計測および定価(Metering and Pricing)82は、リソースがクラウドコンピューティング環境内で使用されるときのコスト追跡、およびそれらのリソースの消費に対する課金または開票(billing or invoicing)を提供する。一例では、これらのリソースは、アプリケーションソフトウェアのライセンスを含み得る。セキュリティは、クラウド消費者およびタスクに対するアイデンティティ認証確認、およびデータや他のリソースに対する保護を提供する。ユーザポータル83は、消費者およびシステム管理者に対して、クラウドコンピューティング環境へのアクセスを提供する。サービスレベル管理84は、必要なサービスレベルが満たされるように、クラウドコンピューティングリソースの割り当ておよび管理を提供する。サービスレベルプロトコル(SLA:Service Level Agreement)の計画および履行(planning and fulfillment)85は、SLAに従って将来の需要が予測されるクラウドコンピューティングリソースに対する事前手配および調達を提供する。
【0072】
作業負荷層90は、クラウドコンピューティング環境が使用され得る機能の例を提供する。この層から提供され得る作業負荷および機能の例には、マッピングおよびナビゲーション91、ソフトウェア開発およびライフサイクル管理92、仮想教室での授業93、データ分析処理94、トランザクション処理95、ビデオコーディング96が含まれる。ビデオコーディング96は、線グラフ変換に基づいてビデオデータをコーディングすることができる。
【0073】
いくつかの実施形態は、任意の可能な技術的詳細の統合レベルでのシステム、方法、および/またはコンピュータ読み取り可能な媒体に関する。コンピュータ読み取り可能な媒体は、プロセッサに動作を実行させるためのコンピュータ読み取り可能なプログラム命令をその上に有するコンピュータ読み取り可能な非一時的記憶媒体(または複数の媒体)を含み得る。
【0074】
コンピュータ読み取り可能な媒体は、命令実行デバイスによって使用されるために命令を保持および記憶することができる有形デバイスであり得る。コンピュータ読み取り可能な媒体は、例えば、電子記憶デバイス、磁気記憶デバイス、光学記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、または前述の任意の適切な組み合わせであり得るが、これらに限定されない。コンピュータ読み取り可能な媒体のより具体的な例の非網羅的なリストには、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能なプログラマブル読み取り専用メモリ(EPROMまたはフラッシュメモリ)、静的ランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピー(登録商標)ディスク、例えば、命令が書き込まれたパンチカードまたは溝部における突起構造などの機械的に符号化されたデバイス、および前述の任意の適切な組み合わせが含まれる。本明細書で使用されているコンピュータ読み取り可能な媒体は、それ自体が、電波または他の自由に伝播する電磁波、導波路または他の伝送媒体を介して伝播する電磁波(例えば光ファイバケーブルを通過する光パルス)、または、ワイヤを介して送信される電気信号などの一時的な信号自体であると解釈されるべきではない。
【0075】
本明細書に記載されているコンピュータ読み取り可能なプログラム命令は、コンピュータ読み取り可能な媒体から、それぞれの計算/処理デバイスに、または、例えばインターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、および/または無線ネットワークなどのネットワークを介して外部コンピュータまたは外部記憶デバイスにダウンロードされ得る。ネットワークは、銅線伝送ケーブル、光伝送ケーブルファイバ、無線伝送、ルーター、ファイアウォール、スイッチ、ゲートウェイコンピュータ、および/またはエッジサーバを含み得る。各計算/処理デバイスにおけるネットワークアダプタカードまたはネットワークインタフェースは、ネットワークからコンピュータ読み取り可能なプログラム命令を受信し、それぞれの計算/処理デバイス内のコンピュータ読み取り可能な媒体に記憶するために、そのコンピュータ読み取り可能なプログラム命令を転送する。
【0076】
動作を実行するためのコンピュータ読み取り可能なプログラムコード/命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン関連命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の配置データ、または、例えばSmalltalk、C++などのオブジェクト指向型プログラミング言語および例えば「C」プログラミング言語または類似なプログラミング言語などの手続き型プログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで書かれたソースコードまたはオブジェクトコードであり得る。コンピュータ読み取り可能なプログラム命令は、完全にユーザのコンピュータで実行されてもよく、部分的にユーザのコンピュータで実行されてもよいし、スタンドアロンソフトウェアパッケージとして、部分的にユーザのコンピュータ上で実行され、部分的にリモートコンピュータで実行されてもよく、または完全にリモートコンピュータまたはサーバで実行されてもよい。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されるか、または(例えば、インターネットサービスプロバイダーが使用されているインターネットを介して)外部のコンピュータに接続され得る。いくつかの実施形態では、例えばプログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)、またはプログラマブルロジックアレイ(PLA)を含む電子回路は、各態様または動作を実行するために、コンピュータ読み取り可能なプログラム命令の状態情報を利用することで電子回路をパーソナライズすることにより、コンピュータ読み取り可能なプログラム命令を実行することができる。
【0077】
これらのコンピュータ読み取り可能なプログラム命令は、マシンを製造するために、汎用コンピュータ、特殊用途コンピュータ、または他のプログラマブルデータ処理装置のプロセッサに提供され、これにより、マシンは製造され得、これによって、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行される命令は、フローチャートおよび/またはブロック図の1つまたは複数のブロックで指定されている機能/動作を実現するための方法を作成することができる。これらのコンピュータ読み取り可能なプログラム命令は、コンピュータ読み取り可能な媒体に記憶され得て、当該ンピュータ読み取り可能な媒体は、特定の方式で動作するようにコンピュータ、プログラムマブルデータ処理装置、および/または他のデバイスに指示することができ、これにより、その中に記憶されている命令を有するコンピュータ読み取り可能な媒体は、製造品を含み、当該製造品には、フローチャートおよび/またはブロック図の1つまたは複数のブロックで指定されている機能/動作の態様を実現する命令が含まれる。
【0078】
コンピュータ読み取り可能なプログラム命令は、また、コンピュータ、他のプログラムマブルデータ処理装置、または他のデバイスにロードされ得、これにより、一連のオペレーションステップは、コンピュータによって実現されるプロセスを作成するめに、コンピュータ、他のプログラムマブル装置、または他のデバイス上で実行され得て、これによって、コンピュータ、または他のプログラムマブル装置、または他のデバイス上で実行される命令は、フローチャートおよび/またはブロック図の1つまたは複数のブロックで指定されている機能/動作を実現する。
【0079】
図面のフローチャートおよびブロック図は、様々な実施形態によるシステム、方法、およびコンピュータ読み取り可能な媒体の可能な実現のアーキテクチャ、機能、および動作を示している。これに関して、フローチャートまたはブロック図における各ブロックは、モジュール、セグメント、またはコードの一部を表すことができ、これは、指定された論理機能(複数)を実現するための1つ以上の実行可能な命令を含む。この方法、コンピュータシステム、およびコンピュータ読み取り可能な媒体は、図に示されているものよりも追加のブロック、より少ないブロック、異なるブロック、または異なる配置のブロックを含み得る。いくつかの代替の実現では、ブロックに示されている機能は、図に示されている以外の順序で発生する場合がある。例えば、連続して示されている2つのブロックは、実際には、同時にまたは実質的に同時に実行されてもよく、または、関連する機能に従って、それらのブロックは、逆の順序で実行されてもよい場合がある。注意すべきものとして、ブロック図および/またはフローチャート図の各ブロック、およびブロック図および/またはフローチャート図のブロックの組み合わせは、特定用途ハードウェアベースのシステムによって実現され得て、当該特定用途ハードウェアベースのシステムは、指定された機能または動作を実行するか、または、特定用途ハードウェアとコンピュータ命令の組み合わせを実行する。
【0080】
本明細書で説明されたシステムおよび/または方法は、異なる形式のハードウェア、ファームウェア、またはハードウェアとソフトウェアの組み合わせで実現され得る、ということが明らかにされている。これらのシステムおよび/または方法を実現するために使用される実際の専用制御ハードウェアまたはソフトウェアコードは、実現を制限するものではない。したがって、システムおよび/または方法の動作および行為は、特定のソフトウェアコードを参照せずに本明細書で説明される。ソフトウェアおよびハードウェアは、本明細書の説明に基づいてシステムおよび/または方法を実現するように設計され得る、ということを理解されたい。
【0081】
本明細書で使用される任意の要素、動作または命令は、そのように明示的に説明されていない限り、重要または不可欠であると解釈されるべきではない。また、本明細書では使用される用語「一」および「1つ」は、1つ以上の項目を含むことを意図しており、「1つ以上」と交換可能に使用され得る。さらに、本明細書で使用される用語「セット」は、1つ以上の項目(例えば、関連項目、非関連項目、関連項目と非関連項目の組み合わせなど)を含むことを意図しており、「1つ以上」と交換可能に使用され得る。1つの項目のみが意図されている場合、用語「1つ」または類似語が使用される。また、本明細書で使用される用語「有する」、「備える」、「含む」などは、オープンアイテムとなることを意図している。さらに、「に基づく」という語句は、特に明記しない限り、「少なくとも部分的に、に基づく」を意味することを意図している。
【0082】
様々な態様および実施形態の説明は、例示の目的で提示されているが、網羅的であることを意図するものではなく、開示された実施形態に限定されることを意図するものでもない。機能の組み合わせが特許請求の範囲に記載されている、および/または明細書に開示されているとしても、これらの組み合わせは、可能な実現の開示を制限することを意図するものではない。実際には、これらの特徴の多くは、特許請求の範囲に具体的に記載されていない、および/または明細書に開示されていない方法で組み合わせることができる。以下にリストされた各従属請求項は、直接に1つの請求項のみに依存する場合があるが、可能な実現の開示には、各従属請求項と請求項セット内の他のすべての請求項との組み合わせが含まれる。説明された実施形態の範囲から逸脱しない場合、多くの修正および変形は、当業者にとって明らかにある。本明細書で使用された用語は、実施形態の原理、市場で発見された技術に対する実際の適用または技術的改善を最良に説明するために、または当業者が本明細書に開示された実施形態を理解できるようにするために選択されたものである。
【符号の説明】
【0083】
10 クラウドコンピューティングノード
54A パーソナルデジタルアシスタント(PDA)またはセルラー電話
54C ラップトップコンピュータ
54B デスクトップコンピュータ
54N 自動車コンピュータシステム
60 ハードウェアおよびソフトウェア層
61 メインフレーム
62 アーキテクチャベースのサーバ
63 サーバ
64 ブレードサーバ
65 記憶デバイス
66 ネットワークとネットワーキングコンポーネント
67 ネットワークアプリケーションサーバソフトウェア
68 データベースソフトウェア
70 仮想化層
71 仮想サーバ
72 仮想ストレージ
73 仮想プライベートネットワークを含む仮想ネットワーク
74 仮想アプリケーションおよびオペレーティングシステム
75 仮想クライアント
80 管理層
81 リソースプロビジョニング
82 計測および定価
83 ユーザポータル
84 サービスレベル管理
85 サービスレベルプロトコル(SLA:Service Level Agreement)の計画および履行(planning and fulfillment)
90 作業負荷層
91 マッピングおよびナビゲーション
92 ソフトウェア開発およびライフサイクル管理
93 仮想教室での授業
94 データ分析処理
95 トランザクション処理
96 ビデオコーディング
100 システム
102 コンピュータ
104 プロセッサ
106 データ記憶デバイス
108 ソフトウェアプログラム
110 ネットワーク
112 データベース
114 サーバコンピュータ
116 ビデオコーディングプログラム
200 平面回転
202 蝶形表現
204 行列表現
300 例示的な線グラフ変換(LGT)
600 クラウドコンピューティング環境
700 セットの機能的抽象化層
800 内部コンポーネント
820 プロセッサ
826 バス
828 オペレーティングシステム
830 記憶デバイス
832 ドライブまたはインタフェース
836 ネットワークアダプタまたはインタフェース
840 デバイスドライバ
900 外部コンポーネント
920 コンピュータディスプレイモニタ
930 キーボード
934 コンピュータマウス
936 携帯型コンピュータ読み取り可能な有形記憶デバイス
【手続補正書】
【提出日】2021-10-19
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
プロセッサが実行することができる、ビデオデータをコーディングするための方法であって、
ビデオデータを受信するステップと、
前記ビデオデータに関連付けられた1つ以上の変換コアを識別するステップであって、前記1つ以上の変換コアには、線グラフ変換(LGT)および離散サイン変換(DST)のうちの1つ以上が含まれるステップと、
前記識別された1つ以上の変換コアに基づいて、前記ビデオデータを復号するステップと、
を含むことを特徴とする方法。
【請求項2】
前記変換コアは、8ビット変換コアおよび10ビット変換コアのうちの1つ以上に対応する、
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記1つ以上の変換コアは、2ポイント変換、4ポイント変換、8ポイント変換、16ポイント変換、32ポイント変換、および64ポイント変換のうちの1つ以上に対応する、
ことを特徴とする請求項2に記載の方法。
【請求項4】
前記8ビット変換コアに対応する前記4ポイント変換は、下記の行列:
{a, b, c, d,
b, d, a, -c,
c, a, -d, b,
d, -c, b, -a}
を含む線グラフ変換であり、ここで、{a、b、c、d}は、{25、71、106、126}に対応する、
ことを特徴とする請求項3に記載の方法。
【請求項5】
前記8ビット変換コアに対応する8ポイント変換は、下記の1つ以上の行列:
{16, 40, 62, 82, 99, 112, 122, 126,
48, 104, 126, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20};
{15, 40, 62, 82, 99, 112, 122, 126,
47, 104, 127, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20};
{15, 40, 62, 82, 99, 112, 122, 126,
48, 103, 127, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20}; および
{15, 40, 62, 82, 99, 112, 122, 126,
48, 104, 127, 108, 55, -16, -82, -121,
77, 126, 68, -48, -123, -93, 16, 112,
101, 96, -57, -122, 2, 123, 54, -99,
118, 24, -125, 14, 121, -50, -106, 82,
124, -62, -62, 124, -62, -62, 124, -62,
112, -118, 71, 8, -83, 121, -104, 41,
71, -98, 115, -119, 110, -88, 57, -20}
を含む線グラフ変換である、
ことを特徴とする請求項3に記載の方法。
【請求項6】
前記8ビット変換コアに対応する16ポイント変換は、下記の行列:
{a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p,
c, f, i, l, o, o, l, i, f, c, 0, -c, -f, -i, -l, -o,
e, j, o, m, h, c, -b, -g, -l, -p, -k, -f, -a, d, i, n,
g, n, l, e, -b, -i, -p, -j, -c, d, k, o, h, a, -f, -m,
i, o, f, -c, -l, -l, -c, f, o, i, 0, -i, -o, -f, c, l,
k, k, 0, -k, -k, 0, k, k, 0, -k, -k, 0, k, k, 0, -k,
m, g, -f, -n, -a, l, h, -e, -o, -b, k, i, -d, -p, -c, j,
o, c, -l, -f, i, i, -f, -l, c, o, 0, -o, -c, l, f, -i,
p, -a, -o, b, n, -c, -m, d, l, -e, -k, f, j, -g, -i, h,
n, -e, -i, j, d, -o, a, m, -f, -h, k, c, -p, b, l, -g,
l, -i, -c, o, -f, -f, o, -c, -i, l, 0, -l, i, c, -o, f,
j, -m, c, g, -p, f, d, -n, i, a, -k, l, -b, -h, o, -e,
h, -p, i, -a, -g, o, -j, b, f, -n, k, -c, -e, m, -l, d,
f, -l, o, -i, c, c, -i, o, -l, f, 0, -f, l, -o, i, -c,
d, -h, l, -p, m, -i, e, -a, -c, g, -k, o, -n, j, -f, b,
b, -d, f, -h, j, -l, n, -p, o, -m, k, -i, g, -e, c, -a,}
を含む線グラフ変換であり、ここで、{a、b、c、d、e、f、g、h、i、j、k、l、m、n、o、p}には、
{12, 24, 36, 47, 57, 69, 78, 87, 94, 103, 109, 115, 118, 123, 125, 126},
{11, 22, 36, 47, 56, 69, 78, 89, 94, 104, 109, 115, 116, 125, 125, 125},および
{12, 22, 34, 47, 58, 68, 79, 89, 95, 102, 109, 114, 117, 123, 126, 126}
のうちの1つ以上が含まれる、
ことを特徴とする請求項3に記載の方法。
【請求項7】
前記10ビット変換コアに対応する4ポイント変換は、下記の行列:
{a, b, c, d,
b, d, a, -c,
c, a, -d, b,
d, -c, b, -a}
を含む線グラフ変換であり、ここで、{a、b、c、d}には、
{198, 570, 849, 1006},
{198, 570, 850, 1004},
{198, 570, 850, 1005},
{198, 570, 850, 1006},
{198, 570, 851, 1004},
{198, 571, 850, 1005},
{198, 571, 851, 1004},
{198, 571, 851, 1005},
{198, 571, 852, 1002},
{198, 571, 852, 1003},
{198, 571, 852, 1004},
{198, 571, 853, 1002},
{199, 569, 849, 1006},
{199, 569, 850, 1005},
{199, 569, 850, 1006},
{199, 569, 851, 1004},
{199, 569, 851, 1005},
{199, 569, 852, 1004},
{199, 570, 850, 1005},
{199, 570, 851, 1004},
{199, 570, 851, 1005},
{199, 570, 852, 1003},
{199, 570, 852, 1004},
{199, 570, 853, 1002},
{199, 570, 853, 1003},
{199, 571, 853, 1002},
{200, 568, 850, 1005},
{200, 568, 850, 1006},
{200, 568, 851, 1005},
{200, 568, 852, 1004},
{200, 569, 851, 1005},
{200, 569, 852, 1003},
{200, 569, 852, 1004},
{200, 569, 853, 1002},
{200, 569, 853, 1003},
{200, 570, 853, 1002},
{200, 570, 853, 1003},
{201, 567, 850, 1006},
{201, 567, 851, 1005},
{201, 567, 851, 1006},
{201, 568, 851, 1005},
{201, 568, 852, 1004},
{201, 568, 852, 1005},
{201, 568, 853, 1002},
{201, 568, 853, 1003},
{201, 568, 853, 1004},
{201, 569, 853, 1003},
{202, 567, 851, 1005},
{202, 567, 851, 1006},
{202, 567, 852, 1004},
{202, 567, 852, 1005},
{202, 567, 853, 1003},
{202, 567, 853, 1004},
{202, 568, 853, 1003}}
のうちの1つ以上が含まれる、
ことを特徴とする請求項3に記載の方法。
【請求項8】
前記10ビット変換コアに対応する8ポイント変換は、下記の1つ以上の行列:
{130, 319, 497, 657, 792 898, 972, 1009, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159};
{130, 320, 497, 657, 792 898, 972, 1008, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159}; および
{130, 320, 497, 657, 792 898, 972, 1009, 382, 832, 1012, 865, 438,
-130, -657, -971, 614, 1010, 545, -386, -987, -746, 131, 897, 808, 770,
-459, -978, 15, 985, 432, -790, 945, 190, -1002, 110, 969, -400, -850,
654, 993, -497, -497, 993, -497, -497, 993, -497, 895, -941, 564, 66,
-666, 968, -835, 327, 566, -786, 920, -951, 878, -707, 458, -159}
を含む線グラフ変換である、
ことを特徴とする請求項3に記載の方法。
【請求項9】
前記10ビット変換コアに対応する16ポイント変換は、下記の行列:
{a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p,
c, f, i, l, o, o, l, i, f, c, 0, -c, -f, -i, -l, -o,
e, j, o, m, h, c, -b, -g, -l, -p, -k, -f, -a, d, i, n,
g, n, l, e, -b, -i, -p, -j, -c, d, k, o, h, a, -f, -m,
i, o, f, -c, -l, -l, -c, f, o, i, 0, -i, -o, -f, c, l,
k, k, 0, -k, -k, 0, k, k, 0, -k, -k, 0, k, k, 0, -k,
m, g, -f, -n, -a, l, h, -e, -o, -b, k, i, -d, -p, -c, j,
o, c, -l, -f, i, i, -f, -l, c, o, 0, -o, -c, l, f, -i,
p, -a, -o, b, n, -c, -m, d, l, -e, -k, f, j, -g, -i, h,
n, -e, -i, j, d, -o, a, m, -f, -h, k, c, -p, b, l, -g,
l, -i, -c, o, -f, -f, o, -c, -i, l, 0, -l, i, c, -o, f,
j, -m, c, g, -p, f, d, -n, i, a, -k, l, -b, -h, o, -e,
h, -p, i, -a, -g, o, -j, b, f, -n, k, -c, -e, m, -l, d,
f, -l, o, -i, c, c, -i, o, -l, f, 0, -f, l, -o, i, -c,
d, -h, l, -p, m, -i, e, -a, -c, g, -k, o, -n, j, -f, b,
b, -d, f, -h, j, -l, n, -p, o, -m, k, -i, g, -e, c, -a,}
を含む線グラフ変換である、
ことを特徴とする請求項3に記載の方法。
【請求項10】
{a、b、c、d、e、f、g、h、i、j、k、l、m、n、o、p}には、
{94,189,283,375,461,544,623,698,764,823,873,917,953,981,998,1005},
{94,189,284,375,460,545,623,698,762,823,873,917,951,982,998,1005},
{94,189,284,375,461,544,622,697,764,823,873,917,953,981,997,1005},
{94,189,284,375,461,544,623,697,764,823,873,917,953,981,998,1005},
{94,190,282,376,461,545,624,698,761,822,873,916,951,980,1000,1006},
{94,190,282,376,461,545,624,698,762,822,873,916,952,980,1000,1006},{94,190,283,375,461,544,623,697,764,823,873,917,954,980,998,1005},
{94,190,283,376,460,546,624,698,760,823,873,917,950,981,1000,1006},
{94,190,283,376,460,546,624,698,761,823,873,917,951,981,1000,1006},
{94,190,284,375,460,545,623,697,762,823,873,917,952,981,998,1005},
{94,190,284,375,460,545,623,698,762,823,873,917,952,982,998,1005},
{94,190,284,375,461,544,622,696,764,823,873,917,954,980,997,1005},
{94,190,284,375,461,545,623,697,762,823,873,917,952,981,998,1006},
{94,190,284,375,461,545,623,697,763,823,873,917,953,981,998,1006},
{94,191,282,376,461,545,624,697,761,822,873,916,952,979,1000,1006},
{94,191,282,376,461,545,624,697,762,822,873,916,953,979,1000,1006},
{94,191,282,376,461,545,624,698,761,822,873,916,952,980,1000,1006},
{94,191,283,375,461,544,623,696,764,823,873,917,955,979,998,1005},
{94,191,283,376,460,546,624,697,760,823,873,917,951,980,1000,1006},
{94,191,283,376,460,546,624,697,761,823,873,917,952,980,1000,1006},
{94,191,283,376,460,546,624,698,760,823,873,917,951,981,1000,1006},
および
{94,191,283,376,461,545,623,697,762,823,873,917,953,980,999,1006}
のうちの1つ以上が含まれる、
ことを特徴とする請求項9に記載の方法。
【請求項11】
ビデオデータをコーディングするためのコンピュータシステムであって、
コンピュータプログラムコードを記憶するように構成された1つ以上のコンピュータ読み取り可能な非一時的記憶媒体と、
前記コンピュータプログラムコードにアクセスして、前記コンピュータプログラムコードによって指示されるように動作するように構成された1つ以上のコンピュータプロセッサと、を含み、
前記コンピュータプログラムコードが前記1つ以上のコンピュータプロセッサによって実行されるとき、請求項1~10のいずれか1項に記載の方法が実現される、
をことを特徴とするコンピュータシステム。
【請求項12】
コンピュータプログラムであって、
前記識別された1つ以上の変換コアに基づいてビデオデータをコーディングするデバイスに、請求項1~10のいずれか1項に記載の方法を実行させる、
ことを特徴とするコンピュータプログラム。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0042
【補正方法】変更
【補正の内容】
【0042】
図5は、例示的な実施形態による、
図1に示されるコンピュータ
およびサーバの内部および外部のコンポーネントのブロック
図500である。
図5は、1つの実現の説明のみを提供し、異なる実施形態が実現され得る環境に関するいかなる制限を意味するものではない、ということを理解されたい。示されている環境に対する多くの変更は、設計および実現の要件に基づいて行われ得る。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0048
【補正方法】変更
【補正の内容】
【0048】
外部コンポーネント900A、Bの各セットには、コンピュータディスプレイモニタ920、キーボード930、およびコンピュータマウス934が含まれる。外部コンポーネント900A、Bには、また、タッチスクリーン、仮想キーボード、タッチパッド、ポインティングデバイス、および他のヒューマンインタフェースデバイスが含まれる。内部コンポーネント900A、Bの各セットには、また、コンピュータディスプレイモニタ920、キーボード930、およびコンピュータマウス934とインタフェースをとるためのデバイスドライバ840含まれる。デバイスドライバ840、R/Wドライブまたはインタフェース832、およびネットワークアダプタまたはインタフェース836には、ハードウェア、および(記憶デバイス830および/またはROM824に記憶されている)ソフトウェアが含まれる。
【国際調査報告】