RU2009110512A - Способ сжатия изображений и видеопоследовательностей - Google Patents
Способ сжатия изображений и видеопоследовательностей Download PDFInfo
- Publication number
- RU2009110512A RU2009110512A RU2009110512/09A RU2009110512A RU2009110512A RU 2009110512 A RU2009110512 A RU 2009110512A RU 2009110512/09 A RU2009110512/09 A RU 2009110512/09A RU 2009110512 A RU2009110512 A RU 2009110512A RU 2009110512 A RU2009110512 A RU 2009110512A
- Authority
- RU
- Russia
- Prior art keywords
- bits
- block
- color
- bit
- values
- Prior art date
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
Abstract
1. Способ компактного битового представления высококачественной цветной видеопоследовательности, заключающийся в блочном кодировании каждого цветного видеокадра видеопоследовательности, в котором каждый цветной пиксель представляют тремя цветовыми компонентами, каждую из которых изначально кодируют десятью битами, отличающийся тем, что кодирование осуществляют путем разбиения исходного цветного видеокадра на неперекрывающиеся пространственные блоки, состоящие из более чем одного пикселя по горизонтали и двух пикселей по вертикали, последующего разделения битового представления каждой из цветовых компонент пикселя на старшую часть, состоящую из более чем одного старшего бита, и младшую часть, состоящую из, по меньшей мере, одного младшего бита, в сумме образующих исходные десять битов, раздельного кодирования старшей и младшей частей, причем кодирование старшей части осуществляют путем применения более одного способа кодирования, каждый из которых учитывает межпиксельные связи только в пределах обрабатываемого пространственного блока и применяется для сокращения количества битов, необходимых для представления обрабатываемых данных, оценки погрешности кодирования, выбора способа кодирования, дающего наименьшую погрешность, пересылки данных о способе кодирования посредством передачи префиксного кода, кодировании младшей части, которое осуществляется путем усреднения более одного значения, входящего в младшую часть, причем размеры областей усреднения в пределах младшей части зависят от выбранного метода кодирования старшей части, и за счет выбора способа кодирования старшей части, обесп
Claims (26)
1. Способ компактного битового представления высококачественной цветной видеопоследовательности, заключающийся в блочном кодировании каждого цветного видеокадра видеопоследовательности, в котором каждый цветной пиксель представляют тремя цветовыми компонентами, каждую из которых изначально кодируют десятью битами, отличающийся тем, что кодирование осуществляют путем разбиения исходного цветного видеокадра на неперекрывающиеся пространственные блоки, состоящие из более чем одного пикселя по горизонтали и двух пикселей по вертикали, последующего разделения битового представления каждой из цветовых компонент пикселя на старшую часть, состоящую из более чем одного старшего бита, и младшую часть, состоящую из, по меньшей мере, одного младшего бита, в сумме образующих исходные десять битов, раздельного кодирования старшей и младшей частей, причем кодирование старшей части осуществляют путем применения более одного способа кодирования, каждый из которых учитывает межпиксельные связи только в пределах обрабатываемого пространственного блока и применяется для сокращения количества битов, необходимых для представления обрабатываемых данных, оценки погрешности кодирования, выбора способа кодирования, дающего наименьшую погрешность, пересылки данных о способе кодирования посредством передачи префиксного кода, кодировании младшей части, которое осуществляется путем усреднения более одного значения, входящего в младшую часть, причем размеры областей усреднения в пределах младшей части зависят от выбранного метода кодирования старшей части, и за счет выбора способа кодирования старшей части, обеспечивающего наименьшую погрешность, способа кодирования младшей части, размера префиксного кода, указывающего используемый способ кодирования, а также количества дополняющих неинформационных битов устанавливают фиксированное наперед количество битов, необходимое для компактного представления исходного пространственного цветного блока.
2. Способ по п.1, отличающийся тем, что видеопоследовательность представляют в виде набора кадров, причем каждый кадр обрабатывают как изображение, а каждое изображение представляют в виде набора неперекрывающихся блоков размером 2×4 цветных пикселя, каждый из которых состоит из трех 10-битных значений, и при этом каждый такой блок в результате компрессии представляется битовым пакетом, с наперед заданным фиксированным количеством бит, меньшим, чем количество бит, необходимых для хранения исходного блока в несжатом виде.
3. Способ по п.1, отличающийся тем, что старшие восемь битов каждой компоненты цветных пикселей обрабатываемого кадра рассматривают и обрабатывают как блоки размером 2×4 пикселя.
4. Способ по п.1, отличающийся тем, старшие восемь битов каждой компоненты цветных пикселей обрабатываемого кадра рассматривают и обрабатывают как два подблока размером 2×2 пикселя.
5. Способ по п.4. отличающийся тем, что обработку каждого из подблоков размером 2×2 пикселя осуществляют оптимальным методом, выбранным независимо из совокупности методов обработки подблока 2×2 по результатам оценки погрешности кодирования данного блока.
6. Способ по п.3, отличающийся тем, что в процессе обработки каждого блока размером 2×4 пикселя осуществляют кодирование всеми доступными в конкретном случае способами и затем выбирают способ кодирования, дающий минимальную погрешность, причем выбор осуществляют путем сравнения погрешности кодирования оптимальным способом блока размером 2×4 пикселей с совокупной погрешностью этого блока, представленного как два подблока размером 2×2 пикселя.
7. Способ по п.4, отличающийся тем, что в блоке 2×4 выявляют подблоки 2×2, которые соответствуют относительно регулярной структуре, т.е. принадлежащей преимущественно фону, и нерегулярной структуре, т.е. принадлежащей преимущественно естественному изображению, причем операция выявления заключается в выполнении операций по следующим этапам:
находят блок с регулярной структурой путем определения шаблонных значений для левого и правого подблока 2×2, определения ошибок, вызванных кодированием левого и правого подблока 2×2 с регулярной структурой, сравнения шаблонных значений и выбора блока с преимущественно регулярной структурой, при этом шаблонные значения структуры в двух цветах вычисляют по следующим формулам:
где C0(k), C1(k) - шаблонные значения для левого подблока 2×2 (k=0) и правого подблока (k=1);
ошибки BlE(k), вызванные кодированием левого и правого подблоков 2×2 с регулярной структурой вычисляют по формуле:
затем номер подблока, который будет закодирован с использованием шаблонного кодирования, помещают в исходящий сжатый поток, с последующим сохранением шаблонных значений; значения пикселей незакодированного под-блока кодируются посредством усечения младших двух битов.
8. Способ по п.3 отличающийся тем, что обработку блоков, содержащих градиентные участки, выполняют по трем каналам, осуществляя следующие операции:
вычисляют шесть разностных величин D1, D2, D3, D4, D5, D6 по формулам: D1=A1-A2; D2=A2-A3; D3=A3-A4; D4=B1-B2; D5=B2-B3; D6=B3-B4;
вычисляют среднее значение модулей разностных величин D1…D6;
вычисляют знаки каждой из разностных величин D1…D6;
в качестве кодовой информации передают среднее значение модулей разностей, знаки разностей, а также две опорные точки - A2, В2.
9. Способ по п.3, отличающийся тем, что обработку блоков, а именно кодирование и декодирование, осуществляют параллельно тремя под-способами, а именно:
под-способом, основанным на последовательном сдвиге цвета и состоящим из следующих этапов:
интенсивность по каждом; цветовому каналу для каждого пикселя блока кодируют тремя или четырьмя битами, вычисляемыми по следующим формулам:
где индекс i обозначает ось ординат, j обозначает ось абсцисс, I - значение пикселя исходного блока, C - битовый код, кодирующий соответствующий пиксель, при этом процедура декодирования пикселей, закодированных таким образом, описывается следующими формулами (здесь D - декодированный пиксель):
под-способом кодирования, основанным на усреднении с частичным огрублением двух подблоков 2×2 в пределах блока 2×4, при котором кодовые величины вычисляют согласно следующим формулам:
при этом декодирование выполняют в соответствии со следующими формулами:
под-способом кодирования, основанным на частичной реконструкции одного из цветовых каналов по двум другим, пиксели которых кодируют путем усечения нескольких младших битов; в частности, красный и зеленый канал кодируют согласно формулам:
и два крайних пикселя синего канала, которые не могут быть реконструированы из красного и зеленого каналов, кодируют согласно следующим формулам:
причем процедура декодирования реализуется в соответствии с выражениями:
после применения к обрабатываемому блоку 2×4 описанных выше трех под-способов определяют под-способ, обеспечивающий минимальную ошибку, и его номер передают в первых двух битах сжатого потока.
10. Способ по п.3, отличающийся тем, что при обработке блоков с неравномерной интегральной насыщенностью цветовых каналов используют метод доминирующего цвета, заключающийся в том, что выполняют анализ четырех ситуаций, а именно, проверяют, какой из каналов является доминирующим: яркостный канал, красный канал, зеленый канал или синий канал, причем в качестве указателя номера доминирующего цвета используют 2-битный индекс, и значения пикселей доминирующего цвета передают без искажений 8-битными значениями, тогда как значения двух оставшихся каналов кодируют посредством усреднения в пределах каждого из каналов и передачи каждого такого среднего значения 8-битной величиной.
11. Способ по п.3, отличающийся тем, что при обработке блоков 2×4 выполняют формирование цветовой палитры, причем все три цветовых канала обрабатывают одновременно и независимо, при этом для каждого подблока 2×2 формируют свою двухцветную палитру любым из известных способов, при этом предпочтительный способ заключается в разделении исходных значений четырех пикселей подблока 2×2 на две группы относительно среднего и расчете средних значений в пределах каждой группы, которые затем рассматриваются как цвета палитры, и применяют один из трех режимов кодирования, а именно, режим дифференциального кодирования палитр, режим дифференциального кодирования цветов в пределах палитры или явное квантование цветов, для чего вначале оценивают возможность использования режима дифференциального кодирования палитр с помощью проверки первого логического условия:
InterCondition≡(-2≤C00-C10<2)∧(-1≤C01-C11≤2),
где: (C00, C01) - цвета первой палитры, относящейся к левому подблоку 2×2, (C10, C11) - цвета второй палитры, относящейся к правому подблоку 2×2, с учетом того, что предпочтительно использовать предварительную обработку цветов каждой из палитр, которая заключается в проверке того, что только одна палитра из двух имеет равные цвета, и в этом случае замене одного из них на цвет из другой палитры, который является наиболее удаленным в смысле абсолютного значения от значений равных цветов, при этом, если первое логическое условие соблюдается, то цвета первой палитры передаются без потерь, в то время как цвета второй палитры кодируются как поправки к цветам из первой палитры, исходя из следующих действий:
вычисляют два индекса, значения которых преобразуют в числа больше либо равные нулю согласно выражениям:
TIdx_y=C00-C10+2, где диапазон индекса: [0…3],
TIdx_x=C01-C11+1, где диапазон индекса: [0…3];
преобразуют рассчитанные индексы в 4-битную обобщенную разностную величину (CDVal) с использованием таблицы, описывающей совместное распределение индексов TIdx_x/TIdx_y:
при этом последующее декодирование индексов TIdx_x/TIdx_y выполняют на основе двух дополнительных таблиц:
а восстановление значений разностей выполняют на основе формул:
C00-C10=TIdx_y-2 с новым диапазоном: [-2…2],
C01-C11=TIdx_x-1 с новым диапазоном: [-1…2];
в случае, если первое логическое условие не выполнено, производится отмена замены цветов, если оно было осуществлено, и, затем, цвета в каждой палитре переупорядочиваются таким образом, что первый по порядку следования цвет в каждой из палитр соответствует первому (левому - верхнему) пикселю в пределах соответствующего под-блока 2×2, после чего осуществляется проверка второго логического условия дифференциального кодирования цветов для каждой из палитр, заключающаяся в анализе абсолютной разности значений цветов в каждой из палитр, и если условие для рассматриваемой палитры верно, кодировании первого цвета без потерь, а второго цвета в виде 2-битной поправки к первому цвету; в противном случае значение каждого цвета кодируется путем усечения младших трех разрядов, при этом восстановление усеченных бит осуществляется бинарным значением 100b; в заключение, формируется карта цветов, которая может состоять из 3-х записей или 4-х записей, при этом карта цветов, состоящая из 3-х записей, означает, что первый по порядку следования цвет соответствует первому пикселю в подблоке, при этом, в целях обеспечения заданного битового бюджета карту цветов из 4-х записей предпочтительнее использовать для режима дифференциального кодирования палитр.
12. Способ по п.3, отличающийся тем, что при обработке блоков для областей цветного изображения, в которых присутствует комбинация комплексных и относительно равномерных участков в пределах одного цветового канала или в пределах одного обрабатываемого подблока, используют два под-способа: U1 и U2, обеспечивающих возможность компактного представления исходного блока 2×4 и оптимизированных под возможные комбинации комплексных и относительно равномерных участков изображения, при этом на основе расчета ошибок приближения исходного блока обоими под-способами выбирают оптимальный под-способ, обеспечивающий наименьшую ошибку, причем под-способ U1 применяют в отношении каждого подблока 2×2, входящего в состав исходного блока 2×4, в случае, когда один из трех цветовых каналов подблока 2×2 пригоден для кодирования средним значением, в то время как два оставшихся канала кодируют с использованием NSW преобразования и процедуры FQvT; под-способ U2 применяют в отношении блока 2×4 в пределах одного цветового канала в случае, когда один подблок 2×2 в пределах рассматриваемого канала пригоден для кодирования средним, в то время как другой подблок 2×2 в пределах рассматриваемого канала может быть эффективно закодирован с использованием NSW преобразования и процедуры FQvT.
13. Способ по п.3, отличающийся тем, что при обработке блоков используют способ кодирования, заключающийся в том, что исходный блок 2×4 рассматривают как совокупность двух подблоков 2×2 и применяют преобразование Адамара к каждому из них с последующей процедурой кодирования FQvT, при этом преобразование описывается следующими формулами:
прямое преобразование:
обратное преобразование:
при этом оставшиеся компоненты S, dH, dV кодируют следующим образом:
S компонента кодируют 6-битным значением путем усечения двух младших разрядов, а восстановление осуществляют двоичным значением 10b;
{dH, dV} компоненты квантуют путем поиска наилучшего квантователя и наилучшего уровня восстановления в пределах квантователя, причем для каждого квантователя, входящего во множество из восьми квантователей, определяют наилучший уровень восстановления компонент {dH, dV}, исходя из минимизации модуля разности между уровнем восстановления и значением соответствующей компоненты; ошибку кодирования {dH, dV} компонент каким-либо квантователем рассчитывают путем суммирования модуля разницы соответствующего уровня восстановления и значения каждой из компонент, которая является минимальной среди всех возможных в пределах данного квантователя; затем определяют квантователь, который обеспечивает минимальную ошибку кодирования, применяя нижеприведенную таблицу квантования, оптимизированную для квантования {dH, dV} компонент:
при этом каждый подблок 2×2 в пределах одного цветового канала кодируют с использованием шести битов для кодирования среднего, 3-битного номера квантователя и двух 3-битных индексов для кодирования оптимальных уровней восстановления dH, dV компонент.
14. Способ по п.4, отличающийся тем, что при обработке каждый подблок 2×2 рассматривают как набор из четырех значений A, B, C, D, к которым применяют NSW-преобразование, получая четыре значения: {A, B, C, D}→{s, h, v, d) согласно следующим формулам:
где: s - означает среднее значение четырех пикселей, h, v, d - простейшие градиенты в направлениях: горизонталь, вертикаль, диагональ, при этом каждый подблок 2×2 кодируют, в среднем, 15 битами, причем кодирование величины s осуществляют с использованием простого равномерного квантования с точностью, в среднем, шесть битов; квантование набора разностных величин {h, v, d) осуществляют путем построения набора фиксированных квантователей, при этом каждый квантователь относится к изображению с определенной структурой и состоит из более чем одного значения, являющегося уровнем восстановления квантованного значения, а процесс квантования заключается в следующем: выявление подходящего квантователя среди набора квантователей для {h, v, d} для одного цвета, а затем нахождение для каждой разности соответствующего уровня восстановления, при этом налагаются следующие ограничения: набор квантователей состоит из восьми квантователей, каждый из которых имеет четыре значения: два положительных и симметрично два отрицательных, которые выполняют функции уровней восстановления в соответствии с таблицей:
при этом процесс кодирования разностных величин {h, v, d} включает в себя следующие операции:
определение номера квантователя N из набора квантователей, три величины которого являются наилучшим приближением для {h, v, d};
определение индексов уровней восстановления для {h, v, d} в квантователе с номером N.
15. Способ по п.4, отличающийся тем, что при обработке подблоков 2×2 применяют преобразование NSW и оптимизированную таблицу квантования
при этом используют дополнительные семь под-режимов кодирования в отношении подблоков с вертикальными/горизонтальными или диагональными преимущественными направлениями, а также однородными участками в пределах блока размером 2×2, причем способ кодирования определяется суб-префиксом переменной длины (VL), который указывает, какой тип кодирования используется
где H структура означает, что для кодирования подблока 2×2 используют две "опорные точки" A, C, каждую из которых кодируют семью битами, выполняя простое усечение младшего разряда, причем усеченный младший разряд восстанавливают нулевым значением; V структура означает, что дня кодирования подблока 2×2 используют две "опорные точки" A, B, каждую из которых кодируют семью битами, выполняя простое усечение младшего разряда, причем усеченный младший разряд восстанавливают нулевым значением; D структура означает, что для кодирования подблока 2×2 используют две "опорные точки" A, B, каждую из которых кодируют шестью битами, выполняя простое усечение двух младших разрядов, причем усеченные младшие разряды восстанавливают бинарным значением 10b; опорные точки A, B используют для восстановления точек С, D следующим способом: D=A, C=B; режим среднего значения используют для кодирования всех пикселей A, B, C, D средним значением, получая однородный блок, а среднее значение занимает восемь битов; режим "h/v/d величина близка к нулю" используют, если после NSW преобразования одна из (h, v, d) близка к нулю, при этом префиксы выбирают на основе следующих соответствий:
100; |A-B|~0; 101; |A-C|~0; 110; |A-D |~0,
при этом в каждом случае только две разностные величины подвергают квантованию:
h≡0; {v, d}→{Квантователь N, Iv, Id)
v≡0; (h, d}→{Квантователь N, Ih, Id)
d≡0; (h, v}→{Квантователь N, Ih, Iv),
а величина s кодируется 6, 7 или 8 битами; при этом процесс кодирования подблока включает в себя следующие этапы: подблок размером 2×2 кодируют с помощью структуры H; далее подблок размером 2×2 кодируют с помощью структуры V; затем подблок размером 2×2 кодируют, соответственно, с помощью структуры D и среднего значения с последующим вычислением погрешностей, вызванных соответствующими способами кодирования подблока, после чего выполняют NSW преобразование и среди модулей разностных величин (h., v, d) определяют наименьшее значение, затем две ненулевые разностные величины кодируют методом FQvT с помощью таблицы
и процесса квантования, описанного выше, затем определяют количество свободных битов путем изначального задания количества свободных битов равным 0, анализа номера выбранного квантователя, и если он оказался равным 1, последовательного сравнения с 0 индексов уровней восстановления для каждой из двух ненулевых разностных величин и увеличения на 1 количества свободных битов в случае равенства индекса уровня восстановления в каждом из двух сравнений и исходя из этого, кодирования величины s с точностью шесть, семь или восемь битов в соответствии со таблицей:
затем оценивают погрешность, вызванную кодированием подблока 2×2 с помощью метода FQvT, и среди полученных пяти погрешностей выбирают наименьшую, и соответствующий суб-префикс вводят в битовый поток перед сжатыми данными.
16. Способ по п.4, отличающийся тем, при обработке блоков применяют преобразование NSW ко всем цветовым каналам одновременно с последующим групповым кодированием разностных величин из трех цветовых каналов совместно в соответствии с таблицей оптимизированного набора квантователей:
причем для всего набора разностных величин из подблока 2×2: {hR, hG, hB, vR, vG, vB, dR, dG, dB} выбирают один общий квантователь и каждую из разностных величин кодируют посредством 3-битового значения таким образом, что в целом девять разностей занимают: 9×3=27 битов, при этом индекс квантователя кодируют тремя битами, что в итоге дает (27+3)=30 битов, а каждую величину из {sR, sG, sB} кодируют в пять битов путем усечения трех младших разрядов, причем восстановление усеченных разрядов осуществляют через бинарное значение 100b, при этом оптимальное визуальное качество обеспечивают за счет использования заранее определенных весов, отражающих различное восприятие наблюдателем красного, зеленого и синего цветов, которые учитывают при вычислении погрешности E, порожденной процедурой FQvT для {hR, hG, hB, vR, vG, vB, dR, dG, dB}, выражающейся следующим образом:
где ΔhC, ΔvC, ΔdC обозначают ошибку приближения h/v/d разностных величин после FQvT процедуры в цветовом канале C; Wc - весовые коэффициенты, отражающие относительную видимость каждого из цветовых каналов C∈{R, G, В} для человека.
18. Способ по п.3, отличающийся тем, что при обработке блоков расщепляют исходный блок 2×4 на 4 микроблока меньшего размера с размерами 1×2 пикселей, при этом каждый микроблок 1×2 состоит из двух пространственных пикселей A и B, каждый пространственный пиксель состоит из трех цветовых компонент R, G, B; для каждого микроблока определяют доминирующий канал и затем осуществляют передачу значений пикселей в доминирующем канале путем кодирования соответствующих значений в шесть битов; неосновные каналы кодируют посредством передачи средних значений между двумя значениями для каждой пространственной позиции, при этом используют процедуру квантования и ограничения, заключающуюся в том, что интенсивности пикселей доминирующего канала сохраняют во временных переменных D1/D2 и, в зависимости от того, какие каналы признаны неосновными, вычисляют определенные средние значения, при этом усреднение производят между двумя неосновными каналами в каждой пространственной позиции, затем временные переменные, которые хранят значения доминантного канала, кодируют 6-битными значениями путем усечения двух младших разрядов, причем последующее восстановление усеченных разрядов осуществляют двоичным значением 10b; усредненные значения неосновных каналов сначала огранивают по верхнему порогу, равному 63, затем ограниченные значения квантуют усечением трех младших разрядов, причем восстановление усеченных разрядов осуществляют двоичным значением 100b, и с каждым микроблоком 1×2 передают дополнительную информацию, указывающую 2-битный номер доминирующего канала.
19. Способ по п.4, отличающийся тем, что при обработке подблока 2×2 для воспроизведения участков с малыми разностными величинами во всех трех цветовых каналах в пределах подблока 2×2 применяют альтернативную процедуру кодирования среднего, а именно: кодируют величину s с использованием пять битов следующим образом:
берут младшие шесть битов восьмибитового представления величины s;
из них старшие пять битов рассматривают как кодовое представление величины s;
при декодировании младший разряд декодированной величины s восстанавливают нулевым значением; при этом передачу незначительных изменений интенсивностей обеспечивают за счет применения следующей таблицы квантования:
20. Способ по п.3, отличающийся тем, что каждый обрабатываемый блок 2×4 рассматривают как составленный из пикселей, каждый из которых представлен тремя цветовыми компонентами, каждая из которых изначально представлена 10-битным значением, и в результате компрессии блок кодируют 100 битами, представляющими собой элементарный сжатый пакет, который состоит в свою очередь из VLEH, сжатых битов, битов, представляющих информацию о младших разрядах в компактном виде, и возможных дополняющих битов, при этом сводную информацию о возможных методах кодирования, о количестве сжатых битов, о количестве битов, требуемых для кодирования младших разрядов, о длине VLEH и значений битов, входящих в него, а также о количестве дополняющих битов, представляют в виде следующей таблицы
где идентификацию использованного метода осуществляют одной или двумя буквами, причем в последнем случае расшифровка метода осуществляется следующим образом: первая буква соответствует методу, кодирующему левый подблок 2×2, вторая буква соответствует методу, кодирующему правый подблок 2×2, одна буква соответствует способу, кодирующему блок 2×4, при этом каждый заголовок VLEH занимает от 1 до 10 битов; номер бита, указанный в таблице, означает порядок в котором соответствующий бит помещается/извлекается из битового потока.
21. Способ по п.1, отличающийся тем, что при выборе оптимального метода кодирования для текущего обрабатываемого блока 2×4 осуществляют проверку эффективности способа оценки искажений, основанного на Взвешенном Квадратичном Макс-Макс Критерии (WSMMC) и заключающегося в следующем:
рассчитывают взвешенный квадрат максимума попиксельного отклонения между исходным и закодированным блоком по всем трем цветовым каналам;
рассчитывают сумму величин, определенных на первом шаге:
рассчитывают максимум среди величин, определенных на первом шаге:
MMax=MAX[MaxSqR, MaxSqG, MaxSqB]
рассчитывают сумму величин, полученных на втором и третьем шагах:
WSMMC=SMax+Mmax
затем складывают WSMMC - значения, рассчитанные для обоих подблоков 2×2, при этом выбор оптимального метода кодирования сводят к выполнению следующих этапов:
левый и правый подблоки, входящие в состав одного блока 2×4, кодируют раздельно пятью известными методами: N, Р, C, S, E - методами и после сжатия каждого подблока одним из пяти известных методов N, Р, С, S, E выполняют расчет ошибки согласно одному из заявляемых способов, а также осуществляют формирование промежуточных битовых потоков;
для каждого из двух подблоков определяют метод, дающий минимальную ошибку;
на основе результатов предыдущего этапа для блока 2×4, состоящего из двух подблоков 2×2, определяют наилучшую комбинацию методов N, Р, С, S, E, обеспечивающую минимальную комбинационную ошибку кодирования блока 2×4 в виде двух подблоков 2×2;
весь исходный блок 2×4 обрабатывают каждым из семи способов D, O, М, F, L, U, H, которые оптимизированы для сжатия блока 2×4, при этом после кодирования блока любым из указанных способов рассчитывают ошибку кодирования согласно одному из заявляемых здесь способов;
вычисляют минимальную ошибку среди ошибок, вызванных применением семи заявляемых здесь способов D, O, M, F, L, U, H к исходному блоку 2×4;
вычисляют минимальную ошибку, на основании чего определяют оптимальный способ кодирования, обеспечивающий минимальную ошибку.
22. Способ по п.1, отличающийся тем, что применяют кодирование младших разрядов (LSB) в отношении двух младших разрядов исходных десятибитных значений пикселей в пределах обрабатываемого блока 2×4 по одному или нескольким цветовым каналам.
23. Способ по п.22, отличающийся тем, что выполняют 3-битное кодирование, заключающееся в том, что для каждого цвета выполняют расчет огрубленного среднего значения младших разрядов в пределах блока 2×4:
где Ic(x,y) - исходное десятибитное значение пикселя в цветовом канале C в позиции (x,y); mLSBc состоит из одного бита, описывающего огрубленное среднее младших разрядов, при этом огрубленные средние по всем трем цветовым каналам в совокупности образуют 3-битное число, являющееся закодированной информацией о младших разрядах в пределах блока 2×4.
24. Способ по п.22, отличающийся тем, что выполняют 4-битное кодирование, заключающееся в том, что для зеленого канала используют более точное представление младших разрядов за счет раздельного кодирования младших битов левого и правого подблоков:
при этом огрубленные средние по красному и синему каналу в совокупности с двумя битами, описывающими огрубленные средние значения младших разрядов двух подблоков в зеленом канале, в совокупности составляют четырехбитное значение, являющееся закодированной информацией о младших разрядах в пределах блока 2×4.
25. Способ по п.21, отличающийся тем, что выполняют 5-битное кодирование, заключающееся в том, что для красного и зеленого канала используют более точное представление младших разрядов за счет раздельного кодирования младших битов левого и правого подблоков:
при этом огрубленное однобитовое среднее по синему каналу в совокупности с двумя битами, описывающими огрубленные средние значения младших разрядов двух подблоков в красном канале и двух битов, описывающих огрубленные средние значения младших разрядов двух подблоков в зеленом канале, в совокупности составляют 5-битное значение, являющееся закодированной информацией о младших разрядах в пределах блока 2×4.
26. Способ по п.21, отличающийся тем, что выполняют 6-битное кодирование, заключающееся в том, что для каждого цветового канала используют два бита для представления огрубленной информации о средних значениях младших разрядов подблоков в пределах исходного блока 2×4;
при этом 6-битное значение, являющееся закодированной информацией о младших разрядах в пределах блока 2×4, формируют путем объединения трех двухбитных значений, соответствующих огрубленной информации о среднем значении младших разрядов, и восстановление соответствующих частей двух младших битовых плоскостей основано на получении одного или двух битов по каждому цветовому каналу и формировании среднего значения для двух битовых плоскостей по всему блоку 2×4 или формировании двух средних значений для двух битовых плоскостей в пределах левого и правого подблоков 2×2, причем среднее значение (Middle Value) рассчитывают согласно формуле:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2009110512/09A RU2420021C2 (ru) | 2009-03-24 | 2009-03-24 | Способ сжатия изображений и видеопоследовательностей |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2009110512/09A RU2420021C2 (ru) | 2009-03-24 | 2009-03-24 | Способ сжатия изображений и видеопоследовательностей |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2009110512A true RU2009110512A (ru) | 2010-09-27 |
RU2420021C2 RU2420021C2 (ru) | 2011-05-27 |
Family
ID=42939932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2009110512/09A RU2420021C2 (ru) | 2009-03-24 | 2009-03-24 | Способ сжатия изображений и видеопоследовательностей |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2420021C2 (ru) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8634668B2 (en) | 2011-02-25 | 2014-01-21 | Sony Corporation | Method of compression of digital images using a fixed number of bits per block |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2488960C2 (ru) * | 2011-06-17 | 2013-07-27 | Государственное образовательное учреждение высшего профессионального образования Самарский государственный технический университет | Способ компрессии-декомпрессии данных и устройство для его осуществления |
US20140112589A1 (en) * | 2012-10-22 | 2014-04-24 | Gurulogic Microsystems Oy | Encoder, decoder and method |
RU2530300C1 (ru) * | 2013-02-21 | 2014-10-10 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Тамбовский государственный технический университет" ФГБОУ ВПО ТГТУ | Способ повышения качества структурного изображения биообъекта в оптической когерентной томографии |
JP6345650B2 (ja) * | 2013-04-05 | 2018-06-20 | サターン ライセンシング エルエルシーSaturn Licensing LLC | 画像処理装置及び画像処理方法 |
US9654777B2 (en) | 2013-04-05 | 2017-05-16 | Qualcomm Incorporated | Determining palette indices in palette-based video coding |
GB2516021A (en) * | 2013-07-05 | 2015-01-14 | Canon Kk | Method, device, and computer program for pre-encoding and post-decoding high bit-depth content in video encoder and decoder |
GB2516022A (en) * | 2013-07-05 | 2015-01-14 | Canon Kk | Method, device, and computer program for processing high bit-depth content in video encoder and decoder |
US9558567B2 (en) * | 2013-07-12 | 2017-01-31 | Qualcomm Incorporated | Palette prediction in palette-based video coding |
KR102275639B1 (ko) | 2013-10-14 | 2021-07-08 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 비디오 및 영상 코딩 및 디코딩에 대한 기본 색상 인덱스 맵 모드의 특징 |
CN105659602B (zh) | 2013-10-14 | 2019-10-08 | 微软技术许可有限责任公司 | 用于视频和图像编码的帧内块复制预测模式的编码器侧选项 |
AU2013403224B2 (en) | 2013-10-14 | 2018-10-18 | Microsoft Technology Licensing, Llc | Features of intra block copy prediction mode for video and image coding and decoding |
ES2893815T3 (es) | 2013-12-10 | 2022-02-10 | Canon Kk | Procedimiento y aparato para codificar o descodificar una paleta en el modo de codificación de paleta |
JP6537511B2 (ja) | 2013-12-10 | 2019-07-03 | キヤノン株式会社 | Hevcにおける改良型パレットモード |
WO2015100726A1 (en) | 2014-01-03 | 2015-07-09 | Microsoft Corporation | Block vector prediction in video and image coding/decoding |
US10390034B2 (en) | 2014-01-03 | 2019-08-20 | Microsoft Technology Licensing, Llc | Innovations in block vector prediction and estimation of reconstructed sample values within an overlap area |
US11284103B2 (en) | 2014-01-17 | 2022-03-22 | Microsoft Technology Licensing, Llc | Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning |
US10542274B2 (en) | 2014-02-21 | 2020-01-21 | Microsoft Technology Licensing, Llc | Dictionary encoding and decoding of screen content |
AU2014385769B2 (en) | 2014-03-04 | 2018-12-06 | Microsoft Technology Licensing, Llc | Block flipping and skip mode in intra block copy prediction |
JP2017513358A (ja) * | 2014-03-17 | 2017-05-25 | ノキア テクノロジーズ オサケユイチア | ビデオのエンコーディングおよびデコーディングのための方法およびテクノロジー機器 |
US9654806B2 (en) * | 2014-03-26 | 2017-05-16 | Qualcomm Incorporated | Determining palette size, palette entries and filtering of palette coded blocks in video coding |
KR102311815B1 (ko) | 2014-06-19 | 2021-10-13 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 통합된 인트라 블록 카피 및 인터 예측 모드 |
JP2017535145A (ja) | 2014-09-30 | 2017-11-24 | マイクロソフト テクノロジー ライセンシング,エルエルシー | 波面並列処理が可能にされた場合のピクチャ内予測モードに関する規則 |
GB2531005A (en) | 2014-10-06 | 2016-04-13 | Canon Kk | Improved encoding process using a palette mode |
JP6461355B2 (ja) * | 2015-01-29 | 2019-01-30 | キヤノン株式会社 | 画像を符号化または復号する装置、方法、プログラム |
RU2607415C2 (ru) * | 2015-04-21 | 2017-01-10 | Федеральное государственное казенное военное образовательное учреждение высшего образования "Академия Федеральной службы охраны Российской Федерации" (Академия ФСО России) | Способ идентификации кадров потока мультимедийных данных на основе корреляционного анализа гистограмм изображений кадров |
WO2016197314A1 (en) | 2015-06-09 | 2016-12-15 | Microsoft Technology Licensing, Llc | Robust encoding/decoding of escape-coded pixels in palette mode |
US10986349B2 (en) | 2017-12-29 | 2021-04-20 | Microsoft Technology Licensing, Llc | Constraints on locations of reference blocks for intra block copy prediction |
-
2009
- 2009-03-24 RU RU2009110512/09A patent/RU2420021C2/ru not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8634668B2 (en) | 2011-02-25 | 2014-01-21 | Sony Corporation | Method of compression of digital images using a fixed number of bits per block |
RU2510079C2 (ru) * | 2011-02-25 | 2014-03-20 | Сони Корпорейшн | Способ сжатия цифровых изображений с использованием фиксированного числа битов в блоке |
Also Published As
Publication number | Publication date |
---|---|
RU2420021C2 (ru) | 2011-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2009110512A (ru) | Способ сжатия изображений и видеопоследовательностей | |
CN101507284B (zh) | 用于对视频颜色增强数据进行编码的方法和设备,以及用于对视频颜色增强数据进行解码的方法和设备 | |
US8107751B2 (en) | DPCM with adaptive range and PCM escape mode | |
US6697521B2 (en) | Method and system for achieving coding gains in wavelet-based image codecs | |
US9232226B2 (en) | Systems and methods for perceptually lossless video compression | |
CN110401833B (zh) | 图像传输方法及装置 | |
US20090190849A1 (en) | Encoder and decoder for encoding and decoding pixel data with low amount of transmitting data, encoding method, and decoding method thereof | |
CN108769677B (zh) | 一种基于感知的高动态范围视频动态范围可分级编码方法 | |
JP5608245B2 (ja) | イメージエンコーダ、イメージデコーダ、符号化されたイメージデータを提供するための方法、イメージデータを復号化するための方法およびコンピュータプログラム | |
CN101142821A (zh) | 新压缩格式和用其在帧存储器中暂存图像数据的设备 | |
CN105324997A (zh) | 用于增强动态范围信号的分层编码的自适应整形 | |
CN1081052A (zh) | 高清晰度电视信号的编码技术 | |
CN101039374A (zh) | 一种图像无损压缩和图像解压缩方法 | |
JP2003198854A (ja) | レート帰還を使用したシングルパスフィット保証データ圧縮方法 | |
CN102473314B (zh) | 矢量嵌入式图形编码 | |
GB2593522A9 (en) | Image data decompression | |
CN114640857A (zh) | 基于改进哈夫曼编码的图像压缩方法、3d降噪方法 | |
CN1418014A (zh) | 编码方法和编码装置 | |
US8311090B2 (en) | Method for encoding a first and a second data word | |
CN115474044B (zh) | 一种Bayer域图像有损压缩方法 | |
Koc et al. | Lossless compression of dithered images | |
CN101406034B (zh) | 使用限定符水印的压缩方案及使用该压缩方案在帧存储器中临时存储图像数据的装置 | |
KR20080002325A (ko) | 누적 빈도수를 이용한 초음파 영상의 압축 방법 | |
CN113301339A (zh) | 数据编码、解码方法及装置 | |
KR100501815B1 (ko) | 비트 플레인을 이용한 계층적 이산여현 변환방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20190325 |