[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

RU2461977C2 - Сжатие и снятие сжатия изображения - Google Patents

Сжатие и снятие сжатия изображения Download PDF

Info

Publication number
RU2461977C2
RU2461977C2 RU2009127749/07A RU2009127749A RU2461977C2 RU 2461977 C2 RU2461977 C2 RU 2461977C2 RU 2009127749/07 A RU2009127749/07 A RU 2009127749/07A RU 2009127749 A RU2009127749 A RU 2009127749A RU 2461977 C2 RU2461977 C2 RU 2461977C2
Authority
RU
Russia
Prior art keywords
image
compression
sets
post
decompression
Prior art date
Application number
RU2009127749/07A
Other languages
English (en)
Other versions
RU2009127749A (ru
Inventor
Фэй ЦЗО (NL)
Фэй ЦЗО
ВАЛЕ Стейн ДЕ (NL)
ВАЛЕ Стейн ДЕ
Вильгельмус Х. А. БРЮЛЬС (NL)
Вильгельмус Х. А. БРЮЛЬС
Карел Й. Г. ХИННЕН (NL)
Карел Й. Г. ХИННЕН
Михаэль Й. ВЕРБЕРНЕ (NL)
Михаэль Й. ВЕРБЕРНЕ
Original Assignee
Конинклейке Филипс Электроникс Н.В.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Конинклейке Филипс Электроникс Н.В. filed Critical Конинклейке Филипс Электроникс Н.В.
Publication of RU2009127749A publication Critical patent/RU2009127749A/ru
Application granted granted Critical
Publication of RU2461977C2 publication Critical patent/RU2461977C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/179Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scene or a shot
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

Изобретение относится к области обработки изображений, и в частности к способам и устройствам для сжатия и снятия сжатия (декомпрессии) изображения. Техническим результатом является обеспечение ослабления артефактов сжатия. Указанный технический результат достигается тем, что кластеры пикселей задаются для использования при сжатии и снятии сжатия изображения, при этом информация изображения, используемая для задания кластеров, может включать в себя значения пикселя в заранее определенной позиции относительно пикселя или соответствующие векторы движения, градиенты, текстуру и т.д. В процессе сжатия изображений информация изображения относительно пикселей исследуется для определения кластера, которому он принадлежит. Для каждого кластера набор параметров управления вычисляется для операции пост-обработки, например коэффициенты фильтра для фильтрации или статистические данные для локальной генерации текстуры, при этом набор параметров управления выбирается в зависимости от контента изображения. Сжатое изображение и наборы параметров управления передаются на устройство снятия сжатия. После снятия сжатия информация изображения, которая представляет изображение со снятым сжатием, исследуется для классификации пикселей согласно кластерам, и разные наборы параметров управления для выбранных кластеров используются для управления пост-обработкой в положениях пикселей. 4 н. и 10 з.п. ф-лы, 30 ил.

Description

Область техники
Изобретение относится к способам и устройствам для сжатия и снятия сжатия изображения.
Уровень техники
Способы сжатия изображения с потерями известны, в контексте сжатия, как видеосигнала, так и отдельных изображений. Наиболее яркими примерами являются способы, заданные в различных стандартах сжатия/снятия сжатия MPEG и JPEG, которые включают в себя грубое квантование данных изображения. Эти способы сжатия с потерями привносят артефакты, т.е. различия между исходными изображениями и реконструированными изображениями, полученными после сжатия и снятия сжатия.
Способ уменьшения этих различий описан в публикации под названием "Post filter SEI message for 4:4:4 coding", авторы S. Wittmann и T. Wedi, на 18-й встрече Joint Video Team (JVT) ISP/IEC MPEG и ITU-T VCEG (документ № JVT S030).
В этой публикации предлагается добавлять в видеопоток MPEG сообщения, задающие коэффициенты фильтра для пост-фильтра КИХ (с конечной импульсной характеристикой), который необходимо применять к декодированным изображениям на стороне декодера для ослабления артефактов сжатия. Используется фильтрация по Винеру, т.е. задается статистическая мера различия между исходным изображением и пост-фильтрованным изображением со снятым сжатием, и коэффициенты фильтра выбираются так, чтобы минимизировать значение этой меры. Это означает, что значения коэффициентов фильтра зависят от контента изображения. Коэффициенты фильтра вычисляются в кодере и включаются в видеопоток. Декодер извлекает коэффициенты из потока и применяет пост-фильтрацию с использованием извлеченных коэффициентов.
К сожалению, этот тип пост-фильтрации обеспечивает лишь частичное ослабление артефактов сжатия.
Сущность изобретения
Помимо прочего, задачей изобретения является обеспечение способа ослабления артефактов сжатия.
Предусмотрено устройство снятия сжатия по п.1 формулы изобретения. Здесь, для каждого из совокупности пикселей в изображении со снятым сжатием, пиксели классифицируются на основании контента изображения в соответствующем окне относительно пикселя. Классификация используется для выбора набора параметров управления из совокупности наборов параметров управления, которые были переданы с изображением. Выбранный набор параметров управления используется для управления пост-обработкой для пикселей. Таким образом, это позволяет использовать различную пост-обработку на разных пикселях в изображении. На пикселях, где обнаружены разные классы признаков, можно использовать, например, разные наборы параметров управления для пост-фильтрации. Аналогично, при возникновении градиентов в разных направлениях можно использовать разные наборы параметров управления для пост-фильтрации.
В рамках изобретения "пост-фильтрация" и "пост-обработка" включают в себя фильтрацию и обработку после полного декодирования изображения, т.е. после процесса полного декодирования. Изображения часто декодируются с использованием циклического процесса, в котором после начального декодирования осуществляется циклический процесс для получения конечного декодированного изображения. Затем конечное декодированное изображение фильтруется вне цикла. Такие "внецикловые" варианты осуществления изобретения образуют группу предпочтительных вариантов осуществления.
Согласно изобретению предусмотрено также применение внутрицикловых фильтров, например внутрицикловое применение фильтров снятия разбиения на блоки. Затем "пост-фильтрация" применяется в цикле после этапа начального декодирования. Такие "внутрицикловые" варианты осуществления изобретения также образуют группу предпочтительных вариантов осуществления.
Согласно варианту осуществления наборы параметров управления мультиплексируются в поток изображения совместно со сжатым изображением. Альтернативно, наборы параметров управления и сжатые изображения можно подавать на устройство снятия сжатия по отдельности, например на отдельные субвходы входа устройства снятия сжатия, когда пользователь устройства снятия сжатия подписан на прием изображения для применения пост-обработки.
Согласно варианту осуществления пост-обработка содержит фильтрацию с помощью фильтра, например фильтра с конечной импульсной характеристикой, причем коэффициенты фильтра задаются набором параметров управления. Но, альтернативно, можно использовать другие формы пост-обработки, например локальные добавления текстуры, причем статистические параметры задаются набором параметров управления.
Предусмотрено устройство сжатия по п.8. Это устройство сжатия выбирает наборы параметров управления для разных классов и добавляет их к сжатому сигналу изображения. Согласно варианту осуществления устройство сжатия также выбирает определение класса в зависимости от контента изображения и добавляет его в сжатый сигнал изображения. Определение класса может содержать, например, репрезентативные векторы значений пикселя в окнах изображения со снятым сжатием. Согласно варианту осуществления совокупность наборов параметров управления вычисляется, в целом, для совокупности входных изображений. Таким образом, набор параметров управления можно повторно использовать для разных изображений. Это уменьшает полосу, необходимую для сжатого сигнала. Наборы параметров управления можно выбирать в зависимости от различия между входным изображением и изображением со снятым сжатием, заданным сигналом изображения со снятым сжатием, для задания операций пост-обработки, которые определяют это различие.
Краткое описание чертежей
Эти и другие задачи и преимущественные аспекты явно следуют из иллюстративных вариантов осуществления, которые описаны ниже с использованием следующих фигур.
Фиг.1 - устройство сжатия.
Фиг.2 - устройство снятия сжатия.
Фиг.3 - вариант осуществления пост-фильтра.
Фиг.3a - кластеризация пикселей.
Фиг.3b и 3c - положительный эффект.
Фиг.4 - устройство снятия сжатия.
Фиг.5 - схема блока 16 оценки параметров.
Фиг.6 - пост-процессор.
Фиг.7 - система сжатия/снятия сжатия.
Фиг.8 - устройство сжатия.
Фиг.9 - устройство снятия сжатия.
Фиг.10 - система сжатия/снятия сжатия.
Фиг.11 - вариант осуществления, в котором градиенты используются в качестве критериев выбора.
Фиг.12 - позиции центров кластера при использовании градиентов в качестве критериев выбора.
Фиг.13 - преимущества использования градиентов в качестве критериев выбора.
Фиг.14 - иерархическая структура.
Фиг.15a, 15b и 15c - еще один вариант осуществления с использованием функции снятия разбиения на блоки.
Фиг.16 - иллюстративные условия, используемые для принятия решения, соседствуют ли пиксели p0 и q0 с краем подблока BE.
Фиг.17 - измерения снижения битовой скорости.
Фиг.18 - еще один вариант осуществления.
Фиг.19 - шаблоны, демонстрирующие поворотную симметрию.
Фиг.20 - шаблоны, демонстрирующие сдвиговую симметрию.
Фиг.21 - шаблоны, демонстрирующие зеркальную симметрию.
Фиг.22a-22c - примеры шаблонов, демонстрирующих инвариантность к преобразованиям.
Фиг.23 - структура сигнала.
Подробное описание вариантов осуществления
На фиг.1 показано устройство сжатия. Устройство сжатия содержит вход 10 потока, блок 12 сжатия, блок 14 снятия сжатия, блок 16 оценки параметров, мультиплексор 18 потока и выход 19 сжатого потока. Блок 12 сжатия имеет вход, связанный с входом 10 потока, и выход, связанный с мультиплексором 18 потока. Блок 14 снятия сжатия имеет вход, связанный с выходом блока 12 сжатия. Блок 16 оценки параметров имеет входы, связанные с входом 10 потока и с входом блока 14 снятия сжатия. Блок 16 оценки параметров имеет выход, связанный с мультиплексором 18 потока для обеспечения параметрических данных 17. Мультиплексор 18 потока имеет выход, связанный с выходом 19 сжатого потока.
На фиг.2 показано устройство снятия сжатия. Устройство снятия сжатия содержит вход 20 сжатого потока, демультиплексор 22 потока, блок 24 снятия сжатия, пост-фильтр 26 и выход 28 со снятым сжатием. Демультиплексор 22 потока имеет вход, связанный с входом 20 сжатого потока, и выходы, связанные с входом блока 24 снятия сжатия и входом управления пост-фильтра 26. Пост-фильтр 26 имеет вход сигнала, связанный с выходом блока 24 снятия сжатия, и выход, связанный с выходом сжатого потока.
На обеих фигурах показаны только компоненты, имеющие отношение к сжатию и снятию сжатия изображения. Следует понимать, что могут присутствовать и другие компоненты, например, для сжатия и снятия сжатия аудиосигнала, управления данными и т.д. Кроме того, следует учесть, что разные компоненты можно реализовать с использованием одной или нескольких программируемых схем обработки, программируемых программой, в соответствии с которой схема обработки действует как соответствующий компонент. Одну программируемую схему обработки можно использовать для работы в качестве разных компонентов под управлением разных программ или можно использовать разные схемы обработки. В качестве альтернативны, компоненты можно реализовать с использованием специализированных схем или как сочетание программируемых и специализированных схем.
В ходе работы устройство сжатия создает сжатый поток, и сжатый поток поступает на устройство снятия сжатия. Можно использовать любой способ связи. Например, сжатый поток из устройства сжатия можно рассылать или передавать в режиме двухточечной связи через любую среду (не показана) и подавать на устройство снятия сжатия или его можно сохранять в запоминающем устройстве и подавать на устройство снятия сжатия из запоминающего устройства. Конечно, можно использовать любое сочетание сохранения и рассылки или передачи.
Блок 12 сжатия и блоки 14, 24 снятия сжатия осуществляют сжатие и соответствующее снятие сжатия изображений. Можно использовать любую форму сжатия и снятия сжатия, например согласно любому стандарту MPEG. Мультиплексор 18 потока объединяет сжатые данные изображения с любыми другими нужными данными в сжатый поток. Демультиплексор 22 потока извлекает сжатые данные изображения и выдает извлеченные данные на блок 24 снятия сжатия. Блок снятия сжатия снимает сжатие данных изображения и выдает данные изображения со снятым сжатием на пост-фильтр 26. Пост-фильтр 26 фильтрует данные и выводит фильтрованные данные изображения, которые можно использовать, например, для управления устройством отображения (не показано) для визуализации изображения на экране.
Хотя были показаны мультиплексор 18 и демультиплексор 22, так что сжатое изображение и наборы параметров управления для пост-обработки этого изображения могут быть объединены в одном сигнале изображения, следует учесть, что сжатое изображение и наборы параметров управления также можно обеспечивать по отдельности, например обеспечивая устройства сжатия и устройства снятия сжатия отдельными субвыходами и субвходами для этих сигналов. Недостаток этой схемы в том, что требуется более сложный способ передачи сигналов, но она имеет преимущество, что наборы параметров управления можно пропустить, когда они не нужны, например сжатое изображение предоставляется абонентам с возможностью пост-обработки или без нее.
Пост-фильтрация
Блок 16 оценки параметров выбирает параметры для управления пост-фильтрацией посредством пост-фильтра 26. Блок 16 оценки параметров выдает выбранные параметры на мультиплексор 18 потока, который добавляет параметры в сжатый поток. Демультиплексор 22 потока извлекает параметры и выдает извлеченные параметры на пост-фильтр 26. Пост-фильтр 26 использует параметры для управления пост-фильтрацией.
На фиг.3 показан вариант осуществления пост-фильтра. В этом варианте осуществления пост-фильтр содержит блок 30 оконного сбора, блок 32 выбора кластера, память 34 задания кластера, память 36 коэффициентов, интерфейс управления 38 и КИХ-фильтр 39. Блок 30 оконного сбора связан с выходом блока снятия сжатия (не показан) и имеет выход, связанный с КИХ-фильтром 39. Блок 32 выбора кластера имеет входы, связанные с выходом блока 30 оконного сбора и памяти 34 задания кластера. Блок 32 выбора кластера имеет выход, связанный с входом памяти 36 коэффициентов. Память 36 коэффициентов имеет выход, связанный с входом коэффициентов КИХ-фильтра 39. Интерфейс управления 38 имеет вход для приема данных управления из демультиплексора потока (не показан) и выходы, связанные с памятью 34 задания кластера и памяти 36 коэффициентов. Хотя различные элементы, показанные на фиг.1, например блок памяти 34, 36, изображены как части пост-фильтра 26, следует понимать, что их также можно рассматривать как отдельные части устройства снятия сжатия, не входящие в состав пост-фильтра.
В ходе работы блок 30 оконного сбора собирает значения пикселя для положений пикселя в движущемся окне положений пикселя в изображении (например, в окне положений пикселя 3×3). Блок 30 оконного сбора подает значения пикселя для окна на КИХ-фильтр 39. КИХ-фильтр 39 вычисляет выходное значение пикселя как сумму произведений значений пикселя и коэффициентов фильтра. Каждое произведение вычисляется для соответствующего положения в окне на основании значения пикселя и коэффициента фильтра, связанного с этим положением. Сумму произведений можно нормализовать и выводить как пост-фильтрованное значение пикселя для положения пикселя, соответствующего положению окна. Это повторяется для ряда положений окна, для создания выходных значений пикселя для ряда положений пикселя в заранее определенных относительных позициях в отношении положений окна (например, выходных положений пикселя в центральных точках окон 3×3, но можно использовать другие заранее определенные относительные позиции).
Блок 32 выбора кластера и память 36 коэффициентов управляют коэффициентами, которые используются КИХ-фильтром 39. Информация в памяти 34 задания кластера задает совокупность кластеров, каждый из которых соответствует набору возможных комбинаций значений пикселя в окне. В памяти 36 коэффициентов хранится соответствующий набор коэффициентов фильтра для каждого кластера. Блок 32 выбора кластера принимает комбинацию значений пикселя в текущем окне, которая была создана блоком снятия сжатия (не показан), и на основании этих значений пикселя блок 32 выбора кластера классифицирует контент окна, т.е. определяет кластер, которому принадлежит эта комбинация. Блок 32 выбора кластера использует идентификацию этого кластера для адресации памяти 36 коэффициентов, и в ответ память 36 коэффициентов выдает соответствующий набор коэффициентов фильтра на КИХ-фильтр 39. Это повторяется для ряда положений окна. Таким образом, для каждого положения окна значения пикселя фильтруются согласно классификации положения окна (кластеру, выбранному для положения окна) для создания выходного значения пикселя для соответствующего положения пикселя.
Согласно варианту осуществления в памяти 34 задания кластера хранятся репрезентативные комбинации значений пикселя для каждого кластера. В этом варианте осуществления кластеры задаются расстоянием до этих репрезентативных комбинаций. Любая данная комбинация значений пикселя находится на разных расстояниях до репрезентативных комбинаций значений пикселя. Данная комбинация принадлежит тому из кластеров, который находится на минимальном расстоянии от репрезентативной комбинации.
В этом варианте осуществления блок 32 выбора кластера классифицирует, определяя репрезентативную комбинацию на наименьшем расстоянии. В еще одном варианте осуществления для задания кластеров используется только яркостный компонент значений пикселя. Таким образом, например, если используются окна 3×3, то каждая репрезентативная комбинация содержит девять значений яркости:
(Y1(j), Y2(j), …, Y9(j)).
Здесь "j" является указателем кластера. В этом варианте осуществления блок 32 выбора кластера принимает значения яркости (L1, L2, …, L9) для положений пикселя в текущем окне и выбирает кластер j, который минимизирует расстояние
|L1-Y1(j)| + |L2-Y2(j)|+ … + |L9-Y9(j)|
(| | обозначает абсолютное значение). В этом варианте осуществления блок 32 выбора кластера использует индекс j для выбора набора коэффициентов фильтра.
На фиг.3a показан пример, в котором для нахождения коэффициентов фильтра в сцене выбирается несколько ключевых кадров. Вектором признака для кластеризации является яркость в локальном окне 3×3 вокруг пикселя, как объяснено выше. В верхней строке на фиг.3a находятся исходные кадры, а в нижней строке -декодированные кадры. Элементы нескольких кластеров указаны в нижней строке. Кластеры содержат области или пиксели со сходными шаблонами. В этом примере используется 20 кластеров. На фиг.3a показано, что сходные шаблоны объединяются в кластеры. Кластеры рассеяны по изображению, что часто имеет место, поскольку кластеры образованы сходными шаблонами по изображениям. Алгоритмы кластеризации могут опираться на разные схемы и формулы для отыскания сходных шаблонов. В этом примере алгоритм базируется на значениях яркости.
На фиг.3b показан положительный эффект для этой сцены. На графике средняя PSNR-Y является мерой искажения. Кривая A представляет значение PSNR-Y для декодированного сигнала; кривая B представляет значение PSNR-Y после применения кластеризации и применения адаптивного фильтра. Средняя PSNR-Y возрастает с 32,38 дБ до 32,89 дБ, т.е. улучшение составляет 0,5 дБ.
Следует отметить, что изменение сцены присутствует вокруг кадра 315 и после изменения упомянутой сцены кластеризация предыдущей сцены уже не является оптимальной. Обнаружение ухудшения можно использовать для динамического обновления выбора кластера и соответствующих коэффициентов фильтра. В автономном сценарии возможное изменение сцены может заранее определяться разбиением сцены.
На фиг.3c показано увеличение значения PSNR-Y для видеосигнала, кодированного согласно H.264, как функции битовой скорости. На всех битовых скоростях присутствует заметное увеличение значения PSNR-Y.
На фиг.3d показано увеличение значения PSNR-Y как функции количества кластеров. Предпочтительное количество кластеров равно 5 или более, наиболее предпочтительно менее 30. При увеличении количества кластеров возрастает вычислительная нагрузка, тогда как дополнительный коэффициент усиления уменьшается.
В этом примере для одной сцены видео функция пост-обработки включает в себя 40 чисел с плавающей точкой (центры кластера и коэффициенты фильтра). Эту информацию можно дополнительно квантовать и энтропийно кодировать для дальнейшего снижения битовых затрат. С учетом объема кадров изображения, принадлежащих одной сцене, которые могут подвергаться пост-обработке с помощью одних и тех же данных, этими дополнительными затратами можно пренебречь в практическом смысле, тогда как преимущество является ощутимым и измеримым.
Следует подчеркнуть, что этот вариант осуществления является всего лишь примером. Можно использовать любой другой способ задания кластеров. Например, значения пикселей из разных положений в окне можно по-разному взвешивать при вычислении расстояния или цветовые компоненты можно по-разному взвешивать (например, с использованием только одного цветового компонента на кластер). Вместо суммы абсолютных значений можно использовать, например, сумму квадратов.
Вместо расстояния до набора значений яркости можно использовать расстояние до набора скалярных произведений комбинаций значений яркости со стандартными векторами значений яркости и т.д. Вместо репрезентативных векторов для отдельных кластеров можно использовать систему опорных векторов для управления выбором между группами кластеров вдоль дерева принятия решения. Вместо репрезентативных векторов можно обеспечивать разностные векторы для выбора между кластерами или группами кластеров и т.д. Здесь понятие "классификация вектора" применяется к любому такому типу классификации, независимо от того, осуществляется ли классификация путем первоначального группирования релевантных компонентов вектора в вектор или просто путем учета компонентов: в контексте "классификации" термин "вектор" используется для указания того, что для классификации используется некоторое количество компонентов. Соответственно, блок 32 выбора кластера может использовать другие способы для выбора кластера и компонента "векторов кластера", которые используются в классификации.
Хотя был описан вариант осуществления, в котором кластер выбирается посредством значений со снятым сжатием Y1, Y2, … для окна положений соседнего пикселя, очевидно, что, альтернативно, можно использовать значения сигнала для других комбинаций положений. Например, вместо комбинации отдельных значений пикселя из окна 3×3 можно использовать комбинацию средних значений пикселя, каждое из которых соответствует одному из набора блоков положений пикселя. Например, блоки 8×8 пикселей в окне 3×3 таких блоков. В качестве другого примера, вместо комбинации отдельных значений пикселя из окна 3×3 для выбора кластера можно использовать субдискретизированные значения из заранее определенных несоседних положений относительно текущего положения пикселя.
В качестве дополнительного примера, для вывода классов можно использовать следующие этапы.
1. Все окна M×M соседства каждого пикселя из подмножества декодированных кадров, составляющих данную информацию изображения, извлекаются из информации изображения. Каждое окно представлено вектором признака x', состоящим из его яркости. Вектор можно нормировать путем вычитания из каждого вектора среднего значения всех компонентов. Таким образом, окно 4×4 вокруг пикселя представлено 16-мерным вектором со значениями 0 … 255 (для 256 цветов) по всем его осям. Окно 5×5 представлено 25-мерным вектором и т.д.
2. Векторы признака дискретизируются в заранее заданное количество классов N, так что суммарная дисперсия в классе выражается как
Figure 00000001
.
Согласно вышесказанному, существует всего N классов Ci (1≤i≤N), x' является выборкой 16- или 25-мерного вектора (для окон 4×4 и 5×5 соответственно) и µi' является вектором математического ожидания всех векторов x', принадлежащих классу Ci. Такую классификацию можно легко реализовать с использованием итерационного подхода. Это позволяет найти центр каждого класса или кластера, причем кластер и класс означают одно и то же, т.е. совокупность элементов. Этот центр сохраняется для представления класса. Векторы, ближайшие к каждому центру, образуют часть кластера или класса. В этом примере используется сумма квадратов, в предыдущем примере использовалась сумма абсолютных значений. В каждом примере используется всего N классов.
3. Для каждого идентифицированного класса определяются коэффициенты фильтра. Применение фильтра для декодированных кадров обеспечивает новое значение пикселя p" для каждого пикселя в декодированном кадре низкого разрешения, причем p" определяется на основании M×M соседства пикселя. Целью является минимизация СКО (среднеквадратической ошибки) между предсказанным значением p" и соответствующим исходным значением пикселя p для всех выборок в каждом классе.
Это можно рассматривать как стандартную задачу наименьших квадратов, которую можно решить с помощью линейной регрессии с несколькими переменными или другими известными методами решения задач наименьших квадратов.
С использованием фильтров на основании окна 5×5 и общего количества 5 классов были найдены типичные улучшения в значениях PSNR-Y по сравнению с другими известными методами, составляющие около 1 дБ.
Кроме того, окно, используемое для выбора кластера, не обязано быть таким же, как окно, используемое в КИХ-фильтре. Хотя предпочтительно, чтобы эти окна, по меньшей мере, перекрывались, так что выбранные коэффициенты фильтра для положения пикселя зависят от ближнего контекста этого положения, кластер также можно выбирать на основании окна, которое не перекрывается с окном, используемым КИХ-фильтром.
Кроме того, для классификации положений можно использовать векторы движения вместо значений пикселя (или дополнительно к ним). Как известно само по себе, изображение в видеопотоке можно кодировать посредством векторов движения для блоков пикселей, которые задают для каждого блока положение блока в другом изображении, из которого значение пикселя должно быть скопировано в блок. Согласно варианту осуществления векторы движения совокупности блоков в заранее определенных положениях относительно положения пикселя можно использовать для присвоения положения пикселя кластеру. Это можно сделать по аналогии с кластеризацией согласно значению пикселя.
На фиг.4 показан вариант осуществления, в котором блок 24 снятия сжатия содержит блок 240 снятия сжатия изображения, блок 242 извлечения вектора движения и память 244 опорного изображения. Здесь блок 242 извлечения вектора движения извлекает векторы движения из входящей видеоинформации и выдает извлеченные векторы движения на блок 240 снятия сжатия изображения для указания, откуда из памяти 244 опорного изображения нужно считывать блоки пикселей. К тому же извлеченные векторы движения поступают на блок 32 выбора кластера, который использует разности векторов движения между "вектором векторов движения" для блоков в заранее определенных позициях относительно положения пикселя с репрезентативными векторами векторов движения для разных кластеров. Конечно, выбор кластера на основании векторов движения также можно осуществлять способами, отличными от определения разностей с репрезентативными векторами. Кроме того, следует понимать, что для кластеризации можно использовать векторы движения для движения к изображению и/или векторы для движения от изображения. Кроме того, хотя предпочтительно использовать кодированные векторы движения из видеопотока, следует учесть, что альтернативно можно использовать векторы движения, которые определяются заранее определенным способом из контента изображения для изображений в видеопотоке.
В другом варианте осуществления блок выбора 32 может использовать разности с репрезентативными векторами, которые содержат как значения пикселя, так и векторы движения, причем разные весовые коэффициенты можно использовать для разных компонентов репрезентативных векторов при определении разности.
Следует заметить, что используемые кластеры представляют собой кластеры в пространстве возможных комбинаций значений пикселя в окне, но не кластеры положений пикселя. На практике наблюдается, что комбинации значений пикселя для окон в соседних положениях окна часто приводят к одному и тому же выбору кластера, но это не задает кластеры. Эта форма пост-фильтрации хорошо работает, даже когда область изображения имеет положения окна, которым в основном присвоен один кластер, многим положениям окна в этой области присвоены разные кластеры. Наконец, имеет значение именно фильтрованное значение пикселя, а не кластер, который был использован для его получения.
Кроме того, хотя КИХ-фильтр 39 использовался в качестве примера, следует учесть, что вместо него можно использовать фильтр другого типа. Например, можно использовать нелинейный фильтр или рекурсивный фильтр, выходной сигнал которого зависит от выходного сигнала фильтра для одного или нескольких соседних положений. Кроме того, конечно, можно использовать окно любого другого размера, кроме 3×3, например окно размером 3×1 (три положения пикселя по горизонтали и одно по вертикали).
В предыдущих примерах информация, которая задает изображения, например значения пикселя, векторы движения и т.д., была использована для выбора кластеров. Кроме того, в сжатый сигнал изображения также можно включить информацию явного выбора кластера. Это увеличивает размер сигнала, но это может помочь в упрощении классификации. Согласно варианту осуществления такие сигналы явного выбора кластера могут представлять собой только информацию, используемую устройством снятия сжатия для выбора кластеров.
Можно использовать любую удобную реализацию компонентов пост-фильтра. В одном примере пост-фильтр использует полное сохраненное изображение в памяти, и блок 30 оконного сбора извлекает значения пикселя для окна из памяти. В другом варианте осуществления блок 30 оконного сбора только буферизует значения пикселя из достаточного количества строк изображения для обеспечения значений пикселя для окон. Разные компоненты можно реализовать с использованием одной или нескольких программируемых схем обработки, программируемых программой, в соответствии с которой схема обработки действует как соответствующий компонент. Одну программируемую схему обработки можно использовать для работы в качестве разных компонентов под управлением разных программ или можно использовать разные схемы обработки. В качестве альтернативы, компоненты можно реализовать с использованием специализированных схем или как сочетание программируемых и специализированных схем.
Как показано, пост-фильтр 26 и связанный компонент являются частью полного устройства снятия сжатия. Однако очевидно, что его можно реализовать в отдельном устройстве. Согласно варианту осуществления такое устройство можно использовать как интерфейс между мобильным устройством, например мобильным телефоном, и устройством отображения более высокого качества (например, телевизионным монитором). В другом варианте осуществления устройство снятия сжатия может повторно сжимать результат пост-фильтрации для генерации видеопотока повышенного качества.
Оценка параметров
На фиг.5 показана схема блока 16 оценки параметров. Блок 16 оценки параметров содержит блок кластеризации 40, блок 42 оконного сбора, блок 44 выбора коэффициента и выходной интерфейс 46. Блок 44 выбора коэффициента имеет входы, связанные с входом 10 потока и блока 14 снятия сжатия, причем последний - через блок 42 оконного сбора, и вход управления, связанный с блоком кластеризации 40.
В ходе работы блок 44 выбора коэффициента выбирает наборы коэффициентов фильтра для соответствующих кластеров. Для каждого кластера можно выбрать набор коэффициентов, который минимизирует усредненную меру разности между значениями пикселя со входа 10 потока и значениями пикселя, полученными с использованием набора коэффициентов фильтра, для пост-фильтрации результатов сжатия и снятия сжатия, полученных на блоке 12 сжатия и блоке 14 снятия сжатия. Усредненная мера разности усредняется по положениям пикселя, которые присвоены одному и тому же кластеру. Например, можно использовать среднеквадратичную разность, но можно использовать любую другую меру, например статистическую меру перцепционной разности. Методы выбора наборов коэффициентов, которые минимизируют усредненную меру для данного набора пикселей, как таковые известны.
Блок кластеризации 40 определяет, каким кластерам присваивать пиксели. Это может быть сделано в соответствии с выбором кластера на устройстве снятия сжатия. Согласно варианту осуществления блок кластеризации 40 также выбирает кластеры. Можно использовать любой метод кластеризации (в отношении кластеризации понимается не только слепой поиск разделенных кластеров, но и работа по классификации на заранее заданные кластеры). С использованием совокупности разных кластеров, объединенных с наборами коэффициентов фильтра, которые минимизируют разность между результатами пост-фильтрации и исходным значением пикселя в соответствующих кластерах, можно гарантировать, что полная мера разности (например, сумма квадратов разностей) между пост-фильтрованным изображением и исходным изображением меньше, чем полученная при условии, что единый набор коэффициентов фильтра используется для всего изображения. Это уменьшает общую разность уже для произвольно выбранных кластеров. Однако в некоторых вариантах осуществления кластеры выбираются для оптимизации снижения разности. Выбор кластера можно осуществлять до выбора коэффициентов фильтра для кластеров или совместно с выбором коэффициента фильтра.
Общий принцип изобретения базируется на анализе того, какого рода структура присутствовала в исходном изображении и как можно улучшить сжатую версию на стороне декодера (например, чтобы оно выглядело более похожим на исходное; или, в целом, имело более высокое качество изображения, например резкость) путем применения конкретного одного из набора оптимизированных/обученных фильтров изображения, при этом коэффициенты/параметры упомянутых фильтров добавляются в сигнал. Лишь некоторые дополнительные данные нужно передавать для задания этих фильтров; и, например, пару положений изображения, где применяются некоторые из них.
Возможны многочисленные варианты этих принципов изобретения, и некоторые из них описаны ниже, причем такие варианты могут улучшать существующие схемы кодирования, например H265.
В общем случае, можно просто классифицировать все возникающие структуры на несколько классов (например, край, высокочастотную горизонтальную текстуру, …), но, в более широкой трактовке принципов изобретения, классификацию следует осуществлять более структурированным/иерархическим параметрическим способом, включающим в себя иерархическое структурирование, например первоначальное нахождение того, какой тип классификации наиболее пригоден, с последующим осуществлением классификации, или также повторную классификацию или другую классификацию, например выбор кластеров и соответствующего фильтра или параметров пост-обработки можно осуществлять итерационно.
На первом этапе можно задать кластеры, после чего задать параметры пост-обработки, связанные с кластерами.
Эта схема, в целом, обеспечивает хороший результат, но в рамках изобретения можно применять итерационные процессы, например нахождение предварительной кластеризации, нахождение наборов параметров фильтра для предварительных кластеров, уточнение кластеризации для нахождения более подходящих кластеров, уточнение наборов параметров фильтра и т.д.
Вот несколько возможных итерационных процессов.
- Первоначально всем элементам в кластере присваивают одинаковый вес для определения параметров пост-обработки. После определения начальных наборов параметров и соответствующих центров кластера обеспечивают начальный результат для средней разности между исходными значениями пикселя и значениями пикселя после пост-обработки, затем каждому элементу в кластере назначают переменные весовые коэффициенты, например в заранее определенном, но регулируемом режиме в зависимости от меры расстояния до центра кластера. С использованием таких весовых коэффициентов пересчитывают коэффициенты фильтра; если результат улучшается, процесс неоднократно повторяют, пока не перестанут получать дополнительный коэффициент усиления или пока увеличение коэффициента усиления не упадет ниже порога. Простой вариант осуществления этой схемы предусматривает удаление "нечетных" точек в кластере из вычисления для кластера или параметров пост-обработки, т.е. приравнивание весовых коэффициентов таких элементов нулю.
- В то время как в вышеописанном варианте осуществления элементы кластеров остаются неизменными, но их влияние на расчет коэффициентов изменяется, альтернативной схемой было бы поддержание определенных коэффициентов фильтра неизменными, как и центров кластера, но сдвиг элементов из одного кластера в другой и, таким образом, сдвиг границ между кластерами и повторное вычисление разности между исходными значениями пикселя и значениями пикселя после пост-обработки. При наличии улучшения границы сдвигаются немного дальше.
- Способ задания центров кластера и кластеров зависит от алгоритма кластеризации. Как объяснено выше, а также ниже, возможны различные алгоритмы кластеризации, отличающиеся тем, на чем основана кластеризация (на значениях пикселя, на векторах движения, на крае, на текстуре и т.д.), а также тем, каким образом определяется кластеризация (минимизацией суммы абсолютных значений или минимизацией суммы квадратов). Еще один вариант осуществления предусматривает использование алгоритма кластеризации, который объединяет различные критерии, например значения пикселя и векторы движения и/или другие критерии, и использует совокупность таких критериев, причем в итерационном процессе отыскивается оптимальная совокупность критериев и соответствующие наборы параметров.
Изобретение также предусматривает варианты быстрого нахождения оптимальных фильтров на стороне кодера, например, путем прослеживания в пространстве коэффициентов, спектрального анализа Pinput/Pcompressed.
Согласно варианту осуществления блок кластеризации 40 применяет метод кластеризации, идентифицирует репрезентативные комбинации значений пикселя, которые задают разбиение пространства возможных комбинации на части на наименьшем расстоянии до соответствующих репрезентативных комбинаций. Репрезентативные комбинации выбираются на основании заранее определенного критерия качества кластера. Критерий качества кластера может, например, состоять в том, что количество фактически наблюдаемых комбинаций в каждом разбиении одинаково в пределах некоторой заранее определенной предельно допустимой ошибки, или в том, что мера разброса (например, сумма квадратов расстояний до центрального значения пикселя) фактически наблюдаемых комбинаций в каждом разбиении ниже порога. Например, можно использовать алгоритм кластеризации методом k-средних для группирования комбинаций значений пикселя со снятым сжатием, которые возникают в окнах. С использованием таких кластеров гарантируется, что каждый набор коэффициентов фильтра применяется к окнам со сходным контентом. Это минимизирует ошибку после пост-фильтрации.
В еще одном варианте осуществления используется способ кластеризации с использованием качественного критерия на основании остаточной ошибки после пост-фильтрации. В примере такого варианта осуществления производят начальное задание кластеров, выбирают наборы коэффициентов фильтра для каждого кластера и вычисляют размер остаточных ошибок для разных позиций пикселя. Если средний размер кластера выше порога, кластер разделяют, берут две фактически наблюдаемые комбинации из исходного кластера в качестве новых репрезентативных комбинаций. Аналогично, кластеры можно объединять, если средний размер ошибок в соседних кластерах ниже порога и/или разность между наборами коэффициентов фильтра для этих кластеров ниже порога. Повторяя эту процедуру несколько раз можно оптимизировать набор кластеров. Это дополнительный пример итерационного процесса.
Выходной интерфейс 46 имеет входы, связанные с блоком кластеризации 40 и блоком 44 выбора коэффициента. Выходной интерфейс 46 выдает информацию, которая представляет кластеры и коэффициенты фильтра, на мультиплексор 18 потока для подачи на устройство снятия сжатия, где они будут использоваться пост-фильтром 26.
Согласно варианту осуществления, в котором поток видеоизображений является сжатыми кластерами, коэффициенты выбираются для каждого изображения в потоке. Однако это не является необходимым. Кластеры и коэффициенты обычно зависят от сцены. Когда сцены (или сходные сцены) изображаются в последовательности изображений, одни и те же кластеры и коэффициенты можно использовать для всех этих изображений. В другом варианте осуществления блок 16 оценки параметров способен обнаруживать группы изображений, в которых можно использовать одни и те же кластеры и коэффициенты, и сигнализирует, только когда кластеры и коэффициенты изменяются. В этом случае пост-фильтр 26 сохраняет ранее принятые задание кластера и набор коэффициентов фильтра и применяет их к пост-фильтру, снимает сжатие изображения, пока он не получает сигнал, что кластеры и коэффициенты изменились.
В этом варианте осуществления блок 16 оценки параметров может вычислять размер остаточных ошибок после пост-фильтрации с использованием текущего набора для каждого входящего изображения и переходить к вычислению нового набора кластеров и коэффициентов, только если размер превышает порог (и, в необязательном порядке, также после заранее определенного количества изображений, с последнего нового набора кластеров и коэффициентов). В другом варианте осуществления блок 16 оценки параметров может сначала выбирать секции видеопотока и вычислять набор кластеров и коэффициентов для каждой секции. В этом случае блок 16 оценки параметров может выбирать кластеры и коэффициенты путем обработки только одного из изображений в секции или подмножества изображений в секции.
В качестве альтернативы группы можно обнаруживать путем оценивания характеристик изображения согласно заранее определенным функциям и связывания изображений с одной и той же группой, если характеристики изображения отличаются менее чем на заранее определенный порог. Характеристики изображения каждого вновь принятого изображения можно принимать и сравнивать с характеристиками изображения, для которого был использован текущий набор кластеров и коэффициентов, причем набор кластеров и коэффициентов поддерживается неизменным, если характеристики изображения отличаются менее чем на порог.
Согласно варианту осуществления разные наборы кластеров и коэффициентов можно использовать для по-разному сжатых изображений и/или разных предметных плоскостей. Таким образом, например, первые наборы кластеров и коэффициентов можно задать для интракодированных изображений (I-кадров в случае MPEG) и второй набор кластеров и коэффициентов можно задать для изображений, кодированных посредством предсказания на основании близлежащих изображений и оптических остатков (P-кадров и B-кадра в случае MPEG). В качестве другого примера, если контент изображения задан в видеопотоке для совокупности плоскостей, которые могут перекрываться для формирования выходного изображения, разные наборы кластеров и коэффициентов можно использовать для разных плоскостей.
Согласно варианту осуществления набор кластеров может быть одинаковым для этих изображений или плоскостей, но можно использовать разные коэффициенты, каждый из которых выбран для уменьшения ошибок в другом типе кадра. В этом варианте осуществления пост-фильтр 26 сохраняет совокупность определений кластеров и/или коэффициентов одновременно и выбирает из этой совокупности в зависимости от типа кодирования (I или B, P) и/или плоскости. Аналогично, блок 16 оценки параметров выбирает кластеры и коэффициенты на основании типа кодирования и/или плоскости.
Согласно варианту осуществления устройство снятия сжатия способно сохранять совокупность наборов кластеров и/или коэффициентов одновременно, например в памяти 34 задания кластера и в памяти 36 коэффициентов на пост-фильтре 26. Устройство снятия сжатия выбирает текущий набор из совокупности сохраненных наборов в зависимости от сигнала выбора набора, для использования при пост-фильтрации текущего изображения. Сигнал выбора набора можно обеспечивать из демультиплексора 22 потока на основании сигнала выбора, обеспеченного из устройства сжатия, или на основании типа изображения и/или плоскости.
В еще одном варианте осуществления устройство сжатия способно сохранять соответствующую совокупность наборов кластеров и/или коэффициентов. При приеме нового изображения (или предметной плоскости) блок оценки параметров сначала проверяет, можно ли присвоить его одному из сохраненных наборов кластеров и/или коэффициентов. Это можно делать, например, путем сжатия нового изображения, снятия его сжатия и его пост-фильтрации согласно каждому из сохраненных наборов кластеров и коэффициентов и сравнения результатов с исходным новым изображением, причем набор кластеров и коэффициентов выбирается так, чтобы обеспечить наименьшую разность. Если эта разность ниже заранее определенного порога, устройство сжатия сигнализирует устройству снятия сжатия, что следует использовать выбранный набор кластеров и/или коэффициентов. Однако, альтернативно, выбор набора кластеров и/или коэффициентов можно осуществлять путем классификации нового изображения согласно некоторым заранее определенным характеристикам изображения и выбора набора кластеров и/или коэффициентов, который связан с выбранным классом изображения.
Когда разность между новым изображением и результатом сжатия, после которого следуют снятие сжатия и пост-фильтрация с выбранным набором кластеров и/или коэффициентов, превышает порог, новый набор кластеров и/или коэффициентов оценивается и передается на устройство снятия сжатия для замены предыдущего набора кластеров и/или коэффициентов в памяти, причем предыдущий набор выбирается согласно одному и тому же критерию в устройстве сжатия и устройстве снятия сжатия, например путем явной идентификации этого предыдущего набора в сигнале из устройства сжатия на устройство снятия сжатия, с использованием самого последнего использованного набора или наиболее сходного набора и т.д.
Хотя был приведен пример, в котором управление пост-фильтром после снятия сжатия осуществляется с использованием информации, указанной устройством сжатия, следует понимать, что можно использовать и другие формы пост-обработки.
На фиг.6 показан пример схемы пост-обработки, которую можно использовать вместо пост-фильтра 26. В этой схеме пост-обработки добавлены генератор 50 (псевдо-) случайного сигнала и сумматор 52. Генератор 50 случайного сигнала генерирует (псевдо-) случайный сигнал под управлением одного или нескольких коэффициентов из памяти 36 коэффициентов. Сумматор 52 добавляет эти коэффициенты к сигналу со снятым сжатием. Генератор случайного сигнала 50 может быть способен управлять средним и/или стандартным отклонением случайного сигнала, и/или пространственной корреляционной и/или спектральной огибающей, и/или другими статистическими свойствами сгенерированного случайного сигнала как функции коэффициента или коэффициентов. Таким образом, локально генерируемую текстуру можно добавлять к сигналу снятого сжатия. Соответствующий(е) коэффициент или коэффициенты оценивае(ю)тся на блоке оценки параметров устройства сжатия на основании статистики различия между исходным изображением, изображением со сжатием и изображением со снятым сжатием. Оцененный(е) соответствующий(е) коэффициент или коэффициенты передаются с устройства кодирования на устройство декодирования. Таким образом, вместо данных, представляющих фактические значения пикселя, передаются коэффициенты, представляющие статистические свойства.
Следует подчеркнуть, что это лишь один пример генерации текстур. Вместо генератора 50 (псевдо-) случайного сигнала можно использовать другие типы генератора сигнала для прибавления или даже частичного вычитания локально генерируемых сигналов к изображению со снятым сжатием, причем локально генерируемые сигналы генерируются под управлением коэффициентов, передаваемых устройством снятия сжатия. Например, генератор случайного сигнала может использовать коэффициенты для управления набором значений, из которого он делает случайные выборы для генерации значений пикселя, или для управления основными шаблонами текстуры, на основании которых он случайно отображает пиксели в выходной сигнал. Для обеспечения большей свободы генерации текстур генерацию текстур можно объединить с вариантом осуществления, в котором набор коэффициентов выбирается посредством значения сигнала со снятым сжатием для комбинаций средних значений пикселя для соответствующих из набора блоков положений пикселя (например, в окне 3×3 таких блоков, с использованием, например, блоков 8×8 пикселей) или субдискретизированных значений для несоседних положений пикселя.
В еще одном варианте осуществления используется комбинация генерации текстур и фильтрации, причем коэффициенты выбираются под управлением обнаруженного кластера. В другом варианте осуществления используется только пост-фильтрация или только генерация текстур, в зависимости от кластера.
Согласно вышеописанным вариантам осуществления пост-обработка, например пост-фильтрация, применяется к конечному изображению, полученному в результате снятия сжатия. Преимущество состоит в том, что можно использовать любую форму сжатия и снятия сжатия. Однако очевидно, что, альтернативно, можно применять пост-обработку к промежуточным результатам снятия сжатия. Например, когда обратное ДКП (дискретное косинусное преобразование) частотных коэффициентов со снятым сжатием используется как часть снятия сжатия, пост-обработку также можно применять к частотным коэффициентам, например, путем умножения коэффициентов для разных частот на разные коэффициенты. Аналогично, к таким коэффициентам можно добавлять информацию текстуры.
Блок оценки параметров и пост-фильтр можно объединить с различными типами блока сжатия и блока снятия сжатия. Согласно варианту осуществления блок сжатия представляет собой блок сжатия с квантованием, например блок сжатия, который вычисляет коэффициенты ДКП (дискретного косинусного преобразования) для блока пикселей и квантует эти коэффициенты, или блок сжатия, который квантует значения пикселя. В другом варианте осуществления блок сжатия может представлять собой блок сжатия, который уменьшает пространственное разрешение изображения. Соответственно, блоки снятия сжатия могут применять обратное квантование или интерполяцию для реконструкции изображений со снятым сжатием.
На фиг.7 показано применение к сжатию, которое содержит масштабирование разрешения и квантование. Здесь наборы коэффициентов фильтра используются для ослабления артефактов обеих форм сжатия. На фигуре показаны устройство 66 сжатия и устройство 68 снятия сжатия. В устройстве 66 сжатия блок сжатия 12 содержит последовательно соединенные блок 60 масштабирования разрешения и блок 61 сжатия с квантованием. Согласно варианту осуществления блок 61 сжатия с квантованием вычисляет коэффициенты ДКП (дискретного косинусного преобразования) для блоков пикселей и квантует эти коэффициенты. Блок 60 масштабирования разрешения может содержать фильтр для устранения эффектов наложения спектров и блок субдискретизации. Блок снятия сжатия содержит последовательно соединенные блок 63 снятия сжатия с обратным квантованием и блок 62 обратного масштабирования разрешения. В устройстве 68 снятия сжатия блок снятия сжатия содержит последовательно соединенные блок 65 снятия сжатия с обратным квантованием и блок 64 обратного масштабирования разрешения перед пост-фильтром 26.
В ходе работы блок 60 масштабирования разрешения, который может содержать фильтр для устранения наложения спектров и блок субдискретизации, уменьшает разрешение, с которым представлены принятые изображения, до сжатия изображений. Блок 62 обратного масштабирования разрешения реконструирует изображения с исходным разрешением или, по меньшей мере, с более высоким разрешением, чем у изображений с пониженным разрешением после сжатия и последующего снятия сжатия.
Блок 16 оценки параметров выбирает наборы коэффициентов фильтра и, в необязательном порядке, кластеры для работы пост-фильтра, который, в случае применения к реконструированным изображениям, будет делать эти изображения более соответствующими изображениям, соответствующим исходным входным изображениям.
В устройстве 68 снятия сжатия изображения подвергаются снятию сжатия, после чего разрешение повышается. Изображения повышенного разрешения подвергаются пост-фильтрации с использованием выбранных наборов коэффициентов фильтра. Хотя пост-фильтр 26 и блок 64 обратного масштабирования разрешения показаны в виде отдельных блоков, очевидно, что их можно интегрировать, причем коэффициенты фильтра указывают, как нужно интерполировать значения пикселя в ходе повышения разрешения.
Хотя в иллюстрируемом варианте осуществления применимый кластер выбирается под управлением значений пикселя изображения с повышенным разрешением, следует понимать, что, альтернативно, кластеры можно выбирать на основании значений пикселя из изображения с пониженным разрешением со снятым сжатием, т.е. изображения из блока 65 снятия сжатия с обратным квантованием. Согласно варианту осуществления это делается как в устройстве 66 сжатия, так и в устройстве 68 снятия сжатия.
Согласно варианту осуществления блок 61 сжатия с квантованием и блок 63 снятия сжатия с обратным квантованием можно опустить, в результате чего снижение разрешения является единственной формой сжатия. В этом случае пост-фильтр 26 используется только для ослабления артефактов, обусловленных снижением разрешения и последующей реконструкцией изображения с более высоким разрешением. Согласно фиг.7 пост-фильтр 26 используется для ослабления артефактов, обусловленных снижением разрешения и квантованием.
Кроме того, согласно фиг.8, в качестве альтернативного варианта осуществления, можно последовательно использовать отдельные пост-фильтры 39a, 39b в качестве субфильтров в устройстве 68 снятия сжатия для коррекции артефактов, обусловленных сжатием на блоке сжатия 12, и артефактов, обусловленных снижением разрешения на блоке 60 масштабирования разрешения. В этом варианте осуществления отдельные наборы коэффициентов фильтра можно обеспечивать для этих разных операций пост-фильтра. Преимущество состоит в том, что разные наборы можно оптимизировать для разных функций. Согласно варианту осуществления разные наборы кластеров можно задать для разных пост-фильтров 39a, b, и коэффициенты пост-фильтра для пост-фильтров можно обеспечить для кластеров, заданных для этого пост-фильтра 39a, b. Таким образом, фактически кластеры для комбинации первого и второго пост-фильтров 39a, 39b задают субкластеризации кластеров для отдельных пост-фильтров. Разные субкластеры в субкластеризации совместно используют один и тот же набор коэффициентов фильтра. Альтернативно, можно сначала определить субкластеры и затем объединить их в суперкластеры для выбранного пост-фильтра, причем субкластеры в каждом суперкластере совместно используют набор коэффициентов фильтра для выбранного пост-фильтра. В этом случае не требуется передавать отдельные наборы коэффициентов фильтра для разных субкластеров, что позволяет экономить полосу передачи.
На фиг.9 показан еще один вариант осуществления устройства сжатия для генерации такой совокупности наборов. В этом варианте осуществления устройства сжатия добавлены дополнительный блок 16a оценки параметров и пост-фильтр 600. Пост-фильтр 600 подключен между блоком 63 снятия сжатия с обратным квантованием и блоком 64 обратного масштабирования разрешения. Дополнительный блок 16a оценки параметров имеет входы, связанные с выходом блока 60 масштабирования разрешения и выходом блока 63 снятия сжатия с обратным квантованием, и выход, связанный с входом управления пост-фильтром 600 и мультиплексора 18.
В этом варианте осуществления дополнительный блок 16a оценки параметров служит для обеспечения наборов параметров управления для ослабления артефактов, обусловленных сжатием, тогда как блок 16 оценки параметров служит для обеспечения наборов параметров управления для ослабления оставшихся артефактов, в основном обусловленных снижением разрешения и повышением разрешения. Дополнительный блок 16a оценки параметров выбирает наборы параметров управления работой пост-фильтра, что уменьшает различие между изображением до сжатия блоком 61 сжатия с квантованием и после блока 63 снятия сжатия с обратным квантованием. Пост-фильтр 600 применяет операцию пост-фильтра, выбранную согласно этим наборам параметров управления, к изображению со снятым сжатием до передачи изображения на блок 62 обратного масштабирования разрешения. Мультиплексор 18 добавляет эти наборы параметров управления в поток, для использования пост-фильтрами устройства снятия сжатия.
Заметим, что эта часть фиг.9, за исключением блока 60 масштабирования разрешения, пост-фильтра 600, блока 62 обратного масштабирования разрешения и блока 16 оценки параметров, по существу, идентична устройству сжатия, показанному на фиг.1, причем вход блока 14 снятия сжатия образует вход изображения. Как показано, вариант осуществления, показанный на фиг.9, предусматривает добавление дополнительного слоя сжатия с соответствующей оценкой параметров после снятия сжатия. Как будет пояснено ниже, в каждом случае блок оценки параметров используется для вывода наборов параметров управления путем сравнения изображения до операции обработки со сжатием и после операции обработки со снятием сжатия, которая обратна этой операции обработки со сжатием. Наборы параметров управления выбираются для разных кластеров локальных конфигураций изображения.
Согласно фиг.9 в случае применения последовательных операций сжатия оценку параметров можно применять несколько раз, каждый раз для соответствующей операции сжатия. Хотя был показан пример, в котором операциями сжатия являются прореживание и квантование, можно использовать и другие операции сжатия. Согласно варианту осуществления операция сжатия или одна из операций сжатия, для которой используются пост-фильтрация и оценка параметров, может представлять собой сжатие с предсказанием, в котором пост-фильтрация применяется к изображению, представленному посредством указателей, например векторов движения, относительно опорного изображения или совокупности опорных изображений.
Выбор кластеров может осуществляться по отдельности разными блоками оценки параметров. В этом случае информация задания кластера будет включена в поток для всех наборов параметров управления. Это позволяет оптимизировать выбор кластера, пусть даже ценой использования увеличенной полосы для потока. В альтернативном варианте осуществления блоки оценки параметров совместно используют один и тот же выбор кластера. В этом варианте осуществления для этого достаточно включить совместно используемую информацию задания кластера для совокупности наборов параметров управления для последовательно применяемых операций пост-фильтрации. Это уменьшает использование полосы.
На фиг.10 показано применение к сжатию с предсказанием, в котором пост-фильтрация применяется к опорному изображению. Здесь пост-фильтрованные интракодированные изображения со снятым сжатием используются как опорные для сжатия и снятия сжатия с предсказанием. На фигуре показаны устройство сжатия и устройство снятия сжатия, каждое из которых содержит память 72, 74 для опорного изображения. Устройство сжатия содержит пост-фильтр 70, подключенный между выходом блока 14 сжатия и памятью 72. Память 72 устройства сжатия связана с входом блока 12 сжатия. Выход блока 16 оценки параметров связан с входом управления пост-фильтра 70, функция которого аналогична функции пост-фильтра 26 устройства снятия сжатия. В ходе работы в памяти 72 сохраняются выбранные изображения, полученные пост-фильтрацией согласно наборам коэффициентов фильтра, и блок 12 сжатия использует сохраненные изображения для кодирования других изображений применительно к векторам движения и необязательной остаточной информации относительно сохраненных изображений.
Аналогично, память 74 устройства снятия сжатия включена в контур обратной связи между выходом пост-фильтра 26 и входом блока 24 снятия сжатия. В ходе работы в памяти 74 сохраняются выбранные пост-фильтрованные изображения, и блок 24 снятия сжатия использует сохраненные изображения для декодирования других изображений, которые закодированы применительно к векторам движения и необязательной остаточной информации относительно сохраненных изображений. Таким образом, обеспечивается улучшенное опорное изображение для использования в сжатии и снятии сжатия с предсказанием. При сжатии и снятии сжатия с предсказанием предсказанное изображение можно предсказывать с использованием только одного опорного изображения, но, альтернативно, можно использовать предсказание на основании совокупности опорных изображений.
Описанные здесь способ и устройства позволяют ослаблять артефакты сжатия пост-обработкой после, по меньшей мере, частичного снятия сжатия с использованием коэффициентов пост-обработки, заданных устройством сжатия. Качество пост-обработки повышается с использованием разных наборов коэффициентов в разных позициях в изображении, выбранных под управлением контента изображения со снятым сжатием. Возможны многочисленные приложения, связывающие изображения низкого и высокого качества, например фотографирование на мобильном телефоне с хорошей встроенной камерой, но сохранение фотографии в более низком качестве + дополнительная информация, которая затем пересылается другу, который будет просматривать ее на своем телевизоре или ПК (высокой четкости).
Можно использовать разные оптимальные наборы фильтров для разных подгрупп изображений. Например, B-изображения может быть необходимо фильтровать иначе, чем I- и P-изображения. В этом случае сигнал обычно имеет, например, дополнительную информацию для группирования классов и соответствующих параметров фильтрации (фактический формат остается открытым, поскольку фильтры можно задавать разными способами, например алгоритмическое описание, содержащее процедуры для осуществления в нижележащей фильтрованной области) с тегами типа: B-изображение: кластер 1: коэффициент 1, коэффициент 2, …; кластер 2: коэффициент 3, коэффициент 4, …; кластер X; I-изображение: кластер Y: … Другие примеры структурированных кластеризаций можно осуществлять на параметрах сжатия, например разные наборы для высокого и низкого квантования или высокого и низкого движения и т.д.
Выше описан выбор кластеризации согласно различным критериям выбора, в том числе значениям пикселя, векторам движения и совместно значениям пикселя и векторам движения. Изобретение не ограничивается такими иллюстративными критериями выбора/классификации.
Например, другие критерии классификации для адаптивной фильтрации могут приводить к значительному снижению вычислительных затрат для процесса декодирования, даже при повышенном визуальном качестве. Это также уменьшает вычислительные затраты при кодировании и обеспечивает более стабильную производительность для классификации. Такая фильтрация базируется на гипотезе о том, что повышение качества пост-обработанных последовательностей в основном сосредоточено в областях изменяющегося градиента.
В предпочтительном варианте осуществления вычисляются значение горизонтального градиента и/или значение вертикального градиента, которые используются в процессе выбора. Блок выбора способен классифицировать информацию изображения относительно позиции путем классификации на основании значения горизонтального градиента и/или значения вертикального градиента.
Например, при выводе кластеров, адаптивных к сцене, на стороне кодера, вместо использования непосредственно окна с нормализованной апертурой (например, 5×5) в качестве основного шаблона для статистики кластеризации, значение горизонтального градиента ex и значение вертикального градиента ey вычисляются путем свертки каждого окна с двумя краевыми фильтрами Собеля (горизонтальным и вертикальным), заданными следующим образом:
Figure 00000002
и
Figure 00000003
.
В результате каждая апертура представляется вектором признака {ex, ey}. Затем на этих кластерах осуществляется алгоритм кластеризации, например, методом k-средних. На фиг.11 показано два типичных результата кластеризации для двух последовательностей. Крестики указывают центры кластера. Точки указывают результаты для большого количества точек.
Дополнительное преимущество, как выяснилось, состоит в том, что центры кластера полностью согласуются для разных последовательностей. Это позволяет задавать несколько профилей кластера независимо от последовательностей. Например, на фиг.12 показаны иллюстративные определения 5-кластерного профиля и 21-кластерного профиля. Определение этих профилей получается путем усреднения результатов автокластеризации нескольких последовательностей. Из этих двухмерных графиков следует, что центры кластера, выведенные методом k-средних для различных последовательностей, фактически совместно используют весьма сходные распределения, как показано на фиг.12. Крестики указывают позиции центров кластера. Это позволяет предварительно задавать центры кластера.
Поскольку профили кластеров можно заранее задавать и, таким образом, стандартизировать, больше не требуется передавать позиции центров кластера совместно с потоками. Поэтому только фильтры, адаптивные к сцене (или, в более общем случае, наборы параметров управления), передаются в качестве, например, дополнительной информации совместно с потоком. Заметим, что наборы параметров управления, например параметры фильтров, все же необходимо динамически генерировать для каждого кластера в ходе кодирования для отражения разных характеристик различных видеосигналов (с различными характеристиками сцены, настройками кодирования и т.д.).
Путем применения вышеописанной схемы экономия на декодере очевидна: выбор правильных кластеров значительно упрощается за счет использования только 2-мерных расстояний в пространстве признаков (вместо 5×5=25-мерных расстояний в пространстве признаков). Кроме того, в предпочтительном варианте осуществления с использованием заранее заданных профилей кластера классификацию можно реализовать, например, посредством заранее заданной 2-мерной поисковой таблицы T
T(ex,ey) = Class-Label,
где (ex, ey) - это значения градиента на пикселе (x,y) и T(ex,ey) непосредственно задает соответствующий указатель класса для данного профиля. Поэтому на стороне декодера вычислительные затраты для выбора кластера оказываются практически пренебрежимо малыми.
Другое преимущество состоит в более стабильных результатах классификации. Оказывается, что признаки градиента дают более визуально устойчивую классификацию локальных шаблонов, чем исходная апертура яркости, что приводит к большей визуальной привлекательности пост-обработанных последовательностей.
В случае применения заранее заданных профилей на градиентной основе дополнительные битовые затраты для дополнительной информации наполовину снижаются, поскольку не требуется передавать информацию центров кластера. Вычислительные затраты на стороне кодера также снижаются, поскольку автокластеризация не вычисляется, и осуществляется только оптимизация СКО.
На стороне декодера выбор правильных фильтров занимает наибольшее время вычисления. Предположим, мы используем N кластеров, тогда выбор фильтра требует в N раз больше вычислительных затрат, чем сама фильтрация. Путем применения схемы на градиентной основе выбор фильтров предусматривает только собелеву свертку и поиск в таблице на предмет правильного кластера. Процедура выбора обычно занимает менее 1/6 времени вычисления для процесса фильтрации. Это позволяет осуществлять пост-фильтрацию на стороне декодера в реальном времени.
Визуальное качество в случае применения способа выбора на градиентной основе оказывается даже на 0,5~0,7 дБ лучше, чем в случае применения способов на основе значений пикселя. На фиг.13 показан пример, в котором отображаются обрезанные примеры так называемой последовательности Шилдса. Повышенное визуальное качество можно объяснить тем, что информация градиента является лучшим представлением, чем необработанная яркость, и близость по координате X-Y градиента более пригодна для определения классов, чем метрика СКО в M×M-мерном яркостном пространстве.
Альтернативно или дополнительно, простую кластеризацию также можно осуществлять на основании текстуры. Текстуру зачастую просто обнаружить с помощью малого количества параметров, например
1. стандартного отклонения, указывающего, насколько случайно изменяется яркость,
2. скользящего кумулятивного градиента, который является одной из возможных мер того, насколько часто шаблон повышается и понижается, и
3. среднего цвета.
В то время как при выборе градиентного типа задавалось количество центров кластера в двухмерном пространстве (см. фиг.11 и 12), кластеры текстуры можно задать центральными точками кластера в трехмерном пространстве, тремя измерениями которого являются, например, стандартное отклонение, скользящий кумулятивный градиент и средний цвет. Одна точка может соответствовать, например, голубому небу (стандартное отклонение мало, кумулятивный градиент мал, средний цвет - голубой). Другая точка может соответствовать траве.
В еще одном варианте осуществления способа и устройства, отвечающих изобретению, выбор осуществляется в иерархической структуре.
До фактической процедуры классификации выполняется первая грубая классификация наиболее пригодной формы для выбора, например, следует ли проводить классификацию, на основании значений яркости, векторов движения, градиентов, текстуры или любой комбинации таких критериев. После принятия первого иерархического принятия решения осуществляется процедура выбора.
Иерархическое принятие решения может осуществляться для любой части файла, для изображения, для части изображения, последовательности изображений. Кроме того, критерий выбора может зависеть от типа данных изображения, например зависеть от типа кадра.
На фиг.14 схематически показана иерархическая структура, в которой выбираются различные возможные способы выбора.
Сначала, на этапе 110, входные данные изображения или части изображения подвергаются краевой фильтрации в блоке 110 предварительного выбора. В ходе предварительного выбора производится определение, имеет ли шаблон в основном краевой символ или в основном является текстурой.
Если анализ показывает, что изображение или часть изображения в основном имеют краевой символ, то данные поступают на блок 111 окончательного выбора, в котором выбор кластера и определение наборов параметров управления для кластеров осуществляются на основании градиента ex, ey, см. фиг.11 и 12. Если анализ показывает, что шаблон в основном является текстурой, то данные поступают на блок 112 окончательного выбора, в котором выбор кластера и определение наборов параметров управления для кластеров осуществляются на основании параметров текстуры.
На фиг.15a - 15c показан еще один вариант осуществления изобретения.
Во многих методах сжатия сжатие осуществляется на блочной основе. После блока снятия сжатия могут возникать краевые ошибки, т.е. края блоков могут быть видны. Разбиение и обработка изображения на блочной основе приводят к ошибкам, известным как артефакты разбиения на блоки. Эти артефакты разбиения на блоки ухудшают воспринимаемое качество изображения, в особенности на низких битовых скоростях. Использование фильтра снятия разбиения на блоки уменьшает такие ошибки разбиения на блоки. Согласно стандарту H.264, известно применение фильтра снятия разбиения на блоки на декодере, при котором на стороне декодера производится классификация на основании краевых условий. Классификация используется для выбора одного из нескольких возможных стандартных заранее фиксированных фильтров разбиения на блоки. Разные фильтры фиксируются самостоятельно, и выбор фильтров на стороне декодера можно осуществлять без какой-либо дополнительной информации от кодера.
На фиг.15a показан вариант осуществления изобретения. На стороне кодера входной сигнал 150 сжимается на блоке сжатия 152 для обеспечения сжатого сигнала 151. Сжатый сигнал подвергается снятию сжатия на блоке 154 снятия сжатия. После снятия сжатия кластеры C формируются в зависимости от признаков, например позиции в блоке, размера краевой ступеньки и режимов кодирования соседних блоков. Для каждого из кластеров адаптивные фильтры с адаптивными параметрами фильтра F(C) идентифицируются в зависимости от позиции в блоке, и используются адаптивные фильтры с параметрами фильтра F(C). Выходной сигнал фильтров снятия разбиения на блоки поступает на компаратор 154, который сравнивает изображение, подвергнутое сжатию, снятию сжатия и фильтрации, с исходным изображением. Компаратор обеспечивает сигнал ошибки E. Классификация (C) и параметры фильтра F(C) для различных классов адаптированы для минимизации ошибки E. Фильтр снятия разбиения на блоки можно использовать в цикле и вне цикла, на фиг.15a показан пример использования фильтра вне цикла, т.е. после полного снятия сжатия. Фильтр снятия разбиения на блоки также можно использовать в цикле.
На фиг.15b и 15c показано изобретение на стороне декодера.
ДПД означает декодер переменной длины, ОК - обратное квантование, ОДКП - обратное ДКП, DF - фильтр снятия разбиения на блоки и КД - компенсация движения. Работа фильтра определяется данными C (классификацией) и F(C), т.е. наборами параметров фильтра для разных классов. Согласно фиг.15b схема обработки способна применять фильтр снятия разбиения на блоки DF вне цикла, согласно фиг.15c фильтр снятия разбиения на блоки DF применяется в цикле.
В простой форме этого варианта осуществления используются те же критерии выбора фильтров, что и в известном фильтре снятия разбиения на блоки, но фиксированные фильтры заменены фильтрами с адаптивными параметрами. В этой простой форме известные коэффициенты определения классификации на стороне декодера являются просто стандартными, но параметры фильтра являются адаптивными.
Процедура выбора начинается, например, с присвоения параметра граничной интенсивности краям каждого подблока яркости 4×4. Граничная интенсивность определяется исключительно режимом и условиями кодирования каждого подблока и его соседних блоков (например, интер или интра, кодированный остаток или нет, размер векторов движения) и производит первый выбор между сильной фильтрацией к краям, которые, вероятно, обусловлены артефактами разбиения на блоки, нормальной фильтрацией к краям, которые, должно быть, обусловлены разбиением на блоки, и отсутствием фильтрации к краям, которые, вероятно, связаны с контентом. После этого начального разделения краевая активность - т.е. условия неравенства по абсолютной разности между значениями пикселя на обеих сторонах края - определяет, применять ли фильтры. На фиг.16 показаны иллюстративные условия, используемые для принятия решения, следует ли фильтровать в режиме нормальной фильтрации пиксели p0 и q0, соседствующие с краем подблока BE. Пиксель q0 фильтруется только при выполнении условий (1) и (2). Аналогично, p0 фильтруется только при выполнении условий (1) и (3). Согласно известному способу набор фиксированных фильтров из фильтра снятия разбиения на блоки может выбираться, причем все имеют одинаковую структуру. Они являются 1-мерными фильтрами с конечной импульсной характеристикой (КИХ), с максимальным смещением в 2 отвода относительно пикселя, подлежащего фильтрации. Разные фиксированные фильтры применяются к пикселям с разным расстоянием до края блока. Пиксели, которые дальше от края, с меньшей вероятностью подвержены артефактам разбиения на блоки и поэтому будут подвергаться более слабой фильтрации. Таким образом, фильтр снятия разбиения на блоки очень рудиментарным образом учитывает изменение статистики с относительной позицией в блочном преобразовании. Фильтрация проводится на месте на уровне макроблоков, при этом сначала осуществляется горизонтальная фильтрация вертикальных краев, а затем вертикальная фильтрация горизонтальных краев.
Процедуру определения, какие фильтры применять, можно рассматривать как процесс классификации и можно осуществлять на стороне декодера без необходимости в какой-либо дополнительной информации. Преимущество состоит в том, что не нужно передавать никакой информации о классификации и на стороне декодера можно использовать известные схемы классификации. Идея изобретения сводится к тому, что вместо использования только стандартных фиксированных фильтров на стороне декодера стандартные фильтры заменяются адаптивными фильтрами и для каждого класса устанавливается оптимальный набор параметров. Вычислительная мощность для классификации на стороне декодера не изменяется, что является преимуществом.
В простом варианте осуществления известные коэффициенты на стороне декодера просто копируются, но параметры фильтра являются адаптивными, в более развитых вариантах осуществления коэффициенты определения для выбора класса также являются адаптивными, например, за счет того, что условия 1 и 2 являются адаптивными.
Согласно варианту осуществления способ реализован в двухпроводной процедуре. На первом этапе алгоритм обрабатывает все макроблоки, чтобы определить, какой тип фильтра подлежит применению к каждому пикселю.
В следующем проходе все пиксели, которые подвергаются действию конкретного фильтра, собираются, и оптимальные коэффициенты фильтра оцениваются в смысле СКО (среднеквадратической ошибки). Этот процесс повторяется для всех фильтров. Однако поскольку фильтрация осуществляется на месте, опорный кадр предпочтительно обновляется между ними. Другими словами, каждый раз после вычисления коэффициентов фильтра для класса пикселей фильтр применяется к текущему опорному кадру до продолжения определения коэффициентов для следующего фильтра.
Если фильтр, адаптивный к сцене, работает в цикле, важно, чтобы упорядочение процесса фильтрации на стороне кодера и декодера было одинаковым. Согласно варианту осуществления это достигается фиксацией порядка применения фильтров. Простое развитие до такой реализации состоит в определении оптимального порядка фильтрации на стороне кодера и сигнализации порядка фильтра с потоком, тогда выход 157 будет равен F(C), т.е. коэффициентам фильтра и S(F), т.е. порядку, в котором нужно применять фильтры. В силу фильтрации на месте операция фильтрации не изменяется, и изменение порядка фильтрации может повысить производительность. Во избежание нелинейностей в результате внутрицикловой операции оптимальные коэффициенты фильтра оцениваются покадрово.
Во избежание нелинейностей в результате внутрицикловой операции оптимальные коэффициенты фильтра оцениваются покадрово. По сравнению с эквивалентным пост-фильтром, внутрицикловая операция приводит к дополнительному снижению битовой скорости на 1-1.5%. Это можно объяснить тем фактом, что фильтр улучшает не только конечное изображение, но и опорное изображение, обеспечивая более высокое качество для компенсации движения. Еще одно преимущество внутрицикловой фильтрации состоит в том, что она гарантирует определенный уровень производительности, хотя пост-фильтрация обычно является необязательной. Выяснилось, что, по сравнению с алгоритмом фильтра снятия разбиения на блоки, который делает выбор из набора заранее заданных фильтров с фиксированными коэффициентами, на основании типа края и выбранного режима кодирования, производительность снятия разбиения на блоки путем оценивания оптимальных коэффициентов, связанных с каждым из этих фильтров, и сигнализации их с видеопотоком составляла порядка 5-10%. На фиг.17 показаны измерения снижения битовой скорости с использованием адаптивных активных фильтров по сравнению с фиксированными фильтрами разбиения на блоки согласно стандарту H.264 с использованием стандартных методов классификации с использованием алгоритма классификации, предложенного Листом (List) и др. в IEEE transaction on Circuits and Systems for Video Technology 13(7): 614-619. Кривые C и D относятся к разным выборам фиксированных indexA и indexB, см. фиг.16. Преимущество изобретения очевидно, использование адаптивных коэффициентов фильтра вместо фиксированных фильтров приводит к значительному снижению битовой скорости.
Как объяснено выше, дополнительные усовершенствования можно получить путем оптимизации порядка применения фильтра.
Дополнительные усовершенствования получаются путем адаптивной оптимизации классификации, например, чтобы классификация адаптивных активных фильтров зависела от относительной позиции в блочном преобразовании. На фиг.17 показан результат для варианта осуществления, в котором критерии классификации стандартных фиксированных фильтров снятия разбиения на блоки не были оптимизированы для изобретения, но просто скопированы. Довольно значительный эффект в снижении битовой скорости говорит о том, что еще остается пространство для усовершенствования за счет дополнительной оптимизации классификации и/или критериев выбора фильтра.
Вышеописанный вариант осуществления классификации на блочной основе является примером более широкой группы вариантов осуществления, в которых классификация и/или фильтрация сделана зависящей от положения, в данном случае положения в блоке.
Другие примеры в упомянутой группе вариантов осуществления таковы:
Производить классификацию в зависимости от позиции в изображении, например вблизи границы используется другое количество классов и другой, упрощенный, набор адаптивных фильтров, по сравнению с центральными областями, в которых используется большее количество классов и/или более сложные фильтры. Это позволяет экономить на данных, подлежащих передаче.
Сделать классификацию объектно-зависимой, например область неба может использовать меньше фильтров или менее сложные фильтры. Согласно варианту осуществления фильтры адаптируются к тому, насколько центральными они являются в лицевой сегментированной области (например, вблизи области тени на границе лица). Или же в шаблоне травы или кирпича разные фильтры применяются на краях травинки (для которых может потребоваться повышение резкости) против внутренних областей [и декодер может быть способен повторно оценивать, например, края сегмента кирпича от внутренних областей кирпича] во всей области травы, подлежащей повышению резкости.
Во всех вариантах осуществления классификация, выше также именуемая кластеризацией, осуществляется на данных, адаптируемые фильтры или, в более общем случае, процессы пост-обработки генерируются для каждого класса, и параметры фильтров или, в более общем случае, пост-обработка, на стороне кодера, изменяются и применяются к соответствующим классам данных и оптимизируются для создания, по сравнению с исходным изображением, низкого или минимального искажения или, в более общем случае, оптимальной или увеличенной меры качества, в отношении ослабления артефактов (сжатия) для позиций в соответствующем одном из классов.
Декодер выдает информацию (явно или неявно) для регенерации классификации, используемой на кодере, и параметры для фильтров для кластеров или классов передаются декодеру и применяются на декодере. Как было объяснено, классификация может следовать многими путями, на основании разных концепций (значения, края, движения, шаблона, положения, а также комбинаций таких концепций). Еще один пример основания для классификации состоит в осуществлении классификации в зависимости от выбора сжатия для локальной области. Опять же, на декодирующей стороне известны также факторы, как: какое квантование использовалось, каково движение блока (и, возможно, ошибки предсказания или видимость сниженной ошибки) и т.д. и, опять же, фильтры могут отличаться в зависимости от тех параметров (например, для высокого квантования с использованием фильтра, который смещается/оптимизируется в большей степени в сторону снятия разбиения на блоки и в меньшей степени в сторону повышения резкости).
На фиг.18 показан еще один вариант осуществления. На фиг.18 схематически показаны два окна I и II вокруг пикселя. Окно демонстрирует определенный шаблон. Окно II можно рассматривать как эквивалент окна I, подвергнутого "отражению". Иными словами, при сравнении двух окон наблюдается определенный тип симметрии между двумя окнами.
В этих вариантах осуществления изобретения предпочтительно использовать законы симметрии.
В рамках пост-фильтрации на основе классификации классификация часто основывается на стратегии автокластеризации, в которой пиксели классифицируются с использованием окон вокруг пикселей, например окон n×n и среднего значения в окне. Это весьма гибкий метод классификации, поскольку можно заранее задать любое количество классов. Однако во многих приложениях полное количество классов, которое можно использовать, ограничено, по причине ограничения по ширине полосы и/или емкости хранилища. При ограниченных количествах классов может оказаться очень трудным захватить большое разнообразие локальных шаблонов изображения, возникающих в одном (или нескольких) кадрах. Один способ сокращения этого большого разнообразия состоит в нормализации окон вокруг пикселей в отношении их ориентации до классификации и фактической фильтрации. Эти окна образуют один класс и могут подвергаться пост-фильтрации с помощью одного и того же фильтра. Таким образом, одно и то же количество классов может представлять значительно более широкое разнообразие шаблонов изображения. Помимо вращения можно рассматривать и другие типы геометрической нормализации, например сдвиг и зеркальное отображение.
На фиг.19 представлено несколько шаблонов, которые фактически эквивалентны, но повернуты на 90, 180 или 270 градусов.
На фиг.20 показаны одинаковые или сходные шаблоны, являющиеся отраженными версиями друг друга, на фиг.21 показаны шаблоны, которые являются сдвинутыми версиями друг друга. Гипотеза, на которой базируется вариант осуществления, состоит в том, что различные типы симметрии используются для сокращения этого большого разнообразия путем нормализации окон в отношении их ориентации до классификации и фактической фильтрации. Эти окна образуют один класс и могут подвергаться пост-фильтрации с помощью одного и того же фильтра. Таким образом, одно и то же количество классов может представлять значительно более широкое разнообразие шаблонов изображения. Помимо вращения, показанного на фиг.19, можно рассматривать и другие типы геометрической нормализации, например сдвиг (фиг.21) и зеркальное отображение (фиг.20).
В таком варианте осуществления блок оценки параметров способен осуществлять операцию симметрии на классификации.
Ниже приведен пример, иллюстрирующий, как можно генерировать геометрически инвариантную классификацию, чтобы получить меньшее количество классов. Описание дано в контексте кластеризации, описанной выше, с использованием окон n×n вокруг пикселей и классификации путем минимизации суммы квадратов. Однако очевидно, что подобные рассуждения можно также применять для других типов методов классификации.
Иллюстративная процедура содержит:
этап 1: собрать выборки окон из сжатых кадров;
этап 2: для каждой выборки x окна вывести ее преобразованные версии xi, соответствующие 3 шаблонам вращения, 4 шаблонам отражения и шаблонам сдвига (a это размер апертуры). Пусть размер апертуры a=5, это будет означать, что нужно сгенерировать всего N=3+4+8=15 дополнительных преобразованных шаблонов;
этап 3: расширить метрику расстояния, используемую в алгоритме кластеризации. Если нужно вычислить расстояние между данной выборкой x и центром y кластера, вычисляем расстояние между каждой преобразованной версией выборки x и y и затем выбираем минимальное расстояние;
этап 4: применяя вышеописанный модифицированный алгоритм методом k-средних получаем количество центров кластера (класса), которые являются оптимальными (в смысле СКО) в отношении геометрически инвариантных шаблонов. Однако в ходе генерации фильтра преобразованная версия каждой выборки x, которая приводит к минимальному расстоянию до центра кластера, будет использоваться для оптимизации коэффициентов фильтра.
Выведенные центры кластера (класса) и соответствующие коэффициенты фильтра будут передаваться на сторону декодера для пост-обработки. На стороне декодера для каждой позиции пикселя, кроме использования базисного вектора признака для классификации, нужно генерировать несколько вариантов (как на этапе 2), каждый из которых нужно сравнивать с центрами кластера (класса) для вывода минимального расстояния между всеми вариантами и центрами кластера. Затем соответствующие коэффициенты фильтра выбираются и применяются к выбранному преобразованному варианту. Заметим, что фильтрованные варианты необходимо преобразовывать обратно для применения к декодированному кадру.
Хотя вышеприведенный пример базируется на примере использования минимизации расстояний, его можно легко распространить, например, на стратегию классификации на градиентной основе, например, схематически показанную на фиг.11 и 12. В этом случае после этапа 2 для каждого кандидата преобразованного шаблона соответствующий вектор признака на градиентной основе нужно вычислить и использовать для кластеризации.
Заметим, что предложенный способ также можно применять к внутрицикловой фильтрации.
Были получены экспериментальные результаты.
Вышеописанный вариант осуществления был реализован в виде программного обеспечения на основе H.264 и экспериментирования с последовательностями SD-разрешения, с набором параметров квантования QP от 28 до 34. Геометрически инвариантная фильтрация была реализована как дополнительная опция признака для внутрицикловой пост-фильтрации. Мы измерили коэффициент усиления PSNR для каждого кадра, и для большинства кадров наблюдается коэффициент усиления от 0,03 дБ до 0,06 дБ по сравнению с отсутствием использования геометрической инвариантности (при том же количестве классов). Для некоторых кадров достигнут коэффициент усиления до 0,1 дБ. Поскольку добавление геометрической инвариантности не требует дополнительного увеличения битовой скорости, геометрическая инвариантность обеспечивает дополнительное усовершенствование существующей внутрицикловой фильтрации, без задержек.
В наших экспериментах мы также обратили внимание на то, что для некоторых кадров обеспечение возможности геометрически инвариантной фильтрации может обеспечивать отрицательный эффект в отношении PSNR. Это может быть результатом недостаточного разнообразия шаблонов в кадре, и использование геометрической инвариантности не может положительно влиять на качество. Однако, поскольку классификация и внутрицикловая фильтрация осуществляются на стороне кодера, кодер может принять решение запретить использование геометрической инвариантности для текущего кадра, если возникает такой отрицательный коэффициент усиления. Это означает, что один дополнительный "бит сигнала" должен передаваться для каждого кадра для указания, используется ли геометрическая инвариантность. По сравнению с полной битовой скоростью, это, очевидно, является пренебрежимо малой служебной нагрузкой, хотя средний коэффициент усиления возрастает.
2. Переключение на всех режимах преобразования (например, 3 режимах вращения, 4 режимах отражения и нескольких режимах сдвига) может не обеспечивать оптимальной производительности в отношении PSNR. Например, для последовательности Вертолет мы нашли, что в среднем использование 2 режимов зеркального отображения (вертикальное и горизонтальное транспонирование) и режимов сдвига даст наилучшую производительность. Однако, в зависимости от последовательности, можно принимать решение на переключение на определенные режимы с отключением других. Такая тонкая настройка эквивалентна использованию геометрической инвариантности или нет.
Преобразование, инвариантное к симметрии (отражение, сдвиг, вращение), является подклассом большого класса преобразований, инвариантных относительно шаблона.
Другой простой операцией, инвариантной относительно шаблона, является масштабирование.
Другие примеры шаблонов, демонстрирующих определенную инвариантность к преобразованиям, показаны на фиг.22a-22c.
Пример A: не точно подобные, но близкие к червеобразными структуры: можно производить преобразование "неточного вращения", например: классифицировать пиксели в блоке на темные и яркие [например, выше среднего для блока], и использовать "код ориентации цепи" для проверки подобия: Например: Если направленное изменение происходит в том же направлении компаса, и длина отличается не более чем на 1 пиксель для каждой ориентированной последовательности пикселей (например, 2 против 3-пиксельного начального сегмента), шаблон можно рассматривать аналогично и обрабатывать аналогичным фильтром (например, с определенным размером ядра размывания).
Пример B: можно также нормализовать (значение серого) высоту края (хотя в некоторых случаях фильтра [например, фильтр реализует изменение краевой интенсивности] может быть лучше адаптировать фильтр также к высоте края, но в этих случаях можно, например, классифицировать высоту краевой ступеньки в ряде подклассов (сильный, средний, низкий край).
Пример C представляет собой другой пример, который можно использовать, например, для обработки (псевдо-) периодических текстур (например, с нелинейной функцией, которая оставляет свои верхние части значения серого, но зависит от их долин [может, например, углублять темные области между травинками]).
Шаблон иллюстративно моделируется [это может быть подогнано к нижележащим данным] в качестве синусоидальной дифракционной решетки определенной высоты h [значение серости/яркости/цвета самого яркого пикселя - например, 240- минус наиболее темного -например, 10-], наклона альфа (который приводит к расстоянию D между вершинами), и он имеет определенную пространственную ориентацию бета в блоке (символически показанную здесь как 45 градусов, но это нельзя показать одновременно на графике значения серого в поперечном сечении, поскольку он имеет только одно пространственное измерение).
Все шаблоны со значениями альфа, h, D, которые не слишком сильно отличаются, можно затем классифицировать в одном и том же классе текстур, или, опять же, некоторые подклассы можно создать в возможном диапазоне значений [линейно или нелинейно], и затем параметризованные фильтры можно обучать f(h, alfa); это можно делать, например, проверяя, как коэффициенты фильтра изменяются по разным классам диапазона (h, alfa), и моделируя их многочленами.
На фиг.23 схематически показан сигнал задания изображения согласно изобретению. Сигнал задания изображения содержит информацию изображения, СД в этом примере означает "сжатые данные", которая задает контент изображения;
совокупность наборов параметров управления, задающих параметры управления схемы обработки изображения для пост-обработки упомянутого контента на соответствующих позициях в изображении, в этом примере параметры С задания класса и наборы параметров для каждого класса F(C), например наборы коэффициентов фильтра.
Параметры задания класса могут иметь различные формы в зависимости от пути, выбранные для задания класса. Параметры задания класса могут указывать, как задаются классы (по значению, краю, шаблону, на блочной основе, по вектору движения и т.д.), или могут иметь параметры, непосредственно задающие центры кластера (см. фиг.12). В некоторых вариантах осуществления параметры задания класса могут отсутствовать, например, если используется фиксированный способ для задания классов на кодере и декодере.
Наборы параметров для каждого набора могут представлять собой коэффициенты фильтра. Наборы параметров можно задавать в виде абсолютных значений, например точного значения каждого параметра, или в виде относительных значений, например как изменения параметров в наборе параметров по сравнению с предыдущими значениями.
Согласно вариантам осуществления сигнал задания изображения может содержать информацию о различных отдельных операциях, каждая из которых имеет отдельную классификацию и наборы параметров для классов. Например, внутрицикловая операция снятия разбиения на блоки может сопровождаться дополнительной обработкой на основании кластеризации на градиентной основе в изображении после цикла декодирования. Для каждого из двух упомянутых этапов процесса информация о классификации и наборах коэффициентов для различных классов может присутствовать в сигнале задания изображения. Каждая классификация базируется на отдельном принципе, и коэффициенты также различны, поэтому информация будет различаться.
Данные задания класса и наборы параметров можно обеспечивать любым пригодным способом, например в виде заголовка, с помощью флагов или как отдельный сигнал.
Изобретение изложено в формуле изобретения. Используемый здесь термин "содержащий" не исключает наличия других элементов или этапов, употребление названия элемента в единственном числе не исключает наличия совокупности таких элементов, и один процессор или другое устройство может выполнять функции нескольких средств, упомянутых в формуле изобретения. Термин "схема" охватывает программируемые схемы, запрограммированные на осуществление функции схемы. Условные обозначения в формуле изобретения не следует рассматривать в порядке ограничения объема.
Изобретение можно кратко описать следующим образом.
Кластеры пикселей задаются для использования при сжатии и снятии сжатия изображения. Информация изображения, используемая для задания кластеров, может включать в себя значения пикселя в заранее определенных позициях относительно пикселя или соответствующие векторы движения, градиенты, текстуру и т.д. В ходе сжатия изображений информация изображения относительно пикселей исследуется для определения кластера, которому он принадлежит. Таким образом, пиксели можно классифицировать согласно кластеру для их информации изображения. Согласно варианту осуществления определения кластеров выбираются динамически, в зависимости от контента изображения. Для каждого кластера набор параметров управления вычисляется для операции пост-обработки, например коэффициенты фильтра для фильтрации или статистические данные для локальной генерации текстуры. Набор параметров управления выбирается в зависимости от контента изображения, поэтому когда операция пост-обработки применяется к изображению после снятия сжатия, она будет повышать качество изображения для пикселей, которые классифицируются как принадлежащие кластеру. Сжатое изображение и наборы параметров управления передаются на устройство снятия сжатия. После снятия сжатия информация изображения, которая представляет изображение со снятым сжатием, исследуется для классификации пикселей согласно кластерам, и разные наборы параметров управления для выбранных кластеров используются для управления пост-обработкой в положениях пикселей.

Claims (14)

1. Устройство декомпрессии, содержащее
- вход или входы (20) для приема информации изображения и совокупности наборов параметров управления, причем информация изображения задает контент изображения,
- память (36) для сохранения принятой совокупности наборов параметров управления,
- блок декомпрессии (24), конфигурированный для, по меньшей мере, частичной декомпрессии информации изображения,
- блок выбора (32), конфигурированный для классифицирования, для каждого из совокупности пикселей в изображении, пиксели, и выбора соответствующего одного из принятой совокупности наборов параметров управления в зависимости от классификаций для пикселей,
- схему обработки изображения (39), конфигурированную для выполнения пост-обработки, по меньшей мере, частично, информации декомпрессионного изображения, с использованием соответствующих выбранных наборов параметров управления для классифицированных пикселей из памяти (36) для управления пост-обработкой для пикселей в изображении.
2. Устройство декомпрессии по п.1, содержащее опорную память (74) для сохранения опорного изображения для использования в декомпрессии предсказательно сжатого изображения, причем опорная память (74) имеет вход, связанный с выходом процессора изображения для сохранения пост-обработанного изображения для использования в качестве опорного изображения.
3. Устройство декомпрессии по п.1, в котором блок выбора (32) конфигурирован для классифицирования совокупности пикселей в изображении путем классификации вектора, содержащего значения пикселя в изображении в заранее определенных относительных положениях относительно соответствующего пикселя, и выбора соответствующего одного из принятой совокупности наборов параметров управления в зависимости от классификаций для вектора.
4. Устройство декомпрессии по п.1, в котором блок выбора (32) конфигурирован для классифицирования совокупности пикселей в изображении путем классификации вектора, содержащего векторы движения, характеризующие движение между изображением и соседним изображением в видеопотоке в областях в изображении в заранее определенных относительных положениях относительно соответствующего пикселя, для выбора соответствующего одного из принятой совокупности наборов параметров управления в зависимости от классификаций для вектора.
5. Устройство декомпрессии по п.1, в котором блок выбора (32) конфигурирован для классификации совокупности пикселей в изображении путем классификации контента текстуры изображения в соответствующем окне относительно пикселя и выбора соответствующего одного из принятой совокупности наборов параметров управления в зависимости от классификаций для текстуры.
6. Устройство декомпрессии по п.1, в котором блок выбора (32) конфигурирован для классификации совокупности пикселей в изображении путем классификации на основании значения горизонтального градиента и/или значения вертикального градиента и выбора соответствующего одного из принятой совокупности наборов параметров управления в зависимости от классификаций горизонтального и/или вертикального градиента.
7. Устройство декомпрессии по п.1, в котором сжатие осуществляется на блочной основе, и блок выбора (32) конфигурирован для классифицирования совокупности позиций пикселя в изображении, путем классификации относительно позиции в блоке и краевой активности и выбора соответствующего одного из принятой совокупности наборов параметров управления в зависимости от классификаций позиции в блоке и краевой активности.
8. Устройство сжатия, содержащее
- вход (10) изображения для приема входного сигнала, который задает входное изображение,
- блок сжатия сигнала изображения (12) с входом блока сжатия, связанным с входом (10) изображения, и выходом блока сжатия для, по меньшей мере, частичного сжатия изображения,
- блок оценки параметров (16) с входом связанным с входом изображения, конфигурированный для классифицирования пикселей в изображении на соответствующие классы, на основании контента изображения в соответствующем окне относительно пикселя, и вычисления совокупности наборов параметров управления, каждый из которых соответствует одному из классов, на основании сравнения сжатого изображения и входного изображения, задающих операцию постобработки для ослабления артефактов сжатия для пикселей в соответствующем одном из классов.
9. Устройство сжатия по п.8, в котором определения классов содержат векторы кластеров, содержащие векторы движения для конфигураций относительных положений пикселя.
10. Устройство сжатия по п.8, в котором определения классов содержат значение горизонтального градиента и/или значение вертикального градиента для конфигураций относительных положений пикселя.
11. Устройство сжатия по п.8, в котором определения классов содержат положение в блоке и краевую активность, и наборы параметров представляют собой наборы параметров фильтра снятия разбиения на блоки.
12. Устройство сжатия по п.8, содержащее блок декомпрессии (14), конфигурированный для приема сжатого сигнала изображения с выхода блока сжатия, при этом блок (16) оценки параметров имеет дополнительный вход, связанный с блоком декомпрессии для приема сигнала декомпрессионного изображения, причем блок (16) оценки параметров конфигурирован для выбора наборов параметров в зависимости от различия между входным изображением и декомпрессионным изображением, заданным сигналом декомпрессионного изображения.
13. Способ декомпрессии изображения, причем способ содержит этапы, на которых
- принимают информацию изображения и наборы параметров управления, причем информация изображения задает контент изображения,
- сохраняют совокупность наборов параметров управления,
- по меньшей мере, частично осуществляют декомпрессию информации изображения,
- классифицируют каждый из совокупности пикселей в изображении,
- выбирают соответствующий один из совокупности наборов параметров управления в зависимости от классификаций для пикселей,
- подвергают пост-обработке, по меньшей мере, частично, информацию декомпрессионного изображения, с использованием соответствующих выбранных из принятых наборов параметров управления для упомянутых пикселей в изображении из памяти для управления пост-обработкой для упомянутых пикселей в изображении.
14. Способ сжатия изображения содержит этапы, на которых
- принимают входной сигнал, который задает входное изображение,
- сжимают входной сигнал,
- классифицируют позиции в изображении на соответствующие классы, на основании контента изображения в соответствующем окне относительно пикселя,
- вычисляют совокупность наборов параметров управления, каждый из которых соответствует одному из классов, задающих операцию пост-обработки для ослабления артефактов сжатия для пикселей в соответствующем одном из классов.
RU2009127749/07A 2006-12-18 2007-12-11 Сжатие и снятие сжатия изображения RU2461977C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP06126324 2006-12-18
EP06126324.0 2006-12-18

Publications (2)

Publication Number Publication Date
RU2009127749A RU2009127749A (ru) 2011-01-27
RU2461977C2 true RU2461977C2 (ru) 2012-09-20

Family

ID=39400417

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2009127749/07A RU2461977C2 (ru) 2006-12-18 2007-12-11 Сжатие и снятие сжатия изображения

Country Status (12)

Country Link
US (2) US8582666B2 (ru)
EP (1) EP2123051B1 (ru)
JP (1) JP2010514246A (ru)
KR (1) KR101545005B1 (ru)
CN (1) CN101563926B (ru)
AT (1) ATE488096T1 (ru)
DE (1) DE602007010514D1 (ru)
ES (1) ES2356023T3 (ru)
MX (1) MX2009006404A (ru)
PL (1) PL2123051T3 (ru)
RU (1) RU2461977C2 (ru)
WO (1) WO2008075247A1 (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2628494C1 (ru) * 2015-02-11 2017-08-17 Сяоми Инк. Способ и устройство для генерирования фильтра изображения
RU2661763C2 (ru) * 2014-05-14 2018-07-19 Интел Корпорейшн Использование межкадровой когерентности в архитектуре построения изображений с сортировкой примитивов на промежуточном этапе

Families Citing this family (110)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7974485B1 (en) * 2005-10-27 2011-07-05 Nvidia Corporation Split-frame post-processing in a programmable video pipeline
WO2008123823A1 (en) * 2007-04-04 2008-10-16 Telefonaktiebolaget Lm Ericsson (Publ) Vector-based image processing
EP2003896A1 (en) * 2007-06-12 2008-12-17 Panasonic Corporation Statistical image enhancement
US8848794B2 (en) * 2007-12-18 2014-09-30 Humax Holdings Co., Ltd. Method and device for video coding and decoding
JP5137687B2 (ja) * 2008-05-23 2013-02-06 キヤノン株式会社 復号装置及び復号方法、プログラム
US8625681B2 (en) * 2008-07-09 2014-01-07 Intel Corporation Rate-distortion cost reducing video encoding techniques
US10123050B2 (en) 2008-07-11 2018-11-06 Qualcomm Incorporated Filtering video data using a plurality of filters
WO2010007590A2 (en) * 2008-07-17 2010-01-21 Amimon Ltd. Methods circuits and systems for transmission and reconstruction of a video block
EP2161936A1 (en) * 2008-09-04 2010-03-10 Panasonic Corporation Locally adaptive filters for video coding controlled by local correlation data
CN102246165B (zh) * 2008-11-12 2014-10-29 诺基亚公司 利用压缩梯度直方图来代表和标识特征描述符的方法和装置
US8831090B2 (en) * 2008-11-18 2014-09-09 Avigilon Corporation Method, system and apparatus for image capture, analysis and transmission
WO2010065060A1 (en) * 2008-11-25 2010-06-10 Thomson Licensing Methods and apparatus for sparsity-based de-artifact filtering for video encoding and decoding
US9143803B2 (en) 2009-01-15 2015-09-22 Qualcomm Incorporated Filter prediction based on activity metrics in video coding
KR20100095992A (ko) 2009-02-23 2010-09-01 한국과학기술원 비디오 부호화에서의 분할 블록 부호화 방법, 비디오 복호화에서의 분할 블록 복호화 방법 및 이를 구현하는 기록매체
EP2226760A1 (en) * 2009-03-03 2010-09-08 Sony Corporation Method and apparatus for reducing compression artifacts in video signals
KR102003137B1 (ko) * 2009-03-12 2019-07-23 인터디지탈 매디슨 페이튼트 홀딩스 디-아티팩트 필터링을 위한 영역-기반 필터 파라미터 선택 방법들 및 장치들
KR101647376B1 (ko) * 2009-03-30 2016-08-10 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
EP2237557A1 (en) * 2009-04-03 2010-10-06 Panasonic Corporation Coding for filter coefficients
EP2422521B1 (en) * 2009-04-20 2013-07-03 Dolby Laboratories Licensing Corporation Filter selection for video pre-processing in video applications
JP5361998B2 (ja) * 2009-05-29 2013-12-04 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法、および画像復号方法
KR101631270B1 (ko) * 2009-06-19 2016-06-16 삼성전자주식회사 의사 난수 필터를 이용한 영상 필터링 방법 및 장치
SG10201403250WA (en) * 2009-06-19 2014-10-30 Mitsubishi Electric Corp Image encoding device, image decoding device, image encoding method, and image decoding method
TWI401963B (zh) * 2009-06-25 2013-07-11 Pixart Imaging Inc Dynamic image compression method for face detection
US20100329362A1 (en) * 2009-06-30 2010-12-30 Samsung Electronics Co., Ltd. Video encoding and decoding apparatus and method using adaptive in-loop filter
JP2011049740A (ja) 2009-08-26 2011-03-10 Sony Corp 画像処理装置および方法
JP2011050001A (ja) * 2009-08-28 2011-03-10 Sony Corp 画像処理装置および方法
BR112012007372A2 (pt) * 2009-10-05 2016-10-11 Thomson Licensing processos e aparelhagem para filtração adaptativa de pixels de predição para componentes de croma em codificação e decodificação de vídeo
KR101687181B1 (ko) * 2009-10-15 2016-12-16 톰슨 라이센싱 비디오 인코더와 디코더를 위한 효율적인 적응형 필터링 방법 및 장치
KR101710883B1 (ko) 2009-11-04 2017-02-28 삼성전자주식회사 필터 정보를 이용한 영상 압축 장치 및 방법과 영상 복원 장치 및 방법
US20110135011A1 (en) * 2009-12-04 2011-06-09 Apple Inc. Adaptive dithering during image processing
JP2011139208A (ja) * 2009-12-28 2011-07-14 Sony Corp 画像処理装置および方法
US9883207B2 (en) * 2009-12-31 2018-01-30 Thomson Licensing Dtv Methods and apparatus for adaptive coupled pre-processing and post-processing filters for video encoding and decoding
WO2011089865A1 (ja) * 2010-01-21 2011-07-28 パナソニック株式会社 画像符号化方法、画像復号方法、それらの装置、プログラムおよび集積回路
EP2532164A1 (en) * 2010-02-02 2012-12-12 Thomson Licensing Methods and apparatus for reducing vector quantization error through patch shifting
JP6029984B2 (ja) * 2010-03-09 2016-11-24 トムソン ライセンシングThomson Licensing 分類ベースのループ・フィルタのための方法と装置
TWI405147B (zh) * 2010-03-16 2013-08-11 Novatek Microelectronics Corp 單張影像的階層式去動態模糊方法
JP2011223337A (ja) * 2010-04-09 2011-11-04 Sony Corp 画像処理装置および方法
JP5464435B2 (ja) * 2010-04-09 2014-04-09 ソニー株式会社 画像復号装置および方法
EP2375747B1 (en) * 2010-04-12 2019-03-13 Sun Patent Trust Filter positioning and selection
WO2011146105A1 (en) * 2010-05-17 2011-11-24 Technicolor Usa, Inc. Methods and apparatus for adaptive directional filter for video restoration
CN102948151B (zh) * 2010-06-17 2016-08-03 夏普株式会社 图像滤波装置、解码装置及编码装置
CN102300044B (zh) * 2010-06-22 2013-05-08 原相科技股份有限公司 处理图像的方法与图像处理模块
JP5889899B2 (ja) 2010-08-09 2016-03-22 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. マルチ視野信号の2つの視野と対応する画像の対をエンコードする方法、デコードする方法、エンコーダ、デコーダ、コンピュータプログラム及びソフトウェアツール
FR2963865B1 (fr) * 2010-08-16 2013-09-27 Canon Kk Procede et dispositif de codage d'un signal numerique
FR2964236B1 (fr) * 2010-08-31 2012-08-17 Thales Sa Dispositif et procede de generation d'images multifenetres a priorite variable
WO2012037963A1 (en) * 2010-09-20 2012-03-29 Canon Kabushiki Kaisha A method and device for encoding and decoding a digital image signal
US8976856B2 (en) * 2010-09-30 2015-03-10 Apple Inc. Optimized deblocking filters
PL2630783T3 (pl) * 2010-10-18 2020-10-19 Dolby Laboratories Licensing Corporation Sposoby i urządzenie do przetwarzania obrazu wykorzystujące definicje umiejscowionej gamy
US9462220B2 (en) * 2010-12-17 2016-10-04 Microsoft Technology Licensing, Llc Auto-regressive edge-directed interpolation with backward projection constraint
JP5627507B2 (ja) * 2011-01-12 2014-11-19 Kddi株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム
WO2012094751A1 (en) * 2011-01-14 2012-07-19 Ebrisk Video Inc. Adaptive loop filtering using tables of filter sets for video coding
US20120183078A1 (en) * 2011-01-14 2012-07-19 Samsung Electronics Co., Ltd. Filter adaptation with directional features for video/image coding
US9930366B2 (en) * 2011-01-28 2018-03-27 Qualcomm Incorporated Pixel level adaptive intra-smoothing
US9001883B2 (en) 2011-02-16 2015-04-07 Mediatek Inc Method and apparatus for slice common information sharing
US8964852B2 (en) 2011-02-23 2015-02-24 Qualcomm Incorporated Multi-metric filtering
GB2488816A (en) * 2011-03-09 2012-09-12 Canon Kk Mapping motion vectors from a plurality of reference frames to a single reference frame
JP5291134B2 (ja) 2011-03-09 2013-09-18 日本電信電話株式会社 映像符号化/復号方法,映像符号化/復号装置およびそのプログラム
JP5291133B2 (ja) 2011-03-09 2013-09-18 日本電信電話株式会社 画像処理方法,画像処理装置,映像符号化/復号方法,映像符号化/復号装置およびそれらのプログラム
JP2012213128A (ja) 2011-03-24 2012-11-01 Sony Corp 画像処理装置および方法
WO2013001720A1 (ja) * 2011-06-30 2013-01-03 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
US9055304B2 (en) * 2011-07-01 2015-06-09 Qualcomm Incorporated Reduced resolution pixel interpolation
KR101834541B1 (ko) * 2011-07-22 2018-03-07 에스케이텔레콤 주식회사 연성 디블록킹 필터링을 이용한 부호화/복호화 방법 및 장치
US20130031063A1 (en) * 2011-07-26 2013-01-31 International Business Machines Corporation Compression of data partitioned into clusters
KR101828411B1 (ko) * 2011-09-21 2018-02-13 삼성전자주식회사 영상 처리 방법 및 영상 처리 장치
CN102427528B (zh) * 2011-09-30 2013-07-31 北京航空航天大学 一种基于聚类统计的视频运动估计方法
US9860530B2 (en) * 2011-10-14 2018-01-02 Hfi Innovation Inc. Method and apparatus for loop filtering
CN102368329A (zh) * 2011-10-24 2012-03-07 龙芯中科技术有限公司 图形系统中纹理图像透明度通道处理系统与装置和方法
GB201119206D0 (en) 2011-11-07 2011-12-21 Canon Kk Method and device for providing compensation offsets for a set of reconstructed samples of an image
KR101462052B1 (ko) * 2011-11-09 2014-11-20 에스케이 텔레콤주식회사 변환을 이용한 주파수 도메인 상의 적응적 루프 필터를 이용한 영상 부호화/복호화 방법 및 장치
PL2785057T3 (pl) 2011-11-25 2021-05-04 Sun Patent Trust Sposób przetwarzania obrazów i urządzenie do przetwarzania obrazów
CN102611823B (zh) * 2012-01-13 2014-06-04 百度在线网络技术(北京)有限公司 一种基于图片内容选择压缩算法的方法和设备
WO2013140722A1 (ja) * 2012-03-21 2013-09-26 パナソニック株式会社 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、および画像符号化復号装置
US9613285B2 (en) * 2012-03-22 2017-04-04 The Charles Stark Draper Laboratory, Inc. Compressive sensing with local geometric features
LT2697973T (lt) * 2012-04-16 2017-09-25 Hfi Innovation Inc. Būdas ir įrenginys, skirti ciklo filtravimui per lusto arba išklotinės ribas
CN103065335B (zh) * 2012-12-28 2015-11-18 辽宁师范大学 基于轮廓波域四叉块分裂模型的图像编码方法
US9596465B2 (en) * 2013-01-04 2017-03-14 Intel Corporation Refining filter for inter layer prediction of scalable video coding
JP6311141B2 (ja) * 2013-10-02 2018-04-18 日本放送協会 フィルタ選択装置、フィルタ装置およびこれらのプログラム
US10593019B2 (en) * 2014-10-17 2020-03-17 Samsung Electronics Co., Ltd. Method and apparatus for storing, processing and reconstructing full resolution image out of sub band encoded images
CN105791906A (zh) * 2014-12-15 2016-07-20 深圳Tcl数字技术有限公司 信息推送的方法和系统
GB2536904B (en) * 2015-03-30 2017-12-27 Imagination Tech Ltd Image filtering based on image gradients
JP6865736B2 (ja) * 2015-05-04 2021-04-28 ザ ブリガム アンド ウィメンズ ホスピタル インコーポレイテッドThe Brigham and Women’s Hospital, Inc. 腫瘍溶解性hsv1ベクターおよび使用法
US10880566B2 (en) 2015-08-28 2020-12-29 Boe Technology Group Co., Ltd. Method and device for image encoding and image decoding
CN105163124B (zh) * 2015-08-28 2019-01-18 京东方科技集团股份有限公司 一种图像编码方法、图像解码方法及装置
KR102477264B1 (ko) * 2015-09-22 2022-12-13 삼성전자주식회사 텍스쳐를 처리하는 방법 및 장치
CN105550979A (zh) * 2015-12-11 2016-05-04 中国航空工业集团公司西安航空计算技术研究所 一种高数据通量纹理Cache层次结构
CN105718513B (zh) * 2016-01-14 2019-11-15 上海大学 jpg文件的压缩方法及解压缩方法
US10411728B2 (en) * 2016-02-08 2019-09-10 Koninklijke Philips N.V. Device for and method of determining clusters
US11405611B2 (en) * 2016-02-15 2022-08-02 Qualcomm Incorporated Predicting filter coefficients from fixed filters for video coding
EP3472806A4 (en) * 2016-06-17 2020-02-26 Immersive Robotics Pty Ltd IMAGE COMPRESSION METHOD AND DEVICE
KR20180056313A (ko) 2016-11-18 2018-05-28 삼성전자주식회사 텍스처를 처리하는 방법 및 장치
US10354173B2 (en) * 2016-11-21 2019-07-16 Cylance Inc. Icon based malware detection
US10694202B2 (en) * 2016-12-01 2020-06-23 Qualcomm Incorporated Indication of bilateral filter usage in video coding
US10448054B2 (en) * 2017-01-11 2019-10-15 Groq, Inc. Multi-pass compression of uncompressed data
CN108632502B (zh) * 2017-03-17 2021-04-30 深圳开阳电子股份有限公司 一种图像锐化的方法及装置
KR102053242B1 (ko) * 2017-04-26 2019-12-06 강현인 압축 파라미터를 이용한 영상 복원용 머신러닝 알고리즘 및 이를 이용한 영상 복원방법
US10212456B2 (en) * 2017-06-02 2019-02-19 Apple Inc. Deblocking filter for high dynamic range (HDR) video
US10349087B2 (en) * 2017-07-13 2019-07-09 The University Of North Carolina At Chapel Hill Methods, systems, and computer readable media for reconstructing images using blurring and noise-enhanced pixel intensity resampling
KR102381373B1 (ko) * 2017-08-16 2022-03-31 삼성전자주식회사 비정형적 분할을 이용한 영상 부호화 방법 및 그 장치, 영상 복호화 방법 및 그 장치
CN108304846B (zh) * 2017-09-11 2021-10-22 腾讯科技(深圳)有限公司 图像识别方法、装置及存储介质
KR102499286B1 (ko) 2018-02-23 2023-02-14 삼성전자주식회사 이미지가 분할된 복수의 블록들의 압축과 관련된 압축 손실 데이터에 기반하여 이미지를 압축하는 전자 장치 및 그 동작 방법
US10687083B2 (en) * 2018-06-06 2020-06-16 Intel Corporation Loop restoration filtering for super resolution video coding
CN110060311B (zh) * 2018-09-09 2020-03-20 深圳硅基仿生科技有限公司 视网膜刺激器的图像处理装置
KR102622950B1 (ko) * 2018-11-12 2024-01-10 삼성전자주식회사 디스플레이장치, 그 제어방법 및 기록매체
EP3895423A4 (en) 2018-12-23 2022-06-22 Huawei Technologies Co., Ltd. ENCODER, DECODER AND RELATED METHODS USING AN ADAPTIVE LOOP FILTER
US11335034B2 (en) * 2019-01-16 2022-05-17 Disney Enterprises, Inc. Systems and methods for image compression at multiple, different bitrates
CN110473209B (zh) * 2019-08-02 2021-08-13 武汉高德智感科技有限公司 红外图像处理方法、装置及计算机存储介质
PL4005204T3 (pl) 2019-08-26 2024-03-11 Huawei Technologies Co., Ltd. Sposób i urządzenie do przechowywania informacji o ruchu
US11430335B2 (en) * 2020-01-31 2022-08-30 Here Global B.V. Method and apparatus for providing large scale vehicle routing
US20210241024A1 (en) * 2020-02-02 2021-08-05 Emza Visual Sense Ltd. Jpeg classifier
CN111583158B (zh) * 2020-05-19 2022-09-23 国网吉林省电力有限公司 一种背景简化表达的票据电子影像压缩存储方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5796875A (en) * 1996-08-13 1998-08-18 Sony Electronics, Inc. Selective de-blocking filter for DCT compressed images
RU2154918C1 (ru) * 1998-08-01 2000-08-20 Самсунг Электроникс Ко., Лтд. Способ и устройство для цикл-фильтрации данных изображения
RU2002100648A (ru) * 2000-01-20 2003-07-27 Нокиа Мобайл Фоунс Лтд. Способ и соответствующее устройство для фильтрации цифровых видеоизображений
WO2004052018A1 (en) * 2002-12-03 2004-06-17 Essential Viewing Limited Reduction of artefacts in digital video coding
WO2005034517A1 (en) * 2003-09-17 2005-04-14 Thomson Licensing S.A. Adaptive reference picture generation

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3759538B2 (ja) * 1994-09-14 2006-03-29 ソニー株式会社 画像信号処理方法及び画像信号伝送装置
JP3627291B2 (ja) * 1995-05-25 2005-03-09 ソニー株式会社 ブロック歪み除去装置および方法
JPH09251781A (ja) 1996-03-18 1997-09-22 Hitachi Ltd 半導体集積回路装置
JP4534951B2 (ja) * 1996-07-17 2010-09-01 ソニー株式会社 画像符号化装置および画像符号化方法、画像処理システムおよび画像処理方法、伝送方法、並びに記録媒体
JPH10224790A (ja) * 1997-02-07 1998-08-21 Matsushita Electric Ind Co Ltd 圧縮伸張された画像中のブロック状ノイズを除去するフィルタおよびフィルタ方法
JP3095140B2 (ja) * 1997-03-10 2000-10-03 三星電子株式会社 ブロック化効果の低減のための一次元信号適応フィルター及びフィルタリング方法
US6075926A (en) * 1997-04-21 2000-06-13 Hewlett-Packard Company Computerized method for improving data resolution
JP4093621B2 (ja) 1997-12-25 2008-06-04 ソニー株式会社 画像変換装置および画像変換方法、並びに学習装置および学習方法
JP3959178B2 (ja) 1998-08-07 2007-08-15 住友化学株式会社 ヒドラジン誘導体の製造方法、その中間体および中間体の製造方法
JP2001204029A (ja) * 1999-08-25 2001-07-27 Matsushita Electric Ind Co Ltd ノイズ検出方法、ノイズ検出装置及び画像復号化装置
FI117533B (fi) * 2000-01-20 2006-11-15 Nokia Corp Menetelmä digitaalisten videokuvien suodattamiseksi
US6600517B1 (en) * 2000-03-07 2003-07-29 Koninklijke Philips Electronics N.V. System and method for improving the sharpness of a video image
US6823086B1 (en) * 2000-08-29 2004-11-23 Analogic Corporation Adaptive spatial filter
JP3632591B2 (ja) * 2000-11-13 2005-03-23 日本電気株式会社 画像処理装置、方法及びコンピュータ読み取り可能な記録媒体
US7110455B2 (en) * 2001-08-14 2006-09-19 General Instrument Corporation Noise reduction pre-processor for digital video using previously generated motion vectors and adaptive spatial filtering
BRPI0205988B1 (pt) * 2001-09-12 2017-01-17 Matsushita Electric Ind Co Ltd aparelho de codificação de imagem que codifica imagens que são introduzidas em sequência e aparelho de decodificação de imagem que decodifica imagens que são introduzidas em sequência
CN1278562C (zh) * 2001-11-29 2006-10-04 松下电器产业株式会社 编码失真消除方法、视频编码方法、视频解码方法、装置及其程序
US7116828B2 (en) * 2002-09-25 2006-10-03 Lsi Logic Corporation Integrated video decoding system with spatial/temporal video processing
US7068722B2 (en) * 2002-09-25 2006-06-27 Lsi Logic Corporation Content adaptive video processor using motion compensation
US8625680B2 (en) 2003-09-07 2014-01-07 Microsoft Corporation Bitstream-controlled post-processing filtering
KR20060109448A (ko) * 2003-10-31 2006-10-20 코닌클리케 필립스 일렉트로닉스 엔.브이. 비디오 신호 인코딩 방법
US7630576B2 (en) * 2004-02-19 2009-12-08 Sony Corporation Signal processing apparatus and method, and command-sequence data structure
US7492848B2 (en) * 2005-04-13 2009-02-17 Texas Instruments Incorporated Method and apparatus for efficient multi-stage FIR filters
US7756350B2 (en) * 2006-11-13 2010-07-13 Global Ip Solutions, Inc. Lossless encoding and decoding of digital data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5796875A (en) * 1996-08-13 1998-08-18 Sony Electronics, Inc. Selective de-blocking filter for DCT compressed images
RU2154918C1 (ru) * 1998-08-01 2000-08-20 Самсунг Электроникс Ко., Лтд. Способ и устройство для цикл-фильтрации данных изображения
RU2002100648A (ru) * 2000-01-20 2003-07-27 Нокиа Мобайл Фоунс Лтд. Способ и соответствующее устройство для фильтрации цифровых видеоизображений
WO2004052018A1 (en) * 2002-12-03 2004-06-17 Essential Viewing Limited Reduction of artefacts in digital video coding
WO2005034517A1 (en) * 2003-09-17 2005-04-14 Thomson Licensing S.A. Adaptive reference picture generation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WITTMANN S. et al, SEI message on post-filter hints, Joint Video Team (JVT) of ISO/IEC MPEG & ITU-T VCEG, JVT-U035, 21st Meeting: Hangzhou, China, 20-27 October 2006. LAI C-C et al, An optimal L-filter for reducing blocking artifacts using genetic algorithms, ELSEVIER SCIENCE PUBLISHERS B.V., AMSTERDAM, vol. 81, no. 7, 1 July 2001, реферат. *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2661763C2 (ru) * 2014-05-14 2018-07-19 Интел Корпорейшн Использование межкадровой когерентности в архитектуре построения изображений с сортировкой примитивов на промежуточном этапе
RU2628494C1 (ru) * 2015-02-11 2017-08-17 Сяоми Инк. Способ и устройство для генерирования фильтра изображения
US9959484B2 (en) 2015-02-11 2018-05-01 Xiaomi Inc. Method and apparatus for generating image filter

Also Published As

Publication number Publication date
PL2123051T3 (pl) 2011-04-29
US9786066B2 (en) 2017-10-10
CN101563926B (zh) 2011-11-16
WO2008075247A1 (en) 2008-06-26
RU2009127749A (ru) 2011-01-27
KR20090100402A (ko) 2009-09-23
EP2123051B1 (en) 2010-11-10
US20140079330A1 (en) 2014-03-20
US20100027686A1 (en) 2010-02-04
KR101545005B1 (ko) 2015-08-21
CN101563926A (zh) 2009-10-21
ES2356023T3 (es) 2011-04-04
US8582666B2 (en) 2013-11-12
ATE488096T1 (de) 2010-11-15
JP2010514246A (ja) 2010-04-30
MX2009006404A (es) 2009-06-23
DE602007010514D1 (de) 2010-12-23
EP2123051A1 (en) 2009-11-25

Similar Documents

Publication Publication Date Title
RU2461977C2 (ru) Сжатие и снятие сжатия изображения
KR100797807B1 (ko) 코딩 아티팩트 감소 방법
JP5283628B2 (ja) 映像復号方法及び映像符号化方法
JP4717138B2 (ja) 画像符号化方法および画像符号化装置
JP5357898B2 (ja) 多格子スパーシティベースフィルタリングを使用するアーチファクト除去フィルタリングのための方法および装置
US8218082B2 (en) Content adaptive noise reduction filtering for image signals
JP2020508010A (ja) 画像処理およびビデオ圧縮方法
CN110036637B (zh) 去噪声化已重构图像的方法及装置
US20140254663A1 (en) Video coding method using at least evaluated visual quality and related video coding apparatus
MX2013002070A (es) Metodo y aparato de filtrado de circuito adaptativo.
JPH08186714A (ja) 画像データのノイズ除去方法及びその装置
JP2005166021A (ja) 画像中の画素を分類する方法
EP3014880A2 (en) Encoding video captured in low light
Francisco et al. A generic post-deblocking filter for block based image compression algorithms
JP2011091510A (ja) 画像処理装置およびその制御方法
US7561736B2 (en) Image processing apparatus and method of the same
KR101529754B1 (ko) 암 노이즈 아티팩트를 검출하기 위한 방법 및 장치
US10708624B1 (en) Pre-processing for video compression
Erfurt et al. Multiple feature-based classifications adaptive loop filter
Bordes et al. Perceptually adapted MPEG video encoding
Patel et al. Analysis of novel de-blocking method for blocking artifacts reduction
Erfurt et al. Shearlet-based Loop Filter
Boyadjis et al. Video enhancement with convex optimization methods