Устройство обработки изображений и способ обработки изображений

Иллюстрации

Показать все

Изобретение относится к устройству кодирования изображения и, в частности, к дополнению размера генерируемого кода до целевого размера кода, заданного для одной картинки, без выполнения внутреннего управления с обратной связью. Техническим результатом является обеспечение сжатия размера генерируемого кода для каждого приращения изображения ниже целевого размера кода правильным образом без использования фактора квантования, служащего в качестве основы шага квантования, с большом отклонением. Указанный технический результат достигается тем, что устройство кодирования изображения определяет базовый фактор квантования (QPMB), служащий в качестве подлежащего предсказанию фактора квантования в случае, когда генерируемый код основного кодирования приближается к целевому размеру кода во время кодирования входного изображения. Кодирующее изображения устройство кодирует входное изображение для каждого приращения при управлении с обратной связью путем выполнения квантования с помощью адаптированного параметра квантования (QPt) на основе среднего параметра. 2 н. и 12 з.п. ф-лы, 6 ил.

Реферат

Область техники, к которой относится изобретение

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

Уровень техники

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

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

С другой стороны, в качестве способа дополнения размера генерируемого кода до целевого размера кода, заданного для одной картинки, например, общеизвестен этап 2 ТМ5 (тестовой модели 5). Это такой метод, в котором размер кода, выделенного для картинки, распределенной по макроблокам (МБ) (MB), принимается в качестве целевого размера кода для макроблоков, и управление с обратной связью применяется в картинке.

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

Этот способ можно применять не только к способу кодирования, использующему фиксированную таблицу, такому как MPEG2 или тому подобное, но также к способу контекстного адаптивного кодирования, используемому для AVC или тому подобного.

Патентный документ 1: патент Японии №3358620.

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

Например, при способе на этапе 2 ТМ5 при кодирующем изображения устройстве в случае, когда шаг квантования участке вплоть до появления обратной связи слишком большой, качество изображения этой части будет ухудшаться по сравнению с другими участками, а в случае, когда величина квантования слишком мала, размер кода избыточно используется в этом участке, что может повлиять на другие участки.

Кроме того, в кодирующем изображения устройстве целевой размер кода для каждого из МБ установлен постоянно на некоторый размер кода, и вызывается неприемлемое распределение размера кода, когда имеется отклонение, касающееся затрудненности изображения в экране или тому подобное.

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

Сущность изобретения

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

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

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

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

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

Краткое описание чертежей

Фиг.1 представляет собой структурную схему кодирующего изображения устройства согласно первому варианту осуществления настоящего изобретения.

Фиг.2 является блок-схемой алгоритма для подробного описания процедуры обработки кодирования соответственно кодирующему изображения устройству согласно первому варианту осуществления настоящего изобретения.

Фиг.3 является блок-схемой алгоритма для дальнейшего описания обработки переключения адаптивной Q матрицы.

Фиг.4 является концептуальной диаграммой для описания того, что выполняется коррекция QP с дискретными значениями, и размеры кодов вычисляются путем интерполирования в отношении QP между ними.

Фиг.5 представляет собой структурную схему кодирующего изображения устройства согласно второму варианту осуществления настоящего изобретения.

Фиг.6 является блок-схемой алгоритма для описания процедуры обработки в отношении обработки определения базового QP с управлением с обратной связью.

Подробное описание изобретения

Наилучшие варианты осуществления настоящего изобретения (здесь и далее именуемые просто вариантами осуществления) будут подробно описаны со ссылкой на чертежи. Отметим, что описание будет выполняться в соответствии с такой последовательностью.

1. Первый вариант осуществления (размышление о размере генерируемого кода с помощью дискретно выбранных параметров квантования)

2. Второй вариант осуществления (управление с обратной связью)

3. Прочие варианты осуществления

1. Первый вариант осуществления

1-1. Признаки настоящего изобретения

Кодирующее изображения устройство 100 и способ кодирования изображений согласно данному варианту осуществления имеют такие признаки, как описанные ниже.

Кодирующее изображения устройство 100 применяет схему сжатия изображения, использующую арифметическое кодирование, представленное стандартом H.264/AVC (усовершенствованное кодирование видеосигнала; стандарт усовершенствованного кодирования движущихся изображений со сжатием). Кодирующее изображения устройство 100 объединяет параллельное предварительное кодирование (предкодирование) и последовательное предкодирование. Таким образом, кодирующее изображения устройство 100 выполняет предсказание с великолепной точностью при сокращении размера схем и возрастания запаздывания (времени задержки).

Конкретнее, кодирующее изображения устройство 100 выполняет квантование и часть вычисления длины кода вместе параллельно первым и вторым предкодирующими блоками 1 и 2, а другие элементы обработки используются совместно, тем самым достигается сокращение размера схем согласно совместному использованию схем.

То есть исходно, в случае выполнения параллельного предкодирования, хотя необходимо обеспечить все элементы обработки параллельно, в кодирующем изображения устройстве 100 согласно данному варианту осуществления правильно определяется элемент обработки, который можно использовать совместно без влияния на точность, и схема, относящаяся к этому элементу обработки, используется совместно. Тем самым увеличение в размере первого и второго предкодирующих блоков 1 и 2 и запаздывание (время задержки) подавляются.

В первом предкодирующем блоке 1 параллельное предкодирование, при котором точность понижается, а размер схем и нагрузка обработки подавляются, выполняется по широкому диапазону параметров (QP) квантования, и параметр QP квантования для реализации целевого размера кода оценивается приближенно. Во втором предкодирующем блоке 2 параллельное предкодирование, от которого точность увеличивается, выполняется по узкому диапазону с увеличенной точностью, и определяется базовый параметр QPMB квантования, используемый в основном кодирующем блоке 3. Как описано выше, кодирующее изображения устройство 100 снижает нагрузку при обработке, увеличивая точность кодирования изображений. Далее, ошибка вследствие упрощения предкодирования имеет соотношение с битовой скоростью и параметром QP квантования, и, соответственно, статистическая модель, как будет подробно описано позже, создается заранее, коррекция ошибки выполняется на основе битовой скорости и параметра QP квантования.

Фиг.1 иллюстрирует и описывает конфигурацию кодирующего изображения устройства 100 согласно варианту осуществления настоящего изобретения.

Данное кодирующее изображения устройство 100 включает в себя первый предкодирующий блок 1, второй предкодирующий блок 2, основной кодирующий блок 3, блок 4 управления размером кода и буферы 5 и 6 задержки.

Первый предкодирующий блок 1 представляет собой модуль для выполнения первого предкодирования и включает в себя блок 11 определения режима внутриэкранного предсказания, блок 12 обработки внутриэкранного предсказания, блок 13 дискретного косинусного преобразования (ДКП) (DCT), блок 14 квантования, блок 15 вычисления длины статистического кода и блок 16 вычисления активности.

Второй предкодирующий блок 2 представляет собой модуль для выполнения второго предкодирования и включает в себя блок 21 обработки внутриэкранного предсказания, блок 22 ДКП, блок 23 квантования, блок 24 вычисления длины статистического кода, буфер 25, блок 26 обратного ДКП (ОДКП) (IDCT) и блок 27 обратного квантования.

Основной кодирующий блок 3 представляет собой модуль для выполнения основного кодирования и включает в себя блок 31 обработки внутриэкранного предсказания, блок 32 ДКП, блок 33 квантования, блок 34 статистического кодирования, буфер 35, блок 36 ОДКП и блок 37 обратного квантования.

Блок 4 управления размером кода представляет собой модуль для выполнения управления размером кода.

1-2. Предсказание параметра квантования и матриц квантования

1-2-1. Вычисление размера генерируемого кода низкой точности

Кодирующее изображения устройство 100 адаптивно выбирает и использует, например, три матрицы квантования «Q матрица» в соответствии со сложностью кодирования (подробное описание будет дано позже). Кодирующее изображения устройство 100 устанавливает одну матрицу квантования «Q матрица» посредством простой обработки первым предкодирующим блоком 1 в отношении параметров QP квантования в диапазоне, который может быть принят устанавливаемой матрицей квантования «Q матрица». Здесь и далее этот размер генерируемого кода, оцененный как результаты работы первого предкодирующего блока 1, будут называться размером генерируемого кода низкой точности. Кодирующее изображения устройство 100 выполняет такую же обработку в отношении всех матриц квантования «Q матрица» и вычисляет размер генерируемого кода низкой точности при смене матрицы квантования «Q матрица» и параметра QP квантования. В кодирующем изображения устройстве 100 параметр QP квантования и матрица квантования «Q матрица», при которых размер генерируемого кода низкой точности является наиболее близким к целевому размеру кода, будут устанавливаться в качестве предсказанных параметра QPd квантования, используемого как средний параметр квантования «БазовыйQР» для картинки на следующем этапе (вторым предкодирующим блоком 2), и матрицы квантования «Q матрица» для картинки, используемой на следующем этапе (здесь и далее называемой предсказанной матрицей квантования «Q матрицаD»).

В это же время кодирующее изображения устройство 100 использует часть дискретно выбранных параметров QP квантования (здесь и далее они будут называться выбранными параметрами QP1 квантования) для вычисления размера генерируемого кода низкой точности для входного изображения 91. Кодирующее изображения устройство 100 вычисляет размер генерируемого кода низкой точности между выбранными параметрами QP1 квантования путем интерполирования, благодаря чему вычисляется размер генерируемого кода низкой точности в отношении всех из диапазона параметров QP квантования в диапазоне, который может быть принят матрицами квантования «Q матрица».

На практике, входное изображение 91 сначала вводится в блок 11 определения режима внутриэкранного предсказания в первом предкодирующем блоке 1. Блок 11 определения режима внутриэкранного предсказания генерирует данные разностного изображения во всех режимах внутриэкранного предсказания на основе входного изображения 91, а также определяет режим внутриэкранного предсказания на основе предсказаний размера генерируемого кода в данных разностного изображения. Предсказанный режим (предсказанное направление) определяется из девяти предсказанных режимов в приращениях из минимум 4×4 пикселов.

Этот определенный режим внутриэкранного предсказания передается в блок 12 обработки внутриэкранного предсказания, а также передается во второй предкодирующий блок 2 и основной кодирующий блок 3. Этот режим внутриэкранного предсказания используется также для второго предкодирования вторым предкодирующим блоком 2 и для основного кодирования основным кодирующим блоком 3.

Затем, блок 12 обработки внутриэкранного предсказания вычисляет разностное изображение между предсказанным изображением и входным изображением 91 для генерирования данных разностного изображения. Предсказанное изображение, используемое здесь, создается из входного изображения 91, чтобы сократить обработку. Таким образом, первый предкодирующий блок 1 выполняет обработку внутриэкранного предсказания, за счет чего блок обратного квантования, блок ОДКП и буфер могут быть сокращены и размер схем можно сократить.

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

Как описано выше, один из признаков первого предкодирования состоит в том, что кодирование CAVLC используется для вычисления размера кодов, даже когда при основном кодировании в качестве схемы статистического кодирования используется адаптивное к контексту двоичное арифметическое кодирование (САВАС). Отметим, что кодирование САВАС является адаптивным к контексту двоичным арифметическим кодированием.

Здесь, блок 14 квантования включает в себя блоки 14-1, …, 14-n (n=1, 2, 3, …) квантования, которые включены параллельно, а блок 15 вычисления длины статистического кода включает в себя блоки 15-1, …, 15-n (n=1, 2, 3,….) вычисления длины статистического кода, которые включены параллельно. Значение n установлено, например, равным 15. Блок 14 квантования устанавливает в каждом блоке 14-1, …, 14-n квантования выбранные параметры QP1 квантования, соответствующие устанавливаемой матрице квантования «Q матрица», из параметров QP квантования между 0 и 51. Эти выбранные параметры QP1 квантования дискретно выбираются на произвольном интервале из диапазона параметров QP квантования, которые могут быть приняты матрицей квантования «Q матрица». Отметим, что выбранные параметры QP1 квантования можно выбрать на некотором интервале, например, или же можно выбрать на интервале, который изменяется со значением параметра QP квантования. При данной конфигурации первый предкодирующий блок 1 выполняет квантование и вычисление длины кода параллельно по отношению ко множеству параметров QP квантования, число которых является таким же, как для описанного выше параллельного числа, и выдает каждый размер генерируемого кода в блок 4 управления размером кода.

То есть первый предкодирующий блок 1 выполняет первое предкодирование по широкому диапазону параметров QP квантования посредством параллельного предкодирования, вследствие чего сокращается размер схем, связанный с блоком 14 квантования и блоком 15 вычисления длины статистического кода, благодаря чему вычисляются размер генерируемого кода в отношении широкого диапазона параметров QP квантования.

Здесь, блок 16 вычисления активности вычисляет активность параллельно с определением режима внутриэкранного предсказания блоком 11 определения режима внутриэкранного предсказания и группирует каждый макроблок (MB) с помощью этой активности. То есть, например, в предположении случая, когда группируются NumOfActivityGroup, блок 16 вычисления активности сравнивает значение активности с порогами ActivityThreshold[0] - ActivityThreshold[NumOfActivityGroup-2], благодаря чему определяется группа активности.

Отметим, что параметр QP квантования, реально используемый в процессе квантования, получают добавлением сдвига (AdaptQPDelta), который зависит от группы активности, к среднему параметру QP квантования (БазовыйQР) для картинки.

MB_QP=БазовыйQР+AdaptQpDelta[группа_активности]

Например, если номер группы активности NumOfActivityGroup равен 13, каждое значение сдвига AdaptQpDelta можно определить как:

AdaptQpDelta[13]={-6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6}.

Номер группы активности (ActivityGroup), определенный в отношении каждого MB, вводится в блок 14 квантования. Блок 14 квантования вычисляет адаптивный параметр QPt квантования добавлением сдвига согласно группе активности к каждому из выбранных параметров QP1 квантования. Блок 14 квантования выполняет обработку квантования на коэффициентах ДКП на основе адаптивного параметра QPt квантования.

Первый предкодирующий блок 1 задает следующую матрицу квантования «Q матрица» и выбранные параметры QP1 квантования, соответствующие матрице квантования «Q матрица», благодаря чему размер генерируемого кода вычисляется одинаково. В результате этого первый предкодирующий блок 1 вычисляет размер генерируемого кода каждой из матриц квантования «Q матрица» и выбранных параметров QP1 квантования, соответствующих матрицам квантования «Q матрица».

1-2-2. Коррекция ошибки в размере генерируемых кодов

Блок 4 управления размером кода выполняет коррекцию в отношении размера генерируемого кода, вычисленного в первом предкодирующем блоке 1.

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

Первая причина ошибки обусловлена тем, что входное изображение 91 используется для обработки внутриэкранного предсказания вместо локально декодированного (Local Decode) экрана. В этом случае не происходит искажения вследствие кодека на экране, используемом для внутриэкранного предсказания, и, соответственно, имеется тенденция, при которой эффективность кодирования превосходит эффективность кодирования при реальном кодировании, и генерируется малый размер кода. Размер этой ошибки зависит от размера искажения, и, соответственно, имеется тенденция, при которой при соотношении между размером генерируемого кода и ошибкой, чем меньше битовая скорость (Bit rate), тем больше ошибка. Помимо того, при соотношении между параметром QP квантования и ошибкой имеется тенденция, при которой чем больше параметр QP квантования, тем больше ошибка. Соответственно, статистические данные по размеру ошибки готовятся заранее и определяются как функция от битовой скорости «r» и параметра QP квантования «q».

Конкретно, блок 4 управления размером кода создает каждую из средней модели ошибки согласно битовой скорости и средней модели ошибки согласно параметру QP квантования заранее в отношении размера генерируемого кода, когда кодирование осуществляется посредством CAVLC. Эта модель ошибки сохраняется заранее в качестве, например, численного выражения или таблицы, соответствующих каждому из параметра QP квантования и битовой скорости. Исходя из параметра QP квантования и битовой скорости блок 4 управления размером кода вычисляет величины коррекции C_rate и C_qp соответственно, представляющие подлежащую коррекции ошибку на основе соответствующих моделей ошибки. Из этих величин коррекции C_rate и C_qp, соответствующих параметру QP квантования и битовой скорости, блок 4 управления размером кода выбирает меньшее по значению в качестве величины коррекции Cv в соответствии с нижеследующим уравнением.

Величина коррекции Cv=min(C_rate, C_qp)

Таким образом, величина коррекции ошибки увеличивается чрезмерно, и, соответственно, скорректированный размер генерируемого кода предотвращается от увеличения по сравнению с размером генерируемого кода высокой точности, вычисленного во втором предкодирующем блоке 2. Отметим, что величины коррекции C_rate и C_qp каждая указывают отношение (%) величины коррекции для каждого из размера генерируемого кода (размер кода предкодирования), вычисленного первым предкодирующим блоком 1.

Блок 4 управления размером кода перемножает каждый из размера генерируемого кода, вычисленных первым предкодирующим блоком 1, на величину коррекции Cv в соответствии с нижеследующим уравнением, благодаря чему вычисляется величина коррекции в отношении размера генерируемого кода (здесь и далее она называется размером кода коррекции CAVLC).

Размер кода коррекции CAVLC = Размер кода предкодирования × Cv.

Блок 4 управления размером кода добавляет размер кода коррекции CAVLC к размеру генерируемого кода, благодаря чему вычисляется размер генерируемого кода низкой точности в отношении CAVLC.

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

Выявлено, что ошибка вследствие САВАС изменяется в обратную сторону по отношению к параметру QP квантования и битовой скорости, и величина этого изменения мала по сравнению с ошибкой, вызванной кодированием согласно размеру кода CAVLC.

Поэтому величина коррекции по отношению к САВАС (здесь и далее называемая величиной коррекции САВАС) определяется как функция от битовой скорости «r» и параметра QP квантования «q». В то же время величина Cb коррекции вычисляется по следующему уравнению.

Величина коррекции Cb=min (r, q).

Блок 4 управления размером кода перемножает каждый из размера генерируемого кода (размеры коды предкодирования), вычисленного первым предкодирующим блоком 1, на величину коррекции Cv в соответствии с приведенным ниже уравнением, благодаря чему вычисляется величина коррекции по отношению к размеру генерируемого кода (здесь и далее называемого размером кода коррекции САВАС).

Размер кода коррекции САВАС = Размер кода предкодирования × Cb.

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

Затем блок 4 управления размером кода выполняет процесс оценивания для параметра квантования (QP). Как описано выше, первый предкодирующий блок 1 получает размер генерируемого кода за счет выполнения предкодирования с использованием выбранного параметра QP1 квантования с дискретным значением на произвольном интервале. Блок 4 управления размером кода вычисляет размер генерируемого кода путем интерполирования (указанного белыми кружками) в отношении параметров QP квантования иных, нежели выбранные параметры QP1 квантования, в диапазоне параметров QP квантования, которые могут быть приняты матрицей квантования «Q матрица». В качестве процесса интерполирования можно использовать обычный процесс интерполирования, такой как линейная интерполяция или тому подобное.

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

Таким образом, блок 4 управления размером кода вычисляет размер генерируемого кода низкой точности в отношении CAVLC путем коррекции размера генерируемого кода, вычисленного первым предкодирующим блоком 1, для ошибки в размере генерируемого кода, генерируемого в соответствии с упрощенной обработкой в первом предкодирующем блоке 1, касающейся размера генерируемого кода первым предкодирующим блоком 1. Тем самым блок 4 управления размером кода может улучшать точность предсказания размера генерируемого кода за счет обработки упрощенного кодирования. Путем использования размера генерируемого кода в отношении CAVLC блок 4 управления размером кода использует размер генерируемого кода низкой точности в отношении САВАС для вычисления размера генерируемого кода низкой точности, который является предсказанным размером для размера генерируемого кода вследствие САВАС. Таким образом, блок 4 управления размером кода может оценивать размер генерируемого кода низкой точности вследствие САВАС без выполнения САВАС, из-за которого обработка усложняется. Блок 4 управления размером кода предсказывает размер генерируемого кода в отношении параметров QP квантования иных, нежели выбранные параметры QP1 квантования, посредством процесса интерполирования из размера генерируемого кода, предсказанного выбранными параметрами QP1 квантования, которые выбраны дискретно. Тем самым блоку 4 управления размером кода не нужно брать на себя труд по кодированию входного изображения 91 за счет использования всех параметров QP квантования, что дает возможность упростить конфигурацию первого предкодирующего блока 1.

1-2-3. Определение предсказанной матрицы квантования

Как описано выше, размер генерируемого кода низкой точности вычисляется в отношении всех параметров QP квантования, которые могут быть приняты матрицей квантования «Q матрица». Блок 4 управления размером кода сменяет матрицу квантования «Q матрица» в соответствии со сложностью кодирования и выбирает на основе размера генерируемого кода, соответствующего измененной матрице квантования «Q матрица», тот параметр QP квантования, который является ближайшим к целевому размеру кода, в качестве базового параметра QPMB квантования.

Блок 4 управления размером кода выбирает параметр QP квантования, используемый в то время, когда получается размер генерируемого кода низкой точности, ближайший к целевому размеру кода, в качестве ближайшего параметра QPn квантования для каждой матрицы квантования «Q матрица». Блок 4 управления размером кода использует ближайший параметр QPn квантования, выбранный для каждой из матриц квантования «Q матрица», например, в качестве сложности кодирования. Понятно, что можно также использовать и иной показатель, такой как активность или тому подобное. Здесь, номер матриц квантования «Q матрица», подлежащих переключению для использования, принимается как NumOfMatrixId, где Id (идентификаторы) назначается в нисходящем порядке из матрицы квантования «Q матрица» с легким градиентом, а максимальный параметр QP в диапазоне, который может быть принят каждой из матриц квантования «Q матрица», принимается как QMatrixThreshold[Id].

Блок 4 управления размером кода сравнивает ближайший параметр QPn квантования и QMatrixThreshold, начиная от матрицы квантования «Q матрица» с малым значением Id. Блок 4 управления размером кода определяет матрицу квантования «Q матрица» с наименьшим Id в качестве предсказанной матрицы квантования «Q матрицаD» среди матриц квантования «Q матрица» с соседними параметрами QPn квантования, меньшими, чем QMatrixThreshold[Id]. Блок 4 управления размером кода определяет ближайший параметр QPn квантования в предсказанной матрице квантования «Q матрица» в качестве предсказанного параметра QPd.

То есть блок 4 управления размером кода определяет матрицу квантования «Q матрица», имеющую наименьший градиент, в качестве предсказанной матрицы квантования «Q матрицаD» среди матриц квантования «Q матрица», которые могут принимать параметры QP квантования, у которых размер генерируемого кода низкой точности близок к целевому размеру кода. Эта предсказанная матрица квантования «Q матрицаD» используется также для основного кодирования основным кодирующим блоком 3. Блок 4 управления размером кода может использовать матрицу квантования «Q матрица», имеющую наименьший градиент среди тех, которые отвечают условию на размер генерируемого кода низкой точности, посредством чего ухудшение в качестве изображения можно предотвратить насколько возможно.

Отметим, что блок 4 управления размером кода управляет первым предкодирующим блоком 1 для вычисления по порядку от матрицы квантования «Q матрица» с малым значением Id размера генерируемого кода низкой точности в отношении выбранных параметров QP1 квантования в диапазоне, который может быть принят матрицей квантования «Q матрица». Затем, в случае выявления матрицы квантования «Q матрица» с ближайшим параметром QPn квантования, меньшим, нежели QMatrixThreshold[Id], блок 4 управления размером кода определяет эти матрицу квантования «Q матрица» и ближайший параметр QPn квантования в качестве предсказанной матрицы квантования «Q матрицаD» и предсказанного параметра QPd квантования. В то же время блок 4 управления размером кода управляет первым предкодирующим блоком 1 для запуска обработки следующей картинки. То есть блок 4 управления размером кода управляет первым предкодирующим блоком 1, чтобы не вычислять размер генерируемого кода низкой точности для матрицы квантования «Q матрица» со следующим Id в отношении обрабатываемой картинки. Таким образом, блок 4 управления размером кода может сократить время обработки, необходимое для определения предсказанного параметра QPd квантования и предсказанной матрицы квантования «Q матрицаD».

Таким образом, блок 4 управления размером кода выбирает среди матриц квантования «Q матрица», которые могут принимать параметры QP квантования, у которых размер генерируемого кода низкой точности приближается к целевому размеру кода, матрицу квантования «Q матрица» с наименьшим градиентом в качестве предсказанной матрицы квантования «Q матрицаD», чтобы предотвратить ухудшение качества изображения. Блок 4 управления размером кода выбирает параметр QP квантования в предсказанной матрице квантования «Q матрицаD», с которым размер генерируемого кода низкой точности становится ближайшим к целевому размеру кода, в качестве предсказанного параметра QPd квантования. Тем самым блок 4 управления размером кода может выбирать в качестве предсказанного параметра QPd квантования тот параметр QP квантования, с которым ра