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

Иллюстрации

Показать все

Изобретение относится к кодированию изображений, и в частности к регулированию генерируемого количества кодовой информации до целевого количества кодовой информации, данного для одного изображения. Техническим результатом является повышение точности прогнозирования количества кодовой информации. Указанный технический результат достигается тем, что устройство (100) кодирования изображения выбирает таблицу VLC (переменной длины), соответствующую индексу nС выбора таблицы, который является средним значением количеств nА и nВ ненулевых коэффициентов, как кодирующих значений, на которых выполняется кодирование переменной длины в прилегающих сверху и прилегающих слева блоках 4×4 блока 4×4, как цели кодирования, в коэффициентах квантования, как данных цели кодирования, основанных на входном изображении (91). В том случае когда блок 4×4, как цель кодирования, находится на верхнем конце блока MB, устройство (100) кодирования изображения приравнивает количество nВ ненулевых коэффициентов прилегающего сверху блока 4×4 к количеству nА ненулевых коэффициентов прилегающего слева блока 4×4. Устройство (100) кодирования изображения осуществляет кодирование переменной длины на количестве ненулевых коэффициентов блока 4×4, как цели кодирования, в коэффициентах квантования, использующих выбранную таблицу VLC. 2 н. и 9 з.п. ф-лы. 14 ил.

Реферат

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

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

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

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

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

С другой стороны, например, этап 2 тестовой модели 5 ТМ5 (test model 5), как способ для регулирования генерируемого количества кодовой информации до целевого количества кодовой информации, данного для одного изображения, хорошо известен. В этом способе количество кодовой информации, назначаемое на изображение, равномерно распределено по макроблокам (MB), каждое распределенное количество устанавливается как целевое количество кодовой информации каждого MB, и настройка на целевое количество кодовой информации выполняется через управление с обратной связью в изображении.

Также в кодирующем процессе, основанном на способе избыточного сжатия, такого как MPEG (Moving Picture Experts Group), устройство кодирования изображения осуществляет ортогональную трансформацию, такую как DCT (Discrete Cosine Transform), а затем выполняет процесс квантования, таким образом осуществляя процесс уменьшения количества информации. Затем, устройство кодирования изображения управляет величиной квантования, чтобы управлять количеством кодовой информации. В это время между параметром квантования и генерируемым количеством кодовой информации устанавливается отношение однообразного уменьшения. Поэтому устройство кодирования изображения может прогнозировать генерируемое количество кодовой информации с помощью фактически рассчитанных количеств кодовой информации, использующих значения квантования соответствующих интервалов и осуществляя линейную интерполяцию прогнозируемого значения количества кодовой информации, расположенной в середине (двоичный поиск или ему подобный, выполняемый с помощью intra-VTR, такого как формат DV).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Фиг.3 - схема, иллюстрирующая базовую конфигурацию модуля квантования и вычислительного модуля CAVLC.

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

Фиг.5 - диаграмма, иллюстрирующая таблицу VLC процедуры выбора процесса.

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

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

Фиг.8 - диаграмма, иллюстрирующая процесс воспроизведения параметра.

Фиг.9 - схема, изображающая подробную конфигурацию модуля MB QP поиска назад.

Фиг.10 - диаграмма, иллюстрирующая процесс MB QP поиска назад.

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

Фиг.12 - диаграмма, иллюстрирующая процесс внутреннего прогнозирования поиска назад.

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

На фиг.14 представлено объяснение цифровых ссылок.

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

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

1. Первый вариант осуществления изобретения (частичное разделение в вычислительном модуле.

2. Второй вариант осуществления изобретения (конфигурация цепи модуля поиска назад).

3. Другие варианты осуществления изобретения.

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

1-1. Конфигурация устройства кодирования изображения

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

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

Для осуществления управления количеством кодовой информации устройство 100 кодирования изображения заранее выполняет предварительное кодирование, используя первый модуль 1 предварительного кодирования и второй модуль 2 предварительного кодирования, таким образом определяя главную кодирующую информацию, используемую в главном модуле 3 кодирования, например такую, как базовый параметр QPMB квантования, прогнозирующую матрицу Q MatrixD квантования, режим внутриэкранного прогнозирования, и группу активности.

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

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

Второй модуль 2 предварительного кодирования является модулем для выполнения второго процесса предварительного кодирования и включает в себя модуль 21 обработки внутриэкранного прогнозирования, модуль 22 DCT, модуль 23 квантования, модуль 24 расчета длины статистического кода, буфер 25, модуль 26 IDСТ (инверсного DCT), и модуль 27 деквантизации.

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

Модуль 4 управления количеством кодовой информации является модулем для осуществления управления количеством кодовой информации.

В устройстве 100 кодирования изображения поступающее извне входное изображение 91 поступает к первому кодирующему модулю 1 и буферам 5 и 6 задержки. Первый кодирующий модуль 1 грубо оценивает генерируемое количество кодовой информации для соответствующих параметров QP квантования. В первом модуле 1 кодирования поступающее входное изображение 91 поступает к модулю 16 расчета активности и модулю 11, определяющему режим внутриэкранного прогнозирования. Модуль 16 расчета активности сортирует блоки MB в группы активности, в соответствии со сложностью изображения. Модуль 16 расчета активности поставляет номера группы активности к модулю 14 квантования и модулю 4 управления количеством кодовой информации.

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

Модуль 12 обработки внутриэкранного прогнозирования генерирует данные разницы изображения из входного изображения 91, используя режим внутриэкранного прогнозирования, определенный с помощью режима внутриэкранного прогнозирования определяющего модуля 11, и поставляет данные разницы изображения к модулю 13 DCT. Модуль 13 DCT осуществляет процесс DCT, основываясь на данных разницы изображения, генерирует коэффициенты DCT и передает коэффициенты DCT к модулю 14 квантования.

Модуль 14 квантования осуществляет квантование параллельно с множеством этапов квантования, использующих выборочные параметры QP1 квантования, которые дискретно выбраны из параметров QP квантования, составляющих значения от 0 до 51. Например, модуль 14 квантования включает в себя n этапов квантования модулей от 14-1 до 14-n, соединенных параллельно, и осуществляет процесс квантования на основе n выбранных параметров QP1 квантования таким образом, чтобы генерировать n коэффициентов квантования. Кроме того, модуль 14 квантования рассматривает выбранные параметры QP1 квантования, как средние параметры BaseQP квантования изображения, и осуществляет процесс квантования, добавляя смещение, согласно номеру группы активности из модуля 16 расчета активности. Детальная конфигурация модуля 14 квантования будет описана ниже. Модуль 14 квантования поставляет n коэффициентов квантования к вычислительному модулю 15 CAVLC.

Вычислительный модуль 15 CAVLC осуществляет CAVLC процесс на соответствующих n коэффициентах квантования и поставляет генерированное количество кодовой информации соответствующих блоков MB к модулю 4 управления количеством кодовой информации.

Здесь, в первом модуле 1 предварительного кодирования, входное изображение 91 используется как прогнозируемое изображение, вместо локального декодированного изображения в модуле 12 обработки внутриэкранного прогнозирования. С другой стороны, в главном модуле 3 кодирования CAVLC и САВАС (Context-Adaptive Binary Arithmetic Coding) осуществляются как способы статистического кодирования, в то же время между ними осуществляется переключение.

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

Модуль 4 управления количеством кодовой информации выбирает, как параметр QPd прогнозируемого квантования, параметр QP квантования, в котором генерированное количество кодовой информации, имеющее низкую точность, наиболее приближено к целевому количеству кодовой информации. Этот параметр QPd прогнозируемого квантования является грубым значением, базирующимся на генерированных количествах кодовой информации с низкой точностью, которые рассчитываются первым модулем 1 предварительного кодирования простым способом, и это такое значение, в котором прогнозируется, что главное кодируемое генерированное количество кодовой информации при главном кодировании приближается к целевому количеству кодовой информации. Кроме того, в том случае, когда матрицы Q Matrix квантования выбираются адаптивно, модуль 4 управления количеством кодовой информации генерирует количества кодовой информации с низкой точностью для соответствующей матрицы Q Matrix квантования, и выбирает, как прогнозирующую матрицу Q MatrixD квантования, матрицу Q Matrix квантования, которая включает в себя параметры QP квантования, допустимые в матрице Q Matrix квантования, и которые имеют генерированное количество кодовой информации с низкой точностью, приближенное к целевому количеству кодовой информации с наименьшим отклонением.

Второй модуль 2 предварительного кодирования определяет базовый параметр QPMB квантования, который должен использоваться в главном модуле 3 кодирования. Во втором модуле 2 предварительного кодирования входное изображение 91, которое задерживается и передается из буфера 5 задержки, поставляется к модулю 21 обработки внутриэкранного прогнозирования. Модуль 21 обработки внутриэкранного прогнозирования кодирует входное изображение 91 через внутриэкранное прогнозирование, используя режим внутриэкранного прогнозирования, поставляемого из определяющего модуля 11 внутриэкранного режима прогнозирования к генерируемой разнице данных изображения, и поставляет разницу данных изображения к модулю 22 DCT.

Модуль 22 DCT осуществляет процесс DCT на разнице данных изображения, чтобы генерировать коэффициенты DCT и поставляет коэффициенты DCT в модуль 23 квантования. Модуль 23 квантования включает в себя три ступени модулей квантования: 23-1, 23-2 и 23-3. Модуль 23 квантования генерирует коэффициенты квантования с помощью квантования коэффициентов DCT на основе параметра QPd прогнозируемого квантования и параметров QP квантования, приближенных к параметру QPd прогнозируемого квантования, и поставляет коэффициенты квантования в вычислительный модуль 24 расчета длины статистического кода. Модуль 24 расчета длины статистического кода кодирует коэффициенты квантования, используя способ кодирования, применяемый в главном модуле 3 кодирования между CAVLC и САВАС, таким образом генерируя высокоточные генерируемые количества кодовой информации для соответствующих параметров QP квантования. На основе высокоточных генерируемых количеств кодовой информации, которые генерируются с помощью вычислительного модуля 24 расчета длины статистического кода, модуль 4 управления количеством кодовой информации определяет параметр QP квантования высокоточного генерируемого количества кодовой информации, которое наиболее приближено к целевому количеству кодовой информации, и которое должно быть базовым параметром QPMB квантования. Модуль 23 квантования поставляет коэффициенты квантования, генерированные на основе параметра QPd прогнозируемого квантования, к модулю 27 деквантизации. Модуль 27 деквантизации деквантизирует коэффициенты квантования, чтобы генерировать коэффициенты DCT, и поставляет коэффициенты DCT в модуль 26 IDСТ. Модуль 26 IDСТ осуществляет процесс IDСТ на коэффициентах DCT, чтобы генерировать локальное декодирующее изображение и передает изображение в буфер 25. Буфер 25 поставляет локальное декодирующее изображение в модуль 21 обработки внутриэкранного прогнозирования. В результате модуль 21 обработки внутриэкранного прогнозирования осуществляет внутриэкранный процесс прогнозирования, используя локальное декодирующее изображение как прогнозируемое изображение.

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

В главном модуле 3 кодирования входное изображение 91, которое задерживается и поступает из буфера 6 задержки, поступает к модулю 31 обработки внутриэкранного прогнозирования. Модуль обработки 31 внутриэкранного прогнозирования кодирует входное изображение 91 через внутриэкранное прогнозирование, используя режим внутриэкранного прогнозирования, поступающий из определяющего модуля 11 внутриэкранного режима прогнозирования, чтобы генерировать данные разницы изображения, и поставляет данные разницы изображения к модулю 32 DCT.

Модуль 32 DCT осуществляет процесс DCT на данных разницы изображения, чтобы генерировать коэффициенты DCT, и поставляет коэффициенты DCT к модулю 23* квантования. Модуль 33 квантования производит квантование коэффициентов DCT на основе базового параметра QPMB квантования, чтобы генерировать коэффициенты квантования, и поставляет коэффициенты квантования к вычислительному модулю 34 расчета длины статистического кода. Модуль 34 расчета длины статистического кода осуществляет статистическое кодирование на коэффициентах квантования, используя любой из модулей CAVLC и САВАС, и поставляет коэффициенты, как выходной поток 92, к внешнему устройству.

Модуль 33 квантования поставляет коэффициенты квантования, сгенерированные на основе базового параметра QPMB квантования к модулю 37 деквантизации. Модуль 37 деквантизации осуществляет деквантизацию коэффициентов квантования, чтобы генерировать коэффициенты DCT, и поставляет коэффициенты DCT к модулю 36 IDCT. Модуль 36 IDСТ осуществляет процесс IDCT на коэффициентах DCT, чтобы генерировать локальное декодированное изображение, и поставляет локальное декодированное изображение к модулю 31 внутриэкранной обработки прогнозирования через буфер 35. Модуль 31 обработки внутриэкранного прогнозирования осуществляет процесс внутриэкранного прогнозирования, используя локальное декодированное изображение, как прогнозируемое изображение.

Таким образом, устройство 100 кодирования изображения грубо оценивает генерируемые количества кодовой информации для соответствующих параметров QP квантования, как генерируемые количества кодовой информации низкой точности, используемые первым модулем 1 предварительного кодирования, и определяет параметр QPd прогнозируемого квантования на основе генерируемых количеств кодовой информации низкой точности. Устройство 100 кодирования изображения рассчитывает высокоточные генерируемые количества кодовой информации с высокой точностью, используя параметр QPd прогнозируемого квантования и параметры QP квантования, приближающиеся к ним, используя второй модуль 2 предварительного кодирования. Затем устройство 100 кодирования изображения определяет базовый параметр QPMB квантования на основе высокоточных генерируемых количеств кодовой информации, рассчитанных с высокой точностью, и использует параметр QPMB квантования для главного процесса кодирования, осуществляемого главным модулем 3 кодирования. Соответственно, устройство 100 кодирования изображения может рассчитать высокоточные генерируемые количества кодовой информации на основе базового параметра QPMB квантования с высокой точностью, без расчета генерируемых количеств кодовой информации, основанных на всех параметрах QP квантования, благодаря предварительному кодированию в два этапа: в первом модуле 1 предварительного кодирования и втором модуле 2 предварительного кодирования. В результате, устройство 100 кодирования изображения может определить соответствующий базовый параметр QPMB квантования с использованием простой конфигурации.

1-2. Конфигурации традиционного модуля квантования и расчетного модуля CAVLC.

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

Фиг.2 иллюстрирует и описывает конфигурации традиционного модуля 300 квантования и традиционного вычислительного модуля 400 CAVLC. Количество установленных модулей 300 квантования и вычислительных модулей 400 CAVLC равно количеству выбранных параметров QP1 квантования. Каждая пара модуля 300 квантования и вычислительного модуля 400 CAVLC рассчитывает генерируемое количество кодовой информации, основываясь на одном выбранном параметре QP1 квантования.

Модуль 300 квантования включает в себя MB QP расчетный модуль 301, модуль 302, генерирующий адрес сканирования, QP %6 трансформирующий модуль 303, QP/6 трансформирующий модуль 304, память RAM (Random Access Memory - ОЗУ) 305 масштабного коэффициента, умножитель 306, и многорегистровое циклическое сдвиговое устройство 307.

С другой стороны, вычислительный модуль 400 CAVLC включает в себя счетный модуль 401 TrailingOne, счетный модуль 402 TotalCoef, счетный модуль 403 TotalZero, счетный модуль 404 RunBefore, расчетный модуль 405 LevelLength, расчетный модуль 406 ZeroLeft, память ROM (постоянное запоминающее устройство - ПЗУ) 407 длины в битах TotalCoefLength, память ПЗУ 408 длины в битах TotalZeroLength, память ПЗУ 409 длины в битах RunBefore, сумматоры 410, 411 и 416, память 412 для сохранения строки границы nB блока MB, память nB holding memory 413, память nA holding memory 415, и модуль 414 выбора nB.

Модуль 300 квантования рассчитывает коэффициент Z квантования, используя следующее уравнение с использованием DCT коэффициента W и параметра QP квантования.

Z={(MF*16/QMatrix)*W+f}>>(15+QP/6).

Здесь MF - это масштабный коэффициент, рассчитанный из значения, определяемого стандартом AVC, a f - это коэффициент округления для определения позиции округления числа с повышением и округления числа с понижением.

В этой конфигурации следующие сигналы являются входными для модуля 300 квантования.

- сигнал AFF, показывающий имеет ли макроблок структуру поля или структуру кадра;

- сигнал 8×8/4×4, показывающий какой из 8×8 DCT и 4×4 DCT должен использоваться для ортогональной трансформации;

- группа активности;

- DCT коэффициенты как результат DCT.

Здесь «группа активности» поставляется как информация о смещении квантования соответствующих макроблоков по отношению к среднему параметру квантования Base QP, который является базовым параметром всего изображения. «DCT коэффициенты» поставляются в таком порядке, чтобы соответствовать для кодирования (например, в обратном порядке сканирования).

MB QP расчетный модуль 301 рассчитывает адаптивный параметр QPt квантования, который получается за счет смещения активностей в модулях MB из групп активности, и среднего параметра Base QP квантования (выбранный параметр QP1 квантования, который является установленным). QP %6 трансформирующий модуль 303 выводит средство оповещения, генерируемое с помощью разделения адаптивного параметра QPt квантования на «6» (т.е. любое из шести значений из 0, 1, 2, 3, 4 и 5) и поставляет остаток к масштабному коэффициенту 305 памяти RAM (Random Access Memory - ОЗУ) и QP/6 трансформирующему модулю 304.

Сигнал AFF и сигнал 8×8/4×4 являются входными в генерирующий модуль 302 адреса сканирования. Генерирующий модуль 302 адреса сканирования генерирует DCT адреса, показывающие входное положение DCT коэффициента на основании сигнала AFF и сигнала 8×8/4×4, и поставляет DCT адреса в масштабный коэффициент 305 ОЗУ.

Масштабный коэффициент памяти ОЗУ 305 удерживает коэффициент умножения, полученный из следующего уравнения.

Коэффициент умножения = 16×MF(8×8/4×4,QP,h,v)/Q Matrix (8×8/4×4,h,v).

Здесь h и v являются DCT адресами, показывающими горизонтальное и вертикальное направления в DCT коэффициенте, и изменяются в диапазоне от 0 до 7 в 8×8 и от 0 до 3 в 4×4. MF - это масштабный коэффициент, который является постоянным параметром, определяемым с помощью Н.264. Также, матрица квантования Q Matrix является параметром, который может быть установлен в кодировщике. Таким образом, масштабный коэффициент памяти ОЗУ 305 удерживает значение, рассчитанное с помощью умножения размера блока DCT (8×8/4×4), значения адаптивного параметра QPt квантования и масштабного коэффициента MF, который изменяется в соответствии с DCT адресами на «16» и деления этого произведения на матрицу квантования Q Matrix (MF*16/ Q Matrix). Масштабный коэффициент памяти ОЗУ 305 выводит коэффициент умножения, имеющий адаптивную фазу позиции сканирования к умножителю 306 на основании DCT адресов.

Когда из MB QP расчетного модуля 301 поступает адаптивный параметр QPt квантования, QP/6 трансформирующий модуль 304 выводит результат деления адаптивного параметра QPt квантования на целое число к многорегистровому циклическому сдвиговому устройству 307. Многорегистровое циклическое сдвиговое устройство 307 добавляет «15» к QP/6 трансформирующему модулю 304, чтобы рассчитать величину смещения, и поставляет величину смещения к вычислительному модулю 400 CAVLC. Выходное значение модуля 300 квантования, которое является результатом умножителя 306, смещенного многорегистровым циклическим сдвиговым устройством 307, эквивалентно тому, которое получено при осуществлении квантования (деления).

При получении выходных данных от модуля 300 квантования, вычислительный модуль 400 CAVLC рассчитывает генерированное количество кодовой информации, которое получено при выполнении фактического кодирования.

Вычислительный модуль 400 CAVLC кодирует TotalCoef, представляющий количество ненулевых коэффициентов, TrailingOne и trailing_ones_sign_flag, представляющий количество и знак коэффициентов, имеющих абсолютное значение, равное 1, последовательно расположенных в последний раз по времени, уровень, представляющий значение DCT коэффициента, total_zero, представляющий количество нулевых коэффициентов перед последним ненулевым коэффициентом, и run_before, представляющий количество нулей, последовательно расположенных перед ненулевым DCT коэффициентом, а также рассчитывает их кодовые длины. В это время вычислительный модуль 400 CAVLC осуществляет адаптивное кодирование на TotalCoef, представляющем количество ненулевых коэффициентов, и TrailingOne, представляющем количество и знак коэффициентов, имеющих абсолютное значение, равное 1, последовательно расположенных в последний раз по времени, в соответствии с состоянием окружающих 4×4 блоков. Вычислительный модуль 400 CAVLC выбирает таблицу VLC для каждого из 4×4 блоков на основе добавочного значения TotalCoef и TrailingOne.

Счетный модуль 401 TrailingOne считает количество значений 1 или -1, последовательно расположенных с верхней части, кроме нуля, среди входных значений из 16 образцов в блоке 4×4 в порядке, обратном сканированию, и поставляет это количество как TrailingOne к сумматору 411 и в память ROM (постоянное запоминающее устройство ПЗУ) 407 длины в битах TotalCoefLength. Счетный модуль 402 TotalCoef считает количество ненулевых коэффициентов, которые не считаются счетным модулем 401 TrailingOne и поставляет это количество, как TotalCoef, к сумматору 411, в память ПЗУ 407 длины в битах TotalCoefLength, и в память ПЗУ 408 длины в битах TotalZeroLength. Память ПЗУ 407 длины в битах TotalCoefLength адаптивно выбирает таблицы VLC в модулях блоков 4×4, в соответствии с результатом из сумматора 416, чтобы кодировать TotalCoef и TrailingOne, и поставляет их длину кодов в сумматор 410.

Счетный модуль 403 TotalZero считает количество нулевых коэффициентов, кроме нулей, последовательно расположенных в верхней части, и поставляет это количество, как total_zero, в память ПЗУ 408 длины в битах TotalZeroLength и расчетн