RU2584763C2 - Способ декодирования изображения в форме битового потока - Google Patents

Способ декодирования изображения в форме битового потока Download PDF

Info

Publication number
RU2584763C2
RU2584763C2 RU2014117312/08A RU2014117312A RU2584763C2 RU 2584763 C2 RU2584763 C2 RU 2584763C2 RU 2014117312/08 A RU2014117312/08 A RU 2014117312/08A RU 2014117312 A RU2014117312 A RU 2014117312A RU 2584763 C2 RU2584763 C2 RU 2584763C2
Authority
RU
Russia
Prior art keywords
coefficients
coefficient
zero
mode
value
Prior art date
Application number
RU2014117312/08A
Other languages
English (en)
Other versions
RU2014117312A (ru
Inventor
Роберт А. КОЭН
Шантану РАНЕ
Энтони ВЕТРО
Хойфан СУНЬ
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 RU2014117312A publication Critical patent/RU2014117312A/ru
Application granted granted Critical
Publication of RU2584763C2 publication Critical patent/RU2584763C2/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/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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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
    • H04N19/467Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
    • 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/18Methods 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 set of transform coefficients
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • 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
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Изобретение относится к технологиям кодирования/декодирования изображений. Техническим результатом является обеспечение декодирования битового потока посредством ранее определенного синтаксиса битового потока. Предложен способ декодирования изображения в форме битового потока, в котором изображение кодируется и представляется посредством коэффициентов, и в котором каждый коэффициент находится в квантованной форме. Способ сдержит этап, на котором определяют число последовательных коэффициентов на основе порядка сканирования. Далее, согласно способу, определяют, используется или нет набор режимов кодирования, согласно упомянутому числу последовательных коэффициентов, определенных на основе порядка сканирования. А также выводят один режим кодирования, использованный в процессе декодирования, из набора режимов кодирования, используя последний сканированный ненулевой коэффициент в последовательных коэффициентах, когда используется набор режимов кодирования. 3 н. и 13 з.п. ф-лы, 6 ил.

Description

ОБЛАСТЬ ТЕХНИКИ
[0001] Это изобретение относится, в целом, к кодированию изображений, а более конкретно, к декодированию изображений с помощью модифицируемых квантованных коэффициентов преобразования так, чтобы операция декодирования могла быть выведена на основе характеристик модифицированных коэффициентов.
УРОВЕНЬ ТЕХНИКИ
[0002] Когда картинки, видео, изображения или другие аналогичные данные сжимаются в битовый поток с помощью различных режимов, информация о режиме типично хранится в поле заголовка битового потока, так что декодер будет знать, какой режим использовать, прежде чем декодер применит режим во время декодирования последующих данных.
[0003] В типичной системе сжатия видео или изображения декодер принимает квантованные коэффициенты преобразования, синтаксически проанализированные посредством энтропийного декодера. Эти квантованные коэффициенты преобразования затем передаются для обратного преобразования. Данные обратного преобразования затем используются различными способами, чтобы восстанавливать исходный сигнал. Квантование, преобразование и последующие операции декодирования могут зависеть от различных указателей режима, которые были приняты в данных заголовка, также синтаксически проанализированных из энтропийного декодера, перед декодированием квантованных коэффициентов преобразования.
[0004] Когда желательны сигналы дополнительных режимов в системе кодирования, сигналы могут вызывать увеличение размера битового потока, используемого для того, чтобы представлять кодированные сигналы. Также, если система кодирования удовлетворяет ранее согласованным стандартам или спецификациям, нужно будет изменить спецификации для того, чтобы размещать дополнительные указатели.
[0005] Существует необходимость в способе неявной сигнализации информации о режиме способом, который уменьшает размер битового потока, в отличие от случая, когда режим сигнализируется явным образом.
[0006] Также существует необходимость в способе сигнализации информации о режиме так, что получающийся в результате битовый поток может быть декодирован с помощью ранее определенного синтаксиса битового потока. Для того чтобы этот способ был целесообразным, существует также необходимость в ограничении увеличения сложности, ассоциированного с использованием битового потока в кодере или декодере. В общем, в технике кодер и декодер известны как "кодек".
[0007] Кодер: блок или вектор данных вводится для преобразования. Выходом преобразования является блок или вектор коэффициентов преобразования. Эти коэффициенты преобразования затем проходят через квантователь, который квантует коэффициенты в конкретном порядке. Квантованные коэффициенты преобразования затем вводятся в энтропийный кодер, который преобразует их в двоичный битовый поток для передачи или хранения. Различные режимы могут быть использованы во время этого процесса для выбора типа преобразования, типа квантователя или других режимов.
[0008] Декодер: двоичный битовый поток декодируется, давая в результате различные данные о режиме и блок или вектор коэффициентов преобразования. Коэффициенты передаются для обратного преобразования, вывод которого используется различными способами, чтобы восстанавливать видео, изображение или другие данные. Декодированные данные о режиме используются, чтобы управлять различными аспектами процесса декодирования.
[0009] Внедрение водяных знаков и сокрытие данных
В некоторых видеоприложениях видимый или невидимый цифровой водяной знак добавляется в качестве цифровых данных к изображению или видео. Внедрение водяных знаков типично используется, чтобы аутентифицировать записанные носители. Такие водяные знаки обычно задумываются как трудные для декодирования или удаления из изображения или видео. Внедрение водяных знаков не повышает эффективность кодирования видеокодеков, как желательно для настоящего изобретения, и прямое применение технологий внедрения водяных знаков с целью повышения эффективности кодирования видео не является очевидным. В уровне техники известно решение, в котором вставляются данные о режиме кодирования. Типично, в уровне техники используется контроль четности (нечетный или четный) суммы абсолютных значений декодированных коэффициентов преобразования, чтобы принимать решение, какой из двух или более режимов использовать.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0010] Способ декодирует изображение в форме битового потока. Изображение кодируется и представляется посредством векторов коэффициентов. Каждый коэффициент находится в квантованной форме.
[0011] Конкретный коэффициент выбирается в каждом векторе на основе порядка сканирования вектора. Затем набор режимов выводится на основе характеристик конкретного коэффициента. Затем битовый поток декодируется согласно набору режимов.
[0012] В одном варианте осуществления набор режимов выводится из последнего сканированного ненулевого коэффициента.
Краткое описание чертежей
[0013] Фиг.1 - блок-схема декодера кодека, который использует варианты осуществления изобретения;
Фиг.2 - блок-схема модуля вывода режима согласно вариантам осуществления изобретения;
Фиг.3A - пример порядка сканирования.
Фиг.3B - пример порядка сканирования.
Фиг.3C - пример порядка сканирования.
Фиг.3D - пример порядка сканирования.
Подробное описание вариантов осуществления
[0014] Варианты осуществления настоящего изобретения декодируют изображение в форме битового потока 109. Изображение делится на блоки и кодируется. Каждый блок представляется посредством вектора коэффициентов. Коэффициенты в блоке находятся в квантованной форме.
[0015] В декодере 100 кодека энтропийный декодер 201 выполняет синтаксический анализ битового потока 109 и выводит вектор или блок из N (ранее квантованных) коэффициентов 101 преобразования. Битовый поток также включает в себя данные 105 взаимного/внутреннего прогнозирования. Конкретный коэффициент в каждом векторе выбирается на основе порядка сканирования вектора. Порядки сканирования описываются ниже.
[0016] Блок 210 выводит набор (из двух или более) режимов на основе конкретного коэффициента и использует выведенные режимы 102, чтобы определять скорректированные коэффициенты 214, как описывается ниже. Как правило, скорректированные коэффициенты корректируются по направлению к нулю, когда возможно. Скорректированные коэффициенты обратно квантуются 203 и затем подвергаются обратному преобразованию 204.
[0017] В зависимости от набора режимов, которые выводятся, выведенные режимы 102 могут быть использованы в различных модулях декодера 100. Например, выведенные режимы 102 могут быть использованы в обратном квантовании 203 и/или обратном преобразовании 204.
[0018] Вывод обратного преобразования складывается 205 с выводом модуля 207 взаимного/внутреннего прогнозирования и сохраняется в буфере 206, который, в конечном счете, выводит блок 208.
[0019] Вектором или блоком 101 является [x0, x1,... xN-1]. В типичной системе сжатия кодер квантует множество коэффициентов преобразования до нуля. Следовательно, фокусом изобретения является выбор конкретного коэффициента среди этих ненулевых коэффициентов и выведение режима или набора режимов в блоке 210 на основе характеристик конкретного коэффициента.
[0020] Коэффициенты просматриваются или сканируются и затем синтаксически анализируются в конкретном порядке, например, растровое сканирование, зигзагообразное, вертикальное, диагональное и т.д. Фиг.3A-3D показывают примеры различных сканирований.
[0021] Типично, порядок сканирования выбирается для осуществления доступа сначала к ненулевым коэффициентам, после которых остаток квантованных коэффициентов преобразования в векторе может быть нулевым. При синтаксическом анализе принятых коэффициентов преобразования от энтропийного декодера, например, принятый вектор может быть: [5 -3 -4 2 0 1 0 0 0 0 0 0]. В этом случае элемент x5 является последним ненулевым коэффициентом.
[0022] В дополнение к указанию местоположения последнего ненулевого коэффициента также может быть указано местоположение других ненулевых коэффициентов. Кроме того, может также быть получена карта, указывающая местоположение ненулевых коэффициентов. Для примерного вектора, данного выше, двоичной картой ненулевых коэффициентов может быть [1 1 1 1 0 1 0 0 0 0 0 0]. Также могут быть получены альтернативные карты третичного уровня, которые указывают информацию о знаке, например [1 -1 -1 1 0 1 0 0 0 0 0 0].
[0023] После того как вектор декодированных коэффициентов был синтаксически проанализирован, информация о режиме, которая была вставлена в вектор, может быть извлечена и выведена. Рассмотрим два режима "A" и "B". Например, декодер может использовать два различных вида квантователей, два различных вида преобразований или иметь некоторый другой режим, который имеет два состояния. После того как информация о режиме извлечена, декодер может затем, например, использовать обратный квантователь (203) A, если был выбран режим A, или использовать обратный квантователь B, если был выбран режим B. Теперь описываются несколько вариантов осуществления извлечения вставленной информации о режиме.
[0024] В векторе [x0, x1,... xN-1] N коэффициентов, x0 является первым коэффициентом, а xN-1 является последним коэффициентом. Желательно определять режим M, который вставлен в вектор. Двумя возможными режимами, например, являются режим A и режим B.
СРАВНЕНИЕ С ПРЕДШЕСТВУЮЩИМ УРОВНЕМ ТЕХНИКИ
[0025] В предшествующем уровне техники режим, как правило, основывается на четности суммы всех коэффициентов в каждом блоке. Это требует времени для вычисления и может быть непрактичным во многих современных прикладных задачах реального времени, таких как обмен видеоинформацией мобильного телефона.
[0026] Предпочтительный вариант осуществления заявленного декодера основывает режим на одном коэффициенте и, возможно, одном последующем. Это является явным преимуществом над предшествующим уровнем техники.
Модуль вывода
[0027] Фиг.2 показывает варианты осуществления модуля 210 вывода режима. Декодированные коэффициенты передаются модулю 211 определения местоположения ненулевого коэффициента, так что набор режимов, например A или B, может быть выведен посредством селектора 212 режима. Опционально, один из режимов в наборе затем используется модулем 213 корректировки коэффициентов, чтобы создавать скорректированные коэффициенты 214. Скорректированные коэффициенты передаются обратному квантователю 203, который может опционально зависеть от выбранного режима. Решение о режиме может также использоваться для управления другими частями декодера, такими как обратное преобразование 204 и взаимное/внутреннее прогнозирование 207.
Варианты осуществления модуля вывода
[0028] Вариант осуществления 1
В этом варианте осуществления коэффициенты сканируются до тех пор, пока не будет обнаружен последний ненулевой коэффициент 215. Если этот коэффициент нечетный, тогда выводится режим A. Если этот коэффициент четный, тогда выводится режим B. Коэффициенты просматриваются для того, чтобы определять последний ненулевой коэффициент xk, где k может быть между 0 и N-1.
Если xk является нечетным, тогда режим M←A.
Если xk является четным, тогда режим M←B.
[0029] Возможно менять местами четный и нечетный, упомянутые выше, и другие варианты осуществления.
[0030] Вариант осуществления 2
В этом варианте осуществления, если последний коэффициент является ненулевым и нечетным в выбранном порядке сканирования, то выводится режим A, а если он является четным, то выводится режим B. Если последний коэффициент равен нулю, то обнаруживается последний ненулевой коэффициент. Это значение считается флагом, который указывает тип режима. Если флаг равен 1, то режимом является A. Если флаг равен -1, то режимом является B. Флаг затем удаляется посредством установки этого коэффициента на ноль. Когда флаг используется таким образом, декодер может восстанавливать тот же набор коэффициентов, используемых кодером (т.е. обратимых), поскольку кодер вставляет флаг в это местоположение. Если флаг не используется, поскольку последний коэффициент был скорректирован в кодере, чтобы гарантировать, что было принято корректное решение о режиме, то это изменение является необратимым. Вариантом осуществления декодера является:
[0031] Если последний коэффициент xN-1 ненулевой, то:
{
Если xk является нечетным, то режим M←A
Если xk является четным, то режим M←B
}
иначе
{
Если последний коэффициент xN-1 равен нулю, то коэффициенты просматриваются для того, чтобы определять последний ненулевой коэффициент xk.
Если xk = 1, то режим M←A, и тогда xk←0
Если xk = -1, то режим M←B, и тогда xk←0
}
[0032] Вариант осуществления 3
Вариант осуществления 2 может быть модифицирован так, что последний коэффициент может также быть использован в качестве позиции для флага 1 или -1, описанного выше:
Если последний коэффициент xN-1 ненулевой и не равен 1 или - 1, то:
{
Если xk является нечетным, то режим M←A
Если xk является четным, то режим M←B
}
иначе
{
Если последний коэффициент xN-1 равен нулю или 1 или -1, то коэффициенты просматриваются для того, чтобы определять последний ненулевой коэффициент xk.
Если xk = 1, то режим M←A, и тогда xk←0
Если xk = -1, то режим M←B, и тогда xk←0
}
[0033] Вариант осуществления 4
Когда 1 или -1 появляется часто в кодере в качестве последних ненулевых коэффициентов, может быть желательным не трактовать коэффициенты в качестве флагов, как описано для других вариантов осуществления. Если режим A, однако, ожидает присутствие четного коэффициента, необходима модификация.
[0034] В этом случае коэффициенты просматриваются для того, чтобы определять последний ненулевой коэффициент xk.
Если xk равен 1, -1 или является четным, то режим M←A
Если xk является нечетным, то режим M←B
Варианты осуществления кодера
[0035] В кодере квантователь выводит блок или вектор коэффициентов. Если декодер, который использует один из вышеописанных вариантов осуществления, принимает корректное решение о режиме с помощью коэффициентов, никаких специальных действий не требуется. Если, однако, значения этих коэффициентов являются такими, что декодер принимает некорректное решение, кодер должен модифицировать коэффициенты перед передачей коэффициентов энтропийному кодеру.
[0036] Существует два способа, чтобы вставить данные о режиме: обратимый, т.е. модификация обнаруживается и устраняется в декодере, так что вектор коэффициентов в декодере совпадает с вектором кодера; и необратимый, при этом декодер не может точно восстановить точный вектор после извлечения решения о режиме. В зависимости от вариантов осуществления кодера и декодера, могут применяться один или оба способа, обратимый и необратимый. Вектором коэффициентов в кодере является [v0, v1,…, vN-1].
[0037] Вариант осуществления 1 кодера
Коэффициенты просматриваются для того, чтобы определять последний ненулевой коэффициент vk.
[0038] Если режим M=A, и vk является четным, то:
{
Если vk>0, то vk←vk-1. Это сделает vk нечетным.
Если vk<0, то vk←vk+1. Это сделает vk нечетным.
}
Если режим M=B, и vk является нечетным, то:
{
Если vk=1, то vk ← 2. Это сделает vk четным, но не нулевым.
Если vk=-1, то vk ← -2. Это сделает vk четным, но не нулевым.
Если vk не равен ни 1, ни -1, то:
{
Если vk>0, то vk←vk -1. Это сделает vk четным.
Если vk<0, то vk←vk+1. Это сделает vk четным.
}
}
[0039] Вариант осуществления 2 кодера
Если последний коэффициент vN-1 является ненулевым, то vk←vN-1, и тогда операции, описанные в варианте осуществления 1 кодера, выполняются по vk.
иначе
{
Если последний коэффициент vN-1 равен нулю, то коэффициенты просматриваются для того, чтобы определять последний ненулевой коэффициент vk, и
{
Если режим M=A, vk+1 ← 1
Если режим M=B, vk+1 ← -1
}
[0040] Вариант осуществления 3 кодера
Если последний коэффициент vN-1 является ненулевым, то vk←vN-1, и:
{
Если режим M=A, то
{
если vk=-1, то vk←1; иначе
если vk является четным, то vk делается нечетным посредством корректировки vk на единицу, по направлению к нулю, пока эта корректировка не сделает vk = -1. В этом случае vk корректируется далеко от 0, т.е. vk = 3.
}
Если режим M=B, то
{
если vk=1, то vk ← -1; иначе
если vk является нечетным, то vk делается четным посредством корректировки его на единицу, по направлению к нулю.
}
}
[0041] Вариант осуществления 4 кодера
Определяется последний ненулевой коэффициент vk.
[0042] Если режим M=B и vk является нечетным, vk корректируется на единицу, по направлению к нулю. Если эта корректировка сделает vk=0, то вместо корректировки vk на единицу, он корректируется в противоположную от нуля сторону.
[0043] Если режим M=A и vk является четным, vk корректируется на единицу, по направлению к нулю.
[0044] Дополнительные варианты осуществления
Вместо использования последнего ненулевого коэффициента используется коэффициент с наибольшей величиной (абсолютным значением). Если больше чем один коэффициент имеет эту наибольшую величину, тогда используется коэффициент с наивысшим индексом вектора (т.е. последний коэффициент с наибольшими величинами).
[0045] Вместо использования нечетности/четности для принятия решения используется разница между двумя (соседними) коэффициентами. Если разница положительная, выводится режим A. Если отрицательная, выводится режим B.
[0046] Знак (положительный или отрицательный) данного коэффициента также может быть использован, чтобы выводить режим. Кодер может изменять знак коэффициента, а декодер может использовать этот знак, чтобы определять режим. После вывода режима декодер может использовать другую информацию в коэффициентах, чтобы решать, изменять ли знак снова, так что скорректированные коэффициенты в декодере соответствуют исходным коэффициентам в кодере.
[0047] Для случаев, когда квантователь использует квантование с оптимизированной зависимостью искажений от скорости передачи (RDO-Q), вставка флага режима или информации о режиме может быть сделана частью RDO-Q-процесса. Во время принятия решения о том, какие коэффициенты устанавливать на ноль, RDO-Q-процесс может объединять стоимость флага режима в дополнение к стоимости коэффициентов.
[0048] Больше чем два режима могут сигнализироваться. Например, три режима A, B и C могут сигнализироваться. Дополнительно, множество наборов режимов может сигнализироваться. Например, набор 1 включает в себя режимы A, B и C, а набор 2 включает в себя режимы W, X, Y, Z. Один режим из набора 1 и один режим из набора 2 может сигнализироваться для каждого набора коэффициентов.
[0049] Вместо использования последнего ненулевого коэффициента, чтобы сигнализировать о режиме, может быть использовано другое свойство, такое как наибольший или наименьший коэффициент. Если более чем один коэффициент удовлетворяет конкретным критериям, то вспомогательный процесс принятия решения может выбирать, куда вставлять информацию. Например, если конкретным критерием является использование наибольшего коэффициента, и два коэффициента имеют одинаковое наибольшее значение, то может быть использован последний из этих двух коэффициентов.
[0050] Другой вариант осуществления может определять число последовательных, т.е. соседних, ненулевых группировок коэффициентов. Группа с большинством ненулевых коэффициентов может быть использована, чтобы вставлять информацию о способе с помощью любых из ранее описанных вариантов осуществления.
[0051] Также, как описано ранее, карты двоичного или третичного уровня могут быть получены из декодированных коэффициентов. Режим для блока может также быть выведен на основе функций этих карт или шаблонов в картах. Например, режим может быть выведен на основе числа ненулевых коэффициентов. Двоичные кодовые слова также могут быть вставлены в эти карты в кодере, чтобы сигнализировать различные режимы.

Claims (16)

1. Способ декодирования изображения в форме битового потока, в котором изображение кодируется и представляется посредством коэффициентов, и в котором каждый коэффициент находится в квантованной форме, причем способ содержит этапы, на которых:
определяют число последовательных коэффициентов на основе порядка сканирования;
определяют, используется или нет набор режимов кодирования, согласно упомянутому числу последовательных коэффициентов, определенных на основе порядка сканирования;
выводят один режим кодирования, использованный в процессе декодирования, из набора режимов кодирования, используя последний сканированный ненулевой коэффициент в последовательных коэффициентах, когда используется набор режимов кодирования; и
декодируют битовый поток согласно введенному одному режиму кодирования, при этом
набор режимов кодирования включает в себя первый режим кодирования и второй режим кодирования и
на этапе ввода вводят первый режим кодирования как один режим кодирования из набора режимов кодирования, если значением последнего сканированного ненулевого коэффициента является 1, -1 или является четным, и в противном случае вводят второй режим кодирования, при этом этапы выполняются в декодере.
2. Способ декодирования изображения в форме битового потока, в котором изображение кодируется и представляется посредством коэффициентов, и в котором каждый коэффициент находится в квантованной форме, причем способ содержит этапы, на которых:
определяют число последовательных коэффициентов на основе порядка сканирования;
определяют, используется или нет набор режимов кодирования, согласно упомянутому числу последовательных коэффициентов, определенных на основе порядка сканирования;
выводят один режим кодирования, использованный в процессе декодирования, из набора режимов кодирования, используя значение коэффициента, имеющего наибольшую величину в последовательных коэффициентах, когда используется набор режимов кодирования; и
декодируют битовый поток согласно введенному одному режиму кодирования, при этом этапы выполняются в декодере.
3. Способ декодирования изображения в форме битового потока, в котором изображение кодируется и представляется посредством коэффициентов, и в котором каждый коэффициент находится в квантованной форме, причем способ содержит этапы, на которых:
определяют число последовательных коэффициентов на основе порядка сканирования;
определяют, используется или нет набор режимов кодирования, согласно упомянутому числу последовательных коэффициентов, определенных на основе порядка сканирования;
выводят один режим кодирования, использованный в процессе декодирования, из набора режимов кодирования, используя знак разности между двумя коэффициентами в последовательных коэффициентах, когда используется набор режимов кодирования; и
декодируют битовый поток согласно введенному одному режиму кодирования, при этом этапы выполняются в декодере.
4. Способ по п. 1, дополнительно содержащий этап, на котором:
устанавливают значение последнего сканированного ненулевого коэффициента на ноль после вывода, если значение последнего сканированного ненулевого коэффициента равно 1 или -1.
5. Способ по п. 1, дополнительно содержащий этап, на котором:
корректируют значение последнего сканированного ненулевого коэффициента равно 1, -1 в направлении к нулю после вывода.
6. Способ по п. 1, дополнительно содержащий этап, на котором:
корректируют значение последнего сканированного ненулевого коэффициента равно 1, -1 в противоположную от нуля сторону, если значением последнего сканированного ненулевого коэффициента является 1 или -1 перед выводом.
7. Способ по п. 1, дополнительно содержащий этап, на котором корректируют значение последнего сканированного ненулевого коэффициента в противоположную от нуля сторону, если значение последнего сканированного коэффициента равно 2 или -2, и требуется корректировка в нечетное значение.
8. Способ по п. 2, в котором наибольшая величина возникает в более чем одном коэффициенте.
9. Способ по п. 3, в котором знак корректируется после вывода.
10. Способ по любому из пп. 1-3, в котором один режим кодирования выводится совместно с процессом квантования с оптимизированной зависимостью искажений от скорости передачи.
11. Способ по любому из пп. 1-3, в котором стоимость используется для определения вставки информации в коэффициенты.
12. Способ по любому из пп. 1-3, в котором один режим кодирования выводится с помощью функции, примененной к коэффициентам.
13. Способ по любому из пп. 1-3, в котором набор режимов кодирования определяется кодером.
14. Способ по п. 1, дополнительно содержащий этап, на котором:
указывают в карте местоположения ненулевых коэффициентов.
15. Способ по п. 1, дополнительно содержащий этап, на котором:
указывают в карте знак каждого ненулевого коэффициента в последовательных коэффициентах.
16. Способ по п. 1, дополнительно содержащий этап, на котором:
корректируют значение последнего сканированного ненулевого коэффициента в противоположную от нуля сторону после вывода.
RU2014117312/08A 2011-09-30 2012-05-30 Способ декодирования изображения в форме битового потока RU2584763C2 (ru)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/250,972 2011-09-30
US13/250,972 US20120230396A1 (en) 2011-03-11 2011-09-30 Method for Embedding Decoding Information in Quantized Transform Coefficients
PCT/JP2012/064492 WO2013046808A1 (en) 2011-09-30 2012-05-30 Method for decoding picture in form of bit-stream

Publications (2)

Publication Number Publication Date
RU2014117312A RU2014117312A (ru) 2015-11-10
RU2584763C2 true RU2584763C2 (ru) 2016-05-20

Family

ID=46319173

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2014117312/08A RU2584763C2 (ru) 2011-09-30 2012-05-30 Способ декодирования изображения в форме битового потока

Country Status (10)

Country Link
US (1) US20120230396A1 (ru)
JP (1) JP5855139B2 (ru)
KR (2) KR20140048322A (ru)
CN (1) CN103843346B (ru)
BR (1) BR112014005291B1 (ru)
MX (1) MX338400B (ru)
RU (1) RU2584763C2 (ru)
SG (1) SG2014010011A (ru)
TW (1) TWI533670B (ru)
WO (1) WO2013046808A1 (ru)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013117811A1 (en) * 2012-02-06 2013-08-15 Nokia Corporation Method for coding and an apparatus
US10225562B1 (en) * 2017-08-21 2019-03-05 Google Llc Embedding information about EOB positions
JP6981540B2 (ja) * 2017-12-06 2021-12-15 富士通株式会社 モード情報のコーディングとデコーディング方法、装置及び電子機器
CN109919821B (zh) * 2017-12-12 2020-12-25 深圳大学 三维数字模型双重盲水印的嵌入、提取方法和存储介质
KR102662646B1 (ko) * 2018-07-02 2024-05-03 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 종속 스칼라 양자화에 적합한 변환 계수의 엔트로피 코딩

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2354073C2 (ru) * 2002-01-22 2009-04-27 Нокиа Корпорейшн Кодирование коэффициентов преобразования в кодерах и/или декодерах изображения и видеоданных

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AUPO521897A0 (en) * 1997-02-20 1997-04-11 Telstra R & D Management Pty Ltd Invisible digital watermarks
US6208735B1 (en) * 1997-09-10 2001-03-27 Nec Research Institute, Inc. Secure spread spectrum watermarking for multimedia data
SE512291C2 (sv) * 1997-09-23 2000-02-28 Ericsson Telefon Ab L M Inbäddad DCT-baserad stillbildskodningsalgoritm
EP1415266A2 (en) * 2001-06-29 2004-05-06 Oki Electric Industry Company, Limited Method and system for watermarking an electrically depicted image
JP2003169205A (ja) * 2001-11-30 2003-06-13 Toshiba Corp 電子透かし埋め込み方法及び装置並びに電子透かし検出方法及び装置
JP3937841B2 (ja) * 2002-01-10 2007-06-27 キヤノン株式会社 情報処理装置及びその制御方法
US7567721B2 (en) * 2002-01-22 2009-07-28 Digimarc Corporation Digital watermarking of low bit rate video
KR100627597B1 (ko) * 2002-04-26 2006-09-25 가부시키가이샤 엔티티 도코모 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법, 화상 부호화 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 화상 복호 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
EP1487113B1 (de) * 2002-05-02 2006-10-18 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Kodierung und Dekodierung von Transformationskoeffizienten in Bild- oder Videokodierern
US7352903B2 (en) * 2004-08-17 2008-04-01 Pegasus Imaging Corporation Methods and apparatus for implementing JPEG 2000 encoding operations
US7620252B2 (en) * 2005-04-22 2009-11-17 Hewlett-Packard Development Company, L.P. System and method for compressing an image
JP4942548B2 (ja) * 2007-05-17 2012-05-30 三菱電機株式会社 電子透かし埋め込み装置、電子透かし検出装置、電子透かし埋め込みプログラム及び電子透かし検出プログラム
US8891615B2 (en) * 2008-01-08 2014-11-18 Qualcomm Incorporated Quantization based on rate-distortion modeling for CABAC coders
CN101534436B (zh) * 2008-03-11 2011-02-02 深圳市融创天下科技发展有限公司 一种视频图像宏块级自适应码率分配方法
US8681874B2 (en) * 2008-03-13 2014-03-25 Cisco Technology, Inc. Video insertion information insertion in a compressed bitstream

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2354073C2 (ru) * 2002-01-22 2009-04-27 Нокиа Корпорейшн Кодирование коэффициентов преобразования в кодерах и/или декодерах изображения и видеоданных

Also Published As

Publication number Publication date
CN103843346A (zh) 2014-06-04
US20120230396A1 (en) 2012-09-13
JP2014520410A (ja) 2014-08-21
KR20140096395A (ko) 2014-08-05
BR112014005291B1 (pt) 2022-06-14
JP5855139B2 (ja) 2016-02-09
MX2014003721A (es) 2014-07-09
MX338400B (es) 2016-04-15
KR20140048322A (ko) 2014-04-23
TWI533670B (zh) 2016-05-11
CN103843346B (zh) 2017-06-23
BR112014005291A2 (pt) 2017-05-30
RU2014117312A (ru) 2015-11-10
TW201320757A (zh) 2013-05-16
WO2013046808A1 (en) 2013-04-04
SG2014010011A (en) 2014-05-29

Similar Documents

Publication Publication Date Title
US8588307B2 (en) Method and apparatus for encoding and decoding mode information
US8315304B2 (en) Method and apparatus for encoding and decoding transform coefficients
RU2584763C2 (ru) Способ декодирования изображения в форме битового потока
US10911783B2 (en) Method and apparatus for processing video signal using coefficient-induced reconstruction
KR101631280B1 (ko) 스킵 모드에 기초한 영상을 복호화하는 방법 및 장치
US20120183046A1 (en) Video decoder with reduced dynamic range transform with inverse transform shifting memory
AU2012207827A1 (en) Video decoder with reduced dynamic range transform with inverse transform shifting memory
WO2012124787A1 (en) A method for decoding video
Seki et al. Quantization-based image steganography without data hiding position memorization
US20150365673A1 (en) Video Decoder with Reduced Dynamic Range Transform with Inverse Transform Clipping
KR101710622B1 (ko) 스킵 모드에 따라 영상을 부호화, 복호화하는 방법 및 장치
AU2021203402B2 (en) Video decoder with reduced dynamic range transform with inverse transform shifting memory
KR101631278B1 (ko) 모드 정보를 부호화, 복호화하는 방법 및 장치
KR101631277B1 (ko) 스킵 모드에 따라 영상을 부호화, 복호화하는 방법 및 장치
US20120183044A1 (en) Video decoder with reduced dynamic range transform with memory storing
WO2012099267A1 (en) Video decoder with reduced dynamic range transform with multiple clipping

Legal Events

Date Code Title Description
QA4A Patent open for licensing

Effective date: 20180301