способ и устройство кодирования и декодирования цветных изображений с помощью корреляции между составляющими сигнала цветности
Классы МПК: | H04N9/64 схемы для обработки цветовых сигналов H04N7/30 с использованием кодирования с преобразованием H04N11/06 передающие системы, отличающиеся способом соединения отдельных составляющих сигнала цветного изображения |
Автор(ы): | КИМ Со-янг (KR), ПАРК Дзеонг-Хоон (KR), ЛИ Санг-рае (KR), ПАРК Сеунг-ран (KR), СОН Ю-ми (KR) |
Патентообладатель(и): | САМСУНГ ЭЛЕКТРОНИКС КО., ЛТД. (KR) |
Приоритеты: |
подача заявки:
2005-12-26 публикация патента:
20.10.2008 |
Изобретение относится к области техники обработки изображений и, в частности, к кодированию и декодированию данных цветных изображений, имеющих формат YCbCr, в меньший объем данных посредством нахождения корреляции между составляющими сигнала цветности Cb и Cr данных цветных изображений. Техническим результатом является повышение эффективности кодирования. Предложен способ кодирования цветных изображений, включающий в себя этапы, на которых: преобразуют составляющие сигнала цветности цветного изображения в каждом из двух или более режимов взаимного прогнозирования, вычисляют затраты для значений преобразования в каждом из двух или более режимов взаимного прогнозирования с помощью предварительно определенной функции затрат, выбирают один из двух или более режимов взаимного прогнозирования на основе результата вычисления и выводят значения преобразования выбранного режима взаимного прогнозирования; выполняют энтропическое кодирование выходных значений преобразования, причем предварительно определенной функцией затрат является одна из функции затрат, определяющей искажение в зависимости от скорости передачи, функции суммы значений абсолютной разности, функции суммы абсолютной преобразованной разности, функции суммы квадрата разности и функции среднего абсолютной разности. 12 н. и 76 з.п. ф-лы, 23 ил.
Формула изобретения
1. Устройство кодирования цветного изображения, содержащее: преобразователь составляющих сигнала цветности, который формирует множество значений преобразования посредством умножения составляющих сигнала цветности Cb и Cr цветного видео на предварительно определенные коэффициенты и суммирования результатов умножения, выбирает два значения преобразования, имеющие наименьшие затраты, вычисленные посредством предварительно определенной функции затрат, и выводит два значения преобразования, которые выбраны; и энтропический кодер, выполняющий энтропическое кодирование двух значений преобразования, в котором предварительно определенной функцией затрат является одна из функции затрат, определяющей искажение в зависимости от скорости передачи, функции суммы значений абсолютной разности, функции суммы абсолютной преобразованной разности, функции суммы квадрата разности и функции среднего абсолютной разности.
2. Устройство кодирования по п.1, в котором составляющие сигнала цветности Cb и Cr являются преобразованными и квантованными составляющими сигнала цветности.
3. Устройство кодирования по п.1, дополнительно содержащее преобразователь, который преобразует значения преобразования, которые выводятся из преобразователя составляющих сигнала цветности; и квантователь, который квантует значения преобразования, которые выводятся из преобразователя.
4. Устройство кодирования по п.1, в котором преобразователь составляющих сигнала цветности формирует значения преобразования с помощью следующего уравнения: значение преобразования = a×Cb+b×Cr+c,
где a, b и с - это предварительно определенные коэффициенты, и множество наборов (а, b, с) являются предварительно определяемыми.
5. Устройство кодирования по п.1, в котором преобразователь составляющих сигнала цветности содержит: вычислитель значений преобразования, который формирует значения преобразования посредством умножения составляющих сигнала цветности Cb и Cr на коэффициенты из множества наборов коэффициентов и суммирования результатов умножения; вычислитель затрат, который вычисляет затраты значений преобразования с помощью предварительно определенной функции затрат; и определитель, который выбирает и выводит два значения преобразования, имеющие наименьшие затраты.
6. Устройство по п.1, в котором преобразователь составляющих сигнала цветности подвергает групповому кодированию информацию по наборам предварительно определенных коэффициентов, соответствующим двух значениям преобразования, имеющим наименьшие затраты.
7. Способ кодирования цветного изображения, содержащий этапы, на которых: формируют множество значений преобразования посредством умножения составляющих сигнала цветности Cb и Cr цветного видео на предварительно определенные коэффициенты и суммирования результатов умножения; выбирают два значения преобразования, имеющие наименьшие затраты, вычисленные посредством предварительно определенной функции затрат; и выполняют энтропическое кодирование двух значений преобразования, которые выбраны, в котором предварительно определенной функцией затрат является одна из функции затрат, определяющей искажение в зависимости от скорости передачи, функции суммы значений абсолютной разности, функции суммы абсолютной преобразованной разности, функции суммы квадрата разности и функции среднего абсолютной разности.
8. Способ кодирования по п.7, в котором составляющие сигнала цветности Cb и Cr являются преобразованными и квантованными составляющими сигнала цветности.
9. Способ кодирования по п.7, дополнительно содержащий этап, на котором преобразуют и квантуют значения преобразования, если составляющие сигнала цветности Cb и Cr являются не преобразованными и не квантованными составляющими сигнала цветности.
10. Способ кодирования по п.7, дополнительно содержащий этап, на котором выполняют прогнозирование движения и компенсацию движения для взаимного прогнозирования.
11. Способ кодирования по п.7, в котором значения преобразования формируются с помощью следующего уравнения: значение преобразования = а×Cb+b×Cr+с,
где a, b и с - это предварительно определенные коэффициенты, и множество наборов (а, b, с) являются предварительно определяемыми пользователем.
12. Способ кодирования по п.7, в котором предварительно определенной функцией затрат является одна из функции затрат, определяющей искажение в зависимости от скорости передачи, функции суммы значений абсолютной разности, функции суммы абсолютной преобразованной разности, функции суммы квадрата разности и функции среднего абсолютной разности.
13. Способ кодирования по п.7, в котором формирование множества значений преобразования содержит этапы, на которых: умножают составляющие сигнала цветности Cb и Cr на коэффициенты из множества наборов коэффициентов и суммируют результаты умножения с коэффициентом с; и вычисляют затраты значений преобразования с помощью предварительно определенной функции затрат, коэффициенты а и b из множества наборов коэффициентов (а, b, с); и суммируют результаты умножения с коэффициентом с.
14. Способ кодирования по п.1, в котором информация о наборах коэффициентов, соответствующих двум значениям преобразования, имеющим наименьшие затраты, подвергается групповому кодированию.
15. Устройство декодирования цветного изображения, содержащее: энтропический декодер, который энтропически декодирует кодированный битовый поток и выводит декодированные данные; и обратный преобразователь составляющих сигнала цветности, который игнорирует декодированные данные, если декодированные данные являются составляющей сигнала яркости, и извлекает информацию о коэффициентах, которые умножаются и суммируются с составляющими сигнала цветности Cb и Cr, чтобы сформировать и вывести составляющие сигнала цветности Cb и Cr, если декодированными данными являются составляющие сигнала цветности, в котором обратный преобразователь составляющих сигнала цветности извлекает информацию, указывающую то, какой набор коэффициентов используется для того, чтобы кодировать составляющие сигнала цветности Cb и Cr, чтобы формировать составляющие сигнала цветности Cb и Cr, причем информация подвергается групповому кодированию и передается.
16. Устройство декодирования по п.15, дополнительно содержащее: обратный квантователь, который обратно квантует декодированные данные; и обратный преобразователь, который обратно преобразует декодированные данные.
17. Способ декодирования цветного изображения, содержащий этапы, на которых: энтропически декодируют кодированный битовый поток, чтобы сформировать декодированные данные; игнорируют декодированные данные, если декодированные данные являются составляющей сигнала яркости; и извлекают информацию о коэффициентах, которые умножаются и суммируются с составляющими сигнала цветности Cb и Cr, чтобы сформировать и вывести составляющие сигнала цветности Cb и Cr, если декодированными данными являются составляющие сигнала цветности, в котором обратный преобразователь составляющих сигнала цветности извлекает информацию, указывающую то, какой набор коэффициентов используется для того, чтобы кодировать составляющие сигнала цветности Cb и Cr, чтобы формировать составляющие сигнала цветности Cb и Cr, причем информация подвергается групповому кодированию и передается.
18. Способ декодирования по п.17, дополнительно содержащий этап, на котором обратно квантуют и обратно преобразуют декодированные данные.
19. Способ декодирования по п.17, дополнительно содержащий этап, на котором выполняют компенсацию движения для взаимного прогнозирования.
20. Устройство кодирования для кодирования цветного изображения, причем устройство кодирования содержит: преобразователь составляющих сигнала цветности, который преобразует составляющие сигнала цветности цветного изображения в каждом из, по меньшей мере, двух режимов взаимного прогнозирования, вычисляет затраты для значений преобразования в каждом из, по меньшей мере, двух режимов взаимного прогнозирования с помощью предварительно определенной функции затрат, выбирает один из, по меньшей мере, двух режимов взаимного прогнозирования на основе затрат и выводит значения преобразования режима взаимного прогнозирования, который выбран; и энтропический кодер, который выполняет энтропическое кодирование значений преобразования, которые выводятся преобразователем составляющих сигнала цветности, в котором преобразователь составляющих сигнала цветности выбирает один из, по меньшей мере, двух режимов взаимного прогнозирования в сегменте группы предварительно определенного макроблока, причем информация о режиме взаимного прогнозирования, выбранном для предварительно определенного макроблока, кодируется в сегменте группы предварительно определенной группы, содержащей множество блоков.
21. Устройство кодирования по п.20, в котором информация о режиме взаимного прогнозирования для множества блоков предварительно определенной группы классифицируется на множество матриц режимов, и множество матриц режимов кодируются.
22. Устройство кодирования по п.21, в котором множество матриц режимов содержат информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков.
23. Устройство кодирования по п.21, в котором предварительно определенная матрица режима получается посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '1', и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения 'О'.
24. Устройство кодирования по п.20, в котором информация режима взаимного прогнозирования для множества блоков предварительно определенной группы классифицируется на множество матриц режима в каждом режиме, множество матриц режима размещается в определенном порядке, информация о следующей матрице режима преобразуется на основе информации режима о предыдущей матрице режима, и преобразованная матрица режима кодируется.
25. Устройство кодирования по п.24, в котором множество матриц режима содержат информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков, и следующая матрица режима преобразуется посредством удаления информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрице режима, из информации о следующей матрице режима на основе информации о предыдущей матрице режима.
26. Устройство кодирования по п.25, в котором предварительно определенная матрица режима получается посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '1', и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
27. Устройство кодирования по п.26, в котором удаление информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрицы режима, осуществляется посредством присвоения информации о блоке значения '0'.
28. Устройство кодирования по п.20, в котором множеством блоков являются макроблоки, а предварительно определенной группой является изображение.
29. Устройство кодирования по п.20, в котором составляющими сигнала цветности являются Cb и Cr, которые предварительно преобразованы и предварительно квантованы.
30. Устройство кодирования по п.20, дополнительно содержащее: преобразователь, который преобразует значения преобразования, выводимые из преобразователя составляющих сигнала цветности; и квантователь, который квантует значения преобразования, выводимые из преобразователя.
31. Устройство кодирования по п.20, в котором предварительно определенной функцией затрат является одна из функции затрат, определяющей искажение в зависимости от скорости передачи, функции суммы значений абсолютной разности, функции суммы абсолютной преобразованной разности, функции суммы квадрата разности и функции среднего абсолютной разности.
32. Устройство кодирования по п.20, в котором преобразователь составляющих сигнала цветности содержит: хранилище таблиц режимов взаимного прогнозирования, которое сохраняет таблицу режимов взаимного прогнозирования, содержащую, по меньшей мере, два режима взаимного прогнозирования; вычислитель значений преобразования, который вычисляет значения преобразования составляющих сигнала цветности Cb и Cr цветного изображения в каждом из, по меньшей мере, двух режимов на основе таблицы режимов взаимного прогнозирования; и селектор режима, который выбирает режим взаимного прогнозирования, в котором значения преобразования имеют наименьшие затраты, вычисленные посредством предварительно определенной функции затрат.
33. Устройство кодирования по п.20, дополнительно содержащее: кодер группового кодирования, который выполняет групповое кодирование информации о режиме взаимного прогнозирования, который выбран.
34. Способ кодирования для кодирования цветного изображения, причем способ кодирования содержит этапы, на которых: преобразуют составляющие сигнала цветности цветного изображения в каждом из, по меньшей мере, двух режимов взаимного прогнозирования; вычисляют затраты для значений преобразования в каждом из, по меньшей мере, двух режимов взаимного прогнозирования с помощью предварительно определенной функции затрат; выбирают один из, по меньшей мере, двух режимов взаимного прогнозирования на основе затрат; и выполняют энтропическое кодирование выходных значений преобразования режима взаимного прогнозирования, который выбран, в котором выбор одного из, по меньшей мере, двух режимов взаимного прогнозирования выполняется в сегменте группы предварительно определенного макроблока, причем информация о режиме взаимного прогнозирования, выбранном для предварительно определенного макроблока, кодируется в сегменте предварительно определенной группы, содержащей множество блоков.
35. Способ кодирования по п.34, в котором информация о режиме взаимного прогнозирования для множества блоков предварительно определенной группы классифицируется на множество матриц режимов, и множество матриц режимов кодируются.
36. Способ кодирования по п.35, в котором матрицы режима содержат информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков.
37. Способ кодирования по п.35, в котором предварительно определенная матрица режима получается посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '1', и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
38. Способ кодирования по п.34, в котором информация режима взаимного прогнозирования для множества блоков предварительно определенной группы классифицируется на множество матриц режима в каждом режиме, множество матриц режима размещается в определенном порядке, информация о следующей матрице режима преобразуется на основе информации режима о предыдущей матрице режима, и преобразованная матрица режима кодируется.
39. Способ кодирования по п.38, в котором множество матриц режима содержат информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков, и следующая матрица режима преобразуется посредством удаления информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрице режима, из информации о следующей матрице режима на основе информации о предыдущей матрице режима.
40. Способ кодирования по п.39, в котором предварительно определенная матрица режима получается посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '1', и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
41. Способ кодирования по п.40, в котором удаление информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрице режима, осуществляется посредством присвоения информации о блоке значения '0'.
42. Способ кодирования по п.34, в котором множеством блоков являются макроблоки, а предварительно определенной группой является изображение.
43. Способ кодирования по п.34, в котором составляющими сигнала цветности являются Cb и Cr, которые предварительно преобразованы и предварительно квантованы.
44. Способ кодирования по п.34, дополнительно содержащий этап, на котором преобразуют и квантуют значения преобразования режима взаимного прогнозирования, который выбран, если составляющие сигнала цветности Cb и Cr содержат значения, которые являются не преобразованными и не квантованными.
45. Способ декодирования по п.34, дополнительно содержащий этап, на котором выполняют взаимное прогнозирование.
46. Способ кодирования по п.34, в котором предварительно определенной функцией затрат является одна из функции затрат, определяющей искажение в зависимости от скорости передачи, функции суммы значений абсолютной разности, функции суммы абсолютной преобразованной разности, функции суммы квадрата разности и функции среднего абсолютной разности.
47. Способ кодирования по п.34, дополнительно содержащий этап, на котором вычисляют значения преобразования составляющих сигнала цветности Cb и Cr цветного изображения в каждом режиме, причем выбор одного из, по меньшей мере, двух режимов взаимного прогнозирования содержит этап, на котором выбирают режим взаимного прогнозирования, в котором значения преобразования имеют наименьшие затраты, вычисленные посредством предварительно определенной функции затрат.
48. Способ кодирования по п.34, дополнительно содержащий этап, на котором выполняют групповое кодирование информации о режиме взаимного прогнозирования, который выбран.
49. Устройство декодирования для декодирования кодированного цветного изображения, при этом устройство декодирования содержит: энтропический декодер, который энтропически декодирует входной битовый поток; и обратный преобразователь составляющих сигнала цветности, который восстанавливает исходные составляющие сигнала цветности на основе информации режима взаимного прогнозирования, применяемого к текущему блоку, имеющему предварительно определенный размер, причем информация режима взаимного прогнозирования извлекается из входного битового потока, при этом информация режима взаимного прогнозирования указывает режим взаимного прогнозирования, который выбран из, по меньшей мере, двух режимов взаимного прогнозирования, и применяется к текущему блоку, и исходные составляющие сигнала цветности получаются из значений преобразования, соответствующих режиму взаимного прогнозирования, примененному к текущему блоку, в котором информация режима взаимного прогнозирования для входного битового потока представляет собой множество матриц режимов, на которые информация режима взаимного прогнозирования для множества блоков классифицируется в каждом режиме.
50. Устройство декодирования по п.49, в котором множество матриц режимов содержат информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков.
51. Устройство декодирования по п.49, в котором предварительно определенная матрица режима получается посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '1', и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
52. Устройство декодирования по п.49, в котором информация режима взаимного прогнозирования, извлеченная из входного битового потока, представляет собой преобразованную матрицу режима, сформированную посредством классификации информации режима взаимного прогнозирования для множества блоков предварительно определенной группы на множество матриц режима в каждом режиме, размещения множества матриц режима в определенном порядке и преобразования информации о следующей матрице режима на основе информации режима для предыдущей матрицы режима.
53. Устройство декодирования по п.52, в котором множество матриц режима содержат информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков, и следующая матрица режима преобразуется посредством удаления информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрицы режима, из информации о следующей матрице режима на основе информации о предыдущей матрице режима, при этом устройство декодирования декодирует преобразованные матрицы режимов в определенном порядке, чтобы восстановить исходные матрицы режимов.
54. Устройство декодирования по п.52, в котором предварительно определенная матрица режима получается посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '1', и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
55. Устройство кодирования по п.54, в котором удаление информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрицы режима, осуществляется посредством присвоения информации о блоке значения '0'.
56. Устройство декодирования по п.49, в котором текущий блок, имеющий предварительно определенный размер, представляет собой макроблок, а матрицы режимов содержат информацию режима взаимного прогнозирования для макроблока сегмента группы изображения.
57. Устройство декодирования по п.49, в котором составляющими сигнала цветности являются Cb и Cr.
58. Устройство декодирования по п.49, дополнительно содержащее: обратный квантователь, который обратно квантует декодированные данные; и обратный преобразователь, который обратно преобразует декодированные данные.
59. Устройство декодирования по п.49, при этом устройство декодирования извлекает информацию режима взаимного прогнозирования, закодированную и переданную согласно способу группового кодирования, чтобы вычислить составляющие сигнала цветности на основе информации режима взаимного прогнозирования.
60. Способ декодирования для декодирования кодированного цветного изображения, при этом способ декодирования содержит этапы, на которых: выполняют энтропическое кодирование входного битового потока; и восстанавливают исходные составляющие сигнала цветности на основе информации режима взаимного прогнозирования, применяемого к текущему блоку, имеющему предварительно определенный размер, причем информация режима взаимного прогнозирования извлекается из входного битового потока, при этом информация режима взаимного прогнозирования указывает режим взаимного прогнозирования, который выбран из, по меньшей мере, двух режимов взаимного прогнозирования, и применяется к текущему блоку, и исходные составляющие сигнала цветности получаются из значений преобразования, соответствующих примененному к текущему блоку, режиму взаимного прогнозирования, в котором информация режима взаимного прогнозирования, извлеченная из входного битового потока, представляет собой множество матриц режимов, на которые информация режима взаимного прогнозирования для множества блоков классифицируется в каждом режиме.
61. Способ декодирования по п.60, в котором множество матриц режимов содержат информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков.
62. Способ декодирования по п.60, в котором предварительно определенная матрица режима получается посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '1', и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
63. Способ декодирования по п.60, в котором информация режима взаимного прогнозирования, извлеченная из входного битового потока, представляет собой преобразованную матрицу режима, сформированную посредством классификации информации режима взаимного прогнозирования для множества блоков предварительно определенной группы на множество матриц режима в каждом режиме, размещения множества матриц режима в определенном порядке и преобразования информации о следующей матрице режима на основе информации режима о предыдущей матрице режима.
64. Способ декодирования по п.63, в котором множество матриц режима содержат информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков, и следующая матрица режима преобразуется посредством удаления информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрице режима, из информации о следующей матрице режима на основе информации о предыдущей матрице режима, при этом преобразованные матрицы режимов декодируются в определенном порядке, чтобы восстановить исходные матрицы режимов.
65. Способ декодирования по п.64, в котором предварительно определенная матрица режима получается посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '1', и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
66. Способ декодирования по п.65, в котором удаление информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрицы режима, осуществляется посредством присвоения информации о блоке значения '0'.
67. Способ декодирования по п.60, в котором текущий блок, имеющий предварительно определенный размер, представляет собой макроблок, а матрицы режимов содержат информацию режима взаимного прогнозирования для макроблока сегмента группы изображения.
68. Способ декодирования по п.60, в котором составляющими сигнала цветности являются Cb и Cr.
69. Способ декодирования по п.60, дополнительно содержащий этап, на котором обратно квантуют и обратно преобразуют декодированные данные.
70. Способ декодирования по п.60, дополнительно содержащий этап, на котором выполняют взаимное прогнозирование.
71. Способ декодирования по п.60, в котором информация режима взаимного прогнозирования, закодированная и переданная согласно способу группового кодирования, извлекается, чтобы вычислить составляющие сигнала цветности на основе информации режима взаимного прогнозирования.
72. Машиночитаемый носитель записи, имеющий воплощенную на нем компьютерную программу для выполнения вычислительным устройством способа кодирования цветного изображения, при этом способ кодирования содержит этапы, на которых: формируют множество значений преобразования посредством умножения составляющих сигнала цветности Cb и Cr цветного видео на предварительно определенные коэффициенты и суммирования результатов умножения; выбирают два значения преобразования, имеющие наименьшие затраты, вычисленные посредством предварительно определенной функции затрат; и выполняют энтропическое кодирование двух значений преобразования, которые выбраны, в котором предварительно определенной функцией затрат является одна из функции затрат, определяющей искажение в зависимости от скорости передачи, функции суммы значений абсолютной разности, функции суммы абсолютной преобразованной разности, функции суммы квадрата разности и функции среднего абсолютной разности.
73. Машиночитаемый носитель записи, имеющий воплощенную на нем компьютерную программу для выполнения вычислительным устройством способа кодирования цветного изображения, при этом способ кодирования содержит этапы, на которых: преобразуют составляющие сигнала цветности цветного изображения в каждом из, по меньшей мере, двух режимов взаимного прогнозирования; вычисляют затраты для значений преобразования в каждом из, по меньшей мере, двух режимов взаимного прогнозирования с помощью предварительно определенной функции затрат; выбирают один из, по меньшей мере, двух режимов взаимного прогнозирования на основе затрат; и выполняют энтропическое кодирование выходных значений преобразования режима взаимного прогнозирования, который выбран, в котором выбор одного из, по меньшей мере, двух режимов взаимного прогнозирования выполняется в сегменте группы предварительно определенного макроблока, причем информация о режиме взаимного прогнозирования, выбранном для предварительно определенного макроблока, кодируется в сегменте предварительно определенной группы, содержащей множество блоков.
74. Машиночитаемый носитель записи по п.73, в котором информация о режиме взаимного прогнозирования для множества блоков предварительно определенной группы классифицируется на множество матриц режимов, и множество матриц режимов кодируются.
75. Машиночитаемый носитель записи по п.74, в котором матрицы режима содержат информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков.
76. Машиночитаемый носитель записи по п.74, в котором предварительно определенная матрица режима получается посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '1', и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
77. Машиночитаемый носитель записи по п.73, в котором информация режима взаимного прогнозирования для множества блоков предварительно определенной группы классифицируется на множество матриц режима в каждом режиме, множество матриц режима размещается в определенном порядке, информация о следующей матрице режима преобразуется на основе информации режима о предыдущей матрице режима, и преобразованная матрица режима кодируется.
78. Машиночитаемый носитель записи по п.77, в котором множество матриц режима содержат информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков, и следующая матрица режима преобразуется посредством удаления информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрице режима, из информации о следующей матрице режима на основе информации о предыдущей матрице режима.
79. Машиночитаемый носитель записи по п.78, в котором предварительно определенная матрица режима получается посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '1', и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
80. Машиночитаемый носитель записи по п.79, в котором удаление информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрице режима, осуществляется посредством присвоения информации о блоке значения '0'.
81. Машиночитаемый носитель записи, имеющий воплощенную на нем компьютерную программу для выполнения вычислительным устройством способа декодирования цветного изображения, при этом способ декодирования содержит этапы, на которых: энтропически декодируют кодированный битовый поток, чтобы сформировать декодированные данные; игнорируют декодированные данные, если декодированные данные являются составляющей сигнала яркости; и извлекают информацию о коэффициентах, которые умножаются и суммируются с составляющими сигнала цветности Cb и Cr, чтобы сформировать и вывести составляющие сигнала цветности Cb и Cr, если декодированными данными являются составляющие сигнала цветности, в котором информация указывает то, какой набор коэффициентов используется для того, чтобы кодировать составляющие сигнала цветности Cb и Cr, чтобы формировать составляющие сигнала цветности Cb и Cr, причем информация подвергается групповому кодированию и передается.
82. Машиночитаемый носитель записи, имеющий воплощенную на нем компьютерную программу для выполнения вычислительным устройством способа декодирования цветного изображения, при этом способ декодирования содержит этапы, на которых: выполняют энтропическое кодирование входного битового потока; и восстанавливают исходные составляющие сигнала цветности на основе информации режима взаимного прогнозирования, применяемого к текущему блоку, имеющему предварительно определенный размер, причем информация режима взаимного прогнозирования извлекается из входного битового потока, при этом информация режима взаимного прогнозирования указывает режим взаимного прогнозирования, который выбран из, по меньшей мере, двух режимов взаимного прогнозирования, и применяется к текущему блоку, и исходные составляющие сигнала цветности получаются из значений преобразования, соответствующих режиму взаимного прогнозирования, примененному к текущему блоку, в котором информация режима взаимного прогнозирования, извлеченная из входного битового потока, представляет собой множество матриц режимов, на которые информация режима взаимного прогнозирования для множества блоков классифицируется в каждом режиме.
83. Машиночитаемый носитель записи по п.82, в котором множество матриц режима содержат информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков.
84. Машиночитаемый носитель записи по п.82, в котором предварительно определенная матрица режима получается посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '1', и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
85. Машиночитаемый носитель записи по п.82, в котором информация режима взаимного прогнозирования, извлеченная из входного битового потока, представляет собой преобразованную матрицу режима, сформированную посредством классификации информации режима взаимного прогнозирования для множества блоков предварительно определенной группы на множество матриц режима в каждом режиме, размещения множества матриц режима в определенном порядке и преобразования информации о следующей матрице режима на основе информации режима о предыдущей матрице режима.
86. Машиночитаемый носитель записи по п.85, в котором множество матриц режима содержат информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков, и следующая матрица режима преобразуется посредством удаления информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрицы режима, из информации о следующей матрице режима на основе информации о предыдущей матрице режима, при этом преобразованные матрицы режимов декодируются в определенном порядке, чтобы восстановить исходные матрицы режимов.
87. Машиночитаемый носитель записи по п.86, в котором предварительно определенная матрица режима получается посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '1', и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
88. Машиночитаемый носитель записи по п.87, в котором удаление информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрицы режима, осуществляется посредством присвоения информации о блоке значения '0'.
Приоритет по пунктам:
30.12.2004 по пп.1-19, 72, 81;
02.04.2005 по пп.20-71, 73-80, 82-88.
Описание изобретения к патенту
Область техники, к которой относится изобретение
Данная заявка притязает на приоритет Патентных заявок (Корея) номера 10-2004-0116962 и 10-2005-0027827, поданных 30 декабря 2004 года и 2 апреля 2005 года, соответственно, в Корейском Ведомстве по интеллектуальной собственности, сущности которых полностью содержатся в данном документе по ссылке.
Устройства и способы, в соответствии с настоящим изобретением, связаны с кодированием и декодированием данных цветных изображений, а более конкретно, с кодированием и декодированием данных цветных изображений, имеющих формат YCbCr, в меньший объем данных посредством нахождения корреляции между составляющими сигнала цветности Cb и Cr данных цветных изображений.
Уровень техники
Фиг.1 - это схема, иллюстрирующая данные, составляющие видео, имеющее RGB-формат, и видео, имеющее YCbCr-формат.
RGB-формат представляет цветное видео, делит составляющую сигнала цветности цветного видео на красную (R), зеленую (G) и синюю составляющую (B) сигнала цветности и представляет составляющие сигнала цветности R, G и B. При этом составляющие сигнала цветности R, G и B имеют одинаковый объем данных. Например, когда макроблок имеет размер 16×16, составляющие сигнала цветности R, G и B имеют размеры 16×16. Тем не менее, человеческий глаз более чувствителен к составляющим сигнала яркости, представляющим яркость, чем к составляющим сигнала цветности, представляющим цвета. Таким образом, формат, в котором цветное видео делится на составляющие сигнала яркости и цветности, которые должны быть представлены, может быть использован для того, чтобы уменьшить объем данных. YCbCr-формат является таким форматом.
В YCbCr-формате больший объем данных выделяется составляющим сигнала яркости, чем составляющим сигнала цветности. Ссылаясь на фиг.1, когда видео RGB-формата с макроблоком 16×16 представляется как видео YCbCr-формата в макроблоке 16×16, видео RGB-формата представляется как блок сигнала яркости 16×16 и блоки сигнала цветности Cb и Cr 8×8. При этом значения составляющей сигнала яркости Y и составляющих сигнала цветности Cb и Cr вычисляются посредством взвешенных комбинаций значений R, G и B. Например, значения составляющей сигнала яркости Y и составляющих сигнала цветности Cb и Cr вычисляются с помощью таких уравнений, как Y=0,29900R+0,58700G+0,11400B, Cb=-0,16874R-0,33126G+0,50000B и Cr=0,50000R-0,41869G-0,08131B. Как описано выше, данные цветных киноизображений, имеющих YCbCr-формат, включают в себя составляющую сигнала яркости и две составляющие сигнала цветности. Когда данные цветных киноизображений кодируются, составляющая сигнала яркости и две составляющие сигнала цветности кодируются отдельно. Другими словами, составляющая сигнала яркости и две составляющие сигнала цветности кодируются независимо от корреляции между двумя составляющими сигнала цветности.
Фиг.2 - это схема структур данных цветного видео в форматах 4:4:4, 4:2:2 и 4:2:0.
Когда кодируется киноизображение, цветовой формат киноизображения представляется посредством скорости передачи составляющей сигнала яркости и составляющих сигнала цветности пикселов киноизображения в горизонтальной линии пикселов. Далее составляющая сигнала яркости обозначается Y, а составляющие сигнала цветности обозначаются Cb и Cr. Сигнал яркости (яркость) одного пиксела представляется с помощью восьми битов в ITU-R Recommendation, и сигнал цветности (цвет) пиксела представляется с помощью двух составляющих сигнала цветности Cb и Cr, каждая из которых имеет восемь битов. Система координат для представления цветов называется цветовым пространством. В стандартах Экспертной группы по кинематографии (MPEG) цветовой формат киноизображения представляется с помощью трех 8-битовых частей информации, т.е. составляющей сигнала яркости Y и составляющих сигнала цветности Cb и Cr.
Когда цветное киноизображение представляется с помощью составляющей сигнала яркости Y и составляющих сигнала цветности Cb и Cr, несколько типов цветовых форматов может быть представлено согласно скорости передачи составляющей сигнала яркости Y и составляющих сигнала цветности Cb и Cr. В случае различных цветовых форматов составляющие сигнала яркости Y различных цветовых форматов одинаковы, но составляющие сигнала цветности Cb и Cr различных цветовых форматов варьируются. Ссылаясь на фиг.2, видео, имеющее формат 4:2:2, получается посредством дискретизации с понижением частоты вдвое составляющих сигнала цветности видео, имеющего формат 4:4:4, в горизонтальном направлении, а видео, имеющее формат 4:2:0, получается посредством дискретизации с понижением частоты вдвое составляющих сигнала цветности видео, имеющего формат 4:2:, в вертикальном направлении.
Как описано выше, в традиционном кодеке (MPEG, H.26x, VC1) цветное видео RGB преобразуется в цветное видео YCbCr, чтобы разделить составляющую сигнала яркости и составляющие сигнала цветности из цветного видео YCbCr, так чтобы отдельно кодировать составляющую сигнала яркости и составляющие сигнала цветности. При этом цветное видео может иметь несколько различных форматов, например, форматы 4:4:4, 4:2:2 и 4:2:0 и т.д. В общем, традиционный кодек (MPEG, H.26x, VC1) принимает видеоданные, имеющие формат 4:2:0, чтобы кодировать составляющую сигнала яркости Y и составляющие сигнала цветности Cb и Cr. Далее описывается пример видеоданных, имеющих формат 4:2:0.
Сущность изобретения
Техническая задача
В общем способе кодирования киноизображения составляющая сигнала яркости Y и составляющие сигнала цветности Cb и Cr кодируются так, чтобы не иметь временных и пространственных избыточностей. Пространственная избыточность удаляется посредством внутреннего прогнозирования между соседним блоком и текущим блоком, а временная избыточность удаляется посредством взаимного прогнозирования между предыдущим изображением и текущим изображением. При этом только разностная составляющая между соседним блоком и текущим блоком и только разностная составляющая между предыдущим изображением и текущим изображением кодируются посредством внутреннего прогнозирования, так чтобы повысить эффективность сжатия.
Другими словами, выполняются только прогнозирования для удаления временных и пространственных избыточностей составляющей сигнала яркости Y и составляющих сигнала цветности Cb и Cr. Удаление избыточности с помощью корреляции между составляющей сигнала яркости Y и составляющими сигнала цветности Cb и Cr не выполняется. Тем не менее, при сжатии видео высокого качества, например, передового H.264 объем данных составляющей сигнала яркости Y и составляющих сигнала цветности Cb и Cr возрастает. Таким образом, необходим способ для эффективного сжатия видео высокого качества.
Техническое решение
Настоящее изобретение предоставляет устройство и способ кодирования и декодирования цветных изображений, посредством которого корреляция между составляющими сигнала цветности Cb и Cb цветного изображения находится и используется для того, чтобы уменьшить объем данных, которые должны быть кодированы, с тем чтобы повысить скорость кодирования.
Согласно аспекту настоящего изобретения, предусмотрено устройство кодирования, включающее в себя: преобразователь составляющих сигнала цветности, умножающий составляющие сигнала цветности Cb и Cr цветного видео на предварительно определенные коэффициенты, суммирующий результаты умножения, чтобы сформировать множество значений преобразования, выбирающий два значения преобразования, имеющие наименьшие затраты, вычисленные посредством предварительно определенной функции затрат, и выводящий выбранные значения преобразования; и энтропический кодер, выполняющий энтропическое кодирование выбранных значений преобразования.
Составляющими сигнала цветности Cb и Cr могут быть преобразованные и квантованные составляющие сигнала цветности. Устройство кодирования дополнительно может включать в себя преобразователь и квантователь, преобразующие и квантующие значения преобразования, выводимые из преобразователя составляющих сигнала цветности, если составляющие сигнала цветности Cb и Cr являются не преобразованными и не квантованными составляющими сигнала цветности.
Преобразователь составляющих сигнала цветности может вычислять значения преобразования составляющих сигнала цветности Cb и Cr с помощью уравнения: значение преобразования = a x Cb + b x Cr + c, где a, b и c - это константы, и множество наборов (a, b, c) предварительно определяется пользователем. Предварительно определенной функцией затрат может быть одна из функции затрат, определяющей искажение в зависимости от скорости передачи, функции суммы значений абсолютной разности, функции суммы абсолютной преобразованной разности, функции суммы квадрата разности и функции среднего абсолютной разности.
Преобразователь составляющих сигнала цветности может включать в себя: вычислитель значений преобразования, умножающий составляющие сигнала цветности Cb и Cr на множество коэффициентов (a, b, c), суммирующий результаты умножения и формирующий значения преобразования; вычислитель затрат, вычисляющий затраты значений преобразования с помощью предварительно определенной функции затрат; и определитель, выбирающий и выводящий два значения преобразования, имеющие наименьшие затраты.
Преобразователь составляющих сигнала цветности может кодировать информацию по коэффициентам (a, b, c), соответствующим двум значениям преобразования, имеющим наименьшие затраты.
Согласно другому аспекту настоящего изобретения, предусмотрен способ кодирования, включающий в себя этапы, на которых: умножают составляющие сигнала цветности Cb и Cr цветного видео на предварительно определенные коэффициенты, суммируют результаты умножения, чтобы сформировать множество значений преобразования, выбирают два значения преобразования, имеющие наименьшие затраты, вычисленные посредством предварительно определенной функции затрат, и выводят выбранные значения преобразования; и выполняют энтропическое кодирование выбранных значений преобразования.
Умножение составляющих сигнала цветности Cb и Cr цветного видео на предварительно определенные коэффициенты, суммирование результатов умножения для того, чтобы сформировать множество значений преобразования, выбор двух значений преобразования, имеющих наименьшие затраты, вычисленные посредством предварительно определенной функции затрат, и вывод выбранных значений преобразования может включать в себя этапы, на которых: умножают составляющие сигнала цветности Cb и Cr на множество коэффициентов (a, b, c), суммируют результаты умножения и формируют значения преобразования; вычисляют затраты значений преобразования с помощью предварительно определенной функции затрат; и выбирают и выводят два значения преобразования, имеющие наименьшие затраты.
Информация о коэффициентах (a, b, c), соответствующих двум значениям преобразования, имеющим наименьшие затраты, может подвергаться групповому кодированию.
Согласно еще одному другому аспекту настоящего изобретения, предусмотрено устройство кодирования, включающее в себя: энтропический декодер, выполняющий энтропическое декодирование закодированного битового потока; и обратный преобразователь составляющих сигнала цветности, игнорирующий декодированные данные, если декодированные данные являются составляющей сигнала яркости, и извлекающий информацию о коэффициентах, на которые составляющие сигнала цветности Cb и Cr умножаются и суммируются, чтобы сформировать и вывести исходные составляющие сигнала цветности Cb и Cr, если декодированными данными являются составляющие сигнала цветности.
Обратный преобразователь составляющих сигнала цветности может извлекать информацию, указывающую то, какой набор коэффициентов (a, b, c) используется для того, чтобы кодировать составляющие сигнала цветности, чтобы вычислять составляющие сигнала цветности Cb и Cr, причем информация подвергается групповому кодированию и передается.
Согласно еще одному другому аспекту настоящего изобретения, предусмотрен способ кодирования, включающий в себя этапы, на которых: выполняют энтропическое декодирование закодированного битового потока; и игнорируют декодированные данные, если декодированные данные являются составляющей сигнала яркости, и извлекают информацию о коэффициентах, на которые составляющие сигнала цветности Cb и Cr умножаются и суммируются, чтобы сформировать выходные исходные составляющие сигнала цветности Cb и Cr, если декодированными данными являются составляющие сигнала цветности.
Согласно еще одному другому аспекту настоящего изобретения, предусмотрено устройство кодирования цветного изображения, включающее в себя: преобразователь составляющих сигнала цветности, преобразующий составляющие сигнала цветности цветного изображения в каждом из двух или более режимов взаимного прогнозирования, вычисляющий затраты для значений преобразования в каждом из двух или более режимов взаимного прогнозирования с помощью предварительно определенной функции затрат, выбирающий один из двух или более режимов взаимного прогнозирования на основе результата вычисления и выводящий значения преобразования выбранного режима взаимного прогнозирования; и энтропический кодер, выполняющий энтропическое кодирование выходных значений преобразования.
Выбор одного из двух или более режимов взаимного прогнозирования может выполняться в сегменте группы предварительно определенного макроблока. При этом информация о режиме взаимного прогнозирования, выбираемом для предварительно определенного макроблока, может кодироваться в сегменте предварительно определенной группы, содержащей множество блоков.
Информация о режиме взаимного прогнозирования для множества блоков предварительно определенной группы может быть классифицирована на множество матриц режимов, и множество матриц режимов кодируются.
Множество матриц режимов могут включать в себя информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков.
Предварительно определенная матрица режима может быть получена посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения 1, и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
Информация режима взаимного прогнозирования для множества блоков предварительно определенной группы может быть классифицирована на множество матриц режима в каждом режиме, множество матриц режима может быть размещено в определенном порядке, информация о следующей матрице режима может преобразовываться на основе информации режима о предыдущей матрице режима, и преобразованная матрица режима может кодироваться.
Множество матриц режима может включать в себя информацию о том, применяется ли режим взаимного прогнозирования, соответствующий текущей матрице режима, к каждому из множества блоков, и следующая матрица режима может быть преобразована посредством удаления информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрице режима, из информации о следующей матрице режима на основе информации о предыдущей матрице режима.
Предварительно определенная матрица режима может быть получена посредством присвоения информации режима, соответствующей блоку, к которому применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения 1, и присвоения информации режима, соответствующей блоку, к которому не применяется режим взаимного прогнозирования, соответствующий текущей матрице режима, значения '0'.
Удаление информации о блоке, к которому применяется режим взаимного прогнозирования предыдущей матрице режима, может осуществляться посредством присвоения информации о блоке значения '0'.
Множеством блоков могут быть макроблоки, а предварительно определенной группой может быть изображение.
Преобразователь составляющих сигнала цветности может включать в себя: хранилище таблиц режимов взаимного прогнозирования, сохраняющее таблицу режимов взаимного прогнозирования, содержащую два или более режимов взаимного прогнозирования; вычислитель значений преобразования, вычисляющий значения преобразования составляющих сигнала цветности Cb и Cr цветного изображения в каждом режиме на основе таблицы режимов взаимного прогнозирования; и селектор режима, выбирающий режим взаимного прогнозирования, в котором значения преобразования имеют наименьшие затраты, вычисленные посредством предварительно определенной функции затрат.
Устройство кодирования дополнительно может включать в себя кодер группового кодирования, RLE-кодер, выполняющий информации о выбранном режиме взаимного прогнозирования.
Согласно еще одному другому аспекту настоящего изобретения, предусмотрен способ кодирования цветного изображения, включающий в себя этапы, на которых: преобразуют составляющие сигнала цветности цветного изображения в каждом из двух или более режимов взаимного прогнозирования, вычисляют затраты для значений преобразования в каждом из двух или более режимов взаимного прогнозирования с помощью предварительно определенной функции затрат, выбирают один из двух или более режимов взаимного прогнозирования на основе результата вычисления и выводят значения преобразования выбранного режима взаимного прогнозирования; и выполняют энтропическое кодирование выходных значений преобразования.
Согласно еще одному другому аспекту настоящего изобретения, предусмотрено устройство декодирования закодированного цветного изображения, включающее в себя: энтропический декодер, выполняющий энтропическое декодирование входного битового потока; и обратный преобразователь составляющих сигнала цветности, восстанавливающий исходные составляющие сигнала цветности на основе информации режима взаимного прогнозирования, применяемого к текущему блоку, имеющему предварительно определенный размер, причем информация режима взаимного прогнозирования извлекается из входного битового потока. При этом информация режима взаимного прогнозирования может указывать режим взаимного прогнозирования из двух или более режимов взаимного прогнозирования, применяемых к текущему блоку, и исходные составляющие сигнала цветности могут быть получены из значений преобразования, соответствующих режиму взаимного прогнозирования, примененному к текущему блоку.
Согласно еще одному другому аспекту настоящего изобретения, предусмотрен способ декодирования цветного изображения, включающий в себя этапы, на которых: выполняют энтропическое декодирование входного битового потока; и восстанавливают исходные составляющие сигнала цветности на основе информации режима взаимного прогнозирования, применяемой к текущему блоку, имеющему предварительно определенный размер, причем информация режима взаимного прогнозирования извлекается из входного битового потока. При этом информация режима взаимного прогнозирования может указывать режим взаимного прогнозирования из двух или более режимов взаимного прогнозирования, применяемых к текущему блоку, и исходные составляющие сигнала цветности могут быть получены из значений преобразования, соответствующих режиму взаимного прогнозирования, примененному к текущему блоку.
Согласно еще одному другому аспекту настоящего изобретения, предусмотрен машиночитаемый носитель записи, имеющий воплощенную на нем компьютерную программу для способа кодирования.
Согласно еще одному другому аспекту настоящего изобретения, предусмотрен машиночитаемый носитель записи, имеющий воплощенную на нем компьютерную программу для способа декодирования по формуле изобретения.
Преимущества
Согласно настоящему изобретению, эффективность сжатия киноизображений может быть повышена, и число битов, требуемых для кодирования, может быть существенно снижено, и может осуществляться эффективное групповое кодирование.
Описание чертежей
Вышеописанные и/или другие аспекты настоящего изобретения должны стать более очевидными посредством описания примерных вариантов осуществления со ссылкой на прилагаемые чертежи, из которых:
Фиг.1 - это схема данных, составляющих видео, имеющее RGB-формат, и видео, имеющее YCbCr-формат;
Фиг.2 - это схема структур данных видео, имеющего форматы 4:4:4, 4:2:2 и 4:2:0;
Фиг.3 - это блок-схема устройства кодирования киноизображений согласно примерному варианту осуществления настоящего изобретения;
Фиг.4 - это схема, иллюстрирующая вычисление значений преобразования составляющих сигнала цветности согласно примерному варианту осуществления настоящего изобретения;
Фиг.5 - это блок-схема преобразователя 330 составляющих сигнала цветности, показанного на фиг.3;
Фиг.6 - это блок-схема последовательности операций способа кодирования согласно примерному варианту осуществления настоящего изобретения;
Фиг.7 - это блок-схема устройства декодирования согласно примерному варианту осуществления настоящего изобретения;
Фиг.8 - это блок-схема последовательности операций способа декодирования согласно примерному варианту осуществления настоящего изобретения;
Фиг.9 - это таблица, показывающая режим взаимного прогнозирования, согласно примерному варианту осуществления настоящего изобретения;
Фиг.10 - это таблица, иллюстрирующая способ обратного взаимного прогнозирования в отношении каждого режима взаимного прогнозирования;
Фиг.11 - это блок-схема преобразователя 330 составляющих сигнала цветности, показанного на фиг.3, согласно примерному варианту осуществления настоящего изобретения;
Фиг.12 - это блок-схема режима взаимного прогнозирования, выбранного для каждого макроблока в одном изображении;
Фиг.13A-13E - это представления, показывающие матрицы режимов взаимного прогнозирования согласно примерному варианту осуществления настоящего изобретения;
Фиг.14A-14D - это представления, иллюстрирующие способ кодирования информации режимов взаимного прогнозирования согласно примерному варианту осуществления настоящего изобретения;
Фиг.15 - это блок-схема последовательности операций способа кодирования информации режимов взаимного прогнозирования согласно примерному варианту осуществления настоящего изобретения; и
Фиг.16 - это блок-схема последовательности операций способа декодирования согласно примерному варианту осуществления настоящего изобретения.
Оптимальный режим
Режим осуществления изобретения
Далее подробно описаны примерные варианты осуществления настоящего изобретения со ссылками на прилагаемые чертежи.
Фиг.3 - это блок-схема устройства кодирования киноизображений согласно примерному варианту осуществления настоящего изобретения. Устройство включает в себя блок 302 оценки движения, блок 304 компенсации движения, блок 306 внутреннего прогнозирования, преобразователь 308, квантователь 310, блок 312 реконфигурирования, энтропический кодер 314, обратный квантователь 316, обратный преобразователь 318, фильтр 320 и память 322 кадров.
Устройство кодирует макроблоки текущего изображения в одном из множества режимов кодирования. Для этой цели устройство выполняет кодирование в режимах, в которых выполняются взаимное прогнозирование и внутреннее прогнозирование, чтобы вычислять функцию затрат, определяющую искажение в зависимости от скорости передачи (RDCosts). Устройство определяет режим, в котором вычисляется наименьшее значение RDCosts, в качестве оптимального режима и выполняет кодирование в оптимальном режиме. При этом скорость передачи (R) указывает скорость передачи битов, которая является числом битов, используемых для кодирования одного макроблока. Конкретно, R - это значение, получаемое посредством сложения числа битов, полученных посредством кодирования остаточного сигнала, сформированного после того, как выполнено взаимное прогнозирование и внутреннее прогнозирование, и числа битов, полученных посредством кодирования вектора движения. Искажение (D) указывает разность между исходным макроблоком видео и декодированным макроблоком видео. Таким образом, D - это значение, полученное посредством декодирования исходного макроблока.
Тем не менее, определение оптимального режима кодирования может выполняться с помощью различных способов, а также вычисления RDCosts. Другими словами, вычисление RDCosts и других затрат также может выполняться с помощью различных способов. Например, примеры подходящей функции затрат включают в себя сумму значений абсолютной разности (SAD), сумму абсолютной преобразованной разности (SATD), сумму квадрата разности (SSD), среднее абсолютной разности (MAD), функцию Лагранжа и т.п.
Для взаимного прогнозирования блок 302 оценки движения отыскивает в эталонном изображении оценочное значение макроблока текущего изображения. Блок 304 компенсации движения вычисляет промежуточное значение пикселов эталонных блоков, найденных в единицах пикселов 1/2 или 1/4, чтобы определить значение данных эталонных блоков. Следовательно, блок 302 оценки движения и блок 304 компенсации движения выполняют взаимное прогнозирование.
Блок 306 внутреннего прогнозирования выполняет внутреннее прогнозирование для поиска в текущем изображении оценочного значения макроблока текущего изображения. Выполняется определение того, осуществляется ли взаимное прогнозирование или внутреннее прогнозирование в отношении текущего макроблока, посредством определения режима кодирования, в котором наименьшее значение RDCosts вычисляется, в качестве режима кодирования текущего макроблока, с тем чтобы закодировать текущий макроблок.
Как описано выше, если данные оценки, на которые должен опираться макроблок текущего кадра, находятся посредством выполнения взаимного прогнозирования или внутреннего прогнозирования, данные оценки вычитаются из макроблока текущего изображения, и затем результат вычитания вводится в преобразователь 330 составляющих сигнала цветности. Преобразователь 330 составляющих сигнала цветности принимает составляющие сигнала цветности, преобразует составляющие сигнала в цветности в различные значения преобразования согласно способу преобразования составляющих сигнала цветности, который описывается ниже, и выбирает два из множества значений преобразования. В случае, когда преобразователь 330 составляющих сигнала цветности принимает составляющую сигнала яркости, преобразователь 330 составляющих сигнала цветности пропускает составляющую сигнала яркости. Составляющая сигнала яркости или выбранные составляющие сигнала цветности вводятся и преобразуются посредством преобразователя 308 и затем квантуются посредством квантователя 310. Результат вычитания эталонного блока с оценкой движения из макроблока текущего кадра называется остатком. Данные, вводимые в преобразователь 330 составляющих сигнала цветности, чтобы уменьшить объем данных в ходе кодирования, - это остаточное значение. Квантованное остаточное значение проходит через блок 312 реконфигурирования и кодируется посредством энтропического кодера 314.
Квантованное изображение декодируется в текущее изображение посредством обратного квантователя 316 и обратного преобразователя 318, чтобы получить эталонное изображение, которое должно быть использовано для взаимного прогнозирования. Декодированное текущее изображение сохраняется в памяти кадров для использования при взаимном прогнозировании следующего изображения. Когда декодированное изображение проходит через фильтр 320, декодированное изображение становится исходным изображением, включающим в себя небольшое число ошибок кодирования.
Далее подробно описывается работа преобразователя 330 составляющих сигнала цветности. Когда преобразователь 330 составляющих сигнала цветности принимает составляющие сигнала цветности Cb и Cr, преобразователь 330 составляющих сигнала цветности вычисляет значение преобразования с помощью уравнения 1:
Значение преобразования = a x Cb + b x Cr + c...(1)
- при этом a, b и c могут быть определены экспериментально. Например, если (a, b, c) - это (1, 0, 0), (0, 1, 0), (-1, 1, 0) или (1, 1, 0), значение преобразования - это Cb, Cr, -Cb+Cr или Cb+Cr. Затраты для Cb, Cr, -Cb+Cr и Cb+Cr вычисляются. Вычисление затрат и используемые функции затрат - такие, как описано выше. Два набора (a, b, c), имеющих наименьшее значение вычисленных затрат, выбираются и затем вводятся в преобразователь 308. Например, если выбираются Cb и -Cb+Cr, преобразователь 308 преобразует составляющие Cb и -Cb+Cr. В этом случае затраты наименьшие. Таким образом, значения Cb и -Cb+Cr являются наименьшими, и тем самым, скорость передачи битов, необходимая для кодирования, является небольшой. В случае макроблока для внутреннего прогнозирования (a, b, c) могут быть равны (-1, 1, 14), (1, 1, -250), (1, 0, 14) или (0, 1, 14). Даже в случае макроблока при внутреннем прогнозировании вычисляются затраты для пары коэффициентов (a, b, c), и составляющие сигнала цветности, определяемые посредством (a, b, c), для которых затраты являются наименьшими, находятся и кодируются. Преобразователь 330 составляющих сигнала цветности может быть размещен после преобразователя 308 и квантователя 310. Т.е. затраты вычисляются с помощью преобразованных составляющих сигнала цветности Cb и Cr в частотной области, а не в пространственной области, чтобы выполнить реконфигурирование и энтропическое кодирование.
Фиг.4 - это схема, иллюстрирующая вычисление значений преобразования составляющих сигнала цветности согласно примерному варианту осуществления настоящего изобретения. Ссылаясь на фиг.4, одно пикселное значение считывается из каждого из блоков Cb и Cr и умножается на или прибавляется к (a, b, c) с помощью уравнения 1 выше, чтобы вычислить значения преобразования.
Фиг.5 - это блок-схема преобразователя 330 составляющих сигнала цветности, показанного на фиг.3.
Преобразователь 330 составляющих сигнала цветности включает в себя вычислитель 510 значений преобразования, вычислитель 520 затрат и блок 530 определения. Когда составляющие сигнала цветности Cb и Cr вводятся, вычислитель 510 значений преобразования вычисляет значения преобразования всех случаев, которые могут быть получены из наборов коэффициентов (a, b, c) с помощью уравнения 1 выше. Вычислитель 520 затрат вычисляет затраты для значений преобразования. Блок 530 определения выбирает два наименьших значения затрат, чтобы вывести значения преобразования, имеющие два наименьших значения затрат.
Фиг.6 - это блок-схема последовательности операций способа кодирования согласно примерному варианту осуществления настоящего изобретения.
Когда видеоданные введены, на этапах S610 и S620 выполняется оценка движения и прогнозирование движения в случае взаимного прогнозирования. В случае внутреннего прогнозирования оценка движения и прогнозирование движения опускается. При этом оценка движения и прогнозирование движения выполняется так, как описано со ссылкой на фиг.3. На этапе S630 затраты всех случаев вычисляются с помощью предварительно определенных коэффициентов (a, b, c), как описано выше со ссылкой на фиг. 4 и 5. На этапе S640 выбираются два наименьших значения затрат. На этапах S650, S660 и S670 два наименьших значения преобразуются, квантуются и энтропически кодируются, соответственно. Традиционно, составляющие сигнала цветности Cb и Cr кодируются с помощью такого способа. Тем не менее, в настоящем изобретении на этапах S630 и S640 избыточность между составляющими сигнала цветности Cb и Cr удаляется до кодирования, чтобы уменьшить число битов, требуемое для кодирования.
Информация выбранных (a, b, c) коэффициентов кодируется и передается. Информация выбранных коэффициентов для каждого макроблока записывается в заголовок изображения, чтобы указать то, какие составляющие сигнала цветности каждого макроблока кодируются и передаются. В вышеуказанном взаимном прогнозировании, если выбираются первый и третий коэффициенты из коэффициентов (1, 0, 0), (0, 1, 0), (-1, 1, 0) и (1, 1, 0), групповое кодирование выполняется для первого и третьего коэффициентов.
Более подробно, групповое кодирование выполняется для информации выбранных коэффициентов только тогда, когда кодируется блок составляющих сигнала цветности. При этом может быть использована схема блоков кодирования сигнала цветности с традиционным синтаксисом или схема кодированных блоков для сигнала цветности (CBPC). Когда выполняется групповое кодирование, число битов, выделяемых "серии", варьируется в зависимости от того, сколько наборов используется, а число битов, выделяемых "длине", варьируется в зависимости от того, сколько непрерывных серий кодируется в один набор. Например, в случае, когда число наборов равно четырем, т.е. S1, S2, S3 и S4, число битов, выделяемых "серии", составляет два бита, а число битов, выделяемых "длине", составляет пять битов, один набор (серия, длина) кодируется в семь битов. Таким образом, если S1 непрерывно выводится одиннадцать раз, (S1, 10) кодируется в 0001010. Поскольку информация выбранных коэффициентов каждого макроблока с высокой вероятностью имеет значение, аналогичное информации коэффициентов соседнего макроблока, групповое кодирование может быть использовано для того, чтобы уменьшить число битов, требуемых для кодирования. Помимо этого, посредством использования схемы блоков кодирования сигнала цветности или CBPC передается информация для указания того, кодируется ли блок сигнала цветности, в сегментах группы блоков.
Информация коэффициентов (a, b, c), выбираемых для каждого макроблока, с высокой вероятностью должна быть аналогичной для соседнего макроблока. Таким образом, групповое кодирование может быть использовано для того, чтобы уменьшить число битов, требуемое для кодирования.
Фиг.7 - это блок-схема устройства декодирования согласно примерному варианту осуществления настоящего изобретения. Ссылаясь на фиг.7, устройство декодирования включает в себя энтропический кодер 702, блок 704 реконфигурирования, обратный квантователь 706, обратный преобразователь 708, обратный преобразователь 710 составляющих сигнала цветности, блок 712 компенсации движения, блок 714 внутреннего прогнозирования, фильтр 716 и память 718 кадров. Когда кодированный битовый поток вводится в устройство декодирования, закодированный битовый поток энтропически декодируется, реконфигурируется, обратно преобразуется и вводится в обратный преобразователь 710 составляющих сигнала цветности. В случае, когда входными данными является составляющая сигнала яркости, составляющая сигнала яркости игнорируется. В случае, когда входными данными являются составляющие сигнала цветности, обратный преобразователь 710 составляющих сигнала цветности определяет то, какие коэффициенты (a, b, c) использовались для того, чтобы кодировать составляющие сигнала цветности, чтобы тем самым сформировать составляющие сигнала цветности Cb и Cr. Информация, указывающая то, какие коэффициенты (a, b, c) использовались для того, чтобы закодировать и передавать составляющие сигнала цветности, повергается групповому кодированию и передается. Таким образом, обратный преобразователь 710 составляющих сигнала цветности декодирует информацию, чтобы сформировать составляющие сигнала цветности Cb и Cr. Альтернативно, обратный преобразователь 710 составляющих сигнала цветности также может быть размещен до обратного квантователя 706 и обратного преобразователя 708.
Фиг.8 - это блок-схема последовательности операций способа декодирования согласно примерному варианту осуществления настоящего изобретения.
На этапе S810 выполняется энтропическое декодирование. На этапе S820 выполняется обратное квантование. На этапе S830 выполняется обратное преобразование. На этапе S840 принимаемая информация коэффициентов (a, b, c) декодируется, выполняется определение того, какая комбинация составляющих сигнала цветности Cb и Cr закодирована, чтобы выполнить обратное преобразование комбинации и получить составляющие сигнала цветности Cb и Cr. На этапе S850 выполняется компенсация движения. В случае внутреннего прогнозирования компенсация движения опускается.
Далее описывается способ кодирования согласно примерному варианту осуществления со ссылкой на фиг.9-15.
Фиг.9 - это таблица, показывающая режим взаимного прогнозирования, согласно примерному варианту осуществления настоящего изобретения. Ссылаясь на фиг.9, пять режимов взаимного прогнозирования, 0-4, задаются в отношении каждого макроблока. Один из режимов взаимного прогнозирования выбирается в сегменте группы макроблока, как показано на фиг.12. Блоки Cb и Cr заменяются значениями преобразования 1 и 2 согласно выбранному режиму и таблице, показанной на фиг.9. Корреляции между значениями преобразования и значениями Cb и Cr в режимах взаимного прогнозирования, показанных на фиг.9, являются примерными. Альтернативно, режимы, имеющие другие корреляции, могут быть добавлены, или режимы могут быть удалены.
Например, если режим взаимного прогнозирования, выбранный в отношении предварительно определенного макроблока, является 0, значение преобразования 1 является значением Cb блока Cb, а значение преобразования 2 является значением Cr блока Cr. Кроме того, если выбранный режим взаимного прогнозирования - это 1, значение преобразования 1 является значением Cb блока Cb, а значение преобразования 2 является значением, полученным посредством вычитания значения Cr блока Cr из Cb', которое является восстановленным значением Cb. Использование восстановленного значения Cb и значения Cr в режиме взаимного прогнозирования, показанном на фиг.9, служит для того, чтобы дополнительно точно декодировать значения Cb и Cr. Альтернативно, вместо восстановленных значений Cb и Cr могут быть использованы исходные значения Cb и Cr. При этом восстановленные значения Cb и Cr получаются посредством преобразования и квантования исходных значений Cb и Cr и последующего обратного квантования и обратного преобразования исходных значений Cb и Cr. Исходные значения Cb и Cr - это значения Cb и Cr, которые не преобразованы и квантованы.
Фиг.10 - это таблица, иллюстрирующая режим обратного взаимного прогнозирования в отношении режима взаимного прогнозирования. Ссылаясь на фиг.10, если режим обратного взаимного прогнозирования в отношении одного макроблока является 0, значения Cb и Cr соответствующего макроблока получаются из значений преобразования 1 и 2. Если режим обратного взаимного прогнозирования является 1, значение Cb соответствующего макроблока получается из значения преобразования 1, но значение Cr получается из значения, получаемого посредством вычитания значения преобразования 2 (Cb'-Cr) из восстановленного значения Cb' значения преобразования 1. При этом вычитание значения преобразования 2 из восстановленного значения Cb' обусловлено тем, что значение преобразования 2 включает в себя Cb'.
Фиг.11 - это блок-схема преобразователя 330 составляющих сигнала цветности, показанного на фиг.3, согласно примерному варианту осуществления настоящего изобретения.
Преобразователь 330 составляющих сигнала цветности включает в себя вычислитель 1110 значений преобразования, хранилище 1112 таблиц режимов взаимного прогнозирования, вычислитель 1120 затрат, блок 1130 выбора режима и вывода значений преобразования и хранилище 1132 выбора режима.
Когда составляющие сигнала цветности Cb и Cr введены, вычислитель 1110 значений преобразования вычисляет значения преобразования 1 и 2 в отношении каждого режима взаимного прогнозирования, сохраненного в хранилище 1112 таблиц режимов взаимного прогнозирования. Например, вычислитель 1110 значений преобразования формирует значения преобразования 1 и 2 в отношении каждого режима взаимного прогнозирования, показанного на фиг.9. Кроме того, в настоящем варианте осуществления таблица режимов взаимного прогнозирования сохраняется в вычислителе 1110 значений преобразования и таблице 1112 режимов взаимного прогнозирования. Альтернативно, таблица режимов взаимного прогнозирования может быть сохранена в предварительно определенном месте вычислителя 1110 режимов взаимного прогнозирования.
Вычислитель 1120 затрат вычисляет затраты в отношении значений преобразования, вычисленных в каждом режиме взаимного прогнозирования.
Блок 1130 выбора режима и вывода значений преобразования выбирает режим взаимного прогнозирования, в котором значения преобразования имеют наименьшие затраты, и выводит значения преобразования. Например, если выбран режим взаимного прогнозирования 1 согласно таблице режимов взаимного прогнозирования, показанной на фиг.9, блок 1130 выбора режима и вывода значений преобразования выводит значения Cb и Cb'-Cr в качестве значений преобразования 1 и 2.
Хранилище 1132 выбора режима сохраняет информацию режима для каждого макроблока, выбранного посредством блока 1130 выбора режима и вывода значений преобразования. Информация режима для каждого макроблока, сохраненная в хранилище 1132 выбора режима, используется для того, чтобы сформировать таблицу режимов взаимного прогнозирования в сегменте группы изображения, показанного на фиг.12. Помимо этого, в настоящем примерном варианте осуществления информация режима для каждого макроблока сохранена в хранилище 1132 выбора режима. Тем не менее, информация режима для каждого макроблока может быть сохранена в предварительно определенном месте блока 1132 выбора режима и вывода значений преобразования.
Значения преобразования, выводимые из блока 1130 выбора режима и вывода значений преобразования, выводятся в преобразователь 308 и квантователь 310, с тем чтобы быть преобразованными и квантованными.
Как описано выше, значение преобразования определяется в зависимости от выбранного режима. Кодирование выполняется в зависимости от определенного значения преобразования. Таким образом, декодеру должно быть сообщено, какой режим взаимного прогнозирования выбран для каждого макроблока. Далее описывается способ передачи информации режима взаимного прогнозирования, выбранного для каждого макроблока, со ссылкой на фиг.12-14.
Фиг.12 - это представление, иллюстрирующее режим взаимного прогнозирования, выбранный для каждого макроблока в одном изображении. Значение в каждой позиции равно 0, 1, 2, 3 или 4, что указывает режим взаимного прогнозирования, примененный к каждому макроблоку, соответствующему каждой позиции. Например, значение '0' в самой верхней и самой левой позиции показывает, что значения Cb и Cr соответствующего макроблока заменены согласно режиму взаимного прогнозирования 0 в таблице, показанной на фиг.9, т.е. значение преобразования 1 - это Cb, а значение преобразования 2 - это Cr. Значения 2 и 2, соответствующие макроблокам рядом с макроблоком в самой верхней и самой левой позиции, показывают, что значения Cb и Cr соответствующих макроблоков заменены согласно режиму взаимного прогнозирования 2, показанному на фиг.9, т.е. значение преобразования 1 - это Cb, а значение преобразования 2 - это Cb'+Cr.
Фиг.13A-13E - это представления, показывающие значение режима взаимного прогнозирования каждого макроблока, показанного на фиг.12, в матрице каждого режима взаимного прогнозирования.
Фиг.13A иллюстрирует матрицу режима 0, которая реконфигурирована таким образом, что макроблок, указывающий режим взаимного прогнозирования 0 в таблице режимов взаимного прогнозирования, показанной на фиг.12, имеет значение '1', а другие макроблоки, не указывающие режим взаимного прогнозирования 0, имеют значения '0'. Например, значения первого, четвертого, пятого, седьмого, восьмого, десятого и четырнадцатого макроблоков, имеющих значение режима взаимного прогнозирования 0 в самой верхней позиции, задаются равными '1', а значения других макроблоков в самой верхней позиции задаются равными '0'.
Фиг.13B иллюстрирует матрицу режима 1, которая реконфигурирована таким образом, что макроблок, указывающий режим взаимного прогнозирования 2 в таблице режимов взаимного прогнозирования, показанной на фиг.12, имеет значение '1', а другие макроблоки, не указывающие режим взаимного прогнозирования 0, имеют значения '0'. Например, значения шестого и девятого макроблоков, имеющих значение режима взаимного прогнозирования '1' в самой верхней позиции, задаются равными '1', а значения других макроблоков в самой верхней позиции задаются равными '0'.
Фиг.13C иллюстрирует матрицу режима 2, которая реконфигурирована таким образом, что макроблок, указывающий режим взаимного прогнозирования 2 в таблице режимов взаимного прогнозирования, показанной на фиг.12, имеет значение '1', а другие макроблоки, не указывающие режим взаимного прогнозирования 0, имеют значения '0'. Например, значения второго, третьего, тринадцатого, пятнадцатого, семнадцатого, девятнадцатого, двадцатого, двадцать первого и двадцать второго макроблоков, имеющих значение режима взаимного прогнозирования 2 в самой верхней позиции, задаются равными '1', а значения других макроблоков в самой верхней позиции задаются равными '0'.
Фиг.13D иллюстрирует матрицу режима 3, которая реконфигурирована таким образом, что макроблок, указывающий режим взаимного прогнозирования 3 в таблице режимов взаимного прогнозирования, показанной на фиг.12, имеет значение '1', а другие макроблоки, не указывающие режим взаимного прогнозирования 0, имеют значения '0'. Например, нет макроблоков, имеющих значение режима взаимного прогнозирования 3 в самой верхней позиции. Таким образом, всем макроблокам присваивается значение '0'.
Фиг.13E иллюстрирует матрицу режима 4, которая реконфигурирована таким образом, что макроблок, указывающий режим взаимного прогнозирования 4 в таблице режимов взаимного прогнозирования, показанной на фиг.12, имеет значение '1', а другие макроблоки, не указывающие режим взаимного прогнозирования 0, имеют значения '0'. Например, значения одиннадцатого, двенадцатого и шестнадцатого макроблоков, имеющих значение режима взаимного прогнозирования 4 в самой верхней позиции, задаются равными '1', а значения других макроблоков в самой верхней позиции задаются равными '0'.
В случае, когда таблица режимов взаимного прогнозирования, показанная на фиг.12, поделена на матрицы режимов, как показано на фиг.13A-13E, длина серии 0 становится большей.
Фиг.14A-14D - это представления, иллюстрирующие способ кодирования информации режимов взаимного прогнозирования согласно примерному варианту осуществления настоящего изобретения. Другими словами, фиг.14A-14D показывают матрицы режимов, которые преобразованы таким образом, что длины одной серии матриц режимов, показанных на фиг.13A-13E, становятся больше с использованием схемы уменьшения матриц режимов по настоящему изобретению.
Фиг.14A показывает преобразованную матрицу режима 1, в которой значения '0', соответствующие макроблокам, имеющим значение режима взаимного прогнозирования '1' в матрице режима 0, показанной на фиг.13A, удалены из матрицы режима 1, показанной на фиг.13B. Как показано на фиг.14A, 22 бита, 0000010010000000000000, в самой верхней позиции в матрице режима 1, показанной на фиг.13B, преобразуются в 15 битов, 001100000000000, из которых значения '0' первого, четвертого, пятого, седьмого, восьмого, десятого и четырнадцатого макроблоков, имеющих значение режима взаимного прогнозирования '1' в матрице режима 0, удалены. Преобразованная матрица режима 1 имеет меньшую скорость передачи битов и более длинную серию, чем матрица режима 1.
Фиг.14B показывает преобразованную матрицу режима 2, в которой значения '0', соответствующие макроблокам, имеющим значение режима взаимного прогнозирования '1' в матрице режима 0 и матрице режима 1, удалены из матрицы режима 2, показанной на фиг.13C. Как показано на фиг.14B, 22 бита, 0110000000001010111111, в самой верхней позиции в матрице режима 2, показанной на фиг.13C, преобразуются в 13 битов, 1100110111111, из которых значения '0' первого, четвертого, пятого, седьмого, восьмого, десятого и четырнадцатого макроблоков, имеющих значение режима взаимного прогнозирования '1' в матрице режима 0, и значения '0' шестого и девятого макроблоков, имеющих значения режима взаимного прогнозирования '1' в матрице режима 1, удалены. Преобразованная матрица режима 2 имеет меньшую скорость передачи битов и более длинную серию, чем матрица режима 2.
Фиг.14C показывает преобразованную матрицу режима 3, в которой значения '0', соответствующие макроблокам, имеющим значение режима взаимного прогнозирования '1' в матрице режима 0, матрице режима 1 и матрице режима 2, удалены из матрицы режима 3, показанной на фиг.13D. Как показано на фиг.14C, 22 бита, 0000000000000000000000, в самой верхней позиции в матрице режима 3, показанной на фиг.13D, преобразуются в 3 бита, 000, из которых значения '0' первого, четвертого, пятого, седьмого, восьмого, десятого и четырнадцатого макроблоков, имеющих значение режима взаимного прогнозирования '1' в матрице режима 0, значения '0' шестого и девятого макроблоков, имеющих значения режима взаимного прогнозирования '1' в матрице режима 1, и значения '0' второго, третьего, тринадцатого, пятнадцатого, семнадцатого, восемнадцатого, девятнадцатого, двадцатого, двадцать первого и двадцать второго макроблоков, имеющих значение режима взаимного прогнозирования '1' в матрице режима 2, удалены. Преобразованная матрица режима 3 имеет меньшую скорость передачи битов и более длинную серию, чем матрица режима 3.
Фиг.14D показывает преобразованную матрицу режима 4, в которой значения '0', соответствующие макроблокам, имеющим значение режима взаимного прогнозирования '1' в матрице режима 0, матрице режима 1, матрице режима 2 и матрице режима 3, удалены из матрицы режима 4, показанной на фиг.13E. Как показано на фиг.14D, 22 бита, 0000000000110001000000, в самой верхней позиции в матрице режима 4, показанной на фиг.13D, преобразуются в 3 бита, 111, из которых значения '0' первого, четвертого, пятого, седьмого, восьмого, десятого и четырнадцатого макроблоков, имеющих значение режима взаимного прогнозирования '1' в матрице режима 0, значения '0' шестого и девятого макроблоков, имеющих значения режима взаимного прогнозирования '1' в матрице режима 1, и значения '0' второго, третьего, тринадцатого, пятнадцатого, семнадцатого, восемнадцатого, девятнадцатого, двадцатого, двадцать первого и двадцать второго макроблоков, имеющих значение режима взаимного прогнозирования '1' в матрице режима 2, удалены. Преобразованная матрица режима 4 имеет меньшую скорость передачи битов и более длинную серию, чем матрица режима 4. Кроме того, все значения на преобразованной матрице режима 4 имеют значение '1'. Таким образом, кодирование на преобразованной матрице режима 4 не требуется.
В настоящем примерном варианте осуществления матрица режима 0 и преобразованные матрицы режимов 1, 2, 3 и 4, имеющих большие длины серий 1, могут подвергаться групповому кодированию и затем передаваться. Таким образом, объем данных, которые должны быть переданы, может быть уменьшен. Альтернативно, матрицы режимов 0, 1, 2, 3 и 4 могут подвергаться групповому кодированию и затем передаваться.
Декодер декодирует преобразованные матрицы режимов 1, 2, 3 и 4, показанные на фиг.14A-14D, чтобы сформировать матрицы режимов 0, 1, 2, 3 и 4, показанные на фиг.13A-13E. Декодер также декодирует таблицу режимов взаимного прогнозирования, показанную на фиг.12, на основе декодированных матриц режимов 0, 1, 2, 3 и 4 и декодирует исходные значения Cb и Cr из значений преобразования на основе декодированной таблицы режимов взаимного прогнозирования.
Фиг.15 - это блок-схема последовательности операций способа формирования преобразованных матриц режимов 1, 2, 3 и 4, показанных на фиг.14A-14D, и кодирования информации режимов взаимного прогнозирования согласно примерному варианту осуществления настоящего изобретения.
На этапе S1510 матрица режима 0 подвергается групповому кодированию.
На этапе S1520 значения '0', соответствующие макроблокам, имеющим значения '1' в матрице режима 0, удаляются из матриц режимов 1, 2, 3 и 4, показанных на фиг.13B-13E, и формируются первые преобразованные матрицы режима. Первая преобразованная матрица режима 1, т.е. преобразованная матрица режима 1, показанная на фиг.14A, подвергается групповому кодированию.
На этапе S1530 значения '0', соответствующие макроблокам, имеющим значения '1' в матрице режима 1, удаляются из первых преобразованных матриц режима 2, 3 и 4 и формируются вторые преобразованные матрицы режима. Вторая преобразованная матрица режима 2, т.е. преобразованная матрица режима 2, показанная на фиг.14B, подвергается групповому кодированию.
На этапе S1540 значения '0', соответствующие макроблокам, имеющим значения '1' в матрице режима 2, удаляются из вторых преобразованных матриц режима 3 и 4, и формируются третьи преобразованные матрицы режима. Третья преобразованная матрица режима 3, т.е. преобразованная матрица режима 3, показанная на фиг.14C, подвергается групповому кодированию.
На этапе S1550 значения '1' в матрице режима 3 удаляются из третьей преобразованной матрицы режима 4, и формируется четвертая преобразованная матрица режима. Четвертая преобразованная матрица режима 4, т.е. преобразованная матрица режима 3, показанная на фиг.14D, подвергается групповому кодированию. Значения в последней матрицы режима равны '1'. Таким образом, хотя преобразованная матрица режима 4 не включает в себя информацию, исходные матрицы режимов могут быть восстановлены с помощью информации преобразованных матриц режимов. Следовательно, преобразованная матрица режима 4 может не кодироваться дополнительно. Альтернативно, этап S1550 может быть пропущен.
Альтернативно, преобразованные матрицы режимов могут быть сформированы в порядке, отличном от порядка в настоящем примерном варианте осуществления.
После того, как этапы S1510, S1520, S1540 и S1550 выполнены, подвергаемая групповому кодированию информация взаимного прогнозирования вставляется в заголовок изображения битового потока и передается.
Взаимное прогнозирование с помощью корреляции между составляющими сигнала цветности цветного изображения, т.е. между Cb и Cr описано в настоящем примерном варианте осуществления. Тем не менее, настоящее изобретение может быть применено между двумя произвольными областями в любом цветовом пространстве, с тем чтобы повысить эффективность сжатия. Например, настоящее изобретение может быть применено к взаимному прогнозированию с помощью корреляции между областями в другом цветовом пространстве, т.е. между Y и Cb или Y и Cr в цветовом пространстве YCbCr.
Далее описывается декодер согласно примерному варианту осуществления со ссылкой на фиг.7.
Когда кодированный битовый поток вводится в декодер, битовый поток энтропически кодируется, реконфигурируется, обратно преобразуется и вводится в обратный преобразователь 708 составляющих сигнала цветности. Если входными данными является составляющая сигнала яркости, входные данные игнорируются. Если входными данными является составляющая сигнала цветности, входные данные вводятся в обратный преобразователь 710 составляющих сигнала цветности.
Блок определения режима взаимного прогнозирования (не показан) восстанавливает подвергаемые групповому кодированию матрицы режимов, извлеченные из заголовка изображения входного битового потока в порядке от матрицы режима 0, формирует таблицу режимов взаимного прогнозирования в сегменте группы изображения, показанной на фиг.12, определяет режим взаимного прогнозирования, применяемый к каждому макроблоку, на основе таблице режимов взаимного прогнозирования, и вводит определенный режим взаимного прогнозирования в обратный преобразователь 710 составляющих сигнала цветности.
Обратный преобразователь 710 составляющих сигнала цветности формирует составляющие сигнала цветности Cb и Cr из декодированных значений преобразования с помощью определенного режима взаимного прогнозирования.
Фиг.16 - это блок-схема последовательности операций способа декодирования согласно примерному варианту осуществления настоящего изобретения.
На этапе S1610 выполняется энтропическое декодирование. На этапе S1620 выполняется обратное квантование. На этапе S1630 выполняется обратное преобразование. После этого исходные матрицы режимов восстанавливаются из преобразованных матриц режимов, показанных на фиг.13. Таблица режимов взаимного прогнозирования, указывающая режим взаимного прогнозирования, применяемый в каждом макроблоке в предварительно определенном сегменте группы, к примеру, сегменте группы изображения.
На этапе S1640 режим взаимного прогнозирования, применяемый к соответствующему макроблоку, определяется из сформированной таблицы режимов взаимного прогнозирования, и декодированные значения преобразования обратно преобразуются согласно определенному режиму взаимного прогнозирования, чтобы вычислить составляющие сигнала цветности Cb и Cr. На этапе S1650 выполняется компенсация движения, чтобы выполнить декодирование. В случае внутреннего прогнозирования этап S1650 опускается.
Как описано выше, в способе и устройстве кодирования и декодирования цветных изображений с помощью корреляции между составляющими сигнала цветности согласно настоящему изобретению корреляция между составляющими сигнала цветности киноизображения может быть найдена, чтобы удалить ненужные составляющие сигнала. Таким образом, эффективность сжатия киноизображений может быть повышена. Чтобы удалить ненужные составляющие посредством нахождения корреляции между составляющими сигнала цветности, информация коэффициентов, составляющих комбинацию составляющих сигнала цветности Cb и Cr, может подвергаться групповому кодированию. Таким образом, число битов, необходимое для кодирования, может быть существенно снижено. Кроме того, составляющие сигнала цветности Cb и Cr могут быть преобразованы в каждом режиме взаимного преобразования. Информация о режиме, приспособленном для преобразования, может быть разделена в матрице режимов. Матрицы режимов могут подвергаться групповому кодированию. Как результат, может достигаться дополнительно эффективное групповое кодирование.
Вышеописанный способ кодирования и декодирования может быть записан как компьютерная программа. Коды и сегменты кода компьютерной программы могут быть легко получены программистами, которые являются специалистами в области техники, к которой относится настоящее изобретение. Компьютерная программа может быть сохранена в машиночитаемых носителях и считана и приведена в исполнение посредством вычислительной машины, чтобы выполнить способ кодирования и декодирования. Примеры машиночитаемых носителей включают в себя магнитные записывающие носители, оптические записывающие носители и волновую несущую.
Несмотря на то, что настоящее изобретение конкретно показано и описано со ссылкой на его примерные варианты осуществления, специалистам в данной области техники следует понимать, что различные изменения по форме и содержанию могут быть сделаны без отступления от духа и области применения настоящего изобретения, задаваемой прилагаемой формулой изобретения.
Промышленная применимость
Устройства и способы, в соответствии с настоящим изобретением, могут быть применены к кодированию и декодированию данных цветных изображений, имеющих формат YCbCr, в меньший объем данных посредством нахождения корреляции между составляющими сигнала цветности Cb и Cr данных цветных изображений.
Класс H04N9/64 схемы для обработки цветовых сигналов
Класс H04N7/30 с использованием кодирования с преобразованием
Класс H04N11/06 передающие системы, отличающиеся способом соединения отдельных составляющих сигнала цветного изображения