Сигналізація елементів синтаксису для коефіцієнтів перетворення для піднаборів одиниці кодування на рівні листя
Формула / Реферат
1. Спосіб кодування блока відеоданих, що містить:
розділення блока перетворення відеоданих на множину піднаборів коефіцієнтів перетворення;
визначення для кожного відповідного піднабору коефіцієнтів перетворення з множини піднаборів коефіцієнтів перетворення, чи генерувати відповідний елемент синтаксису, який вказує, чи включає в себе згаданий відповідний піднабір коефіцієнтів перетворення будь-які ненульові коефіцієнти; і
генерування відповідного елемента синтаксису для кожного з піднаборів коефіцієнтів перетворення зі згаданої множини піднаборів коефіцієнтів перетворення, для яких визначено генерувати цей елемент синтаксису.
2. Спосіб за п. 1, в якому визначення для відповідного піднабору коефіцієнтів перетворення, чи генерувати відповідний елемент синтаксису, включає визначення, чи поліпшить генерування відповідного елемента синтаксису ефективність кодування.
3. Спосіб за п. 1, в якому визначення, чи генерувати відповідний елемент синтаксису, включає порівняння кількості потенційних ненульових коефіцієнтів згаданого відповідного піднабору коефіцієнтів перетворення зі щонайменше одним порогом; і,
якщо кількість потенційних ненульових коефіцієнтів згаданого відповідного піднабору коефіцієнтів перетворення більше, ніж поріг, генерування відповідного елемента синтаксису.
4. Спосіб за п. 3, який додатково включає:
визначення кількості потенційних ненульових коефіцієнтів на основі того, скільки коефіцієнтів згаданого відповідного піднабору коефіцієнтів перетворення мають позицію після останнього ненульового коефіцієнта блока перетворення.
5. Спосіб за п. 1, в якому визначення, чи генерувати відповідний елемент синтаксису, включає:
визначення для множини попередньо закодованих блоків перетворення відеоданих середньої кількості ненульових коефіцієнтів, включених до згаданого відповідного піднабору коефіцієнтів перетворення;
порівняння середньої кількості ненульових коефіцієнтів, включених до згаданого відповідного піднабору коефіцієнтів перетворення, з порогом; і,
якщо середня кількість ненульових коефіцієнтів менше, ніж поріг, генерування відповідного елемента синтаксису.
6. Спосіб за п. 1, в якому визначення, чи генерувати відповідний елемент синтаксису, включає визначення, чи включає в себе відповідний піднабір коефіцієнтів перетворення останній ненульовий коефіцієнт для блока перетворення відеоданих, при цьому відповідний елемент синтаксису, який вказує, чи включає в себе відповідний піднабір коефіцієнтів перетворення будь-які ненульові коефіцієнти, не генерується, якщо відповідний піднабір коефіцієнтів перетворення включає в себе останній ненульовий коефіцієнт.
7. Пристрій, сконфігурований, щоб кодувати щонайменше один блок перетворення відеоданих, що містить:
процесор, сконфігурований, щоб:
розділяти блок перетворення відеоданих на множину піднаборів коефіцієнтів перетворення;
визначати для кожного відповідного піднабору коефіцієнтів перетворення з множини піднаборів коефіцієнтів перетворення, чи генерувати відповідний елемент синтаксису, який вказує, чи включає в себе згаданий відповідний піднабір коефіцієнтів перетворення будь-які ненульові коефіцієнти; і
генерувати відповідний елемент синтаксису для кожного з піднаборів коефіцієнтів перетворення з множини піднаборів коефіцієнтів перетворення, для яких визначено генерувати цей елемент синтаксису.
8. Пристрій за п. 7, в якому процесор також сконфігурований, щоб визначати для відповідного піднабору коефіцієнтів перетворення, чи генерувати відповідний елемент синтаксису, на основі того, чи поліпшить генерування відповідного елемента синтаксису ефективність кодування.
9. Пристрій за п. 7, в якому процесор також сконфігурований, щоб:
визначати, чи генерувати відповідний елемент синтаксису, на основі порівняння кількості потенційних ненульових коефіцієнтів відповідного піднабору коефіцієнтів перетворення щонайменше з одним порогом; і,
якщо кількість потенційних ненульових коефіцієнтів відповідного піднабору коефіцієнтів перетворення більша, ніж поріг, генерувати відповідний елемент синтаксису.
10. Пристрій за п. 9, в якому процесор також сконфігурований, щоб визначати кількість потенційних ненульових коефіцієнтів на основі того, скільки коефіцієнтів відповідного піднабору коефіцієнтів перетворення мають позицію після останнього ненульового коефіцієнта блока перетворення.
11. Пристрій за п. 7, в якому процесор також сконфігурований, щоб:
визначати, для множини попередньо закодованих блоків перетворення відеоданих, середню кількість ненульових коефіцієнтів, включених до відповідного піднабору коефіцієнтів перетворення;
порівнювати середню кількість ненульових коефіцієнтів, включених до відповідного піднабору коефіцієнтів перетворення, з порогом; і,
якщо середня кількість ненульових коефіцієнтів менша, ніж поріг, генерувати відповідний елемент синтаксису.
12. Пристрій за п. 7, в якому процесор також сконфігурований, щоб визначати, чи включає відповідний піднабір коефіцієнтів перетворення в себе останній ненульовий коефіцієнт для блока перетворення відеоданих, в якому відповідний елемент синтаксису, який вказує, чи включає відповідний піднабір коефіцієнтів перетворення в себе будь-які ненульові коефіцієнти, не генерується, якщо відповідний піднабір коефіцієнтів перетворення включає в себе останній ненульовий коефіцієнт.
13. Зчитуваний комп'ютером носій даних, який зберігає інструкції, які, коли виконуються, змушують обчислювальний пристрій:
розділяти блок перетворення відеоданих на множину піднаборів коефіцієнтів перетворення;
визначати для кожного відповідного піднабору коефіцієнтів перетворення з множини піднаборів коефіцієнтів перетворення, чи генерувати відповідний елемент синтаксису, який вказує, чи включає в себе згаданий відповідний піднабір коефіцієнтів перетворення будь-які ненульові коефіцієнти; і
генерувати відповідний елемент синтаксису для кожного з піднаборів коефіцієнтів перетворення зі згаданої множини піднаборів коефіцієнтів перетворення, для яких визначено генерувати цей елемент синтаксису.
14. Зчитуваний комп'ютером носій даних за п. 13, в якому інструкції також змушують обчислювальний пристрій:
визначати, для відповідного піднабору коефіцієнтів перетворення, чи генерувати відповідний елемент синтаксису, на основі того, чи поліпшить генерування відповідного елемента синтаксису ефективність кодування.
15. Зчитуваний комп'ютером носій даних за п. 13, в якому інструкції також змушують обчислювальний пристрій:
визначати, чи генерувати відповідний елемент синтаксису, на основі порівняння кількості потенційних ненульових коефіцієнтів відповідного піднабору коефіцієнтів перетворення зі щонайменше одним порогом; і,
якщо кількість потенційних ненульових коефіцієнтів відповідного піднабору коефіцієнтів перетворення більша, ніж поріг, генерувати відповідний елемент синтаксису.
16. Зчитуваний комп'ютером носій даних за п. 15, в якому інструкції також змушують обчислювальний пристрій визначати кількість потенційних ненульових коефіцієнтів, на основі того, скільки коефіцієнтів відповідного піднабору коефіцієнтів перетворення мають позицію після останнього ненульового коефіцієнта блока перетворення.
17. Зчитуваний комп'ютером носій даних за п. 13, в якому інструкції також змушують обчислювальний пристрій:
визначати, для множини попередньо закодованих блоків перетворення відеоданих, середню кількість ненульових коефіцієнтів, включених до відповідного піднабору коефіцієнтів перетворення;
порівнювати середню кількість ненульових коефіцієнтів, включених до відповідного піднабору коефіцієнтів перетворення, з порогом; і,
якщо середня кількість ненульових коефіцієнтів менше, ніж поріг, генерувати відповідний елемент синтаксису.
18. Зчитуваний комп'ютером носій даних за п. 13, в якому інструкції також змушують обчислювальний пристрій визначати, чи включає відповідний піднабір коефіцієнтів перетворення в себе останній ненульовий коефіцієнт для блока перетворення відеоданих, в якому відповідний елемент синтаксису, який вказує, чи включає в себе згаданий відповідний піднабір коефіцієнтів перетворення будь-які ненульові коефіцієнти, не генерується, якщо відповідний піднабір коефіцієнтів перетворення включає в себе останній ненульовий коефіцієнт.
19. Пристрій, сконфігурований, щоб кодувати щонайменше один блок перетворення відеоданих, що містить:
засіб для розділення блока перетворення відеоданих на множину піднаборів коефіцієнтів перетворення;
засіб для визначення для кожного відповідного піднабору коефіцієнтів перетворення з множини піднаборів коефіцієнтів перетворення, чи генерувати відповідний елемент синтаксису, який вказує, чи включає в себе згаданий відповідний піднабір коефіцієнтів перетворення будь-які ненульові коефіцієнти; і
засіб для генерування відповідного елемента синтаксису для кожного з піднаборів коефіцієнтів перетворення з множини піднаборів коефіцієнтів перетворення, для яких визначено генерувати згаданий елемент синтаксису.
20. Пристрій за п. 19, який додатково містить засіб для визначення, для згаданого відповідного піднабору коефіцієнтів перетворення, чи генерувати відповідний елемент синтаксису, на основі того, чи поліпшить генерування відповідного елемента синтаксису ефективність кодування.
21. Пристрій за п. 19, який додатково містить:
засіб для визначення, чи генерувати відповідний елемент синтаксису, на основі порівняння кількості потенційних ненульових коефіцієнтів відповідного піднабору коефіцієнтів перетворення зі щонайменше одним порогом; і
засіб для, якщо кількість потенційних ненульових коефіцієнтів відповідного піднабору коефіцієнтів перетворення більша, ніж поріг, генерування відповідного елемента синтаксису.
22. Пристрій за п. 21, який додатково містить засіб для визначення кількості потенційних ненульових коефіцієнтів, на основі того, скільки коефіцієнтів відповідного піднабору коефіцієнтів перетворення мають позицію після останнього ненульового коефіцієнта блока перетворення.
23. Пристрій за п. 19, в якому засіб для визначення, чи генерувати відповідний елемент синтаксису, містить:
засіб для визначення, для множини попередньо закодованих блоків перетворення відеоданих, середньої кількості ненульових коефіцієнтів, включених до відповідного піднабору коефіцієнтів перетворення;
засіб для того, щоб порівняти середню кількість ненульових коефіцієнтів, включених до відповідного піднабору коефіцієнтів перетворення, з порогом; і
засіб для, якщо середня кількість ненульових коефіцієнтів менша, ніж поріг, генерування відповідного елемента синтаксису.
24. Пристрій за п. 19, який додатково містить засіб для визначення, чи включає відповідний піднабір коефіцієнтів перетворення в себе останній ненульовий коефіцієнт для блока перетворення відеоданих, в якому відповідний елемент синтаксису, який вказує, чи включає відповідний піднабір коефіцієнтів перетворення в себе будь-які ненульові коефіцієнти, не генерується, якщо відповідний піднабір коефіцієнтів перетворення включає в себе останній ненульовий коефіцієнт.
25. Спосіб декодування блока відеоданих, що включає:
розділення блока перетворення відеоданих на множину піднаборів коефіцієнтів перетворення; і
визначення, для кожного відповідного піднабору коефіцієнтів перетворення з множини піднаборів коефіцієнтів перетворення, чи включає в себе згаданий відповідний піднабір відповідний елемент синтаксису, який вказує, чи включає в себе згаданий відповідний піднабір коефіцієнтів перетворення будь-які ненульові коефіцієнти; і
визначення, для кожного відповідного піднабору коефіцієнтів перетворення, чи декодувати відповідний піднабір коефіцієнтів перетворення, на основі відповідного елемента синтаксису.
26. Спосіб за п. 25, який додатково включає, якщо відповідний піднабір коефіцієнтів перетворення не включає в себе відповідний елемент синтаксису, декодування відповідного піднабору коефіцієнтів перетворення.
27. Спосіб за п. 26, який додатково включає, якщо відповідний піднабір коефіцієнтів перетворення даних включає в себе відповідний елемент синтаксису, визначення, чи декодувати відповідний піднабір коефіцієнтів перетворення, на основі вказівки.
28. Спосіб за п. 27, який додатково включає:
якщо відповідний елемент синтаксису, асоційований з відповідним піднабором коефіцієнтів перетворення, має перше значення, декодування відповідного піднабору коефіцієнтів перетворення; і,
якщо відповідний елемент синтаксису має друге значення, відмінне від першого значення, недекодування відповідного піднабору коефіцієнтів перетворення.
29. Спосіб за п. 25, який додатково включає:
якщо відповідний піднабір коефіцієнтів перетворення не включає в себе відповідний елемент синтаксису, визначення, чи включає відповідний піднабір коефіцієнтів перетворення в себе окремий елемент синтаксису, який вказує, що останній ненульовий коефіцієнт включений у відповідний піднабір коефіцієнтів перетворення; і
декодування відповідного піднабору коефіцієнтів перетворення, якщо відповідний піднабір коефіцієнтів перетворення включає в себе окремий елемент синтаксису, який вказує, що останній ненульовий коефіцієнт включений у відповідний піднабір коефіцієнтів перетворення.
30. Пристрій, сконфігурований, щоб декодувати блок відеоданих, що містить процесор, сконфігурований, щоб:
розділяти блок перетворення відеоданих на множину піднаборів коефіцієнтів перетворення;
визначати, для кожного відповідного піднабору коефіцієнтів перетворення з множини піднаборів коефіцієнтів перетворення, чи включає в себе згаданий відповідний піднабір відповідний елемент синтаксису, який вказує, чи включає в себе згаданий відповідний піднабір коефіцієнтів перетворення будь-які ненульові коефіцієнти; і
визначати, для кожного відповідного піднабору коефіцієнтів перетворення, чи декодувати відповідний піднабір коефіцієнтів перетворення, на основі відповідного елемента синтаксису.
31. Пристрій за п. 30, в якому процесор також сконфігурований, щоб, якщо відповідний піднабір коефіцієнтів перетворення не включає в себе відповідний елемент синтаксису, декодувати відповідний піднабір коефіцієнтів перетворення.
32. Пристрій за п. 31, в якому процесор також сконфігурований, щоб, якщо відповідний піднабір коефіцієнтів перетворення включає в себе відповідний елемент синтаксису, визначати, чи декодувати відповідний піднабір коефіцієнтів перетворення, на основі вказівки.
33. Пристрій за п. 32, в якому процесор також сконфігурований, щоб:
якщо відповідний елемент синтаксису, асоційований з відповідним піднабором коефіцієнтів перетворення, має перше значення, декодувати відповідний піднабір коефіцієнтів перетворення; і,
якщо відповідний елемент синтаксису має друге значення, відмінне від першого значення, не декодувати відповідний піднабір коефіцієнтів перетворення.
34. Пристрій за п. 30, в якому процесор також сконфігурований, щоб:
якщо відповідний піднабір коефіцієнтів перетворення не включає в себе відповідний елемент синтаксису, визначати, чи включає в себе згаданий відповідний піднабір коефіцієнтів перетворення окремий елемент синтаксису, який вказує, що останній ненульовий коефіцієнт включений у відповідний піднабір коефіцієнтів перетворення; і
декодувати відповідний піднабір коефіцієнтів перетворення, якщо відповідний піднабір коефіцієнтів перетворення включає в себе окремий елемент синтаксису, який вказує, що останній ненульовий коефіцієнт включений у відповідний піднабір коефіцієнтів перетворення.
35. Зчитуваний комп'ютером носій даних, який зберігає інструкції, які, коли виконуються, змушують обчислювальний пристрій:
розділяти блок перетворення відеоданих на множину піднаборів коефіцієнтів перетворення;
визначати, для кожного відповідного піднабору коефіцієнтів перетворення з множини піднаборів коефіцієнтів перетворення, чи включає в себе згаданий відповідний піднабір коефіцієнтів перетворення відповідний елемент синтаксису, який вказує, чи включає відповідний піднабір коефіцієнтів перетворення в себе будь-які ненульові коефіцієнти; і
визначати, для кожного відповідного піднабору коефіцієнтів перетворення, чи декодувати відповідний піднабір коефіцієнтів перетворення, на основі відповідного елемента синтаксису.
36. Зчитуваний комп'ютером носій даних за п. 35, в якому інструкції також змушують обчислювальний пристрій: якщо відповідний піднабір коефіцієнтів перетворення не включає в себе відповідний елемент синтаксису, декодувати відповідний піднабір коефіцієнтів перетворення.
37. Зчитуваний комп'ютером носій даних за п. 36, в якому інструкції також змушують обчислювальний пристрій, якщо відповідний піднабір коефіцієнтів перетворення включає в себе відповідний елемент синтаксису, визначати, чи декодувати відповідний піднабір коефіцієнтів перетворення, на основі вказівки.
38. Зчитуваний комп'ютером носій даних за п. 37, в якому інструкції також змушують обчислювальний пристрій:
якщо відповідний елемент синтаксису, асоційований з відповідним піднабором коефіцієнтів перетворення, має перше значення, декодувати відповідний піднабір коефіцієнтів перетворення; і,
якщо відповідний елемент синтаксису має друге значення, відмінне від першого значення, не декодувати відповідний піднабір коефіцієнтів перетворення.
39. Зчитуваний комп'ютером носій даних за п. 35, в якому інструкції також змушують обчислювальний пристрій:
якщо відповідний піднабір коефіцієнтів перетворення не включає в себе відповідний елемент синтаксису, визначати, чи включає в себе згаданий відповідний піднабір коефіцієнтів перетворення окремий елемент синтаксису, який вказує, що останній ненульовий коефіцієнт включений у відповідний піднабір коефіцієнтів перетворення; і
декодувати відповідний піднабір коефіцієнтів перетворення, якщо відповідний піднабір коефіцієнтів перетворення включає в себе окремий елемент синтаксису, який вказує, що останній ненульовий коефіцієнт включений у відповідний піднабір коефіцієнтів перетворення.
40. Пристрій, сконфігурований, щоб декодувати блок відеоданих, що містить:
засіб для розділення блока перетворення відеоданих на множину піднаборів коефіцієнтів перетворення;
засіб для визначення, для кожного відповідного піднабору коефіцієнтів перетворення з множини піднаборів коефіцієнтів перетворення, чи включає в себе згаданий відповідний піднабір відповідний елемент синтаксису, який вказує, чи включає відповідний піднабір коефіцієнтів перетворення в себе будь-які ненульові коефіцієнти; і
засіб для визначення, для кожного відповідного піднабору коефіцієнтів перетворення, чи декодувати відповідний піднабір коефіцієнтів перетворення, на основі елемента синтаксису.
41. Пристрій за п. 40, який додатково містить засіб для, якщо відповідний піднабір коефіцієнтів перетворення не включає в себе відповідний елемент синтаксису, декодування відповідного піднабору коефіцієнтів перетворення.
42. Пристрій за п. 41, який додатково містить засіб для, якщо відповідний піднабір коефіцієнтів перетворення включає в себе відповідний елемент синтаксису, визначення декодувати відповідний піднабір коефіцієнтів перетворення, на основі вказівки.
43. Пристрій за п. 42, який додатково містить:
засіб для, якщо відповідний елемент синтаксису, асоційований з відповідним піднабором коефіцієнтів перетворення, має перше значення, декодування відповідного піднабору коефіцієнтів перетворення; і
засіб для, якщо відповідний елемент синтаксису має друге значення, відмінне від першого значення, недекодування відповідного піднабору коефіцієнтів перетворення.
44. Пристрій за п. 40, який додатково містить:
якщо відповідний піднабір коефіцієнтів перетворення не включає в себе відповідний елемент синтаксису, засіб для визначення, чи включає в себе згаданий відповідний піднабір коефіцієнтів перетворення окремий елемент синтаксису, який вказує, що останній ненульовий коефіцієнт включений у відповідний піднабір коефіцієнтів перетворення; і
засіб для того, щоб декодувати відповідний піднабір коефіцієнтів перетворення, якщо відповідний піднабір коефіцієнтів перетворення включає в себе окремий елемент синтаксису, який вказує, що останній ненульовий коефіцієнт включений у відповідний піднабір коефіцієнтів перетворення.
Текст
Реферат: Дане розкриття описує способи для того, щоб кодувати коефіцієнти перетворення для блока відеоданих. Згідно з цими способами, відеокодер ділить одиницю рівня блока відеоданих на множину піднаборів коефіцієнтів перетворення. Відеокодер генерує, для піднабору з множини піднаборів коефіцієнтів перетворення, елемент синтаксису, який вказує, чи включає в себе згаданий піднабір які-небудь ненульові коефіцієнти. У деяких прикладах відеокодер може вибірково визначати, чи генерувати елемент синтаксису для кожного піднабору. Декодер може UA 111492 C2 (12) UA 111492 C2 зчитувати ентропійно кодований бітовий потік, який включає в себе елемент синтаксису, і визначати, чи декодувати піднабір, на основі елемента синтаксису. UA 111492 C2 5 10 15 20 25 30 35 40 45 50 55 60 Дана заявка вимагає пріоритет попередньої заявки на патент США № 61/503,541, поданої 30 червня 2011 р., і попередньої заявки на патент США № 61/552,341, поданої 27 жовтня 2011 р., весь зміст кожної з яких включений тут по посиланню. ГАЛУЗЬ ТЕХНІКИ Дане розкриття стосується кодування і стиснення відео. Більш конкретно, дане розкриття направлене на способи для того, щоб сканувати квантовані коефіцієнти перетворення. РІВЕНЬ ТЕХНІКИ Цифрові можливості відео можуть бути включені в широкий діапазон пристроїв, включаючи цифрові телевізори, цифрові системи прямого мовлення, бездротові системи мовлення, персональні цифрові помічники (PDA), портативні або настільні комп'ютери, планшетні комп'ютери, зчитувачі електронних книг, цифрові камери, цифрові пристрої реєстрації, цифрові медіаплеєри, відеоігрові пристрої, пульти відеоігор, стільникові або супутникові радіотелефони, так звані "смартфони," пристрої організації відеотелеконференцій, пристрої потокової передачі відео і т. п. Цифрові відеопристрої реалізовують способи стиснення відео, такі, як описані в стандартах, визначених за допомогою MPEG-2, MPEG-4, ITU-T H.263 або ITU-T H.264/MPEG-4, Part 10, Advanced Video Coding (AVC), стандарту високоефективного кодування відео (HEVC), що розвивається на даний час, і розширеннях таких стандартів. Відеопристрої можуть передавати, приймати, кодувати, декодувати і/або зберігати цифрову відеоінформацію більш ефективно, реалізовуючи такі способи стиснення відео. Способи стиснення відео виконують просторове (всередині картинки) прогнозування і/або часове (між картинками) прогнозування, щоб зменшити або видалити надмірність, властиву відеопослідовностям. Для основаного на блоках кодування відео вирізка відео (тобто відеокадр або частина відеокадру) може бути розділена на відеоблоки, які можуть також згадуватися як блоки дерева, одиниці кодування (CU) і/або вузли кодування. Відеоблоки у внутрішньокодованій (I) вирізці картинки кодують, використовуючи просторове прогнозування відносно опорних вибірок в сусідніх блоках в тій же самій картинці. Відеоблоки у зовнішньокодованій (Р або В) вирізці картинки можуть використовувати просторове прогнозування відносно опорних вибірок в сусідніх блоках в тій же самій картинці або часове прогнозування відносно опорних вибірок в інших опорних картинках. Картинки можуть згадуватися як кадри, і опорні картинки можуть згадуватися як опорні кадри. Просторове або часове прогнозування приводить до прогнозуючого блока для блока, який повинен бути закодований. Залишкові дані представляють пікселні різниці між первинним блоком, який повинен бути закодований, і прогнозуючим блоком. Зовнішньокодований блок кодують згідно з вектором руху, який вказує на блок опорних вибірок, що формують прогнозуючий блок, і залишковими даними, що вказують різницю між закодованим блоком і прогнозуючим блоком. Внутрішньокодований блок кодують згідно з режимом внутрішнього кодування і залишковими даними. Для подальшого стиснення залишкові дані можуть бути перетворені з пікселної області в область перетворення, приводячи до залишкових коефіцієнтів перетворення, які потім можуть квантуватися. Квантовані коефіцієнти перетворення, спочатку розміщені в двовимірному масиві, можуть бути скановані, щоб сформувати одновимірний вектор коефіцієнтів перетворення, і ентропійне кодування може бути застосоване, щоб досягнути ще більшої міри стиснення. СУТЬ ВИНАХОДУ При кодуванні відео, щоб стиснути об'єм даних, використовуваних для представлення відеоданих, відеокодер може виконувати ентропійне кодування відеоданих. Згідно зі способами, розкритими в даному описі, як частину ентропійного кодування, відеокодер ділить одиницю рівня листя (кінцевого рівня) відеоданих на множину піднаборів коефіцієнтів перетворення. Одиниця рівня листя, як описано тут, належить до нерозділеної одиниці структури даних відео, одним прикладом якої є кінцевий, нерозділений дочірній вузол структури даних квадродерева, як описано більш детально нижче. Для щонайменше одного з піднаборів кодер генерує елемент синтаксису, який вказує, чи включає в себе згаданий піднабір які-небудь ненульові коефіцієнти як частину ентропійно кодованого бітового потоку. Кодер визначає, чи сигналізувати елемент синтаксису для піднабору з множини піднаборів коефіцієнтів перетворення. Наприклад, кодер може визначити, чи сигналізувати елемент синтаксису, на основі кількості потенційних ненульових коефіцієнтів в межах піднабору або на основі середньої кількості ненульових коефіцієнтів для піднабору, на основі статистики для однієї або більше раніше кодованих одиниць рівня листя відеоданих. Декодер може зчитувати ентропійно кодований бітовий потік і визначати, чи декодувати коефіцієнти перетворення піднабору, на основі елемента синтаксису. У деяких прикладах декодер може визначити, чи декодувати піднабір коефіцієнтів перетворення, на основі того, чи 1 UA 111492 C2 5 10 15 20 25 30 35 40 45 50 55 60 включає ентропійно кодований бітовий потік в себе елемент синтаксису, асоційований з піднабором. Наприклад, якщо піднабір не включає в себе асоційований елемент синтаксису, декодер декодує піднабір. Однак, якщо піднабір дійсно включає в себе асоційований елемент синтаксису, декодер визначає, чи декодувати піднабір, на основі значення елемента синтаксису. Наприклад, якщо елемент синтаксису має перше значення, декодер декодує піднабір, але, якщо елемент синтаксису має друге, відмінне значення, декодер не декодує піднабір. У деяких прикладах способи даного розкриття можуть підвищити ефективність кодування кодера або декодера. Наприклад, способи, описані тут, можуть зменшити кількість бітів, використовуваних кодером, щоб генерувати ентропійно кодований бітовий потік, який представляє відеодані. У одному прикладі спосіб кодування блока відеоданих включає поділ одиниці рівня листя відеоданих на множину піднаборів коефіцієнтів перетворення і генерування, для піднабору з множини піднаборів коефіцієнтів перетворення, елемента синтаксису, який вказує, чи включає в себе згаданий піднабір які-небудь ненульові коефіцієнти. У іншому прикладі пристрій може бути сконфігурований, щоб кодувати щонайменше одну одиницю рівня листя відеоданих. Пристрій може містити процесор, сконфігурований, щоб розділити одиницю рівня листя відеоданих на множину піднаборів коефіцієнтів перетворення і генерувати, для піднабору з множини піднаборів коефіцієнтів перетворення, елемент синтаксису, який вказує, чи включає в себе згаданий піднабір які-небудь ненульові коефіцієнти. У іншому прикладі пристрій може бути сконфігурований, щоб кодувати щонайменше одну одиницю рівня листя відеоданих, причому пристрій містить засіб для поділу одиниці рівня листя відеоданих на множину піднаборів коефіцієнтів перетворення і засіб для генерування, для піднабору з множини піднаборів коефіцієнтів перетворення, елемента синтаксису, який вказує, чи включає в себе згаданий піднабір які-небудь ненульові коефіцієнти. У іншому прикладі спосіб декодування блока відеоданих включає поділ одиниці рівня листя відеоданих на множину піднаборів коефіцієнтів перетворення, визначення, для піднабору з множини піднаборів коефіцієнтів перетворення, чи включає в себе згаданий піднабір асоційований елемент синтаксису, який вказує, чи включає в себе згаданий піднабір які-небудь ненульові коефіцієнти, визначення, на основі елемента синтаксису, чи декодувати піднабір. У іншому прикладі пристрій може бути сконфігурований, щоб декодувати блок відеоданих, причому пристрій містить процесор, сконфігурований, щоб розділити одиницю рівня листя відеоданих на множину піднаборів коефіцієнтів перетворення, визначати, для піднабору з множини піднаборів коефіцієнтів перетворення, чи включає в себе згаданий піднабір асоційований елемент синтаксису, який вказує, чи включає в себе згаданий піднабір які-небудь ненульові коефіцієнти, і визначати, на основі елемента синтаксису, чи декодувати піднабір. У іншому прикладі пристрій може бути сконфігурований, щоб декодувати блок відеоданих, причому пристрій містить засіб для поділу одиниці рівня листя відеоданих на множину піднаборів коефіцієнтів перетворення, засіб для визначення, для піднабору з множини піднаборів коефіцієнтів перетворення, чи включає в себе згаданий піднабір елемент синтаксису, який вказує, чи включає в себе згаданий піднабір які-небудь ненульові коефіцієнти, і засіб для визначення, на основі елемента синтаксису, чи декодувати піднабір. Способи, описані в даному розкритті, можуть бути реалізовані в апаратному забезпеченні, програмному забезпеченні, програмно-апаратних засобах або будь-якій їх комбінації. Наприклад, різні способи можуть бути реалізовані або виконані одним або більше процесорами. Як використовується тут, процесор може належати до мікропроцесора, спеціалізованої інтегральної схеми (ASIC), програмованої користувачем вентильної матриці (FPGA), цифрового сигнального процесора (DSP) або іншої еквівалентної інтегральної або дискретної логічної схеми. Програмне забезпечення може бути виконане одним або більше процесорами. Програмне забезпечення, що містить інструкції для виконання способів, може бути спочатку збережене на зчитуваному комп'ютером носії і завантажене і виконане процесором. Відповідно, дане розкриття також розглядає зчитувані комп'ютером носії даних, які містять інструкції, щоб примусити процесор (або інший обчислювальний пристрій) виконувати будь-які способи, описані в даному розкритті. У деяких випадках зчитуваний комп'ютером носій даних може бути частиною комп'ютерного продукту, що зберігає програму, який може бути проданий виготовлювачам і/або використовуватися в пристрої. Комп'ютерний програмний продукт може включати в себе зчитуваний комп'ютером носій, і в деяких випадках може також включати в себе пакувальні матеріали. У одному прикладі дане розкриття описує зчитуваний комп'ютером носій даних, що зберігає інструкції, які, коли виконуються, примушують обчислювальний пристрій розділяти одиницю 2 UA 111492 C2 5 10 15 20 25 30 35 40 45 50 55 60 рівня листя відеоданих на множину піднаборів коефіцієнтів перетворення і генерувати, для піднабору з множини піднаборів коефіцієнтів перетворення, елемент синтаксису, який вказує, чи включає в себе згаданий піднабір які-небудь ненульові коефіцієнти. У іншому прикладі дане розкриття описує зчитуваний комп'ютером носій даних, що зберігає інструкції, які, коли виконуються, примушують обчислювальний пристрій розділяти одиницю рівня листя відеоданих на множину піднаборів коефіцієнтів перетворення, визначати, для піднабору з множини піднаборів коефіцієнтів перетворення, чи включає в себе згаданий піднабір асоційований елемент синтаксису, який вказує, чи включає в себе згаданий піднабір які-небудь ненульові коефіцієнти, і визначати, на основі елемента синтаксису, чи декодувати піднабір. Деталі одного або більше прикладів сформульовані в прикладених кресленнях і описі нижче. Інші ознаки, об'єкти і переваги винаходу будуть очевидні з опису і креслень і з формули винаходу. КОРОТКИЙ ОПИС КРЕСЛЕНЬ ФІГ. 1 є блок-схемою, яка ілюструє один приклад системи кодування і декодування відео, сконфігурованої, щоб працювати згідно зі способами даного розкриття. ФІГ. 2 є блок-схемою, яка ілюструє один приклад відеокодера, сконфігурованого, щоб працювати згідно зі способами даного розкриття. ФІГ. 3 є блок-схемою, яка ілюструє один приклад відеодекодера, сконфігурованого, щоб працювати згідно зі способами даного розкриття. ФІГ. 4 є концептуальною діаграмою, яка ілюструє один приклад одиниці рівня листя відеоданих, розділеної на множину піднаборів коефіцієнтів перетворення, сумісних з одним або більше аспектами даного розкриття. ФІГ. 5 є блок-схемою, яка ілюструє один приклад способу кодування одиниці рівня листя відеоданих, сумісного з одним або більше аспектами даного розкриття. ФІГ. 6 є блок-схемою, яка ілюструє інший приклад способу кодування одиниці рівня листя відеоданих, сумісного з одним або більше аспектами даного розкриття. ФІГ. 7 є блок-схемою, яка ілюструє інший приклад способу кодування одиниці рівня листя відеоданих, сумісного з одним або більше аспектами даного розкриття. ФІГ. 8 є блок-схемою, яка ілюструє один приклад способу декодування одиниці рівня листя відеоданих, сумісного з одним або більше аспектами даного розкриття. ДОКЛАДНИЙ ОПИС ФІГ. 1 є блок-схемою, що ілюструє зразкову систему 10 кодування і декодування відео, яка може використовувати способи, описані в даному розкритті. Як показано на фіг. 1, система 10 включає в себе пристрій-джерело 12, який генерує кодовані відеодані, які повинні бути декодовані в більш пізній час пристроєм 14 призначення. Пристрій-джерело 12 і пристрій 14 призначення можуть містити будь-який з широкого діапазону пристроїв, включаючи настільні комп'ютери, портативні комп'ютери (тобто ноутбуки), планшетні комп'ютери, телевізійні приставки, телефонні трубки, такі як так звані "смартфони", так звані "інтелектуальні" клавіатури, телевізори, камери, пристрої відображення, цифрові медіаплеєри, пульти відеоігор, пристрій потокової передачі відео або подібні. У деяких випадках пристрій-джерело 12 і пристрій 14 призначення можуть бути обладнані для бездротового зв'язку. Пристрій 14 призначення може приймати кодовані відеодані, які повинні бути декодовані, по лінії 16 зв'язку. Лінія 16 зв'язку може містити будь-який тип носія або пристрою, здатного передавати кодовані відеодані від пристрою-джерела 12 на пристрій 14 призначення. У одному прикладі, лінія 16 зв'язку може містити комунікаційний носій, щоб дозволити пристрою-джерелу 12 передавати кодовані відеодані безпосередньо на пристрій 14 призначення в реальному часі. Закодовані відеодані можуть бути модульовані згідно зі стандартом зв'язку, таким як протокол бездротового зв'язку, і передані на пристрій 14 призначення. Комунікаційний носій може містити будь-який бездротовий або дротовий комунікаційний носій, такий як радіочастотного (РЧ) спектра або одну або більше фізичних ліній передачі. Комунікаційний носій може бути частиною основаної на пакетній передачі мережі, такої як локальна мережа, регіональна мережа або глобальна мережа, така як Інтернет. Комунікаційний носій може включати в себе маршрутизатори, перемикачі, базові станції або будь-яке інше обладнання, яке може бути корисним, щоб полегшити зв'язок від пристрою-джерела 12 на пристрій 14 призначення. Альтернативно, кодовані дані можуть бути виведені з інтерфейсу 22 виведення на пристрій 32 зберігання. Аналогічно, до закодованих даних можна одержати доступ від пристрою 32 зберігання за допомогою інтерфейсу 28 введення. Пристрій 32 зберігання може включати в себе будь-який з множини розподілених або локально доступних носіїв зберігання даних, таких як накопичувач на жорстких дисках, диски Blu-ray, DVD, CD-ROM, флеш-пам'ять, енергозалежна 3 UA 111492 C2 5 10 15 20 25 30 35 40 45 50 55 або енергонезалежна пам'ять або будь-які інші придатні цифрові носії даних, для того, щоб зберігати закодовані відеодані. У іншому прикладі пристрій 32 зберігання може відповідати файловому серверу або іншому проміжному пристрою зберігання, який може зберігати закодоване відео, згенероване вихідним пристроєм 12. Пристрій 14 призначення може одержати доступ до збережених відеоданих з пристрою 32 зберігання за допомогою передачі у вигляді потоку або завантаження. Файловий сервер може бути будь-яким типом сервера, здатного до того, щоб зберігати закодовані відеодані і передавати ці кодовані відеодані на пристрій 14 призначення. Зразкові файлові сервери включають в себе мережевий сервер (наприклад, для веб-сайта), FTP-сервер, пристрої мережевих сховищ даних (NAS) або локальний дисковий накопичувач. Пристрій 14 призначення може одержати доступ до кодованих відеоданих через будь-яке стандартне з'єднання даних, включаючи Інтернетз'єднання. Воно може включати в себе бездротовий канал (наприклад, з'єднання Wi-Fi), дротове з'єднання (наприклад, DSL, кабельний модем і т. д.) або комбінацію обох, яка є придатною для того, щоб одержати доступ до закодованих відеоданих, що зберігаються на файловому сервері. Передача кодованих відеоданих від пристрою 32 зберігання може бути потоковою передачею, передачею завантаження або комбінацією обох. Способи даного розкриття не обов'язково обмежені бездротовими додатками або параметрами настройки. Ці способи можуть бути застосовані до кодування відео на підтримання будь-якого з множини мультимедійних додатків, таких як радіомовлення телепередач, передач кабельного телебачення, передач супутникового телебачення, потокових передач відео, наприклад через Інтернет, кодування цифрового відео для зберігання на запам'ятовуючому носії даних, декодування цифрового відео, збереженого на запам'ятовуючому носії даних, або інші додатки. У деяких прикладах система 10 може бути сконфігурована, щоб підтримувати односторонню або двосторонню відеопередачу, щоб підтримувати додатки, такі як передача у вигляді потоку відео, відтворення відео, мовлення відео і/або відеотелефонія. У прикладі згідно з фіг. 1 пристрій-джерело 12 включає в себе відеоджерело 18, відеокодер 20 і інтерфейс 22 виведення. У деяких випадках інтерфейс 22 виведення може включати в себе модулятор/демодулятор (модем) і/або передавач. У пристрої-джерелі 12 відеоджерело 18 може включати в себе джерело, таке як відеопристрій захоплення, наприклад відеокамера, відеоархів, що містить раніше захоплене відео, інтерфейс подачі відео, щоб приймати відео від постачальника відеоконтенту, і/або систему комп'ютерної графіки для генерування даних комп'ютерної графіки як вихідного відео або комбінацію таких джерел. Як один приклад, якщо відеоджерело 18 є відеокамерою, пристрій-джерело 12 і пристрій 14 призначення можуть сформувати так звані камерофони або відеотелефони. Однак, способи, описані в даному розкритті, можуть бути застосовні до кодування відео звичайно і можуть бути застосовані до бездротових і/або дротових додатків. Захоплене, попередньо захоплене або комп'ютерногенероване відео може бути закодоване відеокодером 20. Закодовані відеодані можуть бути передані безпосередньо на пристрій 14 призначення через інтерфейс 22 виведення з пристрою-джерела 12. Закодовані відеодані можуть також (або альтернативно) зберігатися на пристрої 32 зберігання для більш пізнього доступу за допомогою пристрою 14 призначення або інших пристроїв, для декодування і/або відтворення. Пристрій 14 призначення включає в себе інтерфейс 28 введення, відеодекодер 30 і пристрій 32 відображення. У деяких випадках інтерфейс 28 введення може включати в себе приймач і/або модем. Інтерфейс 28 введення з пристрою 14 призначення приймає закодовані відеодані по лінії 16 зв'язку. Закодовані відеодані, передані по лінії 16 зв'язку, або надані на пристрої 32 зберігання, можуть включати в себе множину елементів синтаксису, генерованих відеокодером 20, для використання відеодекодером, таким як відеодекодер 30, при декодуванні відеоданих. Такі елементи синтаксису можуть бути включені із закодованими відеоданими, переданими на комунікаційному носії, збережені на носії даних або збережені на файловому сервері. Пристрій 32 відображення може бути інтегрованим з або зовнішнім до пристрою 14 призначення. У деяких прикладах пристрій 14 призначення може включати в себе інтегрований пристрій відображення і також бути конфігурованим, щоб взаємодіяти із зовнішнім пристроєм відображення. У інших прикладах пристрій 14 призначення може бути пристроєм відображення. Звичайно пристрій 32 відображення відображає декодовані відеодані користувачу і може містити будь-який з множини пристроїв відображення, таких як рідкокристалічний дисплей (LCD), плазмовий дисплей, дисплей на органічних світлодіодах (OLED) або інший тип пристрою відображення. 4 UA 111492 C2 5 10 15 20 25 30 35 40 45 50 55 60 Відеокодер 20 і відеодекодер 30 можуть працювати згідно зі стандартом стиснення відео, таким як стандарт кодування відео високої продуктивності (HEVC), що знаходиться зараз в розвитку, і можуть відповідати Тестовій Моделі HEVC (HM). Альтернативно, відеокодер 20 і відеодекодер 30 можуть працювати згідно з іншими стандартами, що складають власність, або стандартами промисловості, такими як стандарт ITU-T H.264, альтернативно званий MPEG-4, Part 10, Advanced Video Coding (AVC), або розширеннями таких стандартів. Способи даного розкриття, однак, не обмежені ніяким конкретним стандартом кодування. Інші приклади включають в себе MPEG-2 і ITU-T H.263. Хоч не показано на фіг. 1, в деяких аспектах відеокодер 20 і відеодекодер 30 можуть, кожний, інтегруватися з аудіокодером і декодером і можуть включати в себе відповідні блоки MUX-DEMUX (мультиплексорів-демультиплексорів) або інше апаратне забезпечення і програмне забезпечення, щоб виконувати кодування як аудіо, так і відео в загальному потоці даних або окремих потоках даних. Якщо застосовно, блоки MUX-DEMUX можуть відповідати протоколу мультиплексора ITU H.223 або іншим протоколам, таким як протокол дейтаграм користувача (UDP). Відеокодер 20 і відеодекодер 30, кожний, можуть бути реалізовані як будь-яка з множини придатних схем кодера, таких як один або більше мікропроцесорів, цифрових сигнальних процесорів (DSPs), спеціалізованих інтегральних схем (ASIC), програмованих користувачем вентильних матриць (FPGA), дискретної логіки, програмного забезпечення, апаратного забезпечення, програмно-апаратних засобів або будь-яких їх комбінацій. Коли способи реалізовуються частково в програмному забезпеченні, пристрій може зберігати інструкції для програмного забезпечення у придатному постійному зчитуваному комп'ютером носії і виконувати інструкції в апаратному забезпеченні, використовуючи один або більше процесорів, щоб виконати способи даного розкриття. Кожний відеокодер 20 і відеодекодер 30 може бути включений в один або більше кодерів або декодерів, будь-який з яких може бути інтегрованим як частина об'єднаного кодера/декодера (кодек) у відповідному пристрої. JCT-VC працює над розвитком стандарту HEVC. Зусилля по стандартизації HEVC основані на моделі пристрою кодування відео, що розвивається, званій Тестова Модель HEVC (HM). HM передбачає декілька додаткових можливостей пристроїв кодування відео перед існуючими пристроями згідно, наприклад, з ITU-T H.264/AVC. Наприклад, тоді як H.264 забезпечує дев'ять режимів кодування з внутрішнім прогнозуванням, HM забезпечує цілих тридцять три режими кодування з внутрішнім прогнозуванням. Звичайно робоча модель HM описує, що відеокадр або картинка можуть бути розділені на послідовність блоків дерева або найбільших одиниць кодування (LCU), які включають в себе вибірки як яскравості, так і кольоровості. Блок дерева має аналогічну мету, що і макроблок стандарту H.264. Вирізка включає в себе декілька послідовних блоків дерева в порядку кодування. Відеокадр або картинка можуть бути розділені на одну або більше вирізок. Кожний блок дерева може бути розділений на одиниці кодування (CUs) згідно з квадродеревом. Наприклад, блок дерева, як вузол кореня квадродерева, може бути розділений на чотири дочірніх вузли, і кожний дочірній вузол може в свою чергу бути батьківським вузлом і бути розділений ще на чотири дочірніх вузли. Кінцевий нерозділений дочірній вузол, як вузол листа квадродерева, містить вузол кодування, тобто кодований відеоблок. Такий кінцевий нерозділений дочірній вузол структури даних відео згадується тут як одиниця рівня листя. Дані синтаксису, асоційовані з кодованим потоком бітів, можуть визначити максимальну кількість разів, скільки блок дерева може бути розділений, і можуть також визначати мінімальний розмір вузлів кодування. CU включає в себе вузол кодування і одиниці прогнозування (PUs) і одиниці перетворення (TUs), асоційовані з вузлом кодування. Розмір 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 типово мають той же розмір або 5 UA 111492 C2 5 10 15 20 25 30 35 40 45 50 55 60 менший, ніж PU. У деяких прикладах залишкові вибірки, відповідні CU, можуть бути підрозділені на менші одиниці, використовуючи структуру квадродерева, відому як "залишкове квадродерево" (RQT). Листові вузли RQT можуть згадуватися як одиниці перетворення (TUs). Такий листовий вузол TU є одним прикладом одиниці рівня листя, як описано тут. Значення пікселних різниць, асоційовані з TU, можуть бути перетворені, щоб сформувати коефіцієнти перетворення, які можуть бути квантовані. Звичайно PU включає в себе дані, що стосуються процесу прогнозування. Наприклад, коли PU є кодованою у внутрішньому режимі, PU може включати в себе дані, що описують режим внутрішнього прогнозування для PU. Як інший приклад, коли PU є кодованою у зовнішньому режимі, PU може включати в себе дані, що визначають вектор руху для PU. Дані, що визначають вектор руху для PU, можуть описувати, наприклад, горизонтальний компонент вектора руху, вертикальний компонент вектора руху, розрізнення для вектора руху (наприклад, пікселну точність в одну чверть або пікселну точність в одну восьму), опорну картинку, на яку вектор руху вказує, і/або список опорних картинок (наприклад, Список 0, Список 1 або Список С) для вектора руху. Звичайно TU використовується для процесів квантування і перетворення. Задана CU, що має одну або більше PU, може також включати в себе одну або більше одиниць перетворення (TU). Після прогнозування відеокодер 20 може обчислити залишкові значення, відповідні цій PU. Залишкові значення містять значення пікселної різниці, які можуть бути перетворені в коефіцієнти перетворення, квантовані і скановані з використанням одиниць TU, щоб сформувати перетворені в послідовну форму коефіцієнти перетворення для ентропійного кодування. Дане розкриття типово використовує термін "відеоблок", щоб посилатися на вузол кодування в CU. У деяких конкретних випадках дане розкриття може також використовувати термін "відеоблок", щоб посилатися на блок дерева, тобто LCU, або CU, що включає в себе вузол кодування і одиниці PU і одиниці TU. Відеопослідовність типово включає в себе ряд відеокадрів або картинок. Група картинок (GOP) звичайно містить послідовність з однієї або більше відеокартинок. GOP може включати в себе дані синтаксису в заголовку GOP, заголовку однієї або більше картинок GOP або в іншому місці, що описує декілька картинок, включених в GOP. Кожна вирізка картинки може включати в себе дані синтаксису вирізки, які описують режим кодування для відповідної вирізки. Відеокодер 20 типово оперує над відеоблоками в межах індивідуальних вирізок відео, щоб кодувати відеодані. Відеоблок може відповідати вузлу кодування в межах CU. Відеоблоки можуть мати фіксований або змінний розміри і можуть відрізнятися за розміром згідно з вказаним стандартом кодування. Як приклад HM підтримує прогнозування в PU різних розмірів. Передбачаючи, що розмір конкретної CU дорівнює 2N×2N, HM підтримує внутрішнє прогнозування в розмірах PU, що дорівнюють 2N×2N або N×N, і зовнішнє прогнозування в симетричних розмірах PU, що дорівнюють 2N×2N, 2N×N, N×2N або N×N. HM також підтримує асиметричне розділення для зовнішнього прогнозування в розмірах PU, що дорівнюють 2N×nU, 2N×nD, nL×2N і nR×2N. При асиметричному розділенні один напрям CU не розділяється, в той час як інший напрям розділяється на 25 % і 75 %. Частина CU, відповідна 25 %-ому розділенню, вказується за допомогою "n", що супроводжується індикацією "Верхня" (Up), "Ліва" (Left) або "Права" (Right). Таким чином, наприклад, "2N×nU" стосується CU розміром 2N×2N, яка розділена горизонтально з PU 2N×0,5N зверху і PU 2N×1,5N внизу. У даному описі "N×N" і "N на N" можуть використовуватися взаємозамінно, щоб посилатися на пікселні розмірності блока в термінах вертикального і горизонтального вимірювань, наприклад 16×16 пікселів або 16 на 16 пікселів. Звичайно блок 16×16 буде мати 16 пікселів у вертикальному напрямі (у=16) і 16 пікселів в горизонтальному напрямі (х=16). Аналогічно, блок N×N звичайно має N пікселів у вертикальному напрямі і N пікселів в горизонтальному напрямі, де N представляє ненегативне цілочислове значення. Піксели в блоці можуть бути розміщені в рядках і колонках. Крім того, блоки не повинні обов'язково мати однакову кількість пікселів в горизонтальному напрямі як у вертикальному напрямі. Наприклад, блоки можуть містити N×M пікселів, де М не обов'язково дорівнює N. Після кодування з внутрішнім прогнозуванням або із зовнішнім прогнозуванням, використовуючи одиниці PU в CU, відеокодер 20 може обчислити залишкові дані для одиниць TU в CU. Одиниці PU можуть містити пікселні дані в просторовій області (також званій пікселною областю), і одиниці TU можуть містити коефіцієнти в області перетворення після застосування перетворення, наприклад дискретного косинусного перетворення (DCT), цілочислового перетворення, вейвлет-перетворення або концептуально подібного перетворення, до залишкових відеоданих. Залишкові дані можуть відповідати пікселним різницям між пікселами 6 UA 111492 C2 5 10 15 20 25 30 35 40 45 50 55 60 незакодованої картинки і значеннями прогнозування, відповідними одиницям PU. Відеокодер 20 може сформувати одиниці TU, включаючи залишкові дані для CU, і потім перетворити одиниці TU, щоб сформувати коефіцієнти перетворення для цієї CU. Після будь-якого перетворення, щоб сформувати коефіцієнти перетворення, відеокодер 20 може виконати квантування коефіцієнтів перетворення. Квантування звичайно належить до процесу, в якому коефіцієнти перетворення квантуються, щоб можливо зменшити об'єм даних, використовуваних, щоб представити коефіцієнти, що забезпечують подальше стиснення. Процес квантування може зменшити глибину в бітах, асоційовану з деякими або всіма коефіцієнтами. Наприклад, значення n-біт може бути округлене в меншу сторону до значення m-біт під час квантування, де n більше, ніж m. У деяких прикладах відеокодер 20 може використовувати попередньо заданий порядок сканування, щоб сканувати квантовані коефіцієнти перетворення, щоб сформувати перетворений в послідовну форму вектор, який може бути ентропійно кодований. У інших прикладах відеокодер 20 може виконати адаптивне сканування. Після сканування квантованих коефіцієнтів перетворення, щоб сформувати одновимірний вектор, відеокодер 20 може ентропійно кодувати одновимірний вектор, наприклад, згідно з контекстно-адаптивним кодуванням із змінною довжиною коду (CAVLC), контекстно-адаптивним двійковим арифметичним кодуванням (CABAC), основаним на синтаксисі контекстно-адаптивним двійковим арифметичним кодуванням (SBAC), ентропійним кодуванням з розділенням інтервалу імовірності (PIPE) або іншими методиками ентропійного кодування. Відеокодер 20 може також ентропійно кодувати елементи синтаксису, асоційовані із закодованими відеоданими, для використання відеодекодером 30 при декодуванні відеоданих. Щоб виконати CABAC, відеокодер 20 може надати контекст в межах контекстної моделі символу, який повинен бути переданий. Контекст може стосуватися того, наприклад, чи є сусідні значення символу ненульовими чи ні. Щоб виконати CAVLC, відеокодер 20 може вибрати код із змінною довжиною слова для символу, який повинен бути переданий. Кодові слова в VLC можуть бути побудовані таким чином, що відносно більш короткі коди відповідають більш імовірним символам, в той час як більш довгі коди відповідають менш імовірним символам. Таким чином, використання VLC може досягати економії бітів, наприклад, при використанні кодових слів рівної довжини для кожного символу, який повинен бути переданий. Визначення імовірності може бути основане на контексті, призначеному на символ. Відповідно до цього розкриття, відеокодер 20 з пристрою-джерела 12 може сканувати коефіцієнти перетворення одиниці рівня листя відеоданих (наприклад, листовий вузол квадродерева або іншої структури даних), яка включає в себе двовимірну матрицю коефіцієнтів перетворення (наприклад, де кожний відповідає пікселам відображеного зображення) в одновимірний вектор, який представляє коефіцієнти перетворення. Згідно зі способами, розкритими в даному описі, виконуючи таке сканування, відеокодер 20 може розділити одиницю рівня листя відеоданих на множину піднаборів коефіцієнтів перетворення. Для кожного з піднаборів одиниці рівня листя кодер 20 може визначити, чи сигналізувати до декодера як частину ентропійно кодованого бітового потоку елемент синтаксису, який вказує, чи включає в себе згаданий піднабір які-небудь ненульові коефіцієнти. Кодер 20 може визначити, чи сигналізувати елемент синтаксису для конкретного піднабору, на основі визначення, чи поліпшить сигналізація елемента синтаксису ефективність кодування. Щоб визначити, чи поліпшить сигналізація елемента синтаксису ефективність кодування, кодер 20 може застосувати одне або більше правил, як описано більш детально нижче. Кодер 20 може вивести ентропійно кодований бітовий потік, який включає в себе блок відеоданих. Ентропійно кодований бітовий потік може потім бути зчитаний і декодований декодером, щоб відновити двовимірну матрицю, яка представляє одиницю рівня листя відеоданих. Зворотне декодування коефіцієнтів перетворення може також бути виконане відеодекодером 30 з пристрою 14 призначення. Таким чином, відеодекодер 30 може відобразити коефіцієнти одновимірного вектора коефіцієнтів перетворення, які представляють блок відеоданих, в позиції в двовимірній матриці коефіцієнтів перетворення, щоб відновити двовимірну матрицю коефіцієнтів перетворення. Згідно зі способами, розкритими в даному описі, декодер 30 може зчитати одновимірну матрицю, яка представляє одиницю рівня листя відеоданих, і розділити цю одиницю рівня листя на множину піднаборів коефіцієнтів перетворення. Для кожного з піднаборів декодер 30 може визначити, чи декодувати коефіцієнти перетворення піднабору. Наприклад, якщо декодер 30 не зчитує в ентропійно кодованому бітовому потоці елемент синтаксису, який вказує, чи має конкретний піднабір ненульові коефіцієнти, то декодер 30 декодує коефіцієнти піднабору. Однак, якщо декодер 30 зчитує такий елемент синтаксису, асоційований з конкретним піднабором, декодер 30 може визначити, чи 7 UA 111492 C2 5 10 15 20 25 30 35 40 45 50 55 60 декодувати коефіцієнти перетворення цього піднабору, на основі значення елемента синтаксису. Наприклад, якщо елемент синтаксису вказує, що піднабір включає в себе коефіцієнти, відмінні від нуля, декодер 30 декодує коефіцієнти перетворення цього піднабору. Однак, якщо елемент синтаксису вказує, що піднабір не включає в себе ненульових коефіцієнтів, декодер 30 не декодує коефіцієнти перетворення цього піднабору. Способи, описані тут, можуть підвищити ефективність кодування відео. Наприклад, розділення блока відеоданих на множину піднаборів коефіцієнтів перетворення і сигналізація елементів синтаксису, які вказують, чи включають піднабори в себе ненульові коефіцієнти, як описано тут, можуть зменшити кількість бітів, необхідних для представлення відеоданих, що може підвищити рівень ефективності кодера/декодера. Фіг. 2 є блок-схемою, що ілюструє зразковий відеокодер 20, який може реалізувати способи зовнішнього прогнозування, описані в даному розкритті. Відеокодер 20 може виконати внутрішнє і зовнішнє кодування відеоблоків в межах відеовирізок. Внутрішнє кодування покладається на просторове прогнозування, щоб зменшити або видалити просторову надмірність у відео в межах заданого відеокадру або картинки. Зовнішнє кодування покладається на часове прогнозування, щоб зменшити або видалити часову надмірність у відео в межах суміжних кадрів або картинок відеопослідовності. Внутрішній режим (I режим) може посилатися на будь-який з декількох основаних на просторовому стисненні режимів. Зовнішні режими, такі як однонаправлене прогнозування (Р режим) або двонаправлене прогнозування (В режим), можуть посилатися на будь-який з декількох основаних на часовому стисненні режимів. У прикладі згідно з фіг. 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, щоб відновити закодований блок для використання як опорної картинки. Модуль 46 внутрішнього прогнозування в межах модуля 41 прогнозування може виконати внутрішнє прогнозуюче кодування поточного відеоблока відносно одного або більше сусідніх блоків в тому ж самому кадрі або вирізці, що і поточний блок, який повинен бути закодований, щоб забезпечити просторове стиснення. Блок 42 оцінки руху і блок 44 компенсації руху в межах модуля 41 прогнозування виконують зовнішнє прогнозуюче кодування поточного відеоблока відносно одного або більше прогнозуючих блоків в одній або більше опорних картинках, щоб забезпечити часове стиснення. Блок 42 оцінки руху може бути сконфігурований, щоб визначити режим зовнішнього прогнозування для вирізки відео згідно із попередньо визначеним шаблоном для відеопослідовності. Попередньо визначений шаблон може визначати вирізки відео в послідовності як Р-вирізки, В-вирізки або вирізки GPB. Блок 42 оцінки руху і блок 44 компенсації руху можуть бути високоінтегровані, але ілюстровані по окремості в концептуальних цілях. Оцінка руху, виконана блоком 42 оцінки руху, є процесом генерування векторів руху, які оцінюють руху для відеоблоків. Вектор руху, наприклад, може вказувати зміщення PU відеоблока в межах поточного відеокадру або картинки відносно прогнозуючого блока в межах опорної картинки. Прогнозуючий блок є блоком, який виявлений як такий, що близько відповідає PU відеоблока, який повинен бути кодований, в термінах пікселної різниці, яка може бути визначена 8 UA 111492 C2 5 10 15 20 25 30 35 40 45 50 55 60 сумою абсолютних різниць (SAD), сумою різниць квадратів (SSD) або іншими метриками відмінності. У деяких прикладах відеокодер 20 може обчислювати значення для субцілочислових пікселних позицій опорних картинок, збережених в пам'яті 64 опорних картинок. Наприклад, відеокодер 20 може інтерполювати значення пікселних позицій в одну чверть, пікселних позицій в одну восьму або інших фракційних пікселних позицій опорної картинки. Тому блок 42 оцінки руху може виконувати пошук руху відносно повних пікселних позицій і фракційних пікселних позицій і вивести вектор руху з фракційною пікселною точністю. Блок 42 оцінки руху обчислює вектор руху для PU відеоблока у зовнішньокодованій вирізці, порівнюючи позицію PU з позицією прогнозуючого блока опорної картинки. Опорна картинка може бути вибрана з першого списку опорних картинок (Список 0) або другого списку опорних картинок (Список 1), кожний з яких ідентифікує одну або більше опорних картинок, збережених в пам'яті 64 опорних картинок. Блок 42 оцінки руху посилає обчислений вектор руху в блок 56 ентропійного кодування і блок 44 компенсації руху. Компенсація руху, виконана блоком 44 компенсації руху, може включати вибірку або генерування прогнозуючого блока, на основі вектора руху, визначеного за допомогою оцінки руху, можливо виконуючи інтерполяцію до субпікселної точності. Після прийому вектора руху для PU поточного відеоблока блок 44 компенсації руху може визначити місцезнаходження прогнозуючого блока, на який вектор руху вказує в одному зі списків опорних картинок. Відеокодер 20 формує залишковий відеоблок, віднімаючи пікселні значення прогнозуючого блока з пікселних значень поточного кодованого блока відео, формуючи значення пікселних різниць. Значення пікселних різниць формують залишкові дані для блока і можуть включати в себе компоненти різниці і яскравості, і кольоровості. Суматор 50 представляє компонент або компоненти, які виконують цю операцію віднімання. Блок 44 компенсації руху може також генерувати елементи синтаксису, асоційовані з відеоблоками і відеовирізкою, для використання відеодекодером 30 при декодуванні відеоблоків вирізки відео. Після того, як блок 44 компенсації руху генерує прогнозуючий блок для поточного відеоблока, відеокодер 20 формує залишковий відеоблок, віднімаючи прогнозуючий блок з поточного відеоблока. Залишкові відеодані в залишковому блоці можуть бути включені в одну або більше TU і подані до модуля 52 перетворення. Модуль 52 перетворення перетворює залишкові відеодані в залишкові коефіцієнти перетворення, використовуючи перетворення, такі як дискретне косинусне перетворення (DCT) або концептуально подібне перетворення. Модуль 52 перетворення може перетворити залишкові відеодані з пікселної області до області перетворення, такої як частотна область. Модуль 52 перетворення може послати одержувані коефіцієнти перетворення в блок 54 квантування. Блок 54 квантування квантує коефіцієнти перетворення, щоб додатково зменшити частоту проходження бітів. Процес квантування може зменшити глибину в бітах, асоційовану з деякими або всіма коефіцієнтами. Міра квантування може бути змінена, регулюючи параметр квантування. Після квантування блок 56 ентропійного кодування ентропійно кодує квантовані коефіцієнти перетворення. Наприклад, блок 56 ентропійного кодування може виконати контекстноадаптивне кодування із змінною довжиною коду (CAVLC), контекстно-адаптивне двійкове арифметичне кодування (CABAC), основане на синтаксисі контекстно-адаптивне двійкове арифметичне кодування (SBAC), ентропійне кодування з розділенням інтервалу імовірності (PIPE) або інший спосіб ентропійного кодування або методику. Після ентропійного кодування за допомогою блока 56 ентропійного кодування кодований потік бітів може бути переданий до відеодекодера 30 або заархівований для більш пізньої передачі або пошуку відеодекодером 30. Блок 56 ентропійного кодування може також ентропійно кодувати вектора руху і інші елементи синтаксису для поточної закодованої вирізки відео. У деяких прикладах блок 56 ентропійного кодування може потім виконати сканування матриці, що включає в себе квантовані коефіцієнти перетворення, щоб генерувати одновимірний вектор коефіцієнтів перетворення ентропійно кодованого бітового потоку. Згідно зі способами даного розкриття при скануванні матриці коефіцієнтів перетворення, щоб генерувати одновимірний вектор, блок 56 ентропійного кодування може розділити одиницю рівня листя відеоданих, таку як нерозділений дочірній вузол структури квадродерева, як описано вище, на множину піднаборів коефіцієнтів перетворення, які менше, ніж одиниця рівня листя. Наприклад, блок 56 ентропійного кодування може розділити одиницю рівня листя відеоданих на множину піднаборів, де кожний має геометричну форму в межах одиниці рівня листя. У деяких прикладах блок 56 ентропійного кодування може розділити коефіцієнти перетворення одиниці рівня листя на менші компонування прямокутної форми відеоданих. У інших прикладах блок 56 ентропійного кодування може розділити коефіцієнти перетворення 9 UA 111492 C2 5 10 15 20 25 30 35 40 45 50 55 60 одиниці рівня листя на піднабори трикутної форми коефіцієнтів перетворення. У ще інших прикладах блок 56 ентропійного кодування може розділити коефіцієнти перетворення одиниці рівня листя на піднабори, що мають інші форми, або навіть піднабори, які не відповідають ніякій конкретній геометричній формі. Замість цього блок 56 ентропійного кодування може розділити множину коефіцієнтів перетворення одиниці рівня листя згідно з порядком сканування коефіцієнтів перетворення, який може бути фіксованим або адаптивним. Наприклад, блок 56 ентропійного кодування може розділити множину коефіцієнтів перетворення одиниць рівня листя на множину піднаборів коефіцієнтів перетворення, на основі порядку сканування (наприклад, адаптивного або фіксованого порядку сканування) коефіцієнтів перетворення. Піднабори можуть мати подібні або різні кількості коефіцієнтів в різних прикладах. Згідно зі способами, розкритими в даному описі, як тільки одиниця рівня листя коефіцієнтів перетворення була розділена на множину піднаборів, блок 56 ентропійного кодування може генерувати, для щонайменше деяких з множини піднаборів, елемент синтаксису, який вказує, чи включає в себе відповідний піднабір які-небудь ненульові коефіцієнти. У деяких прикладах блок 56 ентропійного кодування може генерувати такий елемент синтаксису для кожного піднабору з множини піднаборів коефіцієнтів перетворення. У інших прикладах блок 56 ентропійного кодування може вибірково визначити, чи генерувати такий елемент синтаксису для кожного піднабору з множини піднаборів. Рішення, чи генерувати такий елемент синтаксису, може бути основане на тому, чи передбачає така сигналізація додаткове стиснення або поліпшену ефективність кодування. Якщо так, елемент синтаксису може генеруватися, але в іншому випадку і кодер 20, і декодер 30 можуть бути запрограмовані, щоб знати, що індикація не сигналізується в цьому випадку. Згідно зі способами даного розкриття, щоб визначити, чи поліпшить генерування такого елемента синтаксису ефективність стиснення або кодування, блок 56 ентропійного кодування може застосувати одне або більше правил, як описано більш детально нижче. Як один приклад блок 56 ентропійного кодування може визначити, чи генерувати елемент синтаксису для конкретного піднабору, на основі кількості потенційних ненульових коефіцієнтів цього піднабору. Наприклад, блок 56 ентропійного кодування може визначити, чи генерувати елемент синтаксису, на основі порівняння багатьох потенційних відмінних від нуля коефіцієнтів цього піднабору з порогом. Як один приклад такого способу, щоб визначити кількість потенційних ненульових коефіцієнтів піднабору, блок 56 ентропійного кодування визначає кількість коефіцієнтів піднабору, які мають більш ранню позицію, ніж останній ненульовий коефіцієнт цієї одиниці рівня листя, і порівнюють визначену кількість коефіцієнтів з порогом thNoCoeff, як показано в прикладі згідно з фіг. 6 і описано більш детально нижче. Згідно з цим прикладом, якщо визначена кількість потенційних ненульових коефіцієнтів більше, ніж поріг thNoCoeff, блок 56 ентропійного кодування генерує елемент синтаксису, який вказує, чи включає в себе згаданий піднабір які-небудь ненульові коефіцієнти. Однак, якщо визначена кількість потенційних ненульових коефіцієнтів менше ніж або дорівнює порогу thNoCoeff, блок 56 ентропійного кодування може не генерувати елемент синтаксису. Як один приклад, блок 56 ентропійного кодування визначає, чи сигналізувати елемент синтаксису, який вказує, чи включає в себе конкретний піднабір які-небудь ненульові коефіцієнти, на основі псевдокоду Прикладу 1 нижче: Приклад 1 noCoeff[xS][yS]>thNoCoeff, де noCoeff[xS][yS] вказує кількість потенційних ненульових коефіцієнтів піднабору, і thNoCoeff є пороговим значенням. У інших прикладах блок 56 ентропійного кодування може визначити, чи сигналізувати елемент синтаксису, який вказує, чи включає в себе піднабір коефіцієнтів перетворення якінебудь ненульові коефіцієнти, на основі інших правил. Наприклад, блок 56 ентропійного кодування може визначити, чи сигналізувати елемент синтаксису для піднабору, на основі середньої кількості ненульових коефіцієнтів піднабору, як описано більш детально нижче відносно прикладу згідно з фіг. 7. Згідно з цим прикладом, коли одиниці рівня листя відеоданих кодуються, блок 56 ентропійного кодування може зібрати і зберегти статистику, що вказує, як часто коефіцієнти в позиціях в межах кожного піднабору є ненульовими. На основі такої збереженої статистики блок 56 ентропійного кодування може визначити, чи генерувати елемент синтаксису. Наприклад, блок 56 ентропійного кодування може порівняти середню кількість ненульових коефіцієнтів для піднабору з порогом tfiAvrgCoeff. Якщо середня кількість ненульових коефіцієнтів піднабору менше, ніж поріг, блок 56 ентропійного кодування генерує елемент синтаксису. Однак, якщо середня кількість ненульових коефіцієнтів піднабору більше ніж або дорівнює порогу tfiAvrgCoeff, блок 56 ентропійного кодування не генерує елемент 10 UA 111492 C2 5 10 15 20 25 30 35 40 45 50 55 синтаксису на основі припущення, що в цьому випадку дуже ймовірно, що піднабір містить щонайменше один ненульовий коефіцієнт. Як інший приклад для піднабору, який містить останній ненульовий коефіцієнт (відносно зигзагоподібного сканування, перший ненульовий коефіцієнт при зворотному зигзагоподібному скануванні) одиниці рівня листя, той факт, що цей піднабір містить останній ненульовий коефіцієнт, означає, що це піднабір повинен включати в себе щонайменше один ненульовий коефіцієнт, і тому можна передбачити, що будь-який піднабір, який включає в себе останній ненульовий коефіцієнт, повинен включати в себе щонайменше один ненульовий коефіцієнт. Відповідно, немає необхідності генерувати елемент синтаксису для піднабору, який включає в себе останній ненульовий коефіцієнт, оскільки цей піднабір, як можна передбачити, включає в себе щонайменше один ненульовий коефіцієнт. Як один приклад, блок 56 ентропійного кодування може визначити, чи сигналізувати елемент синтаксису, який вказує, чи включає конкретний піднабір в себе які-небудь ненульові коефіцієнти, на основі псевдокоду Прикладу 2 нижче: Приклад 2 (noCodedCoeff[xS][yS]+noSubBlks[xS][yS]/2)/noSubBlks
ДивитисяДодаткова інформація
Назва патенту англійськоюSignaling syntax elements for transform coefficients for sub-sets of a leaf-level coding unit
Автори англійськоюKarczewicz, Marta, Wang, Xianglin, Guo, Liwei
Назва патенту російськоюСигнализация элементов синтаксиса для коэффициентов преобразования для поднаборов единиц кодирования на уровне листвы
Автори російськоюКарчевич Марта, Ван Сянлинь, Го Ливей
МПК / Мітки
МПК: H04N 19/18, H04N 19/132, H04N 19/70, H04N 19/129
Мітки: перетворення, кодування, синтаксису, сигналізація, піднаборів, коефіцієнтів, рівні, елементів, листя, одиниці
Код посилання
<a href="https://ua.patents.su/28-111492-signalizaciya-elementiv-sintaksisu-dlya-koeficiehntiv-peretvorennya-dlya-pidnaboriv-odinici-koduvannya-na-rivni-listya.html" target="_blank" rel="follow" title="База патентів України">Сигналізація елементів синтаксису для коефіцієнтів перетворення для піднаборів одиниці кодування на рівні листя</a>
Попередній патент: Новаторське ущільнення з язичком для герметизації контейнера, що закривається затичкою або кришкою, і спосіб його виготовлення
Наступний патент: Гібридний компенсатор реактивної потужності
Випадковий патент: Двотактний симетричний підсилювач струму