Область техники, к которой относится изобретение
Настоящее изобретение относится к устройству и способу обработки изображений и, конкретно, относится к устройству и способу обработки изображений, которые позволяют улучшить эффективность предсказания.
Уровень техники
В последние годы широкое распространение получили устройства, подвергающие изображение кодированию со сжатием, используя при этом формат кодирования для обращения с информацией изображения как с цифровыми сигналами и используя преимущество избыточности, свойственной информации изображения с передачей и хранения высокоэффективной информации, принимаемой в качестве объекта в это время, чтобы сжать изображение с помощью ортогонального преобразования, такого как дискретное косинусное преобразование и т.п., и компенсации движения. Примерами этого способа кодирования является формат MPEG (Экспертная группа по движущимся изображениям) и т.п.
В частности, MPEG2 (ISO/IEC 13818-2) определяется как универсальный формат кодирования изображения и является стандартом, охватывающим как изображения чересстрочного разложения, так и изображения прогрессивной развертки, а также изображения со стандартной разрешающей способностью и изображений высокой четкости. Например, MPEG2 широко используется на сегодня в широком диапазоне применений для профессионального и для потребительского использования. Используя формат сжатия MPEG2, объем кода (битовая скорость) 4-8 Мбит/с назначается в случае изображения чересстрочного разложения со стандартной разрешающей способностью, например, 720 х 480 пикселей. Кроме того, используя формат сжатия MPEG2, объем кода (битовая скорость) 18-22 Мбит/с назначается в случае изображения чересстрочного разложения с высокой разрешающей способностью, например, 1920 х 1088 пикселей. Таким образом, могут быть реализованы высокий уровень сжатия и превосходное качество изображения.
С помощью MPEG2 кодирование с высоким качеством изображения, выполняемое с возможностью широковещательного использования, принципиально рассматривается в качестве цели, но объем кода (битовая скорость), более низкий, чем объем кода MPEG1, то есть, формат кодирования, имеющий более высокий уровень сжатия, не рассматривается. В связи с распространением персональных цифровых помощников, ожидается, потребности в таком формате кодирования будут увеличиваться по сравнению с сегодняшними и в ответ на это была выполнена стандартизация формата кодирования MPEG4. Что касается формата кодирования изображения, то его спецификация была утверждена в качестве международного стандарта ISO/IEC 14496-2 в декабре 1998 г.
Дополнительно, в последние годы стандартизация стандарта, служащего в качестве H.26L (ITU-T Q6/16 VCEG), получила развитие с введением кодирования изображения, первоначально предназначенного для использования при телевизионных конференциях. Для H.26L известно, что по сравнению с традиционным форматом кодирования, таким как MPEG2 или MPEG4, хотя для из кодирования и декодирования требуется больший объем вычислений, реализуется повышенная эффективность кодирования. Кроме того, в настоящее время, как часть деятельности по MPEG4, с целью использования преимуществ функции, которая не поддерживается H.26L с помощью этого H.26L, взятого в качестве основы, чтобы достигнуть повышенной эффективности кодирования, была выполнена стандартизация как Совместная модель видеокодирования с улучшенным сжатием. В отношении календарного графика стандартизации, стандарты H.264 и MPEG-4 Часть 10 (Advanced Video Coding, здесь далее упоминаемый как H.264/AVC) становятся международным стандартом в марте 2003 г.
Дополнительно, в качестве его расширения в феврале 2005 г. была завершена стандартизация FRExt (Fidelity Range Extension), содержащего инструмент кодирования, необходимый для коммерческого использования, такой как RGB, 4:2:2, или 4:4:4, 8x8DCT и матрица квантования, оговоренная в MPEG-2. Таким образом, H.264/AVC стал форматом кодирования, способным отображать даже шум пленки, содержащийся в кинофильме, и был использован в широком диапазоне применений, таких как диск Blu-Ray (зарегистрированная товарный знак) и т.д.
Однако, в настоящее время, возросли потребности в дополнительном кодировании с высоким сжатием, поскольку предполагается сжимать изображение, имеющее приблизительно 4000 х 2000 пикселей, что является учетверением разрешающей способности изображения высокой четкости. Альтернативно, возросли потребности в дополнительном кодировании с высоким сжатием, поскольку предполагается распределять изображение высокой четкости в среде с ограниченной емкостью передачи, такой как Интернет. Поэтому вышеупомянутая VCEG (= Экспертная группа по видеокодированию) под руководством ITU-T непрерывно вела исследования, касающиеся повышения эффективности кодирования.
В настоящее время, одной из причин, которая может быть приведена, почему формат H.264/AVC реализует высокую эффективность кодирования по сравнению со стандартным форматом MPEG2 и т.п., является использование способа внутреннего предсказания.
При способе внутреннего предсказания в отношении сигналов яркости определяются режимы внутреннего предсказания девяти видов блоков 4 х 4 пикселей и 8 х 8 пикселей и четыре вида макроблоков 16 х 16 пикселей. В отношении цветоразностных сигналов определяются режимы внутреннего предсказания четырех видов блоков 8 х 8 пикселей. Режимы внутреннего предсказания для цветоразностных сигналов могут быть установлены независимо от режимов внутреннего предсказания для сигналов яркости.
Для каждого режима внутреннего предсказания существуют конкретные модели в отношении того, как проявляется ошибка предсказания после такого внутреннего предсказания.
В качестве способа исключения такой избыточности и дополнительного повышения эффективности кодирования непатентная литература 1 предлагает следующий способ.
А именно, обработка изображения с внутренним кодированием выполняется посредством обычного формата H.264/AVC, заранее используя пробные сигналы при автономной обработке, причем ортогональное преобразование, такое как преобразование Карунена-Лоэва и т.п., выполняется для каждого режима внутреннего предсказания в отношении каждого блока и вычисляются оптимальные коэффициенты преобразования.
Затем, в процесс фактического кодирования вместо ортогонального преобразования, оговоренного форматом H.264/AVC, применяется процесс, использующий коэффициенты ортогонального преобразования, оптимизированные для каждого режима посредством упомянутого выше преобразования Карунена-Лоэва.
Кроме того, непатентная литература 2 предлагает способ объединения вышеупомянутого внутреннего предсказания с межкадровым предсказанием.
То есть, в непатентной литературе 2 разностная информация создается в отношении информации вектора движения, полученной при межкадровом предсказании не только для текущего блока, но также и для значений соседних пикселей вокруг текущего блока. Выполнение внутреннего предсказания между разностной информацией, относящейся к текущему блоку, и разностной информацией, относящейся к соседним пикселям, созданной таким образом, создает разностную информацию второго порядка. Созданная разностная информация второго порядка затем подвергается ортогональному преобразованию и квантованию и выводится в нисходящем потоке вместе со сжатым изображением.
Таким образом, эффективность кодирования дополнительно улучшается.
Кроме того, как описано выше, размер макроблока для формата H.264/AVC составляет 16 х 16 пикселей. Однако, размер макроблока 16 х 16 пикселей не оптимален для больших кадров изображения, таких как UHD (Ultra High Definition (сверхвысокая четкость; 4000 х 2000 пикселей), с которыми будут иметь дело способы кодирования следующего поколения.
Соответственно, непатентная литература 3 и т.д. предлагают увеличить размер макроблока, например, до размера 32 х 32 пикселя.
Перечень ссылок
Непатентная литература
Непатентная литература 1: "Improved Intra Coding", VCEG-AF15, ITU-Telecommunications Standardization Sector STUDY GROUP Question 6 Video coding Experts Group (VCEG), 20-21 April 2007
Непатентная литература 2: "Second Order Prediction (SOP) in P Slice", Sijia Chen, Jinpeng Wang, Shangwen Li and, Lu Yu, VCEG-AD09, ITU-Telecommunications Standardization Sector STUDY GROUP Question 6 Video coding Experts Group(VCEG), 16-18 July 2008
Непатентная литература 3: "Video Coding Using Extended Block Sizes", VCEG-AD09, ITU-Telecommunications Standardization Sector STUDY GROUP Question 16 - Contribution 123, Jan 2009
Раскрытие изобретения
Техническая проблема
Теперь, при наличии формата H.264/AVC, обработка с помощью фильтра нижних частот значений пикселей для соседних пикселей выполняется до выполнения внутреннего предсказания в приращениях блоков 8 х 8 пикселей, описанных выше. Таким образом, шум, содержащийся в соседних пикселях, удаляется, и корреляция повышается, за счет чего осуществляется более высокая эффективность кодирования.
Однако, независимо от того факта, что степень содержащегося шума различается в зависимости от входных изображений, значений параметра квантования, режимов внутреннего предсказания и т.д., фильтр нижних частот для удаления шума постоянно присутствует в формате H.264/AVC. То есть, этот фильтр нижних частот не является оптимальным в отношении входных изображений, значений параметра квантования, режимов внутреннего предсказания и т.д.
Кроме того, в формате H.264/AVC удаление шума пиксельных значений соседних пикселей, описанное выше, выполнялось только в режиме внутреннего предсказания в приращениях блоков 8 х 8 пикселей и не применялось для других режимов.
Настоящее изобретение было сделано в свете этой ситуации и осуществляет удаление шумов в зависимости от изображений и битовых скоростей, повышая, таким образом, эффективность предсказания.
Решение проблемы
Устройство обработки изображений, соответствующее первому варианту настоящего изобретения содержит: средство декодирования, выполненное с возможностью декодирования изображения текущего блока, который должен являться объектом процесса декодирования; средство настройки фильтра, выполненное с возможностью установки, в соответствии с текущим блоком, коэффициента, подлежащего использованию в процессе фильтрации, которому подлежит подвергнуть соседние пиксели текущего блока, используемые для внутреннего предсказания текущего блока, в соответствии с параметром кодирования; и средство внутреннего предсказания, выполненное с возможностью подвергать соседние пиксели процессу фильтрации с использованием коэффициента, установленного средством настройки фильтра, и выполнения внутреннего предсказания текущего блока.
Параметр кодирования может содержать режим внутреннего предсказания текущего блока или параметр квантования текущего блока; средство декодирования может декодировать режим внутреннего предсказания текущего блока или параметр квантования текущего блока; и средство настройки фильтра может устанавливать коэффициент в соответствии с режимом внутреннего предсказания, декодированным средством декодирования, или в соответствии с параметром квантования, декодированным средством декодирования.
Устройство обработки изображений может дополнительно содержать: средство хранения коэффициентов фильтра, выполненное с возможностью хранения коэффициента; при этом коэффициент вычисляется так, чтобы при обучающем изображении получить наименьшее различие между обучающим блоком, который является объектом процесса кодирования, и изображением предсказания, полученным при выполнении внутреннего предсказания для обучающего блока, соответствующего режиму внутреннего предсказания обучающего блока или параметру квантования обучающего блока, и сохраняется в средстве хранения коэффициентов фильтра; причем средство настройки фильтра устанавливает в качестве коэффициента фильтра коэффициент из числа коэффициентов, хранящихся в средстве хранения коэффициентов фильтра, который соответствует режиму внутреннего предсказания текущего блока или параметру квантования текущего блока.
Средство хранения коэффициентов фильтра может хранить коэффициент в виде n-битного (где n - целое число) значение в соответствии с длиной регистра процессора.
Средство декодирования может декодировать коэффициент, который был вычислен на стороне кодирования, с использованием соседних пикселей до того, как они подвергнутся фильтрации, так чтобы ошибка изображения предсказания, полученного посредством внутреннего предсказания, выполняемого в отношении текущего блока, была наименьшей, и который был установлен в соответствии с текущим блоком и режимом внутреннего предсказания текущего блока или параметром квантования текущего блока; а средство настройки фильтра может установить в качестве коэффициента такой коэффициент из числа коэффициентов, декодированных средством декодирования, который соответствует режиму внутреннего предсказания текущего блока или параметру квантования текущего блока.
Коэффициент может быть представлен в виде коэффициента фильтра и значения смещения.
Коэффициент фильтра может быть выполнен как трехполюсник.
Коэффициент фильтра может обладать симметрией с центровкой на коэффициенте, соответствующем нулевой фазе.
Средство декодирования может декодировать режим внутреннего предсказания текущего блока; а средство настройки фильтра может выбрать из числа режимов внутреннего предсказания вертикальный режим или горизонтальный режим в качестве режимов первого класса и другие режимы в качестве режимов второго класса, и когда режим внутреннего предсказания текущего блока принадлежит первому классу, установить коэффициент, соответствующий первому классу, а в случае, когда режим внутреннего предсказания текущего блока, который был декодирован, принадлежит второму классу, установить коэффициент, соответствующий второму классу.
Устройство обработки изображений может дополнительно содержать: средство приема, выполненное с возможностью приема информации флага, указывающей, выполнять или не выполнять фильтрацию в отношении соседних пикселей; при этом средство настройки фильтра устанавливают выполнять или не выполнять фильтрацию в отношении соседних пикселей, на основе информации флага, принятой средством приема.
Средство приема может принимать информацию флага в приращениях макроблоков; а средство настройки фильтра может устанавливать выполнять или не выполнять фильтрацию в отношении соседних пикселей в приращениях макроблоков, на основе на информации флага, принятой средством приема.
Средство приема может принимать информацию флага в приращениях блоков; а средство настройки фильтра может устанавливать выполнять или не выполнять фильтрацию в отношении соседних пикселей в приращениях блоков, на основе информации флага, принятой средством приема.
Способ обработки изображений, соответствующий первому варианту настоящего изобретения, содержит этапы, на которых: устройство обработки изображений выполняет декодирование изображения текущего блока, подлежащего процессу декодирования; устанавливают, в соответствии с текущим блоком, коэффициент, подлежащий использованию в процессе фильтрации, которому подлежит подвергнуть соседние пиксели текущего блока, используемые для внутреннего предсказания текущего блока, в соответствии с параметром кодирования; и подвергают соседние пиксели процессу фильтрации, используя установленный коэффициент и выполняют внутреннее предсказание текущего блока.
Устройство обработки изображений, соответствующее второму варианту настоящего изобретения содержит: средство настройки фильтра, выполненное с возможностью установки коэффициента, подлежащего использованию в процессе фильтрации, которому подлежит подвергнуть соседние пиксели текущего блока, подлежащего процессу декодирования, которые используются для внутреннего предсказания текущего блока в соответствии с параметром кодирования; средство внутреннего предсказания, выполненное с возможностью подвергать соседние пиксели процессу фильтрации с использованием коэффициента, установленного средством настройки фильтра, и выполнять внутреннее предсказание текущего блока; и средство кодирования, выполненное с возможностью кодирования изображения текущего блока.
Параметр кодирования может содержать режим внутреннего предсказания текущего блока или параметр квантования текущего блока; средство настройки фильтра может устанавливать коэффициент в соответствии с режимом внутреннего предсказания текущего блока или параметром квантования текущего блока; а средство кодирования может кодировать соответствующий режим внутреннего предсказания текущего блока или параметр квантования текущего блока.
Устройство обработки изображений может дополнительно содержать: средство хранения коэффициентов фильтра, выполненное с возможностью хранения указанного коэффициента; при этом коэффициент вычисляется так, чтобы получить с помощью обучающего изображения наименьшее различие между обучающим блоком, который является объектом процесса кодирования, и изображением предсказания, полученным с помощью выполнения внутреннего предсказания для обучающего блока, соответствующего режиму внутреннего предсказания для обучающего блока или параметру квантования обучающего блока, и хранится в средстве хранения коэффициентов фильтра; причем средство настройки фильтра устанавливает в качестве коэффициента такой коэффициент из числа коэффициентов, хранящихся в средстве хранения коэффициентов фильтра, который соответствует режиму внутреннего предсказания текущего блока или параметру квантования текущего блока.
Устройство обработки изображений может дополнительно содержать: средство вычисления коэффициента фильтра, выполненное с возможностью вычисления коэффициента, так чтобы остаточная ошибка между текущим блоком и изображением предсказания, полученным посредством внутреннего предсказания, выполняемого в отношении текущего блока с использованием соседних пикселей перед тем, как подвергнуться процессу фильтрации в соответствии с режимом внутреннего предсказания текущего блока или параметра квантования текущего блока, была наименьшей; при этом средство настройки фильтра устанавливает в качестве коэффициента такой коэффициент из числа коэффициентов, вычисленных средством вычисления коэффициентов фильтра, который соответствует режиму внутреннего предсказания текущего блока или параметру квантования текущего блока; а средство кодирования дополнительно кодирует коэффициент.
Коэффициент может быть представлен в виде коэффициента фильтра и значения сдвига.
Средство настройки может устанавливать выполнять или не выполнять процесс фильтрации в отношении соседних пикселей; а средство кодирования может кодировать информацию флага, указывающую выполнять или не выполнять процесс фильтрации, согласно установке средством настройки фильтра.
Способ обработки изображений, соответствующий второму варианту настоящего изобретения содержит этапы, на которых: устройство обработки изображений выполняет установку коэффициента, подлежащего использованию в процессе фильтрации, подвергнуться которому подлежат используемые для внутреннего предсказания текущего блока соседние пиксели текущего блока, которому подлежит быть объектом процесса декодирования, в соответствии с параметром кодирования; подвергает соседние пиксели процессу фильтрации с использованием установленного коэффициента, и выполняет внутреннее предсказание текущего блока; и кодируют изображение текущего блока.
В соответствии с первым вариантом настоящего изобретения, изображение текущего блока, которому подлежит быть объектом процесса декодирования, устанавливается коэффициент, который подлежит использованию в процессе фильтрации, подвергнутые которому подлежат используемые для внутреннего предсказания текущего блока соседние пиксели текущего блока, в соответствии с параметром кодирования. Соседние пиксели затем подвергаются процессу фильтрации с использованием установленного коэффициента, и выполняется внутреннее предсказание текущего блока.
В соответствии со вторым вариантом настоящего изобретения, в соответствии с параметром кодирования, устанавливается коэффициент, подлежащий использованию в процессе фильтрации, подвергнутые которому подлежат используемые для внутреннего предсказания текущего блока соседние пиксели текущего блока, которому подлежит быть объектом процесса декодирования, причем соседние пиксели подвергаются процессу фильтрации с использованием установленного коэффициента, выполняется внутреннее предсказание текущего блока и изображение текущего блока кодируется.
Заметим, что описанные выше устройства обработки изображения могут быть автономными устройствами или могут быть встроенными блоками, образующими устройство кодирования изображения или устройство декодирования изображения.
Полезные результаты изобретения
В соответствии с первым вариантом изобретения, изображения могут декодироваться. Кроме того, в соответствии со вторым вариантом изобретения, может выполняться шумоподавление с учетом изображения и битовой скорости передачи.
В соответствии со вторым вариантом изобретения, изображения могут кодироваться. Кроме того, в соответствии с первым вариантом изобретения, может выполняться шумоподавление с учетом изображения и битовой скорости передачи.
Краткое описание чертежей
Фиг. 1 – блок-схема конфигурации варианта осуществления устройства кодирования изображения, к которому применено настоящее изобретение.
Фиг. 2 – схема последовательности обработки в случае режима внутреннего предсказания для макроблока 16 х 16 пикселей.
Фиг. 3 – режимы внутреннего предсказания блока вида 4 х 4 пикселей для сигналов яркости.
Фиг. 4 – режимы внутреннего предсказания блока вида 4 х 4 пикселей для сигналов яркости.
Фиг. 5 – схема для описания направления внутреннего предсказания блока 4 х 4 пикселей.
Фиг. 6 – схема для описания внутреннего предсказания блока 4 х 4 пикселей.
Фиг. 7 – схема для описания кодирования режимов внутреннего предсказания блока вида 4 х 4 пикселей для сигналов яркости.
Фиг. 8 – режимы внутреннего предсказания блока вида 8 х 8 пикселей для сигналов яркости.
Фиг. 9 – режимы внутреннего предсказания блока вида 8 х 8 пикселей для сигналов яркости.
Фиг. 10 – режимы внутреннего предсказания блока вида 16 х 16 пикселей для сигналов яркости.
Фиг. 11 – режимы внутреннего предсказания блока вида 16 х 16 пикселей для сигналов яркости.
Фиг. 12 – схема для описания внутреннего предсказания блока вида 16 х 16 пикселей.
Фиг. 13 – виды режимов внутреннего предсказания для цветоразностных сигналов.
Фиг. 14 – блок схема примера конфигурации блока внутреннего предсказания и блока переключения фильтра интерполяции соседних пикселей, показанного на фиг. 1.
Фиг. 15 – схема для описания вычисления коэффициентов фильтра.
Фиг. 16 – схема для описания процесса кодирования устройства кодирования изображения, показанного на фиг. 1.
Фиг. 17 – блок-схема последовательности выполнения операций процесса предсказания на этапе S21, показанном на фиг. 16.
Фиг. 18 – блок-схема последовательности выполнения операций процесса внутреннего предсказания на этапе S21, показанном на фиг. 17.
Фиг. 19 – блок-схема последовательности выполнения операций процесса внутреннего предсказания движения на этапе S32, показанном на фиг. 17.
Фиг. 20 – блок схема другого примера конфигурации блока внутреннего предсказания и блока переключения фильтра интерполяции соседних пикселей, показанного на фиг. 1.
Фиг. 21 – блок-схема последовательности выполнения операций другого примера процесса внутреннего предсказания на этапе S31, показанном на фиг. 17.
Фиг. 22 – блок-схема конфигурации варианта осуществления устройства декодирования изображения, к которому применено настоящее изобретение.
Фиг. 23 – блок схема примера конфигурации примера блока внутреннего предсказания и блока переключения фильтра интерполяции соседних пикселей, показанного на фиг. 22.
Фиг. 24 – блок-схема последовательности выполнения операций процесса декодирования устройства декодирования изображения, показанного на фиг. 22.
Фиг. 25 – блок-схема последовательности выполнения операций процесса предсказания на этапе S138, показанном на фиг. 24.
Фиг. 26 – блок схема другого примера конфигурации блока внутреннего предсказания и блока переключения фильтра интерполяции соседних пикселей, показанного на фиг. 22.
Фиг. 27 – блок-схема последовательности выполнения операций другого примера процесса внутреннего предсказания на этапе S138, показанном на фиг. 24.
Фиг. 28 – блок-схема конфигурации варианта осуществления устройства обучения, к которому применено настоящее изобретение.
Фиг. 29 – блок схема примера конфигурации блока внутреннего предсказания и блока вычисления фильтра интерполяции соседних пикселей, показанного на фиг. 28.
Фиг. 30 – блок-схема последовательности выполнения операций процесса внутреннего предсказания с помощью обучающего устройства, показанного на фиг. 28.
Фиг. 31 – блок-схема конфигурации другого варианта осуществления устройства кодирования изображения, к которому применено настоящее изобретение.
Фиг. 32 – схема для описания процесса предсказания второго порядка.
Фиг. 33 – блок-схема конфигурации другого варианта осуществления устройства декодирования изображения, к которому применено настоящее изобретение.
Фиг. 34 – блок-схема конфигурации еще одного другого варианта осуществления устройства кодирования изображения, к которому применено настоящее изобретение.
Фиг. 35 – блок схема примера конфигурации блока внутреннего предсказания, показанного на фиг. 34.
Фиг. 36 – блок-схема последовательности выполнения операций другого примера процесса внутреннего предсказания на этапе S31, показанном на фиг. 17.
Фиг. 37 – блок-схема последовательности выполнения операций еще одного другого примера процесса внутреннего предсказания на этапе S31, показанном на фиг. 17.
Фиг. 38 – блок-схема последовательности выполнения операций другого примера процесса внутреннего предсказания на этапе S31, показанном на фиг. 17.
Фиг. 39 – блок-схема конфигурации еще одного другого варианта осуществления устройства декодирования изображения, к которому применено настоящее изобретение.
Фиг. 40 – блок схема примера конфигурации блока внутреннего предсказания и блока управления фильтра интерполяции соседних пикселей, показанных на фиг. 39.
Фиг. 41 – блок-схема последовательности выполнения операций еще одного другого примера процесса внутреннего предсказания на этапе S138, показанном на фиг. 24.
Фиг. 42 – блок-схема конфигурации другого варианта осуществления устройства кодирования изображения, к которому применено настоящее изобретение.
Фиг. 43 – блок-схема конфигурации другого варианта осуществления устройства декодирования изображения, к которому применено настоящее изобретение.
Фиг. 44 – пример увеличенного размера блока.
Фиг. 45 – блок схема примера конфигурации аппаратурного обеспечения компьютера.
Фиг. 46 – блок-схема примера принципиальной конфигурации телевизионного приемника, к которому применено настоящее изобретение.
Фиг. 47 – блок-схема примера принципиальной конфигурации сотового телефона, к которому применено настоящее изобретение.
Фиг. 48 – блок-схема примера принципиальной конфигурации рекордера жесткого диска, к которому применено настоящее изобретение.
Фиг. 49 – блок-схема примера принципиальной конфигурации фотокамеры, к которому применено настоящее изобретение.
Осуществление изобретения
Здесь далее варианты осуществления настоящего изобретения будут описаны со ссылкой на чертежи. Заметим, что описание будет продолжаться в следующем порядке.
1. Первый вариант осуществления (переключение фильтра интерполяции соседних пикселей: пример внутреннего предсказания)
2. Второй вариант осуществления (переключение фильтра интерполяции соседних пикселей: пример предсказания второго порядка)
3. Третий вариант осуществления (управление включением/выключением фильтра интерполяции соседних пикселей: пример внутреннего предсказания)
4. Четвертый вариант осуществления (управление включением/выключением фильтра интерполяции соседних пикселей: пример предсказания второго порядка)
1. Первый вариант осуществления
Пример конфигурации устройства кодирования изображения
На фиг. 1 представлена конфигурация варианта осуществления устройства кодирования изображения, служащего в качестве устройства обработки изображения, к которому применено настоящее изобретение.
Устройство 51 кодирования изображения подвергает изображение кодированию со сжатием, используя, например, формат H.264 и MPEG-4 Часть 10 (Advanced Video Coding) (описанный здесь как H.264/AVC).
В примере, показанном на фиг. 1, устройство 51 кодирования изображения содержит блок 61 аналогово-цифрового (A/D) преобразования, буфер 62 перемонтажа экрана, вычислительный блок 63, блок 64 ортогонального преобразования, блок 65 квантования, блок 66 кодирования без потерь, буфер 67 хранения, блок 68 обратного квантования, блок 69 обратного ортогонального преобразования, вычислительный блок 70, деблокирующий фильтр 71, память 72 кадров, переключатель 73, блок 74 внутреннего предсказания, блок 75 фильтра интерполяции соседних пикселей, блок 76 предсказания/компенсации движения, блок 77 выбора изображения предсказания и блок 78 управления скоростью.
Блок 61 A/D-преобразования преобразует входное изображение из аналогового в цифровое и выводит его в буфер 62 перемонтажа экрана для хранения. Буфер 62 перемонтажа экрана перемонтирует изображения кадров в хранящемся порядке следования для отображения в порядок следования кадров для кодирования в соответствии с GOP (группа изображений).
Вычислительный блок 63 вычитает из изображения, считанного из буфера 63 перемонтажа экрана, изображение предсказания из блока 74 внутреннего предсказания, выбранного блоком 77 выбора изображения предсказания, или изображение предсказания из блока 76 предсказания/компенсации движения и выводит информацию об их различии на блок 64 ортогонального преобразования. Блок 64 ортогонального преобразования подвергает информацию о различии, полученную от вычислительного блока 63, ортогональному преобразованию, такому как дискретное косинусное преобразование, преобразование Карунена-Лоэве и т.п., и выводит для нее коэффициент преобразования. Блок 65 квантования квантует коэффициент преобразования, полученный с выхода блока 64 ортогонального преобразования.
Квантованный коэффициент преобразования, являющийся выходным результатом работы блока 65 квантования, вводится в блок 66 кодирования без потерь, где он подвергается кодированию без потерь, такому как кодирование переменной длины, арифметическое кодирование и т.п., и сжимается.
Блок 66 кодирования без потерь получает информацию, указывающую внутреннее предсказание и так далее, от блока 74 внутреннего предсказания и получает информацию, указывающую режим межкадрового предсказания и так далее, от блока 76 предсказания/компенсации движения. Заметим, что информация, указывающая внутреннее предсказание, будет здесь далее упоминаться как информация режима внутреннего предсказания. Кроме того, информация, указывающая межкадровое предсказание, будет здесь далее также упоминаться как информация режима межкадрового предсказания.
Блок 66 кодирования без потерь кодирует квантованный коэффициент преобразования, а также кодирует информацию, указывающую внутреннее предсказание, информацию, указывающую режим межкадрового предсказания, параметры квантования и так далее, и принимает их как часть информации заголовка в сжатом изображении. Блок 66 кодирования без потерь обеспечивает подачу кодированных данных в буфер 67 хранения для хранения.
Например, с помощью блока 66 кодирования без потерь выполняется процесс кодирования без потерь, такой как кодирование переменной длины, арифметическое кодирование и т.п. К примерам кодирования переменной длины относится CAVLC (Context-Adaptive Variable Length Coding), определенное форматом H.264/AVC. К примерам арифметического кодирования относится CABAC (Context-Adaptive Binary Arithmetic Coding).
Буфер 67 хранения выводит данные, поступающие от блока 66 кодирования без потерь, например, на устройство хранения или в тракт передачи или подобный тракт выгрузки, не показанные на чертеже, в виде сжатого изображения, кодированного в формате H.264/AVC.
Кроме того, квантованный коэффициент преобразования с выхода блока 65 квантования также вводится на блок 68 обратного квантования, подвергаясь обратному квантованию, и затем подвергается дополнительному обратному ортогональному преобразованию в блоке 69 обратного ортогонального преобразования. Выходной сигнал, подвергнутый обратному ортогональному преобразованию, складывается с изображением предсказания, подаваемым от блока 77 выбора изображения предсказания, вычислительным блоком 70 и преобразуется в локально декодированное изображение. Деблокирующий фильтр 71 удаляет блочное отклонение из декодированного изображения и затем подает его в память 72 кадров для хранения. Перед тем, как деблокирующий фильтр 71 выполняет процесс деблокирующего фильтра, изображение также подается для хранения в память 72 кадров.
Переключатель 73 выводит опорные изображения, хранящиеся в памяти 72 кадров, на блок 76 предсказания/компенсации движения или на блок 74 внутреннего предсказания.
С помощью этого устройства 51 кодирования изображения, изображение I, изображение B и изображение P из буфера 62 перемонтажа экрана подаются на блок 74 внутреннего предсказания в качестве изображения, которое должно быть подвергнуто, например, внутреннему предсказанию (также упоминаемому как внутренняя обработка). Кроме того, изображение B и изображение P, считанные из буфера 62 перемонтажа экрана, подаются на блок 76 предсказания/компенсации движения в качестве изображения, которое должно быть подвергнуто межкадровому предсказанию (также упоминаемому как межкадровая обработка).
Блок 74 внутреннего предсказания выполняет процесс внутреннего предсказания для всех возможных режимов внутреннего предсказания, основываясь на изображении, которое должно быть подвергнуто внутреннему предсказанию, считанному из буфера 62 перемонтажа экрана, и опорном изображении, подаваемом из памяти 72 кадров, для создания изображения предсказания.
Перед процессом внутреннего предсказания блок 74 внутреннего предсказания выполняет процесс фильтрации для соседних пикселей, которые являются писелами, используемыми для внутреннего предсказания каждого текущего блока, с соседствующим текущим блоком с заданной позиционной связью. Процесс фильтрации использует коэффициент фильтра, установленный блоком 75 переключения фильтра интерполяции соседних пикселей в соответствии с режимом внутреннего предсказания, поданный от блока 74 внутреннего предсказания и т.д. То есть, блок 74 внутреннего предсказания использует для процесса внутреннего предсказания всех возможных режимов внутреннего предсказания соседние пиксели, подвергаемые процессу фильтрации с коэффициентами фильтра, установленными блоком 75 переключения фильтра интерполяции соседних пикселей.
Блок 74 внутреннего предсказания вычисляет значение функции стоимости в отношении режима внутреннего предсказания, в котором создается изображение предсказания, и выбирает режим внутреннего предсказания, в котором вычисленная функция стоимости принимает минимальное значение, в качестве оптимального режима внутреннего предсказания. Блок 74 внутреннего предсказания подает изображение предсказания, созданное в оптимальном режиме внутреннего предсказания, и значение функции стоимости, вычисленное в отношении соответствующего оптимального режима предсказания, на блок 77 выбора режима предсказания.
В случае, когда блоком 77 выбора изображения предсказания было выбрано изображение предсказания, созданное в оптимальном режиме внутреннего предсказания , блок 74 внутреннего предсказания обеспечивает подачу информации, указывающей оптимальный режим внутреннего предсказания, на блок 66 кодирования без потерь. В случае, когда информация была передана от блока 74 внутреннего предсказания, блок 66 кодирования без потерь кодирует эту информацию и использует ее как часть информации заголовка в сжатом изображении.
Блок 75 переключения фильтра интерполяции соседних пикселей хранит коэффициенты фильтра, соответствующие параметрам квантования и режимам внутреннего предсказания, полученные используя учебное изображение при выполнении обучения в устройстве 251 обучения, показанном на фиг. 28, которое будет описано ниже.
На блок 75 переключения фильтра интерполяции соседних пикселей подаются параметры квантования от блока 78 управления скоростью и информация режима внутреннего предсказания от блока 74 внутреннего предсказания. Блок 75 переключения фильтра интерполяции соседних пикселей устанавливает коэффициенты фильтра, соответствующие параметрам квантования, поступающим от блока 78 управления скоростью, и режиму внутреннего предсказания от блока 74 внутреннего предсказания. Блок 75 переключения фильтра интерполяции соседних пикселей обеспечивает подачу коэффициентов фильтра на блок 74 внутреннего предсказания.
Заметим, что блок 75 переключения фильтра интерполяции соседних пикселей может выполнять обучение и хранение коэффициентов фильтра, соответствующих только параметрам квантования или режимам внутреннего предсказания, а не им обоим вместе.
Кроме того, хотя в блоке 75 переключения фильтра интерполяции соседних пикселей хранятся коэффициенты фильтра, полученные автономно заранее при обучении, коэффициенты фильтра, вместо них, могут вычисляться в режиме онлайн. В этом случае, коэффициенты фильтра, установленные блоком 75 переключения фильтра интерполяции соседних пикселей, выводятся на блок 66 кодирования без потерь для посылки на сторону декодирования, как указано пунктирной стрелкой.
Блок 76 предсказания/компенсации движения выполняет процесс предсказания и компенсации движения в отношении всех возможных режимов межкадрового предсказания. Конкретно, на блок 76 предсказания/компенсации движения обеспечивается подача изображения, которое должно подвергнуться межкадровой обработке, считанное из буфера 62 перемонтажа экрана, и опорное изображение из памяти 72 кадров через переключатель 73. Блок 76 предсказания/компенсации движения обнаруживает векторы движения всех возможных режимов межкадрового предсказания, основываясь на изображении, которое должно быть подвергнуто межкадровой обработке, и опорном изображении, подвергает опорное изображение процессу компенсации, основываясь на векторах движения, и создает изображение предсказания.
Кроме того, блок 76 предсказания/компенсации движения вычисляет значение функции стоимости в отношении всех возможных режимов межкадрового предсказания. По вычисленным значениям функции стоимости блок 76 предсказания/компенсации движения определяет режим предсказания, обеспечивающий минимальное значение, при котором режим межкадрового предсказания является оптимальным.
Блок 76 предсказания/компенсации движения обеспечивает подачу изображения предсказания, созданного в оптимальном режиме межкадрового предсказания, и его значения функции стоимости на блок 77 выбора изображения предсказания. В случае, когда блоком 77 выбора изображения предсказания было выбрано изображение предсказания, созданное в оптимальном режиме межкадрового предсказания, блок 76 предсказания/компенсации движения выводит информацию, указывающую оптимальный режим межкадрового предсказания, (информацию режима межкадрового предсказания) на блок 66 кодирования без потерь.
Заметим, что информация вектора движения, информация флага, информация опорного кадра и т.д. выводятся на блок 66 кодирования без потерь по мере необходимости. Блок 66 кодирования без потерь также подвергает информацию, полученную от блока 76 предсказания/компенсации движения, процессу кодирования без потерь, такому как кодирование переменной длины, арифметическое кодирование и т.д., и вставляет ее в часть заголовка сжатого изображения.
Блок 77 выбора изображения предсказания определяет оптимальный режим предсказания из оптимального режима внутреннего предсказания и оптимального режима межкадрового предсказания, основываясь на значениях функции стоимости, полученной с выхода блока 74 внутреннего предсказания или блока 76 предсказания/компенсации движения. Блок 77 выбора изображения предсказания затем выбирает изображение предсказания в определенном оптимальном режиме предсказания и обеспечивает его подачу на вычислительные блоки 63 и 70. В это время блок 77 выбора изображения предсказания обеспечивает подачу информации о выборе изображения предсказания на блок 74 внутреннего предсказания или на блок 76 предсказания/компенсации движения.
Блок 78 управления скоростью управляет скоростью операции квантования блока 65 квантования с помощью параметров квантования, основываясь на сжатом изображении, хранящемся в буфере 67 хранения, так чтобы не вызывать его незаполнение или переполнение.
Параметр квантования, используемый для управления скоростью блока 65 квантования, подается в блок 66 кодирования без потерь, подвергается процессу кодирования без потерь и вставляется в часть заголовка сжатого изображения. Этот параметр квантования подается на блок 75 переключения фильтра интерполяции соседних пикселей и используется для установки коэффициентов фильтра, используемых для процесса фильтрации, который должен применяться к соседним пикселям.
Описание процесса внутреннего предсказания в соответствии с форматом H.264/AVC
Сначала будут описаны режимы предсказания, определенные форматом H.264/AVC.
Сначала будут описаны режимы предсказания в отношении сигналов яркости. Для режимов внутреннего предсказания сигналов яркости определены три системы, а именно, режим внутреннего предсказания 4 х 4, режим внутреннего предсказания 8 х 8 и режим внутреннего предсказания 16 х 16. Эти режимы служат для определения блоков и устанавливаются для каждого макроблока. Кроме того, режим внутреннего предсказания может быть установлен для цветоразностных сигналов независимо от сигналов яркости для каждого макроблока.
Дополнительно, в случае режима внутреннего предсказания 4 х 4 может быть установлен один режим предсказания из девяти видов режимов предсказания для каждого текущего блока 4 х 4 пикселей. В случае режима внутреннего предсказания 8 х 8 может быть установлен один режим предсказания из девяти видов режимов предсказания для каждого текущего блока 8 х 8 пикселей. Кроме того, в случае режима внутреннего предсказания 16 х 16 может быть установлен один режим предсказания из четырех видов режимов предсказания для текущего макроблока 16 х 16 пикселей.
Заметим, что здесь далее режим внутреннего предсказания 4 х 4, режим внутреннего предсказания 8 х 8 и режим внутреннего предсказания 16 х 16 будут также упоминаться как режим внутреннего предсказания 4 х 4 пикселей, режим внутреннего предсказания 8 х 8 пикселей и режим внутреннего предсказания 16 х 16 пикселей.
В примере, показанном на фиг. 2, числовые обозначения -1 -25, назначенные блокам, представляют последовательность битового потока (последовательность обработки на стороне декодирования) блоков. Заметим, что в отношении сигналов яркости, макроблок делится на блоки по 4 х 4 пикселей и выполняется DCT (дискретное косинусное преобразование) блоков 4 х 4 пикселей. Только в случае режима внутреннего предсказания 16 х 16, как показано в блоке –1, компоненты DC блоков собираются, создается матрица 4 х 4 и она дополнительно подвергается ортогональному преобразованию.
В другой стороны, в отношении цветоразностных сигналов, после того, как макроблок поделен на блоки по 4 х 4 пикселей и выполнено DCT для блоков 4 × 4 пикселей, как показано в блоках 16 и 17, компоненты DC блоков собираются, создается матрица 2 х 2 и она дополнительно подвергается ортогональному преобразованию.
Заметим, что в отношении режима внутреннего предсказания 8 х 8 это может применяться только в случае, когда текущий макроблок подвергается ортогональному преобразованию 8 х 8 с высоким профилем или профилем сверх этого.
Фиг. 3 и фиг. 4 представляют девять видов режимов внутреннего предсказания 4 х 4 (Intra_4 х 4_pred_mode) для сигналов яркости. Восемь видов режимов, отличных от режима 2, показывающего предсказание среднего значения (DC), соответствуют направлениям, указанным на фиг. 5 числами 0, 1, 3-8, соответственно.
Девять видов режима intra_4 х 4_pred_mode будут описаны со ссылкой на фиг. 6. В примере, показанном на фиг. 6, пиксели а-р представляют пиксели текущего блока, который должен подвергаться внутренней обработке, и значения пикселей А-М представляют значения пикселей для пикселей, принадлежащих соседнему блоку. Конкретно, пиксели а-р являются изображением, которое должно обрабатываться, считываемым из буфера 62 перемонтажа экрана, а значения пикселей А-М являются значениями пикселей декодированного изображения, которое должно считываться из памяти 72 кадров и служить в качестве опорного.
В случае режимов внутреннего предсказания, показанных на фиг. 3 и 4, значения пикселей предсказания а-р создаются, как сказано далее, используя значения пикселей А-М для пикселей, принадлежащих соседнему блоку. Здесь, то, что значение пикселя "доступно", означает, что значение пикселя доступно без указания той причины, что пиксель расположен на краю кадра изображения или еще не был кодирован. С другой стороны, то, что значение пикселя "недоступно", означает, что значение пикселя недоступно по причине того, что пиксель расположен на краю кадра изображения или еще не был кодирован.
Режим 0 является режимом вертикального предсказания и применяется только в случае, когда значения пикселей A-D "доступны". В этом случае, значения пикселей предсказания а-р создаются в соответствии со следующим выражением (1).
Значения пикселей предсказания a, e, i и m = A
Значения пикселей предсказания b, f, j и n = В
Значения пикселей предсказания c, g, k и o = С
Значения пикселей предсказания d, h, l и p = D... (1)
Режим 1 является режимом горизонтального предсказания и применяется только в случае, когда значения пикселей I-L "доступны". В этом случае, значения пикселей предсказания а-р создаются в соответствии со следующим выражением (2).
Значения пикселей предсказания a, b, c и d = I
Значения пикселей предсказания e, f, g и h = J
Значения пикселей предсказания i, j, k и l = K
Значения пикселей предсказания m, n, o и p = L... (2)
Режим 2 является режимом предсказания DC и значение пикселей предсказания создается согласно выражению (3), где значения всех пикселей A, B, C, D, I, J, K и L являются "доступными".
(A + B + C + D + I + J + K + L + 4) >> 3 . . . (3)
Кроме того, когда все значения пикселей A, B, C и D "недоступны", значение пикселей предсказания создается согласно выражению (4).
(I + J + K + L + 2) >> 2 . . . (4)
Кроме того, когда все значения пикселей I, J, K и L "недоступны", значение пикселей предсказания создается согласно выражению (5).
(A + B + C + D + 2) >> 2 . . . (5)
Заметим, что когда все значения пикселей A, B, C, D, I, J, K и L "недоступны", в качестве значения пикселей предсказания используется 128.
Режим 3 является режимом предсказания по диагонали влево-вниз Diagonal_Down_Left и применяется только в случае, когда значения пикселей A, B, C, D, I, J, K, L и M "доступны". В этом случае, значения пикселей предсказания а-р создаются в соответствии со следующим выражением (6).
Значения пикселя предсказания для пикселя a = (A + 2B + C + 2) >> 2
Значения пикселей предсказания для пикселей b и e = (B + 2C + D + 2) >> 2
Значения пикселей предсказания для пикселей c, f и i = (C + 2D + E + 2) >> 2
Значения пикселей предсказания для пикселей d, g, j и m = (D + 2E + F + 2) >> 2
Значения пикселей предсказания для пикселей h, k и n = (E + 2F + G + 2) >> 2
Значения пикселей предсказания для пикселей l и o = (F + 2G + H + 2) >> 2
Значения пикселя предсказания для пикселя р = (G + 3H + 2) >> 2 . . (6)
Режим 4 является режимом предсказания по диагонали вправо-вниз Diagonal_Down_Right и применяется только в случае, когда значения пикселей A, B, C, D, I, J, K, L и M "доступны". В этом случае, значения пикселей предсказания а-р создаются в соответствии со следующим выражением (7).
Значения пикселя предсказания для пикселя m = (J + 2K + L + 2) >> 2
Значения пикселей предсказания для пикселей i and n = (I + 2J + K + 2) >> 2
Значения пикселей предсказания для пикселей e, j и o = (M + 2I + J + 2) >> 2
Значения пикселей предсказания для пикселей a, f, k и p = (A + 2M + I + 2) >> 2
Значения пикселей предсказания для пикселей b, g и l = (M + 2A + B + 2) >> 2
Значения пикселя предсказания для пикселя c и h = (A + 2B + C + 2) >> 2
Значения пикселя предсказания для пикселя d = (B + 2C + D + 2) >> 2 . . (7)
Режим 5 является режимом предсказания по диагонали вправо Diagonal_Vertical_Right и применяется только в случае, когда значения пикселей A, B, C, D, I, J, K, L и M "доступны". В этом случае, значения пикселей предсказания а-р создаются в соответствии со следующим выражением (8).
Значения пикселя предсказания для пикселя a и j = (M + A + 1) >> 1
Значения пикселя предсказания для пикселя b и k = (A + B + 1) >> 1
Значения пикселя предсказания для пикселя c и l = (B + C + 1) >> 1
Значения пикселя предсказания для пикселя d = (C + D + 1) >> 1
Значения пикселей предсказания для пикселей e и n = (I + 2M + A + 2) >> 2
Значения пикселей предсказания для пикселей f и o = (M + 2A + B + 2) >> 2
Значения пикселя предсказания для пикселя g и p = (A + 2B + C + 2) >> 2
Значения пикселя предсказания для пикселя h = (B + 2C + D + 2) >> 2
Значения пикселя предсказания для пикселя i = (M + 2I + J + 2) >> 2
Значения пикселя предсказания для пикселя m = (J + 2J + K + 2) >> 2 . . (8)
Режим 6 является режимом предсказания по горизонтали вниз Horizontal_Down и применяется только в случае, когда значения пикселей A, B, C, D, I, J, K, L и M "доступны". В этом случае, значения пикселей предсказания а-р создаются в соответствии со следующим выражением (9).
Значения пикселя предсказания для пикселя a и g = (M + I + 1) >> 1
Значения пикселей предсказания для пикселей b и h = (I + 2M + A + 2) >> 2
Значения пикселя предсказания для пикселя c = (M + 2A + B + 2) >> 2
Значения пикселя предсказания для пикселя d = (A + 2B + C + 2) >> 2
Значения пикселя предсказания для пикселя e и k = (I + J + 1) >> 1
Значения пикселей предсказания для пикселей f и l = (M + 2I + J + 2) >> 2
Значения пикселя предсказания для пикселя i и o = (J + K + 1) >> 1
Значения пикселей предсказания для пикселей j and p = (I + 2J + K + 2) >> 2
Значения пикселя предсказания для пикселя m = (K + L + 1) >> 1
Значения пикселя предсказания для пикселя n = (J + 2K + L + 2) >> 2 . . (9)
Режим 7 является режимом предсказания по вертикали влево Vertical_Left и применяется только в случае, когда значения пикселей A, B, C, D, I, J, K, L и M "доступны". В этом случае, значения пикселей предсказания а-р создаются в соответствии со следующим выражением (10).
Значения пикселя предсказания для пикселя a = (A + B + 1) >> 1
Значения пикселя предсказания для пикселя b и i = (B + C + 1) >> 1
Значения пикселя предсказания для пикселя c и j = (C + D + 1) >> 1
Значения пикселя предсказания для пикселя d и k = (D + E + 1) >> 1
Значения пикселя предсказания для пикселя l = (E + F + 1) >> 1
Значения пикселя предсказания для пикселя e = (A + 2B + C + 2) >> 2
Значения пикселей предсказания для пикселей f и m = (B + 2C + D + 2) >> 2
Значения пикселя предсказания для пикселя g и n = (C + 2D + E + 2) >> 2
Значения пикселей предсказания для пикселей h и o = (D + 2E + F + 2) >> 2
Значения пикселя предсказания для пикселя р = (E + 2F + G + 2) >> 2 . . (10)
Режим 8 является режимом предсказания по горизонтали вверх Horizontal_Up и применяется только в случае, когда значения пикселей A, B, C, D, I, J, K, L и M "доступны". В этом случае, значения пикселей предсказания а-р создаются в соответствии со следующим выражением (11).
Значения пикселя предсказания для пикселя a = (I + J + 1) >> 1
Значения пикселя предсказания для пикселя m = (I + 2J + K + 2) >> 2
Значения пикселя предсказания для пикселя c и e = (J + K + 1) >> 1
Значения пикселя предсказания для пикселя d и f = (J + 2K + L + 2) >> 2
Значения пикселя предсказания для пикселя g и i = (K + L + 1) >> 1
Значения пикселя предсказания для пикселя h и j = (K + 3L + 2) >> 2
Значения пикселей предсказания k, l, m, n, o и p = L. . . (11)
Далее, формат кодирования режима внутреннего прогнозирования 4 х 4 пикселей (Intra_4×4_pred_mode) для сигналов яркости будет описан со ссылкой на фиг. 7.
На примере, показанном на фиг. 7, представлены текущий блок C, служащий в качестве объекта кодирования, выполненный как 4 х 4 пикселей, и блок A и блок B, которые соседствуют с текущим блоком C и выполнены как 4 х 4 пикселей.
В этом случае можно понимать, что Intra_4×4_pred_mode в текущем блоке и Intra_4×4_pred_mode в блоке A и блоке B имеют высокую корреляцию. Процесс кодирования выполняется следующим образом, используя эту корреляцию, за счет чего может быть осуществлена повышенная эффективность кодирования.
Конкретно, в примере, показанном на фиг. 7, Intra_4×4_pred_mode в блоке A и в блоке B берутся как Intra_4×4_pred_modeA и Intra_4×4_pred_modeB, соответственно, и MostProbableMode определяется следующим выражением (12).
MostProbableMode = Min(Intra_4×4_pred_modeA, Intra_4×4_pred_modeB)... (12)
То есть, один из блоков A или B, которому назначен меньший номер режима mode_number, берется как MostProbableMode.
Два значения, называемые prev_intra4×4_pred_mode_flag[luma4×4Blkldx] и rem_intra4x4_pred_mode[luma4x4Blkldx], определяются в пределах битового потока как параметры, относящиеся к текущему блоку C, и процесс декодирования выполняется с помощью обработки, основанной на псевдокоде, показанном в следующем выражении (13), с помощью которого могут быть получены значения Intra_4×4_pred_mode и Intra4×4PredMode[luma4×4Blkldx], относящиеся к блоку C.
If(prev_intra4×4_pred_mode_flag[luma4×4Blkldx])
Intra4×4PredMode[luma4×4Blkldx] = MostProbableMode
else
if(rem_intra4×4_pred_mode[luma4×4Blkldx] < MostProbableMode)
Intra4×4PredMode[luma4×4Blkldx]= rem_intra4×4_pred_mode[luma4×4Blkldx]
else
Intra4×4PredMode[luma4×4Blkldx]= rem_intra4×4_pred_mode[luma4×4Blkldx] + 1 . . . (13)
Далее будет описан режим внутреннего предсказания для блоков 8 х 8 пикселей. Фиг. 8 и фиг. 9 представляют девять видов режимов внутреннего предсказания 8 х 8 (intra_4×8_pred_mode) для сигналов яркости.
Скажем, например, что значения пикселей в текущем блоке 8 х 8 берутся как p[x, y](0 ≤ x ≤ 7; 0 ≤ y ≤ 7), и значения пикселей соседнего блока представляются подобно p[-1, -1], …, p[-1, 15], p[-1, 0], …, [p-1, 7].
В отношении режимов внутреннего предсказания для блоков 8 х 8 пикселей, соседние пиксели для создания значения предсказания подвергаются процессу низкочастотной фильтрации. Теперь, скажем, например, что значения пикселей перед процессом низкочастотной фильтрации представляются как p[-1, -1], …, p[-1, 15], p[-1, 0], …, p[-1, 7], и значения пикселей просле процесса представляются как p'[-1, -1], …, p'[-1, 15], p'[-1, 0], …, p'[-1, 7].
Сначала вычисляется p'[0, -1] с помощью следующего выражения (14) в случае, когда p[-1, -1] "доступно", и вычисляется с помощью следующего выражения (15) в случае, когда оно "недоступно".
p'[0, -1] = (p[-1, -1] + 2*p[0, -1] + p[1, -1] + 2) >> 2 . . . (14)
p'[0, -1] = (3*p[0, -1] + p[1, -1] + 2) >> 2 . . . (15)
p'[x, -1] (x = 0, …, 7) вычисляется в соответствии со следующим выражением (16).
p'[x, -1] = (p[x-1, -1] + 2*p[x, -1] + p[x+1, -1] + 2) >> 2 . . . (16)
p'[x, -1] (x = 8, …, 15) вычисляется в соответствии со следующим выражением (17) в случае, когда p[x, -1] (x = 8, …, 15) "доступно".
p'[x, -1] = (p[x-1, -1] + 2*p[x, -1] + p[x+1, -1] + 2) >> 2
p'[15, -1] = (p[14, -1] + 3*p[15, -1] + 2) >> 2 . . . (17)
p'[-1, -1] вычисляется следующим образом в случае, когда p[-1, -1] "доступно". Конкретно, вычисляется p'[-1, -1] согласно выражению (18) в случае, когда как p[0, -1], так и p[-1, 0] "доступны", и вычисляется согласно выражению (19) в случае, когда p[-1, 0] "недоступно". Кроме того, p'[-1, -1] вычисляется в соответствии с выражением (20) в случае, когда p[0, -1] "недоступно".
p'[-1, -1] = (p[0, -1] + 2*p[-1, -1] + p[-1, 0] + 2) >> 2 . . . (18)
p'[-1, -1] = (3*p[-1, -1] + p[0, -1] + 2) >> 2 . . . (19)
p'[-1, -1] = (3*p[-1, -1] + p[-1, 0] + 2) >> 2 . . . (20)
p'[-1, y] (y = 0, …, 7) вычисляется следующим образом в случае, когда p[-1, y] (y = 0, …, 7) "доступно". Конкретно, сначала, в случае, когда p[-1, -1] "доступно", p'[-1, 0] вычисляется с помощью следующего выражения (21), а в случае, когда оно "недоступно", вычисляется с помощью выражения (22).
p'[-1, 0] = (p[-1, -1] + 2*p[-1, 0] + p[-1, 1] + 2) >> 2 . . . (21)
p'[-1, 0] = (3*p[-1, 0] + p[-1, 1] + 2) >> 2 . . . (22)
Кроме того, p'[-1, y] (y = 1, …, 6) вычисляется с помощью следующего выражения (23) и p'[-1, 7] вычисляется в соответствии с выражением (24).
p[-1, y] = (p[-1, y-1] + 2*p[-1, y] + p[-1, y+1] + 2) >> 2 . . . (23)
p'[-1, 7] = (p[-1, 6] + 3*p[-1, 7] + 2) >> 2 . . . (24)
Значения предсказания в режимах внутреннего предсказания, показанных на фиг. 8 и фиг. 9, создаются следующим образом, используя значение p', вычисленное таким образом.
Режим 0 является режимом вертикального предсказания и он применяется, только в случае, когда p[x, -1] (x = 0, …, 7) "доступно". Значение предсказания pred8×8L[x, y] создается в соответствии со следующим выражением (25).
pred8×8L[x, y] = p'[x, -1] x, y = 0, …, 7 . . . (25)
Режим 1 является режимом горизонтального предсказания и он применяется, только когда p[-1, y] (y = 0, …, 7) "доступно". Значение предсказания pred8×8L[x, y] создается в соответствии со следующим выражением (26).
pred8×8L[x, y] = p'[-1, y] x, y = 0, …, 7 . . . (26)
Режим 2 является режимом предсказания DC и значение предсказания pred8×8L[x, y] создается следующим образом. Конкретно, в случае, когда как p[x, -1] (x = 0, …, 7), так и p[-1, y] (y = 0, …, 7) "доступны", значение предсказания pred8×8L[x, y] создается в соответствии со следующим выражением (27).
В случае, когда p[x, -1] (x = 0, …, 7) "доступно", но p[-1, y] (y = 0, …, 7) "недоступны", значение предсказания pred8×8L[x, y] создается в соответствии со следующим выражением (28).
В случае, когда p[x, -1] (x = 0, …, 7) "недоступно", но p[-1, y] (y = 0, …, 7) "доступны", значение предсказания pred8×8L[x, y] создается в соответствии со следующим выражением (29).
Конкретно, в случае, когда как p[x, -1] (x = 0, …, 7), так и p[-1, y] (y = 0, …, 7) "недоступны", значение предсказания pred8×8L[x, y] создается в соответствии со следующим выражением (30).
pred8×8L[x, y] = 128 . . . (30)
Здесь выражение (30) представляет случай 8-миразрядного ввода.
Режим 3 является режимом предсказания по диагонали вниз влево Diagonal_Down_Left_prediction и значение предсказания pred8×8L[x, y] создается следующим образом. Конкретно, режим предсказания Diagonal_Down_Left_prediction применяется, только когда p[x, -1], x = 0, …, 15, "доступно", и значение пикселя предсказания с x =7 и y =7 создается в соответствии со следующим выражением (31), а другие значения пикселей предсказания создаются в соответствии с выражением (32).
pred8×8L[x, y] = (p'[14, -1] + 3*p[15, -1] + 2) >> 2 . . . (31)
red8×8L[x, y] = (p'[x+y, -1] + 2*p'[x+y+1, -1] + p'[x+y+2, -1] + 2) >> 2 . . . (32)
Режим 4 является режимом предсказания по диагонали вниз вправо Diagonal_Down_Right_prediction и значение предсказания pred8×8L[x, y] создается следующим образом. Конкретно, режим предсказания Diagonal_Down_Right_prediction применяется, только когда p[x, -1], x = 0, …, 7 и p[-1, y], y = 0, …, 7 "доступны", и значение пикселя предсказания с x > y создается в соответствии со следующим выражением (33), а значения пикселя предсказания с x < y создается в соответствии с выражением (34). Кроме того, значение пикселя предсказания с x = y создается в соответствии со следующим выражением (35).
pred8×8L[x, y] = (p'[x-y-2, -1] + 2*p'[x-y-1, -1] + p'[x-y, -1] + 2) >> 2 . . . (33)
pred8×8L[x, y] = (p'[-1, y-x-2] + 2*p'[-1, y-x-1] + p'[-1, y-x] + 2) >> 2 . . . (34)
pred8×8L[x, y] = (p'[0, -1] + 2*p'[-1, -1] + p'[-1, 0] + 2) >> 2 . . . (35)
Режим 5 является режимом предсказания по вертикали вправо Vertical_Right_prediction и значение предсказания pred8×8L[x, y] создается следующим образом. Конкретно, режим предсказания по вертикали вправо Vertical_Right_prediction применяется, только когда p[x, -1], x = 0, …, 7 и p[-1, y], y = -1, …, 7 "доступны". Теперь, zVR определяется в соответствии со следующим выражение (36).
zVR = 2*x - y . . . (36)
При этом, в случае, когда zVR равно 0, 2, 4, 6, 8, 10, 12 или 14, значение пикселя предсказания создается в соответствии со следующим выражением (37), а в случае, когда zVR равно 1, 3, 5, 7, 9, 11 или 13, значение пикселя предсказания создается в соответствии со следующим выражением (38).
pred8×8L[x, y] = (p'[x-(y>>1)-1, -1] + p'[x-(y>>1), -1] + 1) >> 1 . . . (37)
pred8×8L[x, y] = (p'[x-(y>>1)-2, -1] + 2*p'[x-(y>>1)-1, -1] + p'[x-(y>>1), -1] + 2) >> 2
(38)
При этом, в случае, когда zVR равно -1, значение пикселя предсказания создается в соответствии со следующим выражением (39), а в случае, когда zVR равно 2, -3, -4, -5, -6 или -7, значение пикселя предсказания создается в соответствии со следующим выражением (40).
pred8×8L[x, y] = (p'[-1, 0] + 2*p'[-1, -1] + p'[0, -1] + 2) >> 2 . . . (39)
pred8×8L[x, y] = (p'[-1, y-2*x-1] + 2*p'[-1, y-2*x-2] + p'[-1, y-2*x-3] + 2) >> 2 . . . (40)
Режим 6 является режимом предсказания по горизонтали вниз Horizontal_Down_prediction и значение предсказания pred8×8L[x, y] создается следующим образом. Конкретно, режим предсказания по горизонтали вниз Horizontal_Down_prediction применяется, только когда p[x, -1], x = 0, …, 7 и p[-1, y], y = -1, …, 7 "доступны". Теперь, zHD определяется в соответствии со следующим выражением (41).
zHD = 2*y - x . . . (41)
При этом, в случае, когда zHD равно 0, 2, 4, 6, 8, 10, 12 или 14, значение пикселя предсказания создается в соответствии со следующим выражением (42), а в случае, когда zHD равно 1, 3, 5, 7, 9, 11 или 13, значение пикселя предсказания создается в соответствии со следующим выражением (43).
pred8×8L[x, y] = (p'[-1, y-(x>>1)-1] + p'[-1, y-(x>>1) + 1] >> 1 . . . (42)
pred8×8L[x, y] = (p'[-1, y-(x>>1)-2] + 2*p'[-1, y-(x>>1)-1] + p'[-1, y-(x>>1)] + 2) >> 2
(43)
Кроме того, в случае, когда zHD равно -1, значение пикселя предсказания создается в соответствии со следующим выражением (44), а в случае, когда zHD отличается от этого, конкретно, в случае, когда zHD равно -2, -3, -4, -5, -6 или -7, значение пикселя предсказания создается в соответствии со следующим выражением (45).
pred8×8L[x, y] = (p'[-1, 0] + 2*p'[-1, -1] + p'[0, -1] + 2) >> 2 . . . (44)
pred8×8L[x, y] = (p'[x-2*Y-1, -1] + 2*p'[x-2*y-2, -1] + p'[x-2*y-3, -1] + 2) >> 2 . . . (45)
Режим 7 является режимом предсказания по вертикали влево Vertical_Vertical_prediction и значение предсказания pred8×8L[x, y] создается следующим образом. Конкретно, режим предсказания Vertical_Left_prediction применяется, только когда p[x, -1], x = 0, …, 15, "доступно", и в случае, когда y = 0, 2, 4 или 6, значение пикселя предсказания создается в соответствии со следующим выражением (46), а в случаях, отличных от этого, то есть, в случае y = 1, 3, 5 или 7, значения пикселей предсказания создаются в соответствии со следующим выражением (47).
pred8×8L[x, y] = (p'[x+(y>>1), -1] + p'[x+(y>>1)+1, -1] + 1) >> 1 . . . (46)
pred8×8L[x, y] = (p'[x+(y>>1), -1] + 2*p'[x+(y>>1)+1, -1] + p'[x+(y>>1)+2, -1] + 2) >> 2 . . . (47)
Режим 8 является режимом предсказания по горизонтали вверх Horizontal_Up_prediction и значение предсказания pred8×8L[x, y] создается следующим образом. Конкретно, режим предсказания Horizontal_Up_prediction применяется, только когда p[-1, y] (y = 0, …, 7) "доступно".
zHU определяется в соответствии со следующим выражение (48).
zHU = x + 2*y . . . (48)
При этом, в случае, когда zHU равно 0, 2, 4, 6, 8, 10 или 12, значение пикселя предсказания создается в соответствии со следующим выражением (49), а в случае, когда zHU равно 1, 3, 5, 7, 9 или 11, значение пикселя предсказания создается в соответствии со следующим выражением (50).
pred8×8L[x, y] = (p'[-1, y+(x>>1)] + p'[-1, y+(x>>1)+1] + 1) >> 1 . . . (49)
pred8×8L[x, y] = (p'[-1, y+(x>>1)] . . . (50)
При этом, в случае, когда zHU равно 13, значение пикселя предсказания создается в соответствии со следующим выражением (51), а в случаях, отличных от этого, то есть, в случае, когда значение zHU больше 13, значение пикселя предсказания создается в соответствии со следующим выражением (52).
pred8×8L[x, y] = (p'[-1, 6] + 3*p'[-1, 7] + 2) >> 2 . . . (51)
pred8×8L[x, y] = p'[-1, 7] . . . (52)
Далее будет описан режим внутреннего предсказания для блоков 16 х 16 пикселей. Фиг. 10 и фиг. 11 представляют четыре вида режимов внутреннего предсказания 16 х 16 (intra_16 х 16_pred_mode) для сигналов яркости.
Четыре типа режимов внутреннего предсказания будут описаны со ссылкой на фиг. 12. В примере на фиг. 12 показан текущий макроблок А, который должен быть подвергнут процессу внутреннего предсказания, и Р(х, у) представляет значение пикселя, соседствующего с текущим макроблоком А.
Режим 0 является режимом вертикального предсказания и применяется, только когда P(x, -1); x, у = -1, 0, …, 15) "доступно". В этом случае, значения пикселя предсказания Pred(x, y) для каждого пикселя текущего макроблока А создается в соответствии со следующим выражением (53).
Pred(x, y) = P(x, -1); x, y = 0, …, 15 . . . (53)
Режим 1 является режимом горизонтального предсказания и применяется, только когда P(-1, y); x, y = -1, 0, …, 15 "доступно". В этом случае, значения пикселя предсказания Pred(x, y) для каждого пикселя текущего макроблока А создается в соответствии со следующим выражением (54).
Pred(x, y) = P(-1, y); x, y = 0, …, 15 . . . (54)
Режим 2 является режимом предсказания DC и в случае, когда все значения P(x, -1) and P(-1, y); x, y = -1, 0, …, 15 "доступны", значение пикселя предсказания Pred(x, y) каждого пикселя текущего макроблока A создается в соответствии со следующим выражением (55).
где x, y = 0,…,15 (55)
Кроме того, в случае, когда P(x, -1); x, y = -1, 0, …, 15 "недоступно", значение пикселя предсказания Pred(x, y) для каждого пикселя текущего макроблока A создается в соответствии со следующим выражением (56).
,где x, y = 0,…,15 (56)
В случае, когда P(-1, у); x, y = -1, 0, …, 15 "недоступно", значение пикселя предсказания Pred(x, y) для каждого пикселя текущего макроблока A создается в соответствии со следующим выражением (57).
, где x, y = 0,…,15
В случае, когда все значения P(x, -1) и P(-1, y); x, y = -1, 0, …, 15 "недоступны", в качестве значения пикселя предсказания используется 128.
Режим 3 является режимом предсказания в плоскости и применяется, только когда все значения P(x, -1) и P(-1, y) и x, у = -1, 0, …, 15) "доступны". В этом случае, значения пикселя предсказания Pred(x, y) для каждого пикселя текущего макроблока А создается в соответствии со следующим выражением (58).
Далее будут описаны режимы внутреннего предсказания в отношении цветоразностных сигналов. На фиг. 13 показаны четыре вида режимов внутреннего предсказания для цветоразностных сигналов. Режимы внутреннего предсказания для цветоразностных сигналов могут быть установлены независимо от режимов внутреннего предсказания для сигналов яркости. Режимы внутреннего предсказания для цветоразностных сигналов соответствуют упомянутым выше режимам внутреннего предсказания блоков 16 х 16 пикселей для сигналов яркости.
Однако, режимы внутреннего предсказания блоков 16 х 16 пикселей для сигналов яркости берут блок 16 х 16 пикселей в качестве объекта, но, с другой стороны, режимы внутреннего предсказания в отношении цветоразностных сигналов берут в качестве объекта блок 8 х 8 пикселей. Дополнительно, как показано на упомянутых выше фиг. 10 и 13, номера режимов на них не соответствуют.
Теперь, обратимся к определениям значениям пикселей текущего блока А в режиме внутреннего предсказания 16 х 16 пикселей для сигнала яркости, описанного выше со ссылкой на фиг. 12, и значения соседних пикселей. Например, пусть значение пикселя соседнего текущего макроблока A (8 × 8 пикселей в случае цветоразностных сигналов), который должен подвергнуться процессу внутреннего предсказания, принимается как P(x, y); x, y = -1, 0, …, 7.
Режим 0 является режимом предсказания DC и в случае, когда все значения P(x, -1) and P(-1, y); x, y = -1, 0, …, 7 "доступны", значение пикселя предсказания Pred(x, y) каждого пикселя текущего макроблока A создается в соответствии со следующим выражением (59).
где x, y = 0, …, 7 (59)
В случае, когда P(-1, у); x, y = -1, 0, …, 7 "недоступно", значение пикселя предсказания Pred(x, y) для каждого пикселя текущего макроблока A создается в соответствии со следующим выражением (60).
где x, y = 0, …, 7 (60)
Кроме того, в случае, когда P(x, -1); x, y = -1, 0, …, 7 "недоступно", значение пикселя предсказания Pred(x, y) для каждого пикселя текущего макроблока A создается в соответствии со следующим выражением (61).
где x, y = 0, …, 7 (61)
Режим 1 является режимом горизонтального предсказания и применяется, только когда P(-1, y); x, y = -1, 0, …, 7 "доступно". В этом случае, значения пикселя предсказания Pred(x, y) для каждого пикселя текущего макроблока А создается в соответствии со следующим выражением (62).
Pred(x, y) = P(-1, y); x, y = 0, …, 7 . . . (62)
Режим 2 является режимом вертикального предсказания и применяется, только когда P(x, -1); x, у = -1, 0, …, 7) "доступно". В этом случае, значения пикселя предсказания Pred(x, y) для каждого пикселя текущего макроблока А создается в соответствии со следующим выражением (63).
Pred(x, y) = P(x, -1); x, y = 0, …, 7 . . . (63)
Режим 3 является режимом предсказания в плоскости и применяется, только когда значения P(x, -1) и P(-1, y) у = -1, 0, …, 7) "доступны". В этом случае, значения пикселя предсказания Pred(x, y) для каждого пикселя текущего макроблока А создается в соответствии со следующим выражением (64).
Как описано выше, режимы внутреннего предсказания для сигналов яркости содержат девять видов режимов предсказания блоков размером 4 х 4 пикселей и 8 х 8 пикселей и четыре вида режимов предсказания макроблоков размером 16 х 16. Режимы этих блоков устанавливаются для каждого макроблока. Режимы внутреннего предсказания для цветоразностных сигналов содержат четыре вида режимов предсказания блоков 8 х 8 пикселей. Режимы внутреннего предсказания для цветоразностных сигналов могут быть установлены независимо от режимов внутреннего предсказания для сигналов яркости.
Кроме того, в отношении режимов внутреннего предсказания блоков 4 х 4 пикселей (режимы внутреннего предсказания 4 х 4) и режимов внутреннего предсказания блоков 8 х 8 пикселей (режимы внутреннего предсказания 8 х 8) для сигналов яркости устанавливается один режим внутреннего предсказания для каждого блока 4 х 4 пикселей и 8 х 8 пикселей сигнала яркости. В отношении режима внутреннего предсказания блоков размером 16 х 16 пикселей (режим внутреннего предсказания 16 х 16) для сигналов яркости и режимов внутреннего предсказания для цветоразностных сигналов для одного макроблока устанавливается один режим предсказания.
Заметим, что виды режимов предсказания соответствуют направлениям, указанным упомянутыми выше номерами 0, 1, 3-8 на фиг. 5. Режим 2 предсказания является предсказанием среднего значения.
Как описано выше, при внутреннем предсказании, соответствующем формату H.264/AVC, процесс фильтрации значений пикселей для соседних пикселей выполняется с определенными коэффициентами фильтра только перед выполнением внутреннего предсказания в приращениях блоков 8 х 8 пикселей, как описано выше с помощью выражений (14)-(24). В отличие от этого, для устройства 51 кодирования изображения процесс фильтрации значений пикселей для соседних пикселей выполняется с коэффициентами фильтрации, установленными в соответствии с блоком, который должен предсказываться, перед выполнением внутреннего предсказания во всех режимах внутреннего предсказания.
Пример конфигурации блока внутреннего предсказания и блока переключения фильтра интерполяции соседних пикселей
На фиг. 14 представлена блок схема примера подробной конфигурации блока 74 внутреннего предсказания и блока 75 переключения фильтра интерполяции соседних пикселей, показанных на фиг. 1.
В случае примера, показанного на фиг. 14, блок 74 внутреннего предсказания образуется блоком 81 установки соседнего изображения, блоком 82 создания изображения предсказания и необязательным блоком 83 определения режима предсказания.
Блок 75 переключения фильтра интерполяции соседних пикселей образуется буфером 91 режима предсказания, буфером 92 параметра квантования и блоком 93 настройки фильтра нижних частот. Заметим, что блок 93 настройки фильтра нижних частот имеет встроенную память 94 коэффициентов фильтра.
На блок 81 установки соседнего изображения из памяти 72 кадров подаются значения соседних пикселей текущего блока для внутреннего предсказания. Хотя в случае, показанном на фиг. 14, переключатель 73 отсутствует, на деле, подача выполняется из памяти 72 кадров в блок 81 установки соседнего изображения через переключатель 73. Заметим, что в случае внутреннего предсказания в качестве значений соседних пикселей используются значения пикселей, не подвергнутые деблокирующей фильтрации деблокирующим фильтром 71.
Блок 81 установки соседнего изображения использует коэффициент фильтра, установленный блоком 93 настройки низкочастотного фильтра для выполнения процесса фильтрации значений соседних пикселей текущего блока, поступающего из памяти 72 кадров, и подает значения соседних пикселей, подвергнутые процессу фильтрации, на блок 82 создания изображения предсказания.
Блок 82 создания изображения предсказания обеспечивает подачу информации о том, какой режим внутреннего предсказания обрабатывается в настоящее время, в буфер 91 режима предсказания. Блок 82 создания изображения предсказания использует значения соседних пикселей, подвергнутые процессу фильтрации, подаваемые от блока 81 установки соседнего изображения, чтобы выполнять внутреннее предсказание текущего блока в режиме внутреннего предсказания, поданном в буфер 91 режима предсказания, и создает изображение предсказания. Созданное изображение предсказания подается на необязательный блок 83 определения режима предсказания вместе с информацией о режиме внутреннего предсказания.
Блок 83 определения оптимального режима предсказания получает изображение, которое должно быть подвергнуто внутреннему предсказанию, которое считывается из буфера 62 перемонтажа экрана, изображение предсказания, созданное блоком 82 создания изображения предсказания и информацию режима внутреннего предсказания.
Блок 83 определения оптимального режима предсказания использует полученную информацию для вычисления функции стоимости для режима внутреннего предсказания, в отношении которого было создано изображение предсказания, используя поданную информацию, и принимает решение о режиме внутреннего предсказания, дающем наименьшее значение вычисленного значения функции стоимости, который должен являться оптимальным режимом внутреннего предсказания. Блок 83 определения оптимального режима внутреннего предсказания выводит изображение предсказания, созданное в оптимальном режиме внутреннего предсказания, и соответствующее значение функции стоимости на блок 77 выбора изображения предсказания.
Кроме того, в случае, когда блоком 77 выбора изображения предсказания выбрано изображение предсказания, созданное в оптимальном режиме внутреннего предсказания, блок 83 определения оптимального режима внутреннего предсказания обеспечивает подачу информации, указывающей оптимальный режим внутреннего предсказания, на блок 66 кодирования без потерь.
Буфер 91 режима предсказания хранит информацию режима внутреннего предсказания, полученную от блока 82 создания изображения предсказания. Буфер 92 параметра квантования хранит параметр квантования, полученный от блока 78 управления скоростью.
Блок 93 настройки фильтра нижних частот считывает информацию режима внутреннего предсказания для текущего блока из буфера 91 режима предсказания и считывает параметр квантования, соответствующий текущему блоку, из буфера 92 параметра квантования. Блок 93 настройки фильтра нижних частот устанавливает коэффициенты фильтра, соответствующие этой информации, из числа коэффициентов фильтра, хранящихся во встроенной памяти 94 коэффициентов фильтра, и подает установленные коэффициенты фильтра в блок 81 установки соседних пикселей.
Блок 94 памяти коэффициентов фильтра хранит коэффициенты фильтра, соответствующие параметрам квантования и режимам внутреннего предсказания, полученные посредством обучения, использующего учебное изображение, при выполнении обучения в устройстве 251 обучения, показанном на фиг. 28, которое будет описано ниже. Коэффициенты фильтра вычисляются и хранятся как описано далее, например, для каждого среза.
Описание вычисления оптимальных коэффициентов фильтра
Далее, со ссылкой на фиг. 15, описывается способ вычисления оптимальных коэффициентов фильтра, используемых для процесса фильтрации соседних пикселей. Заметим, что в примере, показанном на фиг. 15, приводится пример выполнения вертикального предсказания (Vertical Prediction) для текущего блока 4 х 4 пикселей, но последующее описание применимо к любому режиму внутреннего предсказания.
При внутреннем предсказании в приращениях блока 8 х 8 пикселей, как описано выше выражениями (14)-(24), 3-полюсный фильтр с коэффициентами {1, 2, 1} определяется как низкочастотный фильтр для соседних пикселей, но мы будем считать, что {c0, c1, c2} является общей формой 3-хполюсного фильтра. Далее, посредством настоящего изобретения, также вводится четвертый параметр с3 в качестве значения смещения.
Заметим, что хотя этот 3-хполюсный фильтр описывается как пригодный для настройки для каждого среза в последующем описании, это не является ограничением и фильтр может настраиваться на всю последовательность или, например, для каждой группы изображений (GOP).
В примере, показанном на фиг. 15, akm(0 ≤ k, m ≤ 3) является значением пикселя для пикселя, содержащегося в текущем блоке, и bm(-1 ≤ m ≤ 4) является значением пикселя соседнего пикселя, используемого для вертикального предсказания.
Прежде всего, значение b'm(0 ≤ m ≤ 3), показанное в последующем выражении (65), создается процессом 3-хполюсной фильтрации, выполняемым для значения bm соседнего пикселя.
То есть, в случае, когда выполняется процесс фильтрации и используется коэффициент фильтра, Вы скажете, что соответствующее значение смещения используется также, как в выражении (65), даже без особого упоминания последующего. Другими словами, коэффициенты фильтра и значения смещения являются коэффициентами, используемыми для процесса фильтрации. Таким же образом, в случае, когда коэффициент фильтра посылается на сторону декодирования кодированным, Вы скажете, что соответствующее значение смещения также послано кодированным.
Теперь, если мы говорим, что значение пикселя предсказания, когда режимом внутреннего предсказания является режим n, равно pij(b'm, n); 0 ≤ i, j ≤ 3, сохраняется следующее выражение (66) в отношении значения пикселя внутреннего предсказания, поскольку пиксел предсказания создается с помощью линейного выражения, как описано выше со ссылкой на фиг. 2-14.
Теперь в следующем выражении (67) показывается квадратичная ошибка предсказания в отношении текущего блока Ω с aij в качестве первоначального значения пиксела изображения.
Теперь, если мы представим с помощью Φ набор внутренних блоков, кодированных с помощью режима n внутреннего предсказания в текущем срезе, суммирование квадратичной ошибки предсказания, связанной с блоками, принадлежащими Φ, представляется следующим выражением (68).
В приведенном выше выражении (68), мы будет считать, что Err(Ω ∈ Φ) как функция c0, c1, c2, c3, то есть, Err(Ω ∈ Φ; c0, c1, c2, c3), так что c0, c1, c2, c3, которые минимизируют Err(Ω ∈ Φ; c0, c1, c2, c3), будет являться оптимальным значением коэффициента фильтра в текущем срезе. То есть, достаточно получить c0, c1, c2, c3, чтобы соблюдалось следующее выражение (69).
То есть, система уравнений, показанная в следующем выражении (70), получается из выражения (69).
Переформулируем это выражение (70), используя выражение (71) в матричной форме.
Решение этого выражения (71) позволяет получить оптимальный коэффициент фильтра и значение смещения {c0, c1, c2, c3 } для текущего среза.
Заметим, что решая систему уравнений в выражении (70) оптимальные коэфиициенты фильтра и значения смещения {c0, c1, c2, c3} получаются как значения с плавающей запятой, но в случае устройства 51 кодирования изображения, показанного на фиг. 1, и соответствующего устройства 151 декодирования изображения, показанного на фиг. 22, они округляются, например, до 8-миразрядных коэффициентов.
То есть, даже если коэффициенты фильтра представляются в плавающей запятой, память 94 коэффициентов фильтра хранит их как n-битное значение, например, в соответствии, с длиной регистра процессора.
Применяя также тот же самый способ, который был описан выше, к другим способам внутреннего предсказания, оптимальные коэффициенты фильтра также могут быть получены для других способов внутреннего предсказания. Кроме того, оптимальные коэффициенты фильтра могут быть также получены не только для режима внутреннего предсказания 4 х 4, но тем же самым способом также и для режима внутреннего предсказания 8 х 8, режима внутреннего предсказания 16 х 16 и режима внутреннего предсказания для цветоразностных сигналов.
Хотя в приведенном выше описании для каждого режима внутреннего предсказания получается один коэффициент фильтра, дело этим не ограничивается и может быть создана структура, где всего один коэффициент фильтра получается для всех режимов внутреннего предсказания. В частности, для режима внутреннего предсказания, описанного выше со ссылкой на фиг. 2-14, значения пикселей предсказания используются как для вертикального (Vertical), так и горизонтального (Horizontal) режимов, тогда как для других режимов для создания пикселей предсказания выполняется некоторого рода процесс усреднения или процесс взвешенного усреднения, поскольку их свойства различаются. Соответственно, выполнение двух типов классификации классов, для вертикального (Vertical) и горизонтального (Horizontal) режимов и других режимов, и вычисление коэффициентов фильтра могут реализовывать дальнейшее повышение эффективности кодирования. Кроме того, для сигналов яркости может иметься, например, один коэффициент для режима внутреннего предсказания 4 х 4, один - для режима внутреннего предсказания 8 х 8 и один – для режима внутреннего предсказания 16 х 16. Для цветоразностных сигналов коэффициенты фильтра могут быть получены, например, отдельно для Cb/Cr.
Кроме того, в приведенном выше описании для коэффициентов фильтра процесса низкочастотной фильтрации были использованы три полюса {c0, c1, c2}, но дело не ограничивается 3 полюсами и могут использоваться фильтры с любым количеством полюсов. Однако, по мере увеличения количества полюсов, порядок системы уравнений, которая должна решаться, повышается.
Дополнительно, может быть создана структура, в которой коэффициенты фильтра, которые различаются в соответствии с кадром изображения, такие CIF (общий промежуточный формат) / QCIF (четверть-CIF), SD (стандартная четкость), HD (высокая четкость).
Кроме того, с помощью описанного выше способа коэффициенты фильтра вычисляются посредством минимизации остатка внутреннего предсказания (квадратичная ошибка предсказания). Однако, способ вычисления коэффициентов фильтра не ограничивается этим и в случае, когда нет необходимости посылать коэффициенты фильтра на сторону декодирования, оптимизация, содержащая биты для посылки коэффициентов фильтра, также может выполняться.
Дополнительно, для описанных выше коэффициентов фильтра мы предполагаем симметрию коэффициентов, как показано следующим выражением (72).
C0 = C2 ... (72)
То есть, коэффициенты фильтра вычисляются так, чтобы иметь симметрию относительно центрального коэффициента, соответствующую нулевой фазе, например, {c0, c1, c0}. Соответственно, система из трех уравнений в показанном выше выражении (70) может быть понижена до двух уравнений. Как результат, объем вычислений может быть уменьшен.
Устанавливая коэффициенты фильтра, пригодные для входного изображения, и выполняя процесс низкочастотной фильтрации в отношении соседних пикселей адаптивным способом, использование описанного выше способа позволяет кодирование выполненных с использованием предсказания изображений, пригодное для изображения, параметров квантования и режима предсказания, посредством чего эффективность кодирования может быть улучшена.
В отношении описанного выше вычисления оптимальных коэффициентов фильтра могут рассматриваться два способа. Одним способом является автономная обработка, при которой для выполнения процесса кодирования сигналы изображения для обучения используются для вычисления коэффициентов фильтра до оптимизации сигналов всего изображения. Процесс обучения, который может быть этим автономным процессом, будет описан далее со ссылкой на фиг. 28 и коэффициенты фильтра и значения смещения, вычисленные с помощью процесса обучения, хранятся в памяти 94 коэффициентов фильтра, показанной на фиг. 14.
Вторым способом является неавтономный процесс, в котором оптимальные коэффициенты фильтра последовательно вычисляются для каждого среза. В этом случае вычисленные коэффициенты фильтра и значения смещения посылаются на сторону декодирования. Ниже, со ссылкой на фиг. 20, будет описан пример случая выполнения неавтономного процесса, являющегося вторым способом.
Описание процесса кодирования устройством кодирования изображения
Далее процесс кодирования устройством 51 кодирования изображения, показанного на фиг. 1, будет описан со ссылкой на блок-схему последовательности выполнения операций, показанную на фиг. 16.
На этапе S11 блок аналого-цифрового (A/D) преобразования преобразует входное изображение из аналоговой формы в цифровую. На этапе S12 буфер 62 перемонтажа экрана 62 сохраняет изображение, поданное от блока 61 A/D-преобразования, и выполняет перемонтаж из последовательности для отображения картинок в последовательность для кодирования.
На этапе S13 вычислительный блок 63 вычисляет разность между изображением, перемонтированным на этапе S12, и изображением предсказания. Изображение предсказания подается на вычислительный блок 63 от блока 76 предсказания/компенсации движения в случае выполнения межкадрового предсказания через блок 77 выбора изображения предсказания.
Разностные данные имеют меньший объем данных по сравнению с данными первоначального изображения. Соответственно, объем данных может быть сжат по сравнению со случаем кодирования первоначального изображения без изменения.
На этапе S14 блок 64 ортогонального преобразования подвергает разностную информацию, поданную от вычислительного блока 63, ортогональному преобразованию. Конкретно, выполняется ортогональное преобразование, такое как дискретное косинусное преобразование, преобразование Карунена-Лоэва и т.п., и коэффициенты преобразования выводятся. На этапе S15 блок 65 квантования квантует коэффициент преобразования. Во время этого квантования скорость управляется, так что далее будет описан процесс, происходящий на этапе S25.
Разностная информация, квантованная таким образом, локально декодируется, как описано далее. Конкретно, на этапе S16 блок 68 обратного квантования подвергает коэффициент преобразования, квантованный блоком 65 квантования, обратному квантованию, используя свойство, соответствующее свойству блока 65 квантования. На этапе S17 блок 69 обратного ортогонального преобразования подвергает коэффициент преобразования, подвергнутый обратному квантованию блоком 68 обратного квантования, обратному ортогональному преобразованию, используя свойство, соответствующее свойству блока 64 ортогонального преобразования.
На этапе S18 вычислительный блок 70 добавляет изображение преобразования, введенное блоком 77 выбора изображения предсказания, в локально декодированную разностную информацию и создает локально декодированное изображение (изображение, соответствующее вводу в высислительный блок 63). На этапе S19 деблокирующий блок 71 подвергает фильтрации изображение, полученное с выхода вычислительного блока 70. Таким образом, отклонение блока удаляется. На этапе S20 память 72 кадров сохраняет изображение, подвергнутое фильтрации. Заметим, что изображение, не подвергнутое процессу фильтрации деблокирующим фильтром 71, также подается от вычислительного блока 70 для хранения в память 72 кадров.
На этапе S21 как блок 74 внутреннего предсказания, так и блок 76 предсказания/компенсации движения, каждый выполняет процесс предсказания изображения. Конкретно, на этапе S21 блок 74 внутреннего предсказания выполняет процесс внутреннего предсказания в режиме внутреннего предсказания. Блок 76 предсказания/компенсации движения выполняет процесс предсказания и компенсации движения в режиме межкадрового предсказания.
Подробности процесса предсказания на этапе S21 будут описаны позднее со ссылкой на фиг. 17, но, в соответствии с этим процессом, процессы предсказания выполняются во всех возможных режимах предсказания и значения функции стоимости вычисляются во всех возможных режимах предсказания. Режим оптимального внутреннего предсказания затем выбирается, основываясь на вычисленных значениях функции стоимости и изображение предсказания, созданное посредством внутреннего предсказания в оптимальном режиме внутреннего предсказания, и его значение функции стоимости подается на блок 77 выбора изображения предсказания.
Заметим, что при этом перед процессом внутреннего предсказания блок 74 внутреннего предсказания выполняет процесс фильтрации в отношении соседних пикселей, применяемых для межкадрового предсказания текущих блоков, используя коэффициенты фильтра, установленные блоком 75 переключения фильтра интерполяции соседних пикселей. Внутреннее предсказание затем выполняется в блоке 74 внутреннего предсказания, используя соседние пиксели, подвергнутые процессу фильтрации, и создается изображение предсказания.
На этапе S22 блок 77 выбора изображения предсказания определяет оптимальный режим внутреннего предсказания или оптимальный режим межкадрового предсказания, который должен быть оптимальным режимом предсказания, основываясь на значениях функции стоимости, полученной с выхода блока 74 внутреннего предсказания или блока 76 предсказания/компенсации движения. Блок 77 выбора изображения предсказания затем выбирает изображение предсказания в определенном оптимальном режиме предсказания и обеспечивает его подачу на вычислительные блоки 63 и 70. Это изображение предсказания используется, как описано выше, для вычислений на этапах S13 и S18.
Заметим, что информация выбора этого изображения предсказания подается на блок 74 внутреннего предсказания или на блок 76 предсказания/компенсации движения. В случае, когда изображение предсказания было выбрано в оптимальном режиме внутреннего предсказания, блок 74 внутреннего предсказания обеспечивает подачу информации, указывающей оптимальный режим внутреннего предсказания, (то есть, информации режима внутреннего предсказания) на блок 66 кодирования без потерь.
В случае, когда изображение предсказания было выбрано в оптимальном режиме межкадрового предсказания, блок 76 предсказания/компенсации движения выводит информацию, указывающую оптимальный режим межкадрового предсказания, и, при необходимости, информацию, соответствующую оптимальному режиму межкадрового предсказания, на блок 66 кодирования без потерь. Примеры информации, соответствующей оптимальному режиму межкадрового предсказания, содержат информацию вектора движения, информацию флага и информацию опорного кадра. То есть, когда изображение предсказания, соответствующее режиму межкадрового предсказания, выбирается в качестве оптимального режима межкадрового предсказания, блок 76 предсказания/компенсации движения выводит информацию режима межкадрового предсказания, информацию вектора движения и информацию опорного кадра на блок 66 кодирования без потерь.
На этапе S23 блок 66 кодирования без потерь кодирует квантованный коэффициент преобразования, полученный с выхода блока 65 квантования. Конкретно, разностное изображение подвергается кодированию без потерь, такому как кодирование переменной длины, арифметическое кодирование и т.п., и сжимается. При этом информация оптимального режима внутреннего предсказания от блока 74 внутреннего предсказания или информация, соответствующая оптимальному режиму межкадрового предсказания, от блока 76 предсказания/компенсации движения и параметры квантования от блока 78 управления скоростью и так далее, введенные в блок 66 кодирования без потерь на этапе S22, также кодируются и добавляются к информации заголовка.
На этапе S24 буфер 67 хранения сохраняет разностное изображение в качестве сжатого изображения. Сжатое изображение, хранящееся в буфере 67 хранения, считывается, при необходимости, и передается на сторону декодирования через тракт передачи.
На этапе S25 блок 78 управления скоростью управляет скоростью операции квантования блока 65 квантования с помощью параметров квантования, основываясь на сжатом изображении, хранящемся в буфере 67 хранения, так чтобы не вызывать его незаполнение или переполнение.
Параметр квантования, используемый для управления скоростью в блоке 65 квантования, подается в блок 66 кодирования без потерь, подвергается процессу кодирования без потерь на описанном выше этапе S23 и вставляется в часть заголовка сжатого изображения. Кроме того, этот параметр квантования подается на блок 75 переключения фильтра интерполяции соседних пикселей и используется для установки коэффициентов фильтра, используемых для процесса фильтрации, который должен выполняться на соседних пикселях и который выполняется перед внутренним предсказанием.
Описание процесса предсказания
Далее, со ссылкой на блок-схему последовательности выполнения операций, показанную на фиг. 17, будет описан процесс предсказания на этапе S21, показанном на фиг. 16.
В случае, когда подлежащее обработке изображение, подаваемое из буфера 62 перемонтажа экрана, является изображением в блоке, который должен подвергнуться внутренней обработке, декодированное изображение, которое должно быть опорным, считывается из памяти 72 кадров и подается в блок 74 внутреннего предсказания через переключатель 73.
На этапе S31 блок 74 внутреннего предсказания выполняет внутреннее предсказание пикселей блока, подлежащего обработке, во всех возможных режимах внутреннего предсказания, используя поданное изображение. Заметим, что пиксели, не подвергнувшиеся деблокирующей фильтрации деблокирующим фильтром 71, используются в качестве декодированных пикселей, чтобы быть ссылкой.
Подробности процесса внутреннего предсказания на этапе S31 будут описаны со ссылкой на фиг. 18, но в соответствии с этим процессом оптимальный коэффициент фильтра устанавливается и процесс фильтрации выполняется в отношении соседних пикселей, используя установленный коэффициент фильтра. Соседние пиксели, для которых был выполнен процесс фильтрации, затем используются для выполнения внутреннего предсказания, создавая, таким образом, изображение предсказания.
Описанный выше процесс выполняется для всех возможных режимов внутреннего предсказания, значение функции стоимости вычисляется в отношении всех возможных режимов внутреннего предсказания и оптимальный режим внутреннего предсказания определяется, основываясь на вычисленных значениях функции стоимости. Изображение предсказания, созданное таким образом, и значение функции стоимости для оптимального режима внутреннего предсказания подаются на блок 77 выбора изображения предсказания.
В случае, когда подлежащее обработке изображение, подаваемое из буфера 62 перемонтажа экрана, является изображением, которое должен подвергнуться межкадровой обработке, изображение, которое должно быть опорным, считывается из памяти 72 кадров и подается в блок 76 предсказания/компенсации движения через переключатель 73 на этапе S32, основываясь на этих изображениях, блок 76 предсказания/компенсации движения выполняет процесс межкадрового предсказания движения. То есть, блок 76 предсказания/компенсации движения обращается к изображению, поданному из памяти 72 кадров, чтобы выполнить процесс предсказания движения во всех возможных режимах межкадрового предсказания.
Подробности процесса межкадрового предсказания движения на этапе S32 будут описаны позднее со ссылкой на фиг. 19, но, в соответствии с этим процессом, процесс предсказания движения выполняется во всех возможных режимах межкадрового предсказания и значение функции стоимости вычисляется в отношении всех возможных режимах межкадрового предсказания.
На этапе S33 блок 76 предсказания/компенсации движения сравнивает значения функции стоимости в отношении режимов межкадрового предсказания, вычисленных на этапе S32, и определяет режим предсказания, обеспечивающий минимальное значение, в качестве оптимального режима межкадрового предсказания. Блок 76 предсказания/компенсации движения затем обеспечивает подачу изображения предсказания, созданного в оптимальном режиме межкадрового предсказания, и его значение функции стоимости в блок 77 выбора изображения предсказания.
Описание процесса внутреннего предсказания
Далее, со ссылкой на блок-схему последовательности выполнения операций, показанную на фиг. 18, будет описан процесс внутреннего предсказания на этапе S31, показанный на фиг. 17. Заметим, что в примере на фиг. 18 описание, для примера, будет сделано в отношении случая сигнала яркости.
На этапе S25, показанном выше на фиг. 16, блок 78 управления скоростью обеспечивает подачу параметра квантования для текущего блока. На этапе S41 буфер 92 параметров квантования получает параметр квантования для текущего блока от блока 78 управления скоростью и сохраняет его.
На этапе S42 блок 82 создания изображения предсказания выбирает один режим внутреннего предсказания из режимов внутреннего квантования 4 х 4 пикселей, 8 х 8 пикселей и 16 х 16 пикселей. Информация выбранного режима внутреннего предсказания сохраняется в буфере 91 режима предсказания.
Блок 93 настройки фильтра нижних частот считывает информацию режима внутреннего предсказания из буфера 91 режима предсказания и считывает значение параметра квантования из буфера 92 параметров квантования. На этапе S43 блок 93 настройки фильтра нижних частот затем устанавливает из числа коэффициентов фильтра, вычисленных для каждого среза, которые хранятся в памяти 94 коэффициентов фильтра, тот коэффициент фильтра, который соответствует режиму внутреннего предсказания и параметру квантования. Установленный коэффициент фильтра подается на блок 81 установки соседних пикселей.
На этапе S44 блок 81 установки соседних пикселей использует установленный коэффициент фильтра для выполнения процесса фильтрации значений соседних пикселей текущего блока и обеспечивает подачу значений соседних пикселей, подвергнутых процессу фильтрации, на блок 82 создания изображения предсказания.
На этапе S43 блок 82 создания изображения предсказания использует значения соседних пикселей, подвергнутые процессу фильтрации, для выполнения внутреннего предсказания текущего блока с помощью режима внутреннего предсказания, выбранного на этапе S42, и создает изображение предсказания.
На блок 83 определения оптимального режима предсказания подается изображение, которое должно быть подвергнуто внутреннему предсказанию, которое считывается из буфера 62 перемонтажа экрана, изображение предсказания, созданное блоком 82 создания изображения предсказания, и информация режима внутреннего предсказания для них.
На этапе S46 блок 83 определения оптимального режима предсказания использует поданную информацию для вычисления значения функции стоимости для режима внутреннего предсказания, с помощью которого было создано изображение предсказания. Здесь, вычисление значения функции стоимости выполняется, основываясь на одном из способов режима высокой сложности или режима низкой сложности. Эти режимы определены в JM (объединенной модели), которая является справочным программным обеспечением в формате H.264/AVC.
Конкретно, в режиме высокой сложности, предположительно, до того, как процесс кодирования будет выполнен в отношении всех возможных режимов предсказания в качестве процесса, выполняемого на этапе S45. Значение функции стоимости, представленное следующим выражением (73), вычисляется в отношении режимов предсказания и режим предсказания, который обеспечивает его минимальное значение, выбирается в качестве оптимального режима предсказания.
Стоимость(режим) = D + λ · R . . . (73)
D представляет разность (отклонение) между первоначальным изображением и декодированным изображением, R представляет объем созданного кода, в который входит коэффициент ортогонального преобразования, и λ представляет множитель Лагранжа, который должен обеспечиваться как функция параметра QP квантования.
С другой стороны, в режиме низкой сложности создается изображение предсказания и до битов заголовка информация вектора движения, информация режима предсказания, информация флага и так далее вычисляются в отношении всех возможных режимов предсказания в качестве процесса, выполняемого на этапе S45. Значение функции стоимости, представленное следующим выражением (74), вычисляется в отношении режимов предсказания и режим предсказания, который обеспечивает его минимальное значение, выбирается в качестве оптимального режима предсказания.
Стоимость(режим) = D + QPtoQuant(QP) + Header_Bit . . . (74)
D представляет разность (отклонение) между первоначальным изображением и декодированным изображением, Header_Bit представляет биты заголовка в отношении режима предсказания, и QPtoQuant является функцией, обеспечиваемой как функция параметра QP квантования.
В режиме низкой сложности изображение предсказания создается для всех режимов предсказания и, поскольку нет необходимости выполнять процесс кодирования и процесс декодирования, объем вычислений может быть уменьшен.
На этапе S47 блок 83 определения режима оптимального предсказания определяет, закончена или не закончена обработка для всех режимов внутреннего предсказания. То есть, на этапе S47 выполняется определение в отношении того, выполнена ли обработка на этапах S42-S46 полностью для всех режимов внутреннего предсказания 4 х 4 пикселей, 8 х 8 пикселей и 16 х 16 пикселей.
В случае, когда на этапе S47 определено, что обработка не закончена для всех режимов внутреннего предсказания, процесс возвращается к этапу S42 и последующая обработка повторяется.
В случае, когда на этапе S47 определено, что обработка не закончена для всех режимов внутреннего предсказания, процесс возвращается к этапу S42 и последующая обработка повторяется. На этапе S48 блок 83 определения режима оптимального предсказания определяет режим внутреннего предсказания, для которого вычисленное значение функции стоимости имеет минимальное значение, который и должен являться режимом оптимального внутреннего предсказания.
Изображение предсказания, созданное в режиме оптимального внутреннего предсказания, и соответствующее значение функции стоимости подаются на блок 77 выбора изображения предсказания.
В случае, когда блоком 77 выбора изображения предсказания выбрано изображение предсказания, созданное в оптимальном режиме внутреннего предсказания, блок 83 определения оптимального режима внутреннего предсказания обеспечивает подачу информации, указывающей оптимальный режим внутреннего предсказания, на блок 66 кодирования без потерь. Затем она кодируется в блоке 66 кодирования без потерь и добавляется к информации заголовка сжатого изображения (этап S23 на упомянутом ранее фиг. 16).
Заметим, что коэффициенты фильтра, вычисленные путем процесса обучения, которые хранятся в памяти 94 коэффициентов фильтра, аналогично хранятся в устройстве 151 декодирования изображения, показанном на фиг. 22, которое будет описано позже, из-за чего установленные коэффициенты фильтра не требуется добавлять к информации заголовка сжатого изображения и отправлять.
Соответственно, в случае H.264/AVC, существуют 51 параметров квантования, существуют девять режимов внутреннего предсказания для блоков 4 х 4 пикселей и 8 х 8 пикселей и, когда учитываются все эти комбинации, становится необходимым очень большое количество коэффициентов фильтров, равное 51 х 9 = 459. Информация, относящаяся к такому большому количеству коэффициентов фильтра, не должна посылаться на сторону декодирования, поэтому обработка может осуществляться без увеличения верхнего предела для информации коэффициентов.
Описание процесса внутреннего предсказания движения
Далее, со ссылкой на блок-схему последовательности выполнения операций, показанную на фиг. 19, будет описан процесс внутреннего предсказания движения на этапе S32, показанный на фиг. 17.
На этапе S61 блок 76 предсказания/компенсации движения определяет вектор движения и опорное изображение в отношении каждого из восьми видов режимов межкадрового предсказания для блоков 16 х 16 пикселей – 4 х 4 пикселей. То есть, как вектор движения, так и опорное изображение, определяются в отношении блока, подлежащего обработке в каждом из режимов межкадрового предсказания.
На этапе S62 блок 76 предсказания/компенсации движения подвергает опорное изображение процессу предсказания и компенсации движения, основываясь на векторе движения, определенном на этапе S62 в отношении каждого из восьми видов режимов межкадрового предсказания для блоков 16 х 16 пикселей – 4 х 4 пикселей. В соответствии с этим процессом предсказания и компенсации движения создается изображение предсказания в каждом из режимов межкадрового предсказания.
На этапе S63 блок 76 предсказания/компенсации движения создает информацию вектора движения, которая должна быть добавлена к сжатому изображению, в отношении вектора движения, определенного в отношении каждого из восьми видов режимов межкадрового предсказания для блоков 16 х 16 пикселей – 4 х 4 пикселей.
Созданная информация вектора движения также используется во время вычисления значения функции стоимости на следующем этапе S64 и выводится в случае, когда соответствующее изображение предсказания окончательно выбрано блоком 77 выбора изображения предсказания, на блок 66 кодирования без потерь вместе с информацией режима предсказания и информацией опорного кадра.
На этапе S64 блок 76 предсказания/компенсации движения вычисляет значение функции стоимости, показанное в упомянутых выше выражении (723) или выражении (74), в отношении каждого из восьми видов режимов межкадрового предсказания для блоков 16 х 16 пикселей – 4 х 4 пикселей. Значения функции стоимости, вычисленные здесь, используются во время определения оптимального режима межкадрового предсказания на этапе S34, показанном на фиг. 17 и описанном выше.
Далее, в качестве второго способа вычисления оптимального коэффициента фильтра со ссылкой на фиг. 20 будет описан пример случая, когда выполняется неавтономная обработка, при которой оптимальные коэффициенты фильтра последовательно вычисляются для каждого среза.
Теперь, в этом случае существует необходимость послать на сторону декодирования коэффициенты фильтра, вычисленные на стороне кодирования для каждого среза, и посылка коэффициентов фильтра, разбитых на большое количество случаев, ведет к ухудшению эффективности кодирования. Соответственно, для среза посылается только один коэффициент фильтра или только один коэффициент посылается для каждого режима предсказания для каждого размера блока или только один коэффициент посылается для типа режима предсказания, такого как горизонтальное предсказание, вертикальное предсказание и т.д.
Кроме того, в случае упомянутой выше автономной обработки описание было сделано в отношении примера использования режима внутреннего предсказания и параметров квантования как параметров для вычисления коэффициентов фильтра. С другой стороны, в случае неавтономной обработки большое количество параметров для вычисления коэффициентов фильтра увеличивает объем обработки, как, например, будет описано со ссылкой на фиг. 20 в отношении примера использования только режима внутреннего предсказания для параметров. Хотя описание будет опущено, как само собой разумеющееся, могут использоваться только параметры квантования или могут использоваться оба параметра.
Другой пример конфигурации блока внутреннего предсказания и блока переключения фильтра интерполяции соседних пикселей
На фиг. 20 приведена блок-схема, показывающая другой пример конфигурации блока 74 внутреннего предсказания и блока 75 переключения фильтра интерполяции соседних пикселей для случая выполнения неавтономной обработки для каждого среза, чтобы последовательно вычислять оптимальные коэффициенты фильтра.
В случае примера, показанного на фиг. 20, между блоком 74 внутреннего предсказания и блоком 75 переключения фильтра интерполяции соседних пикселей введен переключатель 101 и, в отличие от случая, показанного на фиг. 14, включая и выключая переключатель 101, блок 74 внутреннего предсказания выполняет внутреннее предсказание дважды. То есть, с помощью блока 74 внутреннего предсказания, внутреннее предсказание, определенное в H.264/AVC, выполняется в состоянии, в котором переключатель 101 выключен и вычисляются коэффициенты фильтра, пригодные для внутреннего предсказания. В состоянии, в котором переключатель 101 включен, внутреннее предсказание выполняется с коэффициентом фильтра, установленным блоком 75 переключения фильтра интерполяции соседних пикселей не из числа вычисленных коэффициентов фильтра.
Блок 74 внутреннего предсказания, показанный на фиг. 20, образуется блоком 111 установки соседних пикселей, блоком 112 создания изображения предсказания и блоком 113 определения оптимального режима предсказания.
Блок 75 переключения фильтра интерполяции соседних пикселей образуется буфером 121 режима предсказания, блоком 122 вычисления оптимального фильтра и блоком 123 настройки низкочастотного фильтра.
На блок 111 установки соседних пикселей из памяти 72 кадров подаются значения соседних пикселей всех текущих блоков текущего среза для внутреннего предсказания. В случае, показанном также на фиг. 20, переключатель 73 отсутствует. Заметим, что в случае внутреннего предсказания в качестве значений соседних пикселей используются значения пикселей, не подвергнутые деблокирующей фильтрации деблокирующим фильтром 71 .
В случае, когда переключатель 101 находится в выключенном состоянии, блок 111 установки соседних пикселей подвергает значения соседних пикселей текущего блока из памяти 72 кадров процессу фильтрации, используя коэффициенты фильтра только для режимов внутреннего предсказания, определенных в H.264/AVC, и подает их на блок 112 создания изображения предсказания.
То есть, только в случае режима предсказания 8 х 8 пикселей, описанного выше выражениями (14)-(24), значения соседних пикселей подвергаются процессу фильтрации, выполняемому блоком 112 создания изображения предсказания. Во всех других случаях значения соседних пикселей текущего блока из памяти 72 кадров подаются на блок 112 создания изображения предсказания такими, как есть.
В случае, когда переключатель 101 находится во включенном состоянии, на блок 111 установки соседних пикселей подаются коэффициенты фильтра от блока 123 настройки фильтра нижних частот. Соответственно, блок 111 установки соседних пикселей подвергает значения соседних пикселей текущего блока из памяти 72 кадров, процессу фильтрации, используя коэффициенты фильтра, установленный блоком 123 настройки фильтра нижних частот, и подает значения соседних пикселей, подвергнутые процессу фильтрации, на блок 112 создания изображения предсказания.
Блок 112 создания изображения предсказания использует значения соседних пикселей, полученные от блока 111 установки соседних пикселей, чтобы выполнять внутреннее предсказание текущего блока во всех режимах внутреннего предсказания, и создает изображение предсказания. Созданные изображения предсказания подаются на блок 113 определения оптимального режима предсказания вместе с информацией режима внутреннего предсказания.
На блок 113 определения оптимального режима предсказания подается изображение для внутреннего предсказания, которое считано из буфера 62 перемонтажа экрана, изображение предсказания, созданное блоком 112 создания изображения предсказания, и информация режима внутреннего предсказания для них.
Блок 113 определения оптимального режима предсказания использует полученную информацию для вычисления значений функции стоимости для режимов внутреннего предсказания, посредством которых были созданы изображения предсказания, и определяет режим внутреннего предсказания, дающий наименьшее значение вычисленных значений функции стоимости, как режим который должен являться оптимальным режимом внутреннего предсказания.
В случае, когда переключатель 101 находится в выключенном состоянии, блок 113 определения оптимального режима внутреннего предсказания обеспечивает подачу информации оптимального режима внутреннего предсказания в буфер 121 режима предсказания.
В случае, когда переключатель 101 находится во включенном состоянии, блок 113 определения оптимального режима внутреннего предсказания обеспечивает подачу изображения предсказания оптимального режима внутреннего предсказания и соответствующего значения функции стоимости в блок 77 выбора изображения предсказания.
Кроме того, в случае, когда блоком 77 выбора изображения предсказания выбрано изображение предсказания, созданное в оптимальном режиме внутреннего предсказания, блок 113 определения оптимального режима внутреннего предсказания обеспечивает подачу информации, указывающей оптимальный режим внутреннего предсказания, на блок 66 кодирования без потерь.
Буфер 121 режима предсказания хранит информацию режима внутреннего предсказания, полученную от блока 113 определения оптимального режима предсказания.
На блок 122 вычисления оптимального фильтра подается изображение для внутреннего предсказания, считанное из буфера 62 перемонтажа экрана, и значения соседних пикселей текущего блока из памяти 72 кадров. Блок 122 вычисления оптимального фильтра считывает режим внутреннего предсказания для каждого блока, содержащегося в текущем срезе, из буфера 121 режима предсказания. Блок 122 вычисления оптимального фильтра затем использует эту информацию для вычисления оптимальных коэффициентов фильтра для режимов предсказания текущего среза, как описано выше со ссылкой на фиг. 15, и обеспечивает подачу коэффициентов фильтра на блок 123 настройки низкочастотного фильтра.
Блок 123 настройки низкочастотного фильтра устанавливает, из числа коэффициентов фильтра, которые были вычислены для текущего среза, коэффициент фильтра для текущего блока, включает терминал переключателя 101 и обеспечивает подачу установленного коэффициента фильтра на блок 111 установки соседних пикселей. Кроме того, блок 123 настройки фильтра нижних частот обеспечивает подачу коэффициента фильтра для текущего среза на блок 66 кодирования без потерь.
Другое описание процесса внутреннего предсказания
Далее, процесс внутреннего предсказания, который выполняют блок 74 внутреннего предсказания и блок 75 переключения фильтра интерполяции соседних пикселей, будет описан со ссылкой на блок-схему последовательности выполнения операций, показанную на фиг. 21. Заметим, что этот процесс внутреннего предсказания является другим примером процесса внутреннего предсказания этапа S31, показанного на фиг. 17.
Сначала переключатель 101 находится в выключенном состоянии. На блок 111 установки соседних пикселей из памяти 72 кадров подаются значения соседних пикселей всех текущих блоков текущего среза, которые должны быть подвергнуты внутреннему предсказанию. Блок 111 установки соседних пикселей выполняет процесс фильтрации значений соседних пикселей текущего блока из памяти 72 кадров, используя коэффициенты фильтра только для режима внутреннего предсказания 8 х 8 пикселей, определенного в H.264/AVC, и подает их на блок 112 создания изображения предсказания. То есть, в случае других режимов предсказания значения соседних пикселей текущего блока из памяти 72 кадров подаются на блок 112 создания изображения предсказания такими, как есть.
На этапе S101 блок 112 создания изображения предсказания выполняет процесс внутреннего предсказания на всех блоках, содержащихся в текущем срезе. То есть, блок 112 создания изображения предсказания использует значения соседних пикселей, полученные от блока 111 установки соседних пикселей, чтобы выполнить внутреннее предсказание текущего блока в каждом режиме внутреннего предсказания, и создает изображения предсказания.
На блок 113 определения оптимального режима предсказания подается изображение, которое должно быть подвергнуто внутреннему предсказанию, считанное из буфера 62 перемонтажа экрана, изображения предсказания, созданные блоком 112 создания изображения предсказания, и информация режима внутреннего предсказания для них.
На этапе S102 блок 113 определения оптимального режима предсказания использует поданную информацию для вычисления значений функции стоимости согласно выражениям (73) или (74), описанным выше, для всех режимов внутреннего предсказания, в отношении которых было создано изображение предсказания.
На этапе S103 блок 113 определения оптимального режима предсказания определяет режим внутреннего предсказания, для которого значение функции стоимости согласно выражению (73) или выражению (74) является наименьшим, в качестве оптимального режима внутреннего предсказания и обеспечивает подачу информации определенного режима внутреннего состояния в буфер 121 режима предсказания.
На блок 122 вычисления оптимального фильтра подается изображение, которое должно быть подвергнуто внутреннему предсказанию, считанное из буфера 62 перемонтажа экрана, и значения соседних пикселей текущего блока из памяти 72 кадров. Блок 122 вычисления оптимального фильтра считывает режим внутреннего предсказания для каждого блока, содержащегося в текущем срезе, из буфера 121 режима предсказания.
На этапе S104 блок 122 вычисления оптимального фильтра использует эту информацию для вычисления коэффициента фильтра, который минимизирует остаток общего текущего среза в качестве коэффициента оптимального фильтра для каждого из режимов внутреннего предсказания текущего среза. Коэффициенты фильтра, вычисленные, как описано выше со ссылкой на фиг. 15, подаются на блок 123 настройки низкочастотного фильтра.
Блок 123 настройки низкочастотного фильтра устанавливает, из числа коэффициентов фильтра, вычисленных для текущего среза, коэффициент фильтра, соответствующий текущему блоку, включает терминал переключателя 101 и обеспечивает подачу установленного коэффициента фильтра на блок 111 установки соседних пикселей.
На этапе 105 блок 111 установки соседних пикселей использует коэффициент фильтра, установленный блоком 123 настройки низкочастотного фильтра, для выполнения процесса фильтрации значений соседних пикселей текущего блока, полученных из памяти 72 кадров.
Значения соседних пикселей, подвергнутые процессу фильтрации, подаются на блок 112 создания изображения предсказания. На этапе S106 блок 112 создания изображения предсказания снова выполняет процесс внутреннего предсказания на всех блоках, содержащихся в текущем срезе, используя значения соседних пикселей, подвергнутые процессу фильтрации, создавая изображение предсказания. Созданное изображение предсказания подается на блок 113 определения оптимального режима предсказания вместе с информацией о режиме внутреннего предсказания.
В случае, когда переключатель 101 находится во включенном состоянии, блок 113 определения оптимального режима внутреннего предсказания обеспечивает подачу изображения предсказания в оптимальном режиме внутреннего предсказания и соответствующего значения функции стоимости в блок 77 выбора изображения предсказания.
На этапе S22 на фиг. 16, описанном выше, блок 77 выбора изображения предсказания определяет оптимальный режим внутреннего предсказания или оптимальный режим межкадрового предсказания в качестве оптимального режима предсказания и обеспечивает подачу информации выбора изображения предсказания.
На этапе S107 блок 113 определения оптимального режима предсказания определяет, выбрано или не выбрано изображение предсказания, соответствующее оптимальному режиму внутреннего предсказания, в соответствии с информацией выбора изображения предсказания. В случае, когда на этапе S107 определено, что выбрано изображение предсказания, соответствующее оптимальному режиму внутреннего предсказания, процесс переходит к этапу S108.
На этапе S108 блок 113 определения оптимального режима предсказания обеспечивает подачу информации режима внутреннего предсказания на блок 66 кодирования без потерь. Заметим, что в случае, когда еще не были поданы коэффициенты фильтра, относящиеся к текущему срезу, коэффициент фильтра из блока 122 вычисления оптимального фильтра также подается на блок 66 кодирования без потерь.
В случае, когда на этапе S107 определено, что изображение предсказания, соответствующее оптимальному режиму внутреннего предсказания, не выбрано, процесс внутреннего предсказания прекращается.
Заметим, что дополнительно оптимизированный коэффициент фильтра может быть получен путем повторения описанных выше этапов S104-S106.
Кодированное сжатое изображение передается по заранее определенному тракту передачи и декодируется устройством декодирования изображения.
Пример конфигурации устройства декодирования изображения
На фиг. 22 представлена конфигурация варианта осуществления устройства декодирования изображения, служащего в качестве устройства обработки изображения, к которому применено настоящее изобретение.
Устройство 151 декодирования изображения содержит буфер 161 хранения, блок 162 декодирования без потерь, блок 163 обратного квантования, блок 164 обратного ортогонального преобразования, вычислительный блок 165, деблокирующий фильтр 166, a буфер 167 перемонтажа экрана, блок 168 цифро-аналогового (D/A) преобразования, память 169 кадров, переключатель 170, блок 171 внутреннего предсказания, блок 172 переключения фильтра интерполяции соседних пикселей, блок 173 предсказания/компенсации движения и переключатель 174.
Буфер 161 хранения хранит переданное сжатое изображение. Блок 162 декодирования без потерь декодирует информацию, поданную от буфера 161 хранения и кодированную блоком 66 кодирования без потерь, показанным на фиг. 1, используя формат, соответствующий формату кодирования блока 66 кодирования без потерь. Блок 163 обратного квантования подвергает изображение, декодированное блоком 162 декодирования без потерь, обратному квантованию, используя формат, соответствующий формату квантования блока 65 квантования, показанного на фиг. 1. Блок 164 обратного ортогонального преобразования подвергает выходной сигнал блока 163 обратного квантования обратному ортогональному преобразованию, используя формат, соответствующий формату ортогонального преобразования блока 65 ортогонального преобразования, показанного на фиг. 1.
Выходной сигнал, подвергнутый обратному ортогональному преобразованию, декодируется, складываясь с изображением предсказания, подаваемым от переключателя 174 вычислительным блоком 165. Деблокирующий фильтр 166 удаляет блочное отклонение из декодированного изображения и затем подает его в память 169 кадров для хранения, а также выводит его в буфер 167 перемонтажа экрана..
Буфер 167 перемонтажа экрана выполняет перемонтаж изображений. Конкретно, последовательность кадров, перемонтированных для последовательности кодирования буфером 62 перемонтажа экрана, показанным на фиг. 1, перемонтируется в первоначальную последовательность отображения. Блок 168 D/A-преобразования преобразует изображение, полученное от буфера 167 перемонтажа экрана, из цифровой формы в аналоговую и выводит непоказанное изображение на дисплей.
Переключатель 170 считывает изображение, которое должно быть подвергнуто процессу межкадровой обработки, и изображение, используемое для ссылки, из памяти 169 кадров, выводит их на блок 173 предсказания/компенсации движения, а также считывает изображение, которое должно использоваться для внутреннего предсказания, из памяти 169 кадров и подает на блок 171 внутреннего предсказания.
Информация, указывающая режим внутреннего предсказания, полученная путем декодирования информации заголовка, подается от блока 162 декодирования без потерь на блок 172 внутреннего предсказания. Блок 171 внутреннего предсказания создает изображение предсказания, выполняя процесс фильтрации и внутреннее предсказание для значений соседних пикселей, используя коэффициент фильтра, установленный блоком 172 переключения фильтра интерполяции соседних пикселей, основываясь на этой информации, и выводит созданное изображение предсказания на переключатель 174.
На блок 172 переключения фильтра интерполяции соседних пикселей подается, по меньшей мере, информация, указывающая режим внутреннего предсказания, полученная декодированием информации заголовка, или информация параметра квантования в соответствии с кодированием в устройстве 51 кодирования изображения, от блока 162 декодирования без потерь. Тем же самым путем, что и в блоке 75 переключения фильтра интерполяции соседних пикселей, показанном на фиг. 1, блок 172 переключения фильтра интерполяции соседних пикселей хранит коэффициенты фильтра, соответствующие, по меньшей мере, параметру квантования или режиму внутреннего предсказания, полученные обучением в устройстве 251 обучения, показанном на фиг. 28, которое будет описано позже.
Блок 172 переключения фильтра интерполяции соседних пикселей устанавливает коэффициент фильтра, соответствующий, по меньшей мере, параметру квантования или режиму внутреннего предсказания, полученный от блока 162 декодирования без потерь. Блок 172 переключения фильтра интерполяции соседних пикселей подает установленный коэффициент фильтра на блок 74 внутреннего предсказания.
Заметим, что с помощью блока 172 переключения фильтра интерполяции соседних пикселей сохраняются коэффициенты фильтра, полученные автономно до этого посредством обучения. Заметим, однако, что в случае, когда коэффициенты фильтра вычисляются неавтономно с помощью блока 75 переключения фильтра интерполяции соседних пикселей, показанного на фиг. 1, эти коэффициенты фильтра передаются в него, например, для каждого среза. В этом случае, блок 172 переключения фильтра интерполяции соседних пикселей использует коэффициенты фильтра, декодированные блоком 162 декодирования без потерь.
Информация, полученная посредством декодирования информации заголовка (информация режима предсказания, информация вектора движения и информация опорного кадра) подается от блока 162 декодирования без потерь на блок 173 предсказания/компенсации движения. В случае, когда информация, указывающая режим межкадрового предсказания, подана, блок 173 предсказания/компенсации движения подвергает изображение процессу предсказания и компенсации движения, основываясь на информации вектора движения и информации опорного кадра, чтобы создать изображение предсказания. Блок 173 предсказания/компенсации движения выводит изображение предсказания, созданное в режиме межкадрового предсказания, на переключатель 174.
Переключатель 174 выбирает изображение предсказания, созданное блоком 173 предсказания/компенсации движения или блоком 171 внутреннего предсказания, и подает его на вычислительный блок 165.
Заметим, что с помощью устройства 51 кодирования изображения, показанного на фиг. 1, процесс внутреннего предсказания выполняется в отношении всех режимов внутреннего предсказания для определения режима предсказания, основываясь на функции стоимости. С другой стороны, с помощью устройства 151 декодирования изображения процесс внутреннего предсказания выполняется, основываясь только на информации режима внутреннего предсказания, посланного ему кодированным.
Пример конфигурации блока внутреннего предсказания и блока переключения фильтра интерполяции соседних пикселей
На фиг. 23 представлена блок-схема примера подробной конфигурации блока внутреннего предсказания и блока переключения фильтра интерполяции соседних пикселей. Заметим, что функциональные блоки на фиг. 23 соответствуют функциональным блокам в случае автономной обработки с помощью устройства 51 кодирования изображения, показанного на фиг. 14.
В случае примера, показанного на фиг. 23, блок 171 внутреннего предсказания образуется блоком 181 создания изображения предсказания и блоком 182 установки соседних пикселей. Блок 172 переключения фильтра интерполяции соседних пикселей образуется буфером 191 режима предсказания, буфером 192 параметра квантования и блоком 193 настройки низкочастотного фильтра. Блок 193 настройки фильтра нижних частот имеет встроенную память 194 для коэффициентов фильтра.
На блок 181 создания изображения предсказания подается информация режима внутреннего предсказания от блока 162 декодирования без потерь и значения соседних пикселей, подвергнутых процессу фильтрации от блока 182 установки соседних пикселей. Блок 181 создания изображения предсказания использует значения соседних пикселей, подаваемые на него для выполнения внутреннего предсказания с помощью режима внутреннего предсказания от блока 162 декодирования без потерь, создает изображение предсказания и подает созданное изображение предсказания на переключатель 174.
На блок 182 установки соседних пикселей из памяти 169 кадров подаются значения соседних пикселей текущего блока, который должен быть подвергнут внутреннему предсказанию. В случае, показанном на фиг. 23, переключатель 170 отсутствует, но фактически значения соседних пикселей подаются на блок 182 установки соседних пикселей от памяти 169 кадров через переключатель 170.
Блок 182 установки соседних пикселей использует коэффициенты фильтра, установленные блоком 193 настройки низкочастотного фильтра, чтобы подвергнуть значения соседних пикселей текущего блока из памяти 169 кадров процессу фильтрации, и обеспечивает подачу значений соседних пикселей, подвергнутых процессу фильтрации, на блок 181 создания изображения предсказания.
Буфер 191 режима предсказания хранит информацию режима внутреннего предсказания, полученную от блока 162 декодирования без потерь. Буфер 192 параметра квантования хранит параметр квантования, полученный от блока 162 декодирования без потерь.
Блок 193 настройки низкочастотного фильтра считывает информацию режима внутреннего предсказания для текущего блока из буфера 191 режима предсказания и считывает параметр квантования, соответствующий текущему блоку, из буфера 192 параметра квантования. Блок 193 настройки низкочастотного фильтра устанавливает коэффициенты фильтра, соответствующие этой информации, из числа коэффициентов фильтра, хранящихся во встроенной памяти 194 коэффициентов фильтра, и подает установленный коэффициент фильтра в блок 182 установки соседних пикселей.
Память 194 коэффициентов фильтра хранит коэффициенты фильтра, соответствующие параметру квантования и режиму внутреннего предсказания, полученным посредством обучения в устройстве 251 обучения, показанном на фиг. 28, которое должно быть описано позже, тем же самым способом, что и память 94 коэффициентов фильтра, показанная на фиг. 14.
Коэффициенты фильтра вычисляются и хранятся, как описано выше, например, со ссылкой на фиг. 14, для каждого среза. Заметим, что с помощью памяти 194 коэффициентов фильтра коэффициенты фильтра также хранятся как n-битные значения (где n-целое число) в соответствии с длиной регистра процессора.
Описание процесса декодирования устройства декодирования изображения
Далее процесс декодирования, который выполняет устройство 151 декодирования изображения, будет описан со ссылкой на блок-схему последовательности выполнения операций, показанную на фиг. 24.
На этапе S131 буфер 161 хранения сохраняет переданное изображение. На этапе S132 блок 162 декодирования без потерь декодирует сжатое изображение, поданное из буфера 161 хранения. Конкретно, декодируются картинка I, картинка P и картинка B, кодированные блоком 66 кодирования без потерь, показанным на фиг. 1.
В это время также декодируются информация вектора движения, информация опорного кадра, информация режима предсказания (информация, указывающая режим внутреннего предсказания или режим межкадрового предсказания), информация параметра квантования, информация флага и так далее.
Конкретно, в случае, когда информация режима предсказания является информацией режима внутреннего предсказания, информация режима предсказания подается на блок 171 внутреннего предсказания и блок 172 переключения фильтра интерполяции соседних пикселей. Кроме того, в случае, когда была декодирована информация параметра квантования, она также подается на блок 172 переключения фильтра интерполяции соседних пикселей. В случае, когда информация режима предсказания является информацией режима межкадрового предсказания, информация вектора движения и информация опорного кадра, соответствующая информации режима предсказания, подаются на блок 173 предсказания/компенсации движения.
На этапе S133 блок 163 обратного квантования подвергает обратному квантованию коэффициент преобразования, декодированный блоком 162 декодирования без потерь, используя свойство, соответствующее свойству блока 65 квантования, показанному на фиг. 1. На этапе S134 блок 164 обратного ортогонального преобразования подвергает коэффициент преобразования, подвергнутый обратному квантованию блоком 163 обратного квантования, обратному ортогональному преобразованию, используя свойство, соответствующее свойству блока 64 ортогонального преобразования, показанного на фиг. 1. Это означает, что разностная информация, соответствующая вводу блока 64 ортогонального преобразования, показанного на фиг. 1, (выходу вычислительного блока 63) декодирована.
На этапе S135 вычислительный блок 165 добавляет изображение предсказания, выбранное в процессе описанного далее этапа S141, и вводит его через переключатель 174 в разностную информацию. Таким образом, первоначальное изображение декодируется. На этапе S136 деблокирующий блок 166 подвергает фильтрации изображение, полученное с выхода вычислительного блока 165. Таким образом, искажение блока удаляется. На этапе S137 память 169 кадров сохраняет изображение, подвергнутое фильтрации.
На этапе S138 блок 171 внутреннего предсказания и блок 173 предсказания/компенсации движения выполняют соответствующий процесс предсказания изображения в ответ на информацию режима предсказания, поданную от блока 162 декодирования без потерь.
Конкретно, в случае, когда информация режима внутреннего предсказания была подана от блока 162 декодирования без потерь, блок 171 внутреннего предсказания выполняет процесс внутреннего предсказания в режиме внутреннего предсказания. Теперь блок 171 внутреннего предсказания выполняет процесс фильтрации и процесс внутреннего предсказания соседних пикселей, используя коэффициенты фильтра, установленными блоком 172 переключения фильтра интерполяции соседних пикселей.
Подробности процесса предсказания на этапе S138 будут описаны позднее со ссылкой на фиг. 25, но, в соответствии с этим процессом, изображение предсказания, созданное блоком 171 внутреннего предсказания, или изображение предсказания, созданное блоком 173 предсказания/компенсации движения подается на переключатель 174.
На этапе S139 переключатель 174 выбирает изображение предсказания. Конкретно, подается изображение предсказания, созданное блоком 171 внутреннего предсказания, или изображение предсказания, созданное блоком 173 предсказания/компенсации движения. Соответственно, предоставленное изображение предсказания выбирается, подается на вычислительный блок 165 и на этапе S134, как описано выше, добавляется к выходу блока 164 обратного ортогонального преобразования.
На этапе S140 буфер 167 перемонтажа экрана выполняет перемонтаж. Конкретно, последовательность кадров, перемонтированных для кодирования буфером 62 перемонтажа экрана устройства 51 кодирования изображения, перемонтируется в первоначальную последовательность отображения.
На этапе S141 блок цифро-аналогового (/АD) преобразования преобразует изображение из буфера 167 перемонтажа экрана из цифровой формы в аналоговую. Это изображение выводится на дисплей, который не показан, и изображение отображается.
Описание процесса предсказания
Далее, со ссылкой на блок-схему последовательности выполнения операций, показанную на фиг. 25, будет описан процесс предсказания на этапе S138, показанном на фиг. 24.
На этапе S171 блок 181 создания изображения предсказания определяет был ли подвергнут текущий блок внутреннему предсказанию. После подачи информации режима внутреннего предсказания от блока 162 декодирования без потерь на блок 181 создания изображения предсказания, на этапе S171 блок 181 создания изображения предсказания определяет, что текущий блок бул подвергнут внутреннему предсказанию, и процесс переходит к этапу S172.
На этапе S172 блок 181 создания изображения предсказания принимает и получает информацию режима внутреннего предсказания от блока 162 кодирования без потерь. Здесь, информация режима внутреннего предсказания также подается в буфер 191 режима предсказания и сохраняется.
Кроме того, после того, как информация параметра квантования от блока 162 декодирования без потерь подается в буфер 192 параметра квантования, на этапе S173 буфер 192 параметра квантования получает и сохраняет параметр квантования.
Блок 193 настройки фильтра нижних частот считывает информацию режима внутреннего предсказания для текущего блока из буфера 191 режима предсказания и считывает параметр квантования, соответствующий текущему блоку, из буфера 192 параметра квантования. На этапе S174 блок 193 настройки низкочастотного фильтра устанавливает из числа коэффициентов фильтра для каждого среза, которые хранятся в памяти 194 коэффициентов фильтра, тот коэффициент фильтра для соседних пикселей, который соответствует этой информации. Установленный коэффициент фильтра подается на блок 182 установки соседних пикселей.
На этапе S175 блок 182 установки соседних пикселей использует коэффициент фильтра, установленный блоком 193 настройки низкочастотного фильтра, чтобы подвергнуть процессу фильтрации значения соседних пикселей текущего блока из памяти 169 кадров, и подает значения соседних пикселей, подвергнутые процессу фильтрации, на блок 181 создания изображения предсказания.
Блок 181 создания изображения предсказания использует значения соседних пикселей, полученные от блока 182 установки соседних пикселей, чтобы выполнять внутреннее предсказание в режиме внутреннего предсказания, полученном на этапе S172? и создает изображение предсказания. Созданное изображение предсказания подается на переключатель 174.
С другой стороны, в случае, когда на этапе S171 делается определение, что кодирование не выполнялось, процесс переходит к этапу S177.
В случае, когда изображение, которое должно быть обработано, является изображением, которое должно быть подвергнуто межкадровой обработке, информация режима межкадрового предсказания, информация опорного кадра и информация вектора движения подаются от блока 162 декодирования без потерь на блок 173 предсказания/компенсации движения. На этапе S177 блок 173 предсказания/компенсации движения получает информацию межкадрового предсказания, информацию опорного кадра и информацию вектора движения и т . д. от блока 162 кодирования без потерь.
На этапе S178 блок 173 предсказания/компенсации движения затем выполняет межкадровое предсказание движения. Конкретно, в случае, когда изображение, которое должно быть обработано, является изображением, которое должно быть подвергнуто процессу межкадрового предсказания, необходимое изображение считывается из памяти 169 кадров и подается на блок 173 предсказания/компенсации движения через переключатель 170. На этапе S177 блок 173 предсказания/компенсации движения выполняет motion предсказание движения в режиме межкадрового предсказания, чтобы создать изображение предсказания, основываясь на векторе движения, полученном на этапе S176. Созданное изображение предсказания выводится на переключатель 174.
Другой пример конфигурации блока внутреннего предсказания и блока переключения фильтра интерполяции соседних пикселей
На фиг. 26 представлена блок-схема примера подробной конфигурации блока внутреннего предсказания и блока переключения фильтра интерполяции соседних пикселей. Заметим, что функциональные блоки на фиг. 26 соответствуют функциональным блокам в случае неавтономного процесса с устройством 51 кодирования изображения, показанным на фиг. 20.
В случае примера, показанного на фиг. 26, блок 171 внутреннего предсказания образуется блоком 181 создания изображения предсказания и блоком 182 установки соседних пикселей, показанных на фиг. 23. Блок 172 переключения фильтра интерполяции соседних пикселей образуется буфером 191 режима предсказания, показанным на фиг. 23, блоком 201 фильтра интерполяции и блоком 202 настройки низкочастотного фильтра. Заметим, что в примере, показанном на фиг. 26, части, соответствующие случаю, показанному на фиг. 23, помечаются соответствующими ссылочными позициями и, в основном, выполняют тот же самый процесс, поэтому их описание будет опущено.
В случае, показанном на фиг. 26, коэффициенты, вычисленные в отношении текущего среза, кодируются и посылаются от устройства 51 кодирования изображения. Соответственно, блок 162 декодирования без потерь декодирует их вместе с другой информацией и подает в буфер 201 фильтра интерполяции блока 172 переключения фильтра интерполяции соседних пикселей.
Буфер 201 фильтра интерполяции получает коэффициент фильтра для текущего среза от блока 162 декодирования без потерь и запоминает его. Блок 202 настройки оптимального фильтра считывает информацию режима внутреннего предсказания для текущего блока из буфера 191 режима предсказания.
Блок 202 настройки фильтра нижних частот считывает коэффициент фильтра, соответствующий режиму внутреннего предсказания, который был считан, из числа коэффициентов фильтра текущего среза, хранящихся в буфере 201 фильтра интерполяции, и устанавливает его в качестве коэффициента фильтра для текущего блока. Установленный коэффициент фильтра подается на блок 182 установки соседних пикселей.
Другое описание процесса предсказания
Далее, процесс предсказания в случае блока 171 внутреннего предсказания и блока 172 переключения фильтра интерполяции соседних пикселей, будет описан со ссылкой на блок-схему последовательности выполнения операций, показанную на фиг. 27. Заметим, что этот процесс внутреннего предсказания является другим примером процесса внутреннего предсказания этапа S138, показанного на фиг. 24. Кроме того, процесс этапов S181, S182 и S185-S188, показанный на фиг. 27, выполняет, в основном, тот же самый процесс, что и на этапах S171, S172 и S175-S178, показанных на фиг. 25, поэтому его подробное описание будет опущено.
На этапе S181 блок 181 создания изображения предсказания определяет является ли текущий блок внутренне кодированным. После подачи информации режима внутреннего предсказания от блока 162 декодирования без потерь на блок 181 создания изображения предсказания, на этапе S181 блок 181 создания изображения предсказания определяет, что текущий блок является внутренне кодированным и процесс переходит к этапу S182.
На этапе S182 блок 181 создания изображения предсказания принимает и получает информацию режима внутреннего предсказания от блока 162 декодирования без потерь. В это время эта информация режима внутреннего предсказания также подается в буфер 191 режима предсказания и сохраняется.
Кроме того, после того, как информация о коэффициентах фильтра для текущего среза, подаваемая от блока 162 декодирования без потерь в буфер 201 фильтра интерполяции, на этапе S183 буфер 201 фильтра интерполяции получает коэффициенты фильтра для текущего среза и сохраняет их. Заметим, что коэффициенты фильтра обеспечиваются для каждого среза.
Блок 202 настройки низкочастотного фильтра считывает информацию режима внутреннего предсказания для текущего блока из буфера 191 режима предсказания. На этапе S184 блок 202 настройки низкочастотного фильтра устанавливает из числа коэффициентов фильтра для текущего среза, хранящихся в буфере 201 фильтра интерполяции, коэффициент фильтра для соседних пикселей, соответствующий режиму внутреннего предсказания текущего блока. Установленный коэффициент фильтра подается на блок 182 установки соседних пикселей.
На этапе S185 блок 182 установки соседних пикселей использует коэффициент фильтра, установленный блоком 202 настройки низкочастотного фильтра, чтобы подвергнуть значения соседних пикселей текущего блока из блока 169 памяти кадров процессу фильтрации, и подает соседние пиксельные значения, подвергнутые процессу фильтрации, на блок 181 создания изображения предсказания.
На этапе S186 блок 181 создания изображения предсказания использует значения соседних пикселей, предоставленные от блока 182 установки пиксельных пикселей, чтобы выполнить внутреннее предсказание с помощью режима внутреннего предсказания, полученного на этапе S172, и создает изображение предсказания. Созданное изображение предсказания подается на переключатель 174.
С другой стороны, когда на этапе S181 определяется, что оно не является внутренне кодированным, процесс переходит к этапу S187.
На этапе S187 блок 173 предсказания/компенсации движения получает информацию режима межкадрового предсказания, информацию опорного кадра, информацию вектора движения и т.д. от блока 162 декодирования без потерь.
На этапе S188 блок 173 предсказания/компенсации движения выполняет межкадровое предсказание. Благодаря этому процессу, созданное изображение предсказания выводится на переключателю 174.
Таким образом, с помощью устройства 51 кодирования изображения, показанного на фиг. 1, и устройства 151 декодирования изображения, показанного на фиг. 22, процесс фильтрации выполняется на соседних пикселях, используемых для внутреннего предсказания, используя коэффициенты фильтра, адаптивно установленные для изображения перед внутренней обработкой. Например, коэффициенты фильтра устанавливаются в соответствии с режимом внутреннего предсказания или параметром квантования.
Соответственно, может быть выполнено шумоподавление, соответствующее изображениям и битовым скоростям передачи. В результате, эффективность предсказания может быть улучшена.
На фиг. 28 представлена конфигурация одного варианта конструкции устройства обучения, к которому было применено настоящее изобретение. В примере, показанном на фиг. 28, устройство 251 обучения выполняет процесс обучения для коэффициентов фильтра, используя учебные сигналы изображения.
Заметим, что учебные сигналы изображения являются тестовыми изображениями для получения коэффициентов фильтра и может использоваться стандартная последовательность, используемая для стандартизации кодирования со сжатием изображения, доступная, например, на www.vqeg.org. Альтернативно, может также использоваться входное изображение, соответствующее каждому применению. Например, когда входными сигналами являются сигналы фотокамеры, обучение может быть выполнено, используя отображенное видеосигналы, отображаемые с помощью датчика на CMOS или CCD.
Устройство 251 обучения, показанное на фиг. 28, подобно устройству 51 кодирования изображения, показанному на фиг. 1, имеет в своем составе A/D-преобразователь 61, буфер 62 перемонтажа экрана, вычислительный блок 63, блок 64 ортогонального преобразования, блок 65 квантования, блок 66 кодирования без потерь, буфер 67 хранения данных, блок 68 обратного квантования, блок 69 обратного ортогонального преобразования, вычислительный блок 70, деблокирующий фильтр 71, память 72 кадров, переключатель 73, блок 74 внутреннего предсказания, блок 76 предсказания/компенсации движения, блок 77 выбора изображения предсказания и блок 78 управления скоростью.
Кроме того, устройство 251 обучения отличается от устройства 51 кодирования изображения, показанного на фиг. 1, в отношении использования учебных сигналов изображения в качестве используемых сигналов и содержит блок 261 вычисления для фильтра интерполяции соседних пикселей вместо блока 75 переключения фильтра интеропляции соседних пикселей.
Конкретно, при наличии устройства 251 обучения, только блоки, содержащиеся в изображениях I, используются для выполнения обучения. Альтернативно, при наличии устройства 251 обучения, чтобы выполнить обучение, используются только блоки в пределах внутренних макроблоков, содержащихся в изображениях B и изображениях P. Первые нуждаются в меньшем объеме вычислений для обучения, чем вторые. Кроме того, для первых, коэффициенты, полученные для блоков, полученных как содержащиеся в изображениях I, изображения могут применяться только к блокам, содержащимся в изображениях I, или могут применяться к внутренним макроблокам, содержащимся в изображениях B и изображениях P.
То есть, при наличии устройства 251 обучения, такое обучение выполняется только посредством внутреннего предсказания с помощью блока 74 внутреннего предсказания. Соответственно, мы будем говорить, что блок 76 предсказания/компенсации движения фактически не функционирует.
Дополнительно, вычислительный блок 261 для фильтра интерполяции соседних пикселей, показанный на фиг. 29, имеет общие с блоком 75 переключения фильтра интерполяции соседних пикселей, показанным на фиг. 20, буфер 121 режима предсказания, блок 122 вычисления оптимального фильтра и блок 123 настройки фильтра нижних частот.
С другой стороны, блок 261 вычислений для фильтра интерполяции соседних пикселей, показанный на фиг. 29, отличается от блока 75 переключения фильтра интерполяции соседних пикселей, показанного на фиг. 20, в отношении того, что добавлен блок 271 хранения коэффициентов фильтра и параметры квантования от блока 78 управления скоростью подаются на блок 122 вычисления оптимального фильтра.
Конкретно, в примере, показанном на фиг. 29, также, как в случае примера, показанного на фиг. 20, между блоком 74 внутреннего предсказания и блоком 75 переключения фильтра интерполяции соседних пикселей обеспечивается переключатель 101 и блок 74 внутреннего предсказания выполняет внутреннее предсказание дважды в соответствии с включенным и выключенным состояниями переключателя 101.
То есть, при наличии блока 74 внутреннего предсказания и при выключенном состоянии переключателя 101, выполняется внутреннее предсказание, определенное в H.264/AVC, и коэффициенты фильтра, оптимальные для режима внутреннего предсказания и параметр квантования вычисляются для каждого среза. Вычисленные коэффициенты фильтра для каждого среза хранятся в блоке 271 хранения коэффициентов фильтра. Затем, во включенном состоянии переключателя 101, внутреннее предсказание выполняется при состоянии фильтра, установленном блоком 75 переключения фильтра интерполяции соседних пикселей, когда коэффициент фильтра выбирается из числа вычисленных коэффициентов фильтра для каждого среза.
Коэффициенты фильтра, хранящиеся в этом блоке 271 хранения коэффициентов фильтра, хранятся в памяти 94 коэффициентов фильтра (фиг. 14) устройства 51 кодирования изображения, показанного на фиг. 1, и в памяти 194 (фиг. 23) коэффициентов фильтра устройства 151 декодирования изображения, показанного на фиг. 22, попадая туда через среду хранения или сеть и т.п.
Описание процесса внутреннего предсказания в процессе обучения
Далее процесс внутреннего предсказания, который устройство 251 обучения, показанное на фиг. 28, выполняет в качестве одного из процессов в процессе обучения, будет описан со ссылкой на блок-схему, показанную на фиг. 30. Заметим, что устройство 251 обучения выполняет при обучении, в основном, тот же самый процесс, что и процесс кодирования, показанный на фиг. 17, за исключением того, что процесс предсказания на этапе S21 был заменен процессом внутреннего предсказания на этапе S30.
Кроме того, этапы S201-S203 и S206-S209, показанные на фиг. 30, в основном, выполняют те же самые процессы, что и этапы S101-S103 и S105-S108, поэтому их избыточное описание будет опущено. То есть, на этапе S204 на фиг. 30 блок 122 вычислений для оптимального фильтра вычисляет коэффициент фильтра для каждого режима внутреннего предсказания и соответствующий параметр квантования текущего среза, который минимизирует остаток всего среза пластины, в качестве оптимальных коэффициентов фильтра. Вычисленные коэффициенты фильтра подаются в блок 271 хранения коэффициентов фильтра.
На этапе S205 блок 271 хранения коэффициентов фильтра сохраняет коэффициенты фильтра, поданные от блока 122 вычислений для оптимального фильтра.
Блок 123 настройки фильтра нижних частот устанавливает из числа коэффициентов фильтра текущего среза, хранящихся в блоке 271 хранения коэффициентов фильтра, такой коэффициент фильтра, который соответствует текущему блоку, включает терминал 101 переключателя и подает установленный коэффициент фильтра в блок 111 установки соседних пикселей.
Соответственно, на этапе S206 установленный коэффициент фильтра используется для выполнения процесса фильтрации для значений соседних пикселей текущего блока из памяти 72 кадров.
Конечно, таким же образом, как в примере, показанном на фиг. 21, повторение процессов этапов S204-S207, описанных выше, позволяет получить дополнительно оптимизированные коэффициенты фильтра.
Как описано выше, при наличии устройства 251 обучения, выполняются те же самые процессы, что и при реально используемом процессе кодирования, используя учебные сигналы изображения, и коэффициенты фильтра, вычисленные таким образом, сохраняются в блоке 271 хранения коэффициентов фильтра. Соответственно, могут быть получены оптимальные коэффициенты фильтра.
Коэффициенты фильтра, хранящиеся в этом блоке 271 хранения коэффициентов фильтра, хранятся в памяти 94 коэффициентов фильтра (фиг. 14) устройства 51 кодирования изображения, показанного на фиг. 1, и в памяти 194 (фиг. 23) коэффициентов фильтра устройства 151 декодирования изображения, показанного на фиг. 22, попадая туда через среду хранения или сеть и т.п.
Кроме того, при наличии устройства 51 кодирования изображения, как описано выше, коэффициенты, полученные для блоков, содержащихся в изображениях I (или во внутренних макроблоках, содержащихся в изображениях В и изображениях Р), могут применяться только к блокам, содержащимся в изображениях I. Альтернативно, они могут применяться к внутренним макроблокам, содержащимся в изображениях В и изображениях Р, а не только к блокам, содержащимся в изображениях I.
Соответственно, с помощью устройства 51 кодирования изображения, показанного на фиг. 1, и устройства 151 декодирования изображения, показанного на фиг. 22, может быть осуществлена высокая эффективность кодирования.
Заметим, что с помощью описанных выше блока 64 ортогонального преобразования и блока 69 обратного ортогонального преобразования устройства 51 кодирования изображения, показанного на фиг. 1, и блока 164 обратного ортогонального преобразования устройства 151 декодирования изображения, показанного на фиг. 22, выполняется ортогональное преобразование/обратное ортогональное преобразование, определенное в H.264/AVC. Альтернативно, может быть выполнено устройство, в котором блок 64 ортогонального преобразования и блок 69 обратного ортогонального преобразования устройства 51 кодирования изображения, показанный на фиг. 1, и блок 164 обратного ортогонального преобразования устройства 151 декодирования изображения, показанный на фиг. 22, выполняют ортогональное преобразование/обратное ортогональное преобразование, предложенное в непатентной литературе 1.
Соответственно, эффективность кодирования в формате, предложенном в непатентной литературе 1, может быть дополнительно улучшена.
Заметим, что хотя в приведенном выше описании был описан пример выполнения внутреннего предсказания, настоящее изобретение может также быть применено к внутреннему предсказанию при предсказании второго порядка, описанном в непатентной литературе 2.
2. Второй вариант осуществления
Пример другой конфигурации устройства кодирования изображения
На фиг. 31 представлена конфигурация другого варианта осуществления устройства кодирования изображения, служащего в качестве устройства обработки изображения, к которому применено настоящее изобретение.
Устройство 351 кодирования изображения подобно устройству 51 кодирования изображения, показанному на фиг. 1, содержит блок 61 аналогово-цифрового (A/D) преобразования, буфер 62 перемонтажа экрана, вычислительный блок 63, блок 64 ортогонального преобразования, блок 65 квантования, блок 66 кодирования без потерь, буфер 67 хранения, блок 68 обратного квантования, блок 69 обратного ортогонального преобразования, вычислительный блок 70, деблокирующий фильтр 71, память 72 кадров, переключатель 73, блок 74 внутреннего предсказания, блок 76 предсказания/компенсации движения, блок 77 выбора изображения предсказания и блок 78 управления скоростью.
Кроме того, устройство 351 кодирования изображения отличается от устройства 51 кодирования изображения, показанного на фиг. 1, тем, что отсутствует блок 75 переключения фильтра интерполяции соседних пикселей и добавлены блок 361 предсказания второго порядка и блок 362 переключения фильтра интерполяции соседних пикселей.
То есть, со ссылкой на пример, показанный на фиг. 31, блок 74 внутреннего предсказания выполняет внутреннее предсказание согласно H.264/AVC.
С другой стороны, блок 76 предсказания/компенсации движения обнаруживает векторы движения для всех возможных режимов внутреннего предсказания, основываясь на изображении для межкадровой обработки и опорном изображении, подвергает опорное изображение процессу компенсации, основываясь на векторах движения, и создает изображение предсказания.
Блок 76 предсказания/компенсации движения обеспечивает подачу на блок 361 предсказания второго порядка обнаруженной информации вектора движения, информации о движении для межкадровой обработки (адрес и т.д.) и остатка первого порядка, который является разностью между изображением для межкадрового предсказания и созданным изображением предсказанием.
Блок 76 предсказания/компенсации движения определяет оптимальный режим внутреннего предсказания в предсказании второго порядка, сравнивая остатки второго порядка, полученные от блока 361 предсказания второго порядка. Кроме того, блок 76 предсказания/компенсации движения определяет, кодировать ли остаток второго порядка или кодировать остаток первого порядка, сравнивая остаток второго порядка с остатком первого порядка. Заметим, что этот процесс выполняется во всех возможных режимах межкадрового предсказания.
Блок 76 предсказания/компенсации движения вычисляет значение функции стоимости для всех возможных режимов межкадрового предсказания. Теперь, остаток, определенный для каждого режима межкадрового предсказания из остатка первого порядка и из остатка второго порядка, используется для вычисления значения функции стоимости. Блок 76 предсказания/компенсации движения определяет режим предсказания, который дает наименьшее минимальное значение вычисленных значений функции стоимости, который должен быть оптимальным режимом межкадрового предсказания.
Блок 76 предсказания/компенсации движения обеспечивает подачу изображения предсказания, созданного в оптимальном режиме межкадрового предсказания, (или разность между изображением для межкадрового остатка и остатком второго порядка) и его значение функции стоимости подается на блок 77 выбора изображения предсказания. В случае, когда было выбрано изображение предсказания, созданное блоком 77 выбора изображения предсказания в оптимальном режиме межкадрового предсказания, блок 76 предсказания/компенсации движения выводит на блок 66 кодирования без потерь информацию, указывающую оптимальный режим межкадрового предсказания.
При этом информация вектора движения, информация опорного кадра, флаг предсказания второго порядка, указывающий, что должно быть выполнено предсказание второго порядка, информация режима внутреннего предсказания при предсказании второго порядка и т.д., также выводятся на блок 66 кодирования без потерь. Блок 66 кодирования без потерь также подвергает информацию, полученную от блока 76 предсказания/компенсации движения, процессу кодирования без потерь, такому как кодирование переменной длины, арифметическое кодирование и т.д., и вставляет ее в часть заголовка сжатого изображения.
Основываясь на информации вектора движения, полученной от блока предсказания/компенсации движения, и информации изображения, которое должно быть подвергнуто межкадровой обработке, блок 361 предсказания второго порядка считывает из памяти 72 кадров текущие соседние пиксели, соседствующие с текущим блоком, который должен быть подвергнут межкадровой обработке. Кроме того, блок 361 предсказания второго порядка считывает из памяти 72 кадров опорные соседние пиксели, соседствующие с опорным блоком, коррелированным с текущим блоком посредством информации вектора движения.
Блок 361 предсказания второго порядка выполняет процесс предсказания второго порядка. Процесс предсказания второго порядка является процессом, при котором выполняется внутреннее предсказание между остатком первого порядка и разностью между текущими соседними пикселями и опорными соседними пикселями, создавая, таким образом, информацию разности второго порядка (остаток второго порядка).
Теперь, процесс предсказания второго порядка будет описан со ссылкой на фиг. 32.
В примере, представленном на фиг. 32, текущий кадр и опорный кадр видны с текущим блоком А, показанным в текущем кадре.
В случае, когда вектор движения mv(mv_x, mv_y) получен в опорном кадре и текущем кадре относительно текущего блока А, вычисляется разностная информация (остаток) между текущим блоком А и блоком, коррелированным с текущим блоком A посредством вектора движения mv.
В системе предсказания второго порядка вычисляется не только разностная информация, относящаяся к текущему блоку A, но также и разностная информация между группой R соседних пикселей, соседствующих с текущим блоком А и группой R1 соседних пикселей, коррелированных с группой R соседних пикселей с помощью вектора движения mv.
То есть, координаты группы R соседних пикселей получаются из верхних левых координат (x, y) текущего блока А. Кроме того, координаты группы R1 соседних пикселей получаются из верхних левых координат (x + mv_x, y + mv_y) блока, коррелированного с текущим блоком А с помощью вектора движения mv. Разностная информация групп соседних пикселей вычисляется из этих значений координат.
При использовании системы предсказания второго порядка внутреннее предсказание, соответствующее формату H.264/AVC, выполняется между разностной информацией, связанной с текущим блоком eh, вычисленной таким образом, и разностной информацией, связанной с опорными пикселями, создавая, таким образом разностную информацию второго порядка. Созданная разностная информация второго порядка подвергается ортогональному преобразованию и квантованию, кодируется вместе со сжатым изображением и посылается на сторону декодирования.
Перед этим предсказанием второго порядка блок 361 предсказания второго порядка использует коэффициенты фильтра, установленные блоком 362 переключения фильтра интерполяции соседних пикселей, чтобы выполнить процесс фильтрации для разности между текущими соседними пикселями, использованными для внутреннего предсказания, и опорными соседними пикселями. Блок 361 предсказания второго порядка затем использует отфильтрованную разность между текущими соседними пикселями и опорными соседними пикселями, подвергнутыми процессу фильтрации, чтобы выполнить процесс предсказания второго порядка, и выводит на блок 76 предсказания/компенсации движения разностную информацию второго порядка (остаток второго порядка).
То есть, блок 361 предсказания второго порядка выполняется так, что он содержит блок 74 внутреннего предсказания, показанный на фиг. 14, и т.д.
Блок 362 переключения фильтра интерполяции соседних пикселей выполнен, в основном, таким же способом, как и блок переключения фильтра интерполяции соседних пикселей на фиг. 1, и выполняет тот же самый процесс. То есть, блок 362 переключения фильтра интерполяции соседних пикселей устанавливает коэффициенты фильтра в соответствии с информацией режима внутреннего предсказания, полученной от блока 361 предсказания второго порядка, и параметрами квантования, полученными от блока 78 управления скоростью, и подает установленные коэффициенты фильтра в блок 361 предсказания второго порядка.
Заметим, что процесс кодирования в устройстве 351 кодирования изображения, показанный на фиг. 31, отличается от процесса кодирования, показанного на фиг. 16, выполняемого устройством 51 кодирования изображения, показанного на фиг. 1, только в отношении последующей внутренней обработки и процесса предсказания движения, а остальной процесс является, в основном, таким же, так что его описание будет опущено.
То есть, с помощью устройства 351 кодирования изображения, показанного на фиг. 31, внутреннее предсказание, соответствующее формату H.264/AVC, выполняется как внутренний процесс. Кроме того, в процессе предсказания движения коэффициенты фильтра, установленные блоком 362 переключения фильтра интерполяции соседних пикселей, используются во время процесса предсказания движения, создавая тем самым разностную информацию второго порядка. То есть, разностная информация второго порядка выбирается из разностной информации первого порядка и разностной информации второго порядка как лучшая и оптимальный режим межкадрового предсказания определяется путем сравнения значений функции стоимости.
Устройство декодирования изображения, которое принимает сжатое изображение, кодированное этим устройством 351 кодирования изображения, и декодирует его, будет описано со ссылкой на фиг. 33.
Другой пример устройства декодирования изображения
На фиг. 33 представлена конфигурация другого варианта осуществления устройства декодирования изображения, служащего в качестве устройства обработки изображения, к которому применено настоящее изобретение.
Устройство 401 декодирования изображения подобно устройству 151 декодирования изображения, показанному на фиг. 22, и содержит буфер 161 хранения, блок 162 декодирования без потерь, блок 163 обратного квантования, блок 164 обратного ортогонального преобразования, вычислительный блок 165, деблокирующий фильтр 166, буфер 167 перемонтажа экрана, блок 168 цифро-аналогового (D/A) преобразования, память 169 кадров, переключатель 170, блок 171 внутреннего предсказания, блок 173 предсказания/компенсации движения и переключатель 174.
Кроме того, устройство 401 декодирования изображения отличается от устройства 151 декодирования изображения, показанного на фиг. 22, тем, что отсутствует блок 172 переключения фильтра интерполяции соседних пикселей и добавлены блок 411 предсказания второго порядка и блок 412 переключения фильтра интерполяции соседних пикселей.
То есть, информация, указывающая режим внутреннего предсказания, полученный декодированием информации заголовка, подается от блока 162 декодирования без потерь на блок 171 внутреннего предсказания. Основываясь на этой информации, блок 171 внутреннего предсказания создает изображение предсказания и выводит созданное изображение предсказания на переключатель 174.
Информация, полученная посредством декодирования информации заголовка информация режима предсказания, информация вектора движения, информация опорного кадра и т.д., подаются от блока 162 декодирования без потерь на блок 173 предсказания/компенсации движения. Кроме того, в случае, когда процесс предсказания второго порядка был применен к текущему блоку, флаг предсказания второго порядка, указывающий, что должно быть выполнено предсказание второго порядка, и информация режима предсказания для предсказания второго порядка также подаются от блока 162 декодирования без потерь на блок 173 предсказания/компенсации движения.
В случае, когда определено, что применяется процесс предсказания второго порядка, блок 173 предсказания/компенсации движения управляет блоком 411 предсказания второго порядка, так что предсказание второго порядка выполняется в режиме внутреннего предсказания, который указывается информацией режима внутреннего предсказания для предсказания второго порядка.
Блок 173 предсказания/компенсации движения подвергает изображение процессу предсказания/компенсации движения, основываясь на информации вектора движения и информации опорного кадра, и создает изображение предсказания. То есть, изображение предсказания текущего блока создается, используя значения пикселей опорного блока, коррелированные с текущим блоком, внутри опорного блока. Блок 173 предсказания/компенсации движения затем добавляет созданное изображение предсказания и значения разности предсказания из блока 411 предсказания второго порядка и выводит все это на переключатель.
Блок 411 предсказания второго порядка выполняет предсказание второго порядка, используя разность между текущими соседними пикселями и опорными соседними пикселями, считанными из памяти 169 кадров. Перед этим предсказанием второго порядка блок 411 предсказания второго порядка использует коэффициенты фильтра, установленные блоком 412 переключения фильтра интерполяции соседних пикселей, чтобы выполнить процесс фильтрации для разности между текущими соседними пикселями и опорными соседними пикселями. Блок 411 предсказания второго порядка затем использует разность между текущими соседними пикселями и опорными соседними пикселями, подвергнутую процессу фильтрации, чтобы выполнить процесс предсказания второго порядка, и выводит на блок 173 предсказания/компенсации движения полученную разностную информацию второго порядка (остаток второго порядка).
То есть, блок 411 предсказания второго порядка выполняется так, что он содержит блок 171 внутреннего предсказания, показанный на фиг. 26.
Блок 412 переключения фильтра интерполяции соседних пикселей выполнен, в основном, таким же способом, как и блок 172 переключения фильтра интерполяции соседних пикселей. То есть, блок 412 переключения фильтра интерполяции соседних пикселей устанавливает коэффициенты фильтра, соответствующие, по меньшей мере, одному из параметров квантования, полученному от блока 162 декодирования без потерь, и режиму внутреннего предсказания. Блок 412 переключения фильтра интерполяции соседних пикселей обеспечивает подачу коэффициентов фильтра на блок 411 предсказания второго порядка.
Заметим, что процесс кодирования в устройстве 401 декодирования изображения, показанный на фиг. 33, отличается от процесса декодирования, показанного на фиг. 24, выполняемого устройством 51 декодирования изображения, показанного на фиг. 22, только в отношении последующей внутренней обработки и процесса предсказания движения, а остальной процесс является, в основном, таким же, так что его описание будет опущено.
То есть, с помощью устройства 401 декодирования изображения, показанного на фиг. 33, внутреннее предсказание, соответствующее формату H.264/AVC, выполняется как внутренний процесс. Кроме того, в качестве процесса предсказания движения предсказание второго порядка (внутреннее предсказание) во время процесса предсказания движения выполняется, используя коэффициенты фильтра, установленные блоком 412 переключения фильтра интерполяции соседних пикселей, и создается разностная информация второго порядка.
Настоящее изобретение может также применяться к внутреннему предсказанию в процессе предсказания второго порядка, такого, как описано выше.
Заметим, что в приведенном выше описании был представлен пример выполнения процесса фильтрации для соседних пикселей, используемых для внутреннего предсказания, используя коэффициенты фильтра, адаптивно устанавливаемые в соответствии с изображением перед внутренним предсказанием.
Кроме того, шум, содержащийся в соседних пикселях, используемых для системы внутреннего предсказания, различается, в зависимости от условий кодирования, таких как контент изображения, параметры квантования и т.д. Соответственно, существуют блоки, в отношении которых эффективность кодирования повышается за счет осуществления процесса фильтрации, выполненного, например, в формате H.264/AVC, и блоки, на которые фильтрация не влияет. Независимо от этого, общий процесс фильтрации ранее выполнялся на всех блоках во время выполнения внутренней обработки на основе блоков 8 х 8 для макроблоков с форматом H.264/AVC, так что появились блоки, для которых эффективность кодирования из-за этого понизилась.
Соответственно, далее будет описан пример случая выполнения включения/выключения процесса фильтрации в отношении соседних пикселей, ответственных за внутреннее предсказание.
3. Третий вариант осуществления
Пример другой конфигурации устройства кодирования изображения
На фиг. 34 представлена конфигурация другого варианта осуществления устройства кодирования изображения, служащего в качестве устройства обработки изображения, к которому применено настоящее изобретение.
Устройство 451 кодирования изображения подобно устройству 51 кодирования изображения, показанному на фиг. 1, содержит блок 61 аналогово-цифрового (A/D) преобразования, буфер 62 перемонтажа экрана, вычислительный блок 63, блок 64 ортогонального преобразования, блок 65 квантования, блок 66 кодирования без потерь, буфер 67 хранения, блок 68 обратного квантования, блок 69 обратного ортогонального преобразования, вычислительный блок 70, деблокирующий фильтр 71, память 72 кадров, переключатель 73, блок 74 внутреннего предсказания, блок 76 предсказания/компенсации движения, блок 77 выбора изображения предсказания и блок 78 управления скоростью.
Кроме того, устройство 451 кодирования изображения отличается от устройства 51 кодирования изображения, показанного на фиг. 1, тем, что блок 75 переключения фильтра интерполяции соседних пикселей заменен блоком 461 управления фильтром интерполяции соседних пикселей.
То есть, блок 461 управления фильтром интерполяции соседних пикселей выполняет управление включением или выключением всего процесса фильтрации, который выполнялся на соседних пикселях всех блоков во время выполнения внутреннего процесса на основе блока 8 х 8 для макроблоков с форматом H.264/AVC. Заметим, что в то время, когда процесс фильтрации выполняется только с внутренним процессом на основе блока 8 х 8 для формата H.264/AVC, он также выполняется на внутренних блоках 4 х 4 и внутренних блоках 16 х 16 также с помощью блока 461 управления фильтром интерполяции соседних пикселей.
Сигналы управления включением/выключением от блока 461 управления фильтром интерполяции соседних пикселей подаются на блок 74 внутреннего предсказания.
Блок 74 внутреннего предсказания выполняет процесс внутреннего предсказания всех возможных режимов внутреннего предсказания, основываясь на изображении, которое должно быть подвергнуто внутреннему предсказанию, считанному из буфера 62 перемонтажа экрана, и опорном изображении, подаваемом из памяти 72 кадров. В это время в блоке 74 внутреннего предсказания перед окончательным внутренним предсказанием выполняется внутреннее предсказание с включением или выключением процесса фильтрации в соответствии с сигналами управления от блока 461 управления фильтром интерполяции соседних пикселей и в качестве конечного используется результат с наименьшей вычисленной функцией стоимости.
Дополнительно, блок 74 внутреннего предсказания создает флаг, указывающий включение и выключение процесса фильтрации. Эта информация флага подается на блок 66 кодирования без потерь вместе с информацией, указывающей оптимальный режим внутреннего предсказания, в случае, когда блок 77 выбора изображения предсказания выбирает изображение предсказания, созданное в оптимальном режиме внутреннего предсказания.
Пример конфигурации блока внутреннего предсказания
На фиг. 35 приведен подробный пример конфигурации блока 74 внутреннего предсказания, показанного на фиг. 34. В случае примера, показанного на фиг. 35, блок 74 внутреннего предсказания образуется блоком 471 создания изображения предсказания, блоком 472 создания значения функции стоимости и блоком 473 создания флага включения/выключения режима.
На блок 471 создания изображения предсказания из памяти 72 кадров подаются значения соседних пикселей текущего блока для внутреннего предсказания. В случае, показанном на фиг. 35, переключатель 73 отсутствует на чертеже, но фактически значения соседних пикселей подаются на блок 471 создания изображения предсказания из памяти 72 кадров через переключатель 73. Заметим, что в случае внутреннего предсказания в качестве значений соседних пикселей используются значения пикселей, не подвергнутые деблокирующей фильтрации деблокирующим фильтром 71 .
Основываясь на сигналах управления от блока 461 управления фильтром интерполяции, блок 471 создания изображения предсказания выполняет внутреннее предсказание во всех возможных режимах внутреннего предсказания, осуществляя процесс фильтрации значений соседних пикселей, или не осуществляя процесс фильтрации, создавая, таким образом, изображения предсказания. Управление включением/выключением с помощью блока 461 управления фильтром интерполяции соседних пикселей, указываемое сигналами управления, выполняется приращениями блоков или приращениями макроблоков, как описано далее со ссылкой на фиг. 36-38.
Блок 471 предсказания/компенсации движения обеспечивает подачу созданных значений пикселей изображения предсказания и его информации режима внутреннего предсказания на блок 472 создания значения функции предсказания.
На блок 472 создания значения функции стоимости обеспечивается подача первоначальных значений пикселей изображения из буфера 62 перемонтажа экрана. Блок 472 создания значения функции стоимости использует первоначальные значения пикселей изображения и значения пикселей изображения предсказания для вычисления значений функции стоимости для каждого режима внутреннего предсказания в случаях, когда процесс фильтрации включен и выключен. Блок 472 создания значения функции стоимости обеспечивает подачу вычисленных значений функции стоимости и информации режима внутреннего предсказания на блок 473 создания флага включения/выключения и режима.
Блок 473 создания флага включения/выключения и режима использует значения функции стоимости от блока 472 создания значения функции стоимости для определения оптимального режима внутреннего предсказания и для включения и выключения процесса фильтрации и создает информацию флага включения/выключения, указывающую включен или выключен процесс фильтрации.
Блок 473 создания флага включения/выключения и режима подает значения пикселей изображения предсказания для оптимального режима внутреннего предсказания на блок 77 выбора изображения предсказания. В случае, когда блоком 77 выбора изображения предсказания выбрано изображение предсказания, созданное в оптимальном режиме, блок 473 создания флага включения/выключения и режима обеспечивает подачу информации, указывающей оптимальный режим внутреннего предсказания и соответствующей информации флага включения/выключения, на блок 66 кодирования без потерь.
Заметим, что процесс, выполняемый устройством 451 кодирования изображения, в основном, является таким же, как процесс, осуществляемый устройством 51 кодирования изображения, показанным на фиг. 1, за исключением внутреннего предсказания, описанного далее, так что остальная часть описания процесс будет опущена.
Далее, процесс внутреннего предсказания, выполняемый блоком 74 внутреннего предсказания, показанным на фиг. 34, в случае, когда в приращениях блоков выполняется управление включением и выключением, будет описан со ссылкой на блок-схему последовательности выполнения операций, показанную на фиг. 36. Заметим, что этот процесс является другим примером процесса внутреннего предсказания на этапе S31 на фиг. 17 и что в примере, показанном на фиг. 36, будет описан пример внутреннего предсказания блоков 4 х 4. Кроме того, на включение/выключение процесса фильтрации ниже можно также будет ссылаться просто как на включение/выключение фильтра.
На этапе S401 блок 472 создания значения функции стоимости создает значения функции стоимости для текущего блока в каждом из девяти типов режимов внутреннего предсказания, показанных на фиг. 3 или фиг. 4.
То есть, на блок 471 создания изображения предсказания из памяти 72 кадров подаются значения соседних пикселей текущего блока для внутреннего предсказания. Блок 471 создания изображения предсказания выполняет внутреннее предсказание для каждого из девяти типов режимов внутреннего предсказания, показанных на фиг. 3 или фиг. 4, и создает изображения предсказания для текущего блока.
В это время подаются сигналы управления для того, чтобы процесс фильтрации не выполнялся по мере того, как соседние пиксели подаются от блока 461 управления фильтром интерполяции соседних пикселей, и блок 471 создания изображения предсказания выполнял внутреннее предсказание без выполнения процесса фильтрации для соседних пикселей. Заметим, что здесь может быть организована структура, в которой подаются сигналы управления, чтобы процесс фильтрации выполнялся для соседних пикселей. Заметим, однако, что в отношении девяти режимов не делается разное управление, так что выполнение по вертикали не является выполнением по горизонтали; скорее, для девяти режимов одно и то же управление прикладывается для выполнения или невыполнения. Также заметим здесь, что если процесс фильтрации не выполняется во всех режимах, это позволяет уменьшить объем вычислений.
Блок 471 создания изображения предсказания обеспечивает подачу созданных значений пикселей изображения предсказания и информацию режима внутреннего предсказания на блок 472 создания значения функции стоимости. Блок 472 создания значения функции стоимости использует первоначальные значения пикселей изображения, полученные из буфера 62 перемонтажа экрана, и значения пикселей изображения предсказания для вычисления значений функции стоимости, показанных в приведенном выше выражении (73) или выражении (74) для каждого режима внутреннего предсказания в случае выключения фильтрации. Блок 472 создания значения функции стоимости обеспечивает подачу вычисленных значений функции стоимости и информации режима внутреннего предсказания на блок 473 создания флага включения/выключения и режима.
На этапе S402 блок 473 создания флага включения/выключения и режима использует значения функции стоимости, полученные от блока 472 создания значения функции стоимости, чтобы выбрать оптимальный режим для текущего блока. Выбранная информация режима внутреннего предсказания подается на блок 461 управления фильтром интерполяции соседних пикселей.
На этапе S403 блок 461 управления фильтром интерполяции соседних пикселей заставляет блок 472 создания значения функции стоимости создавать значения функции стоимости для выбранного режима внутреннего предсказания с включенной и выключенной фильтрацией. Заметим, что значение функции стоимости было создано для выключенной фильтрации на этапе S401, поэтому фактически на этапе S403 создается значение функции стоимости с включенной фильтрацией.
То есть, блок 461 управления фильтром интерполяции соседних пикселей обеспечивает подачу сигналов управления включением фильтрации и информации выбранного режима внутреннего предсказания на блок 471 создания изображения предсказания. Блок 471 создания изображения предсказания выполняет процесс фильтрации в отношении соседних пикселей, используемых для выбранного режима внутреннего предсказания, выполняет внутреннее предсказание в выбранном режиме внутреннего предсказания и создает изображение предсказания текущего блока.
Блок 471 создания изображения предсказания обеспечивает подачу созданных значений пикселей изображения предсказания и информацию выбранного режима внутреннего предсказания на блок 472 создания значения функции стоимости. Блок 472 создания значения функции стоимости использует первоначальные значения пикселей изображения, полученные из буфера 62 перемонтажа экрана, и значения пикселей изображения предсказания для вычисления значений функции стоимости, показанных в приведенном выше выражении (73) или выражении (74) для выбранного режима внутреннего предсказания в случае включенной фильтрации. Блок 472 создания значения функции стоимости обеспечивает подачу вычисленных значений функции стоимости и значений пикселей изображения предсказания на блок 473 создания флага включения/выключения и режима.
На этапе S404 блок 473 создания флага включения/выключения и режима определяет, включена ли/выключена ли фильтрация для текущего блока, сравнивая значения функции стоимости при включенной и выключенной фильтрации для выбранного режима внутреннего предсказания. То есть, в случае, когда значение функции стоимости при включенной фильтрации мало, для текущего блока назначается включение фильтрации, а в случае, когда значение функции стоимости при выключенной фильтрации мало, для текущего блока назначается выключение фильтрации. Блок 473 создания флага включения/выключения и режима затем подает определенные значения изображения предсказания на блок 77 выбора изображения предсказания.
На этапе S405 блок 473 создания флага включения/выключения и режима создает флаг включения/выключения, указывающий включение или выключение фильтрации, назначенное на этапе S404 для текущего блока. Например, в случае, когда фильтрация включена, значение включения/выключения фильтра равно 1. В случае, когда фильтрация выключена, значение включения/выключения фильтра равно 0.
В случае, когда изображение предсказания в режиме внутреннего предсказания было выбрано на этапе S22, показанном на фиг. 16, описанном выше, информация созданного флага включения/выключения подается на блок 66 кодирования без потерь вместе с информацией, указывающей оптимальный режим внутреннего предсказания. Поданная информация кодируется на этапе S23, показанном на фиг. 16, добавляется к заголовку сжатого изображения и посылается на сторону декодирования.
Далее, со ссылкой на блок-схему последовательности выполнения операций, показанную на фиг. 37, будет описан другой пример процесса внутреннего предсказания, выполняемого блоком 74 внутреннего предсказания, показанным на фиг. 34, в случае, когда управление включением или выключением выполняется в приращениях блоков выполняется. В случае примера, показанного на фиг. 37, также будет описан пример внутреннего предсказания для блока 4 х 4.
На этапе S421 блок 472 создания значения функции стоимости создает значения функции стоимости для текущего блока в соответствии с включением и выключением фильтра для каждого из режимов внутреннего предсказания.
То есть, на блок 471 создания изображения предсказания из памяти 72 кадров подаются значения соседних пикселей текущего блока для внутреннего предсказания. Блок 471 создания изображения предсказания выполняет внутреннее предсказание для каждого из девяти типов режимов внутреннего предсказания, показанных на фиг. 3 или фиг. 4, и создает изображения предсказания для текущего блока.
В это время сначала подаются сигналы управления для того, чтобы процесс фильтрации не выполнялся по мере того, как соседние пиксели подаются от блока 461 управления фильтром интерполяции соседних пикселей, и блок 471 создания изображения предсказания выполняет внутреннее предсказание для каждого из режимов внутреннего предсказания без выполнения процесса фильтрации для соседних пикселей и создает изображения предсказания. Дополнительно, подаются сигналы управления для того, чтобы процесс фильтрации выполнялся по мере того, как соседние пиксели подаются от блока 461 управления фильтром интерполяции соседних пикселей, и блок 471 создания изображения предсказания выполняет внутреннее предсказание для каждого из режимов внутреннего предсказания при выполненом процессе фильтрации для соседних пикселей и создает изображения предсказания.
Блок 471 создания изображения предсказания обеспечивает подачу информации для каждого из режимов внутреннего предсказания с фильтрацией и без фильтрации и соответствующих значений пикселей изображения предсказания на блок 472 создания значения функции предсказания. Блок 472 создания значения функции стоимости использует первоначальные значения пикселей изображения, полученные из буфера 62 перемонтажа экрана, и значения пикселей изображения предсказания для вычисления значений функции стоимости, показанных в приведенном выше выражении (73) или выражении (74) для каждого режима внутреннего предсказания в случае включенной и выключенной фильтрации. Блок 472 создания значения функции стоимости обеспечивает подачу вычисленных значений функции стоимости, значений пикселей изображения предсказания и информации режима внутреннего предсказания в каждом случае с включением и выключением фильтрации на блок 473 создания флага включения/выключения и режима.
На этапе S422 блок 473 создания флага включения/выключения и режима использует значения функции стоимости, полученные от блока 472 создания значения функции стоимости, для определения, должна ли фильтрация быть включена или выключена для текущего блока при каждом режиме внутреннего предсказания.
На этапе S423 блок 473 создания флага включения/выключения и режима выбирает оптимальный режим внутреннего предсказания для текущего блока из числа режимов внутреннего предсказания, учитывая, какой режим был определен при включении или выключении фильтрации.
На этапе S424 блок 473 создания флага включения/выключения и режима создает информацию флага включения/выключения, указывающую состояние фильтра для выбранного режима внутреннего предсказания (включен или выключен). В случае, когда на описанном выше этапе S22, показанном на фиг. 16, было выбрано изображение предсказания в режиме внутреннего предсказания, информация созданного флага включения/выключения подается на блок 66 кодирования без потерь вместе с информацией, указывающей оптимальный режим внутреннего предсказания. Поданная информация кодируется на этапе S23, показанном на фиг. 16, добавляется к заголовку сжатого изображения и посылается на сторону декодирования.
Далее, процесс внутреннего предсказания, выполняемый блоком 74 внутреннего предсказания, показанным на фиг. 34, в случае, когда управление включением и выключением выполняется в приращениях блоков, будет описан со ссылкой на блок-схему последовательности выполнения операций, показанную на фиг. 38. Заметим, что этот процесс является другим примером процесса внутреннего предсказания, показанного на этапе S31 на фиг. 17, и что внутреннеее предсказание блоков 4 х 4 будет также описано в примере, показанном на фиг. 36.
На этапе S451 блок 461 управления фильтром интерполяции соседних пикселей фиксирует фильтрацию в отношении всего макроблока как выключенную или включенную. В этом случае, блок 461 управления фильтром интерполяции соседних пикселей фиксирует фильтрацию как выключенную и обеспечивает подачу сигналов управления для выключения фильтрации на блок 471 создания изображения предсказания. Фиксация фильтрации может быть включена или выключена, но фиксация выключения может быть осуществлена с меньшим объемом вычислений.
На этапе S452 блок 74 внутреннего предсказания определяет режим внутреннего предсказания для каждого блока. То есть, на блок 471 создания изображения предсказания из памяти 72 кадров подаются значения соседних пикселей текущего блока для внутреннего предсказания. Блок 471 создания изображения предсказания выполняет внутреннее предсказание для каждого из девяти типов режимов внутреннего предсказания, показанных на фиг. 3 или фиг. 4, и создает изображения предсказания для текущего блока.
В это время сначала подаются сигналы управления для того, чтобы процесс фильтрации не выполнялся по мере того, как соседние пиксели подаются от блока 461 управления фильтром интерполяции соседних пикселей, и блок 471 создания изображения предсказания выполняет внутреннее предсказание для каждого из режимов внутреннего предсказания без выполнения процесса фильтрации для соседних пикселей и создает изображения предсказания. Блок 471 создания изображения предсказания обеспечивает подачу созданных значений пикселей изображения предсказания и информацию режима внутреннего предсказания на блок 472 создания значения функции предсказания.
Блок 472 создания значения функции стоимости использует первоначальные значения пикселей изображения, полученные из буфера 62 перемонтажа экрана, и значения пикселей изображения предсказания для вычисления значений функции стоимости, показанных в приведенном выше выражении (73) или в выражении (74) для каждого режима внутреннего предсказания в случае выключенной фильтрации. Блок 472 создания значения функции стоимости обеспечивает подачу вычисленных значений функции стоимости, значений пикселей изображения предсказания и информации режима внутреннего предсказания в каждом случае выключенной фильтрации на блок 473 создания флага включения/выключения и режима.
Блок 473 создания флага включения/выключения и режима использует значения функции стоимости, полученные от блока 472 создания значения функции стоимости, для определения оптимального режима внутреннего предсказания для каждого блока. Декодированная информация режима внутреннего предсказания подается на блок 461 управления фильтром интерполяции соседних пикселей.
На этапе S453 блок 461 управления фильтром интерполяции соседних пикселей заставляет блок 472 создания значения функции стоимости создавать значения функции стоимости для каждого макроблока с включенной и выключенной фильтрацией. Заметим, что значения функции стоимости для оптимального режима внутреннего предсказания для каждого блока внутри макроблока (то есть, всего макроблока) при выключенной фильтрации были созданы на этапе S452. Соответственно, фактически, на этапе S453 создаются значения функции стоимости для всего макроблока при включенной фильтрации.
То есть, блок 461 управления фильтром интерполяции соседних пикселей обеспечивает подачу сигналов управления включением фильтрации и информации режима внутреннего предсказания, выбранного для каждого из блоков, на блок 471 создания изображения предсказания. Блок 471 создания изображения предсказания выполняет процесс фильтрации в отношении значений соседних пикселей, используемых для выбранного режима внутреннего предсказания, выполняет внутреннее предсказание в выбранном режиме внутреннего предсказания и создает изображение предсказания для текущего блока.
Блок 471 создания изображения предсказания обеспечивает подачу созданных значений пикселей изображения предсказания и информации определенного режима внутреннего предсказания на блок 472 создания значения функции стоимости. Блок 472 создания значения функции стоимости использует первоначальные значения пикселей изображения, полученные из буфера 62 перемонтажа экрана, и значения пикселей изображения предсказания для вычисления значений функции стоимости, показанных в приведенном выше выражении (73) или в выражении (74) для определенного режима внутреннего предсказания в каждом случае при включенной фильтрации. Блок 472 создания значения функции стоимости обеспечивает подачу вычисленных значений функции стоимости, значений пикселей изображения предсказания и информации режима внутреннего предсказания в каждом случае с включением и выключением фильтрации на блок 473 создания флага включения/выключения и режима.
На этапе S454 блок 473 создания флага включения/выключения и режима сравнивает значения функции стоимости для всех блоков внутри макроблока для случаев с фильтрацией и без фильтрации, полученные от блока 472 создания значения функции стоимости, и определяет, применить включенную или выключенную фильтрацию ко всему макроблоку.
На этапе S455 блок 473 создания флага включения/выключения и режима создает флаг включения/выключения, указывающий, включение или выключение фильтрации, определенное на этапе S454 для всего макроблока. Созданная для каждого макроблока информация флага включения/выключения подается на блок 66 кодирования без потерь. Поданная информация кодируется на этапе S23, показанном на фиг. 16, добавляется к заголовку сжатого изображения и посылается на сторону декодирования.
Как описано выше, управление включением/выключением (включением или выключением) фильтрации может выполняться в приращениях блоков или может выполняться в приращениях макроблоков. Заметим, что хотя точность предсказания процесса внутреннего предсказания при управлении включением/выключением в приращениях блоков может быть улучшена, объем информации, необходимый для передачи информации флага для каждого блока, увеличивается. Напротив, в случае управления в приращениях макроблоков улучшение точности предсказания снижается по сравнению с выполнением в приращениях блоков, но информации одного флага для одного макроблока достаточно и общий объем информации флага может быть уменьшен.
Хотя в приведенном выше описании был представлен пример с сигналами яркости, то же самое может также использоваться в отношении цветоразностных сигналов. Кроме того, коэффициенты фильтра в процессе фильтрации, который должен управляться, не ограничиваются трехполюсником {1,2,1}//4, приведенным в формате H.264/AVC, и указанное может применяться к любым коэффициентам с любой полюсной длиной, установленным с помощью устройства 51 кодирования изображения, показанного на фиг. 1.
То есть, в случае включенной фильтрации процесс фильтрации с коэффициентами фильтра, установленными устройством 51 кодирования изображения, показанного на фиг. 1, может быть выполнен.
Устройство декодирования изображения, которое принимает сжатое изображение, кодированное устройством 451 кодирования изображения, и декодирует его, будет описано со ссылкой на фиг. 39.
Другой пример устройства декодирования изображения
На фиг. 39 представлена конфигурация другого варианта осуществления устройства декодирования изображения, служащего в качестве устройства обработки изображения, к которому применено настоящее изобретение.
Устройство 501 декодирования изображения подобно устройству 151 декодирования изображения, показанному на фиг. 22, и содержит буфер 161 хранения, блок 162 декодирования без потерь, блок 163 обратного квантования, блок 164 обратного ортогонального преобразования, вычислительный блок 165, деблокирующий фильтр 166, буфер 167 перемонтажа экрана, блок 168 цифро-аналогового (D/A) преобразования, память 169 кадров, переключатель 170, блок 171 внутреннего предсказания, блок 173 предсказания/компенсации движения и переключатель 174.
Кроме того, устройство 501 декодирования изображения отличается от устройства 151 декодирования изображения, показанного на фиг. 22, тем, что блок 172 переключения фильтра интерполяции соседних пикселей заменен блоком 511 управления фильтром интерполяции соседних пикселей.
То есть, информация, указывающая режим внутреннего предсказания, полученная декодированием информации заголовка, подается от блока 162 декодирования без потерь на блок 171 внутреннего предсказания. Основываясь на этой информации, блок 171 внутреннего предсказания создает изображение предсказания и выводит созданное изображение предсказания на переключатель 174. В это время, перед внутренним предсказанием блок 171 внутреннего предсказания выполняет (или не выполняет) процесс фильтрации в отношении значений соседних пикселей в соответствии с сигналами управления, подаваемыми от блока 511 управления фильтром интерполяции соседних пикселей.
На блок 511 управления фильтром интерполяции соседних пикселей подается информация флага включения/выключения для каждого макроблока или для каждого блока от блока 162 декодирования без потерь в соответствии с кодированием в устройстве 451 кодирования изображения. Блок 511 управления фильтром интерполяции соседних пикселей подает на блок 171 внутреннего предсказания сигналы управления, чтобы выполнять или не выполнять процесс фильтрации в соответствии с поданной информацией флага включения/выключения.
Заметим, что с помощью устройства 451 кодирования изображения, показанного на фиг. 34, тестируются оба случая, когда фильтрация включена и когда она выключена, и процесс внутреннего предсказания выполняется в соответствии с результирующей, более высокой эффективностью кодирования, определяемой по значениям функции стоимости. С другой стороны, с помощью блока 501 декодирования изображения включение и выключение фильтрации управляется, основываясь на посланной кодированной информации флага включения/выключения, и процесс внутреннего предсказания выполняется.
Пример конфигурации блока внутреннего предсказания и блока управления фильтром интерполяции соседних пикселей
На фиг. 40 представлена блок-схема примера подробной конфигурации блока внутреннего предсказания и блока управления фильтром интерполяции соседних пикселей.
В случае примера, показанного на фиг. 40, блок 171 внутреннего предсказания образуется буфером 521 режима предсказания и блоком 522 создания изображения предсказания. Блок 511 управления фильтром интерполяции соседних пикселей образуется буфером 511 флага и блоком 532 создания сигнала управления
На буфер 521 режима предсказания подается информация режима внутреннего предсказания, поступающая от блока 162 декодирования без потерь. На блок 522 создания изображения предсказания из памяти 169 кадров подаются значения соседних пикселей текущего блока для внутреннего предсказания. В случае, показанном на фиг. 40, переключатель 170 отсутствует на чертеже, но фактически значения соседних пикселей подаются на блок 522 создания изображения предсказания из памяти 169 кадров через переключатель 170.
Блок 522 создания изображения предсказания считывает информацию режима внутреннего предсказания для текущего блока из буфера 521 режима предсказания, выполняет внутреннее предсказание для текущего блока в режиме внутреннего предсказания, который был считан, и создает изображение предсказания. Перед этим внутренним предсказанием блок 522 создания изображения предсказания выполняет процесс фильтрации для значений пикселей изображения предсказания, полученных из памяти 169 кадров, в соответствии с сигналами управления от блока 532 создания сигналов управления.
На буфер 531 флага подается информация флага включения/выключения из блока 162 декодирования без потерь для каждого макроблока или каждого блока. Блок 532 создания сигнала управления считывает соответствующий флаг включения/выключения из буфера 531 флага, создает сигналы управления, указывающие, выполнять или не выполнять процесс фильтрации для каждого блока, и подает созданные сигналы управления на блок 522 создания изображения предсказания.
Заметим, что процесс, выполняемый устройством 501 декодирования изображения, в основном, является таким же, как процесс, осуществляемый устройством 151 кодирования изображения, показанным на фиг. 22, за исключением процесса предсказания, описанного далее, так что остальная часть описания процесса будет опущена.
Описание процесса предсказания
Далее, процесс предсказания в устройстве 501 декодирования изображения, показанном на фиг. 39, будет описан со ссылкой на блок-схему последовательности выполнения операций, показанную на фиг. 41. Заметим, что этот процесс внутреннего предсказания является другим примером процесса внутреннего предсказания этапа S138, показанного на фиг. 24.
На этапе S501 блок 522 создания изображения предсказания определяет является ли текущий блок внутренне кодированным. Информация режима внутреннего предсказания подается от блока 162 декодирования без потерь в буфер 521 режима предсказания, считывание из которого выполняется блоком создания изображения предсказания. Соответственно, на этапе S501 блок 522 создания изображения предсказания определяет, что блок внутренне кодирован и процесс переходит к этапу S502.
На этапе S502 блок 522 создания изображения предсказания получает информацию режима внутреннего предсказания от буфера 521 режима предсказания.
Кроме того, после того, как информация флага включения/выключения из блока 162 декодирования без потерь подается в буфер 531 флага, на этапе S503 буфер 531 флага получает флаг значений пикселей изображения предсказания и запоминает его.
Блок 532 создания сигнала управления считывает флаг включения/выключения, соответствующий текущему флагу, из буфера 531 флага и на этапе S504 определяет, равен ли флаг включения/выключения 1, то есть, что включен ли процесс фильтрации, блок 532 создания сигнала управления подает сигналы управления в блок 522 создания изображения предсказания, чтобы заставить выполнить процесс фильтрации.
В соответствии с сигналами управления, на этапе S505 блок 522 создания изображения предсказания подвергает соседние пиксели процессу фильтрации, используя коэффициенты фильтра. На этапе S506 блок 522 создания изображения предсказания выполняет внутреннее предсказание, используя значения соседних пикселей, подвергнутые процессу фильтрации, и создает изображение предсказания.
С другой стороны, в случае, когда на этапе S504 определено, что флаг включения/выключения не равен 1, то есть, что процесс фильтрации выключен, процесс фильтрации на этапе S505 пропускается и процесс переходит к этапу S506.
На этапе S506 блок 522 создания изображения предсказания использует значения пикселей изображения предсказания из памяти 169 кадров и создает изображение предсказания.
Изображение предсказания, созданное на этапе S506, подается на переключатель 174.
С другой стороны, в случае, когда на этапе S501 определено, что внутреннее кодирование не выполнялось, процесс переходит к этапу S507.
На этапе S507 блок 173 предсказания/компенсации движения выполняет межкадровое предсказание движения. То есть, в случае, когда изображение, которое должно быть обработано, является изображением для процесса межкадрового предсказания, необходимое изображение считывается из памяти 169 кадров и подается на блок 173 предсказания/компенсации движения через переключатель 170. На этапе S508 блок 173 предсказания/компенсации движения выполняет предсказание движения в режиме межкадрового предсказания, основываясь на векторе движения, полученном на этапе S507, и создает изображение предсказания. Созданное изображение предсказания выводится на переключатель 174.
Как описано выше, с помощью устройства 451 кодирования изображения и устройства 501 декодирования изображения выполняется управление включением и выключением процесса фильтрации в отношении соседних пикселей, используемых для внутреннего предсказания, и процесс фильтрации не выполняется для блоков, для которых эффективность кодирования ухудшается. Соответственно, эффективность кодирования может быть улучшена.
Заметим, что хотя в приведенном выше описании был описан пример выполнения внутреннего предсказания, управление включением и выключением процесса фильтрации может применяться к внутреннему предсказанию при предсказании второго порядка, описанном выше со ссылкой на фиг. 32.
4. Четвертый вариант осуществления
Пример другой конфигурации устройства кодирования изображения
На фиг. 42 представлена конфигурация другого варианта осуществления устройства кодирования изображения, служащего в качестве устройства обработки изображения, к которому применено настоящее изобретение.
Устройство 551 кодирования изображения подобно устройству 451 кодирования изображения, показанному на фиг. 34, и содержит блок 61 аналогово-цифрового (A/D) преобразования, буфер 62 перемонтажа экрана, вычислительный блок 63, блок 64 ортогонального преобразования, блок 65 квантования, блок 66 кодирования без потерь, буфер 67 хранения, блок 68 обратного квантования, блок 69 обратного ортогонального преобразования, вычислительный блок 70, деблокирующий фильтр 71, память 72 кадров, переключатель 73, блок 74 внутреннего предсказания, блок 76 предсказания/компенсации движения, блок 77 выбора изображения предсказания и блок 78 управления скоростью.
Кроме того, устройство 551 кодирования изображения отличается от устройства 451 кодирования изображения, показанного на фиг. 34, тем, что отсутствует блок 461 управления фильтром интерполяции соседних пикселей и добавлены блок 361 предсказания второго порядка и блок 561 управления фильтром интерполяции соседних пикселей.
То есть, со ссылкой на пример, показанный на фиг. 42, блок 74 внутреннего предсказания выполняет внутреннее предсказание в соответствии с H.264/AVC.
С другой стороны, блок 76 предсказания/компенсации движения обнаруживает векторы движения для всех возможных режимов внутреннего предсказания, основываясь на изображении для межкадровой обработки и опорном изображении, подвергает опорное изображение процессу компенсации, основываясь на векторах движения, и создает изображение предсказания.
Блок 76 предсказания/компенсации движения обеспечивает подачу на блок 361 предсказания второго порядка обнаруженной информации вектора движения, информации движения для межкадровой обработки (адрес и т.д.) и остаток первого порядка, который является разностью между изображением для межкадрового предсказания и созданным изображением предсказания.
Блок 76 предсказания/компенсации движения определяет оптимальный режим внутреннего предсказания при предсказании второго порядка, сравнивая остатки второго порядка, полученные от блока 361 предсказания второго порядка. Кроме того, блок 76 предсказания/компенсации движения определяет, кодировать ли остаток второго порядка или кодировать остаток первого порядка, сравнивая остаток второго порядка с остатком первого порядка. Заметим, что этот процесс выполняется во всех возможных режимах межкадрового предсказания.
Блок 76 предсказания/компенсации движения вычисляет значения функции стоимости для всех возможных режимов межкадрового предсказания. Теперь, остаток, определенный для каждого режима межкадрового предсказания из остатка первого порядка и из остатка второго порядка, используется для вычисления значения функции стоимости. Блок 76 предсказания/компенсации движения определяет режим предсказания, который дает наименьшее минимальное значение вычисленных значений функции стоимости, который должен быть оптимальным режимом межкадрового предсказания.
Блок 76 предсказания/компенсации движения обеспечивает подачу изображения предсказания, созданного в оптимальном режиме межкадрового предсказания, (или разность между изображением для межкадрового остатка и остатком второго порядка) и его значение функции стоимости подается на блок 77 выбора изображения предсказания.
В случае, когда было выбрано изображение предсказания, созданное блоком 77 выбора изображения предсказания в оптимальном режиме межкадрового предсказания, блок 76 предсказания/компенсации движения выводит на блок 66 кодирования без потерь информацию, указывающую оптимальный режим межкадрового предсказания.
Затем информация вектора движения, информация опорного кадра, флаг предсказания второго порядка, указывающий, что должно быть выполнено предсказание второго порядка, информация режима внутреннего предсказания при предсказании второго порядка и т.д., также выводятся на блок 66 кодирования без потерь. Блок 66 кодирования без потерь также выполняет процесс кодирования без потерь, такой как кодирование переменной длины, арифметическое кодирование и т.д., для информации, полученной от блока 76 предсказания/компенсации движения, и вставляет ее в часть заголовка сжатого изображения.
Основываясь на информации вектора движения, полученной от блока предсказания/компенсации движения, и информации об изображении, которое должно быть подвергнуто межкадровой обработке, блок 361 предсказания второго порядка считывает из памяти 72 кадров текущие соседние пиксели, соседствующие с текущим блоком, который должен быть подвергнут межкадровой обработке. Кроме того, блок 361 предсказания второго порядка считывает из памяти 72 кадров опорные соседние пиксели, соседствующие с опорным блоком, коррелированным с текущим блоком посредством информации вектора движения.
Блок 361 предсказания второго порядка выполняет процесс предсказания второго порядка, описанный выше со ссылкой на фиг. 32. Предсказание второго порядка является процессом, при котором внутреннее предсказание выполняется между остатком первого порядка и разностью между текущими соседними пикселями и опорными соседними пикселями, создавая, таким образом, информацию разности второго порядка (остаток второго порядка).
Заметим, однако, что перед предсказанием второго порядка блок 361 предсказания второго порядка, показанный на фиг. 42, выполняет (или не выполняет) процесс фильтрации в отношении разности между текущими соседними пикселями и опорными соседними пикселями, используемыми для межкадрового предсказания, в соответствии с сигналами управления, полученными от блока 561 управления фильтром интерполяции соседних пикселей. Блок 361 предсказания второго порядка затем использует отфильтрованную (или неотфильтрованную) разность между текущими соседними пикселями и опорными соседними пикселями, чтобы выполнить процесс предсказания второго порядка, и выводит на блок 76 предсказания/компенсации движения полученную разностную информацию второго порядка (остаток второго порядка). Теперь блок 361 предсказания второго порядка также выводит на блок 76 предсказания/компенсации движения информацию флага включения/выключения, указывающую, выполняется ли или не выполняется процесс фильтрации.
То есть, блок 361 предсказания второго порядка содержит блок 74 внутреннего предсказания, показанный на фиг. 35.
Блок 561 управления фильтром интерполяции соседних пикселей выполнен, в основном, таким же способом, как и блок 461 управления фильтром интерполяции соседних пикселей, и выполняет тот же самый процесс. То есть, блок 561 управления фильтром интерполяции соседних пикселей подает на блок 361 предсказания второго порядка сигналы управления, обеспечивающие управление тем, чтобы выполнять или не выполнять процесс фильтрации в приращениях блоков или в приращениях макроблоков.
Заметим, что процесс, выполняемый устройством 551 кодирования изображения, показанным на фиг. 42, в основном, является таким же, как процесс, осуществляемый устройством 451 кодирования изображения, показанным на фиг. 34, (то есть, процессом кодирования, показанным на фиг. 16), за исключением описанного далее процесса внутреннего предсказания, так что его описание будет опущено.
То есть, с помощью устройства 551 кодирования изображения, показанного на фиг. 42, внутреннее предсказание, соответствующее формату H.264/AVC, выполняется как внутренний процесс. Кроме того, в качестве процесса предсказания движения, процесс фильтрации управляется в соответствии с сигналами управления, поступающими от блока 561 управления фильтром интерполяции соседних пикселей во время процесса предсказания движения, за счет чего создается фильтрованная (или нефильтрованная) разностная информация второго порядка. Из разностной информации первого порядка и разностной информации второго порядка выбирается та, которая имеет лучшую эффективность кодирования, и значения функции стоимости сравниваются, за счет чего определяется оптимальный режим внутреннего предсказания.
Устройство декодирования изображения, которое принимает сжатое изображение, кодированное этим устройством 551 кодирования изображения, и декодирует его, будет описано со ссылкой на фиг. 43.
Пример другой конфигурации устройства декодирования изображения
На фиг. 43 представлена конфигурация другого варианта осуществления устройства декодирования изображения, служащего в качестве устройства обработки изображения, к которому применено настоящее изобретение.
Устройство 601 декодирования изображения подобно устройству 501 декодирования изображения, показанному на фиг. 39, и содержит буфер 161 хранения, блок 162 декодирования без потерь, блок 163 обратного квантования, блок 164 обратного ортогонального преобразования, вычислительный блок 165, деблокирующий фильтр 166, буфер 167 перемонтажа экрана, блок 168 цифро-аналогового (D/A) преобразования, память 169 кадров, переключатель 170, блок 171 внутреннего предсказания, блок 173 предсказания/компенсации движения и переключатель 174.
Кроме того, устройство 601 декодирования изображения отличается от устройства 501 декодирования изображения, показанного на фиг. 39, тем, что отсутствует блок 511 управления фильтром интерполяции соседних пикселей и добавлены блок 411 предсказания второго порядка, показанный на фиг. 33, и блок 611 управления фильтром интерполяции соседних пикселей.
То есть, информация, указывающая режим внутреннего предсказания, полученный декодированием информации заголовка, подается от блока 162 декодирования без потерь на блок 171 внутреннего предсказания. Основываясь на этой информации, блок 171 внутреннего предсказания создает изображение предсказания и выводит созданное изображение предсказания на переключатель 174.
Из информации, полученной посредством декодирования информации заголовка, информация режима предсказания, информация вектора движения, информация опорного кадра и т.д., подаются от блока 162 декодирования без потерь на блок 173 предсказания/компенсации движения. Кроме того, в случае, когда процесс предсказания второго порядка был применен к текущему блоку, флаг предсказания второго порядка и информация режима внутреннего предсказания для предсказания второго порядка также подаются от блока 162 декодирования без потерь на блок 173 предсказания/компенсации движения.
В случае, когда определено, что применен процесс предсказания второго порядка, блок 173 предсказания/компенсации движения управляет блоком 411 предсказания второго порядка, так что предсказание второго порядка выполняется в режиме внутреннего предсказания, который указывает информацию режима внутреннего предсказания для предсказания второго порядка.
Блок 173 предсказания/компенсации движения выполняет процесс предсказания и компенсации движения, основываясь на информации вектора движения и информации опорного кадра, и создает изображение предсказания. То есть, изображение предсказания текущего блока создается, используя значения пикселей опорного блока, коррелированные с текущим блоком, внутри опорного блока. Блок 173 предсказания/компенсации движения затем добавляет созданное изображение предсказания и значения разности предсказания из блока 411 предсказания второго порядка и выводит все это на переключатель.
Блок 411 предсказания второго порядка выполняет предсказание второго порядка, используя разность между текущими соседними пикселями и опорными соседними пикселями, считанными из памяти 169 кадров. Заметим, однако, что в случае, когда от блока 611 управления фильтром интерполяции соседних пикселей были приняты сигналы управления, осуществляющие управление выполнением процесса фильтрации, блок 411 предсказания второго порядка перед этим предсказанием второго порядка выполняет процесс фильтрации для разности текущих соседних пикселей и опорных соседних пикселей. Блок 411 предсказания второго порядка затем использует разность между текущими соседними пикселями и опорными соседними пикселями, подвергнутую процессу фильтрации, чтобы выполнить процесс предсказания второго порядка, и выводит на блок 173 предсказания/компенсации движения полученную разностную информацию второго порядка (остаток второго порядка).
Заметим, однако, что в случае, когда от блока 611 управления фильтром интерполяции соседних пикселей были приняты сигналы управления, не осуществляющие управление выполнением процесса фильтрации, блок 411 предсказания второго порядка не выполняет процесс фильтрации, а выполняет процесс предсказания второго порядка, используя разность текущих соседних пикселей и опорных соседних пикселей.
То есть, блок 411 предсказания второго порядка выполняется так, что он содержит блок 171 внутреннего предсказания, показанный на фиг. 40.
Блок 611 управления фильтром интерполяции соседних пикселей выполнен, в основном, таким же способом, как и блок 511 управления фильтром интерполяции соседних пикселей, показанный на фиг. 39, и, в основном, выполняет тот же самый процесс. То есть, на блок 611 управления фильтром интерполяции соседних пикселей подается информация, полученная от блока 162 декодирования без потерь декодированием информации заголовка, информация флага включения/выключения. Блок 611 управления фильтром интерполяции соседних пикселей подает сигналы управления, чтобы заставить блок 411 предсказания второго порядка, выполнять или не выполнять процесс фильтрации соседних пикселей в соответствии с информацией флага включения/выключения.
Заметим, что процесс, выполняемый устройством 601 декодирования изображения, показанным на фиг. 43, в основном, является таким же, как процесс, осуществляемый устройством 501 декодирования изображения, показанным на фиг. 39, (то есть, процессом декодирования, показанным на фиг. 24), за исключением описанного далее процесса внутреннего предсказания и процесса предсказания движения, поэтому его описание будет опущено.
То есть, с помощью устройства 601 декодирования изображения, показанного на фиг. 43, внутреннее предсказание, соответствующее формату H.264/AVC, выполняется как внутренний процесс. Кроме того, в качестве процесса предсказания движения, процесс фильтрации управляется в соответствии с сигналами управления, поступающими от блока 611 управления фильтром интерполяции соседних пикселей во время процесса предсказания движения, выполняется предсказание второго порядка (внутреннее предсказание) и создается разностная информация второго порядка.
Управление включением и выключением процесса фильтрации может также применяться к внутреннему предсказанию с процессом предсказания второго порядка, также, как было описано выше.
Заметим, что хотя описание было сделано с использованием приведенного выше описания, относящегося к случаю, когда размер макроблока составляет 16 х 16 пикселей, но настоящее изобретение может также применяться к увеличенным размерам макроблоков, описанных в NPL 3.
На фиг. 44 представлен пример увеличенного размера макроблока. С помощью NPL 3 размер макроблока увеличивается до 32 х 32 пикселей.
Макроблоки размером 32 х 32 пикселей, разделенные на блоки (части) размером 32 х 32 пикселей, 32 х 16 пикселей, 16 х 32 пикселей и 16 х 16 пикселей, показаны слева по порядку в верхнем ряду на фиг. 44. Блоки размером 16 х 16 пикселей, разделенные на блоки 16 х 16 пикселей, 16 х 8 пикселей, 8 х 16 пикселей и 8 х 8 пикселей, показаны слева по порядку в среднем ряду на фиг. 44. Кроме того, блоки размером 8 х 8 пикселей, разделенные на блоки размером 8 х 8 пикселей, 8 х 4 пикселей, 4 х 8 пикселей и 4 х 4 пикселей, показаны слева по порядку в нижнем ряду на фиг. 44.
Другими словами, макроблоки 32 х 32 пикселей могут обрабатываться с помощью блоков 32 х 32 пикселей, 32 х 16 пикселей, 16 х 32 пикселей, и 16 х 16 пикселей, показанных в верхнем ряду на фиг. 44.
Кроме того, блоки 16 х 16 пикселей, показанные на правой стороне верхнего ряда, могут обрабатываться с помощью блоков 16 х 16 пикселей, 16 х 8 пикселей, 8 х16 пикселей и 8 х 8 пикселей, показанных в среднем ряду, таким же способом, как с помощью формата H.264/AVC.
Дополнительно, блоки 8 х 8 пикселей, показанные на правой стороне среднего ряда, могут обрабатываться с помощью блоков 8 х 8 пикселей, 8 х 4 пикселей, 4 х 8 пикселей и 4 х 4 пикселей, показанных в нижнем ряду, таким же способом, как с помощью формата H.264/AVC.
Для увеличенных размеров макроблоков, использующих такую иерархическую структуру в отношении блока 16 х 16 пикселей или меньше, больший блок определяется как их супернабор, в то же время поддерживая совместимость с форматом H.264/AVC.
Установка коэффициентов фильтра, вычисление и управление включением/выключением процесса фильтрации в соответствии с настоящим изобретением могут также применяться к предложенным размерам макроблока, увеличенным, как описано выше.
Описание было сделано со ссылкой на формат H.264/AVC, используемый как формат кодирования, но настоящее изобретение не ограничивается этим и может использоваться другой формат кодирования/формат декодирования для выполнения предсказания, использующий соседние пиксели (например, внутреннее предсказание или предсказание второго порядка).
Заметим, что настоящее изобретение может применяться к устройству кодирования изображения и к устройству декодирования изображения, используемым во время приема информации изображения (битовые потоки), сжатой с помощью ортогонального преобразования, такого как дискретное косинусное преобразование и т.п., и компенсации движения через сетевую среду, такую как спутниковое радиовещание, кабельное телевидение, Интернет, сотовая телефония и т.п., например, с помощью MPEG, H.26x и т.п. Кроме того, настоящее изобретение может применяться к устройству кодирования изображения и к устройству декодирования изображения, используемым во время обработки информации изображения на носителе хранения данных, таком как оптический диск, магнитный диск и флэш-память. Дополнительно, настоящее изобретение может применяться к устройству предсказания/компенсации движения, содержащемуся в таком устройстве кодирования изображения и в устройстве декодирования изображения.
Упомянутые выше последовательности обработки могут исполняться с помощью аппаратурного обеспечения или могут исполняться посредством программного обеспечения. В случае исполнения последовательностей обработки посредством программного обеспечения, программа, осуществляющая программное обеспечение для этого, устанавливается на компьютер. Здесь, примерами компьютера являются компьютер, встроенный в специализированное аппаратурное обеспечение, и универсальный персональный компьютер, с помощью которых могут осуществляться различные функции, когда на них устанавливаются различные программы.
На фиг. 45 приведена блок-схема, показывающая пример конфигурации аппаратурного обеспечения компьютера, который исполняет упомянутые выше последовательности обработки, используя программы.
В компьютере CPU (центральный процессор) 801, ROM (постоянное запоминающее устройство) 802 и RAM (оперативное запоминающее устройство) 803 соединяются друг с другом через шину 804.
Дополнительно, к шине 804 подключается интерфейс 805 ввода-вывода. блок 806 ввода, причем блок 807 вывода, блок 808 хранения данных, блок 809 связи и дисковод 810 соединяются с интерфейсом 805 ввода-вывода.
Блоком 806 ввода являются клавиатура, мышь, микрофон и т.д. Блоком 807 вывода являются дисплей, громкоговоритель и т.д. Блоком 808 хранения данных являются жесткий диск, энергонезависимая память и т.д. Блоком 809 связи являются сетевой интерфейс и т.д. Дисковод 810 приводит в действие схемный носитель 811, такой как магнитный диск, оптический диск, магнито-оптический диск, полупроводниковая память и т.д.
Для компьютера, конфигурированного таким образом, например, CPU 801 загружает программу, хранящуюся в блоке 808 хранения данных, в RAM 803 через интерфейс 805 ввода-вывода и шину 804 и выполняет программу и, соответственно, выполняется упомянутая выше последовательность выполнения операций.
Программа, выполняемая компьютером (CPU 801), может обеспечиваться как программа, записанная на съемном носителе 811, служащем в качестве пакетного носителя пакета, и т.п. Кроме того, программа может быть обеспечена через кабельную или беспроводную среду передачи данных, такую как локальная сеть, Интернет или цифровая широковещательная передача.
С помощью компьютера программа может быть установлена в блок 808 хранения данных через интерфейс 805 ввода-вывода, устанавливая съемный носитель 811 на дисковод 810. Кроме того, программа может быть принята в блоке 809 связи через кабель или беспроводную среду передачи данных и установлена в блоке 808 хранения данных. Дополнительно, программа может быть установлена в ROM 802 или блок 808 хранения данных заранее.
Заметим, что программа, которую выполняет компьютер, может быть программой, в которой обработка выполняется во временной последовательности одновременно с последовательностью, описанной в настоящем описании, или может быть программой, в которой обработка выполняется параллельно или с необходимой синхронизацией, такой, при которой выполняется вызов.
Варианты осуществления настоящего изобретения не ограничиваются упомянутым выше вариантом осуществления и в них могут быть внесены различные изменения, не отступая от сущности настоящего изобретения.
Например, упомянутые выше устройства 51, 351, 451 и 551 кодирования изображения и устройства 151, 401, 501 и 601 декодирования изображения могут быть применены к дополнительным электронным устройствам. Здесь далее будет описан такой пример.
На фиг. 46 представлена блок-схема, показывающая пример основной конфигурации телевизионного приемника, использующего устройство декодирования изображения, к которому применимо настоящее изобретение.
Телевизионный приемник 1300, показанный на фиг. 46 содержит наземный тюнер 1313, видеодекодер 1315, схему 1318 процессора видеосигнала, схему 1319 создания графики, схему 1320 панели управления и панель 1321 дисплея.
Наземный тюнер 1313 принимает широковещательные радиосигналы наземной аналоговой широковещательной станции через антенну, демодулирует, получает видеосигналы и подает их на видеодекодер 1315. Видеодекодер 1315 подвергает видеосигналы, поданные от наземного тюнера 1313, процессу декодирования и подает полученные цифровые компонентные сигналы на схему 1318 процессора видеосигнала.
Схема 1318 процессора видеосигнала подвергает видеоданные, поданные от видеодекодера 1315 заданной обработке, такой как шумоподавление и т.п., и подает полученные видеоданные на схему 1319 создания графики.
Схема 1319 создания графики создает видеоданные программы, которые должны отображаться на панели 1321 дисплея, или данные изображения, полученные в результате обработки, основанной на приложении, которое должно быть передано через сеть и т.п., и подает сформированные видеоданные или данные изображения на схему 1320 панели управления. Кроме того, схема 1319 создания графики также выполняет такой процесс, как предоставление пользователю видеоданных, полученных путем создания видеоданных (графики), отображая экран, используемый для выбора позиции и т.п., и накладывая его на видеоданные программы через схему 1320 панели управления по мере необходимости.
Схема 1320 панели управления приводит в действие панель 1321 дисплея, основываясь на данных, поступающих от схемы 1319 создания графики, чтобы отображать видеопрограмму или упомянутые выше различные экраны на панели 1321 дисплея.
Панель 1321 дисплея состоит из жидкокристаллического дисплея (LCD) и т. д и отображает на экране видеопрограммы и т.п. в соответствии с управлением, осуществляемым схемой 1320 панели управления.
Кроме того, телевизионный приемник 1300 также содержит аудиосхему 1314 A/D (аналогово-цифрового) преобразования, схему 1322 процессора аудиосигнала, схему 1323 эхоподавления/аудиосинтеза, схему 1324 аудиоусилителя и громкоговоритель 1325.
Наземный тюнер 1313 демодулирует принятый широковещательный радиосигнал, получая, таким образом, не только видеосигнал, но также и аудиосигнал. Наземный тюнер 1313 подает полученный аудиосигнал на аудиосхему 1314 A/D-преобразования.
Аудиосхема 1314 A/D-преобразования подвергает аудиосигнал, полученный от наземного тюнера 1313, обработке A/D-преобразователем и подает полученный цифровой аудиосигнал на схему 1322 процессора аудиосигнала.
Схема 1322 процессора аудиосигнала подвергает аудиоданные, поданные от схемы 1314 A/D-преобразования заданной обработке, такой как шумоподавление и т.п., и подает полученные аудиоданные на схему 1323 эхоподавления/аудиосинтеза.
Схема 1323 эхоподавления/аудиосинтеза подает аудиоданные, полученные от схемы 1322 процессора аудиосигнала, на схему 1324 аудиоусилителя.
Схема 1324 аудиоусилителя подвергает аудиоданные, полученные от схемы 1323 эхоподавления/аудиосинтеза, обработке цифро-аналогового (D/A) преобразования, подвергает усилитель обработке, чтобы установить заданный уровень, и затем выводит аудиосигнал через громкоговоритель 1325.
Дополнительно, телевизионный приемник 1300 также содержит цифровой тюнер 1316 и декодер 1317 MPEG.
Цифровой тюнер 1316 принимает широковещательные радиосигналы цифровой широковещательной передачи (наземная цифровая широковещательная передача), BS (широковещательную спутниковую передачу)/CS (передачу спутникового цифрового вещания) через антенну, демодулирует, чтобы получить сигнал MPEG-TS (транспортная система, предложенная группой экспертов по кинематографии), и подает его на декодер 1317 MPEG.
Декодер 1317 MPEG дескремблирует скремблирование, выполненное в соответствии с требованиями MPEG-TS, для сигнала, поданного от цифрового тюнера 1316 и извлекает поток, содержащий данные программы, служащей объектом воспроизведения (просмотр объекта). Декодер 1317 MPEG декодирует аудиопакет, представляющий извлеченный поток, передает полученные аудиоданные на схему 1322 процессора аудиосигнала и также декодирует видеопакет, представляющий поток, и передает полученные видеоданные на схему 1318 процессора видеосигнала. Кроме того, декодер 1317 MPEG подает данные EPG (электронное расписание программ), извлеченные из MPEG-TS, на CPU 1332 через путь, не показанный на чертеже.
Телевизионный приемник 1300 использует упомянутые выше устройства 151, 401, 501 или 601 кодирования изображения в качестве декодера 1317 MPEG для декодирования видеопакетов таким способом. Соответственно, таким же способом, как в случае устройств 151 и 401 кодирования, декодер 1317 MPEG перед внутренним предсказанием переключает коэффициенты фильтра в соответствии с параметром квантования и режимом предсказания и выполняет процесс фильтрации соседних пикселей. Альтернативно, таким же образом, как в случае устройств 501 и 601 кодирования изображения, декодер 1317 MPEG управляет тем, выполнять или не выполнять процесс фильтрации соседних пикселей, выполняемый перед внутренним предсказанием, основываясь на флаге включения/выключения. Таким образом, эффективность кодирования может быть улучшена.
Видеоданные, переданные от декодера 1317 MPEG, таким же образом, как в случае видеоданных, переданных от видеодекодера 1315, подвергаются заданному процессу обработки в схеме 1318 видеопроцессора. Видеоданные, подвергнутые заданной обработке, затем накладываются на созданные видеоданные и т. д в схеме 1319 создания графики, по мере необходимости, подаются на панель 1321 дисплея через схему 1320 панели управления и содержание изображения отображается на экране.
Аудиоданные, переданные от декодера 1317 MPEG, таким же образом, как в случае аудиоданных, передаваемых от аудиосхемы 1314 A/D-преобразования, подвергаются заданной обработке в схеме 1322 аудиопроцессора. Аудиоданные, подвергнутые заданной обработке, затем подаются на схему 1324 аудиоусилителя через схему 1323 эхоподавления/аудиосинтеза и подвергаются процессу D/A-преобразования и процессу усиления. В результате этого, аудиосигнал, отрегулированный до заданного уровня, выводится через громкоговоритель 1325.
Кроме того, телевизионный приемник 1300 также содержит микрофон 1326 и схему 1327 A/D-преобразования.
Схема 1327 A/D-преобразования принимает аудиосигнал пользователя, полученный через микрофон 1326, предусмотренный в телевизионном приемнике 1300, служащий для аудиопереговоров. Схема 1327 A/D-преобразования подвергает принятый аудиосигнал A/D-преобразованию и передает полученные цифровые аудиоданные на схему 1323 эхоподавления/аудиосинтеза.
В случае, когда аудиоданные пользователя (пользователя A) телевизионного приемника 1300 были поданы от схемы 1327 A/D-преобразования, схема 1323 эхоподавления/аудиосинтеза выполняет подавление эха для аудиоданных пользователя А, взятых в качестве объекта. После подавления эха схема 1323 эхоподавления/аудиосинтеза выводит аудиоданные, полученные синтезом аудиоданных пользователя А, и другие аудиоданные и т.п. через громкоговоритель 1325, используя схему 1324 аудиоусилителя.
Дополнительно, телевизионный приемник 1300 также содержит аудиокодек 1328, внутреннюю шину 1329, SDRAM (синхронное динамическое оперативное запоминающее устройство) 1330, флэш-память 1331, CPU 1332, интерфейс (I/F) 1333 USB (универсальная последовательная шина) и сетевой интерфейс 1334.
Схема 1327 A/D-преобразования принимает аудиосигнал пользователя, полученный с помощью микрофона 1326, предусмотренного в телевизионном приемнике 1300, служащий для аудиопереговоров. Схема 1327 A/D-преобразования подвергает принятый аудиосигнал A/D-преобразованию и подает полученные цифровые аудиоданные на аудиокодек 1328.
Аудиокодек 1328 преобразует аудиоданные, поданные от схемы 1327 A/D-преобразования, в данные заданного формата для передачи через сеть и подает их на сетевой интерфейс 1334 через внутреннюю шину 1329.
Сетевой интерфейс 1334 соединяется с сетью через кабель, расположенный на сетевом терминале 1335. Сетевой интерфейс 1334 передает аудиоданные, переданные от аудиокодека 1328, на другое устройство, соединенное, например, с его сетью. Кроме того, сетевой интерфейс 1334 принимает через сетевой терминал 1335 аудиоданные, переданные от другого устройства, присоединенного к нему через сеть, и передает их на аудиокодек 1328, например, через внутреннюю шину 1329.
Аудиокодек 1328 преобразует аудиоданные, переданные от сетевого интерфейса 1334, в данные заданного формата и подает их на схему 1323 эхоподавления/аудиосинтеза.
Схема 1323 эхоподавления/аудиосинтеза выполняет подавление эхо-сигналов в аудиоданных, поданных от аудиокодека 1328, взятого в качестве объекта, и выводит аудиоданные, полученные посредством синтеза аудиоданных, и другие аудиоданные и т.п., на громкоговоритель 1325 через схему 1324 аудиоусилителя.
SDRAM 1330 хранит данные различного вида, необходимые для CPU 1332, выполняющего обработку.
Флэш-память 1331 хранит программу, которая должно выполнять CPU 1332. Программа, хранящаяся во флэш-памяти 1331, считывается CPU 1332 при заданной синхронизации, указывающей, когда активировать телевизионный приемник 1300 и т.п. Данные EPG, полученные через цифровую широковещательную передачу, данные, полученные от заданного сервера через сеть и т.д., также хранятся во флэш-памяти 1331.
Например, MPEG-TS, содержащая данные контента, полученные от заранее определенного сервера через сеть под управлением CPU 1332, хранится во флэш-памяти 1331. Флэш-память 1331 предоставляет MPEG-TS для них на декодер 1317 MPEG через внутреннюю шину 1329, например, под управлением CPU 1332.
Декодер 1317 MPEG обрабатывает MPEG-TS для них таким же образом, как в случае MPEG-TS, предоставленной цифровым тюнером 1316. Таким образом, телевизионный приемник 1300 принимает данные контента, содержащие видео-, аудио- и другие сигналы, через сеть, декодирует их, используя декодер 1317 MPEG, посредством чего видеоданные могут отображаться на экране, а аудиоданные могут быть выведены.
Кроме того, телевизионный приемник 1300 также содержит блок 1337 приема света для приема инфракрасного сигнала, переданный от удаленного контроллера 1351.
Блок 1337 приема света принимает инфракрасное излучение от удаленного контроллера 1351 и выводит управляющий код, представляющий содержание операции пользователя, полученно демодуляцией, на CPU 1332.
CPU 1332 выполняет программу, хранящуюся во флэш-памяти 1331, чтобы управлять всей работой телевизионного приемника 1300 в соответствии с управляющим кодом, поданным от блока 1337 приема света и т.д. CPU 1332 и блоки телевизионного приемника 1300 соединяется через тракт, не показанный на чертеже.
Интерфейс USB 1333 выполняет передачу/прием данных для внешнего устройства телевизионного приемника 1300, который присоединяется через кабель USB, установленный на терминале 1336 USB. Сетевой интерфейс 1334 подключается к сети через кабель, установленный на сетевом терминале 1335, также выполняет передачу/прием данных, кроме аудиоданных, для различных устройств, соединенных с сетью.
Телевизионный приемник 1300 использует устройства 151, 401, 501 или 601 декодирования изображения в качестве декодера 1317 MPEG, за счет чего эффективность кодирования может быть улучшена. В результате этого, телевизионный приемник 1300 может получить декодированное изображение с более высокой точностью из широковещательных радиосигналов, принятых через антенну, или данные контента, полученные через сеть, с более высокими скоростями и отображать их на экране.
На фиг. 47 приводится блок-схема, показывающая пример основной конфигурации сотового телефона, использующего устройство кодирования изображения и устройство декодирования изображения, к которым применено настоящее изобретение.
Сотовый телефон 1400, показанный на фиг. 47, содержит основной блок 1450 управления, выполненный с возможностью совокупного управления блоками, блок 1451 схемы источника электропитания, блок 1452 управления вводом операций, кодер 1453 изображения, интерфейсный блок 1454 фотокамеры, блок 1455 управления жидкокристаллического дисплея, декодер 1456 изображения, блок 1457 мультиплексирования/разделения, блок 1462 приема/воспроизведения, блок 1458 схемы модуляции/демодуляции и аудиокодек 1459. Они соединяются между собой через шину 1460.
Кроме того, сотовый телефон 1400 содержит рабочие клавиши 1419, фотокамеру 1416 на CCD (на устройствах с зарядовой связью), жидкокристаллический дисплей 1418, блок 1423 хранения данных, блок 1463 схемы передачи/приема, антенну 1414, микрофон (MIC) 1421 и громкоговоритель 1417.
После того, как прошел вызов и клавиша питания включена за счет операции пользователя, блок 1451 схемы источника электропитания активирует сотовый телефон 1400 в рабочем состоянии, подавая электропитание на блоки от аккумуляторной батареи.
Сотовый телефон 1400 выполняет различные операции, такие как передача/прием аудиосигнала, передача/прием электронной почты и данных изображения, фотографирование, запись данных и т.д. в различных режимах, таких как режим голосового вызова, режим передачи данных и т. д, основываясь на управлении, осуществляемом основным блоком 1450 управления, состоящим из CPU, ROM, RAM и т.д.
Например, в режиме голосового вызова сотовый телефон 1400 преобразует аудиосигнал, принятый микрофоном 1421, в данные цифрового аудиосигнала с помощью аудиокодека 1459, подвергает его обработке с расширением спектра в блоке 1458 схемы модуляции/демодуляции и подвергает его процессу цифро-аналогового преобразования и обработке с преобразованием частоты в блоке 1463 схемы передачи/приема. Сотовый телефон 1400 передает сигнал для передачи, полученный процессом его преобразования, на неизвестную базовую станцию через антенну 1414. Сигнал для передачи (аудиосигнал), переданный на базовую станцию, передается на сотовый телефон партнера по связи через телефонную сеть общего пользования.
Кроме того, например, в режиме голосового вызова сотовый телефон 1400 усиливает сигнал приема, принятый в антенне 1414, в блоке 1463 схемы передачи/приема, дополнительно подвергает его преобразованию частоты и аналого-цифровому преобразованию, подвергает процессу обратного сужения спектра в блоке 1458 схемы модуляции/демодуляции и преобразует его в аналоговый аудиосигнал с помощью аудиокодека 1459. Сотовый телефон 1400 выводит преобразованный и полученный аналоговый аудиосигнал через громкоговоритель 1417.
Дополнительно, например, в случае передачи электронной почты в режиме передачи данных сотовый телефон 1400 принимает текстовые данные электронной почты, введенные рабочими клавишами 1419 в блоке 1452 элемента управления операцией ввода. Сотовый телефон 1400 обрабатывает текстовые данные сообщения в основном блоке 1450 управления и выводит сообщение в виде изображения на экран жидкокристаллического дисплея 1418 через блок 1455 управления жидкокристаллическим дисплеем.
Кроме того, сотовый телефон 1400 создает данные электронной почты на основном блоке 1450 управления, основываясь на текстовых данных, принятых блоком 1452 управления операцией ввода, инструкции пользователя и т.д. Сотовый телефон 1400 подвергает данные электронной почты обработке с расширением спектра в блоке 1458 схемы модуляции/демодуляции и процессу цифро-аналогового преобразования и преобразования частоты в блоке 1463 схемы передачи/приема. Сотовый телефон 1400 передает сигнал для передачи, полученный посредством процесса преобразования, на неизвестную базовую станцию через антенну 1414. Сигнал для передачи (электронная почта), переданный на базовую станцию, передается в заданное место назначения через сеть, почтовый сервер и т.д.
Кроме того, например, в случае приема электронной почты в режиме передачи данных сотовый телефон 1400 принимает сигнал, переданный от базовой станции через антенну 1414, с помощью блока 1463 схемы передачи/приема, усиливает его и дополнительно подвергает процессу преобразования частоты и процессу аналого-цифрового преобразования. Сотовый телефон 1400 подвергает сигнал приема процессу обратного сужения спектра в блоке 1458 схемы модуляции/демодуляции, чтобы восстановить исходные данные электронной почты. Сотовый телефон 1400 отображает восстановленные данные электронной почты на жидкокристаллическом дисплее 1418 через блок 1455 управления жидкокристаллическим дисплеем.
Заметим, что сотовый телефон 1400 может записать (хранить) принятые данные электронной почты в блоке 1423 хранения данных посредством блока 1462 записи/воспроизведения.
Этот блок 1423 хранения данных является дополнительным перезаписываемым носителем. Блок 1423 хранения данных может быть полупроводниковой памятью, такой как RAM, встроенной флэш-памятью и т.п., может быть жестким диском или может быть съемным носителем, таким как магнитный диск, магнитооптический диск, оптический диск, USB-память, карта памяти и т.п. Само собой разумеется, что блок 1423 хранения данных может быть другим, помимо перечисленных.
Дополнительно, например, в случае передачи данных изображения в режиме передачи данных сотовый телефон 1400 создает данные изображения, создавая изображение в камере 1416 на CCD. Камера 1416 на CCD содержит CCD, служащее в качестве оптического устройства, такого как линза, диафрагма и т. д, и служащего в качестве фотоэлектрического устройства преобразования, которое получает изображение объекта, преобразует интенсивность принятого света в электрический сигнал и создает данные изображения для изображения предмета. Данные изображения подвергаются кодированию со сжатием в кодере 1453 изображения, используя заданный формат кодирования, например, такой как MPEG2, MPEG4 и т.п., с помощью интерфейса 1454 фотокамеры и, соответственно, данные изображения преобразуются в кодированные данные изображения.
Сотовый телефон 1400 использует упомянутые выше устройства 51, 351, 451 и 551 кодирования изображения в качестве кодера 1453 изображения для того, чтобы выполнить такой процесс. Соответственно, таким же образом, как для устройств 51 и 351 кодирования, кодер 1453 изображения устанавливает коэффициенты фильтра в соответствии с параметром квантования и режимом предсказания и до внутреннего предсказания выполняет процесс фильтрации соседних пикселей. Альтернативно, таким же образом, как с устройствами 451 и 551 кодирования изображения, кодер 1453 изображения управляет тем, выполнять или не выполнять процесс фильтрации соседних пикселей, выполняемый до внутреннего предсказания. Таким образом, эффективность кодирования может быть улучшена.
Заметим, что в это время, одновременно, сотовый телефон 1400 преобразует аудиосигнал, принятый микрофоном 1421 во время съемки камерой 1416 на CCD, из аналогового в цифровой в аудиокодеке 1459 и дополнительно кодирует его.
Сотовый телефон 1400 мультиплексирует кодированные данные изображения, полученные от кодера 1453 изображения, и цифровые аудиоданные, полученные от аудиокодека 1459, в блоке 1457 мультиплексирования/разделения, используя заранее определенный способ. Сотовый телефон 1400 подвергает мультиплексированные данные, полученные в результате этого, процессу расширения спектра в блоке 1458 схемы модуляции/демодуляции и подвергает их процессу цифро-аналогового преобразования и процессу преобразования частоты в блоке 1463 схемы передачи/приема. Сотовый телефон 1400 передает сигнал для передачи, полученный процессом преобразования, неизвестной базовой станции через антенну 1414. Сигнал для передачи (данные изображения), переданный на базовую станцию, передается партнеру по связи через сеть и т.п.
Заметим что, в случае, когда данные изображения не передаются, сотовый телефон 1400 может также отображать данные изображения, созданные в камере 1416 на CCD, на жидкокристаллическом дисплее 1418 через блок 1455 управления жидкокристаллическим дисплеем вместо кодера 1453 изображения.
Кроме того, например, в случае приема данных файла движущегося изображения, соединенного с простым веб-сайтом и т.п. в режиме передачи данных, сотовый телефон 1400 принимает сигнал, переданный от базовой станции, в блоке 1463 схемы передачи/приема через антенну 1414, усиливает, и дополнительно подвергает процессу преобразования частоты и процессу аналого-цифрового преобразования. Сотовый телефон 1400 подвергает принятый сигнал процессу обратного сужения спектра в блоке 1458 схемы модуляции/демодуляции, чтобы восстановить исходные мультиплексированные данные. Сотовый телефон 1400 разделяет мультиплексированные данные в блоке 1457 мультиплексирования/разделения на кодированные данные изображения и аудиоданные.
Сотовый телефон 1400 декодирует кодированные данные изображения в декодере 1456 изображения, используя формат декодирования, соответствующий заданному формату кодирования, такому как MPEG2, MPEG4 и т.п., создавая, таким образом, данные воспроизведения движущегося изображения, и отображает его на жидкокристаллическом дисплее 1418 через блок 1455 управления жидкокристаллическим дисплеем. Таким образом, данные движущегося изображения, содержащиеся в файле движущегося изображения, связанном с простым веб-сайтом, отображаются, например, на жидкокристаллическом дисплее 1418.
Сотовый телефон 1400 использует упомянутое выше устройство 151, 401, 501 или 601 декодирования изображения в качестве декодера 1456 изображения для выполнения такого процесса. Соответственно, таким же образом, как в случае устройств 151 и 401 декодирования изображения, декодер 1456 изображения переключает коэффициенты фильтра в соответствии с параметром квантования и режимом предсказания и перед внутренним предсказанием выполняет процесс фильтрации соседних пикселей. Альтернативно, таким же образом, как в случае устройств 501 и 601 декодирования изображения, декодер 1456 изображения управляет тем, выполнять ли или не выполнять процесс фильтрации соседних пикселей, выполняемый до внутреннего предсказания, основываясь на флаге включения/выключения. Таким образом, эффективность кодирования может быть улучшена.
В это время, одновременно, сотовый телефон 1400 преобразует цифровые аудиоданные в аналоговый аудиосигнал в аудиокодеке 1459 и выводит его через громкоговоритель 1417. Таким образом, например, воспроизводятся аудиоданные, содержащиеся в файле движущегося изображения, связанном с простым веб-сайтом.
Заметим, что таким же образом, как в случае электронной почты, сотовый телефон 1400, может записать (сохранить) принятые данные, связанные с простым веб-сайтом и т.п., в устройстве 1423 хранения данных посредством блока 1462 записи/ воспроизведения.
Кроме того, сотовый телефон 1400 анализирует отображаемый двумерный код, полученный камерой 1416 на CCD в основном блоке 1450 управления, посредством чего может быть получена информация, записанная в двумерном коде.
Дополнительно, сотовый телефон 1400 может осуществлять связь с внешним устройством через блок 1481 инфракрасной связи, используя инфракрасное излучение.
Сотовый телефон 1400 использует устройство 51, 351, 451 или 551 кодирования изображения в качестве кодера 1453 изображения, за счет чего, например, эффективность кодирования для кодированных данных, которые должны быть созданы кодированием данных изображения, полученных в камере 1416 на CCD, может быть улучшена. В результате, сотовый телефон 1400 может обеспечить другому устройству кодированные данные (данные изображения) с превосходной эффективностью кодирования.
Кроме того, сотовый телефон 1400 использует устройство 151, 401, 501 или 601 декодирования изображения в качестве декодера 1456 изображения, посредством чего изображение предсказания может быть создано с высокой точностью. В результате этого, сотовый телефон 1400 может получить декодированное изображение с более высокой точностью из файла движущегося изображения, связанного с простым веб-сайтом, и, например, отображать его на экране.
Заметим, что описание, приведенное до сих пор, было сделано для сотового телефона 1400, использующего фотокамеру 1416 на CCD, но сотовый телефон 1400 может использовать датчик изображения (CMOS-датчик изображения), использующий CMOS (комплементарная МОП-структура) вместо этой фотокамеры 1416 на CCD. В этом случае, также, сотовый телефон 1400 может отображать объект и создавать данные изображения для изображения объекта таким же образом, как в случае использования фотокамеры 1416 на CCD.
Кроме того, до сих пор описание было сделано в отношении сотового телефона 1400, но устройства 51, 351, 451 и 551 кодирования изображения и устройства 151, 401, 501 и 601 декодирования изображения могут применяться к любому виду устройства таким же образом, как в случае сотового телефона 1400, пока оно является устройством, имеющим ту же самую функцию получения изображения и функцию связи, как у сотового телефона 1400, например, такую как PDA (персональный цифровой секретарь), смарт-телефон, UMPC (ультрамобильный персональный компьютер), сетевая книга, персональный компьютер с размерами ноутбука и т.п.
На фиг. 48 приведена блок-схема примера основной конфигурации рекордера жесткого диска, который использует устройство кодирования изображения и устройство декодирования изображения, к которым применимо настоящее изобретение.
Рекордер 1500 жесткого диска (устройство записи HDD), показанный на фиг. 48, является устройством, которое хранит на встроенном жестком диске аудиоданные и видеоданные вещательной программы, включенной в широковещательные радиосигналы (телевизионные сигналы), принимаемые тюнером и переданные от спутника или наземной антенны и т.п., и предоставляет запоминаемые данные пользователю в моменты времени, соответствующие командам пользователя.
Рекордер 1500 жесткого диска может извлекать аудиоданные и видеоданные из широковещательных радиосигналов, декодировать их по мере необходимости и сохранять, например, на встроенном жестком диске. Кроме того, рекордер 1500 жесткого диска может также получать аудиоданные и видеоданные от другого устройства через сеть, декодировать их по мере необходимости и сохранять, например, на встроенном жестком диске.
Дополнительно, рекордер 1500 жесткого диска декодирует аудиоданные и видеоданные, записанные на встроенном жестком диске, подает их на монитор 1560 и, например, отображает изображение на экране монитора 1560. Кроме того, рекордер 1500 жесткого диска может выводить аудиоданные через громкоговоритель монитора 1560.
Рекордер 1500 жесткого диска декодирует аудиоданные и видеоданные, извлеченные из широковещательных радиосигналов, полученных через тюнер, или аудиоданные и видеоданные, полученные от другого устройства через сеть, подает их на монитор 1560 и, например, отображает изображение на экране монитора 1560. Кроме того, рекордер 1500 жесткого диска может выводить аудиоданные через громкоговоритель монитора 1560.
Само собой разумеется, что могут выполняться операции, отличные от описанных.
Как показано на фиг. 48, рекордер 1500 жесткого диска содержит блок 1521 приема, блок 1522 демодуляции, демультиплексор 1523, аудиодекодер 1524, видеодекодер 1525 и блок 1526 управления рекордером. Рекордер 1500 жесткого диска дополнительно содержит память 1527 данных EPG, память 1528 программ, рабочую память 1529, преобразователь 1530 дисплея, блок управления 1531 OSD (экранное меню), блок 1532 управления дисплеем, блок 1533 записи/воспроизведения, цифро-аналоговый преобразователь 1534 и блок 1535 связи.
Кроме того, преобразователь 1530 дисплея содержит видеокодер 1541. Блок 1533 записи/воспроизведения содержит кодер 1551 и декодер 1552.
Блок 1521 приема принимает инфракрасный сигнал от удаленного контроллера (не показан), преобразует его в электрический сигнал и выводит на блок 1526 управления рекордером. Блок 1526 управления рекордером содержит, например, микропроцессор и т.д. и выполняет различные типы обработки в соответствии с программой, хранящейся в памяти 1528 программ. В это время блок 1526 управления рекордером использует рабочую память 1529 в соответствии с необходимостью.
Блок 1535 связи, который соединяется с сетью, выполняет процесс связи с другим устройством через сеть. Например, блок 1535 связи управляется блоком управления рекордером, чтобы осуществлять связь с тюнером (не показан), и, в принципе, выводит на тюнер сигнал управления выбором канала.
Блок демодуляции 1522 демодулирует сигнал, полученный от тюнера, и выводит его на демультиплексор 1523. Демультиплексор 1523 разделяет данные, подаваемые от блока 1522 демодуляции 1522, на аудиоданные, видеоданные и данные EPG и выводит их на аудиодекодер 1524, видеодекодер 1525 и блок 1526 управления рекордером, соответственно.
Аудио декодер 1524 декодирует входные аудиоданные, например, используя формат MPEG, и выводит их на блок 1533 записи/воспроизведения. Видеодекодер 1525 декодирует входные видеоданные, например, используя формат MPEG, и выводит их на преобразователь 1530 дисплея. Блок 1526 управления рекордером обеспечивает подачу входных данных EPG в память 1527 данных EPG для сохранения.
Преобразователь 1530 дисплея кодирует видеоданные, подаваемые от видеодекодера 1525 или от блока 1526 управления рекордером, например, в видеоданные, соответствующие формату NTSC (Национальный Комитет по телевизионным стандартам), используя видеокодер 1541, и выводит их на блок 1533 записи/воспроизведения. Кроме того, преобразователь 1530 дисплея преобразует размер экрана видеоданных, подаваемых от видеодекодера 1525 или от блока 1526 управления рекордером, в размер, соответствующий размеру монитора 1560. Преобразователь 1530 дисплея дополнительно преобразует видеоданные, для которых размер экрана был преобразован в видеоданные, соответствующие формату NTSC, используя видеокодер 1541, преобразует их в аналоговый сигнал и выводит на блок 1532 управления дисплеем.
Блок 1532 управления дисплеем накладывает, под управлением блока 1526 управления рекордером, сигнал OSD с выхода блока 1531 управления OSD (экранное меню) на видеосигнал, поступающий на вход от преобразователя 1530 дисплея, и осуществляет вывод на дисплей монитора 1560 для отображения.
Кроме того, аудиоданные с выхода аудиодекодера 1524 преобразуются в аналоговый сигнал, используя цифро-аналоговый преобразователь 1534, и подаются на монитор 1560. Монитор 1560 выводит этот аудиосигнал через встроенный громкоговоритель.
Блок 1533 записи/воспроизведения содержит жесткий диск в качестве носителя записи, на который записываются видеоданные, аудиоданные и т.д.
Блок 1533 записи/воспроизведения кодирует аудиоданные, поданные от аудиодекодера 1524 с помощью кодера 1551, используя, например, формат MPEG. Кроме того, блок 1533 записи/воспроизведения кодирует видеоданные, поданные от видеокодера 1541 преобразователя 1530 дисплея кодером 1551, используя формат MPEG. Блок 1533 записи/воспроизведения синтезирует кодированные данные его аудиоданных и кодированные данные его видеоданных, используя мультиплексор. Блок 1533 записи/воспроизведения усиливает синтезируемые данные посредством кодирования канала, и записывает их данные на жестком диске, используя головку записи.
Блок 1533 записи/воспроизведения через головку воспроизведения воспроизводит данные, записанные на жестком диске, усиливает и разделяет их на аудиоданные и видеоданные, используя демультиплексор. Блок 1533 записи/воспроизведения декодирует аудиоданные и видеоданные декодером 1552, используя формат MPEG. Блок 1533 записи/воспроизведения преобразует декодированные аудиоданные из цифровой формы в аналоговую и выводит их на громкоговоритель монитора 1560. Кроме того, блок 1533 записи/воспроизведения преобразует декодированные видеоданные из цифровой формы в аналоговую и выводит их на дисплей монитора 1560.
Блок 1526 управления рекордером считывает самые последние данные EPG из памяти 1527 данных EPG, основываясь на инструкциях пользователя, указанных инфракрасным сигналом, поступающим от удаленного контроллера, который принимается через блок 1521 приема, и подает их на блок 1531 управления OSD. Блок 1531 управления OSD создает данные изображения, соответствующие вводу данные EPG, и выводит их на блок 1532 управления дисплеем. Блок 1532 управления дисплеем выводит видеоданные, поступившие от блока 1531 управления OSD, на дисплей монитора 1560 для отображения. Таким образом, на экране монитора 1560 отображается EPG (электронное расписание программ).
Кроме того, рекордер 1500 жесткого диска может получать различные типы данных, такие как видеоданные, аудиоданные, данные EPG и т.д., предоставляемые от другого устройства через сеть, такую как Интернет и т.п.
Блок 1535 связи управляется блоком 1526 управления рекордером, чтобы получить кодированные данные, такие как видеоданные, аудиоданные, данные EPG и т.д., переданные от другого устройства через сеть, и передать их на блок 1526 управления рекордером. Блок 1526 управления рекордером обеспечивает подачу кодированных данных полученных видеоданных и аудиоданных на блок 1533 записи/воспроизведения и сохраняет их, например, на жестком диске. В это время блок 1526 управления рекордером и блок 1533 записи/воспроизведения может выполнять обработку, такую как перекодирование и т.п. в соответствии с необходимостью.
Кроме того, блок 1526 управления рекордером декодирует кодированные данные полученных видеоданных и аудиоданных и обеспечивает подачу полученных видеоданных на преобразователь 1530 дисплея. Преобразователь 1530 дисплея обрабатывает таким же образом, как видеоданные, подаваемые от видеодекодера 1525, видеоданные, подаваемые от блока 1526 управления рекордером, и подает их на монитор 1560 через блок 1532 управления дисплеем для отображения.
Альтернативно, может быть организована структура, в которой в соответствии с этим отображением блок 1526 управления рекордером обеспечивает подачу декодированных аудиоданных на монитор 1560 через цифро-аналоговый преобразователь 1534 и выводит аудиоданные через громкоговоритель.
Дополнительно, блок 1526 управления рекордером декодирует кодированные данные, содержащиеся в полученных данных EPG, и обеспечивает подачу декодированных данных EPG в память 1527 данных EPG.
Рекордер 1500 жесткого диска, выполненный таким образом, использует устройство 151, 401, 501 или 601 декодирования изображения в качестве видеодекодера 1525, декодера 1552 и декодера, помещенного в блок 1626 управления рекордером. Соответственно, таким же образом, как для устройств 151 и 401 декодирования изображения, видеодекодер 1525, декодер 1552 и декодер, помещенный в блок 1526 управления рекордером, переключают коэффициенты фильтра в соответствии с параметром квантования и режимом предсказания и перед внутренним предсказанием выполняют процесс фильтрации. Альтернативно, таким же образом, как для устройств 501 и 601 декодирования изображения, видеодекодер 1525, декодер 1552 и декодер, помещенный в блок 1526 управления рекордером, управляют тем, чтобы выполнять или не выполнять процесс фильтрации соседних пикселей, выполняемый до внутреннего предсказания, основываясь на флаге включения/выключения. Таким образом, эффективность кодирования может быть улучшена.
Соответственно, рекордер 1500 жесткого диска может создавать изображение предсказания с высокой точностью. В результате этого, рекордер 1500 жесткого диска может получать декодированное изображение с более высокой точностью, например, из кодированных данных видеоданных, принимаемых через тюнер, кодированных данных видеоданных, считываемых с жесткого диска блока 1533 записи/воспроизведения или кодированных данных видеоданных, полученных через сеть, и отображать их на мониторе 1560.
Кроме того, рекордер 1500 жесткого диска использует устройство 51, 351, 451 или 551 кодирования изображения в качестве кодера 1551. Соответственно, таким же образом, как для устройств 51 и 351 кодирования изображения, кодер 1551 устанавливает коэффициенты фильтра в соответствии с параметром квантования и режимом предсказания и перед внутренним предсказанием выполняет процесс фильтрации соседних пикселей. Альтернативно, таким же образом, как для устройств 451 и 551 кодирования изображения, кодер 1551 управляет тем, выполнять или не выполнять перед внутренним предсказанием процесс фильтрации соседних пикселей. Таким образом, эффективность кодирования может быть улучшена.
Соответственно, рекордер 1500 жесткого диска может улучшить эффективность кодирования кодированных данных, которые должны, например, записываться на жесткий диск. В результате этого, рекордер 1500 жесткого диска может использовать область хранения жесткого диска более эффективным способом.
Заметим, что описание до сих пор делалось в отношении рекордера 1500 жесткого диска, чтобы записывать видеоданные и аудиоданные на жесткий диск, но, само собой разумеется, что может использоваться любой вид носителя записи. Например, даже для рекордера, в котором применяется носитель записи, отличный от жесткого диска, такой как флэш-память, оптический диск, видеолента и т.п., таким же образом, как в случае упомянутого выше рекордера 1500 жесткого диска, в нем могут быть применены устройства 51, 351, 451 и 551 кодирования изображения и устройства 151, 401, 501 и 601 декодирования изображения .
На фиг. 49 представлена блок-схема, показывающая пример основной конфигурации фотокамеры, использующей устройство декодирования изображения, и устройство кодирования изображения, к которому применимо настоящее изобретение.
Фотокамера 1600, показанная на фиг. 49, получает изображение объекта, отображает изображение объекта на жидкокристаллическом дисплее 1616 и записывает его на носителе 1633 записи в качестве данных изображения.
Блок 1611 линзы вводит свет (то есть, видеоизображение объекта) в устройство 1612 на CCD/CMOS. Устройство 1612 на CCD/CMOS является датчиком изображения, использующим CCD или CMOS, и далее преобразует интенсивность принятого света в электрический сигнал и подает этот сигнал на блок 1613 обработки сигнала фотокамеры.
Блок 1613 обработки сигнала фотокамеры преобразует электрический сигнал, подаваемый от устройства 1612 CCD/CMOS, в цветоразностные сигналы Y, Cr и Cb и подает их на блок 1614 обработки сигнала изображения. Блок 1614 обработки сигнала изображения, действуя под управлением контроллера 1621, подвергает сигнал изображения, поданный от блока 1613 обработки сигнала фотокамеры, заданной обработке изображения или кодирует сигнал изображения кодером 1641, используя, например, формат MPEG. Блок 1614 обработки сигнала изображения подает кодированные данные, созданные кодированием сигнала изображения, на декодер 1615. Дополнительно, блок 1614 обработки сигнала изображения получает данные для отображения, созданные через экранное меню (OSD) 1620, и подает их на декодер 1615.
С помощью упомянутой выше обработки блок 1613 обработки сигнала фотокамеры соответственно использует преимущества, даваемые DRAM (динамическая оперативная память) 1618, подключенной через шину 1617, чтобы хранить данные изображения, кодированные данные, кодированные данные, кодированные из изображения и т.д. в DRAM 1618 в соответствии с необходимостью.
Декодер 1615 декодирует кодированные данные, поданные от блока 1614 обработки сигналов изображения 1614, и подает полученные данные изображения (декодированные данные изображения) на жидкокристаллический дисплей 1616. Кроме того, декодер 1615 обеспечивает передачу данных для отображения, поданных от блока 1614 обработки сигналов изображения, на жидкокристаллический дисплей 1616. Жидкокристаллический дисплей 1616 синтезирует изображение декодированных данных изображения и изображение данных для отображения, переданных от декодера 1615, по мере необходимости, и отображает на экране синтезированное изображение.
Экранное меню 1620 выводит под управлением контроллера 1621 данные для отображения, такие, как экран с меню или значок и т.п., составленные из символов, знаков или фигур, на блок 1614 обработки сигнала изображения через шину 1617.
Основываясь на сигнале, указывающем контент, управляемый пользователем, использующим оперативный блок 1622, контроллер 1621 выполняет различные типы обработки, а также управляет блоком 1614 обработки сигнала изображения, DRAM 1618, внешним интерфейсом 1619, экранным меню 1620, приводом 1623 носителя и т.д. через шину 1617. Программа, данные и т.д., необходимые для контроллера 1621, выполняющего различные типы обработки, сохраняются во флэш-ROM 1624.
Например, контроллер 1621 может кодировать данные изображения, хранящиеся в DRAM 1618, или кодировать кодированные данные, хранящиеся в DRAM 1618, вместо блока 1614 обработки сигнала изображения и декодера 1615. В это время контроллер 1621 может выполнить процесс кодирования и декодирования, используя тот же самый формат в качестве формата кодирования и декодирования блока 1614 обработки сигнала изображения и декодера 1615, или может процесс кодирования и декодирования, используя формат, с которым не работают ни блок 1614 обработки сигнала изображения, ни декодер 1615.
Кроме того, например, в случае, когда от оперативного блока 1622 подана команда печати изображения, контроллер 1621 считывает данные изображения из RAM 1618 и подает их на принтер 1634, соединенный с внешним интерфейсом 1619 через шину 1617, для печати.
Дополнительно, например, в случае, когда от оперативного блока 1622 подана команда на запись изображения, контроллер 1621 считывает кодированные данные из DRAM 1618 и изображение передается через шину 1617 на носитель 1633 записи, установленный на привод 1623 носителя, для хранения.
Носитель 1633 записи, как вариант, является считываемым/перезаписываемым съемным носителем, например, таким как магнитный диск, магнитооптический диск, оптический диск, полупроводниковая память и т.п. Само собой разумеется, что носитель 1633 записи является также вариантным в отношении типа съемного носителя и, соответственно, может быть ленточным устройством или может быть диском или может быть картой памяти. Само собой разумеется, что носитель 1633 записи может быть бесконтактной картой интегральной схемой (IC) и т.п.
Альтернативно, привод 1623 носителя и носитель 1633 записи могут быть выполнены так, чтобы интегрироваться в нетранспортируемый носитель записи, например, такой как встроенный дисковод жесткого диска, SSD (твердотельный диск) и т.п.
Внешний интерфейс 1619 выполнен, например, как USB-терминал ввода-вывода и т.д. и соединяется с принтером 1634 в случае выполнения печати изображения. Кроме того, при необходимости, диск 1631 соединяется с внешним интерфейсом 1619, на которой устанавливается, при необходимости съемный носитель 1632, такой как магнитный диск, оптический диск или магнитооптический диск, и, в соответствии с необходимостью, компьютерная программа, считанная с него, устанавливается на флэш-ROM 1624.
Дополнительно, внешний интерфейс 1619 содержит сетевой интерфейс, который должен соединяться с заданной сетью, такой как LAN, Интернет и т.п. Например, в соответствии с командами от оперативного блока 1622, контроллер 1621 может считывать кодированные данные из DRAM 1618 и передавать их через внешний интерфейс 1619 к другому устройству, присоединенному через сеть. Кроме того, контроллер 1621 может получать через внешний интерфейс 1619 кодированные данные или отображать данные, подаваемые от другого устройства через сеть, и хранить их в DRAM 1618 или передавать их на блок 1614 обработки сигнала изображения.
Фотокамера 1600, таким образом, выполнена с возможностью использования устройства 151, 401, 501 или 601 декодирования изображения в качестве декодера 1615. Соответственно, таким же образом, как для устройств декодирования 151 и 401 декодирования изображения, декодер 1615 переключает коэффициенты фильтра в соответствии с параметром квантования и режимом предсказания и перед внутренним предсказанием выполняет процесс фильтрации соседних пикселей. Альтернативно, таким же образом, как для устройств 501 и 601 декодирования изображения, декодер 1615 управляет тем, чтобы выполнять или не выполнять процесс фильтрации соседних пикселей, выполняемый до внутреннего предсказания, основываясь на флаге включения/выключения. Таким образом, эффективность кодирования может быть улучшена.
Соответственно, камера 1600 может создавать изображение предсказания с высокой точностью. В результате этого, камера 1600 может получать декодированное изображение с более высокой точностью, например, из данных изображения, созданных в устройстве 1612 на CCD/CMOS, кодированные данные видеоданных, считанные из DRAM 1618 или с носителя 1633 записи, или кодированные данные видеоданных, полученные через сеть, и отображать их на LCD 1616.
Кроме того, фотокамера 1600 использует устройство 51, 351, 451 или 551 кодирования изображения в качестве кодера 1641. Соответственно, таким же образом как для устройства 51 и 351 кодирования изображения, кодер 1641 устанавливает коэффициенты фильтра в соответствии с параметром квантования и режимом предсказания и перед внутренним предсказанием выполняет процесс фильтрации соседних пикселей. Альтернативно, таким же образом, как для устройств 451 и 551 кодирования изображения, кодер 1641 управляет тем, чтобы выполнять или не выполнять перед внутренним предсказанием процесс фильтрации соседних пикселей. Таким образом, эффективность кодирования может быть улучшена.
Соответственно, фотокамера 1600 может улучшить эффективность кодирования кодированных данных, которые, например, должны быть записаны на жестком диске. В результате этого, фотокамера 1600 может использовать область хранения DRAM 1618 или носителя 1633 записи более эффективным способом.
Заметим, что способ декодирования устройств 151, 401, 501 и 601 декодирования изображения может применяться к процессу декодирования, который выполняет контроллер 1621. Точно также, способ кодирования устройств 51, 351, 451 и 551 кодирования изображения может применяться к процессу кодирования, который выполняет контроллер 1621.
Кроме того, данные изображения, которые получает камера 1600, могут быть данными движущегося изображения или неподвижного изображения.
Само собой разумеется, что устройства 51, 351, 451 и 551 кодирования изображения и устройства 151, 401, 501 и 601 декодирования изображения могут применяться к устройству или системе, отличным от упомянутых выше устройств.
Список ссылочных позиций
51 Устройство кодирования изображения
66 Блок кодирования без потерь
74 Блок внутреннего предсказания
75 Блок переключения фильтра интерполяции соседних пикселей
81 Блок установки соседних пикселей
82 Блок создания изображения предсказания
83 Блок определения оптимального режима предсказания
91 Буфер режима предсказания
92 Буфер параметра квантования
93 Блок настройки фильтра нижних частот
94 Блок коэффициентов кадра
111 Блок установки соседних пикселей
112 Блок создания изображения предсказания
113 Блок определения оптимального режима предсказания
121 Буфер режима предсказания
122 Блок вычисления оптимального фильтра
151 Устройство декодирования изображения
162 Блок декодирования без потерь
171 Блок внутреннего предсказания
172 Блок переключения фильтра интерполяции соседних пикселей
181 Блок создания изображения предсказания
182 Блок установки соседних пикселей
191 Буфер режима предсказания
192 Буфер параметра квантования
193 Блок настройки фильтра нижних частот
194 Память коэффициентов фильтра
202 Блок настройки фильтра нижних частот
251 Обучающее устройство
261 Блок вычисления для фильтра интерполяции соседних пикселей
271 Блок хранения коэффициентов фильтра
351 Блок кодирования изображения
361 Блок предсказания второго порядка
362 Блок переключения фильтра интерполяции соседних пикселей
401 Блок декодирования изображения
411 Блок предсказания второго порядка
412 Блок переключения фильтра интерполяции соседних пикселей
451 Устройство кодирования изображения
461 Блок управления фильтром интерполяции соседних пикселей
501 Устройство декодирования изображения
511 Блок управления фильтром интерполяции соседних пикселей
551 Устройство кодирования изображения
561 Блок управления фильтром интерполяции соседних пикселей
601 Устройство декодирования изображения
611 Блок управления фильтром интерполяции соседних пикселей
название | год | авторы | номер документа |
---|---|---|---|
УСТРОЙСТВО И СПОСОБ ОБРАБОТКИ ИЗОБРАЖЕНИЙ | 2010 |
|
RU2542945C2 |
УСТРОЙСТВО И СПОСОБ ОБРАБОТКИ ИЗОБРАЖЕНИЙ | 2014 |
|
RU2665885C2 |
ОКНО ОГРАНИЧЕННОГО ДОСТУПА К ПАМЯТИ ДЛЯ УТОЧНЕНИЯ ВЕКТОРА ДВИЖЕНИЯ | 2018 |
|
RU2761511C2 |
УСТРОЙСТВО ОБРАБОТКИ ИЗОБРАЖЕНИЙ И СПОСОБ ВЫПОЛНЕНИЯ УСТРАНЕНИЯ БЛОЧНОСТИ С ОПТИМИЗАЦИЕЙ КАЧЕСТВА | 2019 |
|
RU2793920C2 |
СПОСОБ И УСТРОЙСТВО ОБРАБОТКИ ИЗОБРАЖЕНИЯ | 2010 |
|
RU2547634C2 |
УРОВНИ ОГРАНИЧЕНИЯ ДЛЯ НЕЛИНЕЙНОГО АДАПТИВНОГО КОНТУРНОГО ФИЛЬТРА | 2020 |
|
RU2818228C2 |
СПОСОБ ДЕКОДИРОВАНИЯ ВИДЕОСИГНАЛА | 2012 |
|
RU2628157C1 |
СПОСОБ И УСТРОЙСТВО ОБРАБОТКИ ИЗОБРАЖЕНИЯ | 2010 |
|
RU2665877C2 |
СПОСОБ ДЕКОДИРОВАНИЯ ВИДЕОСИГНАЛА | 2012 |
|
RU2628153C1 |
СПОСОБ ДЕКОДИРОВАНИЯ ВИДЕОСИГНАЛА | 2012 |
|
RU2628160C1 |
Изобретение относится к области обработки изображений. Технический результат заключается в удалении шумов в зависимости от изображений и битовых скоростей, повышении эффективности предсказания. Технический результат достигается за счет выбора, из множества блоков различных размеров, блока заданного размера в качестве текущего блока для внутреннего предсказания, выполнения процесса фильтрации на соседних пикселях, примыкающих к текущему блоку для внутреннего предсказания, с использованием коэффициентов фильтра со значениями, установленными в соответствии с размером блока для текущего блока для внутреннего предсказания, управления процессом фильтрации, с тем чтобы выполнять включение или отключение процесса фильтрации в отношении соседних пикселей на основании номера режима для режима внутреннего предсказания, выполнения внутреннего предсказания для текущего пикселя в текущем блоке с использованием соседних пикселей в качестве опорных пикселей для внутреннего предсказания для генерирования изображения предсказания, кодирования данных изображения с использованием изображения предсказания. 8 н. и 14 з.п. ф-лы, 49 ил.
1. Устройство обработки изображения, содержащее:
блок выбора, выполненный с возможностью выбора, из множества блоков различных размеров, блока заданного размера в качестве текущего блока для внутреннего предсказания;
блок фильтра, выполненный с возможностью выполнения процесса фильтрации на соседних пикселях, примыкающих к текущему блоку для внутреннего предсказания, с использованием коэффициентов фильтра со значениями, установленными в соответствии с размером блока для текущего блока для внутреннего предсказания;
блок управления фильтром, выполненный с возможностью управления процессом фильтрации, с тем чтобы выполнять включение или отключение процесса фильтрации в отношении соседних пикселей на основании номера режима для режима внутреннего предсказания;
блок внутреннего предсказания, выполненный с возможностью выполнения внутреннего предсказания для текущего пикселя в текущем блоке с использованием соседних пикселей в качестве опорных пикселей для внутреннего предсказания для генерирования изображения предсказания; и
блок кодирования, выполненный с возможностью кодирования данных изображения с использованием изображения предсказания,
при этом блок выбора, блок фильтра, блок управления фильтром, блок внутреннего предсказания и блок кодирования реализованы посредством по меньшей мере одного процессора.
2. Устройство обработки изображения по п. 1, дополнительно содержащее:
блок установки, выполненный с возможностью установки коэффициентов фильтра в соответствии с размером блока для текущего блока для внутреннего предсказания,
при этом блок установки реализован посредством по меньшей мере одного процессора.
3. Устройство обработки изображения по п. 1, в котором различные размеры включают в себя 4x4, 8x8, 16x16 и 32x32.
4. Устройство обработки изображения по п. 1, в котором соседние пиксели не входят в состав текущего блока.
5. Способ обработки изображения, содержащий этапы, на которых:
выбирают, из множества блоков различных размеров, блок заданного размера в качестве текущего блока для внутреннего предсказания;
выполняют процесс фильтрации на соседних пикселях, примыкающих к текущему блоку для внутреннего предсказания, с использованием коэффициентов фильтра со значениями, установленными в соответствии с размером блока для текущего блока для внутреннего предсказания;
управляют процессом фильтрации, с тем чтобы выполнять включение или отключение процесса фильтрации в отношении соседних пикселей на основании номера режима для режима внутреннего предсказания;
выполняют внутреннее предсказание для текущего пикселя в текущем блоке с использованием соседних пикселей в качестве опорных пикселей для внутреннего предсказания для генерирования изображения предсказания;
кодируют данные изображения с использованием изображения предсказания.
6. Способ обработки изображений по п. 5, в котором различные размеры включают в себя 4x4, 8x8, 16x16 и 32x32.
7. Энергонезависимый считываемый компьютером носитель данных, имеющий реализованную на нем программу, которая при исполнении компьютером вызывает выполнение компьютером способа обработки изображений, содержащего этапы, на которых:
выбирают, из множества блоков различных размеров, блок заданного размера в качестве текущего блока для внутреннего предсказания;
выполняют процесс фильтрации на соседних пикселях, примыкающих к текущему блоку для внутреннего предсказания, с использованием коэффициентов фильтра со значениями, установленными в соответствии с размером блока для текущего блока для внутреннего предсказания;
управляют процессом фильтрации, с тем чтобы выполнять включение или отключение процесса фильтрации в отношении соседних пикселей на основании номера режима для режима внутреннего предсказания;
выполняют внутреннее предсказание для текущего пикселя в текущем блоке с использованием соседних пикселей в качестве опорных пикселей для внутреннего предсказания для генерирования изображения предсказания;
кодируют данные изображения с использованием изображения предсказания.
8. Энергонезависимый считываемый компьютером носитель данных по п. 7, в котором различные размеры включают в себя 4x4, 8x8, 16x16 и 32x32.
9. Устройство обработки изображений, содержащее:
схему, выполненную с возможностью
выбора, из множества блоков различных размеров, блока заданного размера в качестве текущего блока для внутреннего предсказания;
выполнения процесса фильтрации на соседних пикселях, примыкающих к текущему блоку для внутреннего предсказания, с использованием коэффициентов фильтра со значениями, установленными в соответствии с размером блока для текущего блока для внутреннего предсказания;
управления процессом фильтрации, с тем чтобы выполнять включение или отключение процесса фильтрации в отношении соседних пикселей на основании номера режима для режима внутреннего предсказания;
выполнения внутреннего предсказания для текущего пикселя в текущем блоке с использованием соседних пикселей в качестве опорных пикселей для внутреннего предсказания для генерирования изображения предсказания; и
кодирования данных изображения с использованием изображения предсказания.
10. Устройство обработки изображения по п. 9, в котором схема дополнительно выполнена с возможностью
установки коэффициентов фильтра в соответствии с размером блока для текущего блока для внутреннего предсказания.
11. Устройство обработки изображения по п. 9, в котором различные размеры включают в себя 4x4, 8x8, 16x16 и 32x32.
12. Устройство обработки изображения, содержащее:
блок фильтра, выполненный с возможностью выполнения процесса фильтрации на соседних пикселях, примыкающих к текущему блоку для внутреннего предсказания, с использованием коэффициентов фильтра со значениями, установленными в соответствии с размером блока для текущего блока для внутреннего предсказания;
блок управления фильтром, выполненный с возможностью управления процессом фильтрации, с тем чтобы выполнять включение или отключение процесса фильтрации в отношении соседних пикселей на основании режима внутреннего предсказания;
блок внутреннего предсказания, выполненный с возможностью выполнения внутреннего предсказания для текущего пикселя в текущем блоке с использованием соседних пикселей в качестве опорных пикселей для внутреннего предсказания для генерирования изображения предсказания; и
блок декодирования, выполненный с возможностью декодирования данных изображения с использованием изображения предсказания,
причем блок управления фильтром выполнен с возможностью определения, включен или отключен процесс фильтрации в отношении соседних пикселей, на основе номера режима для режима внутреннего предсказания,
при этом блок фильтра, блок управления фильтром, блок внутреннего предсказания и блок кодирования реализованы посредством по меньшей мере одного процессора.
13. Устройство обработки изображения по п. 12, дополнительно содержащее:
блок установки, выполненный с возможностью установки значений коэффициентов фильтра в соответствии с размером блока для текущего блока для внутреннего предсказания,
при этом блок установки реализован посредством по меньше мере одного процессора.
14. Устройство обработки изображения по п. 12, в котором размер блока для текущего блока включает в себя размеры 16x16 или 32x32.
15. Устройство обработки изображения по п. 12, в котором соседние пиксели не входят в состав текущего блока.
16. Способ обработки изображения, содержащий этапы, на которых:
выполняют процесс фильтрации на соседних пикселях, примыкающих к текущему блоку для внутреннего предсказания, с использованием коэффициентов фильтра со значениями, установленными в соответствии с размером блока для текущего блока для внутреннего предсказания;
управляют процессом фильтрации, с тем чтобы выполнять включение или отключение процесса фильтрации в отношении соседних пикселей на основании режима внутреннего предсказания;
выполняют внутреннее предсказание для текущего пикселя в текущем блоке с использованием соседних пикселей в качестве опорных пикселей для внутреннего предсказания для генерирования изображения предсказания; и
декодируют кодированные данные изображения с использованием изображения предсказания,
при этом определяют, включен или отключен процесс фильтрации в отношении соседних пикселей, на основе номера режима для режима внутреннего предсказания.
17. Способ обработки изображения по п. 16, в котором размер блока для текущего блока включает в себя размеры 16x16 или 32x32.
18. Энергонезависимый считываемый компьютером носитель данных, имеющий реализованную на нем программу, которая при исполнении компьютером вызывает выполнение компьютером способа обработки изображений, содержащего этапы, на которых:
выполняют процесс фильтрации на соседних пикселях, примыкающих к текущему блоку для внутреннего предсказания, с использованием коэффициентов фильтра со значениями, установленными в соответствии с размером блока для текущего блока для внутреннего предсказания;
управляют процессом фильтрации, с тем чтобы выполнять включение или отключение процесса фильтрации в отношении соседних пикселей на основании режима внутреннего предсказания;
выполняют внутреннее предсказание для текущего пикселя в текущем блоке с использованием соседних пикселей в качестве опорных пикселей для внутреннего предсказания для генерирования изображения предсказания; и
декодируют кодированные данные изображения с использованием изображения предсказания,
при этом определяют, включен или отключен процесс фильтрации в отношении соседних пикселей, на основе номера режима для режима внутреннего предсказания.
19. Энергонезависимый считываемый компьютером носитель данных по п. 18, в котором размер блока для текущего блока включает в себя размеры 16x16 или 32x32.
20. Устройство обработки изображения, содержащее:
схему, выполненную с возможностью
выполнения процесса фильтрации на соседних пикселях, примыкающих к текущему блоку для внутреннего предсказания, с использованием коэффициентов фильтра со значениями, установленными в соответствии с размером блока для текущего блока для внутреннего предсказания;
управления процессом фильтрации, с тем чтобы выполнять включение и отключение процесса фильтрации в отношении соседних пикселей на основании режима внутреннего предсказания;
выполнения внутреннего предсказания для текущего пикселя в текущем блоке с использованием соседних пикселей в качестве опорных пикселей для внутреннего предсказания для генерирования изображения предсказания; и
декодирования данных изображения с использованием изображения предсказания,
причем схема выполнена с возможностью определения, включен или отключен процесс фильтрации в отношении соседних пикселей, на основе номера режима для режима внутреннего предсказания,
21. Устройство обработки изображения по п. 20, в котором схема дополнительно выполнена с возможностью
установки коэффициентов фильтра в соответствии с размером блока для текущего блока для внутреннего предсказания.
22. Устройство обработки изображения по п. 21, в котором размер блока для текущего блока включает в себя размеры 16x16 или 32x32.
US 5822024 A, 13.10.1998 | |||
Амортизатор | 1983 |
|
SU1137267A1 |
Лабораторный фильтр | 1988 |
|
SU1599052A1 |
EP 1971135 A1, 17.09.2008 | |||
СПОСОБ И СООТВЕТСТВУЮЩЕЕ УСТРОЙСТВО ДЛЯ ФИЛЬТРАЦИИ ЦИФРОВЫХ ВИДЕОИЗОБРАЖЕНИЙ | 2006 |
|
RU2358410C2 |
Авторы
Даты
2019-05-31—Публикация
2018-08-07—Подача