Інтра-режим відеокодування
Номер патенту: 111510
Опубліковано: 10.05.2016
Автори: Чієнь Вей-Цзюн, Сєрьогін Вадім, Карчєвіч Марта
Формула / Реферат
1. Спосіб кодування відеоданих, який включає етапи, на яких:
визначають інтра-режим для прогнозування поточного блока відеоданих;
визначають найбільш ймовірні режими (МРМ) для прогнозування поточного блока відеоданих,
при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, кодованими перед поточним блоком;
генерують список МРМ на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ;
призначають індекс кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і
кодують дані інтра-режиму поточного блока, у тому числі кодують, коли один з МРМ узгоджується з інтра-режимом для передбачення поточного блока, дані, які представляють індекс МРМ, що узгоджується, в списку, в кодованому бітовому потоці.
2. Спосіб за п. 1, в якому кодування даних інтра-режиму поточного блока включає етапи, на яких,коли один з МРМ не узгоджується з інтра-режимом для передбачення поточного блока:
кодують прапор МРМ, який вказує, що інтра-режим для передбачення поточного блока не є МРМ;
генерують модифікований список інтра-режимів; і
кодують дані, які представляють індекс інтра-режиму поточного блока в модифікованому списку.
3. Спосіб за п. 2, в якому генерування модифікованого списку включає видалення МРМ з модифікованого списку інтра-режимів.
4. Спосіб за п. 2, в якому генерування модифікованого списку включає сортування модифікованого списку інтра-режимів за зростанням згідно з значенням режиму інтра-режимів.
5. Спосіб за п. 1, який додатково включає етап, на якому кодують, перед індексом МРМ, що узгоджується, прапор МРМ, який вказує, що дані, які представляють індекс МРМ, що узгоджується, представлені в кодованому бітовому потоці.
6. Спосіб за п. 1, в якому визначення МРМ включає визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому генерування списку МРМ включає призначення індексу інтра-режиму, пов'язаному з сусіднім зліва відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зверху блоком.
7. Спосіб за п. 1, в якому визначення МРМ включає визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому генерування списку МРМ включає призначення індексу інтра-режиму, пов'язаному з сусіднім зверху блоком, який менше, ніж індекс інтра-режиму, пов'язаного з інтра-режимом, пов'язаним з сусіднім зліва відеоблоком.
8. Спосіб за п. 1, в якому призначення індексу кожному з МРМ включає призначення індексів інтра-режимам сусідніх блоків поточного блока на основі порядку, в якому кодуються сусідні блоки.
9. Спосіб за п. 1, в якому призначення індексу кожному з МРМ включає призначення індексів МРМ на основі статистики, пов'язаної з вірогідністю МРМ, що узгоджується з інтра-режимом, для передбачення поточного блока.
10. Спосіб за п. 1, який додатково включає кодування даних, які представляють порядок, в якому індекси призначаються МРМ.
11. Спосіб за п. 1, в якому МРМ містять більше двох МРМ, зв'язаних з більш ніж двома опорними блоками.
12. Спосіб за п. 1, в якому визначення МРМ для прогнозування поточного блока відеоданих додатково включає етапи, на яких:
ідентифікують один або більше блоків, які не можуть бути використані для посилання під час інтра-кодування; і
призначають зазначеним одному або більше блокам інтра-режим за замовчуванням.
13. Спосіб за п. 12, в якому режимом за замовчуванням є планарний інтра-режим.
14. Спосіб за п. 12, в якому режимом за замовчуванням є інтра-режим DC.
15. Пристрій для кодування відеоданих, який містить:
пам'ять, виконану з можливістю зберігання поточного блока відеоданих; і
один або більше процесорів, виконаних з можливістю:
визначення інтра-режиму для передбачення поточного блока відеоданих;
визначення найбільш ймовірних режимів (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, кодованими перед поточним блоком;
генерування списку МРМ на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ;
призначення індексу кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і
кодування даних інтра-режиму поточного блока, у тому числі кодування, коли один з МРМ узгоджується з інтра-режимом для передбачення поточного блока, даних, які представляють індекс МРМ, що узгоджується, в списку, в кодованому бітовому потоці.
16. Пристрій за п. 15, в якому для кодування даних інтра-режиму поточного блока, коли один з МРМ не узгоджується з інтра-режимом для передбачення поточного блока, згадані один або більше процесорів додатково виконані з можливістю:
кодування прапору МРМ, який вказує, що інтра-режим для передбачення поточного блока не є МРМ;
генерування модифікованого списку інтра-режимів; і
кодування даних, які представляють індекс інтра-режиму поточного блока в модифікованому списку.
17. Пристрій за п. 16, в якому для генерування модифікованого списку згадані один або більше процесорів виконані з можливістю видалення МРМ з модифікованого списку інтра-режимів.
18. Пристрій за п. 16, в якому для генерування модифікованого списку згадані один або більше процесорів виконані з можливістю сортування модифікованого списку інтра-режимів за зростанням згідно зі значенням режиму інтра-режимів.
19. Пристрій за п. 15, причому згадані один або більше процесорів додатково виконані з можливістю кодування, перед індексом МРМ, що узгоджується, прапора МРМ, який вказує, що дані, які представляють індекс МРМ, що узгоджується, представлені в кодованому бітовому потоці.
20. Пристрій за п. 15, в якому для визначення МРМ згадані один або більше процесорів виконані з можливістю визначення інтрарежимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексу інтра-режиму, пов'язаному з сусіднім зліва відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зверху блоком.
21. Пристрій за п. 15, в якому для визначення МРМ один або більше процесорів виконані з можливістю визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексу інтра-режиму, пов'язаному з сусіднім зверху блоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зліва відеоблоком.
22. Пристрій за п. 15, в якому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексів інтра-режимів сусідніх блоків поточного блока на основі порядку, в якому кодуються сусідні блоки.
23. Пристрій за п. 15, в якому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексів МРМ на основі статистики, пов'язаної з вірогідністю МРМ, що узгоджується з інтра-режимом, для передбачення поточного блока.
24. Пристрій за п. 15, в якому згадані один або більше процесорів додатково виконані з можливістю кодування даних, які представляють порядок, в якому індекси призначаються МРМ.
25. Пристрій за п. 15, в якому МРМ містять більше двох МРМ, пов'язаних з більш ніж двома опорними блоками.
26. Пристрій за п. 15, в якому для визначення МРМ для передбачення поточного блока відеоданих згадані один або більше процесорів виконані з можливістю:
ідентифікації одного або більше блоків, які не можуть бути використані для посилання під час інтра-кодування; і
призначення згаданим одному або більше блокам інтра-режиму за замовчуванням.
27. Пристрій за п. 26, в якому режимом за замовчуванням є планарний інтра-режим.
28. Пристрій за п. 26, в якому режимом за замовчуванням є інтра-режим DC.
29. Пристрій за п. 15, який додатково містить камеру, виконану з можливістю захоплення поточного блока, при цьому пристрій містить відеокодер, і при цьому згадані один або більше процесорів додатково виконані з можливістю:
передбачення поточного блока з використанням визначеного інтра-режиму для генерування опорного відеоблока;
визначення залишкового блока, що містить відмінність між опорним блоком і поточним блоком; і
кодування даних, які представляють залишковий блок в кодованому бітовому потоці.
30. Зчитуваний комп'ютером носій даних, що зберігає інструкції, які при їх виконанні змушують один або більше процесорів:
визначати інтра-режим для передбачення поточного блока відеоданих;
визначати найбільш ймовірні режими (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, кодованими перед поточним блоком;
генерувати список МРМ на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ;
призначати індекс кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і
кодувати дані інтра-режиму поточного блока, у тому числі кодувати, коли один з МРМ узгоджується з інтра-режимом для передбачення поточного блока, дані, які представляють індекс МРМ, що узгоджується, в списку, в кодованому бітовому потоці.
31. Зчитуваний комп'ютером носій даних за п. 30, в якому для кодування даних інтра-режиму поточного блока, коли один з МРМ не узгоджується з інтра-режимом для передбачення поточного блока, інструкції змушують згадані один або більше процесорів:
кодувати прапор МРМ, який вказує, що інтра-режим для передбачення поточного блока не є МРМ;
генерувати модифікований список інтра-режимів; і
кодувати дані, які представляють індекс інтра-режиму поточного блока в модифікованому списку.
32. Зчитуваний комп'ютером носій даних за п. 31, в якому для генерування модифікованого списку інструкції змушують згадані один або більше процесорів видаляти МРМ з модифікованого списку інтра-режимів.
33. Зчитуваний комп'ютером носій даних за п. 31, в якому для генерування модифікованого списку інструкції змушують згадані один або більше процесорів сортувати модифікований список інтра-режимів за зростанням згідно зі значенням режиму інтра-режимів.
34. Зчитуваний комп'ютером носій даних за п. 30, який додатково містить інструкції, які при їх виконанні змушують згадані один або більше процесорів кодувати, при цьому перед індексом МРМ, що узгоджується, прапор МРМ, який вказує, що дані, які представляють індекс узгоджується МРМ, представлені в кодованому бітовому потоці.
35. Зчитуваний комп'ютером носій даних за п. 30, в якому для визначення МРМ інструкції змушують згадані один або більше процесорів визначати інтра-режими, пов'язані з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному МРМ інструкції змушують згадані один або більше процесорів призначати індекс інтра-режиму, пов'язаного з сусіднім зліва відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зверху блоком.
36. Зчитуваний комп'ютером носій даних за п. 30, в якому для визначення МРМ інструкції змушують згадані один або більше процесорів визначати інтра-режими, пов'язані з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному з МРМ інструкції змушують згадані один або більше процесорів призначати індекс інтра-режиму, пов'язаному з сусіднім зверху блоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зліва відеоблоком.
37. Пристрій для кодування відеоданих, який містить:
засіб для визначення інтра-режиму для передбачення поточного блока відеоданих;
засіб для визначення найбільш ймовірних режимів (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, кодованими перед поточним блоком;
засіб для генерування списку МРМ на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ;
засіб для призначення індексу кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і
засіб для кодування, коли один з МРМ узгоджується з інтра-режимом для передбачення поточного блока, даних, які представляють індекс МРМ, що узгоджується, в списку, в кодованому бітовому потоці.
38. Спосіб декодування відеоданих, спосіб включає етапи, на яких:
визначають найбільш ймовірні режими (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, декодованими перед поточним блоком;
генерують список визначених МРМ для передбачення поточного блока відеоданих на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ;
призначають індекс кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і
декодують дані інтра-режиму поточного блока, у тому числі декодують, коли один з МРМ узгоджується з інтра-режимом для поточного блока, дані, які представляють індекс МРМ, що узгоджується, в списку, з закодованого бітового потоку;
ідентифікують інтра-режим для передбачення поточного блока з використанням згаданого індексу; і
декодують поточний блок з ідентифікованим інтра-режимом для поточного блока.
39. Спосіб за п. 38, в якому декодування даних інтра-режиму поточного блока включає етапи, на яких, коли один з МРМ не узгоджується з інтра-режимом для передбачення поточного блока:
декодують прапор МРМ, який вказує, що інтра-режим для передбачення поточного блока не є МРМ;
генерують модифікований список інтра-режимів; і
декодують дані, які представляють індекс інтра-режиму поточного блока в модифікованому списку.
40. Спосіб за п. 39, в якому генерування модифікованого списку включає видалення МРМ з модифікованого списку інтра-режимів.
41. Спосіб за п. 39, в якому генерування модифікованого списку включає сортування модифікованого списку інтра-режимів за зростанням згідно зі значенням режиму інтра-режимів.
42. Спосіб за п. 38, в якому визначення МРМ включає визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому призначення індексу кожному з МРМ включає значення індексу інтра-режиму, пов'язаного з сусіднім зліва відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зверху відеоблоком.
43. Спосіб за п. 38, в якому визначення МРМ включає визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому призначення індексу кожному з МРМ включає призначення індексу інтра-режиму, пов'язаного з сусіднім зверху відеоблоком, який менше, ніж індекс одного з інтра-режимів, пов'язаних з сусіднім зліва відеоблоком.
44. Спосіб за п. 38, в якому призначення індексу кожному з МРМ включає призначення індексів інтра-режимам сусідніх блоків поточного блока на основі порядку, в якому декодуються сусідні блоки.
45. Спосіб за п. 38, в якому призначення індексу кожному з МРМ включає призначення індексів МРМ на основі статистики, пов'язаної з вірогідністю МРМ, узгоджується з інтра-режимом, для передбачення поточного блока.
46. Спосіб за п. 38, який додатково включає декодування даних, які представляють порядок, в якому індекси призначаються МРМ.
47. Пристрій для декодування даних, який містить:
пам'ять, виконану з можливістю зберігання поточного блока відеоданих; і
один або більше процесорів, виконаних з можливістю:
визначення найбільш ймовірних режимів (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, декодованими перед поточним блоком;
генерування списку визначених МРМ для передбачення поточного блока відеоданих на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ;
призначення індексу кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і
декодування даних інтра-режиму поточного блока, у тому числі декодування, коли один з МРМ узгоджується з інтра-режимом для поточного блока, даних, які представляють індекс МРМ, що узгоджується, в списку, з закодованого бітового потоку;
ідентифікації інтра-режиму для передбачення поточного блока з використанням згаданого індексу; і
декодування поточного блока з ідентифікованим інтра-режимом для поточного блока.
48. Пристрій за п. 47, в якому для декодування даних інтра-режиму згадані один або більше процесорів додатково виконані з можливістю, коли один з МРМ не узгоджується з інтра-режимом для передбачення поточного блока:
декодування прапора МРМ, який вказує, що інтра-режим для передбачення поточного блока не є МРМ;
генерування модифікованого списку інтра-режимів; і
декодування даних, які представляють індекс інтра-режиму поточного блока в модифікованому списку.
49. Пристрій за п. 48, в якому для генерування модифікованого списку згадані один або більше процесорів виконані з можливістю видалення МРМ з модифікованого списку інтра-режимів.
50. Пристрій за п. 48, в якому для генерування модифікованого списку згадані один або більше процесорів виконані з можливістю сортування модифікованого списку інтра-режимів за зростанням згідно зі значенням режиму інтра-режимів.
51. Пристрій за п. 47, в якому для визначення МРМ згадані один або більше процесорів виконані з можливістю визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексу інтра-режиму, пов'язаному з сусіднім зліва відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зверху.
52. Пристрій за п. 47, в якому для визначення МРМ один або більше процесорів виконані з можливістю визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексу інтра-режиму, пов'язаному з сусіднім зверху блоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зліва.
53. Пристрій за п. 47, в якому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексів інтра-режимам сусідніх блоків поточного блока на основі порядку, в якому декодуються сусідні блоки.
54. Пристрій за п. 47, в якому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексів МРМ на основі статистики, пов'язаної з вірогідністю МРМ, узгоджується з інтра-режимом, для передбачення поточного блока.
55. Пристрій за п. 47, в якому згадані один або більше процесорів додатково виконані з можливістю декодування даних, які представляють порядок, в якому індекси призначаються МРМ.
56. Пристрій за п. 47, в якому пристрій містить відеодекодер, і при цьому для декодування поточного блока згадані один або більше процесорів додатково виконані з можливістю:
отримання, з закодованого бітового потоку, залишкового відеоблока, пов'язаного з поточним блоком;
генерування опорного блока за допомогою передбачення поточного блока з використанням ідентифікованого інтра-режиму для поточного блока;
визначення значень для поточного блока з комбінації опорного блока і прийнятого залишкового відеоблока; і
при цьому пристрій додатково містить пристрій відображення, виконаний з можливістю відображення поточного блока.
57. Зчитуваний комп'ютером носій даних, що зберігає інструкції, які при їх виконанні змушують один або більше процесорів:
визначити найбільш ймовірні режими (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, декодованими перед поточним блоком;
генерувати список визначених МРМ для передбачення поточного блока відеоданих на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ;
призначати індекс кожному з МРМ без пересортовування МРМ в списку на основі індексу режиму МРМ; і
декодувати дані інтра-режиму поточного блока, у тому числі декодувати, коли один з МРМ узгоджується з інтра-режимом для поточного блока, дані, які представляють індекс МРМ, що узгоджується, в списку, з закодованого бітового потоку;
ідентифікації інтра-режиму для передбачення поточного блока з використанням згаданого індексу; і
декодування поточного блока з ідентифікованим інтра-режимом для поточного блока.
58. Зчитуваний комп'ютером носій даних за п. 57, в якому для декодування даних інтра-режиму поточного блока, коли один з МРМ не узгоджується з інтра-режимом для передбачення поточного блока, інструкції додатково змушують згадані один або більше процесорів:
декодувати прапор МРМ, який вказує, що інтра-режим для передбачення поточного блока не є МРМ;
генерувати модифікований список інтра-режимів; і
декодувати дані, які представляють індекс інтра-режиму поточного блока в модифікованому списку.
59. Зчитуваний комп'ютером носій даних за п. 57, в якому для визначення МРМ інструкції змушують згадані один або більше процесорів визначати інтра-режими, пов'язані з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному МРМ інструкції змушують згадані один або більше процесорів призначати індекс інтра-режиму, пов'язаному з сусіднім зверху відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зліва.
60. Зчитуваний комп'ютером носій даних за п. 57, в якому для визначення МРМ інструкції змушують згадані один або більше процесорів визначати інтра-режими, пов'язані з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному з МРМ інструкції змушують згадані один або більше процесорів призначати індекс інтра-режиму, пов'язаному з сусіднім зліва відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зверху.
61. Пристрій для декодування відеоданих, пристрій містить:
засіб для визначення найбільш ймовірних режимів (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, декодованими перед поточним блоком;
засіб для генерування списку визначених МРМ для передбачення поточного блока відеоданих на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ;
засіб для призначення індексу кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і
засіб для декодування, коли один з МРМ узгоджується з інтра-режимом для поточного блока, даних інтра-режиму поточного блока, у тому числі декодування даних, які представляють індекс МРМ, що узгоджується, в списку, з закодованого бітового потоку;
засіб для ідентифікації інтра-режиму для передбачення поточного блока з використанням згаданого індексу; і
засіб для декодування поточного блока з ідентифікованим інтра-режимом для поточного блока.
Текст
Реферат: Винахід стосується способів та пристроїв для кодування і декодування відеоданих. У прикладі може бути визначений інтра-режим для прогнозування поточного блока відеоданих і найбільш імовірних інтра-режимів (МРМ) для прогнозування поточного блока відеоданих. Може бути визначений індекс для кожного з МРМ на основі порядку, в якому інтра-режим для прогнозування поточного блока порівнюється з МРМ. Коли один з МРМ для прогнозування поточного блока співпадає з інтра-режимом для прогнозування поточного блока, сигналізується індекс відповідного МРМ. UA 111510 C2 (12) UA 111510 C2 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 Ця заявка заявляє пріоритет попередньої заявки на патент США № 61/556,029, поданої 4 листопада 2011 року, зміст якої включений в цей документ за посиланням у всій своїй повноті. ГАЛУЗЬ ТЕХНІКИ Розкриття має відношення до відеокодування і, зокрема, до способів та пристрою для кодування і декодування відеоданих. РІВЕНЬ ТЕХНІКИ Можливості цифрового відео можуть бути включені в широкий діапазон пристроїв, в тому числі в цифрові телевізори, системи цифрового прямого мовлення, бездротові системи мовлення, кишенькові персональні комп'ютери (PDA), ноутбуки або настільні комп'ютери, планшетні комп'ютери, пристрої для читання електронних книг, цифрові фотоапарати, пристрої цифрового запису, програвачі цифрових даних, пристрої відеоігор, ігрові приставки, стільникові або супутникові радіотелефони, так звані "смарт-телефони", пристрої організації відеоконференцій, пристрої потокової передачі відеоінформації тощо. Цифрові відеопристрої реалізовують методики стиснення відеоінформації, такі як описані в стандартах MPEG 2, MPEG 4, ITU-T H.263, ITU-T H.264/MPEG-4 Частина 10, вдосконалене відеокодування (AVC), в стандарті високоефективного відеокодування (HEVC), що розробляється в цей час, і в розширеннях таких стандартів. Відеопристрої можуть передавати, приймати, кодувати, декодувати і/або зберігати інформацію цифрового відео більш ефективно за допомогою реалізації таких методик стиснення відеоінформації. Методики стиснення відеоінформації виконують просторове (всередині зображення) прогнозування і/або часове (між зображеннями) прогнозування для зменшення або видалення надмірності, властивої послідовностям відеокадрів. Для основаного на блоках відеокодування відеослайс (тобто, відеозображення або частина відеозображення) може бути розділений на відеоблоки, які можуть також згадуватися як ієрархічні блоки, елементи кодування (CU) і/або вузли кодування. Відеоблоки в інтра-кодованому (I) слайсі зображення кодуються з використанням просторового прогнозування відносно опорних елементів дискретизації в сусідніх блоках в тому самому зображенні. Відеоблоки в інтер-кодованому (Р або В) слайсі зображення можуть використовувати просторове прогнозування відносно опорних елементів дискретизації в сусідніх блоках в одному і тому самому зображенні або часове прогнозування відносно опорних елементів дискретизації в інших опорних зображеннях. Зображення можуть називатися кадрами, і опорні зображення можуть називатися опорними кадрами. Просторове або часове прогнозування дає в результаті блок прогнозування для блока, який повинен бути закодований. Залишкові дані представляють відмінності в пікселях між первинним блоком, який повинен бути закодований, і блоком прогнозування. Інтер-кодований блок кодується відповідно до вектора руху, який вказує блок опорних елементів дискретизації, що формують блок прогнозування, і залишкових даних, що вказують різниці між закодованим блоком і блоком прогнозування. Інтра-кодований блок кодується відповідно до режиму інтракодування і залишкових даних. Для додаткового стиснення залишкові дані можуть бути перетворені з ділянки пікселів у ділянку перетворення, що призводить до залишкових коефіцієнтів перетворення, які потім можуть бути квантовані. Квантовані коефіцієнти перетворення, спочатку розташовані в двомірному масиві, можуть бути проскановані, щоб одержати одномірний вектор коефіцієнтів перетворення, і може бути застосоване ентропійне кодування для досягнення ще більшого стиснення. Аналогом цього винаходу є рішення, розкрите в патентній заявці US 2011/0243229, опублікованій 6 жовтня 2011 року. Зазначене рішення розкриває способи і пристрої для кодування / декодування відеоданих, які охарактеризовані аналогічними ознаками визначення інтра-режиму для передбачення поточного блока відеоданих, визначення найбільш вірогідного режиму для передбачення поточного блока відеоданих, і кодування / декодування даних інтрарежиму поточного блока в кодованому бітовому потоці. При цьому, вищезазначене рішення не розкриває, щонайменше, ознак цього винаходу, що характеризують генерування списку МРМ на основі позиції відповідних блоків відеоданих, пов'язаних з МРМ, і призначення індексу кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ. Завдяки вищевказаним ознаками винаходу, не розкритим в US 2011/0243229, в цьому винаході досягається технічний результат, що полягає у збільшенні обчислювальної ефективності пристрою відеокодування за рахунок зменшення складності процесу кодування (див. другий абзац на сторінці 36 цього опису). СУТЬ ВИНАХОДУ В цілому, це розкриття стосується методик для відеокодування. Методики цього розкриття в цілому стосуються кодування і декодування відеоданих. У деяких прикладах методики стосуються сортування найбільш імовірних режимів інтра-прогнозування (МРМ). Таким чином, 1 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 деякі аспекти цього розкриття стосуються запобігання сортуванню МРМ, що може зменшити складність пристрою відеокодування. Інші аспекти цього розкриття мають відношення до МРМ за умовчанням, порядку визначення МРМ та інших концепцій, що стосується режимів МРМ. В одному прикладі розкриття описує спосіб кодування відеоданих. Спосіб містить етапи, на яких визначають інтра-режим для прогнозування поточного блока відеоданих, визначають найбільш імовірні режими (МРМ) для прогнозування поточного блока відеоданих, визначають індекс для кожного з МРМ на основі порядку, в якому інтра-режим для прогнозування поточного блока порівнюється з MPM, і, коли один з MPM для прогнозування поточного блока співпадає з інтра-режимом для прогнозування поточного блока, сигналізують індекс співпадаючого MPM. В іншому прикладі розкриття описує пристрій для кодування відеоданих, що містить один або більше процесорів, виконаних з можливістю визначати інтра-режим для прогнозування поточного блока відеоданих, визначати MPM для прогнозування поточного блока відеоданих, визначати індекс для кожного з MPM на основі порядку, в якому інтра-режим для прогнозування поточного блока порівнюється з MPM, і, коли один з MPM для прогнозування поточного блока співпадає з інтра-режимом для прогнозування поточного блока, сигналізувати індекс співпадаючого MPM. В іншому прикладі розкриття описує зчитуваний комп'ютером носій. Зчитуваний комп'ютером носій має збережені на ньому інструкції, які при виконанні змушують один або більше процесорів пристрою визначати інтра-режим для прогнозування поточного блока відеоданих, визначати MPM для прогнозування поточного блока відеоданих, визначати індекс для кожного з MPM на основі порядку, в якому інтра-режим для прогнозування поточного блока порівнюється MPM, і, коли один з MPM для прогнозування поточного блока співпадає з інтрарежимом для прогнозування поточного блока, сигналізувати індекс відповідного MPM. В іншому прикладі розкриття описує пристрій для кодування відеоданих, що містить засіб для визначення інтра-режиму для прогнозування поточного блока відеоданих, засіб для визначення MPM для прогнозування поточного блока відеоданих, засіб для визначення індексу для кожного з MPM на основі порядку, в якому інтра-режим для прогнозування поточного блока порівнюється з MPM, і засіб для сигналізації індексу співпадаючого MPM, коли один з MPM для прогнозування поточного блока співпадає з інтра-режимом для прогнозування поточного блока. В іншому прикладі розкриття описує спосіб декодування відеоданих, спосіб містить етапи, на яких, коли інтра-режим для поточного блока містить MPM, формують список MPM для поточного блока відеоданих, при цьому список MPM скомпонований в порядку, в якому інтрарежим для поточного блока відеоданих порівнюється з одним або більше інтра-режимами, зв'язаними з одним або більше опорними блоками відеоданих, визначають індекс MPM, який ідентифікує інтра-режим для поточного блока в списку MPM, ідентифікують інтра-режим для поточного блока з використанням індексу MPM і декодують поточний блок за допомогою ідентифікованого інтра-режиму для поточного блока. В іншому прикладі розкриття описує пристрій, що містить один або більше процесорів, виконаних з можливістю, коли інтра-режим для поточного блока містить MPM, формувати список MPM для поточного блока відеоданих, при цьому список MPM скомпонований в порядку, в якому інтра-режим для поточного блока відеоданих порівнюється з одним або більше інтрарежимами, зв'язаними з одним або більше опорними блоками відеоданих, визначати індекс MPM, який ідентифікує інтра-режим для поточного блока в списку MPM, ідентифікувати інтрарежим для поточного блока з використанням індексу MPM і декодувати поточний блок за допомогою ідентифікованого інтра-режиму для поточного блока. В іншому прикладі розкриття описує зчитуваний комп'ютером носій. Зчитуваний комп'ютером носій має збережені на ньому інструкції, які при виконанні змушують один або більше процесорів пристрою, коли інтра-режим для поточного блока містить MPM, формувати список MPM для поточного блока відеоданих, при цьому список MPM скомпонований в порядку, в якому інтра-режим для поточного блока відеоданих порівнюється з одним або більше інтрарежимами, зв'язаними з одним або більше опорними блоками відеоданих, визначати індекс MPM, який ідентифікує інтра-режим для поточного блока в списку MPM, ідентифікувати інтрарежим для поточного блока з використанням індексу MPM і декодувати поточний блок за допомогою ідентифікованого інтра-режиму для поточного блока. В іншому прикладі розкриття описує пристрій для декодування відеоданих, пристрій містить засіб для формування списку MPM для поточного блока відеоданих, при цьому список MPM скомпонований в порядку, в якому інтра-режим для поточного блока відеоданих порівнюється з одним або більше інтра-режимами, зв'язаними з одним або більше опорними блоками відеоданих, коли інтра-режим для поточного блока містить MPM, засіб для визначення індексу MPM, який ідентифікує інтра-режим для поточного блока в списку MPM, засіб для ідентифікації 2 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 інтра-режиму для поточного блока з використанням індексу MPM і засіб для декодування поточного блока за допомогою ідентифікованого інтра-режиму для поточного блока. Подробиці одного або більше прикладів розкриття викладені на прикладених кресленнях та в описі нижче. Інші ознаки, задачі та переваги будуть зрозумілі з опису, креслень та формули винаходу. КОРОТКИЙ ОПИС КРЕСЛЕНЬ Фіг. 1 - блок-схема, що показує ілюстративну систему кодування і декодування відеоінформації, яка може використовувати методики, описані в цьому розкритті. Фіг. 2 - блок-схема, що показує ілюстративний відеокодер, який може реалізувати методики, описані в цьому розкритті. Фіг. 3 - блок-схема, що показує ілюстративний відеодекодер, який може реалізувати методики, описані в цьому розкритті. Фіг. 4 - блок-схема, що ілюструє блоки відеоданих, які можуть бути розглянуті під час прогнозування інтра-режиму. Фіг. 5 - концептуальна схема, що ілюструє прогнозування інтра-режиму. Фіг. 6 - інша концептуальна схема, що ілюструє прогнозування інтра-режиму. Фіг. 7 - блок-схема, що ілюструє кандидатів найбільш імовірних інтра-режимів, відповідно до аспектів цього розкриття. Фіг. 8 - блок-схема послідовності операцій, що показує ілюстративний спосіб кодування відеоданих відповідно до одного або більше прикладів описаних в цьому розкритті. Фіг. 9 - блок-схема послідовності операцій, що показує ілюстративний спосіб декодування відеоданих відповідно до одного або більше прикладів, описаних в цьому розкритті. Фіг. 10 - блок-схема послідовності операцій, що показує ілюстративний спосіб кодування відеоданих відповідно до одного або більше прикладів, описаних в цьому розкритті. ДОКЛАДНИЙ ОПИС У прикладі аспекти цього розкриття направлені на сортування найбільш імовірних режимів інтра-прогнозування (MPM). Наприклад, відповідно до деяких методик відеокодування, пристрій відеокодування (наприклад, відеокодер або відеодекодер) може сортувати MPM перед визначенням і сигналізацією MPM для поточного кодованого блока. Аспекти цього розкриття стосуються видалення такого сортування, що може зменшити складність пристрою відеокодування. У прикладі відеокодер може формувати список MPM, який включає в себе режими інтрапрогнозування з набору MPM в порядку, в якому MPM з'являються в зображенні або слайсі відеоданих (наприклад, в порядку кодування). В іншому прикладі відеокодер може формувати список MPM в порядку, в якому відеокодер перевіряє, чи є інтра-режим сусіднього блока таким самим, як у поточного кодованого блока (згадується тут як "порядок перевірки"). Відеокодер може сигналізувати MPM відповідно до індексу в сформованому списку і без сортування або перевпорядкування MPM у списку. Відеодекодер може виконати цей самий процес для формування списку MPM, одержання індексу в списку із закодованого бітового потоку і вибору MPM зі списку відповідно до індексу без сортування або перевпорядкування MPM у списку. У прикладі з метою ілюстрації пристрій відеокодування може спочатку перевірити, чи є інтра-режим блока, розташованого зліва від поточного кодованого блока (згадується тут як "сусідній блок зліва"), таким самим, як інтра-режим поточного блока. Потім пристрій відеокодування може перевірити, чи є інтра-режим блока, розташованого зверху від поточного кодованого блока (згадується тут як "сусідній блок зверху"), таким самим, як інтра-режим поточного блока. У цьому прикладі, відповідно до аспектів цього розкриття, інтра-режим сусіднього блока зліва може мати індекс 0 в списку MPM, що підтримуються пристроєм відеокодування, і інтра-режим сусіднього блока зверху може мати індекс 1 в списку. Відповідно до цього відеокодер може сигналізувати індекс інтра-режиму сусіднього блока зліва як 0 та індекс сусіднього блока зверху як 1, незалежно від того, чи є фактичний номер інтра-режиму (наприклад, зумовлений номер режиму, як призначено стандартом відеокодування) сусіднього блока зліва більше, ніж у сусіднього блока зверху. Як альтернатива, якщо пристрій відеокодування перевіряє інтра-режим сусіднього блока зверху перед сусіднім блоком зліва, пристрій відеокодування може сигналізувати індекс сусіднього блока зверху як 0 та індекс сусіднього блока зліва як 1. В будь-якому випадку, відповідно до цих прикладів та аспектів цього розкриття, відеокодер може сигналізувати індекс для інтра-режиму без перевпорядкування або сортування інтра-режимів у списку. У деяких прикладах сортування може бути застосоване для кодування інтра-режиму, якщо інтра-режим не є одним з MPM. Таким чином, відеокодер може відсортувати або іншим чином змінити список інтра-режимів при сигналізації інтра-режиму, який не є режимом MPM. Відповідно до аспектів цього розкриття, порядок, в якому пристрій 3 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 відеокодування перевіряє інтра-режим сусідніх блоків (згадується тут як "порядок перевірки"), може бути неявно одержаним з інтра-режимів відповідно до зібраної статистики інтра-режимів раніше закодованих блоків. В інших прикладах пристрій відеокодування може одержати порядок перевірки на основі доступності сусідніх блоків. В інших прикладах відеокодер може сигналізувати (і відеодекодер може одержати із закодованого бітового потоку) явну вказівку порядку перевірки. Фіг. 1 - є блок-схемою, що показує ілюстративну систему 10 кодування і декодування відеоінформації, яка може використовувати методики, описані в цьому розкритті. Як показано на фіг. 1, система 10 включає в себе пристрій 12 джерела, що формує закодовані відеодані, які повинні бути декодовані пізніше пристроєм 14 адресата. Пристрій 12 джерела і пристрій 14 адресата можуть містити будь-який пристрій з широкого діапазону пристроїв, що включає в себе настільні комп'ютери, ноутбуки (або переносні комп'ютери), планшетні комп'ютери, телеприставки, переносні телефони, такі як так звані "інтелектуальні" телефони (смартфони), так звані "інтелектуальні" клавіатури, телевізори, камери, пристрої відображення, програвачі цифрових даних, консолі відеоігор, пристрій потокової передачі відеоінформації тощо. В деяких випадках пристрій 12 джерела і пристрій 14 адресата можуть бути обладнані бездротовим зв'язком. Пристрій 14 адресата може приймати закодовані відеодані, які повинні бути декодовані, через лінію 16 зв'язку. Лінія 16 зв'язку може містити середовище або пристрій будь-якого типу, здатні до переміщення закодованих відеоданих від пристрою 12 джерела до пристрою 14 адресата. В одному прикладі лінія 16 зв'язку може містити середовище зв'язку, щоб дати можливість пристрою 12 джерела передати закодовані відеодані безпосередньо пристрою 14 адресата в реальному часі. Закодовані відеодані можуть бути модульовані відповідно до стандарту зв'язку, такого як протокол бездротового зв'язку, і передані пристрою 14 адресата. середовище зв'язку може містити будь-яке середовище бездротового або дротового зв'язку, таке як радіочастотний (RF) спектр або одна або більше фізичних ліній передачі. Середовище зв'язку може бути частиною пакетної мережі, такою як локальна мережа, широкомасштабна мережа або глобальна мережа, така як Інтернет. Середовище зв'язку може включати в себе маршрутизатори, перемикачі, базові станції або будь-яке інше обладнання, яке може бути корисним для забезпечення зв'язку від пристрою 12 джерела до пристрою 14 адресата. Як альтернатива, закодовані дані можуть бути видані з вихідного інтерфейсу 22 в пристрій 24 зберігання. Аналогічним чином, до закодованих даних може бути одержаний доступ від пристрою зберігання за допомогою вхідного інтерфейсу. Пристрій зберігання може включати в себе будь-який з ряду розподілених або локально доступних носіїв даних, таких як накопичувач на жорсткому диску, диски Blu-ray, цифрові універсальні диски (DVD), компакт-диски (CD-ROM), флеш-пам'ять, енергозалежна або енергонезалежна пам'ять або будь-які інші підходящі цифрові носії для зберігання закодованих відеоданих. У додатковому прикладі пристрій зберігання може відповідати файловому серверу або іншому проміжному пристрою зберігання, який може зберігати закодовану відеоінформацію, сформовану пристроєм 12 джерела. Пристрій 14 адресата може здійснити доступ до збережених відеоданих від пристрою зберігання через потокову передачу або завантаження. Файловий сервер може являти собою сервер будь-якого типу, здатний зберігати закодовані відеодані і передавати ці закодовані відеодані пристрою 14 адресата. Ілюстративні файлові сервери включають в себе веб-сервер (наприклад, для вебсайта), сервер протоколу передачі файлів (FTP), мережні сховища даних (NAS) або локальний дисковий накопичувач. Пристрій 14 адресата може здійснити доступ до закодованих відеоданих за допомогою будь-якого стандартного з'єднання передачі даних, в тому числі Інтернетз'єднання. Він може включати в себе бездротовий канал (наприклад, з'єднання Wi-Fi), дротове з'єднання (наприклад, DSL, кабельний модем тощо) або їх комбінацію, яка є підходящою для доступу до закодованих відеоданих, збережених на файловому сервері. Передача закодованих відеоданих від пристрою зберігання може являти собою потокову передачу, передачу завантаження або їх комбінацію. Методики цього розкриття не обов'язково обмежені додатками або пристроями бездротового зв'язку. Методики можуть бути застосовані до відеокодування при підтримці будьякого з множини мультимедійних додатків, таких як ефірне телемовлення, передачі кабельного телебачення, передачі супутникового телебачення, передачі потокового відео, наприклад, через Інтернет, кодування цифрового відео для зберігання на носії даних, декодування цифрового відео, збереженого на носії даних, або інших додатків. У деяких прикладах система 10 може бути виконана з можливістю підтримки односторонньої або двосторонньої передачі відеоінформації для підтримки таких додатків, як потокова передача відеоінформації, відтворення відео, відеомовлення і/або відеотелефонія. 4 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 У прикладі на фіг. 1 пристрій 12 джерела включає в себе джерело 18 відеоінформації, відеокодер 20 і вихідний інтерфейс 22. У деяких випадках вихідний інтерфейс 22 може включати в себе модулятор/демодулятор (модем) і/або передавач. У пристрої 12 джерела джерело 18 відеоінформації може включати в себе джерело, таке як пристрій відеозйомки, наприклад, відеокамера, відеоархів, що містить раніше відзняту відеоінформацію, інтерфейс відеоканалу для прийому відеоінформації від провайдера відеоконтенту і/або систему комп'ютерної графіки для формування даних комп'ютерної графіки як відеоінформації джерела або комбінацію таких джерел. Як один приклад, якщо джерело 18 відеоінформації є відеокамерою, пристрій 12 джерела і пристрій 14 адресата можуть формувати так звані телефони з камерою або відеотелефони. Однак методики, описані в цьому розкритті, можуть бути застосовними до відеокодування взагалі і можуть бути застосовані до додатків бездротового і/або дротового зв'язку. Відеоінформація, що знімається, заздалегідь відзнята або сформована за допомогою комп'ютера відеоінформація може бути закодована відеокодером 20. Закодовані відеодані можуть бути передані безпосередньо пристрою 14 адресата через вихідний інтерфейс 22 пристрою 12 джерела. Закодовані відеодані також (або як альтернатива) можуть бути збережені на пристрої 24 зберігання для більш пізнього доступу за допомогою пристрою 14 адресата або інших пристроїв для декодування і/або відтворення. Пристрій 14 адресата включає в себе вхідний інтерфейс 28, відеодекодер 30 і пристрій 32 відображення. У деяких випадках вхідний інтерфейс 28 може включати в себе приймач і/або модем. Вхідний інтерфейс 28 пристрою 14 адресата приймає закодовані відеодані по лінії 16 зв'язку. Закодовані відеодані, передані по лінії 16 зв'язку або забезпечені на пристрої 24 зберігання, можуть включати ряд синтаксичних елементів, сформованих відеокодером 20 для використання відеодекодером, таким як відеодекодер 30, при декодуванні відеоданих. Такі синтаксичні елементи можуть бути включені разом із закодованими відеоданими, що передаються по середовищу зв'язку, збереженими на носії або збереженими на файловому сервері. Пристрій 32 відображення може бути інтегрованим з пристроєм 14 адресата або бути зовнішнім по відношенню до нього. У деяких прикладах пристрій 14 адресата може включати в себе інтегрований пристрій відображення і також може бути виконаний з можливістю взаємодіяти через інтерфейс із зовнішнім пристроєм відображення. В інших прикладах пристрій 14 адресата може бути пристроєм відображення. В цілому, пристрій 32 відображення відображає декодовані відеодані користувачу, і може містити будь-який з ряду пристроїв відображення, таких як рідкокристалічний дисплей (LCD), плазмовий дисплей, органічний світлодіодний (OLED) дисплей або пристрій відображення іншого типу. Відеокодер 20 і відеодекодер 30 можуть працювати відповідно до стандарту стиснення відео, такого як стандарт високоефективного відеокодування (HEVC), що розробляється в цей час, і може відповідати тестовій моделі стандарту HEVC (HM). Як альтернатива відеокодер 20 і відеодекодер 30 можуть працювати відповідно до інших приватних або промислових стандартів, таких як стандарт ITU-T H.264, який інакше називається MPEG 4 частина 10, вдосконалене відеокодування (AVC) або розширення таких стандартів. Однак методики цього розкриття не обмежені яким-небудь конкретним стандартом кодування. Інші приклади стандартів стиснення відео включають в себе MPEG 2 та ITU-T H.263. Хоча це не показано на фіг. 1, в деяких аспектах кожний з відеокодера 20 і відеодекодера 30 може бути інтегрований з аудіокодером і декодером і може включати в себе відповідні модулі мультиплексора-демультиплексора (MUX-DEMUX) або інше апаратне і програмне забезпечення для обробки кодування як аудіоінформації, так і відеоінформації в загальному потоці даних або окремих потоках даних. У відповідних випадках в деяких прикладах модулі мультиплексорадемультиплексора можуть відповідати протоколу мультиплексора ITU H.223 або іншим протоколам, таким як протокол користувацьких датаграм (UDP). Відеокодер 20 і відеодекодер 30 можуть бути реалізовані як будь-яка з ряду підходящих схем кодера, наприклад, один або більше мікропроцесорів, процесорів цифрових сигналів (DSP), спеціалізованих інтегральних схем (ASIC), програмованих користувачем вентильних матриць (FGPA), дискретних логічних схем, програмного забезпечення, апаратних засобів, програмованого обладнання, або будь-якої їх комбінації. Коли методики реалізовані частково в програмному забезпеченні, пристрій може зберігати інструкції для програмного забезпечення у підходящому нечасовому зчитуваному комп'ютером носії і виконувати інструкції в апаратних засобах з використанням одного або більше процесорів, щоб виконати методики цього розкриття. Кожний з відеокодера 20 і відеодекодера 30 може бути включений в один або більше 5 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 кодерів або декодерів, будь-який з яких може бути інтегрований як частина об'єднаного відеокодера/відеодекодера (кодека; CODEC) у відповідному пристрої. Це розкриття може в цілому посилатися на те, що відеокодер 20 "сигналізує" деяку інформацію іншому пристрою, такому як відеодекодер 30. Однак потрібно розуміти, що відеокодер 20 може сигналізувати інформацію за допомогою, прив'язки деяких синтаксичних елементів до різних закодованих слайсів відеоданих. Таким чином, відеокодер 20 може "сигналізувати" дані за допомогою збереження деяких синтаксичних елементів у заголовках різних закодованих слайсів відеоданих. У деяких випадках такі синтаксичні елементи можуть бути закодовані та збережені (наприклад, збережені на носії 34 або файловому сервері 36) перед тим, як вони будуть прийняті та декодовані відеодекодером 30. Таким чином, термін "сигналізація" може в цілому відноситися до передачі синтаксису або інших даних для декодування стиснутих відеоданих, чи відбувається така передача в (майже) реальному часі, або через проміжок часу, як може статися, коли синтаксичні елементи зберігаються на носії під час кодування, і потім вони можуть бути витягнуті пристроєм декодування в будь-який час після збереження на носії. Спільна група з відеокодування (JCT-VC) працює над розробкою стандарту HEVC. Роботи зі стандартизації HEVC основані на моделі пристрою відеокодування, що розвивається, яка називається тестовою моделлю HEVC (HM). Останній робочий проект (WD) стандарту HEVC, який називається в подальшому HEVC WD7, доступний за адресою http://phenix.intevry.fr/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I1003-v5.zip, свіжіша версія доступна за адресою http://phenix.int-evry.fr/jct/doc_end_user/documents/9_Geneva/wgll/JCTVC-I1003-v6.zip, обидва документи тим самим включені за посиланням в цей документ у всій своїй повноті. Модель HM передбачає декілька додаткових можливостей пристроїв відеокодування відносно існуючих пристроїв відповідно до, наприклад, стандарту ITU-T H.264/AVC. Наприклад, тоді як стандарт H.264 забезпечує дев'ять режимів кодування з інтра-прогнозуванням, модель HM може забезпечити цілих тридцять три режими кодування з інтра-прогнозуванням. В цілому робоча модель HM описує, що відеокадр або зображення можуть бути розділені на послідовність ієрархічних блоків або найбільших елементів кодування (елементів LCU), які включають в себе і елементи дискретизації яскравість, і елементи дискретизації кольоровості. Ієрархічний блок має мету, аналогічну макроблоку стандарту H.264. Слайс включає в себе декілька послідовних ієрархічних блоків у порядку кодування. Відеокадр або зображення можуть бути розділені на один або більше слайсів. Кожний ієрархічний блок може бути розбитий на елементи кодування (CU) відповідно до дерева квадрантів. Наприклад, ієрархічний блок як кореневий вузол дерева квадрантів може бути розбитий на чотири дочірніх вузли, і кожний дочірній вузол в свою чергу може бути батьківським вузлом і бути розбитий ще на чотири дочірніх вузли. Заключний, нерозбитий дочірній вузол як листовий вузол дерева квадрантів містить вузол кодування, наприклад, закодований відеоблок. Дані синтаксису, зв'язані із закодованим бітовим потоком, можуть визначати максимальну кількість розбиттів ієрархічного блока, а також можуть визначати мінімальний розмір вузлів кодування. Елемент кодування (CU) включає в себе вузол кодування і елементи прогнозування (PU) і елементи перетворення (TU), зв'язані з вузлом кодування. Розмір CU відповідає розміру вузла кодування і повинен бути квадратним за формою. Розмір CU може знаходитися в діапазоні від 8 × 8 пікселів до розміру ієрархічного блока з максимальним розміром 64 × 64 пікселів або більше. Кожний CU може містити один або більше PU і один або більше TU. Дані синтаксису, зв'язані з CU, можуть описувати, наприклад, розділення CU на один або більше PU. Режими розділення можуть відрізнятися в тому, чи є CU закодованим в режимі пропускання або в прямому режимі, закодованим в режимі інтра-прогнозування, або закодованим в режимі інтер-прогнозування. При розділенні PU можуть бути не квадратними за формою. Дані синтаксису, зв'язані з CU, також можуть описувати, наприклад, розділення CU на один або більше TU відповідно до дерева квадрантів. TU може бути квадратним або не квадратним за формою. Стандарт HEVC враховує перетворення відповідно до TU, які можуть відрізнятися для різних елементів CU. TU звичайно вимірюються на основі розміру PU в межах даного CU, заданого для розділеного LCU, хоча це не завжди може мати місце. TU звичайно мають такий саме або менший розмір, як PU. У деяких прикладах залишкові елементи дискретизації, що відповідають CU, можуть бути поділені на менші елементи з використанням структури дерева квадрантів, відомої як "залишкове дерево квадрантів" (RQT). Листові вузли дерева RQT можуть називатися елементами перетворення (TU). Значення різниці пікселів, зв'язані з TU, можуть бути перетворені для одержання коефіцієнтів перетворення, які можуть бути квантовані. У цілому PU включає в себе дані, що відносяться до процесу прогнозування. Наприклад, коли PU є закодованим в інтра-режимі, PU може включати в себе дані, що описують режим 6 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 інтра-прогнозування для PU. Як інший приклад, коли PU є закодованим в інтер-режим, PU може включати в себе дані, що визначають вектор руху для PU. Дані, що визначають вектор руху для PU, можуть описувати, наприклад, горизонтальну компоненту вектора руху, вертикальну компоненту вектора руху, розрізнення для вектора руху (наприклад, з точністю до чверті пікселя або до однієї восьмої пікселя), опорне зображення, на яке вказує вектор руху, і/або список опорних зображень (наприклад, список 0, список 1 або список С) для вектора руху. У цілому TU використовується для процесів перетворення і квантування. Заданий CU, що має один або більше PU, також може включати в себе один або більше елементів перетворення (TU). Дотримуючись прогнозування, відеокодер 20 може обчислювати залишкові значення, що відповідають елементу PU. Залишкові значення містять значення різниці пікселів, які можуть бути перетворені в коефіцієнти перетворення, квантовані та проскановані з використанням TU, щоб виробити серіалізовані коефіцієнти перетворення для ентропійного кодування. Це розкриття звичайно використовує термін "відеоблок", щоб називати вузол кодування CU. У деяких конкретних випадках це розкриття також може використовувати термін "відеоблок", щоб називати ієрархічний блок, наприклад, LCU або CU, який включає в себе вузол кодування і PU і TU. Послідовність відеокадрів звичайно включає в себе послідовність відеокадрів або зображень. Група зображень (GOP) звичайно містить послідовність з одного або більше відеозображень. Група GOP може включати в себе дані синтаксису в заголовок групи GOP, заголовок одного або більше зображень або інший опис деякого числа зображень, включених в групу GOP. Кожний слайс зображення може включати в себе дані синтаксису слайса, які описують режим кодування для відповідного слайса. Відеокодер 20 звичайно працює над відеоблоками в межах окремого відеослайса, щоб закодувати відеодані. Відеоблок може відповідати вузлу кодування в межах CU. Відеоблоки можуть мати фіксовані або змінні розміри і можуть відрізнятися за розміром відповідно до вказаного стандарту кодування. Як приклад, модель HM підтримує прогнозування з різними розмірами PU. Припускаючи, що розмір конкретного CU становить 2Nx2N, модель HM підтримує інтра-прогнозування з розмірами PU, що становлять 2Nx2N або NxN, і інтер-прогнозування із симетричними розмірами PU, що становлять 2Nx2N, 2NxN, Nx2N або NxN. Модель HM також підтримує асиметричне розділення для інтер-прогнозування з розмірами PU, що становлять 2NxnU, 2NxnD, nLx2N та nRx2N. При асиметричному розділенні один напрямок CU не розділяється, в той час як інший напрямок розділений в пропорції 25 % та 75 %. Частина CU, що відповідає розділу з розміром 25 %, позначена буквою "n", за якою йде показник Up (вгору), Down (вниз), Left (наліво) або Right (направо). Таким чином, наприклад, "2NxnU" вказує на CU з розміром 2Nx2N, який розділений горизонтально з PU з розміром 2Nx0.5 N зверху і PU з розміром 2Nx1.5 N знизу. У цьому розкритті "NxN" та "N на N" можуть використовуватися взаємозамінно для позначення розмірності пікселів відеоблока з точки зору вертикальної та горизонтальної розмірності, наприклад, 16 × 16 пікселів або 16 на 16 пікселів. У загальному випадку блок з розміром 16 × 16 буде мати 16 пікселів у вертикальному напрямку (у=16) і 16 пікселів у горизонтальному напрямку (х=16). Аналогічним чином блок з розміром NxN звичайно має N пікселів у вертикальному напрямку і N пікселів у горизонтальному напрямку, де N представляє ненегативне цілочисельне значення. Пікселі в блоці можуть бути скомпоновані в рядках і стовпцях. Крім того, блоки не обов'язково повинні мати однакову кількість пікселів у горизонтальному напрямку і у вертикальному напрямку. Наприклад, блоки можуть містити NxM пікселів, де M не обов'язково дорівнює N. Після кодування з інтра-прогнозуванням або інтер-прогнозуванням з використанням PU з CU, відеокодер 20 може обчислити залишкові дані для TU з CU. PU можуть містити піксельні дані в просторовій ділянці (яка також називається піксельною ділянкою), і TU можуть містити коефіцієнти в ділянці перетворення після застосування перетворення, наприклад, дискретного косинусного перетворення (DCT), цілочисельного перетворення, вейвлетного перетворення або концептуально подібного перетворення до залишкових відеоданих. Залишкові дані можуть відповідати різницям між пікселями незакодованого зображення і значеннями прогнозування, що відповідають PU. Відеокодер 20 може сформувати TU, що включають в себе залишкові дані для CU, і потім перетворити TU для одержання коефіцієнтів перетворення для CU. Після якого-небудь перетворення для одержання коефіцієнтів перетворення відеокодер 20 може виконати квантування коефіцієнтів перетворення. Квантуванням звичайно називається процес, в якому коефіцієнти перетворення квантуються для можливого зменшення обсягу даних, що використовуються для представлення коефіцієнтів, забезпечуючи додаткове стиснення. Процес квантування може зменшити бітову глибину, зв'язану з деякими або всіма 7 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 коефіцієнтами. Наприклад, під час квантування n-бітове значення може бути округлене в менший бік до m-бітового значення, де n більше m. У деяких прикладах відеокодер 20 може використовувати зумовлений порядок сканування для сканування квантованих коефіцієнтів перетворення для одержання серіалізованого вектора, який може бути ентропійно закодований. В інших прикладах відеокодер 20 може виконати адаптивне сканування. Після сканування квантованих коефіцієнтів перетворення для формування одномірного вектора відеокодер 20, може ентропійно закодувати одномірний вектор, наприклад, відповідно до контекстно-адаптивного кодування із змінною довжиною слова (CAVLC), контекстно-адаптивного двійкового арифметичного кодування (CABAC), основаного на синтаксисі контекстно-адаптивного двійкового арифметичного кодування (SBAC), ентропійного кодування з розділенням на інтервали імовірності (PIPE) або іншої методології ентропійного кодування. Відеокодер 20 також може виконувати ентропійне кодування синтаксичних елементів, зв'язаних із закодованими відеоданими, для використання відеодекодером 30 при декодуванні відеоданих. Для виконання CABAC відеокодер 20 може привласнити контекст в межах контекстної моделі символу, який повинен бути переданий. Контекст може відноситься, наприклад, до того, чи є сусідні значення символу ненульовими. Для виконання CAVLC відеокодер 20 може вибрати нерівномірний код для символу, який повинен бути переданий. Кодові слова при кодуванні із змінною довжиною слова (VLC) можуть бути створені так, що відносно більш короткі коди відповідають більш імовірним символам, в той час як більш довгі коди відповідають менш імовірним символам. Таким чином, використання кодування VLC може досягнути економії бітів, наприклад, з використанням кодових слів рівної довжини для кожного символу, який повинен бути переданий. Визначення імовірності може бути основане на контексті, привласненому символу. У деяких прикладах відеокодер 20 і/або відеодекодер 30 можуть ідентифікувати так званий "найбільш імовірний" режим інтра-прогнозування під час кодування з інтра-прогнозуванням. Таким чином, наприклад, відеокодер 20 і/або відеодекодер 30 можуть ідентифікувати режим інтра-прогнозування раніше закодованих блоків, які межують з поточним кодованим блоком (які називаються "опорними блоками"), і порівнює такі режими інтра-прогнозування з режимом інтрапрогнозування для поточного кодованого блока (який називається "поточним блоком"). Інтрарежими таких опорних блоків можуть мати відносно високу імовірність того, щоб вони є такими самими або аналогічними для поточного блока внаслідок просторової близькості сусідніх блоків до поточного блока. Як описано більш детально нижче, режим інтра-прогнозування декількох опорних блоків може бути розглянутий при ідентифікації MPM. Крім того, відповідно до деяких прикладів відеокодер 20 і/або відеодекодер 30 можуть сигналізувати індекс, який ідентифікує MPM. Таким чином, кожний інтра-режим може мати зв'язаний (вихідний) індекс інтра-режиму, який ідентифікує інтра-режим як один з множини можливих інтра-режимів, як визначено відповідно до стандарту кодування. Наприклад, запропонований стандарт HEVC може підтримувати до 35 інтра-режимів, і кожному інтрарежиму привласнене значення індексу (наприклад, значення індексу в пошуковій таблиці), яке може використовуватися для ідентифікації інтра-режимів. Відповідно до деяких стандартів відеокодування відеокодер 20 і/або відеодекодер 30 можуть сортувати MPM відповідно до значень вихідних індексів інтра-режимів. Тоді відеокодер 20 і/або відеодекодер 30 можуть привласнити нове значення індексу "0" інтра-режиму, що має менший вихідний індекс інтра-режиму (наприклад, більш низьке значення вихідного індексу), значення індексу "1" інтра-режиму, що має наступне більше значення вихідного індексу інтрарежиму (наприклад, більш високе значення вихідного індексу інтра-режиму), і так далі. Таким чином, відеокодер 20 може сигналізувати (і відеодекодер 30 може одержати із закодованого бітового потоку) MPM з використанням меншої кількості бітів, ніж при відправці фактичного індексу інтра-режиму. Однак, незважаючи на поліпшення, що досягаються за допомогою вказівки інтра-режиму з використанням MPM, сортування інтра-режимів може додати обчислювальну складність до процесу кодування. Відповідно до аспектів цього розкриття, замість того, щоб сортувати MPM на основі значень індексів MPM, відеокодер 20 і/або відеодекодер 30 можуть сформувати список MPM, який не вимагає сортування. Таким чином, наприклад, відеокодер 20 і/або відеодекодер 30 можуть привласнити значення індексів режимам MPM в порядку, в якому MPM порівнюються з інтрарежимом поточного блока. В інших прикладах відеокодер 20 і/або відеодекодер 30 можуть привласнити значення індексів відповідно до порядку, в якому закодовані MPM. Таким чином, якщо закодований інтра-режим дорівнює одному з MPM, MPM не повинні сортуватися відповідно до їх значення вихідного індексу інтра-режиму, і складність пристрою відеокодування 8 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 може бути зменшена. У деяких прикладах сортування інтра-режиму може бути застосоване для кодування інтра-режиму, якщо інтра-режим не дорівнює одному з MPM. У деяких прикладах відеокодер 20 визначає інтра-режим для прогнозування поточного блока відеоданих, визначає MPM для прогнозування поточного блока відеоданих, порівнює інтра-режим з кожним з MPM в порядку порівняння, визначає індекс для кожного з MPM на основі порядку порівняння і сигналізує індекс MPM, який відповідає інтра-режиму для прогнозування поточного блока даних, в бітовому потоці. Додатково в прикладі відеокодер 20 може сигналізувати сформований список MPM в порядку порівняння. Відеокодер 20 також може визначити індекс для кожного з MPM, привласнюючи значення індексів кожному з MPM у списку в порядку зростання. В іншому прикладі відеокодер 20 може сигналізувати прапор MPM перед індексом MPM, щоб вказати, що був просигналізований індекс MPM. MPM можуть бути зв'язані із сусіднім відеоблоком зліва від поточного блока і сусіднім відеоблоком зверху від поточного блока, і порядок порівняння може містити порівняння інтрарежиму, зв'язаного із сусіднім відеоблоком зліва, перед порівнянням сусіднього блока зверху. MPM можуть бути зв'язані із сусіднім відеоблоком зліва від поточного блока і сусіднім відеоблоком зверху від поточного блока, і порядок порівняння може містити порівняння інтрарежиму, зв'язаного із сусіднім блоком зверху, перед порівнянням інтра-режиму, зв'язаного із сусіднім відеоблоком зліва. В іншому прикладі відеодекодер 30 може формувати список MPM для поточного блока відеоданих. Тоді список MPM може бути скомпонований в порядку порівняння. Цей порядок порівняння може вказувати порядок, в якому інтра-режим для поточного блока відеоданих порівнюється з одним або більше інтра-режимами, зв'язаними з одним або більше опорними блоками відеоданих під час кодування поточного блока відеоданих. Відеодекодер 30 може визначити індекс MPM, який ідентифікує інтра-режим для поточного блока в списку MPM. Потім відеодекодер 30 може ідентифікувати інтра-режим для поточного блока з використанням індексу MPM і декодувати поточний блок за допомогою ідентифікованого інтра-режиму для поточного блока. У прикладі більш ніж два опорних блоки включають в себе один або більше блоків, які розташовані зверху від поточного блока і межують з поточним блоком. Більш ніж два опорних блоки можуть включати в себе один або більше блоків, які розташовані зліва від поточного відеоблока і межують з поточним блоком. У прикладі список MPM може бути скомпонований в порядку порівняння, який вказує порядок, в якому інтра-режим для поточного блока відеоданих порівнюється з одним або більше інтра-режимами, зв'язаними з одним або більше опорними блоками відеоданих під час кодування поточного блока відеоданих. В іншому прикладі MPM можуть бути зв'язані із сусіднім відеоблоком зліва від поточного блока і сусіднім відеоблоком зверху від поточного блока, і порядок порівняння може включати в себе порівняння інтра-режиму, зв'язаного із сусіднім блоком зліва, перед порівнянням інтрарежиму, зв'язаного із сусіднім блоком зверху. У додатковому прикладі MPM можуть бути зв'язані із сусіднім відеоблоком зліва від поточного блока і сусіднім відеоблоком зверху від поточного блока, і порядок порівняння містить порівняння інтра-режиму, зв'язаного із сусіднім блоком зверху, перед порівнянням інтра-режиму, зв'язаного із сусіднім відеоблоком зліва. Деякі аспекти цього розкриття стосуються привласнення режиму за умовчанням у випадках, в яких або блок А, або блок В не доступний для кодування в інтра-режимі. Наприклад, пристрій відеокодування, такий як відеокодер 20 або відеодекодер 30, може ідентифікувати поточний блок відеоданих. Пристрій кодування може зробити визначення відносно того, чи є блок недоступним для використання як опорних блоків для визначення MPM для поточного блока відеоданих. Пристрій відеокодування може привласнити інтра-режим за умовчанням будь-якому блока, який не доступний для використання як опорний блок. У деяких прикладах інтра-режим за умовчанням може бути планарним режимом, режимом DC тощо. Пристрій кодування може визначити інтра-режим для поточного блока відеоданих на основі інтра-режимів одного або більше блоків відеоданих. Додатково пристрій кодування може закодувати поточний блок з використанням визначеного інтра-режиму. Фіг. 2 є блок-схемою, що показує ілюстративний відеокодер 20, який може реалізувати методики, описані в цьому розкритті. Відеокодер 20 може виконувати інтра- та інтер-кодування відеоблоків у межах відеослайса. Інтра-кодування покладається на просторове прогнозування для зменшення або видалення просторової надмірності у відеоінформації в межах даного відеокадру або зображення. Інтер-кодування покладається на часове прогнозування для зменшення або видалення часової надмірності у відеоінформації в межах суміжних кадрів або зображень в послідовності відеокадрів. Інтра-режимом (I-режимом) може називатися будь-який 9 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 з декількох основаних на просторовій надмірності режимів стиснення. Інтер-режимами, такими як однонаправлене прогнозування (Р-режим) або прогнозування за двома зображеннями (Врежим), можуть називатися будь-які з декількох основаних на часовій надмірності режимів стиснення. У прикладі на фіг. 2 відеокодер 20 включає в себе модуль 35 розділення, модуль 41 прогнозування, пам'ять 64 опорних зображень, суматор 50, модуль 52 обробки перетворення, модуль 54 квантування і модуль 56 ентропійного кодування. Модуль 41 прогнозування включає в себе модуль 42 оцінки руху, модуль 44 компенсації руху і модуль 46 інтра-прогнозування. Для відтворення відеоблока відеокодер 20 також включає в себе модуль 58 оберненого квантування, модуль 60 оберненого перетворення і суматор 62. Фільтр видалення блочності (не показаний на фіг. 2) також може бути включений в склад для фільтрації меж блока, щоб видаляти артефакти блочності з відтвореної відеоінформації. Фільтр видалення блочності звичайно фільтрує вивід суматора 62. Додаткові контурні фільтри (в циклі або після циклу) також можуть використовуватися додатково до фільтра видалення блочності. Як показано на фіг. 2, відеокодер 20 приймає відеодані, і модуль 35 розділення розділяє дані на відеоблоки. Це розділення також може включати в себе розділення на слайси, елементи мозаїчного зображення або інші великі блоки, а також розділення відеоблоків, наприклад, згідно із структурою дерева квадрантів LCU та CU. Відеокодер 20 звичайно ілюструє компоненти, які кодують відеоблоки в межах відео слайса, який повинен бути закодований. В цілому, слайс може бути розділений на декілька відеоблоків (і, можливо, на набори відеоблоків, які називаються елементами мозаїчного зображення). Модуль 41 прогнозування може вибрати один з множини можливих режимів кодування, таких як один з множини режимів інтра-кодування або один з множини режимів інтер-кодування, для поточного відеоблока на основі результатів похибок (наприклад, швидкості кодування і рівня спотворення). Модуль 41 прогнозування може забезпечити одержаний в результаті інтраабо інтер-кодований блок суматору 50 для формування залишкових даних блока і суматору 62 для відтворення закодованого блока для використання як опорного зображення. Модуль 42 оцінки руху і модуль 44 компенсації руху в модулі 41 прогнозування виконують кодування з інтер-прогнозуванням поточного відеоблока відносно одного або більше блоків прогнозування в одному або більше опорних зображеннях для забезпечення часового стиснення. Модуль 42 оцінки руху може бути виконаний з можливістю визначати режим інтерпрогнозування для відеослайса згідно із зумовленим шаблоном для послідовності відеокадрів. Зумовлений шаблон може призначити відеослайс у послідовності як Р-слайс, В-слайс або GPBслайс. Модуль 42 оцінки руху і модуль 44 компенсації руху можуть бути значною мірою інтегровані, але проілюстровані окремо в концептуальних цілях. Оцінка руху, що виконується модулем 42 оцінки руху, є процесом формування векторів руху, які оцінюють рух для відеоблоків. Вектор руху, наприклад, може вказувати зміщення PU відеоблока в межах поточного відеокадру або зображення відносно блока прогнозування в межах опорного зображення. Блок прогнозування являє собою блок, який виявляється близько порівнянним з PU відеоблока, який повинен бути закодований, з точки зору відмінності пікселів, що може бути визначено за допомогою суми абсолютних різниць (SAD), суми різниць квадратів (SSD) або інших метрик відмінності. У деяких прикладах відеокодер 20 може обчислити значення для дробових позицій пікселя опорних зображень, збережених в пам'яті 64 опорних зображень. Наприклад, відеокодер 20 може інтерполювати значення позицій однієї чверті пікселя, позицій однієї восьмої пікселя або інших дробових позицій пікселя опорного зображення. Таким чином, модуль 42 оцінки руху може виконати пошук руху відносно позицій цілих пікселів і позицій дробових пікселів і видати вектор руху з точністю до дробового пікселя. Модуль 42 оцінки руху обчислює вектор руху для PU відеоблока в інтер-кодованому слайсі, порівнюючи позицію PU з позицією блока прогнозування опорного зображення. Опорне зображення може бути вибране з першого списку опорних зображень (список 0) або другого списку опорних зображень (список 1), кожний з яких ідентифікує одне або більше опорних зображень, збережених в пам'яті 64 опорних зображень. Модуль 42 оцінки руху відправляє обчислений вектор руху модулю 56 ентропійного кодування і модулю 44 компенсації руху. Компенсація руху, що виконується модулем 44 компенсації руху, може включати в себе вибірку або формування блока прогнозування на основі вектора руху, визначеного за допомогою оцінки руху, можливо, з виконанням інтерполяції до субпіксельної точності. Після прийому вектора руху для PU поточного відеоблока модуль 44 компенсації руху може визначити місцеположення блока прогнозування, на який вказує вектор руху, в одному зі списків опорних зображень. Відеокодер 20 формує залишковий відеоблок, віднімаючи піксельні значення блока 10 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 прогнозування з піксельних значень поточного закодованого відеоблока, формуючи значення різниці пікселів. Значення різниці пікселів утворюють залишкові дані для блока і можуть включати в себе і компоненти різниці і яскравості, і кольоровості. Суматор 50 являє собою компонент або компоненти, які виконують цю операцію віднімання. Модуль 44 компенсації руху також може формувати синтаксичні елементи, зв'язані з відеоблоками і відеослайсами, для використання відеодекодером 30 при декодуванні відеоблоків відеослайса. Модуль 46 інтра-прогнозування в модулі 41 прогнозування може виконувати кодування з інтра-прогнозуванням поточного відеоблока відносно одного або більше сусідніх блоків у тому самому зображенні або слайсі, де знаходиться поточний блок, який повинен бути закодований, щоб забезпечити просторове стиснення. Відповідно до цього модуль 46 інтра-прогнозування може виконати інтра-прогнозування поточного блока як альтернативу інтер-прогнозуванню, що виконується модулем 42 оцінки руху і модулем 44 компенсації руху, як описано вище. Зокрема, модуль 46 інтра-прогнозування може визначити режим інтра-прогнозування для використання, щоб закодувати поточний блок. У деяких прикладах модуль 46 інтра-прогнозування може закодувати поточний блок з використанням різних режимів інтра-прогнозування, наприклад, під час окремих проходів кодування, і модуль 46 інтра-прогнозування (або модуль 40 вибору режиму в деяких прикладах) може вибрати підходящий режим інтра-прогнозування для використання з протестованих режимів. Наприклад, модуль 46 інтра-прогнозування може обчислити значення залежності спотворень від швидкості передачі з використанням аналізу залежності спотворень від швидкості передачі для різних протестованих режимів інтра-прогнозування і вибрати режим інтра-прогнозування, що має найкращі характеристики залежності спотворень від швидкості передачі серед протестованих режимів. Аналіз залежності спотворень від швидкості передачі звичайно визначає величину спотворення (або похибку) між закодованим блоком і первинним незакодованим блоком, який був закодований для одержання закодованого блока, а також швидкість проходження бітів (тобто, кількість бітів), використану для одержання закодованого блока. Модуль 46 інтра-прогнозування може обчислити відношення спотворень і швидкостей для різних закодованих блоків, щоб визначити, який режим інтра-прогнозування показує найкраще значення залежності спотворень від швидкості передачі для блока. Згідно із запропонованим стандартом HEVC може бути до 35 режимів інтра-прогнозування, і кожний режим інтра-прогнозування може відповідати індексу. Аспекти цього розкриття в цілому стосуються інтра-кодування. Також деякі методики цього розкриття можуть бути виконані за допомогою модуля 46 інтра-прогнозування. Таким чином, наприклад, модуль 46 інтра-прогнозування може виконати методики цього розкриття, описані з посиланням на фіг. 4-10 нижче. В інших прикладах один або більше інших блоків відеокодера 20 додатково або як альтернатива можуть бути відповідальними за виконання методик цього розкриття. Наприклад, модуль 46 інтра-прогнозування може визначити інтра-режим для поточного кодованого блока (наприклад, відповідно до аналізу залежності спотворень від швидкості передачі, як описано вище). Модуль 46 інтра-прогнозування також може визначити режим інтрапрогнозування одного або більше раніше закодованих блоків (які називаються MPM), які межують з блоком, поточного інтра-кодованого блока. Модуль 46 інтра-прогнозування може вказати визначений інтра-режим для поточного блока на основі визначених інтра-режимів сусідніх блоків, наприклад, за допомогою порівняння MPM з інтра-режимом для поточного блока, як описано більш детально нижче. Відповідно до аспектів цього розкриття модуль 46 інтра-прогнозування може формувати список MPM в порядку, в якому MPM порівнюються з інтра-режимом поточного блока. Потім модуль 46 інтра-прогнозування може привласнити значення індексів режимам MPM в порядку, в якому MPM порівнюються з інтра-режимом поточного блока. Таким чином, модуль 46 інтрапрогнозування може вказати конкретний MPM без сортування MPM відповідно до їх значення вихідного індексу інтра-режиму (наприклад, відповідно до стандарту відеокодування). Після того, як модуль 41 прогнозування формує блок прогнозування для поточного відеоблока або через інтер-прогнозування, або через інтра-прогнозування, відеокодер 20 формує залишковий відеоблок, віднімаючи блок прогнозування з поточного відеоблока. Залишкові відеодані в залишковому блоці можуть бути включені в один або більше TU і застосовані до модуля 52 обробки перетворення. Модуль 52 обробки перетворення перетворює залишкові відеодані в залишкові коефіцієнти перетворення, використовуючи перетворення, таке як дискретне косинусне перетворення (DCT) або концептуально подібне перетворення. Модуль 52 обробки перетворення може перетворити залишкові відеодані з ділянки пікселів у ділянку перетворення, наприклад, в частотну ділянку. 11 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 Модуль 52 обробки перетворення може відправити одержані в результаті коефіцієнти перетворення модулю 54 квантування. Модуль 54 квантування квантує коефіцієнти перетворення для додаткового зменшення швидкості проходження бітів. Процес квантування може зменшити бітову глибину, зв'язану з деякими або усіма коефіцієнтами. Ступінь квантування може бути змінений за допомогою коректування параметра квантування. У деяких прикладах модуль 54 квантування потім може виконати сканування матриці, що включає в себе квантовані коефіцієнти перетворення. Як альтернатива сканування може виконати модуль 56 ентропійного кодування. Після квантування модуль 56 ентропійного кодування виконує ентропійне кодування коефіцієнтів перетворення. Наприклад, модуль 56 ентропійного кодування може виконати контекстно-адаптивне кодування із змінною довжиною слова (CAVLC), контекстно-адаптивне двійкове арифметичне кодування (CABAC), основане на синтаксисі контекстно-адаптивне двійкове арифметичне кодування (SBAC), ентропійне кодування з розділенням на інтервали імовірності (PIPE) або іншу методику ентропійного кодування. Модуль 56 ентропійного кодування також може виконати ентропійне кодування векторів руху та інших синтаксичних елементів для поточного кодованого відеослайса. Після ентропійного кодування за допомогою модуля 56 ентропійного кодування закодований бітовий потік може бути переданий іншому пристрою (наприклад, відеодекодеру 30) або архівований для більш пізньої передачі або витягання. Модуль 56 ентропійного кодування може закодувати інформацію, що вказує вибраний режим інтра-прогнозування, відповідно до методик цього розкриття. Відеокодер 20 може включати в бітовий потік, що передається, дані конфігурації, які можуть включати в себе множину таблиць індексів режимів інтра-прогнозування і множину модифікованих таблиць індексів режимів інтра-прогнозування (які також називаються таблицями відображення кодових слів), визначення контекстів кодування для різних блоків і показники відносно MPM, таблицю індексів режимів інтра-прогнозування і модифіковану таблицю індексів режимів інтрапрогнозування для використання для кожного з контекстів. Модуль 58 оберненого квантування і модуль 60 оберненого перетворення застосовують обернене квантування та обернене перетворення, відповідно, щоб відтворити залишковий блок в ділянці пікселів для більш пізнього використання як опорний блок опорного зображення. Модуль 44 компенсації руху може обчислити опорний блок, додаючи залишковий блок до блока прогнозування одного з опорних зображень в межах одного зі списків опорних зображень. Модуль 44 компенсації руху також може застосувати один або більше фільтрів інтерполяції до відтвореного залишкового блока для обчислення дробових піксельних значень для використання при оцінці руху. Суматор 62 додає відтворений залишковий блок до блока прогнозування з компенсацією руху, зробленого модулем 44 компенсації руху, щоб одержати опорний блок для зберігання в пам'яті 64 опорних зображень. Опорний блок може використовуватися модулем 42 оцінки руху і модулем 44 компенсації руху як опорний блок для інтер-прогнозування блока в подальшому відеокадрі або зображенні. Фіг. 3 є блок-схемою, що показує ілюстративний відеодекодер 30, який може реалізувати методики, описані в цьому розкритті. У прикладі на фіг. 3 відеодекодер 30 включає в себе модуль 80 ентропійного декодування, модуль 81 прогнозування, модуль 86 оберненого квантування, модуль 88 оберненого перетворення, суматор 90 і пам'ять 92 опорних зображень. Модуль 81 прогнозування включає в себе модуль 82 компенсації руху і модуль 84 інтрапрогнозування. Відеодекодер 30 в деяких прикладах може виконувати прохід декодування в цілому як обернений по відношенню до проходу кодування, описаного відносно відеокодера 20 на фіг. 2. Під час процесу декодування відеодекодер 30 приймає від відеокодера 20 закодований бітовий потік відео, який представляє відеоблоки закодованого відеослайса і зв'язані синтаксичні елементи. Модуль 80 ентропійного декодування відеодекодера 30 виконує ентропійне декодування бітового потоку для формування квантованих коефіцієнтів, векторів руху та інших синтаксичних елементів. Модуль 80 ентропійного декодування перенаправляє вектори руху та інші синтаксичні елементи модулю 81 прогнозування. Відеодекодер 30 може прийняти синтаксичні елементи на рівні відеослайса і/або рівні відеоблока. Коли відеослайс закодований як інтра-кодований (I) слайс, модуль 84 інтра-прогнозування модуля 81 прогнозування може сформувати дані прогнозування для відеоблока поточного відеослайса на основі просигналізованого режиму інтра-прогнозування і даних з раніше декодованих блоків поточного кадру або зображення. Як відмічено вище, аспекти цього розкриття в цілому стосуються інтра-кодування. Таким чином, деякі методики цього розкриття можуть бути виконані модулем 84 інтра-прогнозування. 12 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 Таким чином, наприклад, модуль 84 інтра-прогнозування може виконати методики цього розкриття, описані з посиланням на фіг. 4-7 нижче. В інших прикладах один або більше інших блоків відеодекодера 30 додатково або як альтернатива можуть бути відповідальними за виконання методик цього розкриття. Наприклад, модуль 84 інтра-прогнозування може одержати індекс в списку MPM для декодування поточного блока відеоданих з модуля 80 ентропійного декодування. Модуль 84 інтра-прогнозування може сформувати список, якому належить індекс, за допомогою включення MPM в список таким самим чином, як відеокодер 20, в порядку, в якому MPM порівнюються з інтра-режимом поточного блока. Потім модуль 84 інтра-прогнозування може визначити підходящий інтра-режим для декодування поточного блока відеоданих на основі одержаного індексу. Таким чином, модуль 84 інтра-прогнозування може визначити підходящий MPM для декодування поточного блока без сортування MPM відповідно до їх значення вихідного індексу інтра-режиму (наприклад, відповідно до стандарту відеокодування). Коли відеозображення закодоване як інтер-кодований (наприклад, В, Р або GPB) слайс, модуль 82 компенсації руху модуля 81 прогнозування виробляє блоки прогнозування для відеоблока поточного відеослайса на основі векторів руху та інших синтаксичних елементів, прийнятих від модуля 80 ентропійного декодування. Блоки прогнозування можуть бути зроблені з одного з опорних зображень в межах одного зі списків опорних зображень. Відеодекодер 30 може створити списки опорних зображень, список 0 і список 1, з використанням методики побудови за умовчанням на основі опорних зображень, збережених в пам'яті 92 опорних зображень. Модуль 82 компенсації руху визначає інформацію прогнозування для відеоблока поточного відеослайса, аналізуючи вектори руху та інші синтаксичні елементи, і використовує інформацію прогнозування, щоб виробити блоки прогнозування для поточного декодованого відеоблока. Наприклад, модуль 82 компенсації руху використовує деякі з прийнятих синтаксичних елементів для визначення режиму прогнозування (наприклад, інтра- або інтер-прогнозування), використаного для кодування відеоблоків відеослайса, типу слайса інтер-прогнозування (наприклад, слайс В, слайс Р або слайс GPB), інформації побудови для одного або більше списків опорних зображень для слайса, векторів руху для кожного інтер-кодованого відеоблока слайса, статусу інтер-прогнозування для кожного інтер-кодованого відеоблока слайса та іншої інформації, щоб декодувати відеоблоки в поточному відеослайсі. Модуль 82 компенсації руху також може виконати інтерполяцію на основі фільтрів інтерполяції. Модуль 82 компенсації руху може використовувати фільтри інтерполяції, як вони були використані відеокодером 20 під час кодування відеоблоків, щоб обчислити інтерпольовані значення для дробових пікселів опорних блоків. У цьому випадку модуль 82 компенсації руху може визначити фільтри інтерполяції, використані відеокодером 20, з прийнятих синтаксичних елементів і використовувати фільтри інтерполяції для одержання блоків прогнозування. Модуль 86 оберненого квантування виконує обернене квантування квантованих коефіцієнтів перетворення, забезпечених в бітовому потоці і декодованих модулем 80 ентропійного декодування. Процес оберненого квантування може включати в себе використання параметра квантування, обчисленого відеокодером 20 для кожного відеоблока у відеослайсі, для визначення ступеня квантування, рівно як і ступеня оберненого квантування, який повинен бути застосований. Модуль 88 обробки оберненого перетворення застосовує обернене перетворення, наприклад, обернене перетворення DCT, обернене цілочисельне перетворення або концептуально аналогічний процес оберненого перетворення, до коефіцієнтів перетворення, щоб одержати залишкові блоки в ділянці пікселів. Після того, як модуль 82 компенсації руху формує блок прогнозування для поточного відеоблока на основі векторів руху та інших синтаксичних елементів, відеодекодер 30 формує декодований відеоблок за допомогою підсумовування залишкових блоків від модуля 88 обробки оберненого перетворення з відповідними блоками прогнозування, сформованими модулем 82 компенсації руху. Суматор 90 представляє компонент або компоненти, які виконують цю операцію підсумовування. За бажанням також може бути застосований фільтр видалення блочності для фільтрації декодованих блоків, щоб видалити артефакти блочності зображення. Інші контурні фільтри (або в циклі кодування, або після циклу кодування) також можуть використовуватися, щоб згладити переходи пікселів або іншим чином поліпшити якість відеозображення. Декодовані відеоблоки в даному кадрі або зображенні потім зберігаються в пам'яті 92 опорних зображень, яка зберігає опорні зображення, що використовуються для подальшої компенсації руху. Пам'ять 92 опорних зображень також зберігає декодовану відеоінформацію для більш пізнього представлення на пристрої відображення, такому як пристрій 32 відображення на фіг. 1. 13 UA 111510 C2 5 10 15 20 25 30 35 40 45 Як відмічено вище, методики цього розкриття в цілому стосуються інтра-кодування. Потрібно розуміти, що методики цього розкриття можуть бути виконані будь-яким з пристроїв відеокодування, описаних в цьому розкритті, в тому числі, наприклад, відеокодером 20 і відеодекодером 30, показаними і описаними з посиланням на фіг. 1-3. Таким чином, в прикладі модуль 46 інтра-прогнозування, описаний з посиланням на фіг. 2, може виконати деякі описані нижче методики, виконуючи інтра-прогнозування під час кодування блока відеоданих. В іншому прикладі модуль 84 інтра-прогнозування, описаний з посиланням на фіг. 3, може виконати деякі описані нижче методики, виконуючи інтра-прогнозування під час декодування блока відеоданих. Згідно з цим посилання на універсальний "пристрій відеокодування" можуть включати в себе відеокодер 20, відеодекодер 30 або інший модуль кодування або декодування відеоінформації. У деяких прикладах пристрій відеокодування може ідентифікувати так званий "найбільш імовірний" режим інтра-прогнозування під час кодування з інтра-прогнозуванням. Таким чином, наприклад, відеокодер (наприклад, такий як відеокодер 20) може ідентифікувати режим інтрапрогнозування раніше закодованих блоків (наприклад, опорних блоків) і порівняти такі режими інтра-прогнозування з режимом інтра-прогнозування для поточного блока. Інтра-режими таких опорних блоків можуть мати відносно високу імовірність того, що вони є такими самими або аналогічними поточному блоку внаслідок просторової близькості блоків до поточного блока. Як описано більш детально нижче, режим інтра-прогнозування декількох опорних блоків може бути розглянутий при ідентифікації MPM. Якщо режим інтра-прогнозування для поточного блока є таким самим, як MPM, відеокодер 20 може сигналізувати режим інтра-прогнозування з використанням однобітового прапора MPM. Таким чином, відеокодер 20 може сигналізувати, що режим інтра-прогнозування для поточного блока є таким самим, як MPM, не маючи необхідності явно ідентифікувати режим інтрапрогнозування для поточного блока. Відеодекодер 30 може прийняти прапор, який вказує, що інтра-режим для поточного блока є таким самим, як MPM, і повторити процес, що використовується відеокодером 20 для визначення цього MPM. Таким чином, відеодекодер 30 може ідентифікувати MPM з використанням тих самих блоків, розглянутих відеокодером 20 під час кодування. Фіг. 4 показує приклад поточного блока, наприклад, елемента кодування ("поточного CU") і двох опорних блоків (наприклад, "A" та "B"), які можуть бути розглянуті під час інтра-кодування. Наприклад, відеокодер (наприклад, такий як відеокодер 20) може розглянути інтра-режими, що відповідають опорному блоку А (розташованому зліва від поточного блока), і опорному блоку В (розташованому зверху від поточного блока), як MPM поточного блока. У деяких прикладах, якщо будь-який з кандидатів на MPM (наприклад, блок А або блок В) не використовує інтрарежим або іншим чином недоступний (наприклад, блок ще не був закодований), відеокодер 20 може привласнити інтра-режим за умовчанням блока, наприклад, режим DC. Крім того, в деяких прикладах кількість MPM може бути більше двох. Наприклад, відеокодер 20 може сформувати додаткові MPM на основі інтра-режимів більш ніж двох опорних блоків. Якщо фактичний інтра-режим для поточного блока (наприклад, обчислений модулем 46 інтра-прогнозування) є таким самим, як або у опорного блока А, або у опорного блока В, відеокодер 20 може сигналізувати однобітовий прапор, що вказує, що MPM використовується для кодування поточного блока (наприклад, прапор MPM встановлений рівним 1). Крім того, відповідно до деяких прикладів відеокодер 20 може сигналізувати індекс, який ідентифікує MPM. Таким чином, кожний інтра-режим може мати зв'язаний (вихідний) індекс інтра-режиму, який ідентифікує інтра-режим як один з множини можливих інтра-режимів, як визначено відповідно до стандарту кодування. Наприклад, запропонований стандарт HEVC може підтримувати до 35 інтра-режимів, і кожному інтра-режиму привласнене стандартне точно визначене значення початкового індексу, як показано в таблиці 1 нижче: Таблиця 1 РЕЖИМИ ІНТРА-ПРОГНОЗУВАННЯ ТА ІНДЕКСИ Режим інтра-прогнозування 0 1 (2-34) Відповідна назва Intra_Planar Intra_DC Intra_Anguar 50 14 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 У прикладі таблиці 1 планарний інтра-режим має значення вихідного індексу 0, інтра-режим DC має значення вихідного індексу 1, і різні кутові інтра-режими мають значення вихідних індексів між 2 та 34. Традиційно при інтра-кодуванні поточного блока на основі MPM відеокодер 20 сортує MPM відповідно до значень вихідних індексів інтра-режимів. У прикладі з двома MPM відеокодер 20 може потім привласнити нове значення індексу "0" інтра-режиму, що має менший вихідний індекс інтра-режиму (наприклад, більш низьке значення вихідного індексу). Крім того, відеокодер 20 привласнює нове значення індексу "1" інтра-режиму, що має більше значення вихідного індексу інтра-режиму (наприклад, більш високе значення вихідного індексу інтрарежиму). Таким чином, відеокодер 20 може сигналізувати MPM з використанням меншої кількості бітів, ніж при відправці фактичного індексу інтра-режиму. У деяких прикладах, якщо інтра-режим опорного блока А є таким самим, як інтра-режим опорного блока В, відеокодер 20 не відправляє додаткове значення індексу. У деяких прикладах, якщо кількість MPM більше двох, можуть бути зроблені аналогічні привласнення індексів. Якщо інтра-режим поточного блока не рівний MPM, відеокодер 20 може інтра-кодувати поточний блок, наприклад, з використанням таблиці кодування з фіксованою довжиною слова або іншим способом. Відеодекодер, такий як відеодекодер 30, може прийняти прапор MPM та індекс MPM. Потім відеодекодер 30 може виконати процес, аналогічний описаному відносно відеокодера 20, щоб визначити, до якого інтра-режиму відноситься індекс MPM. Таким чином, відеодекодер 30 може відсортувати інтра-режими в порядку зростання первинних індексів. Відеодекодер 30 може привласнити значення індексу "0" меншому первинному індексу інтра-режиму і значення індексу "1" більшому первинному індексу інтра-режиму. Потім відеодекодер 30 може використовувати просигналізований індекс MPM, щоб вибрати один з відсортованих інтра-режимів. Потім відеодекодер 30 може декодувати інтра-кодований блок відеоданих. Відповідно до деяких методик відеокодування пристрій відеокодування (наприклад, відеокодер або відеодекодер) може сортувати MPM до визначення і сигналізації MPM для поточного кодованого блока. Це може збільшити складність пристрою відеокодування. Як описано більш детально нижче, деякі аспекти цього розкриття стосуються видалення сортування MPM для зменшення складності пристрою відеокодування. Наприклад, відеокодер 20, відеодекодер 30 або вони обидва можуть формувати список MPM, який не вимагає сортування. Відеокодер 20 і/або відеодекодер 30 можуть привласнити значення індексів режимам MPM в порядку, в якому MPM порівнюються з інтра-режимом поточного блока. В інших прикладах відеокодер 20 і/або відеодекодер 30 можуть привласнити значення індексів відповідно до порядку, в якому закодовані MPM. Таким чином, MPM не повинні сортуватися відповідно до їх значення вихідного індексу інтра-режиму, і складність пристрою відеокодування може бути зменшена. Крім того, деякі аспекти цього розкриття також стосуються привласнення режиму за умовчанням у випадках, в яких або блок А, або блок В не доступний для кодування в інтрарежимі. Наприклад, відеокодер 20 може привласнити заздалегідь вибраний режим, такий як планарний режим або режим DC, як режим за умовчанням. Фіг. 5 є концептуальною схемою кодування в інтра-режимі, як описано вище з посиланням на фіг. 4. Наприклад, як показано в прикладі на фіг. 5, якщо інтра-режим поточного блока співпадає з одним з MPM (наприклад, гілка "так"), відеокодер 20 може встановити прапор MPM рівним "1". Крім того, відеокодер 20 може відсортувати MPM відповідно до їх значення вихідного індексу ("Сортувати MPM"). Таким чином, відеокодер 20 привласнює MPM, що має менший вихідний індекс інтра-режиму, значення 0 ("Менший MPM") і привласнює MPM, що має більший первинний індекс інтра-режиму, значення 1 ("Інший MPM"). Потім відеокодер 20 може сигналізувати інтра-режим для поточного блока на основі MPM. Таким чином, відеокодер 20 може відправити прапор "1", щоб вказати, що використовується MPM, і або прапор "0", або прапор "1", щоб ідентифікувати підходящий MPM. Якщо інтра-режим поточного блока не співпадає з одним з MPM (наприклад, гілка "ні"), відеокодер 20 може встановити прапор MPM рівним "0". Крім того, відеокодер 20 може закодувати інтра-режим, наприклад, з використанням таблиці фіксованої довжини або іншого способу ("Інше кодування в інтра-режимі"). Фіг. 6 є концептуальною схемою кодування в інтра-режимі відповідно до аспектів цього розкриття. Наприклад, як показано в прикладі на фіг. 6, якщо інтра-режим поточного блока співпадає з одним з MPM (наприклад, гілка "так"), відеокодер 20 може встановити прапор MPM рівним "1". Відповідно до аспектів цього розкриття, замість того, щоб сортувати MPM на основі значень індексів MPM, відеокодер 20 може сформувати список MPM, який не вимагає 15 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 сортування ("Сформувати список MPM"). Таким чином, наприклад, деякі методики цього розкриття мають відношення до привласнення значень індексів режимам MPM в порядку, в якому MPM порівнюються з інтра-режимом поточного блока. Таким чином, MPM не повинні сортуватися відповідно до їх значення вихідного індексу інтра-режиму. Якщо інтра-режим поточного блока не є одним з MPM, відеокодер 20 може встановити прапор MPM рівним "0", і додаткове сортування MPM може бути застосоване перед виконанням іншої частини кодування в інтра-режимі. Таким чином, наприклад, відеокодер 20 може відсортувати список інтра-режимів (який не включає в себе MPM), що залишилися, перед ідентифікацією інтра-режимів у списку для поточного блока. У прикладі з метою пояснення відеокодер 20 може порівняти інтра-режим, зв'язаний з поточним блоком відеоданих, з інтра-режимами, зв'язаними з одним або більше опорними блоками, такими як інтра-режими одного або більше сусідніх блоків (наприклад, блоків, які просторово межують з поточним блоком), щоб визначити один з MPM, який співпадає з фактичним інтра-режимом для поточного блока. Як відмічено вище відносно фіг. 4 та 5, відеокодер 20 може порівняти інтра-режим поточного блока з двома сусідніми блокам, хоча можна розглянути інтра-режими більшої або меншої кількості опорних блоків (наприклад, одного, трьох, п'яти тощо), додатково MPM можуть бути сформовані на основі сусідніх інтрарежимів. Відповідно до аспектів цього розкриття відеокодер 20 може привласнити значення індексу режимам MPM в порядку, в якому MPM порівнюються з поточним інтра-режимом. У прикладі з двома MPM відеокодер 20 може спочатку порівняти інтра-режим поточного блока з інтрарежимом сусіднього блока зліва і потім порівняти інтра-режим поточного блока з інтра-режимом сусіднього блока зверху (див., наприклад, схему розташування, показану на фіг. 4). Відповідно до цього відеокодер 20 може привласнити значення індексу 0 інтра-режиму сусіднього блока зліва ("Перше порівняння") і значення індексу 1 інтра-режиму сусіднього блока зверху ("Друге порівняння"). Хоча приклад, показаний на фіг. 6, включає в себе тільки два MPM, додаткові значення індексів можуть бути привласнені іншим режимам MPM, якщо такі MPM розглядаються. Якщо інтра-режим поточного блока не відповідає одному з MPM (наприклад, гілка "ні"), відеокодер 20 може встановити прапор MPM рівним "0". Крім того, відеокодер 20 може закодувати інтра-режим, наприклад, з використанням таблиці фіксованої довжини або іншим способом ("Інше кодування в інтра-режимі"). Додатково в деяких прикладах і як відмічено вище відеокодер 20 може відсортувати інтра-режими, що залишилися, відповідно до процесу сортування MPM. З метою пояснення припустимо, що 35 інтра-режимів доступні для інтра-кодування блока відеоданих. Припустимо далі, що ці 35 інтра-режимів можуть бути ідентифіковані за допомогою номера режиму, який може бути включений в таблицю, що ідентифікує доступні інтра-режими. У прикладі, в якому поточний режим не є режимом MPM, коли MPM, наприклад, є режими 15, 2 та 31, і поточний режим є режимом 16, пристрій відеокодування (наприклад, відеодекодер 30 або відеокодер 20) може спочатку відсортувати MPM в порядку за зростанням. Відповідно до цього список MPM 15, 2 та 31 стає списком 2, 15 та 31 після сортування. Потім пристрій відеокодування може усунути MPM з інтра-режимів, що залишилися, оскільки відомо, що поточний режим не є режимом MPM. 32 режими, що залишилися, тоді можуть бути повторно відображені на 32 п'ятибітових кодових слова. Деякі приклади можуть використовувати таблицю з 32 режимів, що залишилися, усуваючи режими 2, 15, 31. Однак інші приклади не використовують таблицю. Що стосується відображення, наприклад, оскільки поточний режим (наприклад, режим 16) більше ніж або дорівнює першому з відсортованих MPM (режим 2), пристрій відеокодування може відняти 1 з поточного режиму (16-1=15). Значення після першого віднімання (15) також більше ніж або дорівнює другому з сортованих MPM (15), таким чином, пристрій відеокодування знову віднімає 1 (15-1=14). Значення після другого віднімання (14) є менше 31, таким чином пристрій відеокодування не виконує інше віднімання. Відповідно до цього, поточний режим відображається на чотирнадцятий елемент в новій таблиці, як обчислений за допомогою виконання двох віднімань для поточного режиму 16 (16-2=14). В інших прикладах режими можуть бути відображені іншими способами. В іншому прикладі, в якому поточний режим не є режимом MPM, коли, наприклад, MPM є режими 5, 4 та 6, і поточний режим є режимом 15, пристрій відеокодування може відсортувати MPM в порядку за зростанням. Відповідно до цього список 5, 4, 6 стає списком 4, 5, 6. Тоді пристрій відеокодування може створити список або таблицю 32 режимів, що залишилися, 16 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 усуваючи режими 4, 5 та 6. Як обговорено вище, потрібно розуміти, що не всі приклади використовують таблицю. У наведених вище прикладах передбачається, що поточний режим не є режимом MPM. Навпаки, для випадку, коли поточний режим є режимом MPM, наприклад, коли MPM є 5, 4, і 6, і поточний режим є режимом 4, пристрій відеокодування може встановити прапор MPM рівним "1". Крім того, пристрій відеокодування може встановити індекс для MPM рівним "1". Наприклад, індекс може відображати MPM на основі порядку в списку. Таким чином, в прикладі вище пристрій відеокодування може відобразити 5 на індекс 0, 4 на індекс 1, 6 на індекс 2. У деяких прикладах, як відмічено вище, відеокодер 20 може формувати список MPM в порядку, в якому MPM порівнюються з інтра-режимом поточного блока. Таким чином, індекс може ідентифікувати відповідний MPM на основі порядку порівняння. Тоді відеокодер 20 може привласнити значення індексів кожному з MPM в списку. Наприклад, відеокодер 20 може привласнити значення індексів кожному з MPM в списку в порядку зростання так що перший MPM, який порівнюється з поточним інтра-режимом, має найнижче відносне значення індексу, і останній MPM, який порівнюється з поточним інтра-режимом, має найвище відносне значення індексу. Навпаки, кожний інтра-режим може мати вихідний зв'язаний індекс інтра-режиму, який ідентифікує інтра-режим як один з множини можливих інтра-режимів (таких, як один з 35 інтрарежимів), як визначено відповідно до стандарту кодування. Цей вихідний індекс може відрізнятися від індексу, просигналізованого в бітовому потоці, відповідно до аспектів цього розкриття. Тоді відеокодер 20 може сигналізувати прапор MPM та індекс MPM відеодекодеру, такому як відеодекодер 30. Відеодекодер 30 може виконати процес, аналогічний описаному відносно відеокодера 20, щоб ідентифікувати підходящий інтра-режим з прийнятого значення індексу. Таким чином, наприклад, відеодекодер 30 може сформувати список, який включає в себе MPM в порядку, в якому інтра-режими були порівняні з поточним інтра-режимом. Тоді відеодекодер 30 може застосувати значення індексів до кожного з MPM і вибрати підходящий інтра-режим для поточного блока з використанням прийнятого значення індексу. У деяких прикладах порядок, в якому MPM порівнюються з поточним інтра-режимом, може бути неявно одержаний відповідно до зібраної статистики з раніше закодованих інтра-режимів. Таким чином, наприклад, якщо інтра-режим, зв'язаний з деяким опорним блоком, більш часто співпадає з поточним інтра-режимом, ніж інші MPM інших блоків, інтра-режим, зв'язаний з цим деяким опорним блоком, може порівнюватися раніше, ніж інші MPM інших блоків. В інших прикладах порядок порівняння може бути одержаний на основі доступності або може бути явно просигналізований. Наприклад, якщо один або більше опорних блоків, що містять MPM, часто є недоступними, такі опорні блоки можуть порівнюватися з поточним блоком відносно пізніше, ніж більш звичайно доступні опорні блоки. В інших прикладах відеокодер 20 може визначити і явно сигналізувати конкретний порядок порівняння в закодованому бітовому потоці. Усунення етапу сортування (наприклад, сортування MPM відповідно до їх значень індексів) може зменшити складність процесу кодування. Таким чином, замість того, щоб мати необхідність явно сортувати MPM, пристрій відеокодування може сформувати список MPM, визначаючи, чи є поточний інтра-режим таким самим, як який-небудь з MPM. Таким чином, деякі методики цього розкриття можуть використовуватися для збільшення обчислювальної ефективності пристрою відеокодування. Однак в деяких прикладах сортування MPM може бути збережене для кодування в інтра-режимі, якщо інтра-режим не дорівнює одному з MPM. Наприклад, коли інтра-режим не співпадає з одним з MPM, режими, що залишилися, можуть бути відсортовані. Методики цього розкриття також стосуються привласнення інтра-режиму за умовчанням блокам відеоданих, які не доступні для розгляду як опорні блоки під час кодування в режимі MPM. Таким чином, наприклад, опорний блок можна вважати "недоступним", якщо опорний блок ще не був закодований (і, таким чином, його режим прогнозування невідомий), якщо опорний блок закодований з використанням інтер-прогнозування (описано вище), або якщо опорний блок не існує (блок розташований в лівому верхньому кутку зображення, або слайс може не мати сусідніх блоків зліва і/або зверху). Відповідно до аспектів цього розкриття після ідентифікації блоків, які не можуть бути використані для опори (для посилання) під час інтра-кодування (наприклад, під час процесу одержання MPM), таким блокам може бути привласнений інтра-режим за умовчанням. Таким чином, наприклад, таким блокам може бути привласнений плоский інтра-режим, який також може згадуватися як планарний інтра-режим. Плоский інтра-режим може включати в себе лінійну плоску функцію, яка підходить блоку з метою прогнозування. Плоский інтра-режим може 17 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 добре працювати (забезпечувати точне прогнозування) в ділянках з яскравістю, що плавно змінюється. У деяких випадках плоский інтра-режим може відносно часто вибиратися як інтра-режим для кодування відеоданих. Таким чином, може бути відносно більш високий шанс вибору плоского режиму для кодування поточного блока, ніж інших режимів кодування. Відповідно до цього, встановлення плоского режиму як режиму за умовчанням може збільшити можливість відеокодера закодувати поточний режим на основі MPM, коли блоки недоступні. Методики цього розкриття також стосуються розгляду більше двох MPM. Наприклад, як показано в прикладі на фіг. 7, пристрій відеокодування може розглянути інтра-режими, зв'язані з множиною сусідніх блоків, як MPM. Таким чином, пристрій відеокодування може розглянути інтра-режим, зв'язаний з будь-яким опорним блоком, який межує з поточним кодованим блоком, як MPM для поточного блока. Пристрій відеокодування може сформувати список MPM і привласнити значення індексів кожному MPM в списку. Потім пристрій відеокодування може інтра-кодувати поточний блок на основі MPM, як описано вище. У прикладі, показаному на фіг. 7, пристрій відеокодування розглядає інтра-режими, зв'язані з кожним блоком, який межує з поточним блоком, в тому числі сусідній блок "зверху зліва" (AL), а також сусідній блок "перший зверху" (A1), сусідній блок "другий зверху" A2 (не показаний), сусідній блок "N-ий зверху" AN тощо до сусіднього блока "зверху праворуч" (AR) при визначенні MPM. Крім того, в прикладі, показаному на фіг. 7, пристрій відеокодування може розглянути інтра-режими, зв'язані із сусіднім блоком "першим зліва" (L1), сусіднім блоком"другим зліва" L2 (не показаний), сусіднім блоком "N-им зліва" LN тощо до сусіднього блока "знизу зліва" (BL). Відповідно до деяких аспектів цього розкриття, пристрій відеокодування може розглянути тільки опорні блоки, які є інтра-кодованими, при визначенні MPM. В іншому прикладі пристрій відеокодування може розглянути всі блоки (наприклад, в тому числі інтер-кодовані блоки і/або іншим чином недоступні блоки). У такому прикладі пристрій відеокодування може привласнити інтра-режим за умовчанням (наприклад, планарний режим або режим DC) недоступним блокам перед визначенням MPM, як описано вище. У деяких прикладах порядок порівняння (наприклад, порядок, в якому поточний інтра-режим порівнюється з інтра-режимом опорних блоків) кодером або декодером може бути зліва направо і потім зверху вниз. Наприклад, як проілюстровано на фіг. 7, порядок порівняння може йти зліва направо в напрямку від AL до AR і потім зверху вниз в напрямку від AL до BL. В іншому прикладі порядок порівняння може бути праворуч наліво і потім знизу вгору. Наприклад, як проілюстровано на фіг. 7, порядок порівняння може йти праворуч наліво в напрямку від AR до AL і потім знизу вгору в напрямку від BL до AL. В інших прикладах може використовуватися будь-яка інша комбінація порядків порівняння (наприклад, знизу вгору і потім зліва направо, праворуч наліво і потім зверху вниз тощо). В інших прикладах порядок порівняння може бути визначений зумовленим правилом. У таких прикладах відеокодер 20 може сигналізувати, і відеодекодер 30 може прийняти із закодованого бітового потоку правила відносно порядку порівняння. В інших прикладах відповідно до аспектів цього розкриття пристрій відеокодування може розглянути піднабір сусідніх блоків, наприклад, через один блок, кожний третій блок або інший піднабір блоків, порівнюючи поточний інтра-режим з інтра-режимами сусідніх блоків. Опорні блоки, які розглядаються при визначенні MPM, можуть бути фіксованими або сигналізуватися. Таким чином, наприклад, відеокодер 20 і відеодекодер 30 можуть обидва бути виконані з можливістю визначати MPM, порівнюючи інтра-режими одних і тих самих сусідніх опорних блоків. Крім того, відеокодер 20 і відеодекодер 30 можуть обидва бути виконані з можливістю визначати один і той самий порядок порівняння (наприклад, порядок, в якому поточний інтра-режим порівнюється з інтра-режимами опорних блоків). Як альтернатива, відеокодер 20 може сигналізувати, які опорні блоки потрібно розглядати під час інтра-кодування в режимі MPM, і/або порядок порівняння. У цьому прикладі відеодекодер 30 може виконати кодування в режимі MPM на основі прийнятої сигналізації, забезпеченої відеокодером 20. Відповідно до аспектів цього розкриття кількість опорних блоків, які розглядаються при ідентифікації MPM, може бути зв'язана з кількістю різних MPM, можливих для вибору. Таким чином, наприклад, кожний опорний блок, що розглядається, може відповідати єдиному MPM. Кількість MPM може бути фіксована, виведена або просигналізована. Наприклад, MPM може залежати від багатьох різних факторів, таких як сусідні блоки, тип слайса, розмір блока тощо. Ця інформація може використовуватися, щоб визначити кількість MPM, наприклад, за допомогою відомої формули. Тоді ця відома формула може використовуватися для виведення кількості MPM. 18 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 Потрібно розуміти, що хоча опорні блоки в прикладі на фіг. 7 показані як подібні або які мають однаковий розмір, опорні блоки різних розмірів можуть розглядатися пристроєм відеокодування при ідентифікації MPM. Крім того, може бути розглянуто більше або менше кандидатів, ніж показано в прикладі на фіг. 7. Фіг. 8 є блок-схемою послідовності операцій, що показує ілюстративний спосіб кодування відеоданих відповідно до одного або більше прикладів, описаних в цьому розкритті. В ілюстративному способі кодування відеоданих на фіг. 8 відеокодер 20 визначає інтра-режим для прогнозування поточного блока відеоданих (етап 800). Наприклад, відеокодер 20 може виконати інтра-кодування відеоблоків у межах відеослайса. Інтра-кодування може покладатися на просторове прогнозування, щоб зменшити або видалити просторову надмірність у відеоінформації в межах даного відеокадру або зображення. Інтра-режимом може називатися будь-який з декількох режимів стиснення на основі просторової надмірності. Відеокодер 20 визначає потенційні MPM для прогнозування поточного блока відеоданих (етап 802). Таким чином, наприклад, відеокодер 20 може ідентифікувати режим інтрапрогнозування раніше закодованих блоків (наприклад, опорних блоків) і порівняти такі режими інтра-прогнозування з режимом інтра-прогнозування для поточного блока (наприклад, фактичним інтра-режимом для кодування поточного блока, вибраним, наприклад, з використанням аналізу залежності спотворень від швидкості передачі, описаного вище з посиланням на фіг. 2). Інтра-режими таких опорних блоків можуть мати відносно високу імовірність, що вони є такими самими або аналогічні поточному блоку внаслідок просторової близькості блоків до поточного блока. Може бути розглянутий режим інтра-прогнозування декількох опорних блоків при ідентифікації MPM. У деяких прикладах відеокодер 20 порівнює інтра-режим з кожним з MPM в порядку порівняння. Як обговорено вище, порядок порівняння - це порядок, в якому поточний інтрарежим порівнюється з інтра-режимом опорних блоків відеокодером 20. Порядок порівняння може бути зліва направо і потім зверху вниз. В іншому прикладі порядок порівняння може бути праворуч наліво і потім знизу вгору. В інших прикладах може використовуватися будь-яка інша комбінація порядків порівняння (наприклад, знизу вгору і потім зліва направо, праворуч наліво і потім зверху вниз тощо). Як обговорено вище, в інших прикладах порядок порівняння може бути визначений деяким правилом, і правило може бути просигналізоване (наприклад, просигналізоване відеокодером 20 для використання відеодекодером 30). В інших прикладах відповідно до аспектів цього розкриття відеокодер 20 може розглянути піднабір сусідніх блоків, наприклад, через один блок, кожний третій блок або інший піднабір блоків, порівнюючи поточний інтра-режим з інтрарежимами сусідніх блоків. Відеокодер 20 визначає індекс для кожного з MPM на основі порядку порівняння (етап 804). Наприклад, як обговорено вище з посиланням на фіг. 6, відеокодер 20 може привласнити значення індексу 0 інтра-режиму сусіднього блока зліва ("Перше порівняння") і значення індексу 1 інтра-режиму сусіднього блока зверху ("Друге порівняння"). Хоча приклад, показаний на фіг. 6, включає в себе тільки два MPM, додаткові значення індексів можуть бути привласнені іншим режимам MPM, якщо такі MPM розглядаються. Відеокодер 20 сигналізує індекс MPM, який співпадає з інтра-режимом для прогнозування поточного блока даних, в бітовому потоці (етап 806). Наприклад, як відмічено вище, індекс може ідентифікувати відповідний MPM на основі порядку порівняння. Навпаки, кожний інтра-режим може мати вихідний зв'язаний індекс інтра-режиму, який ідентифікує інтра-режим як один з множини можливих інтра-режимів (наприклад, один з 35 інтра-режимів), як визначено відповідно до стандарту кодування. Цей вихідний індекс може відрізнятися від індексу, просигналізованого в бітовому потоці, відповідно до аспектів цього розкриття. Наприклад, як відмічено вище, відеокодер 20 може привласнити значення індексів MPM на основі порядку порівняння в порядку зростання, такий MPM, що порівнюється з поточним інтра-режимом відносно раніше в процесі порівняння, може мати більш низьке значення індексу, ніж MPM, що порівнюється з поточним інтра-режимом відносно пізніше в процесі порівняння. Відповідно до цього, MPM, що раніше порівнюється, може мати більш низьке значення індексу, ніж MPM, що пізніше порівнюється, незалежно від вихідного індексу інтра-режиму MPM, що раніше порівнюється. Таким чином, в деяких прикладах, MPM, що раніше порівнюється може мати більш високе значення вихідного індексу, ніж MPM, що пізніше порівнюється. Фіг. 9 є блок-схемою послідовності операцій, що показує ілюстративний спосіб декодування відеоданих відповідно до одного або більше прикладів, описаних в цьому розкритті. В ілюстративному способі декодування відеоданих на фіг. 9 відеодекодер 30 формує список MPM для поточного блока відеоданих (етап 900). Наприклад, відеодекодер 30 може сформувати 19 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 список MPM і привласнити значення індексів кожному MPM у списку. Список MPM може бути скомпонований в порядку порівняння, який вказує порядок, в якому інтра-режим для поточного блока відеоданих порівнювався з одним або більше інтра-режимами, зв'язаними з одним або більше опорними блоками відеоданих, під час кодування поточного блока відеоданих. Відеодекодер 30 визначає індекс MPM, який ідентифікує інтра-режим для поточного блока в списку MPM (етап 902). Відеодекодер 30 може визначити індекс MPM, який ідентифікує інтрарежим для поточного блока в списку MPM. Потім відеодекодер 30 може ідентифікувати інтрарежим для поточного блока з використанням індексу MPM і декодувати поточний блок за допомогою ідентифікованого інтра-режиму для поточного блока. В одному прикладі відеодекодер 30 може визначити індекс MPM на основі сигналізації, включеної в закодований бітовий потік. Відеокодер 20 може сигналізувати режим інтра-прогнозування з використанням однобітового прапора MPM. Таким чином, відеокодер 20 може сигналізувати, що режим інтрапрогнозування для поточного блока такий самий, як MPM, не маючи необхідності явно ідентифікувати режим інтра-прогнозування для поточного блока. Потім відеодекодер може прийняти прапор, який вказує, що інтра-режим для поточного блока такий самий, як MPM. Відеодекодер 30 ідентифікує інтра-режим для поточного блока з використанням індексу MPM (етап 904). Наприклад, відеодекодер 30 може ідентифікувати MPM з використанням тих самих блоків, розглянутих відеокодером 20 під час кодування. Тоді відеодекодер 30 може використовувати просигналізований індекс MPM, щоб вибрати один з відсортованих інтрарежимів. Відеодекодер 30 декодує поточний блок за допомогою ідентифікованого інтра-режиму для поточного блока (етап 906). Наприклад, як відмічено вище, індекс може ідентифікувати відповідний MPM на основі порядку порівняння. Навпаки, кожний інтра-режим може мати вихідний зв'язаний індекс інтрарежиму, який ідентифікує інтра-режим як один з множини можливих інтра-режимів (наприклад, один з 35 інтра-режимів), як визначено відповідно до стандарту кодування. Цей первинний індекс може відрізнятися від індексу, просигналізованого в бітовому потоці, відповідно до аспектів цього розкриття. Наприклад, відеодекодер 30 може визначити значення індексів MPM на основі порядку порівняння в порядку зростання. Фіг. 10 є блок-схемою послідовності операцій, що показує ілюстративний спосіб кодування відеоданих відповідно до одного або більше прикладів, описаних в цьому розкритті. В ілюстративному способі кодування відеоданих на фіг. 10 пристрій відеокодування, такий як відеокодер 20 або відеодекодер 30, може ідентифікувати один або більше блоків відеоданих для визначення MPM для поточного блока відеоданих (етап 1000). Пристрій відеокодування може визначити, чи є який-небудь один або більше блоків недоступним для використання для опори блоків для визначення MPM для поточного блока відеоданих (етап 1002). Наприклад, опорний блок можна вважати "недоступним", якщо опорний блок ще не був закодований (і, таким чином, його режим прогнозування невідомий), якщо опорний блок закодований з використанням інтер-прогнозування (описане вище), або якщо опорний блок не існує (блок розташований в лівому верхньому кутку зображення, або слайс може не мати сусідніх блоків зліва і/або зверху). Пристрій відеокодування привласнює інтра-режим за умовчанням будь-якому одному або більше блокам, які не доступні для використання для опори блоків. В одному прикладі інтрарежим за умовчанням може бути планарним режимом (етап 1004). Планарний інтра-режим (який також називається плоским інтра-режимом) може включати в себе лінійну плоску функцію, яка підходить блоку з метою прогнозування і може забезпечити точне прогнозування в ділянках з яскравістю, що плавно змінюється. В інших прикладах інтра-режимом за умовчанням може бути режим DC або інший інтра-режим. Пристрій відеокодування визначає інтра-режим для поточного блока відеоданих на основі інтра-режимів одного або більше блоків (етап 1006). Наприклад, що стосується відеокодера 20, як описано відносно прикладу на фіг. 4 вище, якщо фактичний інтра-режим для поточного блока (наприклад, обчислений модулем 46 інтра-прогнозування) є таким самим, як для опорного блока А або опорного блока В, відеокодер 20 може сигналізувати однобітний прапор, який вказує, що MPM використовується для кодування поточного блока (наприклад, прапор MPM встановлений рівним 1). Як альтернатива, що стосується відеодекодера 30, як описано вище, відеодекодер 30 може одержати прапор MPM із закодованого бітового потоку і використовувати прапор MPM, щоб визначити інтра-режим для декодування поточного блока. Пристрій відеокодування кодує поточний блок з використанням визначеного інтра-режиму (етап 1008). Наприклад, відеокодер 20 кодує поточний блок за допомогою прогнозування поточного блока з використанням визначеного інтра-режиму, щоб сформувати опорний відеоблок. Відеокодер 20 також може визначити залишковий блок, що включає в себе різницю 20 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 між опорним блоком і поточним блоком, і включити залишковий блок у бітовий потік. Як альтернатива, відеодекодер 30 декодує поточний блок з ідентифікованим режимом MPM для поточного блока. Наприклад, відеодекодер 30 може одержати із закодованого бітового потоку залишковий відеоблок, зв'язаний з поточним блоком. Відеодекодер 30 може сформувати опорний блок за допомогою прогнозування поточного блока з використанням ідентифікованого інтра-режиму для поточного блока. Додатково, відеодекодер 30 може визначити значення для поточного блока з комбінації опорного блока і прийнятого залишкового відеоблока. Хоча деякі аспекти цього розкриття були описані відносно відеокодера 20 і відеодекодера 30, потрібно розуміти, що методики цього розкриття можуть бути застосовані за допомогою багатьох інших модулів кодування і/або декодування відеоінформації, процесорами, блоками обробки, основаними на апаратних засобах блоками кодування, такими як кодери/декодери (CODEC), тощо. Крім того, потрібно розуміти, що етапи, показані та описані з посиланням на фіг. 8-10, забезпечені лише як приклади. Таким чином, етапи, показані в прикладах на фіг. 8-10 не обов'язково повинні виконуватися в порядку, показаному на фіг. 8-10, може бути виконано менше етапів, і можуть бути виконані додаткові або альтернативні етапи. Крім того, потрібно розуміти, що залежно від прикладу деякі дії або події будь-якого з описаних тут способів, можуть бути виконані в різній послідовності, можуть бути додані, об'єднані або пропущені всі разом (наприклад, не всі описані дії або події необхідні для виконання способу на практиці). Крім того, в деяких прикладах дії або події можуть бути виконані одночасно, наприклад, за допомогою багатопоточної обробки, обробки з перериваннями або за допомогою декількох процесорів, а не послідовно. Крім того, хоча деякі аспекти цього розкриття описані з метою розуміння як такі, що виконуються єдиним модулем або блоком, потрібно розуміти, що методики цього розкриття можуть бути виконані комбінацією елементів або модулів, які відповідають відеокодеру. В одному або більше прикладах описані функції можуть бути реалізовані в апаратних засобах, програмному забезпеченні, програмованому обладнанні або будь-якій їх комбінації. Якщо функції реалізовані в програмному забезпеченні, вони можуть бути збережені або передані як одна або більше інструкцій або код на зчитуваному комп'ютером носії і виконані апаратним блоком обробки. Зчитувані комп'ютером носії можуть включати в себе запам'ятовуючі зчитувані комп'ютером носії, які відповідають матеріальним носіям, таким як носії даних, або засоби зв'язку, що включають в будь-яке середовище, яке забезпечує можливість передачі комп'ютерної програми від одного місця на інше, наприклад, відповідно до протоколу зв'язку. Таким чином, зчитувані комп'ютером носії звичайно можуть відповідати (1) матеріальним зчитуваним комп'ютером запам'ятовуючим носіям, які є нечасовими, або (2) середовищу зв'язку, такому як сигнал або несуча. Запам'ятовуючі носії даних можуть бути будь-якими доступними носіями, до яких можуть одержати доступ один або більше комп'ютерів або один або більше процесорів для витягання інструкцій, коду і/або структур даних для реалізації методик, описаних в цьому розкритті. Комп'ютерний програмний продукт може включати в себе зчитуваний комп'ютером носій. Як приклад, але без обмеження, такі зчитувані комп'ютером носії можуть містити оперативний запам'ятовуючий пристрій (ОЗП; RAM), постійний запам'ятовуючий пристрій (ПЗП; ROM), електрично стираний програмований постійний запам'ятовуючий пристрій (ЕСППЗП; EEPROM), компакт-диск (CD-ROM) або іншу пам'ять на оптичному диску, пам'ять на магнітному диску або інші магнітні пристрої зберігання, флеш-пам'ять або будь-який інший носій, який може використовуватися для зберігання бажаного програмного коду у вигляді інструкцій або структур даних, і до якого може одержати доступ комп'ютер. Крім того, будь-яке з'єднання правильно називати зчитуваним комп'ютером носієм. Наприклад, якщо інструкції передані з веб-сайта, сервера або іншого віддаленого джерела з використанням коаксіального кабелю, волоконнооптичного кабелю, витої пари, цифрової абонентської лінії (DSL) або бездротової технології, такої як інфрачервоне, радіочастотне і мікрохвильове випромінювання, то коаксіальний кабель, волоконно-оптичний кабель, вита пара, DSL або бездротові технології, такі як інфрачервоне, радіочастотне і мікрохвильове випромінювання включені у визначення носія. Однак потрібно розуміти, що зчитувані комп'ютером запам'ятовуючі носії даних не включають в себе з'єднання, несучі, сигнали або інші перехідні носії, але замість цього направлені на нечасові, матеріальні носії. Термін "диск", що використовується тут, включає в себе компакт-диск (CD), лазерний диск, оптичний диск, цифровий універсальний диск (DVD), гнучкий диск і диск Blu-ray, причому диски звичайно відтворюють дані магнітним способом або оптичним способом за допомогою лазера. Комбінації згаданого вище також повинні бути включені в контекст машинозчитуваних носіїв. 21 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 Інструкції можуть бути виконані одним або більше процесорами, такими як один або більше процесорів цифрових сигналів (DSP), мікропроцесорів загального призначення, спеціалізованих інтегральних схем (ASIC), програмованих користувачем вентильних матриць (FPGA) або інших еквівалентних інтегрованих або дискретних логічних схем. Відповідно до цього термін "процесор", що використовується тут, може відноситися до будь-якої згаданої структури або будь-якої іншої структури, підходящої для реалізації описаних тут методик. Крім того, в деяких аспектах описана тут функціональність може бути забезпечена в межах спеціалізованих апаратних засобів і/або програмних модулів, сконфігурованих для кодування і декодування або вбудованих в об'єднаний кодек. Крім того, методики можуть бути повністю реалізовані в одній або більше схемах або логічних елементах. Методики цього розкриття можуть бути реалізовані в широкій різноманітності пристроїв, в тому числі в бездротовому телефоні, інтегральній схемі (IC) або множині інтегральних схем (наприклад, в чипсеті). Різні компоненти, модулі або елементи описані в цьому розкритті, щоб підкреслити функціональні аспекти пристроїв, виконаних з можливістю виконувати розкриті методики, але не обов'язково вимагають реалізації різними апаратними елементами. Замість цього, як описано вище, різні елементи можуть бути об'єднані в апаратному модулі кодека або забезпечені за допомогою набору взаємодіючих апаратних модулів, що включають в себе один або більше процесорів, як описано вище, разом з підходящим програмним забезпеченням і/або програмованим обладнанням. Були описані різні аспекти розкриття. Ці та інші аспекти знаходяться в обсязі наступної формули винаходу. Посилальні позиції 10 система кодування і декодування відеоінформації 12 пристрій джерела 14 пристрій адресата 16 лінія зв'язку 18 джерело відеоінформації 20 відеокодер 22 вихідний інтерфейс 24 пристрій зберігання 28 вхідний інтерфейс 30 відеодекодер 32 пристрій відображення 35 модуль розділення 41 модуль прогнозування 42 модуль оцінки руху 44 модуль компенсації руху 46 модуль інтра-прогнозування 50 суматор 52 модуль обробки перетворення 54 модуль квантування 56 модуль ентропійного кодування 58 модуль оберненого квантування 60 модуль оберненого перетворення 62 суматор 64 пам'ять опорних зображень 80 модуль ентропійного декодування 81 модуль прогнозування 82 модуль компенсації руху 84 модуль інтра-прогнозування 86 модуль оберненого квантування 88 модуль оберненого перетворення 90 суматор 92 пам'ять опорних зображень 55 ФОРМУЛА ВИНАХОДУ 60 1. Спосіб кодування відеоданих, який включає етапи, на яких: визначають інтра-режим для прогнозування поточного блока відеоданих; визначають найбільш ймовірні режими (МРМ) для прогнозування поточного блока відеоданих, 22 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, кодованими перед поточним блоком; генерують список МРМ на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ; призначають індекс кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і кодують дані інтра-режиму поточного блока, у тому числі кодують, коли один з МРМ узгоджується з інтра-режимом для передбачення поточного блока, дані, які представляють індекс МРМ, що узгоджується, в списку, в кодованому бітовому потоці. 2. Спосіб за п. 1, в якому кодування даних інтра-режиму поточного блока включає етапи, на яких, коли один з МРМ не узгоджується з інтра-режимом для передбачення поточного блока: кодують прапор МРМ, який вказує, що інтра-режим для передбачення поточного блока не є МРМ; генерують модифікований список інтра-режимів; і кодують дані, які представляють індекс інтра-режиму поточного блока в модифікованому списку. 3. Спосіб за п. 2, в якому генерування модифікованого списку включає видалення МРМ з модифікованого списку інтра-режимів. 4. Спосіб за п. 2, в якому генерування модифікованого списку включає сортування модифікованого списку інтра-режимів за зростанням згідно з значенням режиму інтра-режимів. 5. Спосіб за п. 1, який додатково включає етап, на якому кодують, перед індексом МРМ, що узгоджується, прапор МРМ, який вказує, що дані, які представляють індекс МРМ, що узгоджується, представлені в кодованому бітовому потоці. 6. Спосіб за п. 1, в якому визначення МРМ включає визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому генерування списку МРМ включає призначення індексу інтра-режиму, пов'язаному з сусіднім зліва відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зверху блоком. 7. Спосіб за п. 1, в якому визначення МРМ включає визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому генерування списку МРМ включає призначення індексу інтра-режиму, пов'язаному з сусіднім зверху блоком, який менше, ніж індекс інтра-режиму, пов'язаного з інтра-режимом, пов'язаним з сусіднім зліва відеоблоком. 8. Спосіб за п. 1, в якому призначення індексу кожному з МРМ включає призначення індексів інтра-режимам сусідніх блоків поточного блока на основі порядку, в якому кодуються сусідні блоки. 9. Спосіб за п. 1, в якому призначення індексу кожному з МРМ включає призначення індексів МРМ на основі статистики, пов'язаної з вірогідністю МРМ, що узгоджується з інтра-режимом, для передбачення поточного блока. 10. Спосіб за п. 1, який додатково включає кодування даних, які представляють порядок, в якому індекси призначаються МРМ. 11. Спосіб за п. 1, в якому МРМ містять більше двох МРМ, зв'язаних з більш ніж двома опорними блоками. 12. Спосіб за п. 1, в якому визначення МРМ для прогнозування поточного блока відеоданих додатково включає етапи, на яких: ідентифікують один або більше блоків, які не можуть бути використані для посилання під час інтра-кодування; і призначають зазначеним одному або більше блокам інтра-режим за замовчуванням. 13. Спосіб за п. 12, в якому режимом за замовчуванням є планарний інтра-режим. 14. Спосіб за п. 12, в якому режимом за замовчуванням є інтра-режим DC. 15. Пристрій для кодування відеоданих, який містить: пам'ять, виконану з можливістю зберігання поточного блока відеоданих; і один або більше процесорів, виконаних з можливістю: визначення інтра-режиму для передбачення поточного блока відеоданих; визначення найбільш ймовірних режимів (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, кодованими перед поточним блоком; генерування списку МРМ на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ; призначення індексу кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і 23 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 кодування даних інтра-режиму поточного блока, у тому числі кодування, коли один з МРМ узгоджується з інтра-режимом для передбачення поточного блока, даних, які представляють індекс МРМ, що узгоджується, в списку, в кодованому бітовому потоці. 16. Пристрій за п. 15, в якому для кодування даних інтра-режиму поточного блока, коли один з МРМ не узгоджується з інтра-режимом для передбачення поточного блока, згадані один або більше процесорів додатково виконані з можливістю: кодування прапору МРМ, який вказує, що інтра-режим для передбачення поточного блока не є МРМ; генерування модифікованого списку інтра-режимів; і кодування даних, які представляють індекс інтра-режиму поточного блока в модифікованому списку. 17. Пристрій за п. 16, в якому для генерування модифікованого списку згадані один або більше процесорів виконані з можливістю видалення МРМ з модифікованого списку інтра-режимів. 18. Пристрій за п. 16, в якому для генерування модифікованого списку згадані один або більше процесорів виконані з можливістю сортування модифікованого списку інтра-режимів за зростанням згідно зі значенням режиму інтра-режимів. 19. Пристрій за п. 15, причому згадані один або більше процесорів додатково виконані з можливістю кодування, перед індексом МРМ, що узгоджується, прапора МРМ, який вказує, що дані, які представляють індекс МРМ, що узгоджується, представлені в кодованому бітовому потоці. 20. Пристрій за п. 15, в якому для визначення МРМ згадані один або більше процесорів виконані з можливістю визначення інтрарежимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексу інтра-режиму, пов'язаному з сусіднім зліва відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зверху блоком. 21. Пристрій за п. 15, в якому для визначення МРМ один або більше процесорів виконані з можливістю визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексу інтрарежиму, пов'язаному з сусіднім зверху блоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зліва відеоблоком. 22. Пристрій за п. 15, в якому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексів інтра-режимів сусідніх блоків поточного блока на основі порядку, в якому кодуються сусідні блоки. 23. Пристрій за п. 15, в якому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексів МРМ на основі статистики, пов'язаної з вірогідністю МРМ, що узгоджується з інтра-режимом, для передбачення поточного блока. 24. Пристрій за п. 15, в якому згадані один або більше процесорів додатково виконані з можливістю кодування даних, які представляють порядок, в якому індекси призначаються МРМ. 25. Пристрій за п. 15, в якому МРМ містять більше двох МРМ, пов'язаних з більш ніж двома опорними блоками. 26. Пристрій за п. 15, в якому для визначення МРМ для передбачення поточного блока відеоданих згадані один або більше процесорів виконані з можливістю: ідентифікації одного або більше блоків, які не можуть бути використані для посилання під час інтра-кодування; і призначення згаданим одному або більше блокам інтра-режиму за замовчуванням. 27. Пристрій за п. 26, в якому режимом за замовчуванням є планарний інтра-режим. 28. Пристрій за п. 26, в якому режимом за замовчуванням є інтра-режим DC. 29. Пристрій за п. 15, який додатково містить камеру, виконану з можливістю захоплення поточного блока, при цьому пристрій містить відеокодер, і при цьому згадані один або більше процесорів додатково виконані з можливістю: передбачення поточного блока з використанням визначеного інтра-режиму для генерування опорного відеоблока; визначення залишкового блока, що містить відмінність між опорним блоком і поточним блоком; і кодування даних, які представляють залишковий блок в кодованому бітовому потоці. 30. Зчитуваний комп'ютером носій даних, що зберігає інструкції, які при їх виконанні змушують один або більше процесорів: визначати інтра-режим для передбачення поточного блока відеоданих; 24 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 60 визначати найбільш ймовірні режими (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, кодованими перед поточним блоком; генерувати список МРМ на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ; призначати індекс кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і кодувати дані інтра-режиму поточного блока, у тому числі кодувати, коли один з МРМ узгоджується з інтра-режимом для передбачення поточного блока, дані, які представляють індекс МРМ, що узгоджується, в списку, в кодованому бітовому потоці. 31. Зчитуваний комп'ютером носій даних за п. 30, в якому для кодування даних інтра-режиму поточного блока, коли один з МРМ не узгоджується з інтра-режимом для передбачення поточного блока, інструкції змушують згадані один або більше процесорів: кодувати прапор МРМ, який вказує, що інтра-режим для передбачення поточного блока не є МРМ; генерувати модифікований список інтра-режимів; і кодувати дані, які представляють індекс інтра-режиму поточного блока в модифікованому списку. 32. Зчитуваний комп'ютером носій даних за п. 31, в якому для генерування модифікованого списку інструкції змушують згадані один або більше процесорів видаляти МРМ з модифікованого списку інтра-режимів. 33. Зчитуваний комп'ютером носій даних за п. 31, в якому для генерування модифікованого списку інструкції змушують згадані один або більше процесорів сортувати модифікований список інтра-режимів за зростанням згідно зі значенням режиму інтра-режимів. 34. Зчитуваний комп'ютером носій даних за п. 30, який додатково містить інструкції, які при їх виконанні змушують згадані один або більше процесорів кодувати, при цьому перед індексом МРМ, що узгоджується, прапор МРМ, який вказує, що дані, які представляють індекс узгоджується МРМ, представлені в кодованому бітовому потоці. 35. Зчитуваний комп'ютером носій даних за п. 30, в якому для визначення МРМ інструкції змушують згадані один або більше процесорів визначати інтра-режими, пов'язані з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному МРМ інструкції змушують згадані один або більше процесорів призначати індекс інтра-режиму, пов'язаного з сусіднім зліва відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зверху блоком. 36. Зчитуваний комп'ютером носій даних за п. 30, в якому для визначення МРМ інструкції змушують згадані один або більше процесорів визначати інтра-режими, пов'язані з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному з МРМ інструкції змушують згадані один або більше процесорів призначати індекс інтра-режиму, пов'язаному з сусіднім зверху блоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зліва відеоблоком. 37. Пристрій для кодування відеоданих, який містить: засіб для визначення інтра-режиму для передбачення поточного блока відеоданих; засіб для визначення найбільш ймовірних режимів (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, кодованими перед поточним блоком; засіб для генерування списку МРМ на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ; засіб для призначення індексу кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і засіб для кодування, коли один з МРМ узгоджується з інтра-режимом для передбачення поточного блока, даних, які представляють індекс МРМ, що узгоджується, в списку, в кодованому бітовому потоці. 38. Спосіб декодування відеоданих, спосіб включає етапи, на яких: визначають найбільш ймовірні режими (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, декодованими перед поточним блоком; генерують список визначених МРМ для передбачення поточного блока відеоданих на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ; призначають індекс кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і 25 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 декодують дані інтра-режиму поточного блока, у тому числі декодують, коли один з МРМ узгоджується з інтра-режимом для поточного блока, дані, які представляють індекс МРМ, що узгоджується, в списку, з закодованого бітового потоку; ідентифікують інтра-режим для передбачення поточного блока з використанням згаданого індексу; і декодують поточний блок з ідентифікованим інтра-режимом для поточного блока. 39. Спосіб за п. 38, в якому декодування даних інтра-режиму поточного блока включає етапи, на яких, коли один з МРМ не узгоджується з інтра-режимом для передбачення поточного блока: декодують прапор МРМ, який вказує, що інтра-режим для передбачення поточного блока не є МРМ; генерують модифікований список інтра-режимів; і декодують дані, які представляють індекс інтра-режиму поточного блока в модифікованому списку. 40. Спосіб за п. 39, в якому генерування модифікованого списку включає видалення МРМ з модифікованого списку інтра-режимів. 41. Спосіб за п. 39, в якому генерування модифікованого списку включає сортування модифікованого списку інтра-режимів за зростанням згідно зі значенням режиму інтра-режимів. 42. Спосіб за п. 38, в якому визначення МРМ включає визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому призначення індексу кожному з МРМ включає значення індексу інтра-режиму, пов'язаного з сусіднім зліва відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зверху відеоблоком. 43. Спосіб за п. 38, в якому визначення МРМ включає визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому призначення індексу кожному з МРМ включає призначення індексу інтра-режиму, пов'язаного з сусіднім зверху відеоблоком, який менше, ніж індекс одного з інтра-режимів, пов'язаних з сусіднім зліва відеоблоком. 44. Спосіб за п. 38, в якому призначення індексу кожному з МРМ включає призначення індексів інтра-режимам сусідніх блоків поточного блока на основі порядку, в якому декодуються сусідні блоки. 45. Спосіб за п. 38, в якому призначення індексу кожному з МРМ включає призначення індексів МРМ на основі статистики, пов'язаної з вірогідністю МРМ, узгоджується з інтра-режимом, для передбачення поточного блока. 46. Спосіб за п. 38, який додатково включає декодування даних, які представляють порядок, в якому індекси призначаються МРМ. 47. Пристрій для декодування даних, який містить: пам'ять, виконану з можливістю зберігання поточного блока відеоданих; і один або більше процесорів, виконаних з можливістю: визначення найбільш ймовірних режимів (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, декодованими перед поточним блоком; генерування списку визначених МРМ для передбачення поточного блока відеоданих на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ; призначення індексу кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і декодування даних інтра-режиму поточного блока, у тому числі декодування, коли один з МРМ узгоджується з інтра-режимом для поточного блока, даних, які представляють індекс МРМ, що узгоджується, в списку, з закодованого бітового потоку; ідентифікації інтра-режиму для передбачення поточного блока з використанням згаданого індексу; і декодування поточного блока з ідентифікованим інтра-режимом для поточного блока. 48. Пристрій за п. 47, в якому для декодування даних інтра-режиму згадані один або більше процесорів додатково виконані з можливістю, коли один з МРМ не узгоджується з інтрарежимом для передбачення поточного блока: декодування прапора МРМ, який вказує, що інтра-режим для передбачення поточного блока не є МРМ; генерування модифікованого списку інтра-режимів; і декодування даних, які представляють індекс інтра-режиму поточного блока в модифікованому списку. 26 UA 111510 C2 5 10 15 20 25 30 35 40 45 50 55 49. Пристрій за п. 48, в якому для генерування модифікованого списку згадані один або більше процесорів виконані з можливістю видалення МРМ з модифікованого списку інтра-режимів. 50. Пристрій за п. 48, в якому для генерування модифікованого списку згадані один або більше процесорів виконані з можливістю сортування модифікованого списку інтра-режимів за зростанням згідно зі значенням режиму інтра-режимів. 51. Пристрій за п. 47, в якому для визначення МРМ згадані один або більше процесорів виконані з можливістю визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексу інтра-режиму, пов'язаному з сусіднім зліва відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зверху. 52. Пристрій за п. 47, в якому для визначення МРМ один або більше процесорів виконані з можливістю визначення інтра-режимів, пов'язаних з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексу інтрарежиму, пов'язаному з сусіднім зверху блоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зліва. 53. Пристрій за п. 47, в якому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексів інтра-режимам сусідніх блоків поточного блока на основі порядку, в якому декодуються сусідні блоки. 54. Пристрій за п. 47, в якому для призначення індексу кожному з МРМ згадані один або більше процесорів виконані з можливістю призначення індексів МРМ на основі статистики, пов'язаної з вірогідністю МРМ, узгоджується з інтра-режимом, для передбачення поточного блока. 55. Пристрій за п. 47, в якому згадані один або більше процесорів додатково виконані з можливістю декодування даних, які представляють порядок, в якому індекси призначаються МРМ. 56. Пристрій за п. 47, в якому пристрій містить відеодекодер, і при цьому для декодування поточного блока згадані один або більше процесорів додатково виконані з можливістю: отримання, з закодованого бітового потоку, залишкового відеоблока, пов'язаного з поточним блоком; генерування опорного блока за допомогою передбачення поточного блока з використанням ідентифікованого інтра-режиму для поточного блока; визначення значень для поточного блока з комбінації опорного блока і прийнятого залишкового відеоблока; і при цьому пристрій додатково містить пристрій відображення, виконаний з можливістю відображення поточного блока. 57. Зчитуваний комп'ютером носій даних, що зберігає інструкції, які при їх виконанні змушують один або більше процесорів: визначити найбільш ймовірні режими (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, декодованими перед поточним блоком; генерувати список визначених МРМ для передбачення поточного блока відеоданих на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ; призначати індекс кожному з МРМ без пересортовування МРМ в списку на основі індексу режиму МРМ; і декодувати дані інтра-режиму поточного блока, у тому числі декодувати, коли один з МРМ узгоджується з інтра-режимом для поточного блока, дані, які представляють індекс МРМ, що узгоджується, в списку, з закодованого бітового потоку; ідентифікації інтра-режиму для передбачення поточного блока з використанням згаданого індексу; і декодування поточного блока з ідентифікованим інтра-режимом для поточного блока. 58. Зчитуваний комп'ютером носій даних за п. 57, в якому для декодування даних інтра-режиму поточного блока, коли один з МРМ не узгоджується з інтра-режимом для передбачення поточного блока, інструкції додатково змушують згадані один або більше процесорів: декодувати прапор МРМ, який вказує, що інтра-режим для передбачення поточного блока не є МРМ; генерувати модифікований список інтра-режимів; і декодувати дані, які представляють індекс інтра-режиму поточного блока в модифікованому списку. 27 UA 111510 C2 5 10 15 20 25 59. Зчитуваний комп'ютером носій даних за п. 57, в якому для визначення МРМ інструкції змушують згадані один або більше процесорів визначати інтра-режими, пов'язані з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному МРМ інструкції змушують згадані один або більше процесорів призначати індекс інтра-режиму, пов'язаному з сусіднім зверху відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зліва. 60. Зчитуваний комп'ютером носій даних за п. 57, в якому для визначення МРМ інструкції змушують згадані один або більше процесорів визначати інтра-режими, пов'язані з сусіднім зліва відеоблоком поточного блока і сусіднім зверху відеоблоком поточного блока, і при цьому для призначення індексу кожному з МРМ інструкції змушують згадані один або більше процесорів призначати індекс інтра-режиму, пов'язаному з сусіднім зліва відеоблоком, який менше, ніж індекс інтра-режиму, пов'язаного з сусіднім зверху. 61. Пристрій для декодування відеоданих, пристрій містить: засіб для визначення найбільш ймовірних режимів (МРМ) для передбачення поточного блока відеоданих, при цьому МРМ є інтра-режимами, пов'язаними з відповідними сусідніми блоками відеоданих, декодованими перед поточним блоком; засіб для генерування списку визначених МРМ для передбачення поточного блока відеоданих на основі позиції відповідних сусідніх блоків відеоданих, пов'язаних з МРМ; засіб для призначення індексу кожному з МРМ в списку без пересортовування МРМ в списку на основі індексу режиму МРМ; і засіб для декодування, коли один з МРМ узгоджується з інтра-режимом для поточного блока, даних інтра-режиму поточного блока, у тому числі декодування даних, які представляють індекс МРМ, що узгоджується, в списку, з закодованого бітового потоку; засіб для ідентифікації інтра-режиму для передбачення поточного блока з використанням згаданого індексу; і засіб для декодування поточного блока з ідентифікованим інтра-режимом для поточного блока. 28
ДивитисяДодаткова інформація
Назва патенту англійськоюIntra-mode video coding
Автори англійськоюSeregin, Vadim, Chien, Wei-Jung, Karczewicz, Marta
Назва патенту російськоюИнтра-режим видеокодирования
Автори російськоюСерёгин Вадим, Чиень Вэй-Цзюн, Карчевич Марта
МПК / Мітки
МПК: H04N 19/11, H04W 48/16
Мітки: інтра-режим, відеокодування
Код посилання
<a href="https://ua.patents.su/35-111510-intra-rezhim-videokoduvannya.html" target="_blank" rel="follow" title="База патентів України">Інтра-режим відеокодування</a>
Попередній патент: Спосіб глибокого пірометалургійного збагачення залізорудних кварцитів
Наступний патент: Спосіб отримання рекомбінантних штамів метилотрофних дріжджів hansenula polymorpha, здатних до надсинтезу глутатіону
Випадковий патент: Спосіб створення просвітлюючих покриттів на поверхні оптичних деталей з використанням іто