способ обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения
Классы МПК: | H04N7/30 с использованием кодирования с преобразованием H03M7/40 преобразование в коды переменной длины или из них, например код Шеннона-Фано, код Хафмана, код Морзе |
Автор(ы): | ОГУРА Такаюки (JP), СИГЕМОТО Даидзоу (JP) |
Патентообладатель(и): | СОНИ КОРПОРЕЙШН (JP) |
Приоритеты: |
подача заявки:
2007-03-14 публикация патента:
27.06.2011 |
Изобретение относится к способу обработки движущегося изображения и может быть применено, например, в устройстве кодирования и декодирования движущихся изображений. Техническим результатом является повышение скорости обработки движущегося изображения. Указанный технический результат достигается тем, что элементы синтаксиса с высокой частотой появления обрабатывают, используя переменные состояния вероятности, содержащиеся во втором запоминающем устройстве, задержка доступа которого мала, и другие элементы синтаксиса обрабатывают, используя переменные состояния вероятности, содержащиеся в первом запоминающем устройстве, задержка доступа которого велика. 3 н. и 5 з.п ф-лы, 12 ил.
![способ обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения, патент № 2423017](/images/patents/37/2423017/2423017-2.jpg)
![способ обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения, патент № 2423017](/images/patents/37/2423017/2423017-3.jpg)
![способ обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения, патент № 2423017](/images/patents/37/2423017/2423017-4.jpg)
![способ обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения, патент № 2423017](/images/patents/37/2423017/2423017-5.jpg)
![способ обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения, патент № 2423017](/images/patents/37/2423017/2423017-6.jpg)
![способ обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения, патент № 2423017](/images/patents/37/2423017/2423017-7.jpg)
![способ обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения, патент № 2423017](/images/patents/37/2423017/2423017-8.jpg)
![способ обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения, патент № 2423017](/images/patents/37/2423017/2423017-9.jpg)
![способ обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения, патент № 2423017](/images/patents/37/2423017/2423017-10.jpg)
![способ обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения, патент № 2423017](/images/patents/37/2423017/2423017-11.jpg)
![способ обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения, патент № 2423017](/images/patents/37/2423017/2423017-12.jpg)
Формула изобретения
1. Способ обработки движущегося изображения, состоящий в расчете контекста и кодировании или декодировании движущегося изображения, отличающийся тем, что содержит: этап обработки расчета контекста, состоящий в расчете контекста элементов синтаксиса, составляющих движущееся изображение, и последующем детектировании переменных состояния вероятности, которые могут быть приняты элементами синтаксиса; и этап обработки переменных состояния вероятности, состоящий в последовательном выборе и обработке переменных состояния вероятности, полученных на этапе обработки расчета контекста, и кодировании или декодировании элементов синтаксиса, в котором этап обработки переменных состояния вероятности включает в себя этап выбора переменных состояния вероятности, состоящий в выборе переменных состояния вероятности, содержащихся в модуле сохранения состояния вероятности, в котором первое запоминающее устройство и второе запоминающее устройство, задержка доступа которого мала по сравнению с первым запоминающим устройством, предусмотрены в модуле сохранения состояния вероятности, и в котором на этапе выбора переменной состояния вероятности последовательно выбирают переменные состояния вероятности из первого запоминающего устройства, при обработке элементов синтаксиса, которые имеют низкую частоту появления, и последовательно выбирают переменные состояния вероятности из второго запоминающего устройства, при обработке элементов синтаксиса, которые имеют высокую частоту появления.
2. Способ обработки движущегося изображения по п.1, отличающийся тем, что элементы синтаксиса, которые имеют высокую частоту появления, представляют собой данные коэффициента, получаемые в результате выполнения обработки ортогонального преобразования данных изображения, формирующих движущееся изображение в модулях заданных блоков.
3. Способ обработки движущегося изображения по п.1, отличающийся тем, что второе запоминающее устройство представляет собой регистр.
4. Способ обработки движущегося изображения по п.1, отличающийся тем, что в первом запоминающем устройство содержатся переменные состояния вероятности, требуемые для обработки всех элементов синтаксиса, и способ обработки движущегося изображения содержит этап записи во второе запоминающее устройство, состоящий в считывании части переменных состояния вероятности, содержащихся в первом запоминающем устройстве, и сохранении считываемой части переменных состояния вероятности во втором запоминающем устройстве.
5. Способ обработки движущегося изображения по п.4, отличающийся тем, что на этапе обработки расчета контекста рассчитывают контекст последующего элемента синтаксиса и детектируют переменные состояния вероятности последующего элемента синтаксиса в период, в течение которого переменные состояния вероятности обрабатывают на этапе обработки переменной состояния вероятности, и на этапе записи во второе запоминающее устройство сохраняют во втором запоминающем устройстве переменные состояния вероятности последующего элемента синтаксиса, которые детектируют на этапе обработки расчета контекста, в период, в течение которого переменные состояния вероятности обрабатывают на этапе обработки переменных состояния вероятности.
6. Способ обработки движущегося изображения по п.5, отличающийся тем, что среди переменных состояния вероятности, которые, вероятно, должны быть детектированы в элементах синтаксиса, которые имеют высокую частоту появления, при обработке на этапе записи во второе запоминающее устройство предусмотрен этап предварительной обработки, состоящий в сохранении заранее из первого запоминающего устройства во второе запоминающее устройство переменных состояния вероятности, обработку которых слишком поздно начинать для переменных состояния вероятности последующего элемента синтаксиса на этапе обработки переменной состояния вероятности.
7. Носитель записи, на котором записана программа способа обработки движущегося изображения, состоящего в расчете контекста и кодировании или декодировании движущегося изображения, выполнение программы компьютером приводит к осуществлению способа обработки движущегося изображения, содержащего: этап обработки расчета контекста, состоящий в расчете контекста элементов синтаксиса, составляющих движущееся изображение, и последовательном детектировании переменных состояния вероятности, которые могут принимать элементы синтаксиса; и этап обработки переменной состояния вероятности, состоящий в последовательном выборе и обработке переменных состояния вероятности, полученных на этапе обработки расчета контекста, и кодировании или декодировании элементов синтаксиса, в котором этап обработки переменной состояния вероятности включает в себя этап выбора переменной состояния вероятности, состоящий в выборе переменных состояния вероятности, содержащихся в модуле сохранения состояния вероятности, в которой первое запоминающее устройство и второе запоминающее устройство, задержка доступа которого мала по сравнению с первым запоминающим устройством, предусмотрены в модуле сохранения состояния вероятности, и в которой на этапе выбора переменной состояния вероятности последовательно выбирают переменные состояния вероятности из первого запоминающего устройства при обработке элементов синтаксиса, которые имеют низкую частоту появления, и последовательно выбирают переменные состояния вероятности из второго запоминающего устройства при обработке элементов синтаксиса, которые имеют высокую частоту появления.
8. Устройство обработки движущегося изображения, которое рассчитывает контекст и кодирует или декодирует движущееся изображение, отличающееся тем, что содержит: модуль расчета контекста, который рассчитывает контекст элементов синтаксиса, составляющих движущееся изображение, и последовательно детектирует переменные состояния вероятности, которые могут быть приняты элементами синтаксиса; модуль сохранения состояния вероятности, в котором предусмотрены первое запоминающее устройство и второе запоминающее устройство, задержка доступа которого мала по сравнению с первым запоминающим устройством, причем переменные состояния вероятности содержатся в первом и втором запоминающих устройствах; и модуль обработки переменной состояния вероятности, который последовательно выбирает и обрабатывает переменные состояния вероятности из модуля сохранения состояния вероятности на основе результата детектирования модуля расчета контекста, и кодирует или декодирует элементы синтаксиса, в котором модуль обработки переменной состояния вероятности последовательно выбирает переменные состояния вероятности из первого запоминающего устройства при обработке элементов синтаксиса, которые имеют низкую частоту появления, и последовательно выбирает переменные состояния вероятности из второго запоминающего устройства при обработке элементов синтаксиса, которые имеют высокую частоту появления.
Описание изобретения к патенту
Область техники, к которой относится изобретение
Изобретение относится к способу обработки движущегося изображения, программе способа обработки движущегося изображения, носителю записи, на котором записана программа способа обработки движущегося изображения, и устройству обработки движущегося изображения и может быть применено, например, в устройстве кодирования и в устройстве декодирования движущихся изображений на основе ITU (МСЭ, Международный союз электросвязи)-Т Н.264. В настоящем изобретении описана обработка элементов синтаксиса с высокой частотой появления, при которой используются переменные состояния вероятности, содержащиеся во втором запоминающем устройстве, задержка доступа к которому мала, и обработка других элементов синтаксиса с использованием переменных состояния вероятности, содержащихся в первом запоминающем устройстве, задержка доступа к которому велика, в результате чего исключается увеличение общего размера конструкции, и повышается скорость обработки по сравнению с прошлым.
Уровень техники
До настоящего времени в процессе кодирования движущегося изображения применяли технологию обработки энтропийного кодирования для эффективного сжатия данных движущегося изображения. Кроме того, в MPEG (ГЭДИ, Группа экспертов по вопросам движущегося изображения) 2, MPEG 4 и т.д. применяют обработку с переменной длиной кодирования для такой обработки энтропийного кодирования. Кроме того, в ITU-T Н.264 к этой энтропии применяют основанную на контексте адаптивную двоичную арифметическую обработку кодирования (САВАС, КАДАК, основанная на контексте адаптивная двоичная арифметическая обработка кодирования).
Здесь, поскольку основанная на контексте адаптивная двоичная арифметическая обработка кодирования может эффективно выполнять сжатие данных по сравнению с обработкой кодирования с переменной длиной, когда переход данных выполняют с определенной скоростью передачи битов, качество изображения может быть улучшено при обработке кодирования в соответствии с ITU-T Н.264 по сравнению с обработкой кодирования в соответствии с MPEG 2 и MPEG 4. Однако основанная на контексте адаптивная двоичная арифметическая обработка кодирования имеет слабые точки, которые связаны с тем, что для нее требуется сложная обработка и большая нагрузка при обработке по сравнению с обработкой кодирования с переменной длиной.
На фиг.1 показана блок-схема последовательности операций, представляющая процедуру обработки такой основанной на контексте адаптивной двоичной арифметической обработки кодирования. Основанная на контексте адаптивная двоичная арифметическая обработка кодирования последовательно выполняет эту обработку для каждого из последовательных элементов синтаксиса. Благодаря выполнению процедуры обработки, показанной на фиг.1, при основанной на контексте адаптивной двоичной арифметической обработке кодирования выполняют расчет контекста для последовательных элементов синтаксиса, для последовательного детектирования переменных состояния вероятности, которые могут быть приняты отдельными элементами синтаксиса. Кроме того, основанная на контексте адаптивная двоичная арифметическая обработка кодирования последовательно выбирает и обрабатывает детектируемые переменные состояния вероятности для кодирования элементов синтаксиса.
Таким образом, когда начинают основанную на контексте адаптивную двоичную арифметическую обработку кодирования, основанная на контексте адаптивная двоичная арифметическая обработка кодирования переходит с этапа SP1 на этап SP2 и получает многозначные элементы синтаксиса для обработки. После этого в процессе преобразования в двоичную форму на этапе SP3 основанная на контексте адаптивная двоичная арифметическая обработка кодирования преобразует в двоичную форму элементы синтаксиса, полученные на этапе SP2, в соответствии с правилами и в соответствии с типом каждого элемента синтаксиса.
После этого в процессе расчета контекста на этапе SP4 основанная на контексте адаптивная двоичная арифметическая обработка кодирования получает показатели контекста (ctxIdx) для положений отдельных двоичных значений, преобразованных на этапе SP3. Здесь показатель контекста (ctxIdx) представляет собой показатель, который определяет переменную состояния вероятности. Переменная состояния вероятности представляет собой переменную, которая обозначает частоту появления каждого значения из двоичных значений. Переменная состояния вероятности представлена MPS (НВС, наиболее вероятным символом) и показателем состояния (stateIdx), соответствующим значению каждого двоичного значения. Здесь НВС (наиболее вероятный символ) представляет собой флаг, обозначающий, является ли данное значение символом с высокой вероятностью появления, и показатель состояния (stateIdx) представляет собой показатель, обозначающий таблицу вероятности возникновения символа НВС. Поэтому основанная на контексте адаптивная двоичная арифметическая обработка кодирования получает в процессе расчета контекста на этапе SP4 переменную вероятного состояния, которую может получать каждое двоичное значение элементов синтаксиса, для обработки для контекстного показателя (ctxIdx).
Затем основанная на контексте адаптивная двоичная арифметическая обработка кодирования выбирает в процессе прогнозирования вероятности на этапе SP5 НВС (наиболее вероятный символ) и показатель состояния (stateIdx), соответствующий значению двоичной величины, предназначенной для обработки на основе показателя контекста (ctxIdx), полученного на этапе SP4.
Основанная на контексте адаптивная двоичная арифметическая обработка кодирования выполняет после этого в процессе арифметического кодирования на этапе SP6 арифметическую обработку кодирования, используя НВС (наиболее вероятный символ) и показатель состояния (stateIdx), выбранный на этапе SP5.
Основанная на контексте адаптивная двоичная арифметическая обработка кодирования повторяет процедуру обработки на этапах SP4-SP5-SP6-SP4 по всем двоичным значениям, начиная от двоичного значения на стороне младшего порядка, до тех пор, пока обработка всех двоичных значений, предназначенных для кодирования, не будет закончена, последовательно генерируя, таким образом, поток битов. Кроме того, когда обработка всех двоичных значений, предназначенных для кодирования, будет закончена, обработка переходит с этапа SP6 на этап SP7 и сгенерированный поток битов будет выведен. Обработка переходит к этапу SP8, и процедура обработки заканчивается.
Кроме того, как показано стрелкой с этапа SP6 на этап SP4, когда основанная на контексте адаптивная двоичная арифметическая обработка кодирования обрабатывает один элемент синтаксиса, основанная на контексте адаптивная двоичная арифметическая обработка кодирования обновляет переменные состояния вероятности, содержащиеся в запоминающем устройстве, на основе результата обработки. При выполнении обработки кодирования того же элемента синтаксиса основанная на контексте адаптивная двоичная арифметическая обработка кодирования выполняет процесс кодирования, используя переменные обновленного состояния вероятности.
В отличие от этого на фиг.2 показана блок-схема последовательности операций, представляющая основанную на контексте адаптивную двоичную арифметическую обработку декодирования. Основанная на контексте адаптивная двоичная арифметическая обработка декодирования выполняет эту обработку для каждого элемента синтаксиса. Как и при основанной на контексте адаптивной двоичной арифметической обработке кодирования, основанная на контексте адаптивная двоичная арифметическая обработка декодирования выполняет расчет контекста по последовательным элементам синтаксиса для последовательного детектирования переменных состояния вероятности, которые могут быть приняты отдельными элементами синтаксиса. Кроме того, основанная на контексте адаптивная двоичная арифметическая обработка декодирования последовательно выбирает и обрабатывает детектированные переменные состояния вероятности для декодирования элементов синтаксиса.
Таким образом, когда основанная на контексте адаптивная двоичная арифметическая обработка декодирования начинает эту процедуру обработки, основанная на контексте адаптивная двоичная арифметическая обработка декодирования переходит с этапа SP11 на этап SP12. Здесь основанная на контексте адаптивная двоичная арифметическая обработка декодирования детектирует из потока битов, в отношении которого должна быть выполнена обработка декодирования, режим синтаксиса, который определяет тип элемента синтаксиса и ячейку, которая представляет собой информацию, которая определяет положение обрабатываемого бита.
Кроме того, на этапе SP13, следующем позже, основанная на контексте адаптивная двоичная арифметическая обработка декодирования выполняет расчет контекста с использованием информации, полученной на этапе SP12, для получения соответствующего показателя контекста (ctxIdx), как при основанной на контексте адаптивной двоичной арифметической обработке кодирования. Используя этот показатель контекста (ctxIdx), основанная на контексте адаптивная двоичная арифметическая обработка декодирования последовательно получает НВС и показатель состояния (stateIdx), как при основанной на контексте адаптивной двоичной арифметической обработке кодирования. Кроме того, при арифметической обработке кодирования, в которой используется полученный НВС и показатель состояния (stateIdx), основанная на контексте адаптивная двоичная арифметическая обработка декодирования получает первоначальное двоичное значение в отличие от времени, в которое выполняют кодирование. На этапе SP17 основанная на контексте адаптивная двоичная арифметическая обработка декодирования получает многозначное число из двоичного значения для декодирования исходного элемента синтаксиса. Кроме того, как и в основанной на контексте адаптивной двоичной арифметической обработке кодирования, основанная на контексте адаптивная двоичная арифметическая обработка декодирования обновляет переменные состояния вероятности на основе результата обработки. Когда выполняют обработку декодирования для того же элемента синтаксиса, основанная на контексте адаптивная двоичная арифметическая обработка декодирования выполняет обработку декодирования, используя обновленные переменные состояния вероятности.
На фиг.3 показана блок-схема, представляющая устройство декодирования, когда оно выполняет основанную на контексте адаптивную двоичную арифметическую обработку декодирования.
В этом устройстве 1 декодирования под управлением модуля 3 управления модуль 2 расчета контекста получает показатели контекста (ctxIdx) из потока битов, предназначенного для обработки. Модуль 4 сохранения состояния вероятности сохраняет и считает переменные состояния вероятности, определенные этими показателями контекста (ctxIdx), в запоминающем устройстве 5. В ответ на доступ из модуля 6 адаптивного арифметического кодирования/декодирования модуль 4 сохранения состояния вероятности уведомляет модуль 6 адаптивного арифметического кодирования/декодирования о содержащихся переменных состояния вероятности. Следует отметить, что, например, при обработке данных коэффициента существуют 7 битов х 59 типов переменных состояния вероятности, сохраненных в запоминающем устройстве 5.
Модуль 6 адаптивного арифметического кодирования/декодирования генерирует преобразованные в двоичную форму данные из потока битов, предназначенного для обработки, и, используя прогнозирование вероятности, с применением преобразованных в двоичную форму данных последовательно выбирает показатели состояния (stateIdx) и НВС. Модуль 6 адаптивного арифметического кодирования/декодирования генерирует информацию синтаксиса путем обработки показателей состояния (stateIdx) и НВС и выполняет арифметическую обработку декодирования. На основе результата обработки модуля 6 адаптивного арифметического кодирования/декодирования модуль 7 двоичного декодирования декодирует и выводит исходный элемент синтаксиса (syntax).
Модуль 3 управления представляет собой модуль управления, который управляет работой общего устройства 1 декодирования. Модуль 3 управления передает инструкции в модуль 2 расчета контекста для выполнения расчетов контекста с использованием преобразованных в двоичную форму данных, сгенерированных адаптивным модулем 6 арифметического кодирования/декодирования. Кроме того, модуль 3 управления уведомляет модуль 6 адаптивного арифметического кодирования/декодирования о показателях контекста (ctxIdx), полученных модулем 2 расчета контекста и передает инструкции в двоичный модуль 7 декодирования -выполнить процесс обработки результата модуля 6 адаптивного арифметического кодирования/декодирования.
Перед началом обработки модуля 1 NAL (УАС, уровень абстракции сети) модуль 3 управления инициирует переменные состояния вероятности, содержащиеся в запоминающем устройстве 5 модуля 4 сохранения состояния вероятности, и затем обновляет переменные состояния вероятности, сохраненные в запоминающем устройстве 5 в соответствии с результатом обработки модуля 6 адаптивного арифметического кодирования/декодирования. Кроме того, при обработке данных коэффициента модуль 3 управления устанавливает на основе результата выполнения модуля 6 адаптивного арифметического кодирования/декодирования, при обработке одного элемента данных коэффициента, количество двоичных значений, предназначенных для обработки, используя последующие данные коэффициента.
На фиг.4 показана временная диаграмма, представленная для описания процесса обработки последовательных элементов синтаксиса в устройстве 1 декодирования. Основанную на контексте адаптивную двоичную арифметическую обработку декодирования применяют к множеству элементов синтаксиса, расположенных ниже уровня данных среза, определенных в ITU-T Н.264. Поэтому устройство 1 декодирования последовательно обрабатывает от макроблока к макроблоку элементы синтаксиса, такие как тип макроблока (mb type), преобразование, структуру кодового блока (cbp) и тип подмакроблока (sub mb type), и затем обрабатывает остаточный уровень при обработке макроблока (фиг.4 (А) и (С)). Здесь остаточный уровень разделяют на остаточные блоки размером 4×4 пикселя. Данные коэффициента (coeff abs minus 1 (обозначенный уровнем на фиг.4)), который получают путем выполнения обработки дискретного косинусного преобразования и обработки квантования данных изображения, назначают каждому из остаточных блоков (фиг.4 (В)). Устройство 1 декодирования последовательно выполняет обработку кодирования данных коэффициента (coeff abs minus 1) последовательных остаточных блоков на этом остаточном уровне (фиг.4(С)).
Что касается элементов синтаксиса, таких как тип макроблока (mb type), преобразование, структура кодового блока (cbp) и тип подмакроблока (sub mb type), только один из них существует в одном макроблоке. В отличие от этого имеется 64 элемента данных коэффициента (coeff abs level minus1) для остаточных блоков. Поэтому, например, когда требуется обработать так называемые данные 4:2:0 изображения, поскольку макроблок сигнала luma (яркости) сформирован из 16×16 пикселей и макроблоки сигнала chroma (цветоразностные сигналы) сформированы пикселями 8×8, в этом случае существует 6×64=384 элемента данных коэффициента (coeff abs level minus1) для одного макроблока.
Поэтому, когда устройство 1 декодирования выполняет обработку кодирования для данных коэффициента (coeff abs level minus1) остаточных блоков, устройство 1 декодирования вначале инициирует переменные состояния вероятности, записанные в запоминающем устройстве 5, и затем последовательно обновляет переменные состояния вероятности, сохраненные в запоминающем устройстве 5, в соответствии с результатом обработки модуля 6 адаптивного арифметического кодирования/декодирования. Следует отметить, что такой процесс инициализации выполняют во время, когда запускают модуль 1 УАС (уровень абстракции сети). Кроме того, устройство 1 декодирования устанавливает на основе результата выполнения модуля 6 адаптивного арифметического кодирования/декодирования при обработке одного элемента данных коэффициента (coeff abs level minus1) количество двоичных значений, которые должны быть обработаны, используя последующие данные коэффициента (coeff abs level minus1).
На фиг.5 показана временная диаграмма, представленная для описания последовательных процессов обработки данных коэффициента (coeff abs level minus1) остаточных блоков. Следует отметить, что фиг.5 соответствует случаю, когда запоминающее устройство 5 на фиг.3 выполнено с использованием SRAM (СЗУПВ, статическое запоминающее устройство с произвольной выборкой), задержка доступа которого велика. Кроме того, сегмент каждой обработки соответствует 1 циклу, который представляет собой модуль обработки. После того как вначале будет инициировано содержание запоминающего устройства 5, устройство 1 декодирования рассчитывает контексты данных первого коэффициента (coeff abs level minus1 (0)), используя модуль 2 расчета контекста (фиг.5 (А) и (В)). Следует отметить, что пример, показанный на фиг.5, представляет собой случай, в котором показатель контекста (ctxIdx0) получают с самым младшим двоичным значением путем расчета такого контекста, и один показатель контекста (ctxIdx1) последовательно получают с последующими вторым - четвертым двоичными значениями. Поэтому из этих двух показателей контекста (ctxIdx0) и (ctxIdx1) второй показатель контекста (ctxIdx1) используют для обработки со второго по четвертое двоичных значений. Следует отметить, что в дальнейшем каждый элемент данных коэффициента обозначен, в случае необходимости, цифрой в круглых скобках, которая обозначает порядок от начала.
В устройстве 1 декодирования показатель состояния (stateIdx0) и НВС, предназначенный для записи в запоминающее устройство 5, выбирают путем расчета вероятности (arith0), используя модуль 6 адаптивного арифметического кодирования/декодирования, на основе первого показателя контекста (ctxIdx0) показателей контекста (ctxIdx0) и (ctxIdx1) (фиг.5 (С) и (D)). Кроме того, путем расчета последующей вероятности (arith1) показатель состояния (stateIdx1) и НВС для записи в запоминающее устройство 5 выбирают на основе показателя контекста (ctxIdx1). Устройство 1 декодирования повторяет выбор показателя (stateIdx) состояния и НВС для ряда двоичных значений, предназначенных для обработки, обрабатывает ячейку результата обработки, используя модуль 7 двоичного декодирования, и декодирует элемент синтаксиса (syntax0) (фиг.5 (Е) и (F)). Кроме того, как обозначено стрелкой А, после обновления переменных состояния вероятности, записанных в запоминающем устройстве 5, на основе результата обработки устройство 1 декодирования аналогично обрабатывает последующие данные коэффициента (coeff abs level minus1).
Что касается такого основанного на контексте адаптивного двоичного устройства декодирования, в Публикации находящейся на экспертизе заявки на японский патент № 2005-130099, Публикации находящейся на экспертизе заявки на японский патент № 2005-217871 и т.п. предложены схемы увеличения скорости обработки.
В частности, в устройстве кодирования и устройстве декодирования такого типа желательно увеличить скорость обработки. После анализа работы устройства 1 декодирования, показанного на фиг.1, с учетом возможности повышения скорости определили, что имеется проблема, состоящая в том, что время простоя возникает между обработкой последовательных элементов синтаксиса (syntax).
Таким образом, как показано на фиг.5, когда запоминающее устройство 5 сконфигурировано с использованием СЗУПВ, задержка доступа к которому велика, показатель состояния (stateIdx) и НВС переменной состояния вероятности получают на 2 цикла позже расчета контекста. В примере, показанном на фиг.5, обработку переменных состояния вероятности на основе результатов расчета контекста выполняют в последующие 4 цикла, декодируя, таким образом, элемент синтаксиса (syntax). Следует отметить, что обработка по переменным состояниям вероятности на основе результатов расчета контекста представляет собой обработку получения переменных состояния вероятности, процесс арифметического декодирования и процесс преобразования в двоичную форму. В примере, показанном на фиг.5, эту обработку выполняют с использованием конвейерной системы. Кроме того, после того как элемент синтаксиса (syntax) будет декодирован, запись в запоминающее устройство 5 обновляют на основе результата обработки и начинают обработку последующих данных коэффициента (coeff abs level minus1). Поэтому, когда запоминающее устройство 5 сконфигурировано с использованием СЗУПВ, задержка доступа к которому велика, в обычном устройстве 1 декодирования, время простоя 3 цикла возникает от момента, когда обработка переменных состояния вероятности завершена в одном элементе синтаксиса, до момента, когда обработка переменных состояния вероятности начинается в последующем элементе синтаксиса.
Время простоя 3 цикла возникает при обработке всех элементов данных коэффициента. Поскольку время простоя возникает при обработке последующих элементов данных коэффициента в одном макроблоке, в целом получают существенно большое время простоя.
В качестве одного способа решения этой проблемы можно рассмотреть способ применения регистра, задержка доступа которого равна 0 для запоминающего устройства 5 и который содержит переменные состояния вероятности. Однако в случае этого способа хотя описанное выше время простоя 3 цикла может быть уменьшено до 1 цикла, размеры запоминающего устройства 5 увеличиваются по сравнению с СЗУПВ. При этом возникает проблема увеличения размеров всей конструкции.
Сущность изобретения
Учитывая описанные выше особенности, настоящее изобретение направлено на способ обработки движущегося изображения, программу способа обработки движущегося изображения, носитель записи, на котором записана программа способа обработки движущегося изображения, и устройство обработки движущегося изображения, которое позволяет исключить увеличение размера всей конструкции и обеспечивает увеличение скорости обработки по сравнению с прошлым.
Для решения описанных выше проблем настоящее изобретение применяют к способу обработки движущегося изображения, который состоит в расчете контекста и кодировании или декодировании движущегося изображения, отличающемуся тем, что он включает в себя этап обработки расчета контекста, состоящий в расчете контекста элементов синтаксиса, составляющих движущееся изображение, и последующем детектировании переменных состояния вероятности, которые могут быть приняты элементами синтаксиса; и этап обработки переменных состояния вероятности, состоящий в последовательном выборе и обработке переменных состояния вероятности, полученных на этапе обработки расчета контекста, и кодировании или декодировании элементов синтаксиса. Этап обработки переменных состояния вероятности включает в себя этап выбора переменных состояния вероятности, состоящий в выборе переменных состояния вероятности, содержащихся в модуле сохранения состояния вероятности. Первое запоминающее устройство и второе запоминающее устройство, задержка доступа к которому мала по сравнению с первым запоминающим устройством, предусмотрены в модуле сохранения состояния вероятности. На этапе выбора переменной состояния вероятности последовательно выбирают переменные состояния вероятности из первого запоминающего устройства при обработке элементов синтаксиса, которые имеют низкую частоту появления, и последовательно выбирают переменные состояния вероятности из второго запоминающего устройства при обработке элементов синтаксиса, которые имеют высокую частоту появления.
В конструкции в соответствии с настоящим изобретением конструкция выбора переменных состояния вероятности с использованием второго запоминающего устройства, задержка доступа которого мала, позволяет увеличить скорость обработки, хотя при этом увеличивается общий размер. В отличие от этого конструкция выбора переменных состояния вероятности с использованием первого запоминающего устройства, задержка доступа которого велика, с трудом позволяет увеличить скорость обработки, хотя при этом размер общей формы уменьшается. Поэтому в соответствии с конструкцией по п.1 формулы изобретения, когда используется такая конфигурация, что переменные состояния вероятности последовательно выбирают из первого запоминающего устройства, когда требуется обработать элемент синтаксиса с низкой частотой появления, и переменные состояния вероятности последовательно выбирают из второго запоминающего устройства, когда требуется обработать элемент синтаксиса с высокой частотой появления, в конструкции можно использовать предпочтительный эффект этих двух конструкций в случае, когда используют первое и второе запоминающие устройства, предотвращая, таким образом, увеличение общего размера конструкции и увеличивая скорость обработки по сравнению с прошлым.
Кроме того, настоящее изобретение применяют к программе способа обработки движущегося изображения, которая состоит в расчете контекста и кодировании или декодировании движущегося изображения, отличающейся тем, что она включает в себя этап обработки расчета контекста, состоящий в расчете контекста элементов синтаксиса, составляющих движущееся изображение, и последовательном детектировании переменных состояния вероятности, которые могут быть приняты элементами синтаксиса; и этап обработки переменной состояния вероятности, состоящий в последовательном выборе и обработке переменных состояния вероятности, полученных на этапе обработки расчета контекста, и кодировании или декодировании элементов синтаксиса. Этап обработки переменной состояния вероятности включает в себя этап выбора переменной состояния вероятности, состоящий в выборе переменных состояния вероятности, содержащихся в модуле сохранения состояния вероятности. Первое запоминающее устройство и второе запоминающее устройство, задержка доступа которого мала по сравнению с первым запоминающим устройством, предусмотрены в модуле сохранения состояния вероятности. На этапе выбора переменной состояния вероятности последовательно выбирают переменные состояния вероятности из первого запоминающего устройства при обработке элементов синтаксиса, которые имеют низкую частоту появления, и последовательно выбирают переменные состояния вероятности из второго запоминающего устройства при обработке элементов синтаксиса, которые имеют высокую частоту появления.
В конструкции в соответствии с настоящим изобретением структура выбора переменных состояния вероятности с использованием второго запоминающего устройства, задержка доступа которого мала, позволяет увеличить скорость обработки, хотя при этом увеличивается общий размер. В отличие от этого конструкция выбора переменных состояния вероятности с использованием первого запоминающего устройства с большой задержкой доступа с трудом позволяет повысить скорость обработки, хотя при этом уменьшается общий размер. Поэтому в соответствии с конструкцией настоящего изобретения, когда его конфигурируют так, что переменные состояния вероятности последовательно выбирают из первого запоминающего устройства, когда требуется обработать элемент синтаксиса с малой частотой появления, и переменные состояния вероятности последовательно выбирают из второго запоминающего устройства, когда требуется обработать элемент синтаксиса с высокой частотой появления, в конструкции можно использовать преимущественные эффекты этих двух конструкций в случае, когда используют первое и второе запоминающие устройства, исключая, таким образом, увеличение общего размера конструкции и повышая скорость обработки по сравнению с прошлым.
Кроме того, настоящее изобретение применяют к носителю записи, на котором записана программа способа обработки движущегося изображения, которая состоит в расчете контекста и кодировании или декодировании движущегося изображения. Программа способа обработки движущегося изображения отличается тем, что она включает в себя этап обработки расчета контекста, состоящий в расчете контекста элементов синтаксиса, составляющих движущееся изображение, и последовательном детектировании переменных состояния вероятности, которые могут принимать элементы синтаксиса; и этап обработки переменных состояния вероятности, состоящий в последовательном выборе и обработке переменных состояния вероятности, полученных на этапе обработки расчета контекста, и кодировании или декодировании элементов синтаксиса. Этап обработки переменных состояния вероятности включает в себя этап выбора переменной состояния вероятности, состоящий в выборе переменных состояния вероятности, содержащихся в модуле сохранения состояния вероятности. Первое запоминающее устройство и второе запоминающее устройство, задержка доступа которого мала по сравнению с первым запоминающим устройством, предусмотрены в модуле сохранения состояния вероятности. На этапе выбора переменной состояния вероятности последовательно выбирают переменные состояния вероятности из первого запоминающего устройства при обработке элементов синтаксиса, которые имеют низкую частоту появления, и последовательно выбирают переменные состояния вероятности из второго запоминающего устройства при обработке элементов синтаксиса, которые имеют высокую частоту появления.
В конструкции в соответствии с настоящим изобретением структура выбора переменных состояния вероятности с использованием второго запоминающего устройства, задержка доступа которого мала, позволяет увеличить скорость обработки, хотя при этом увеличивается общий размер. В отличие от этого конструкция выбора переменных состояния вероятности с использованием первого запоминающего устройства, задержка доступа которого велика, с трудом позволяет увеличить скорость обработки, хотя при этом уменьшается общий размер. Поэтому в соответствии с конструкцией настоящего изобретения, когда оно сконфигурировано так, что переменные состояния вероятности последовательно выбирают из первого запоминающего устройства, когда требуется обработать элемент синтаксиса с низкой частотой появления, и переменные состояния вероятности последовательно выбирают из второго запоминающего устройства, когда требуется обработать элемент синтаксиса с высокой частотой появления, в конструкции можно использовать предпочтительные эффекты этих двух конструкций в случае, когда используют первое и второе запоминающие устройства, исключая, таким образом, увеличение общего размера конструкции и повышая скорость обработки по сравнению с прошлым.
Кроме того, настоящее изобретение применяют к устройству обработки движущегося изображения, которое рассчитывает контекст и кодирует или декодирует движущееся изображение, отличающемуся тем, что оно включает в себя модуль расчета контекста, который рассчитывает контекст элементов синтаксиса, составляющих движущееся изображение, и последовательно детектирует переменные состояния вероятности, которые могут быть приняты элементами синтаксиса; модуль сохранения состояния вероятности, в котором предусмотрены первое запоминающее устройство и второе запоминающее устройство, задержка доступа которого мала по сравнению с первым запоминающим устройством, причем переменные состояния вероятности содержатся в первом и втором запоминающих устройствах; и модуль обработки переменной состояния вероятности, который последовательно выбирает и обрабатывает переменные состояния вероятности из модуля сохранения состояния вероятности на основе результата детектирования модуля расчета контекста и кодирует или декодирует элементы синтаксиса. Модуль обработки переменной состояния вероятности последовательно выбирает переменные состояния вероятности из первого запоминающего устройства при обработке элементов синтаксиса, которые имеют низкую частоту появления, и последовательно выбирает переменные состояния вероятности из второго запоминающего устройства при обработке элементов синтаксиса, которые имеют высокую частоту появления.
В конструкции в соответствии с настоящим изобретением структура выбора переменных состояния вероятности с использованием второго запоминающего устройства, задержка доступа которого мала, позволяет увеличить скорость обработки, хотя при этом увеличиваются общие размеры. В отличие от этого структура выбора переменных состояния вероятности с использованием первого запоминающего устройства, задержка доступа которого велика, с трудом позволяет повысить скорость обработки, хотя при этом уменьшаются общие размеры. Поэтому в соответствии с конструкцией в соответствии с настоящим изобретением, когда она сконфигурирована так, что переменные состояния вероятности последовательно выбирают из первого запоминающего устройства, когда обрабатывают элемент синтаксиса с низкой частотой появления, и переменные состояния вероятности последовательно выбирают из второго запоминающего устройства, когда обрабатывают элемент синтаксиса с высокой частотой появления, в этой структуре можно использовать эффект преимущества этих двух структур в случае, когда используют первое и второе запоминающие устройства, исключая, таким образом, увеличение общего размера конструкции и повышая скорость обработки по сравнению с прошлым.
В соответствии с настоящим изобретением можно исключить увеличение размера общей конструкции, и скорость обработки может быть увеличена по сравнению с прошлым.
Краткое описание чертежей
На фиг.1 показана блок-схема последовательности операций, представляющая процедуру обработки, основанной на контексте адаптивной двоичной арифметической обработки кодирования.
На фиг.2 показана блок-схема последовательности операций, представляющая процедуру обработки, основанной на контексте адаптивной двоичной арифметической обработки декодирования.
На фиг.3 показана блок-схема, представляющая устройство декодирования на основе обычной, основанной на контексте адаптивной двоичной арифметической обработки.
На фиг.4 показана временная диаграмма, представленная для описания обработки последовательных элементов синтаксиса в устройстве декодирования по фиг.3.
На фиг.5 показана временная диаграмма, представленная для описания последовательной обработки данных коэффициента остаточных блоков в устройстве декодирования по фиг.3.
На фиг.6 показана блок-схема, представляющая устройство декодирования в соответствии с вариантом 1 воплощения настоящего изобретения.
На фиг.7 показана временная диаграмма, предусмотренная для описания работы устройства декодирования по фиг.6.
На фиг.8 показана схема, представляющая переход показателя контекста в устройстве декодирования по фиг.6.
На фиг.9 показана схема, представляющая один пример перехода по фиг.8.
На фиг.10 показана схема, представляющая структуру регистра в устройстве декодирования по фиг.6.
На фиг.11 показана схема, предусмотренная для описания устройства декодирования в соответствии с вариантом 2 воплощения настоящего изобретения.
На фиг.12 показана блок-схема, предусмотренная для описания устройства декодирования в соответствии с вариантом 3 воплощения настоящего изобретения.
Подробное описание изобретения
Ниже будут подробно описаны варианты воплощения настоящего изобретения со ссылкой на чертежи по мере необходимости.
(1) Конструкция варианта 1 воплощения
На фиг.6 показана блок-схема, представляющая устройство декодирования в соответствии с вариантом 1 воплощения настоящего изобретения при сравнении с фиг.3. В устройстве 1 декодирования те же элементы, которые присутствуют в устройстве 1 декодирования, описанном со ссылкой на фиг.3, обозначены соответствующими номерами ссылочных позиций, и их повторное описание не приведено. Устройство 10 декодирования последовательно декодирует элементы синтаксиса (syntax) из потока битов в соответствии с правилами ITU-T Н.264 и декодирует данные изображения для движущегося изображения, выполняя обработку обратного квантования и обработку обратного ортогонального преобразования для элементов синтаксиса (syntax). Следует отметить, что каждый модуль, представленный на фиг.6, может быть сконфигурирован с использованием аппаратных средств или может быть сконфигурирован с использованием функционального блока или средства арифметической обработки. Следует отметить, что когда каждый модуль сконфигурирован с использованием функционального блока средства арифметической обработки, программа средства арифметической обработки может быть предусмотрена путем ее предварительной установки. В качестве альтернативы, программа может быть предусмотрена путем записи ее на носителе записи, таком как оптический диск, магнитный диск, карта памяти или тому подобное. Кроме того, программа может быть предусмотрена путем загрузки ее через сеть, такую как Интернет или тому подобное.
В устройстве 10 декодирования первое запоминающее устройство, задержка доступа которого велика, и второе запоминающее устройство, задержка доступа которого мала по сравнению с первым запоминающим устройством, предусмотрены в модуле 11 сохранения состояния вероятности. Здесь первое запоминающее устройство сформировано в данном варианте воплощения запоминающим устройством 12, например, типа СЗУПВ, которое расходует малую мощность и имеет малые размеры по сравнению со вторым запоминающим устройством. В отличие от этого второе запоминающее устройство сформировано на основе регистра 13. Следует отметить, что регистр 13 выполнен, например, как триггерная схема.
Модуль 11 сохранения состояния вероятности сохраняет в запоминающем устройстве 12 переменные состояния вероятности для всех элементов синтаксиса. Кроме того, помимо переменных состояния вероятности, сохраненных в запоминающем устройстве 12, переменные состояния вероятности, которые соответствуют элементам синтаксиса с высокой частотой появления и которые часто используют, загружают и содержат в регистре 13. Когда декодируют элементы синтаксиса с высокой частотой появления, устройство 10 декодирования обрабатывает элементы синтаксиса с высокой частотой появления, используя переменные состояния вероятности, содержащиеся в регистре 13. В отличие от этого устройство 10 декодирования обрабатывает другие элементы синтаксиса, кроме элементов синтаксиса с высокой частотой появления, используя данные, записанные в запоминающем устройстве 12. В частности, в данном варианте воплощения переменные состояния вероятности для данных коэффициента (coeff abs level minus1) назначают часто используемым переменным состояния вероятности.
В модуле 11 сохранения состояния вероятности под управлением модуля 19 управления модуль 14 выбора переключает работу, и цель доступа модуля 16 адаптивного арифметического кодирования/декодирования переключается между запоминающим устройством 12 и регистром 13. Кроме того, под управлением модуля 19 управления переменные состояния вероятности, записанные в запоминающем устройстве 12, обновляют на основе результата декодирования. Кроме того, при загрузке под управлением модуля 19 управления записывают переменные состояния вероятности, содержащиеся в запоминающем устройстве 12, в регистр 13 и обновляют переменные состояния вероятности, записанные в запоминающем устройстве 12, на основе результата декодирования, при этом соответствующие переменные состояния вероятности, содержащиеся в регистре 13, обновляют так, что они соответствуют записи в запоминающее устройство 12.
Под управлением модуля 19 управления модуль 18 расчета контекста получает показатели контекста (ctxIdx) из потока битов, предназначенных для обработки. При обработке декодирования последовательных элементов данных коэффициента (coeff abs level minus1 (1-N)) модуль 18 расчета контекста выполняет расчеты контекста по последовательным элементам синтаксиса в течение периода, в котором обрабатывают переменные состояния вероятности для показателей контекста, рассчитанных в непосредственно предшествующем элементе синтаксиса.
Модуль 16 адаптивного арифметического кодирования/декодирования преобразует в двоичную форму поток битов, так что он соответствует расчетам контекста в модуле 18 расчета контекста, и уведомляет модуль 19 управления о преобразованном в двоичную форму потоке битов. Кроме того, на основе показателей контекста (ctxIdx), полученных модулем 18 расчета контекста, модуль 16 адаптивного арифметического кодирования/декодирования обращается к запоминающему устройству 12 и регистру 13, последовательно выбирает НВС (наиболее вероятный символ) и показатели состояния (stateIdx) и выполняет обработку арифметического декодирования.
Модуль 19 управления представляет собой модуль управления, который управляет работой всего устройства 10 декодирования. Модуль 19 управления управляет общей работой, как модуль 3 управления устройства 1 декодирования, описанный выше со ссылкой на фиг.4, за исключением данных коэффициента (coeff abs level minus1). Таким образом, в этом случае модуль 19 управления передает инструкции в модуль 18 расчета контекста для выполнения расчетов контекста для преобразованных в двоичную форму данных, сгенерированных модулем 16 адаптивного арифметического кодирования/декодирования. Кроме того, модуль 19 управления передает инструкции в модуль 16 адаптивного арифметического кодирования/декодирования и в модуль 7 двоичного декодирования для выполнения обработки по показателям контекста (ctxIdx), полученным модулем 18 расчета контекста. Кроме того, на основе результата обработки модуля 16 адаптивного арифметического кодирования/декодирования модуль 19 управления обновляет переменные состояния вероятности, содержащиеся в модуле 11 содержания состояния вероятности.
В отличие от этого при выполнении обработки декодирования данных коэффициента (coeff abs level minus1) модуль 19 управления загружает переменные состояния вероятности, содержащиеся в запоминающем устройстве 12, в регистр 13 и управляет работой каждого модуля таким образом, чтобы выполнить выбор показателей состояния (stateIdx) и НВС, используя переменные состояния вероятности, загруженные в регистр 13. Кроме того, модуль 19 управления управляет работой модуля 18 расчета контекста, модуля 16 адаптивного арифметического кодирования/декодирования и т.п. для расчета в течение периода, в который обрабатывают переменные состояния вероятности для одного элемента синтаксиса, контекста в последующем элементе синтаксиса и для сохранения соответствующих переменных состояния вероятности в регистре 13.
На фиг.7 показана временная диаграмма, представляющая обработку данных коэффициента (coeff abs level minusl) под управлением модуля 19 управления по сравнению с фиг.5. Следует отметить, что, как и в случае фиг.4, фиг.7 соответствует случаю, в котором показатель контекста (ctxIdx0) и показатель контекста (ctxIdx1) получают индивидуально с младшим значимым двоичным значением и со второго по четвертое двоичными значениями данных первого коэффициента (coeff abs level minus1 (0)), и показатели контекста (ctxIdx2) и (ctxIdx3) индивидуально получают с двумя последовательными двоичными значениями последующих данных коэффициента (coeff abs level minus1 (1)).
Когда модуль 19 управления начинает обработку данных коэффициента (coeff abs level minus1 (0)), модуль 19 управления управляет модулем 18 расчета контекста и модулем 16 адаптивного арифметического кодирования/декодирования для последовательного получения показателей контекста (ctxIdx0) и (ctxIdx1) в последовательных циклах (фиг.7 (А) и (В)). Модуль 19 управления также управляет модулем 11 сохранения состояния вероятности для загрузки переменных состояния вероятности, соответствующих показателям контекста (ctxIdx0) и (ctxIdx1), полученных модулем 18 расчета контекста из запоминающего устройства 12, в регистр 13 в последующих двух циклах (фиг.7 (С)). Модуль 19 управления управляет модулем 16 адаптивного арифметического кодирования/декодирования для выполнения обработки выбора состояния вероятности показателей состояния (stateIdx) и НВС, используя переменные состояния вероятности, загруженные в регистре 13, обработки арифметического декодирования и обработки преобразования в двоичную форму (фиг.7 (D)-(F)).
Здесь, поскольку задержка доступа регистра 13 равна 0, обработка выбора состояния вероятности, обработка арифметического декодирования и обработка преобразования в двоичную форму начинают циклическую обработку первого двоичного значения, в которой переменные состояния вероятности для использования при обработке сохраняют в регистре 13.
Модуль 19 управления управляет модулем 18 расчета контекста для расчета контекста последующих данных коэффициента (coeff abs level minus1 (1)) в период, в который обработку выбора состояния вероятности, обработку арифметического декодирования и обработку преобразования в двоичную форму выполняют с использованием модуля 16 адаптивного арифметического кодирования/декодирования. В этом варианте воплощения обработка расчета контекста для последующих данных коэффициента (coeff abs level minus1 (1)) начинается с цикла непосредственно после завершения расчета контекста по непосредственно предыдущим данным коэффициента (coeff abs level minus1 (0)).
Кроме того, когда модуль 19 управления заканчивает расчеты контекста для последующих данных коэффициента (coeff abs level minus1 (1)), модуль 19 управления загружает в последующих циклах переменные состояния вероятности показателей контекста (ctxIdx2) и (ctxIdx3), полученные при этих расчетах контекста из запоминающего устройства 12 в регистр 13 и перед завершением обработки для непосредственно предыдущих данных коэффициента (coeff abs level minus1 (0)) содержит заранее эти переменные состояния вероятности в регистре 13 таким образом, что можно обрабатывать последующие данные коэффициента (coeff abs level minus1 (1)).
На основе результата обработки модуля 16 адаптивного арифметического кодирования/декодирования модуль 19 управления последовательно обновляет переменные состояния вероятности, содержащиеся в регистре 13 и в запоминающем устройстве 12, и, когда завершается обработка для немедленно предыдущих данных коэффициента (coeff abs level minus1 (0)), передает инструкцию в модуль 16 адаптивного арифметического кодирования/декодирования на обработку последующих данных коэффициента (coeff abs level minus1 (1)).
Здесь в устройстве 10 декодирования, поскольку переменные состояния вероятности показателей контекста (ctxIdx2) и (сxIdx3), необходимых для обработки последующих данных коэффициента (coeff abs level minus1 (1)), заранее сохраняют в регистре 13, модуль 16 адаптивного арифметического кодирования/декодирования может начать работу после окончания обработки непосредственно предыдущих данных коэффициента (coeff abs level minus1 (0)), обрабатывая последующие данные коэффициента (coeff abs level minus1 (1)) в последующем цикле без увеличения времени простоя. Поэтому в устройстве декодирования 10 данные изображения могут быть декодированы с более высокой скоростью по сравнению с прошлым.
Следует отметить, что когда модуль 19 управления передает инструкции в модуль 16 адаптивного арифметического кодирования/декодирования для начала обработки последующих данных коэффициента (coeff abs level minus1 (1)), модуль 19 управления одновременно передает инструкции в модуль 18 расчета контекста для выполнения расчетов контекста для дополнительных данных последующего коэффициента (coeff abs level minus1 (2)).
В частности, когда расчеты контекста для данных последующего коэффициента (coeff abs level minus1 (N)) выполняют заранее и переменные состояния вероятности содержат в регистре 13, благодаря эффективному использованию периода N, в котором обрабатывают переменные состояния вероятности, содержащиеся в регистре 13, может возникнуть случай, в котором содержание переменных состояния вероятности в регистре 13 не заканчивается в момент времени, когда модуль 16 адаптивного арифметического кодирования/декодирования начинает обработку данных последующего коэффициента (coeff abs level minus1 (N)). Таким образом, возникает случай, когда переменные состояния вероятности, содержащиеся в регистре 13, будут слишком поздними для процесса декодирования по каждому элементу синтаксиса.
Более конкретно, на фиг.8 показана временная диаграмма, в которой выполняется прогнозирование показателей контекста и переменных состояния вероятности, необходимых в случае, когда последовательно обрабатывают элементы данных коэффициента (coeff abs level minus1), присутствующие в остаточном блоке. Следует отметить, что в примере, показанном на фиг.8, предполагается, что значение каждого двоичного значения каждого элемента данных коэффициента (coeff abs level minus1) равно 0 или 1.
Здесь в первых данных коэффициента (coeff abs level minus1 (0)) остаточного блока показатель контекста (ctxIdx) уникально определен, и ctxIdx=1. В устройстве 10 декодирования, когда младшее значимое двоичное значение (уровень 0 ячейка 0) данных коэффициента (coeff abs level minus1 (0)) имеет значение 0, устройство 10 декодирования переходит к обработке последующих данных коэффициента (coeff abs level minus1 (1)) и обрабатывает младшее значимое двоичное значение (уровень 1 ячейка 0) последующих данных коэффициента (coeff abs level minus1 (1)). В качестве альтернативы, в отличие от предыдущего, когда младшее значимое двоичное значение (уровень 0 ячейка 0) данных коэффициента (coeff abs level minus1 (0)) имеет значение 1, устройство 10 декодирования должно обработать последующее более значимое двоичное значение (уровень 0 ячейка 1). Здесь в примере, показанном на фиг.8, предполагается, что показатели контекста (ctxIdx) этих двоичных значений (уровень 1 ячейка 0) и (уровень 0 ячейка 1) представляет собой ctxIdx=2 и ctxIdx=5 соответственно.
Кроме того, в примере, показанном на фиг.8, когда выбирают двоичное значение (уровень 0 ячейка 1), следующее после данных первого коэффициента (coeff abs level minus1 (0)), необходимо обрабатывать младшее значимое двоичное значение (уровень 1 ячейка 0) следующих данных коэффициента (coeff abs level minus1 (1)). Кроме того, когда младшее значимое двоичное значение (уровень 0 ячейка 0) данных коэффициента (coeff abs level minus1 (0)) имеет значение 0 и младшее значимое двоичное значение (уровень 1 ячейка 0)) следующих данных коэффициента (coeff abs level minus1 (1)) имеет значение 0 и значение 1, должно быть обработано младшее значимое двоичное значение (уровень 2 ячейка 0) следующих данных коэффициента (coeff abs level minus1 (2)) и следующего двоичного значения (уровень 2 ячейка 1) тех же данных коэффициента (coeff abs level minus1 (2)). Следует отметить, что самые правые показатели на фиг.8 представляют элементы данных коэффициента вплоть до соответствующих назначений перехода в конечных назначениях перехода по фиг.8. Кроме того, на фиг.9 показана схема, хотя и не соответствующая фиг.8, представляющая переход в случае, когда в последовательных элементах данных коэффициента имеется последовательность заданного количества отдельных двоичных значений, имеющих значение 1.
В соответствии с этим, когда требуется обработать пример по фиг.8, необходимо получить показатели контекста ctxIdx=1 и ctxIdx=5 при расчетах контекста по первым данным коэффициента (coeff abs level minus1 (0)) и рассчитать показатели контекста ctxIdx=0, ctxIdx=2, ctxIdx=5 и ctxIdx=6 при заблаговременных расчетах контекста по последующим данным коэффициента (coeff abs level minus1 (1)).
Здесь каждый переход в горизонтальном направлении на фиг.8 соответствует 1 циклу по фиг.7. Поэтому в структуре по фиг.6, когда предварительно выполняют расчеты контекста и переменные состояния вероятности сохраняют в регистре 13, начинается обработка первых данных коэффициента (coeff abs level minus1 (0)), после того как переменные состояния вероятности показателей контекста ctxIdx=1 и ctxIdx=5 будут сохранены в регистре 13. В этом случае переменные состояния вероятности могут быть сохранены в регистре 13, так что они не опоздают к началу обработки переменных состояния вероятности вообще.
Кроме того, при обработке последующих данных коэффициента (coeff abs level minus1 (1)) необходимы переменные состояния вероятности показателей контекста ctxIdx=0, ctxIdx=2, ctxIdx=5 и ctxIdx=6. Здесь показатели контекста ctxIdx=2 и ctxIdx=5 по стороне ячейки=0, где обработку младшего значимого двоичного значения переключают на обработку следующих данных коэффициента, предпочтительно, сохраняют в регистре 13 по сравнению с показателями контекста ctxIdx=0 и ctxIdx=6 на стороне ячейки=1, где обработка младшего значимого двоичного значения переключается на обработку последующего более значимого двоичного значения. Кроме того, когда переменные состояния вероятности сохраняют в регистре 13 начиная с показателя контекста, соответствующего двоичному значению на стороне младшего порядка, в момент времени, когда заканчивается младшее значимое двоичное значение (уровень 0 ячейка 0) первых данных коэффициента (coeff abs level minus1 (0)), переменная состояния вероятности показателя контекста ctxIdx=2, необходимая для обработки младшего значимого двоичного значения (уровень 1 ячейка 0) следующих данных коэффициента (coeff abs level minus1 (1)) в случае, когда ячейка=0, может содержаться в регистре 13. Кроме того, в момент времени, когда заканчивается обработка младшего значимого двоичного значения (уровень 1 ячейка 0), переменная состояния вероятности показателя контекста ctxIdx=5, необходимая для обработки следующего младшего значимого двоичного значения (уровень 1 ячейка 1) в случае, когда ячейка=1, может содержаться в регистре 13. Поэтому также в этом случае переменные состояния вероятности могут быть сохранены в регистре 13, так что вообще они не будут поступать слишком поздно для обработки последующих данных коэффициента (coeff abs level minus1 (1)).
Однако когда этот случай представляет собой случай, когда младшее значимое двоичное значение (уровень 0 ячейка 0) первых данных коэффициента (coeff abs level minus1 (0)) представляет собой ячейка = 1, в момент времени, когда заканчивается обработка последующего более значимого двоичного значения (уровень 0 ячейка 1), переменная состояния вероятности показателя контекста ctxIdx=0, необходимая для обработки младшего значимого двоичного значения (уровень 1 ячейка 0) последующих данных коэффициента (coeff abs level minus1 (1)), не будет подготовлена в регистре 13. Содержание переменной состояния вероятности в регистре 13 становится слишком поздним для процесса декодирования по элементу синтаксиса.
В соответствии с этим, как показано на фиг.10 (А), в устройстве 10 декодирования регистр 13 сформирован с использованием заданного количества временных регистров 13А переменной состояния вероятности и заданного количества регистров 13В переменной состояния вероятности. Здесь временные регистры 13А переменной состояния вероятности представляют собой регистры, в которые загружают и которые сохраняют переменные состояния вероятности из запоминающего устройства 12 параллельно расчетам контекста, процессу арифметического декодирования и т.п., как было описано выше со ссылкой на фиг.7. Регистры 13В переменной состояния вероятности представляют собой регистры, в которых заранее сохраняют переменные состояния вероятности, содержание которых в регистре 13 будет слишком поздним для процесса декодирования по элементу синтаксиса, до начала обработки остаточного уровня.
Здесь показатели контекста (ctxIdx) для элементов синтаксиса данных коэффициента классифицируют на 6 категорий в соответствии с типом, то есть компонент переменного тока, компонент постоянного тока, компонент сигнала (Y) яркости и компоненты цветоразностных сигналов (Cr, Cb). В каждой категории существует 9-10 типов показателей (ctxIdx) контекста. Кроме того, поскольку категорию уникально выбирают в каждом остаточном блоке, в конечном итоге имеется 9 типов или 10 типов показателей (ctxIdx) контекста, используемых в одной категории. В соответствии с этим временные регистры 13А переменной состояния вероятности предусмотрены для отдельных категорий.
В каждой категории 10 предусмотрены временные регистры 13А переменных состояния вероятности, которые максимум должны быть способны содержать переменные состояния вероятности, соответствующие этим 9 типам или 10 типам показателей контекста.
Следует отметить, что количество переменных состояния вероятности, которые могут быть сохранены в регистре 13 в 1 цикле, изменяется в соответствии со способностью передачи данных для передачи из запоминающего устройства 12 в регистр 13, и в соответствии с изменением этого количества изменяется количество переменных состояния вероятности, которые будет слишком поздно сохранять. Кроме того, количество переменных состояния вероятности, которые будет слишком поздно сохранять, изменяется в зависимости от переходов показателей контекста (ctxIdx) в данных коэффициента, определенных по формату. Поэтому количество временных регистров переменного состояния вероятности и количество регистров переменной состояния вероятности может быть установлено по-разному в соответствии с возможностями передачи данных для передачи из запоминающего устройства 12 в регистр 13, и в соответствии с переходом показателя контекста (ctxIdx) в данных коэффициента, определенных по формату. Следует отметить, что структура регистров 13В переменной состояния вероятности может быть исключена, поскольку в одном элементе синтаксиса считается, что возможность передачи данных для передачи из запоминающего устройства 12 в регистр 13 достаточна для максимального количества показателей контекста, которые могут быть получены в результате расчетов контекста, то есть, более конкретно, например, считается, что переменные состояния вероятности всех показателей контекста, полученных при расчете контекста, могут быть переданы в регистр 13 за 1 цикл.
В соответствии со структурой регистра 13, как показано в фиг.10 (В2), модуль 19 управления предварительно загружает в регистры 13В переменные состояния вероятности, которые могут быть слишком поздними для сохранения в регистре 13, при обработке инициализации в начале обработки остаточного блока. Следует отметить, что переменные состояния вероятности, которые могут быть слишком поздними для сохранения в регистре 13, могут быть получены из правила перехода показателя контекста в данные коэффициента (coeff abs level minus1).
Кроме того, когда предварительную загрузку заканчивают, начинается обработка каждого остаточного блока одного за другим. В то время как переменные состояния вероятности, полученные в результате расчетов контекста, содержатся во временных регистрах 13А переменных состояния вероятности, каждый элемент синтаксиса декодируют. Следует отметить, что в этом случае работой модуля 11 сохранения состояния вероятности управляют таким образом, чтобы исключить сохранение из запоминающего устройства 12 во временные регистры 13А переменной состояния вероятности для переменных состояния вероятности показателей контекста, которые уже были сохранены во временных регистрах 13А переменной состояния вероятности. Следует отметить, что сохранение переменных состояния вероятности показателей контекста, которые уже были сохранены в регистрах 13В переменной состояния вероятности, во временные регистры 13А переменной состояния вероятности может быть исключено.
Следует отметить, что на фиг.10 (В1) показана временная диаграмма, представляющая случай, в котором, когда начинается обработка каждого остаточного блока, все соответствующие переменные состояния вероятности загружают из запоминающего устройства 12 в регистр 13. Как показано на фиг.10 (В1), благодаря загрузке заранее всех соответствующих переменных состояния вероятности в регистр 13 может быть предотвращен случай, когда загрузка переменных состояния вероятности в регистр 13 становится слишком поздней для обработки декодирования каждого элемента синтаксиса.
Однако в этом случае необходимо загружать все соответствующие переменные состояния вероятности из запоминающего устройства 12 в регистр 13 в начале обработки каждого остаточного блока. В отличие от этого в устройстве 10 декодирования необходимые переменные состояния вероятности загружают в регистр 13 при обработке элемента синтаксиса. Только переменные состояния вероятности, которые могут быть слишком поздними для обработки загрузки, требуется заранее сохранять в регистре 13. Это позволяет значительно уменьшить время обработки по сравнению со случаем, показанным на фиг.10 (В1), когда его рассматривают в целом, и данные изображения могут быть эффективно обработаны.
(2) Работа варианта 1 воплощения
В описанной выше конструкции типы элементов синтаксиса в последовательно вводимом потоке битов (фиг.6 и фиг.7) последовательно детектируют модулем 16 адаптивного арифметического кодирования/декодирования. Кроме того, под управлением модуля 19 управления на основе результата детектирования модуля 16 адаптивного арифметического кодирования/декодирования контекст каждого элемента синтаксиса последовательно рассчитывают с помощью модуля 18 расчета контекста и получают показатели контекста (ctxIdx), которые могут быть приняты отдельными битами преобразованного в двоичную форму элемента синтаксиса. В потоке битов показатели состояния (stateIdx) и НВС последовательно выбирают с помощью модуля 16 адаптивного арифметического кодирования/декодирования на основе переменных состояния вероятности показателей контекста (ctxIdx) и исходные элементы синтаксиса декодируют путем обработки результата выбора.
В устройстве 10 декодирования в соответствии с типом элемента синтаксиса, детектированным модулем 16 адаптивного арифметического кодирования/декодирования, когда требуется декодировать элемент синтаксиса с малой частотой появления, модуль 16 адаптивного арифметического кодирования/декодирования обращается к запоминающему устройству 12, которое предусмотрено в модуле 11 сохранения состояния вероятности и которое представляет собой первое запоминающее устройство с большой задержкой доступа. Детектируют переменные состояния вероятности показателей контекста (ctxIdx), полученные модулем 18 расчета контекста. Затем выполняют обработку декодирования исходного элемента синтаксиса, используя детектированные переменные состояния вероятности. Поскольку запоминающее устройство 12 сформировано на основе СЗУПВ, общий размер конструкции устройства 10 декодирования, которое декодирует такой элемент синтаксиса с малой частотой появления, может быть уменьшен.
Однако когда запоминающее устройство 12 типа СЗУПВ используют для обработки всех элементов синтаксиса, как было описано выше в отношении устройства 1 декодирования, имеющего обычную конструкцию по фиг.3, становится трудно выполнить декодирование с высокой скоростью.
Поэтому в устройстве 10 декодирования, когда требуется декодировать элемент синтаксиса с высокой частотой появления, переменные состояния вероятности показателей контекста (ctxldx), полученные модулем 18 расчета контекста, загружают из запоминающего устройства 12, которое представляет собой второе запоминающее устройство, с большой задержкой доступа по сравнению с первым запоминающим устройством в регистр 13 и содержат в регистре 13. Используя переменные состояния вероятности, сохраненные в регистре 13, выполняют обработку декодирования элементов синтаксиса с высокой частотой появления. Поэтому устройство 10 декодирования позволяет выполнять с высокой скоростью обработку элементов синтаксиса с высокой частотой появления, хотя увеличивается его размер.
Здесь в этом типе устройства декодирования элементы синтаксиса, такие как тип макроблока и тип подмакроблока, поступают на выход как элементы синтаксиса с низкой частотой появления. Каждый из этих элементов синтаксиса появляется только один раз для обработки одного макроблока.
В отличие от этого данные коэффициента DC и данные коэффициента АС поступают на выход как элементы синтаксиса с высокой частотой появления. Среди них появляются данные коэффициента АС в случае данных изображения 4:2:0 15 раз последовательно, что означает 15×4×6=360 раз, когда обрабатывают один макроблок. Кроме того, коэффициенты DC появляются 6 раз при обработке одного макроблока. Поэтому, как и в устройстве 10 декодирования, когда регистр 13 используется только для элементов синтаксиса с высокой частотой появления, скорость обработки может быть существенно повышена по сравнению с прошлым без значительного увеличения размера конструкции в целом благодаря использованию предпочтительных эффектов, получаемых, когда используют регистр 13 и запоминающего устройство 12.
Кроме того, в устройстве 10 декодирования не только переменные состояния вероятности для элементов синтаксиса с высокой частотой появления содержатся в регистре 13, но также и переменные состояния вероятности показателей контекста (ctxIdx), полученные модулем 18 расчета контекста, избирательно загружают из запоминающего устройства 12 в регистр 13 и обработку декодирования выполняют, используя эти загруженные переменные состояния вероятности. Следовательно, требуется только сконфигурировать регистр 13, так чтобы обеспечить возможность хранения в нем только части переменных состояния вероятности из всех показателей контекста (ctxIdx), требуемых для обработки данных коэффициента. В частности, количество всех переменных состояния вероятности, требуемых для обработки данных коэффициента, составляет 59 типов. Поэтому, поскольку регистр 13 требуется сконфигурировать так, чтобы он позволял сохранять только часть переменных состояния вероятности из всех показателей контекста (ctxIdx), требуемых для обработки данных коэффициента, избегают увеличения общего размера конструкции, и скорость обработки можно увеличить по сравнению с прошлым.
Кроме того, в устройстве 10 декодирования переменные состояния вероятности избирательно загружают из запоминающего устройства 12 в регистр 13 и содержат в регистре 13. В течение периода, в котором обрабатывают переменные состояния вероятности, содержащиеся в регистре 13, более конкретно, в период, в который модуль 16 адаптивного арифметического кодирования/декодирования выполняет обработку выбора состояния вероятности, обработку арифметического декодирования и обработку преобразования в двоичную форму для одного элемента данных коэффициента (coeff abs level minus1 (0)), расчет контекста выполняют по следующим данным коэффициента (coeff abs level minus1 (1)) и соответствующие переменные состояния вероятности содержат в регистре 13. Кроме того, переменные состояния вероятности, содержащиеся в регистре 13, обновляют в соответствии с результатом обработки декодирования. Поэтому в устройстве 10 декодирования в момент времени, когда начинается обработка последующих данных коэффициента (coeff abs level minus1 (1-n)), переменные состояния вероятности уже содержатся в регистре 13. Обработка последующих данных коэффициента (coeff abs level minus1 (1-n)) может начинаться немедленно после завершения обработки непосредственно предшествующих данных коэффициента. Это также дополнительно увеличивает скорость обработки. В частности, когда требуется обрабатывать данные изображения с высокой разрешающей способностью, скорость обработки может быть существенно увеличена по сравнению с прошлым.
Таким образом, например, в случае высокой разрешающей способности (1920×1088), которая выше чем или равна уровню 4 в соответствии со стандартом ITU-T Н.264, в соответствии с данным вариантом воплощения по сравнению с описанной выше обычной конструкцией, показанной на фиг.5, время простоя 693 циклов может быть уменьшено в одном макроблоке. В соответствии с экспериментальными результатами декодирование можно полностью выполнять, даже когда скорость работы уменьшается приблизительно на 170 [МГц] по сравнению с обычной конструкцией.
Однако когда расчеты контекста последующих данных коэффициентов (coeff abs level minus1 (N)) выполняют заранее и переменные состояния вероятности содержатся в регистре 13 путем эффективного использования периода, в течение которого обрабатывают переменные состояния вероятности, сохраненные в регистре 13, случай, в котором сохранение переменных состояния вероятности в регистре 13 становится слишком поздним для обработки декодирования каждого элемента синтаксиса, может возникать в зависимости от перехода показателя контекста (ctxIdx) данных коэффициента (фиг.8 и фиг.9).
В соответствии с этим в данном варианте воплощения регистр 13 сформирован из временных регистров 13А переменных состояния вероятности и регистров 13В переменных состояния вероятности. Что касается переменных состояния вероятности, которые может быть слишком поздно сохранять в регистре 13, переменные состояния вероятности заранее загружают из запоминающего устройства 12 в регистр 13В переменных состояния вероятности и содержат в регистрах 13В переменных состояния вероятности в начале обработки остаточного блока. Кроме того, другие переменные состояния вероятности загружают из запоминающего устройства 12 в соответствии с необходимостью и содержат во временных регистрах 13А переменных состояния вероятности при обработке каждого элемента синтаксиса.
В результате в устройстве 10 декодирования переменные состояния вероятности, необходимые для обработки последующих данных коэффициента (coeff abs level minus1 (N)), содержат заранее в регистре 13 путем эффективного использования периода, в который обрабатывают переменные состояния вероятности, содержащиеся в регистре 13, таким образом, увеличивая скорость обработки. При этом можно эффективно исключить появление времени простоя в связи с тем фактом, что переменные состояния вероятности были сохранены в регистре 13 слишком поздно и устройство 10 декодирования ожидает окончания сохранения переменных состояния вероятности в регистре 13. Поэтому в связи с тем, что появление времени простоя эффективно исключают, можно повысить скорость обработки.
(3) Предпочтительные эффекты варианта 1 воплощения
В соответствии с описанной выше конструкцией элементы синтаксиса с высокой частотой появления декодируют и обрабатывают, используя переменные состояния вероятности, содержащиеся во втором запоминающем устройстве, задержка доступа которого мала, и другие элементы синтаксиса декодируют, используя переменные состояния вероятности, содержащиеся в первом запоминающем устройстве с большой задержкой доступа, исключая, таким образом, увеличение общего размера конструкции и повышая скорость обработки по сравнению с прошлым.
Кроме того, благодаря применению данных коэффициента к элементам синтаксиса с высокой частотой появления, для которых используют переменные состояния вероятности, содержащиеся во втором запоминающем устройстве, увеличение размера общей конструкции можно исключить более определенно, и можно повысить скорость обработки по сравнению с прошлым.
Кроме того, поскольку второе запоминающее устройство с малой задержкой доступа представляет собой регистр, последовательную обработку можно выполнять с задержкой доступа, равной 0, и скорость обработки может быть более определенно повышена.
Кроме того, благодаря избирательной загрузке переменных состояния вероятности, содержащихся в первом запоминающее устройстве, во второе запоминающее устройство в соответствии с результатом расчета контекста, используя загруженные переменные состояния вероятности, емкость второго запоминающего устройства можно поддерживать с требуемым минимальным размером, и можно избежать увеличения общего размера.
Кроме того, благодаря выполнению расчетов контекста для последующего элемента синтаксиса и сохранения переменных состояния вероятности в регистре 13 в период, в который обрабатывают переменные состояния вероятности, содержащиеся во втором запоминающем устройстве, скорость обработки можно дополнительно повысить.
Кроме того, благодаря выполнению расчетов контекста для последующего элемента синтаксиса и сохранения переменных состояния вероятности в регистре 13 в период, в который обрабатывают переменные состояния вероятности, содержащиеся во втором запоминающем устройстве, повышают скорость обработки. Переменные состояния вероятности, загрузка которых во второе запоминающее устройство может быть слишком поздней, загружают и содержат во втором запоминающем устройстве в начале обработки. Это позволяет эффективно исключить возникновение времени простоя, в течение которого обработка ожидает завершения сохранения переменных состояния вероятности в регистр 13, и скорость обработки может быть повышена.
(4) Вариант 2 воплощения
На фиг.11 показана временная диаграмма, предусмотренная для описания устройства декодирования в соответствии с вариантом 2 воплощения настоящего изобретения при сравнении с фиг.8. Следует отметить, что в этом варианте воплощения устройство декодирования выполнено таким же образом, как и в варианте 1 воплощения, за исключением конструкции, относящейся к временной диаграмме, показанной на фиг.11. Поэтому в следующем описании для описания используют конструкцию по фиг.6. Такое устройство 20 декодирования обрабатывает два последовательных двоичных значения каждого элемента синтаксиса одновременно, параллельно.
Поэтому в устройстве 20 декодирования модуль 11 сохранения состояния вероятности, модуль 18 расчета контекста, модуль 16 адаптивного арифметического кодирования/декодирования, модуль 7 преобразования в двоичную форму и модуль 19 управления выполняют обработку за два последовательных цикла, описанных на фиг.8 за 1 цикл, таким образом, что обеспечивается возможность последовательной обработки двух двоичных значений одновременно, параллельно. Поэтому модуль 11 сохранения состояния вероятности сохраняет в регистре 13 переменные состояния вероятности двух показателей контекста за 1 цикл.
Кроме того, модуль 16 адаптивного арифметического кодирования/декодирования переключает назначения доступа регистра 13 путем переключения назначения перехода по фиг.11 в соответствии с результатами обработки двух двоичных значений, обработанных одновременно, параллельно. Кроме того, когда двоичное значение стороны низкого порядка обрабатывают и последующее двоичное значение на стороне высокого порядка становится ненужным, то есть, более конкретно, когда двоичное значение на стороне низкого порядка представляет собой ячейка = 0, обработку последующего двоичного значения на стороне высокого порядка прекращают. Поэтому в примере, показанном на фиг.11, когда первое двоичное значение уровень 0 ячейка 0 и последующее двоичное значение уровень 0 ячейка 1 обрабатывают одновременно, параллельно, в случае, когда первое двоичное значение уровень 0 ячейка 0 представляет собой ячейка = 0, обработку переменной состояния вероятности, выбранную с последующим двоичным значением уровень 0 ячейка 1, прекращают.
Кроме того, когда первое двоичное значение уровень 1 ячейка 0 и следующее двоичное значение уровень 1 ячейка 1 последующих данных коэффициента обрабатывают одновременно, параллельно, в случае, когда первое двоичное значение уровень 1 ячейка 0 также представляет собой ячейка = 0, обработку переменной состояния вероятности, выбранной с последующим двоичным значением уровень 1 ячейка 1, прекращают.
Здесь в случае, когда обработку выполняют в соответствии с примером по фиг.11, когда двоичное значение уровень 0 ячейка 0 представляет собой ячейка = 0, переменные состояния вероятности показателей контекста ctxIdx=2 и ctxIdx=5 требуются для обработки с помощью модуля 16 адаптивного арифметического кодирования/декодирования при обработке во втором цикле. Кроме того, когда двоичное значение уровень 0 ячейка 0 и уровень 0 ячейка 1 представляют собой ячейка = 1, переменные состояния вероятности показателей контекста ctxIdx=0 и ctxIdx=6 требуются для обработки в модуле 16 адаптивного арифметического кодирования/декодирования при обработке во втором цикле.
Поэтому в начале второго цикла необходимо подготовить в регистре 13 переменные состояния вероятности показателей контекста ctxIdx=0, ctxIdx=2, ctxIdx=5 и ctxIdx=6. Следовательно, как представлено и обозначено в прямоугольнике на фиг.11, например, сохранение переменной состояния вероятности показателя контекста ctxIdx=0 в регистре 13 будет слишком поздним для обработки.
Поэтому даже в примере по фиг.11, как было описано в варианте 1 воплощения, временные регистры 13А переменной состояния вероятности и регистры 13В переменной состояния вероятности предусмотрены в регистре 13. Переменные состояния вероятности, которые могут быть слишком поздними для обработки, заранее сохраняют в регистрах 13В переменной состояния вероятности.
В соответствии с данным вариантом воплощения те же преимущественные эффекты, что и в варианте 1 воплощения, могут быть достигнуты, даже когда два последовательных двоичных значения каждого элемента синтаксиса обрабатывают одновременно, параллельно.
(5) Вариант 3 воплощения
На фиг.12 показана блок-схема, представляющая устройство кодирования в соответствии с вариантом 3 воплощения настоящего изобретения. Это устройство 30 кодирования может последовательно выполнять обработку ортогонального преобразования, обработку квантования и т.п. для данных изображения движущегося изображения в соответствии с форматом ITU-T Н.264 для генерирования элементов синтаксиса, обрабатывает элементы синтаксиса и выводит поток битов. В этой обработке кодирования устройство 30 кодирования последовательно выполняет обработку кодирования по элементам синтаксиса на основе обработки, основанной на контексте адаптивной двоичной арифметической обработки кодирования, используя модуль 11 сохранения состояния вероятности и модуль 18 расчета контекста, описанные выше в вариантах 1 и 2 воплощения, и выводит поток битов.
Таким образом, модуль 33 преобразования в двоичную форму последовательно преобразует в двоичную форму элементы синтаксиса, предназначенные для кодирования и обработки, в отличие от описанного выше модуля 7 двоичного декодирования со ссылкой на фиг.6. Модуль 32 адаптивного арифметического кодирования последовательно обрабатывает, как в описанном выше модуле 16 адаптивного арифметического кодирования/декодирования со ссылкой на фиг.6, переменные состояния вероятности, сохраненные в регистре 13 и запоминающем устройстве 12 модуля 11 сохранения состояния вероятности, последовательно кодирует и обрабатывает преобразованные в двоичную форму данные, сгенерированные модулем 33 преобразования в двоичную форму, и выводит поток битов.
Когда изобретение применяют к устройству кодирования, как в данном варианте воплощения, могут быть достигнуты те же предпочтительные эффекты, что и в вариантах 1 и 2 воплощения.
(6) Другие варианты воплощения
В описанных выше вариантах воплощения были описаны случаи, в которых обработку основанного на контексте адаптивного двоичного арифметического кодирования и основанного на контексте адаптивного двоичного арифметического декодирования выполняют в формате ITU-T Н.264. Однако настоящее изобретение не ограничивается этим. Настоящее изобретение можно широко применять для случаев, в которых выполняют обработку основанного на контексте адаптивного двоичного арифметического кодирования и основанного на контексте адаптивного двоичного арифметического декодирования в других форматах, кроме этого формата.
Промышленная применимость
Настоящее изобретение относится к способу обработки движущегося изображения, программе способа обработки движущегося изображения, носителю записи, на котором записана программа способа обработки движущегося изображения, и к устройству обработки движущегося изображения, которое можно применять, например, к устройству кодирования и к устройству декодирования движущихся изображений, на основе ITU-T Н.264.
Класс H04N7/30 с использованием кодирования с преобразованием
Класс H03M7/40 преобразование в коды переменной длины или из них, например код Шеннона-Фано, код Хафмана, код Морзе