Способ и устройство для цикл-фильтрации данных изображения

 

Изобретение относится к телевидению, в частности к обработке данных изображения, а именно к способу и устройству для цикл-фильтрации данных изображения. Технический результат - уменьшение эффекта квантования, возникающего при кодировании и декодировании данных изображения. Сущность изобретения заключается в том, что способ цикл-фильтрации содержит этапы выделения флага, указывающего, требуют ли данные изображения цикл-фильтрации с использованием распределения коэффициентов обратного преобразования (КОП) обратно преобразованных данных изображения и вектора перемещения, указывающего на разницу между предшествующим кадром и текущим кадром. Соответствующие флагу данные изображения затем фильтруются предварительно определенным способом, если флаг указывает на необходимость цикл-фильтрации. Использование флагов и адаптивного фильтра уменьшает эффект квантования и позволяет снизить объем вычислений, требуемых для фильтрации. Кроме того, фильтрация может выполняться посредством параллельной обработки данных без умножения и деления, что позволяет использовать более простые аппаратные средства. 2 с. и 29 з.п.ф-лы, 8 ил., 1 табл.

Настоящее изобретение относится к обработке данных изображения, в частности к способу и устройству для цикл-фильтрации данных изображения, чтобы уменьшить эффект квантования.

Как правило, стандарты для кодирования изображения, например в формате MPEG Международной Организации Стандартизации (МОС) и в формате Н.263, рекомендуемые Международным Союзом Электросвязи (МСЭ), включают блочную оценку движения и дискретное косинусное преобразование блоков (ДКП). Большинство стандартов кодирования изображений использует ДКП для блоков из 8х8 пикселей для упаковки информации с небольшим числом коэффициентов преобразования. Эта блочная схема ДКП основана на свойствах локальной пространственной корреляции изображений.

Однако при восстановлении данных изображения на блочной основе имеет место значительное искажение изображения, например имеют место блокирующие артефакты у границы блока, угловые выбросы в точках пересечения блоков и низкочастотный шум переходных процессов у краев изображения ("звон"). Это объясняется тем, что данные изображений проходят через ДКП в блоках из 8х8 пикселей до квантования. Такое искажение данных является значительным при высокой степени сжатия изображения.

Блокирующие артефакты вызываются шумом сетки вдоль границы блока в относительно однородной области. Шум сетки указывает на следы обработки на блочной основе на краях между блоками, когда сжатые данные после их восстановления отображаются на экране. Таким образом, края между блоками становятся заметными. Угловой выброс формируется там, где встречаются углы блоков из 8х8 пикселей. Кроме того, низкочастотный шум является типичным явлением Гиббса, вызванным округлением, когда коэффициенты высокочастотных составляющих ДКП квантуются для максимального сжатия изображения. Из-за низкочастотных помех может иметь место перекрытие изображений с предварительно определенным интервалом.

Было предложено несколько способов для уменьшения блокирующих артефактов, угловых выбросов и низкочастотного шума, возникающих при выполнении блочного кодирования. Способ однократной адаптивной фильтрации (ОАФ) для уменьшения эффекта квантования распакованных изображений формата JPEG был предложен Д. Л.Ли, Г.С.Кимом и Г.В.Парком в работе "Уменьшение блокирующего эффекта JPEG-изображений адаптивной фильтрацией сигнала" [Press IEEE Trans. "Обработка Изображений", 1997 г.]. Известен способ, в котором используется двухмерный фильтр, чтобы уменьшить блокирующий артефакт, тогда как одномерный (1-D) фильтр используется для снижения ступенчатых помех (см. работу "Нелинейный пространственный вариант заключительной обработки изображения блочного кодирования", IEEE Trans. on ASSP, Vol. 34, N 5, pp. 1258-1267, 1986). Известен также итеративный алгоритм восстановления изображения с использованием теории проектирования на выпуклые объекты, описанный в работе "Проекционная пространственно-адаптивная реконструкция блочно-преобразованных сжатых изображений", IEEE Trans. on Image processing, Vol. 4., N 7, pp. 896-908, Июль 1995. Кроме того, опубликована статья "Алгоритм деблокирования для сжатых изображений в формате JPEG, используя представления элементарной волны", IEEE Trans. System Video Technology, Vol. 7, N 2, pp. 433-437, 1997.

Однако вышеуказанные способы требуют сложных вычислений.

Для того чтобы решить указанные выше технические задачи, задачей настоящего изобретения является создание способа и устройства цикл-фильтрации данных изображений, способных обеспечить кодирование с низкой скоростью передачи информации в битах в секунду без сложных вычислений и обеспечивающих снижение эффектов квантования, таких как блокирующие артефакты, угловые выбросы и низкочастотный шум, вызванные блочным декодированием.

Согласно одному из аспектов изобретения предложен способ цикл-фильтрации для уменьшения эффекта квантования, возникающего при кодировании и декодировании данных изображений, включающий следующие стадии: выделение флага, указывающего на необходимость использования цикл-фильтрации данных изображений с использованием распределения коэффициентов обратного преобразования (КОП) инверсно квантованных данных и изображений и вектора перемещения, указывающего на разницу между предшествующим кадром и текущим кадром, и фильтрацию данных изображений, соответствующих флагу, предварительно определенным образом, если флаг указывает на необходимость цикл-фильтрации.

На стадии (а) предпочтительно, чтобы флаг выделялся из области дискретного косинусного преобразования (ДКП) каждого блока, если кадр изображения, который должен быть подвержен цикл-фильтрации, представляет собой внутренний кадр, и из остаточного сигнала и опорного кадра, если кадр изображения, который должен быть подвержен цикл-фильтрации, представляет собой промежуточный кадр.

Предпочтительно, чтобы флаг содержал флаг блокировки, указывающий на необходимость уменьшения блокирующих артефактов у границ блока, и флаг помехи, указывающий на необходимость снижения низкочастотного шума по краям изображения.

В случае, когда данные изображений представляют собой внутренний кадр, флаг блокировки внутреннего кадра предпочтительно включает флаг блокировки по горизонтали (ФБГ) и флаг блокировки по вертикали (ФБВ), при этом выделение ФБГ и ФБВ внутреннего кадра включает следующие стадии: расчет коэффициентов ДКП блока из 8х8 пикселей после инверсного квантования сжатых данных изображений, допуская, что пиксель А (коэффициент ДК) расположен в верхнем крайнем левом углу блока 8х8, состоящего из 64 пикселей, пиксель B расположен вправо от пикселя A и пиксель C расположен под пикселем A, ФБГ и ФБВ устанавливаются в состояние "1", указывая на необходимость цикл-фильтрации, если коэффициенты пикселей не равны нулю; ФБВ устанавливается в состояние "1", указывая на необходимость цикл-фильтрации, если только верхний ряд инверсно квантованного блока 8х8 не равен нулю, и ФБГ устанавливается в "1", указывая на необходимость цикл-фильтрации, если крайний левый столбец инверсно квантованного блока 8х8 не равен нулю.

При выделении флага помех из внутреннего кадра, предполагая, что пиксель A (коэффициент ДК) располагается в верхнем крайнем левом углу блока 8х8, состоящего из 64 пикселей, пиксель B расположен вправо от пикселя A и пиксель C расположен ниже пикселя A, флаг помех предпочтительно устанавливается в "1", указывая на необходимость цикл-фильтрации, когда любой пиксель, кроме пикселей A, B и C инверсно квантованного блока 8х8, имеет коэффициент, не равный нулю. Флаг блокировки текущего промежуточного кадра содержит предпочтительно флаг блокировки по горизонтали и флаг блокировки по вертикали, причем, допуская, что опорный кадр включает предварительно определенное число опорных блоков, блок опорного кадра, прогнозируемый вектором перемещения (MVxMVy) блока Ac текущего промежуточного кадра, является блоком перемещения X; выделение ФБГ и ФБВ блока Ac текущего промежуточного кадра включает следующие стадии: анализ степени перекрытия между блоком перемещения X и опорными блоками; побитовая логическая операция "И" ФБГ и ФБВ опорных блоков, имеющих предварительно определенное количество перекрывающихся пикселей, и установление результата побитовой операции "И" в качестве ФБГ и ФБВ блока Ac в плоскости текущего видеообъекта.

Предпочтительно выделение флагов блокировки по горизонтали и по вертикали в блоке Ac текущего промежуточного кадра дополнительно включает этап установки флага блокировки опорного макроблока в качестве флага блокировки текущего макроблока, если вектор перемещения текущего макроблока является пропущенным макроблоком, имеющим нулевой вектор перемещения.

Предпочтительно выделение флагов блокировки по горизонтали и по вертикали в блоке Ac текущего промежуточного кадра дополнительно включает этап заполнения блока данных незначащей информацией после копирования флага блокировки.

Предпочтительно выделение флага помех в блоке Ac текущего промежуточного кадра в случае, когда кадр изображения является промежуточным кадром, включает следующие этапы: установка флага помех текущего блока Ac в состояние "1", если любая переменная составляющая коэффициентов обратного преобразования (КОП) остаточного сигнала промежуточных блоков 8х8 не равна нулю, и установка флага помех в состояние "0", если все переменные составляющие коэффициентов обратного преобразования являются нулями; установка флага помех в "1", когда текущий блок находится в режиме прогнозирования блока 8х8 для передачи вектора перемещения в макроблоке.

Предпочтительно в случае, когда видеоданные представляют собой промежуточный кадр, флаг помех промежуточного кадра включает первый флаг помех (ФПО) и второй флаг помех (ФП1), причем выделение первого и второго флагов помех ФПО и ФП1 в блоке Ac текущего промежуточного кадра включает следующие стадии: установка первого флага помех ФПО текущего блока в состояние "1", если постоянные составляющие коэффициентов обратного преобразования остаточного сигнала промежуточных макроблоков 8х8 не равны нулю; в противном случае - установка ФПО текущего блока Ac в состояние "0", и установка второго флага помех ФП1 текущего блока в состояние "1", если любая переменная составляющая коэффициентов обратного преобразования остаточного сигнала промежуточных кадров 8х8 не равна нулю; в противном случае - установка ФП1 текущего блока в состояние "0".

Предпочтительно, при условии, что заданный блок, составляющий кадр, подлежащий цикл-фильтрации, - это блок I, и блок, смежный блоку I, - блок J, разница между текущим блоком I, и квантованным предшествующим блоком I не превышает предварительно определенную величину и разница между текущим блоком J и квантованным предшествующим блоком J не превышает предварительно определенную величину, фильтрация деблокирования на стадии фильтрации не выполняется.

Предпочтительно фильтрация деблокирования для уменьшения артефактов блокирования включает следующие этапы: выполнение первой фильтрации для изменения предварительно определенного числа пикселей у горизонтальной границы блока между блоками I и J, если флаги помех блоков I и J указывают на отсутствие необходимости снижения низкочастотного шума и оба ФБГ блоков I и J указывают на необходимость уменьшения артефактов блокирования; сравнение разности между двумя смежными пикселями по границе блока с показателем квантования Н.263 QP, если оба флага помех блоков I и J указывают на отсутствие необходимости снижения низкочастотного шума и, по меньшей мере, один из ФБГ блоков I и J указывает на отсутствие необходимости уменьшения блокирующих артефактов или если, по меньшей мере, один из флагов помех блоков I и J указывает на необходимость снижения низкочастотного шума; изменение предварительно определенного числа пикселей, которое меньше этого числа для первой фильтрации, если разница между двумя пикселями не превышает QP.

Предпочтительно фильтрация деблокирования для уменьшения артефактов блокирования включает следующие этапы: выполнение первой фильтрации для изменения предварительно определенного числа пикселей у границы блока между блоками I и J, если флаг помех блока I указывает на отсутствие необходимости снижения низкочастотного шума и оба блока I и J являются внутренними блоками, сравнение разницы между двумя смежными пикселями по границе блока с показателем квантования Н.263 QP, если флаг помех блока I указывает на отсутствие необходимости снижения низкочастотного шума и, по меньшей мере, один из ФБГ блоков I и J указывает на отсутствие необходимости уменьшения артефактов блокировки и выполнение второй фильтрации для изменения предварительно определенного числа значений пикселей, которое меньше, чем это число для первой фильтрации, если разница между двумя пикселями меньше величины QP; выполнение первой фильтрации, если флаг помех блока I указывает на отсутствие необходимости снижения низкочастотного шума, причем ни блок I, ни блок J не являются внутренними блоками, имеется постоянная составляющая коэффициента обратного преобразования (КОП) остаточного сигнала блока I или блока J и оба ФБГ блоков I и J находятся в состоянии "1", выполнение второй фильтрации, если флаг помех блока I указывает на отсутствие необходимости снижения низкочастотного шума, причем ни блок I, ни блок J не являются внутренними блоками; имеется постоянная составляющая коэффициента обратного преобразования (КОП) остаточного сигнала блока I или J, и, по меньшей мере, один из ФБГ блоков I и J равен нулю, и выполнение второй фильтрации, если флаг помех блока I указывает на необходимость снижения низкочастотного шума.

Предпочтительно фильтрация деблокирования для уменьшения артефактов блокирования включает следующие этапы: выполнение первой фильтрации для изменения предварительно определенного числа значений пикселей у границы блока между блоками I и J, если второй флаг помех ФП1 блока I указывает на отсутствие необходимости снижения низкочастотного шума, ни блок I, ни блок J не являются внутренними блоками и оба ФБГ блоков I и J указывают на необходимость уменьшения артефактов блокирования, сравнение разницы между двумя смежными пикселями по границе блока с показателем квантования Н.263 QP, если ФП1 блока I указывает на отсутствие необходимости снижения низкочастотного шума; ни блок I, ни блок J не являются внутренними блоками и, по меньшей мере, один из ФБГ блоков I и J указывает на отсутствие необходимости уменьшения артефактов блокирования; выполнение второй фильтрации для изменения предварительно определенного числа значений пикселей, которое меньше, чем это число для первой фильтрации, если разница между двумя пикселями меньше величины QP; выполнение первой фильтрации, если ФП1 блока I указывает на отсутствие необходимости снижения низкочастотного шума; ни блок I, ни блок J не являются внутренними блоками; по меньшей мере, один из ФПО блоков I и J находится в состоянии "1" и оба ФБГ блоков I и J находятся в состоянии "1", выполнение второй фильтрации, если ФП1 блока I указывают на отсутствие необходимости снижения низкочастотного шума; ни блок I, ни блок J не являются внутренними блоками; по меньшей мере, один из ФПО блоков I и J находится в состоянии "1", и, по меньшей мере, один из ФБГ блоков I и J не находится в состоянии "1"; и выполнение второй фильтрации, если ФП1 блока I не равен нулю.

Предпочтительно, при условии, что шесть пикселей на границе горизонтального блока между блоками I и J обозначены как A, B, C, D, E и F, где пиксели C и D - ближайшие пиксели на границе горизонтального блока, пиксели A и F представляют собой самые дальние пиксели, а пиксели B и D - средние; в ходе первой фильтрации осуществляется фильтрация нижних частот с коэффициентами (1,1,1,2,1,1,1) для шести пикселей, и вторая фильтрация выполняется для пикселей C и D, при которой два пикселя C и D заменяются на C=C+(D-C)/4 и D=D+(D-C)/4, если абсолютное значение разницы между пикселями C и D меньше, чем QP Н.263.

Предпочтительно операция снижения низкочастотного шума выполняется на стадии фильтрации, если флаг помех указывает на необходимость выполнения такой фильтрации; эта операция не выполняется, если флаг помех указывает на отсутствие необходимости снижения низкочастотного шума, причем операция фильтрации низкочастотного шума включает следующие этапы (а) обнаружение горизонтальных и вертикальных краев данных изображений и (b) выполнение двухмерной (2-D) адаптивной фильтрации сигнала в блоке 8х8, в котором должны быть снижены низкочастотные помехи. На этапе (а) для обнаружения горизонтального края, при условии, что пиксель [m, n] - текущий пиксель, пиксель [m] [n+1] располагается вправо от пикселей [m, n], пиксель [m][n-1] располагается влево от пикселя [m, n], разница между пикселем [m][n] и пикселем [m] [n+1] выражена как A1, разница между пикселем [m][n] и пикселем [m][n-1] выражена как A2; QP - показатель квантования H. 263, когда ((A1>QP) и (A2>QP)), или (A1>2QP), или (A2>2QP); текущий пиксель обнаруживается как краевой пиксель, и отображение края, край [m][n] становится равным 1. Кроме того, на этапе (а) для обнаружения вертикального края, при условии, что текущий пиксель представляет собой пиксель [m,n], пиксель [m+1][n] расположен выше пикселя [m,n]; нижний пиксель является пикселем [m-1][n]; разница между пикселем [m][n] и пикселем [m+l][n] равна A'1; разница между пикселем [m] [n] и пикселем [m-1][n] равна A'2. При этом QP - показатель квантования H. 263, когда удовлетворяется условное выражение ((A'1>QP) и (A'2>QP)), или (A'1>2QP) или (A'2>2QP), текущий пиксель обнаруживается, как краевой пиксель, и отображение края, край [m][n] становится равным "1". На этапе (b) адаптивной фильтрации сигнала окно фильтра с четырьмя входами используется для блока 8х8, чтобы определить, является ли центральный пиксель окна фильтра краевым пикселем, и фильтрация выполняется, если центральный пиксель является краевым пикселем; в противном случае выполняется взвешенная фильтрация.

Предпочтительно фильтрация для подавления низкочастотного шума на стадии фильтрации стадии не выполняется, если разница между текущим блоком I и квантованным предшествующим блоком I не больше, чем предварительно определенное значение, и разница между текущим блоком J и квантованным предшествующим блоком J не больше, чем предварительно определенное значение.

Предпочтительно фильтрация для снижения низкочастотного шума выполняется на этапе фильтрации, если флаг помех блока I указывает на необходимость в такой фильтрации; в противном случае, эта фильтрация не выполняется.

Предпочтительно фильтрация для снижения низкочастотного шума выполняется, когда блок I является внутренним блоком, когда блок I - не внутренний блок и находится в режиме прогнозирования блока 8х8 и когда блок I - не внутренний блок и не находится в режиме прогнозирования блока 8х8, и ФП1 блока I указывает на отсутствие необходимости в фильтрации для снижения низкочастотного шума, и такая фильтрация не выполняется, когда ФП1 блока I указывает на отсутствие необходимости в фильтрации для снижения низкочастотного шума.

Предпочтительно фильтрация для снижения низкочастотного шума включает следующие этапы: (а) обнаружение горизонтальных и вертикальных краев данных изображений и (b) выполнение двухмерной (2-D) адаптивной фильтрации сигнала в блоке 8х8, из которого должна удаляться низкочастотная помеха. На этапе (а) обнаружения горизонтального края, при условии, что пиксель [m,n] - текущий пиксель, пиксель [m][n+1] располагается вправо от пикселя [m,n], пиксель [m] [n-l] располагается влево от пикселя [m,n], причем разница между пикселем [m][n] и пикселем [m][n+1] равна A1, разница между пикселем [m][n] и пикселем [m][n-1] равна A2, QP представляет собой показатель квантования H. 263, когда удовлетворяется условное выражение ((A1>QP) и (A2>QP)) или (A1>2QP) или (A2>2QP), текущий пиксель обнаруживается как краевой пиксель, и отображение края, край [m][n] становится равным "1". Кроме того, на этапе (а) обнаружения вертикального края, при условии, что текущий пиксель является пикселем [m,n], пиксель [m+1][n] расположен выше пикселя [m, n], пиксель [m-1][nl расположен ниже пикселя [m, n], разница между пикселем [m][n] и пикселем [m+1] [n] составляет A'1, разница между пикселем [m][n] и пикселем [m-1] [n] составляет A'2 и QP - показатель квантования H.263, когда удовлетворяется условное выражение ((A'1>QP) и (A'2 >QP)) или (A'1>2QP) или (A'2>2QP), текущий пиксель обнаруживается как краевой пиксель, и отображение края, край [m] [n] становится равным "1". Кроме того, на стадии (b) адаптивной фильтрации сигнала окно фильтра с 4-мя входами применяется к блоку 8х8, чтобы определить, является ли центральный пиксель окна фильтра краевым пикселем; фильтрация выполняется, если центральный пиксель является краевым пикселем; в противном случае выполняется взвешенная фильтрация.

Предпочтительно для уменьшения угловых выбросов, формируемых в точке, где встречаются углы четырех блоков, когда данные изображения подвергаются блочному кодированию и декодированию, способ цикл-фильтрации дополнительно включает следующие этапы: (а) обнаружение углового выброса блока 8х8 инверсно квантованных данных изображения и (b) компенсация обнаруженного углового выброса. На стадии (а) обнаружения, при условии, что A, B, C и D - четыре пикселя вокруг точки, где встречаются четыре угла, и значения [0], [1] , [2] и [3] представляют собой значения пикселей A, B, C и D соответственно, среднее число значений пикселей устанавливается как (A+B+C+D+2)/4, разница между каждым значением пикселя для среднего значения сравнивается с показателем квантования Н.263 QP, и количество пикселей с угловыми выбросами накапливается для обнаружения углового выброса, если разница превышает QP. Кроме того, на этапе компенсации (b), при условии, что A1, и A2 - пиксели, смежные пикселю A, а A3 - пиксель, диагональный пикселю A в том же блоке пикселя A, A', A'1 и A'2 - компенсированные величины пикселей A, A1 и A2, соответственно, когда обнаружен только один кандидат углового выброса и этот обнаруженный кандидат - пиксель A, разница между пикселями A и A3 меньше, чем 3QP/2, компенсация углового выброса выполняется с использованием следующих уравнений: A' = (4A+B+C+2D+4)/8; A'1 = (A'+3A1+2)/4; A'2 = (A'+3A2+2)/4, и, когда количество кандидатов больше двух, выбирается тот кандидат, который имеет самое большое отличие от (A3 + B3 + C3 + D3 + 2)/4, и компенсация углового выброса выполняется в этой точке так же, как это делается в случае только одного кандидата.

Согласно другому аспекту изобретения заявлено устройство для цикл-фильтрации данных изображения, обеспечивающее уменьшение эффекта квантования, возникающего при кодировании и декодировании данных изображения, указанное устройство содержит: блок выделения флага для выделения флага, указывающего на необходимость цикл-фильтрации данных изображения с использованием распределения коэффициентов обратного преобразования (КОП) данных и изображение вектора перемещения, указывающего разницу между предшествующим кадром и текущим кадром; деблокирующий фильтр для фильтрации деблокирования данных изображения путем анализа флага блокирования, выделенного блоком выделения флага, компенсатор угла выброса для обнаружения углового выброса данных, отфильтрованных с деблокированием, и для компенсации обнаруженного углового выброса; фильтр для снижения низкочастотных помех в отфильтрованных данных, скомпенсированных по угловому выбросу путем анализа флага помех, выделенного блоком выделения флага; при этом указанные флаги включают в себя флаг блокировки, указывающий на необходимость уменьшения артефактов блокирования у границ блока, и флаг помех, указывающий на необходимость снижения низкочастотного шума у краев изображения.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ Вышеуказанные задачи и преимущества настоящего изобретения поясняются в последующем описании предпочтительных вариантов осуществления изобретения со ссылками на чертежи, на которых представлено следующее: фиг. 1 - блок-схема устройства для цикл-фильтрации данных изображения, обеспечивающего уменьшение эффекта квантования блочных данных изображения; фиг. 2 - структура декодера, соответствующего Н.263+, использующего блок 8х8 коэффициентов дискретного косинусного преобразования (ДКП), инверсно квантованного инверсным квантователем декодера; фиг. 3 - иллюстрация взаимосвязи между блоком 8х8 (Ас) во внутреннем кадре и смежными блоками опорного кадра; фиг. 4 - пример, иллюстрирующий выделение флага блокировки по горизонтали (ФБГ), флага блокировки по вертикали (ФБВ) и флага помех (ФП) в плоскости промежуточного видеообъекта (ППО);
фиг. 5 - представление границ блока и расположения пикселей, смежных границам блока, для иллюстрации фильтрации, реализуемой фильтром деблокирования, для уменьшения артефактов блокирования;
фиг. 6А - иллюстрация краев изображения, на которых имеют место угловые выбросы из-за квантования;
фиг. 6B - угловой выброс, формируемый квантованием;
фиг. 6C - кординаты точек угла для компенсации углового выброса;
фиг. 7A - представление ядра двухмерного (2-D) адаптивного фильтра сигнала (АФС);
фиг. 7B - пример блока 10х10 для обнаружения края и адаптивной фильтрации сигнала;
фиг. 8 - представление результата заполнения Bf_Y блока данных.

ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ
На фиг. 1 представлено устройство 10 для цикл-фильтрации данных изображения для снижения эффекта квантования, возникающего, когда данные изображения сформированы блочным кодированием и декодированием, реализуемым системой с общим кодером и декодером. Устройство 10 содержит блок 100 выделения флага, фильтр 110 деблокирования, компенсатор 120 углового выброса и фильтр 130 для снижения помех. Блок выделения флага 100 выделяет флаг, используя распределение коэффициентов обратного преобразования (КОП) инверсно квантованных данных изображения и вектор перемещения, указывающий на разницу между предшествующим кадром и текущим кадром. Флаг является информацией, указывающей, требует ли декодированное изображение цикл-фильтрации, и состоит из флага блокировки и флага помех. Флаг блокировки указывает на необходимость уменьшения артефактов блокировки у границы блока, а флаг помех указывает на необходимость снижения низкочастотной помехи (низкочастотного шума) у краев изображения. Флаг блокировки состоит из ФБГ, указывающего на выполнение цикл-фильтрации пикселей смежных блоков по горизонтальной границе блока, и ФБВ, указывающего на выполнение цикл-фильтрации пикселей смежных блоков по вертикальной границе блока.

Выделение флага выполняется во внутренних и промежуточных кадрах. Настоящее изобретение исходит из того, что каждый промежуточный кадр состоит из кадра P и кадра РВ. Распределение коэффициентов КОП инверсно квантованных данных изображения используется для выделения флага во внутренних кадрах. При выделении флага в промежуточных кадрах используется вектор перемещения, указывающий на разницу между предшествующим кадром и текущим кадром. Подробное описание этого процесса приведено ниже.

Фильтр 110 деблокирования проверяет флаг блокирования, выделенный блоком 100 выделения флага, использующим одномерные (1-D) фильтры нижних частот (ФНЧ) для фильтрации по горизонтали и вертикали, осуществляя, таким образом, фильтрацию деблокирования данных изображения.

Компенсатор выброса 120 обнаруживает угловой выброс данных, прошедших через фильтр 110 деблокирования, и компенсирует обнаруженные угловые выбросы.

Фильтр 130 подавления помехи проверяет флаг помех, выделенный блоком выделения флага 100, использующим двухмерный адаптивный фильтр сигнала (АФС) в фильтре подавления помех и компенсации углового выброса данных. Основная идея способа цикл-фильтрации данных изображения в соответствии с настоящим изобретением состоит в адаптивной фильтрации с использованием пространственной частоты и временной информации для снижения эффекта квантования.

Кроме того, учитываются субъективное качество изображения, максимальное отношение сигнал-шум и сложность вычислений. В частности, если основная идея реализована с использованием программного обеспечения и аппаратных средств, сложность вычислений является решающим фактором. Анализируется распределение коэффициентов обратного преобразования для выделения информации о артефактах блокирования и низкочастотных помехах в каждом блоке 8х8. Фильтр нижних частот и двухмерный адаптивный фильтр сигнала (АФС) адаптивным образом применяются к каждому блоку 8х8 с использованием флагов блокировки и помех.

В настоящем изобретении реализуются два его варианта: с флагом помех, устанавливаемым в виде одного флага помех (ФП) в первом варианте, и устанавливаемым в виде двух, т.е. первого и второго, флагов помех ФПО и ФП1, во втором варианте. Если при дальнейшем их описании нет ссылки на первый или второй вариант, это означает, что применяются оба варианта. Кроме того, в случае, когда используется только первый или только второй вариант, соответствующий вариант обязательно упоминается.

Ниже описывается выделение флага артефактов блокирования и флага помех с помощью блока выделения флага 100.

1. Информация о артефактах блокирования и низкочастотном шуме
Для того чтобы снизить эффекты квантования в формате Н.263+, определены два типа флагов: флаги блокирования и флаги помех. Флаги блокирования и флаги помех выделяются из зоны КОП каждого блока 8х8 во внутреннем макроблоке (МБ). Кроме того, флаги промежуточных макроблоков вычисляются из остаточного сигнала и флагов опорной плоскости видеообъекта (ОПО).

1.1. Информация флагов для внутреннего макроблока
Распределение коэффициентов обратного преобразования (коэффициенты ДКП после инверсного квантования) определяется в декодере. На фиг. 2 представлена блок-схема декодера Н.263+ и коэффициента ДКП после обратного преобразования. В блоке обратного преобразования 8х8 на фиг. 2 коэффициенты A, B и C используются для принятия решения по флагу блокировки и флагу помех.

Если только коэффициент в положении A (постоянная составляющая) среди 64 коэффициентов ДКП блока 8х8, показанного на фиг. 2, имеет нулевое значение, 64 пикселя кодированного блока 8х8 имеют те же самые значения в пространственной области. Таким образом, блок, имеющий только постоянную составляющую, может создавать артефакты блокирования по горизонтали и по вертикали. В этом случае флаги блокирования по горизонтали и по вертикали блока устанавливаются в положение "1".

Если коэффициенты в верхнем ряду инверсно квантованного блока 8х8 имеют ненулевые значения, восемь пикселей в каждом столбце имеют одно и то же значение в пространственной области. Этот блок может создавать вертикальные артефакты блокировки по вертикали, так что флаг блокировки по вертикали устанавливается в состояние "1".

Если коэффициенты в дальнем левом столбце имеют ненулевые значения, восемь пикселей в каждом ряду имеют одно и то же значение в пространственной области. Этот блок может создавать артефакты блокировки по горизонтали, так что флаг блокировки по горизонтали устанавливается в состояние "1".

В первом варианте флаг помех устанавливается в состояние "1", если коэффициенты, не равные нулю, существуют в позициях, отличных от A, B и C на фиг. 2. Во втором варианте, первый флаг помех ФПО устанавливается в состояние "1", если коэффициенты, не равные нулю, существуют в позициях, отличных от кроме A, B и C на фиг. 2.

Наличие этих высокочастотных коэффициентов указывает на то, что блок включает края изображения. Следовательно, блок создает низкочастотные помехи (низкочастотный шум) по краям изображения из-за округления высокочастотных коэффициентов. Во втором варианте второй флаг помех ФП1 во внутреннем макроблоке не используется.

1.2. Распространение информации флага на промежуточный макроблок (ПМБ)
В первом варианте флаги блокировки в опорных кадрах распространяются на следующий промежуточный макроблок с использованием векторов перемещения. Кроме того, остаточный сигнал промежуточного блока используется для определения флага промежуточного блока. Распространение флага блокировки из опорного кадра на промежуточный кадр происходит следующим образом.

На фиг. 3 показана взаимосвязь между блоком 8х8 (Ac) в промежуточном кадре и смежных блоках опорного кадра. Прохождение флага блокировки описывается векторами перемещения MVx и MVy следующим образом. На фиг. 3 Ar, Br, Cr и Dr представляют собой блоки опорного кадра. Ac - блок в текущем промежуточном кадре и X - блок перемещения Ac, который оценивается с использованием вектора перемещения (MVx, MVy). Прежде всего анализируется степень перекрытия вектора перемещения X и опорного блока. Если используются только блоки, в которых область, перекрытая промежуточным блоком перемещения X и опорным блоком, шире, чем используемые пиксели 2х2, можно вычислить флаги блокировки по горизонтали и вертикали текущего блока Aс побитовым способом с помощью логической операции "И" для ФБГ и ФБВ опорных блоков, которые перекрываются блоком X, оцененным по вектору перемещения.

Например, если MVx = 5 и MVy = 3,5, оцененный по вектору перемещения блок X перекрывается четырьмя опорными блоками Ar, Br, Cr и Dr. Здесь все четыре перекрытых области шире, чем пиксели 2х2. Таким образом, ФБГ и ФБВ текущего блока Ac могут вычисляться из четырех опорных блоков Ar, Br, Cr и Dr, как показано на фиг. 4. Здесь знак & указывает на побитовую логическую операцию "И".

Ниже описывается флаг помех (ФП) в промежуточном кадре. Прежде всего ФП опорного блока Ac устанавливается в состояние "1", если коэффициент обратного преобразования остаточных сигналов в блоке 8х8 промежуточного кадра не равен нулю. Перенос четырех векторов перемещения для одного макроблока определяется как режим прогнозирования блока 8х8. Режим прогнозирования блока 8х8 относится к занятой области, имеющей высокочастотную составляющую. Таким образом, определяется, находится ли блок 8х8 в режиме прогнозирования, и ФП блока, имеющего режим прогнозирования 8х8, устанавливается в состояние "1".

Что касается второго варианта, то блокировочные флаги блокировки в опорном кадре (изображение I или изображение P или часть изображения P улучшенных кадров РВ) распространяются на следующий промежуточный макроблок с использованием векторов перемещения. Кроме того, остаточный сигнал промежуточного блока используется для принятия решения по флагу промежуточного блока. Если текущий макроблок - пропущенный макроблок (COD-1), то флаги блокировки шести блоков (четыре для Y, один для Cb и один для Cr) в опорном макроблоке дублируются в соответствующих блоках текущего макроблока.

Распространение флага блокировки опорного кадра на промежуточный кадр осуществляется так же, как и в первом варианте. Тем не менее, для расчета ФБГ и ФБВ текущего блока Ac логическая операция "И" применяется к блокам, чья область перекрытия блоком X - шире, чем пиксель 1х1, в отличие от первого варианта, в котором логическая операция "И" применяется к блокам, чья область перекрытия блоком X - шире, чем пиксели 2х2. Например, если MVx-5 и MVy-3,5, оцененный по вектору перемещения блок X перекрывается четырьмя опорными блоками Ar, Br, Cr и Dr. Здесь четыре перекрытых области шире пикселя 1х1.

Ниже приведено пояснение для флага помех в промежуточном кадре. Прежде всего анализируется коэффициент обратного преобразования остаточных сигналов в блоке 8х8 промежуточного макроблока. ФПО блока Ac устанавливается в состояние "1", если постоянная составляющая коэффициента обратного преобразования не равна нулю и все другие составляющие также равны нулю. Кроме того, ФП1 опорного блока Ac устанавливается в "1", если любая переменная составляющая коэффициента обратного преобразования остаточных сигналов не равна нулю. Режим прогнозирования блоков 8х8 учитывается при фильтрации для снижения помех.

2. Способ цикл-фильтрации с использованием флага
Фильтр 110 деблокирования, компенсатор 120 углового выброса и фильтр 130 подавления помех подробно описываются ниже.

2.1. Фильтр деблокирования для уменьшения артефактов блокирования
Одномерный фильтр нижних частот для уменьшения артефактов блокирования работает в "сильном" или "слабом" режимах на горизонтальных и вертикальных границах блока в зависимости от положения флагов блокировки. Как это принято в большинстве способов деблокирования для уменьшения артефактов блокирования, вычисляется информация о краях изобретения, и фильтр нижних частот используется адаптивно на основе данных о краях изображения. Однако способ деблокирования в соответствии с настоящим изобретением использует описанный выше флаг блокировки, так что нет необходимости в обнаружении края изображения, что требует большого объема вычислений.

Текущий блок 8х8, который подлежит обработке, и смежные с ним блоки показаны на фиг. 5. Если оба ФБГ блоков БЛОКА_I и БЛОКА_J установлены в состояние "1", 7-элементный фильтр нижних частот с коэффициентами (1,1,1,2,1,1,1) используется с шестью элементами изображения (A, B, C, D, E, F) на границе горизонтального блока на фиг. 5.

Алгоритм фильтрации деблокирования по горизонтали в первом варианте выражается следующим образом:
если (БЛОК_ I == НЕ кодируется && БЛОК_J HE кодируется) фильтрация деблокирования не выполняется:
если(внутренний кадр){
если (ФП БЛОКА_I == 0 && Ф ФП БЛОКА_J == 0){/*помехи НЕТ*/
если (ФБГ БЛОКА_I == 1 && ФБГ БЛОКА_J == 1)
сильная фильтрация деблокирования
в противном случае
слабая фильтрация деблокирования);
}
если (кадр Р or РВ) {
если (ФП БЛОКА_I == 0) {/*помехи НЕТ*/
если (БЛОК_J == внутренний||БЛОК_J == внутренний){
если (ФБГ БЛОКА_I ++ 1&&ФБГ БЛОКА_J == 1)
сильная фильтрация деблокирования;
в противном случае
слабая фильтрация деблокирования;
}
в противном случае {
если (постоянная составляющая остаточного ОКП БЛОКА_I или БЛОКА_J){
если (ФБГ БЛОКА_I == 1 ФБГ БЛОКА_J == 1)
сильная фильтрация деблокирования;
в противном случае
слабая фильтрация деблокирования;
}
}
}
в противном случае /*низкочастотный шум*/;
слабая фильтрация деблокирования;
)
При объяснении этого алгоритма, предполагая, что блок включает кадр, подлежащий цикл-фильтрации, - это БЛОК_I, блок, смежный БЛОКУ_I, - БЛОК_J, разница между промежуточным текущим БЛОКОМ_I и предшествующим квантованным БЛОКОМ_ I не превышает заданную величину, и разница между промежуточным текущим БЛОКОМ_J и предшествующим квантованным БЛОКОМ_J также не превышает заданную величину, фильтрация деблокирования не выполняется.

Если кадр, который должен быть подвержен цикл-фильтрации, - внутренний кадр, при фильтрации деблокирования для уменьшения артефактов блокирования, когда оба флага помех БЛОКА_I и БЛОКА_J указывают, что снижение низкочастотного шума не является необходимым, и оба ФБГ БЛОКА_I и БЛОКА_J указывают, что уменьшение артефактов блокирования необходимо, выполняется первая фильтрация (сильная фильтрация деблокирования) для изменения заданного числа величин пикселей у горизонтальной границы блока между БЛОКОМ_I и БЛОКОМ_J.

Если оба флага помех БЛОКА_I и БЛОКА_J указывают, что нет необходимости подавления низкочастотного шума и, по меньшей мере, один ФБГ БЛОКА_I и БЛОКА_ J указывает, что уменьшение артефактов блокирования не является необходимым или когда, по меньшей мере, один из флагов помех БЛОКА_I и БЛОКА_J указывает, что снижение низкочастотного шума необходимо, и разница между двумя смежными пикселями у горизонтальной границы блока - меньше, чем показатель квантования Н. 263 (QP), выполняется вторая фильтрация (слабая фильтрация деблокирования) для изменения величины пикселей, число которых меньше, чем при первой фильтрации.

Кроме того, фильтрация пикселей у границы вертикального блока выполняется так же, как и фильтрация пикселей у горизонтальной границы блока, с использованием ФБВ.

Если кадр, который должен быть подвергнут цикл-фильтрации, - промежуточный кадр (кадр Р или РВ), при фильтрации деблокирования для уменьшения артефактов блокирования, когда флаг помех БЛОКА_I указывает, что нет необходимости подавления низкочастотного шума, один из блоков - БЛОК_I и БЛОК_J, является внутренним блоком и оба ФБГ БЛОКА_I и БЛОКА_J указывают на необходимость уменьшения артефактов блокирования, выполняется первая фильтрация для изменения заданного числа величин пикселей у горизонтальной границы блока между БЛОКОМ_I и БЛОКОМ_J.

Если флаг помех БЛОКА_ I указывает, что нет необходимости подавления низкочастотного шума, один из БЛОКА_I и БЛОКА_J является внутренним, любой из ФБГ БЛОКА_I и БЛОКА_J указывает, что нет необходимости уменьшения артефактов блокирования, и разница между двумя смежными пикселями у
горизонтальной границы блока меньше, чем показатель квантования Н.263 (QP), выполняется вторая фильтрация для изменения величин пикселей, чье число меньше, чем при первой фильтрации.

Если флаг помех БЛОКА_I указывает, что нет необходимости подавления низкочастотного шума, ни БЛОК_I, ни БЛОК_J не являются внутренними (ИНТРА), и оба ФБГ БЛОКА_I и БЛОКА_J находятся в состоянии "1", выполняется первая фильтрация.

Когда флаг помех БЛОКА_I указывает, что нет необходимости подавления низкочастотного шума, ни БЛОК_I, ни БЛОК_J не являются внутренними и, по меньшей мере, один из ФБГ БЛОКА_I и БЛОКА_J находится в состоянии "0" и выполняется вторая фильтрация.

Когда флаг помех БЛОКА_I не равен нулю, выполняется вторая фильтрация.

Предполагая, что из шести пикселей на границе горизонтального блока между БЛОКОМ_I и БЛОКОМ_J пиксели A, B, C, D, E и F, в котором пиксели C и D - ближайшие пиксели на границе горизонтального блока, пиксели A и F - пиксели наиболее удаленные от них, а пиксели B и D - средние пиксели, в течение первой фильтрации осуществляется 7-элементная фильтрация с коэффициентами (1,1,1,2,1,1,1) для шести пикселей.

Вторая фильтрация выполняется на пикселях C и D. При этом, если абсолютная величина разницы между пикселями C и D меньше, чем QP Н.263, два пикселя C и D заменяются, как C = C+(D-C)/4 и D=D+(D-C)/4.

Алгоритм фильтрации деблокирования по горизонтали во втором варианте выражается следующим образом:
если (БЛОК_ I == НЕ кодируется && БЛОК_J НЕ кодируется) фильтр деблокирования отсутствует:
если (кадр {внутренний]{
если (ФПО или БЛОК_I == 0) && ФПО БЛОКА_J == 0){/*помехи НЕТ*/
если (ФБГ БЛОКА_I == 1 && ФБГ БЛОКА_J == 1)
сильная фильтрация деблокирования;
в противном случае
слабая фильтрация деблокирования};
}
в противном случае слабая фильтрация деблокирования;
}
если (кадр Р or РВ) {
если (ФПО БЛОКА_I == 0) {/*помехи НЕТ*/
если (БЛОК_J == внутренний||БЛОК_J == внутренний){
если (ФБГ БЛОКА_I ++ 1&&ФБГ БЛОКА_J == 1)
сильная фильтрация деблокирования;
в противном случае
слабая фильтрация деблокирования};
}
в противном случае {
если (ФПО БЛОКА_I==1||ФПО БЛОКА_J==1){
если (ФБГ БЛОКА_I==1&&ФБГ БЛОКА_I==1)
сильная фильтрация деблокирования;
в противном случае
слабая фильтрация деблокирования};
}
}
}
в противном случае /*низкочастотная помеха*/;
слабая фильтрация деблокирования;
)
Поясняя алгоритм, отметим, что, если блок, составляющий кадр, подлежащий цикл-фильтрации, является БЛОКОМ_I, то блок, смежный с БЛОКОМ_I, представляет собой БЛОК_J, разница между текущим БЛОКОМ_I и предшествующим квантованным БЛОКОМ_ I не превышает заданную величину, и разница между текущим БЛОКОМ_J и предшествующим квантованным БЛОКОМ_J не превышает заданную величину, фильтрация деблокирования не выполняется.

Если кадр, подлежащий фильтрации, является внутренним кадром, в процессе фильтрации деблокирования для уменьшения артефактов блокирования, когда флаги ФПО БЛОКА_ I и БЛОКА_J указывают на отсутствие необходимости в снижении низкочастотного шума, и ФБГ БЛОКА_I и БЛОКА_J указывают на необходимость уменьшения артефактов блокирования, выполняется первая фильтрация (сильная фильтрация деблокирования) для изменения заданного числа величин пикселей у горизонтальной границы блока между БЛОКОМ_I и БЛОКОМ_J.

Когда флаги ФПО БЛОКА_I и БЛОКА_J указывают, что нет необходимости подавления низкочастотного шума и, по меньшей мере, один из ФБГ БЛОКА_I и БЛОКА_ J указывает, что уменьшение артефактов блокирования не является необходимым, или, когда, по меньшей мере, один из первых флажков ФПО БЛОКА_I и БЛОКА_J указывает на необходимость подавления низкочастотного шума, и разница между двумя смежными пикселями у горизонтальной границы блока не превышает показатель квантования Н.263 (QP), выполняется вторая фильтрация (слабая фильтрация деблокирования) для изменения величин пикселей, число которых меньше, чем при первой фильтрации.

Кроме того, фильтрация пикселей у вертикальной границы блока выполняется так же, как и для пикселей у горизонтальной границы блока, с использованием ФБВ.

В то же время, если кадр, который должен быть подвержен цикл-фильтрации является промежуточным кадром (кадр Р или РВ), при фильтрации деблокирования для уменьшения артефактов блокирования, когда ФП1 БЛОКА_I указывает, что нет необходимости подавления низкочастотного шума, один из блоков: БЛОК_I и БЛОК_J, является внутренним, и ФБГ обоих блоков - БЛОКА_I и БЛОКА_J - указывают на необходимость уменьшения артефактов блокирования, выполняется первая фильтрация (сильная фильтрация деблокирования) для изменения заданного числа величин пикселей у горизонтальной границы блока между БЛОКОМ_I и БЛОКОМ_J.

Если ФП1 БЛОКА_I указывает, что нет необходимости подавления низкочастотного шума, один из блоков (БЛОК_I и БЛОК_J) является внутренним (ИНТРА), любой из ФБГ БЛОКА_I и БЛОКА_J указывает, что нет необходимости уменьшения артефактов блокирования, и разница между двумя смежными пикселями у горизонтальной границы блока не превышает показатель квантования Н.263 (QP), выполняется вторая фильтрация (слабая фильтрация деблокирования) для изменения величин, число которых меньше, чем при первой фильтрации.

Когда ФП1 БЛОКА 1 указывает, что нет необходимости подавления низкочастотного шума, ни БЛОК_I, ни БЛОК_J не является внутренним (ИНТРА), один из флагов ФПО БЛОКА_I и БЛОКА_J находится в состоянии "1" и ФБГ обоих блоков: БЛОКА_ I и БЛОКА_J находятся в состоянии "1", выполняется первая фильтрация (сильная фильтрация деблокирования).

Когда ФП1 БЛОКА_I указывает, что нет необходимости подавления низкочастотного шума, ни БЛОК_I, ни БЛОК_J не являются внутренними, один из первых флагов ФП БЛОКА_I и БЛОКА_J находится в состоянии "1", и, по меньшей мере, один из ФБГ БЛОКА_I и БЛОКА_J находится в состоянии "0", выполняется вторая фильтрация (слабая фильтрация деблокирования).

Если ФП1 БЛОКА_ I не равен нулю, выполняется вторая фильтрация (слабая фильтрация деблокирования).

Кроме того, фильтрация пикселей у вертикальной границы блока выполняется так же, как и для пикселей у горизонтальной границы блока, с использованием ФБГ.

Кроме того, первая и вторая фильтрация выполняются так же, как и в первом варианте.

2.2. Компенсатор углового выброса
Компенсация углового выброса выполняется только для внутреннего кадра. Угловой выброс характеризуется наличием пикселя, который или значительно больше или значительно меньше соседних пикселей в угловой точке блока 8х8, как показано на фиг. 6A-6C. На фиг. 6A, на которой темно-серая область распределена по четырем блокам и один или два пикселя темно-серой области расположены в угловых точках соседних блоков, при этом угловые точки могут искажаться квантованием коэффициентов ДКП, как показано на фиг. 6B. Такое искажение угловых точек называется угловым выбросом. Угловой выброс не может быть удален фильтрами деблокирования и фильтрами нижних частот. Для снижения углового выброса такой выброс должен быть обнаружен и соответствующим образом компенсирован. На фиг. 6C показана простая координация его обнаружения, где A, B, C и D - величины пикселей угловых точек блока пикселей 8х8.

Алгоритм для обнаружения углового выброса выражается следующим образом:
величина [0] = A; величина [1] = B;
величина [2] = C; величина [3] = D;
Среднее = (A+B+C+D+2)/4
Счет = 0;
для (m=0; m < 4; m++),
если (|величина [m] - Среднее|) > QP)
Счет ++; /*число точек-кандидатов*/,
где QP - показатель квантования Н.263, "Счет" - переменная для хранения числа возможных пикселей углового выброса. Предполагается, что A1 и A2 - пиксели, смежные пикселю A, а A3 -пиксель, расположенный по диагонали по отношению к пикселю A в том же блоке пикселей A. Если счет - нуль, угловые выбросы отсутствуют. Если A - единственная возможная точка на фиг. 6C и |A-A3| не превышает 3QP12, компенсация углового выброса выполняется для A, A1 и A2 следующим образом. Допустим, что величины компенсации для A, A1 и A2 - A', A'1 и A'2, соответственно, A, A'1, и A'2 определяются уравнением (1).

A' = (4A+B+C+2D+4)/8
A'1 = (A'+2А1+2)/4 (1)
A'2 = (A'+3A2+2)/4
Если имеется больше двух кандидатов, выбирается кандидат, который имеет самое большое отличие от (A3+B3+C3+D3+2)/4, и компенсация углового выброса выполняется в этой точке, как это имеет место в случае только одного кандидата. Здесь B3, С3 и D3 обозначают пиксели, диагональные по отношению к пикселям A, B, C соответственно.

2.3. Фильтр для подавления помех (низкочастотного шума)
Как и в первом варианте реализации, перед применением фильтрации для подавления низкочастотного шума, исследуется флаг помех. Если флаг помех текущего блока находится в состоянии "1", текущий блок фильтруется для подавления низкочастотного шума. С целью предохранения деталей изображения от искажений при фильтрации, перед этой операцией выполняется простое обнаружение края изображения. Как показано на фиг. 7A и 7B, обнаружение края и двухмерная адаптивная фильтрация сигнала применяются к блоку 8х8, имеющему флаг помех, не равный нулю. Дело в том, что граничные пиксели сглаживаются фильтром деблокирования.

Как и во втором варианте, до применения фильтрации для каждого блока, анализируются флаги помех, то есть ФПО и ФП1. Алгоритм для выяснения необходимости выполнения фильтрации для подавления низкочастотного шума выражается следующим образом.

Если (БЛОК_I == НЕ кодирован) фильтрация для подавления низкочастотного шума не используется;
если (кадр ВНУТРЕННИЙ){
если (ФПО БЛОКА_I == 1) осуществляется фильтрация для подавления низкочастотного шума
в противном случае фильтрация не используется;
}
если (кадр Р или_РВ){
если (БЛОК_ I == БЛОК_ ВНУТРЕННИЙ) осуществляется фильтрация для подавления низкочастотного шума;
в противном случае {
если (БЛОК_ I == БЛОК_ ПРОМЕЖУТОЧНЫЙ) осуществляется фильтрация для подавления низкочастотного шума;
в противном случае без фильтрации
}
}
}
Поясняя вышеописанный алгоритм, отметим, что, если разница между текущим БЛОКОМ_ I и предшествующим квантованным БЛОКОМ_I не превышает заданную величину, и разница между текущим БЛОКОМ_ J и предшествующим квантованным БЛОКОМ_ J не превращает заданную величину, фильтрация для подавления низкочастотного шума не выполняется.

В случае внутреннего кадра, прежде всего, определяется - требует ли флаг помех БЛОКА_I фильтрации для подавления низкочастотного шума. Фильтрация для подавления низкочастотного шума выполняется, если такая фильтрация требуется; в противном случае, фильтрация для подавления низкочастотного шума не выполняется.

В случае промежуточного кадра, решение о выполнении фильтрации для подавления низкочастотного шума принимается следующим образом. Если БЛОК_I - внутренний блок, фильтрация для подавления низкочастотного шума выполняется. Если БЛОК_ I не является внутренним кадром и находится в режиме прогнозирования блока 8х8, то выполняется фильтрация для подавления низкочастотного шума. Если БЛОК_ I не является внутренним блоком и не находится в режиме прогнозирования блока 8х8, а флаг ФП1 БЛОКА_I указывает на необходимость фильтрации низкочастотного шума, эта фильтрация выполняется. Если флаг ФП1 БЛОКА_I указывает на отсутствие необходимости фильтрации низкочастотного шума, такая фильтрация не выполняется.

Фильтрация для подавления низкочастотного шума включает обнаружение края изображения и двумерную адаптивную фильтрацию сигнала. Для предотвращения искажения деталей изображения при фильтрации перед этой операцией выполняется простое обнаружение края. Обнаружение края и двухмерная адаптивная фильтрация сигнала применяются для блока 8х8, если удовлетворяется вышеуказанное условие, подавления низкочастотного шума, как показано на фиг. 7A и 7B.

Ниже описывается процедура обнаружения края изображения в первом и втором вариантах фильтрации для подавления низкочастотного шума. Операторы одномерного горизонтального и вертикального градиента применяются к восстановленным блокам, чтобы очистить края изображения. Пороговое значение для принятия решения по краям изображения выбирается из показателя квантования Н. 263 QP. Для того чтобы применить двухмерную адаптивную фильтрацию сигнала к пикселям 8х8, необходимо получить информацию о краях изображения для блока 10х10, который является текущим блоком, как показано на фиг. 7B. При обнаружении горизонтального края, при условии, что пиксель [m, n] - текущий пиксель, пиксель [m] [n+1] располагается вправо от пикселя [m, n], пиксель [m] [n-1] располагается слева от пикселя [m, n], разница между пикселем [m][n] и пикселем [m] [n+1] составляет A1, разница между пикселем [m][n] и пикселем [m][n-1] составляет A2; QP - показатель квантования Н.263, когда удовлетворяется условие ((A1>QP) и (A2>QP)), или (A1>2QP) или (A2>2QP), текущий пиксель обнаруживается, как краевой пиксель и отображение края, край [m][n], становится равным "1". При обнаружении вертикального края, при условии, что текущий пиксель является пикселем [m, n], пиксель [m+1][n] расположен выше пикселей [m, n] , пиксель [m-1][n] расположен ниже пикселя [m, n]; разница между пикселем [m][n] и пикселем [m+1][n] = A'1, разница между пикселем [m] [n] и пикселем [m-1][n] = A'2, при этом QP - показатель квантования Н.263, когда удовлетворяется условие ((A'1>QP) и (A'2>QP)), или (A'1>2QP), или (A'2>2QP), текущий пиксель обнаруживается, как краевой пиксель, и отображение края край [m][n], становится равным "1".

Краевой контур край [m][n] получается из величин пикселей [m][n] в соответствии со следующим алгоритмом.

/*Обнаружение горизонтального края*/
A1 = |пиксель [m][n]-пиксель [m][n+1]|;
A2 = |пиксель [m][n]-пиксель [m][n-1]|;
если (((A1>QP) и (A2>QP)) или (A1>2QP) или (A2>2QP))
Край [m][n] = 1;
в противном случае {/*Обнаружение вертикального края*/
A1 = |пиксель [m][n]-пиксель [m+1][n]|
A2 = |пиксель [m][n]-пиксель [m-1][n]|;
если (((A1>QP) и (A2>QP)) или (A1>2QP) или (A2>2QP))
Край[m][n] = 1;
Ниже описывается фильтрация для подавления низкочастотного шума с использованием двухмерного адаптивного фильтра нижних частот. Фильтрация для сглаживания шума предполагает подавление помехи без заметной потери деталей изображения. Фильтрация для подавления низкочастотного шума в соответствии с настоящим изобретением представляет собой простую операцию свертки, в которой весовые коэффициенты для свертки изменяются в соответствии с краевым изображением. Адаптивная фильтрация сигнала применяется к декодированному блоку с использованием контура изображения [m] [n]. Ядро для двухмерной адаптивной фильтрации сигнала показано на фиг. 7A. Когда центральная точка A окна фильтра на фиг. 7B находится на краю пикселя, операция двухмерной фильтрации не выполняется (Пример 1 на фиг. 7B). Если никакая точка края изображения не включена в 4-контурное окно фильтра, осуществляется фильтрация нижних частот (Пример 2 на фиг. 7B). Если некоторые краевые точки, не расположенные в центральной точке, находятся в 4-элементном окне фильтра, выполняется взвешенная фильтрация, чтобы исключить краевые пиксели (Пример 3 на фиг. 7B). Весовые коэффициенты определяются, принимая во внимание сложность вычислений, так что адаптивная фильтрация сигнала может выполняться простым сдвигом с дополнительными операциями, как показано в Таблице
3. Заполнение флагов блокировки
Заполнение флагов блокировки выполняется во втором варианте. В случае QCIP, Bf_ Y (флаги блокировки для Y) состоят из матрицы 22х18 и оба флага: Bf_ Cb (флаг блокировки для Cb) и Bf_Cr (флаг блокировки для Cr), состоят из матрицы 11х9, причем каждый элемент содержит информацию о шуме каждого блока. Тем не менее, при использовании режима неограниченного вектора движения, векторы перемещения могут быть в точке за пределами изображения. Следовательно, осуществляется заполнение Bf_Y, Bf_Cb и Cr_Bf для покрытия векторов движения за пределами изображения. В случае Bf_Y верхние/нижние элементы столбца Bf_Y скопированы вертикально, чтобы расширить Bf_Y, и выполняется горизонтальное повторное заполнение в элементах левого/правого столбца Bf_Y после повторного вертикального заполнения. Наконец, предполагая, что оригинал размера Bf_ Y представляет собой VxN, результирующий размер может быть представлен как (M+8)(N+8). Аналогично, если исходный размер BfCb и Cr_ M/2N/2, результирующие размеры становятся равными (M/2+4)(N/2+4). На фиг. 8 показан результат заполнения Bf_Y. Заполнение может быть выполнено, используя различные способы. Например, заполнение может выполняться копией блокировочного флага опорного кадра. При вводе нового кадра, который должен быть подвергнут цикл-фильтрации, заполнение выполняется только один раз. Затем получаются флаги блокировки соответствующего макроблока, используя заполненные флаги блокировки.

Изобретение может быть использовано в цифровых вычислительных машинах общего назначения, которые выполняют программу обычной компьютерной среды, включая, без каких-либо ограничений, носитель памяти, например магнитный носитель (в частности, ПЗУ, флоппи-диски, жесткие диски и т.д.), оптически считываемый носитель (CD-ПЗУ, DVD и т.д.) и несущие волны (например, передача в сети "Интернет"). Следовательно, настоящее изобретение может быть реализовано в компьютерной среде с использованием средства считывания кода программы для цикл-фильтрации и снижения эффекта квантования при кодировании и декодировании данных изображения, при этом средство считывания кода программы в компьютерной среде содержит компьютерное средство считывания кода программы для выделения флага, указывающего, требуют ли данные изображения использования цикл-фильтрации с использованием распределения КОП инверсно квантованных данных изображения, и вектор перемещения, указывающий на разницу между предшествующим кадром и текущим кадром, и компьютерное средство считывания кода программы для осуществления фильтрации изображения, соответственно флагу предварительно определенным способом, если выделенный флаг указывает на необходимость цикл-фильтрации данных.

Функциональная программа, код и кодовые сегменты, использованные для реализации настоящего изобретения, могут быть разработаны квалифицированным программистом на основе приведенного выше описания изобретения.

При восстановлении данных изображения с высокой степенью сжатия возникает неблагоприятный эффект квантования, например артефакты блокирования, угловые выбросы и низкочастотные шумы переходных процессов. Способ цикл-фильтрации согласно настоящему изобретению уменьшает шумы квантования, благодаря использованию флагов и адаптивного фильтра. Флаги блокировки и флаги помех каждого блока помогают уменьшить объем вычислений при цикл-фильтрации. Для выделения флагов блокировки и флагов помех текущего блока используется вектор перемещения промежуточного кадра.

При видеокодировании для облегчения получения высококачественного изображения, используя аппаратные средства и программное обеспечение в соответствии с настоящим изобретением, нужно учитывать сложность вычислений и отношение сигнал-шум. Способ согласно настоящему изобретению может выполняться параллельной обработкой без умножения и деления, уменьшая тем самым сложность аппаратных средств.

Цикл-фильтрация согласно настоящему изобретению может существенно улучшить субъективное качество, сохраняя все детали изображения, так что цикл-фильтрация может найти самое широкое применение.


Формула изобретения

1. Способ цикл-фильтрации для уменьшения эффекта квантования, возникающего при кодировании и декодировании данных изображения, отличающийся тем, что выделяют флаг, указывающий, требуют ли данные изображения цикл-фильтрации с использованием распределения коэффициентов обратного преобразования (ДКП) обратно преобразованных данных изображения и вектора перемещения, указывающего на разницу между предшествующим кадром и текущим кадром, и если упомянутый флаг указывает на необходимость выполнения цикл-фильтрации, то фильтруют соответствующие флагу данные изображения предварительно определенным способом, обеспечивающим выделение из потока битов флага помех и флага блокировки.

2. Способ по п.1, отличающийся тем, что упомянутый флаг выделяют из области дискретного косинусного преобразователя (ДКП) каждого блока, если кадр изображения, подлежащего цикл-фильтрации, представляет собой внутренний кадр, и выделяют из остаточного сигнала и опорного кадра, если кадр изображения, подлежащего цикл-фильтрации, представляет собой промежуточный кадр.

3. Способ по п.2, отличающийся тем, что упомянутый флаг содержит флаг блокировки, указывающий, требуется ли уменьшение артефактов блокирования у границ блока, и флаг помех, указывающий, требуется ли снижение низкочастотного шума у краев изображения.

4. Способ по п.3, отличающийся тем, что в случае, когда данные изображения представляют собой внутренний кадр, флаг блокировки внутреннего кадра содержит флаг блокировки по горизонтали (ФБГ) и флаг блокировки по вертикали (ФБВ), при этом выделение ФБГ и ФБВ внутреннего кадра включает: определение коэффициентов ДКП обратно преобразованного блока 8 х 8, после того как сжатые данные изображения были подвергнуты обратному преобразованию, при условии, что пиксель A, соответствующий коэффициенту постоянной составляющей, расположен в верхнем дальнем левом углу блока 8 х 8, состоящего из 64 пикселей, пиксель B расположен справа от пикселя A и пиксель C расположен ниже пикселя A, установку ФБГ и ФБВ в состояние "1", указывая на необходимость выполнения цикл-фильтрации, если только коэффициенты в пикселях не равны нулю, установку ФБВ в состояние "1", указывая на необходимость выполнения цикл-фильтрации, если только верхний ряд обратно преобразованного блока 8 х 8 не равен нулю, и установку ФБГ в состояние "1" указывая на необходимость выполнения цикл-фильтрации, если только дальний левый столбец обратно преобразованного блока 8 х 8 не равен нулю.

5. Способ по п.3, отличающийся тем, что при выделении флага помех (ФП) из внутреннего кадра, при условии, что пиксель A, соответствующий коэффициенту постоянной составляющей, расположен вверху, в дальнем левом углу блока 8 х 8, состоящего из 64 пикселей, пиксель B расположен справа от пикселя A, а пиксель С расположен ниже пикселя A, ФП устанавливают в состояние "1", указывая на необходимость выполнения цикл-фильтрации, когда любой пиксель, кроме пикселей A, B и C обратно преобразованного блока данных 8 х 8, имеет коэффициент, не равный нулю.

6. Способ по п.3, отличающийся тем, что флаг блокировки текущего промежуточного кадра содержит ФБГ и ФБВ, при этом при условии, что опорный кадр содержит предварительно определенное число опорных блоков, блок опорного кадра, прогнозируемый вектором перемещения (MVx, MVy) блока Ac текущего промежуточного кадра, является блоком перемещения X, причем выделение ФБГ и ФБВ в блоке Ac текущего промежуточного кадра включает этапы анализа степени перекрытия между блоком перемещения X и опорными блоками, побитовой логической операции "И" с флагами ФБГ и ФБВ опорных блоков, имеющих предварительно определенное количество перекрытых пикселей, и установки результата побитовой логической операции "И", в виде ФБГ и ФБВ блока Ac текущей плоскости видео-объекта (ПВО).

7. Способ по п.6, отличающийся тем, что выделение ФБГ и ФБВ в блоке Ac текущего промежуточного кадра дополнительно содержит этап установки флага блокировки опорного макроблока в качестве флага блокировки текущего макроблока, если вектор перемещения текущего макроблока является пропущенным макроблоком, имеющим нулевой вектор перемещения.

8. Способ по п.7, отличающийся тем, что выделение ФБГ и ФБВ в блоке Ac текущего промежуточного кадра дополнительно включает заполнение флага блокировки после дублирования флага блокировки.

9. Способ по п.6, отличающийся тем, что предварительно определенное число перекрытых пикселей составляет 2 х 2 пикселей.

10. Способ по п. 8, отличающийся тем, что предварительно определенное число перекрытых пикселей составляет 1 х 1 пикселей.

11. Способ по п.3, отличающийся тем, что выделение флага помех в блоке Ac текущего промежуточного кадра, в случае, если кадр изображения является промежуточным кадром, включает этапы: установки флага помех текущего блока Ac в состояние "1", если любая переменная составляющая коэффициентов обратного преобразования (КОП) остаточного сигнала промежуточных блоков 8 х 8 не равна нулю, и установки флага помех "0", если все переменные составляющие КОП являются нулем, и установка ФП в состояние "1", если текущий блок находится в режиме прогнозирования блока 8 х 8 для передачи вектора перемещения на макроблок.

12. Способ по п.3, отличающийся тем, что, в случае, если данные изображения представляют собой промежуточный кадр, флаг помех промежуточного кадра содержит первый флаг помех (ФПО) и второй флаг помех (ФП1), причем выделение первого и второго флагов помех ФПО и ФП1 в блоке Ac текущего промежуточного кадра включает этапы: установки первого флага помех ФПО текущего блока Ac в состояние "1", если постоянные составляющие коэффициентов обратного преобразования (КОП) остаточного сигнала промежуточных макроблоков 8 х 8 не равны нулю, в противном случае, установки ФПО текущего блока Ac в "0", и установки второго флага помех ФП1 текущего блока в состояние "1", если любая переменная составляющая КОП остаточного сигнала промежуточных кадров 8 х 8 не равна нулю; в противном случае, установки ФП1 текущего блока Ac в "0".

13. Способ по п.3, отличающийся тем, что при условии, что предварительно определенный блок, составляющий кадр, подлежащий цикл-фильтрации, представляет собой блок I, а блок, смежный блоку I, представляет собой блок J, разница между текущим блоком I и квантованным предшествующим блоком I не превышает предварительно определенную величину и разница между текущим блоком J и квантованным предшествующим блоком J не превышает предварительно определенную величину, фильтрацию деблокирования на стадии фильтрации не выполняют.

14. Способ по п.4, отличающийся тем, что при условии, что предварительно определенный блок, составляющий кадр, подлежащий цикл-фильтрации, представляет собой блок I и блок, смежный блоку I, представляет собой блок J, выполняют фильтрацию деблокирования для уменьшения артефактов блокирования, которая включает этапы: выполнения первой фильтрации для изменения предварительно определенного числа величин пикселей у горизонтальной границы блока между блоками I и J, если флаги помех блоков I и J указывают на отсутствие необходимости подавления низкочастотного шума, и оба ФБГ флага блоков I и J указывают на необходимость уменьшения артефактов блокирования, и сравнения разницы между двумя смежными пикселями по границе блока с показателем квантования QP стандарта H.263, если оба флага помех блоков I и J указывают на отсутствие необходимости подавления низкочастотного шума и, по меньшей мере, один из ФБГ блоков I и J указывает на отсутствие необходимости уменьшения артефактов блокирования, или если, по меньшей мере, один из флагов помех блоков I и J указывает на необходимость подавления низкочастотного шума, и изменения предварительно определенного числа величин пикселей, которое меньше этого числа для первой фильтрации, если разница между двумя пикселями меньше показателя квантования QP.

15. Способ по п.5, отличающийся тем, что при условии, что предварительно определенный блок, составляющий кадр, подлежащий цикл-фильтрации, представляет собой блок I, и блок, смежный блоку I, представляет собой блок J, выполняют фильтрацию для уменьшения артефактов блокирования, включающую этапы: выполнения первой фильтрации для изменения предварительно определенного числа величин пикселей у горизонтальной границы блока между блоками I и J, если флаги помех блоков I и J указывают на отсутствие необходимости подавления низкочастотного шума, и оба ФБГ флага блоков I и J указывают на необходимость уменьшения артефактов блокирования, и сравнения разницы между двумя смежными пикселями по границе блока с показателем квантования QP стандарта H. 263, если оба флага помех блоков I и J указывают на отсутствие необходимости подавления низкочастотного шума, и по меньшей мере, один из ФБГ блоков I и J указывает на отсутствие необходимости уменьшения артефактов блокирования или если, по меньшей мере, один из флагов помех блоков I и J указывает на необходимость подавления низкочастотного шума, и изменения предварительно определенного числа величин пикселей, которое меньше этого числа для первой фильтрации, если разница между двумя пикселями меньше показателя квантования QP.

16. Способ по п.6, отличающийся тем, что при условии, что предварительно определенный блок, составляющий кадр, подлежащий цикл-фильтрации, представляет собой блок I, и блок, смежный блоку I, представляет собой блок J, выполняют фильтрацию деблокирования для уменьшения артефактов блокирования, включающую этапы: выполнения первой фильтрации для изменения предварительно определенного числа величин пикселей у границы блока между блоками I и J, если флаг помех блока I указывает на отсутствие необходимости подавления низкочастотного шума и оба блока I и J являются внутренними блоками, и сравнения разницы между двумя смежными пикселями по границе блока с показателем квантования QP стандарта H.263, если флаг помех блока I указывает на отсутствие необходимости снижения низкочастотного шума и, по меньшей мере, один из ФБГ блоков I и J указывает на отсутствие необходимости уменьшения артефактов блокирования, и выполнения второй фильтрации для изменения предварительно определенного числа величин пикселей, которое меньше этого числа для первой фильтрации, если разница между двумя пикселями меньше показателя квантования QP, выполнения первой фильтрации, если флаг помех блока I указывает на отсутствие необходимости снижения низкочастотного шума, при этом ни блок I, ни блок J не являются внутренними блоками, присутствует постоянная составляющая коэффициента обратного преобразования (КОП) остаточного сигнала блока I и J, и оба ФБГ блоков I и J представляют собой "1"; выполнения второй фильтрации, если флаг помех блока I указывает на отсутствие необходимости снижения низкочастотного шума, при этом ни блок I, ни блок J не являются внутренними блоками, присутствует постоянная составляющая коэффициента обратного преобразования (КОП) остаточного сигнала блока I или J и, по меньшей мере, один ФБГ блоков I и J равен нулю, и выполнения второй фильтрации, если флаг помех блока I указывает на необходимость снижения низкочастотного шума.

17. Способ по п.11, отличающийся тем, что при условии, что предварительно определенный блок, составляющий кадр, подлежащий цикл-фильтрации, представляет собой блок I, и блок, смежный блоку I, представляет собой блок J, выполняют фильтрацию деблокирования для уменьшения артефактов блокирования, включающую этапы: выполнения первой фильтрации для изменения предварительно определенного числа величин пикселей у границы блока между блоками I и J, если флаг помех блока I указывает на отсутствие необходимости снижения низкочастотного шума, и оба блока I и J являются внутренними блоками, и сравнения разницы между двумя смежными пикселями по границе блока с показателем квантования QP стандарта H.263, если флаг помех блока I указывает на отсутствие необходимости снижения низкочастотного шума и , по меньшей мере, один из ФБГ блоков I и J указывает на отсутствие необходимости уменьшения, артефактов блокирования, и выполнения второй фильтрации для изменения предварительно определенного числа величин пикселей, которое меньше этого числа для первой фильтрации, если разница между двумя пикселями меньше показателя квантования QP, выполнения первой фильтрации, если флаг помех блока I указывает на отсутствие необходимости снижения низкочастотного шума, ни блок I, ни блок J не являются внутренними блоками, присутствует постоянная составляющая коэффициента обратного преобразования (КОП) остаточного сигнала блока I и J, и оба ФБГ блоков I и J равны "1"; выполнения второй фильтрации, если флаг помех блока I указывает на отсутствие необходимости снижения низкочастотного шума, ни блок I, ни блок J не являются внутренними блоками, присутствует постоянная составляющая коэффициента обратного преобразования (КОП) остаточного сигнала блока I или J и, по меньшей мере, один ФБГ блоков I и J равен нулю, и выполнения второй фильтрации, если флаг помех блока I указывает на необходимость снижения низкочастотного шума.

18. Способ по п.7, отличающийся тем, что при условии, что предварительно определенный блок, составляющий кадр, подлежащий цикл-фильтрации, представляет собой блок I и блок, смежный блоку I, представляет собой блок J, выполняют фильтрацию деблокирования для уменьшения артефактов блокирования, включающую этапы: выполнения первой фильтрации для изменения предварительно определенного числа величин пикселей у границы блока между блоками I и J, если второй флаг помех ФП1 блока I указывает на отсутствие необходимости снижения низкочастотного шума, при этом блок I или блок J является внутренним блоком и оба ФБГ блоков I и J указывают на необходимость уменьшения артефактов блокирования, сравнения разницы между двумя смежными пикселями по границе блока с показателем квантования QP стандарта H.263, если ФП1 блока I указывает на отсутствие необходимости снижения низкочастотного шума, при этом блок I и J является внутренним блоком, и, по меньшей мере, один из ФБГ блоков I и J указывает на отсутствие необходимости уменьшения артефактов блокирования, и выполнения второй фильтрации для изменения предварительно определенного числа величин пикселей, которое меньше этого числа для первой фильтрации, если разница между двумя пикселями меньше показателя квантования QP, выполнения первой фильтрации, если флаг ФП1 блока I указывает на отсутствие необходимости снижения низкочастотного шума, ни блок I, ни блок J не являются внутренними блоками и, по меньшей мере, один из флагов ФПО блоков I и J равен "1", и оба ФБГ блоков I и J равны "1", выполнения второй фильтрации, если флаг ФП1 блока I указывает на отсутствие необходимости снижения низкочастотного шума, ни блок I, ни блок J не являются внутренними блоками, по меньшей мере, один из флагов ФПО является внутренним блоком, по меньшей мере, один из флагов ФПО блоков J и P, равен "1", и по меньшей мере, один из ФБГ блоков I и J не равен "1", и выполнения второй фильтрации, если флаг ФП1 блока I не равен нулю.

19. Способ по п.12, отличающийся тем, что при условии, что предварительно определенный блок, составляющий кадр, подлежащий цикл-фильтрации, представляет собой блок I и блок, смежный блоку I, представляет собой блок J, выполняют фильтрацию деблокирования для уменьшения артефактов блокирования, включающую этапы: выполнения первой фильтрации для изменения предварительно определенного числа величин пикселей у границы блока между блоками I и J, если второй флаг помех ФП 1 блока I указывает на отсутствие необходимости снижения низкочастотного шума, блок I или блок J является внутренним блоком и оба ФБГ блоков I и J указывают на необходимость уменьшения артефактов блокирования, сравнения разницы между двумя смежными пикселями у границы блока с показателем квантования QP стандарта H.263, если ФП1 блока I указывает на отсутствие необходимости снижения низкочастотного шума, блок I или блок J является внутренним блоком, и, по меньшей мере, один из ФБГ блоков I и J указывает на отсутствие необходимости уменьшения артефактов блокирования и выполнения второй фильтрации для изменения предварительно определенного числа величин пикселей, которое меньше этого числа для первой фильтрации, если разница между двумя пикселями меньше показателя квантования QP, выполнения первой фильтрации, если флаг ФП1 блока I указывает на отсутствие необходимости снижения низкочастотного шума, ни блок I ни блок J не являются внутренними блоками и, по меньшей мере, один из флагов ФПО блоков I и J равен "1", и оба ФБГ блоков I и J равны "1", выполнения второй фильтрации, если флаг ФП1 блока I указывает на отсутствие необходимости снижения низкочастотного шума, ни блок I ни блок J не являются внутренними блоками, по меньшей мере, один из флагов ФПО блоков I и J равен "1" и, по меньшей мере, один из ФБГ блоков I и J не равен "1", и выполнения второй фильтрации, если флаг ФП1 блока I не равен нулю.

20. Способ по п.19, отличающийся тем, что при условии, что шесть пикселей на горизонтальной блочной границе между блоками I и J являются пикселями A, B, C, D, E и F, причем пиксели C и D - ближайшие пиксели на горизонтальной границе блока, пиксели A и F - пиксели, наиболее удаленные от него, и пиксели B и E - средние пиксели, выполняют 7 - элементную фильтрацию нижних частот с коэффициентом (1,1,1,2,1,1,1) для шести пикселей в процессе указанной первой фильтрации, вторую фильтрацию выполняют на пикселях C и D; при которой два пикселя C и D заменяют выражениями C=C+(D-C)/4 и D=D+(D-C)/4, если абсолютная величина разницы между пикселями C и D меньше показателя квантования QP стандарта H.263.

21. Способ по п.3, отличающийся тем, что фильтрацию для снижения низкочастотного шума на стадии фильтрации выполняют, если флаг помех указывает на необходимость фильтрации для снижения помех, и не выполняют, если флаг помех указывает на отсутствие необходимости фильтрации для снижения помех, причем фильтрация для снижения низкочастотного шума включает этапы: (a) обнаружения горизонтальных и вертикальных краев данных изображения и (b) выполнения двумерной адаптивной фильтрации сигнала для блока 8 х 8, в котором необходимо снизить низкочастотный шум, при этом на этапе (a) для обнаружения края по горизонтали при условии, что пиксель [m,n] - текущий пиксель, пиксель [m][n+1] расположен справа от пикселя [m,n], пиксель [m][n-1] расположен слева от пикселя [m,n], разница между пикселем [m][n] и пикселем [m] [n+1] составляет A1, разница между пикселем [m][n] и пикселем [m][n-1] составляет A1 и QP - показатель квантования стандарта H.263, когда удовлетворяется условие ((A1 > QP) и (A1 > QP)) или (A1 > 2QP) или (A2 > 2QP), текущий пиксель обнаруживают как краевой пиксель, и отображение края, край [m][n] , становится равным "1", и на этапе (a) для обнаружения края по вертикали, при условии, что текущий пиксель является пикселем [m,n], пиксель [m+1][n] расположен выше пикселя [m,n], более близким пикселем является [m-1][n], разница между пикселем [m][n] и пикселем [m+1][n] составляет A'1, разница между пикселем [m] [n] и пикселем [m-1][n] составляет A'2 и QP - показатель квантования стандарта H. 263, когда удовлетворяется условие ((A'1 > QP) и (A'2 > QP)) или (A'1 > 2QP) или (A'2 > 2QP), текущий пиксель обнаруживают как краевой пиксель, и отображение края, край [m][n], становится равным "1", причем на этапе (b) для адаптивной фильтрации сигнала 4-элементное окно фильтра применяют к блоку 8 х 8, чтобы определить, является ли центральный пиксель окна фильтра краевым пикселем, при этом фильтрацию выполняют, если центральный пиксель является краевым пикселем, в противном случае выполняют взвешенную фильтрацию.

22. Способ по п.3, отличающийся тем, что при условии, что предварительно определенный блок, составляющий кадр, подлежащий цикл-фильтрации, представляет собой блок I, и блок, смежный блоку I, представляет собой блок J, фильтрацию для снижения низкочастотного шума на этапе фильтрации не выполняют, если разница между текущим блоком I и предшествующим квантованным блоком I не больше предварительно определенной величины, и разница между текущим блоком J и предшествующим квантованным блоком J не больше предварительно определенной величины.

23. Способ по п.5, отличающийся тем, что при условии, что предварительно определенный блок, составляющий кадр, подлежащий цикл-фильтрации, представляет собой блок I, и блок, смежный блоку I, представляет собой блок J, фильтрацию для снижения низкочастотного шума на стадии фильтрации выполняют, если флаг помех блока I указывает на необходимость выполнения цикл-фильтрации на этапе фильтрации, в противном случае фильтрацию для снижения низкочастотного шума не выполняют.

24. Способ по п.12, отличающийся тем, что фильтрацию для снижения низкочастотного шума выполняют, если блок I является внутренним блоком, если блок I не является внутренним блоком и находится в режиме прогноза 8 х 8, и если блок I не является внутренним блоком и не находится в режиме прогноза 8 х 8 и флаг ФП1 блока I указывает на отсутствие необходимости в фильтрации для снижения низкочастотного шума, указанную фильтрацию не выполняют, если флаг ФП1 блока I указывает на отсутствие необходимости в фильтрации для снижения низкочастотного шума.

25. Способ по п.22, отличающийся тем, что фильтрация для снижения низкочастотного шума включает этапы: (a) обнаружения горизонтальных и вертикальных краев данных изображения и (b) выполнения двумерной адаптивной фильтрации сигнала для блока 8 х 8, из которого должен быть удален низкочастотный шум, при этом на этапе (a) для обнаружения горизонтального края, при условии, что пиксель [m,n] - текущий пиксель, пиксель [m][n+1] расположен справа от пикселя [m,n], пиксель [m][n-1] расположен слева от пикселя [m,n], разница между пикселем [m][n] и пикселем [m][n+1] составляет A1, разница между пикселем [m] [n] и пикселем [m][n-1] составляет A2 и QP - показатель квантования стандарта H. 263, когда удовлетворяется условие ((A1 > QP) и (A2 > QP)) или (A1 > 2QP) или (A2 > 2QP), текущий пиксель обнаруживают как краевой пиксель, и отображение края, край [m][n], становится равным "1", и на этапе (a) для обнаружения вертикального края, при условии, что текущий пиксель является пикселем [m,n], пиксель [m+1][n] расположен выше пикселя [m,n], пиксель [m-1][n] расположен ниже пикселя [m,n], разница между пикселем [m][n] и пикселем [m+1][n] составляет A'1, разница между пикселем [m][n] и пикселем [m-1][n] составляет A'2 и QP - показатель квантования стандарта H.263, когда удовлетворяется условие (((A1 > QP) и (A2 > QP) или (A1 > 2QP), или (A2 > 2QP), текущий пиксель обнаруживают, как краевой пиксель, и отображение края, край [m][n], становится равным "1", и на этапе (b) для адаптивной фильтрации сигнала 4-элементное окно фильтра применяют к блоку 8 х 8, чтобы определить, является ли центральный пиксель окна фильтра краевым пикселем, и фильтрацию выполняют, если центральный пиксель является краевым пикселем, в противном случае выполняют взвешенную фильтрацию.

26. Способ по п.23, отличающийся тем, что фильтрация для снижения низкочастотного шума включает этапы: (a) обнаружения горизонтальных и вертикальных краев данных изображения и (b) выполнения двумерной адаптивной фильтрации в блоке 8 х 8, из которого должен быть удален низкочастотный шум, при этом на этапе (a) для обнаружения горизонтального края, при условии, что пиксель [m, n] - текущий пиксель, пиксель [m][n+1] расположен справа от пикселя [m, n], пиксель [m][n-1] расположен слева от пикселя [m,n], разница между пикселем [m] [n] и пикселем [m][n+1] составляет A1, разница между пикселем [m] [n] и пикселем [m][n-1] составляет A2 и QP - показатель квантования стандарта H. 263, когда удовлетворяется условие ((A1 > QP) и (A2 > QP)) или (A1 > 2QP) или (A2 > 2QP), текущий пиксель обнаруживают как краевой пиксель, и отображение края, край [m][n], становится равным "1", и на этапе (a) для обнаружения вертикального края, при условии, что текущий пиксель является пикселем [m,n], пиксель [m+1][n] расположен выше пикселя [m,n], пиксель [m-1][n] расположен ниже пикселя [m,n], разница между пикселем [m][n] и пикселем [m+1][n] составляет A'1, разница между пикселем [m][n] и пикселем [m-1][n] составляет A'2 и QP - показатель квантования стандарта H.263, удовлетворяется условие ((A'1 > QP) и (A'2 > QP)) или (A'1 > 2QP) или (A'2 > 2QP), текущий пиксель обнаруживают, как краевой пиксель и отображение края, край [m][n], становится равным "1", и на этапе (b) для адаптивной фильтрации сигнала 4-элементное окно фильтра применяют к блоку 8 х 8, чтобы определить, является ли центральный пиксель окна фильтра краевым пикселем, и фильтрацию выполняют, если центральный пиксель является краевым пикселем, в противном случае выполняют взвешенную фильтрацию.

27. Способ по п.1, отличающийся тем, что для уменьшения углового выброса, формируемого в точке, где встречаются углы четырех блоков, когда кодируются и декодируются блочные данные изображения, дополнительно включает этапы: (a) обнаружения угла выброса блока 8 х 8 обратно преобразованных данных изображения и (b) компенсации обнаруженного угла выброса, причем на этапе (a) обнаружения, при условии, что A, B, C и D - четыре пикселя вокруг точки, где встречаются четыре угла, и величина [0], величина [1], величина [2] и величина [3] - величины пикселей A, B, C и D, соответственно, среднее число величин пикселей устанавливают как (A+B+C+D+2)/4, разницу между величиной каждого пикселя в среднем сравнивают с показателем квантования QP стандарта H.263 и количество пикселей - кандидатов на угол выброса накапливают для обнаружения указанного угла выброса, если разница превышает показатель квантования QP, и на этапе (b) компенсации, при условии, что A1 и A2 - пиксели, смежные пикселю A, и A3 - пиксель, диагональный по отношению к пикселю A, в том же блоке пикселя A, и A', A'1 и A'2 - компенсированные величины пикселей A, A'1 и A'2 соответственно, если обнаружен только один кандидат угла выброса, обнаруженный кандидат является пикселем A и разница между пикселем A и A3 меньше, чем 3QP/2, компенсацию углового выброса выполняют с использованием уравнений
A'=(4A+B+C+2D+4)/8;
A'1=(A'+3A1+2)/4;
A'2=(A'+3A2+2)/4,
и, если количество кандидатов больше двух, выбирают того кандидата, который имеет самое большое отличие от выражения (A3+B3+C3+D3+2)/4, и компенсацию угла выброса выполняют в этой точке так же, как и в случае только одного кандидата.

28. Устройство для цикл-фильтрации данных изображения, обеспечивающее снижение эффекта квантования, возникающего при кодировании и декодировании данных изображения, отличающееся тем, что содержит блок выделения флага для выделения флага, указывающего на необходимость цикл-фильтрации данных изображения, с использованием распределения коэффициентов обратного преобразования (КОП) данных изображения и вектора перемещения, указывающего на разницу между предшествующим кадром и текущим кадром, фильтр деблокирования для фильтрации деблокирования данных изображения путем анализа флага блокировки, выделенного блоком выделения флага, компенсатор угла выброса для обнаружения углового выброса обратно преобразованных и отфильтрованных данных и для компенсации обнаруженного угла выброса и фильтр для выполнения фильтрации со снижением низкочастотного шума данных с компенсацией углового выброса путем анализа флага помех, выделенного блоком выделения флага, причем указанные флаги включают в себя флаг блокировки, указывающий на необходимость уменьшения артефактов блокирования у границ блока, и флаг помех, указывающий на необходимость снижения низкочастотного шума у краев изображения.

29. Устройство по п. 28, отличающееся тем, что выделение флага блоком выделения флага выполняют для внутреннего флага и промежуточного флага, при выделении внутреннего флага используют распределение коэффициентов обратного преобразования (КОП) обратно преобразованных данных изображения, а при выделении промежуточного флага используют вектор перемещения, указывающий разницу между предшествующим кадром и текущим кадром.

30. Устройство по п.28, отличающееся тем, что фильтр деблокирования является одномерным горизонтальным и вертикальным фильтром нижних частот.

31. Устройство по п.28, отличающееся тем, что фильтр снижения низкочастотного шума является двумерным адаптивным фильтром сигнала.

Приоритет по пунктам:
01.08.1998 - по пп.1 - 6, 11, 13 - 17, 19 - 23, 25 - 31;
02.11.1998 - по пп.7 - 10, 12, 18, 24.

РИСУНКИ

Рисунок 1, Рисунок 2, Рисунок 3, Рисунок 4, Рисунок 5, Рисунок 6, Рисунок 7, Рисунок 8, Рисунок 9



 

Похожие патенты:

Изобретение относится к кодированию и декодированию цифровых данных, разделенных на блоки цифр, в порядке значимости цифр

Изобретение относится к способу ресинхронизации, который может быть использован в канале декодирования по стандарту MPEG-4

Изобретение относится к технике передачи изображений и может использоваться в мультимедийной связи

Изобретение относится к буферизации пакетов медиапотока при передаче от передающего устройства приемному устройству

Изобретение относится к способу буферизации мультимедийной информации, а также к способу декодирования закодированного потока изображений в декодере, в котором закодированный поток изображений принимается в виде блоков передачи, содержащих мультимедийные данные

Изобретение относится к передаче медиа-потока по предрасположенному к ошибкам каналу цифрового телевещания для переносных устройств (DVB-Н), в котором медиа-дейтаграммы маркированы согласно приоритету, упакованы в секции многопротокольной инкапсуляции, неравномерно защищены с использованием кодов прямого исправления ошибок, пакетированы в транспортный поток и переданы в канал с использованием пачек с временным разделением

Изобретение относится к системам мультимедийной передачи и, в частности, к способам и устройству для обеспечения быстрого получения услуги

Изобретение относится к видеокодированию, и в частности, к нижнему уровню обратной линии связи, способствующему коррекции ошибок видеоданных

Изобретение относится к способу передачи/приема сигнала и к устройству для передачи/приема сигнала, которые могут увеличивать скорость передачи данных
Наверх