Классификация контента для обработки мультимедийных данных

Иллюстрации

Показать все

Изобретение относится к области обработки мультимедийных данных посредством алгоритмов сжатия для анализа, классификации, определения объема и представления мультимедийных данных на основании контента мультимедийных данных. Техническим результатом является создание усовершенствованного способа классификации изображений. Указанный технический результат достигается тем, что предложено устройство и способ для обработки мультимедийных данных, таких как, например, видеоданные, звуковые данные, или и видео- и звуковые данные для кодирования, используя определенную классификацию контента. Обработка мультимедийных данных включает в себя определение сложности мультимедийных данных, классификацию мультимедийных данных на основании определенной сложности, и определение скорости передачи в битах для кодирования мультимедийных данных на основании их классификации. Сложность может включать в себя компонент пространственной сложности и компонент временной сложности мультимедийных данных. Мультимедийные данные классифицируют, используя классификации контента, которые основаны на значении визуального качества для просмотра мультимедийных данных, используя пространственную сложность, временную сложность или как пространственную сложность, так и временную сложность. 13 н. и 98 з.п. ф-лы, 12 ил.

Реферат

Испрашивание приоритета согласно параграфу 119 раздела 35 Свода законов США

Настоящая заявка согласно параграфу 119 раздела 35 Свода законов США испрашивает приоритет предварительной заявки № 60/660,677, поданной 10 марта 2005, и переданной ее правопреемнику и тем самым явно включенной в настоящее описание по ссылке.

Область техники

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

Описание уровня техники

Широко распространенное использование Интернет и беспроводного обмена увеличило потребности в мультимедийных услугах, которые передают в виде потока аудиовизуальную информацию по Интернет и мобильным/беспроводным каналам. В сетях на основе Интернет протокола (IP) мультимедийные данные могут быть обеспечены сервером и могут быть переданы в виде потока одним или более использующими проводную или беспроводную связь клиентами. Проводные соединения включают в себя соединения модемной связи, цифровой сети с интеграцией служб (ISDN), кабельные, с протоколами цифровой абонентской линии (все вместе называемые как xDSL), на оптическом волокне, локальные сети (LAN), глобальные сети (WAN) и другие. Электронные устройства, использующие беспроводные соединения включают в себя телефоны (например, сотовые телефоны), персональные цифровые ассистенты (PDA), карманные и переносные компьютеры и другие. В большинстве случаев, если не во всех этих применениях, требования к полосе частот и/или ограничения требуют, чтобы мультимедийная обработка данных использовала кодер источника, включающий в себя алгоритмы сжатия мультимедийной информации, чтобы анализировать, определять количество и представлять мультимедийные данные для передачи максимального объема информации, расходуя "минимальное" количество битов. Характеристики таких алгоритмов изменяются значительно, что ведет к значительным изменениям в их работе (например, эффективности сжатия и скорости передачи в битах). Характеристики обработки мультимедийной информации, использующей алгоритмы сжатия, могут значительно изменяться на основании контента, что может вести к значительным изменениям в их работе (например, эффективности сжатия и скорости передачи в битах).

Некоторые схемы обработки мультимедийных данных используют некоторые типы информации, чтобы классифицировать мультимедийные данные. Как правило, алгоритмы классификации изображения основаны на некоторой форме способов сегментации изображения. Алгоритмы кластеризации изображения были предложены в MPEG для MPEG-7 (кластеризация фотографий). Алгоритмы классификации изображений, в настоящее время предложенные и описанные в литературе, были основаны на математических и статистических аспектах мультимедийных данных. Усовершенствованные способы и устройства для обработки и кодирования мультимедийных данных могут иметь широкий диапазон приложений как в проводных, так и беспроводных обменах, и будет выгодным использовать и/или изменять характеристики такой обработки, так чтобы ее особенности могли быть использованы в улучшении существующих продуктов и создании новых продуктов, которые еще не разработаны.

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

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

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

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

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

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

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

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

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

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

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

Фиг. 3 есть иллюстрация примера процесса создания P кадра в MPEG-4,

Фиг. 4 изображает блок-схему компонента классификации контента,

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

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

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

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

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

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

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

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

Подробное описание

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

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

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

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

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

Передача мультимедийных данных

Мультимедийные данные, переданные на клиентское устройство, обычно сжимаются. Пара стандартов кодирования видео, известные как MPEG-x и H.26x, описывают обработку данных и методики манипуляции (называемые здесь как смешанное кодирование), которые хорошо подходят для сжатия и доставки видео-, аудио- и другой информации, используя способы кодирования источника с фиксированной или переменной длиной. В частности, вышеупомянутые стандарты и другие стандарты и методики смешанного кодирования сжимают, в качестве иллюстрации, мультимедийную информацию, используя способы внутрикадрового (интракадрового) кодирования (такие как, например, кодирование длин серий, кодирование по Хаффману и т.п.) и методы межкадрового (интеркадрового) кодирования (такие как, например, кодирование с прямым и обратным предсказанием, с компенсацией движения и т.п.). В частности, в случае системы обработки мультимедийной информации системы смешанного кодирования мультимедийной информации характеризуются основанным на предсказании кодированием со сжатием мультимедийных кадров с внутри(интра)- и/или меж(интер)кадровым кодированием компенсации движения. Кодирование, основанное, по меньшей мере частично, на классификации контента, может быть встроено в такие алгоритмы сжатия, чтобы дополнительно оптимизировать обработку мультимедийной информации. Хотя примеры, описанные здесь, записаны для стандартов MPEG и H.26x кодирования видео, аналогичное использование других стандартов кодирования видео также применимо.

Интракадровое кодирование относится к кодированию изображения (поля или кадра) независимо от любого другого изображения, но это интракодированное изображение может использоваться как основа для других изображений. Термины интракадр, интракодированный кадр и I кадр - все являются примерами видео-объектов, сформированных с помощью интракодирования (внутрикадрового кодирования), которые используются по всей настоящей заявке.

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

Методика, известная как масштабируемое кодирование, может разделять интракодированные изображения и различные интеркодированные изображения (такие как P-кадры или B-кадры) на различные уровни в потоке битов, такие как, например, базовый уровень и уровень расширения. Масштабируемое кодирование является полезным в динамических каналах, где масштабируемые потоки битов могут быть адаптированы для согласования флуктуаций в полосе частот в сети. В каналах, подверженных ошибкам, масштабируемое кодирование может добавлять робастность посредством неодинаковой защиты от ошибок базового уровня и уровня расширения. Лучшая защита от ошибок может применяться к более важному уровню.

Кодирование мультимедийных данных

Фиг. 1 является блок-схемой общей системы связи для классификации контента мультимедийных данных, кодирования, передачи и декодирования таких данных. Система 100 включает в себя устройство 105 кодера и устройство 110 декодера. Устройство 105 кодера включает в себя компонент 185 кодера, который включает в себя компонент 115 интракодера, и компонент 120 прогнозирующего кодера. Устройство 105 кодера также включает в себя компонент 130 памяти, компонент 175 передачи, и компонент 190 классификатора контента. Устройство 105 кодера способно принимать данные из внешнего источника 135 с использованием логики передачи, содержащейся в компоненте 175 передачи. Внешний источник 135 может быть, например, внешней памятью, Интернет-устройством выдачи данных живого видео и/или аудио, и прием данных может включать в себя проводную и/или беспроводную связь. Данные, содержащиеся во внешнем источнике 135, могут быть представлены в необработанном формате (не закодированы) или в закодированном состоянии. Компонент 115 интракодера используется для кодирования интракодированных частей кадров (секции, макроблоки и подмакроблоки). Компонент 120 прогнозирующего кодера используется для кодирования предсказанных частей кадров, включая в себя прямое предсказание, обратное предсказание и двунаправленное предсказание. После кодирования закодированные кадры сохраняют в компоненте 130 памяти или внешней памяти. Внешняя память может содержаться во внешнем источнике 135 или отдельном компоненте памяти (не показан).

Устройство 105 кодера включает в себя процессор 187, который находится в связи с компонентом 130 памяти и одним или более другими компонентами в устройстве 105 кодера. Процессор 187 может выполнять обработку для любого из других компонентов кодера и может содержать основной процесс кодирования. В некоторых вариантах осуществления процессор 187 может не быть отдельным компонентом (как показано), но вместо этого функциональные возможности процессора могут быть включены в один или более других компонентов 105 кодера.

Компонент 175 передачи содержит логику, используемую для передачи (Tx) данных в сеть 140. Сеть 140 может быть частью проводной системы, такой как телефон, кабель и волоконно-оптической или беспроводной системой. В беспроводном случае системы связи сеть 140 может содержать, например, часть системы связи множественного доступа с кодовым разделением каналов (CDMA или CDMA2000) или, альтернативно, система может быть системой множественного доступа с частотным разделением (FDMA), системой мультиплексирования с ортогональным делением частоты (OFDM), системой множественного доступа с временным разделением каналов (TDMA) такой, как GSM /GPRS (Системы пакетной радиосвязи общего пользования)/EDGE (расширенная среда GSM передачи данных) или технологией мобильной телефонной связи TETRA (Наземной магистральной радиопередачи) для сферы услуг, системой широкополосной системой множественного доступа с кодовым разделением каналов (WCDMA), системой высокоскоростной передачи в битах (1xEV-DO или 1xEV-DO Gold мультивещания), или в общем случае - любой системой беспроводной связи, использующая комбинацию методик. Закодированные кадры передают (Tx) по сети 140. Процессы кодирования, выполняемые устройством 105 кодера, более подробно описаны ниже.

Компонент 190 классификации контента содержит логику для определения классификации контента данных мультимедийных данных, принятых из внешнего источника 135. Чтобы классифицировать мультимедийные данные, может использоваться человеческая визуальная модель, чтобы количественно определить чувствительность человеческого глаза к возмущениям в яркости визуального сигнала относительно его пространственного и/или временного контекста в изображении и/или последовательности изображений движения. Пространственные и временные маскирующие эффекты глаза также учитываются. Один аспект включает в себя использование алгоритмов оценки движения или согласования блоков для представления временных аспектов видео. Информация, относящаяся к мультимедийным данным, например пространственным и временным значениям сложности видеоданных, может быть определена одним или более из компонентов 105 кодера и использованная вместе с воспринимаемостью пространства и эффектов движения в видео может быть использована для классификации контента видеоданных на две или больше категорий. Такая классификация может использоваться в алгоритмах пред/постобработки и сжатия (например обнаружение изменения сцены, управление скоростью передачи, FRUC). Классификация контента обеспечивает кодер 105 надежной оценкой - какого типа контент ожидать в поступающих видеоданных (например, суперкадре), так что кодер 105 может определять соответствующее распределение скорости передачи в битах для достижения конкретного уровня визуально воспринятого качества на основании классификации контента и для других целей принятия решения о типе кадра. Суперкадр является набором данных аудиовизуальных данных для заранее определенного периода или окна времени, обычно равного одной секунде имеющих значение данных, которые используются в качестве единицы для определения класса контента, передачи и для любых других целей. Классификации контента могут быть основаны на характеристиках мультимедийных данных, как они воспринимаются человеческим глазом, например пространственной сложности и временной сложности. Алгоритмы обработки мультимедийной информации могут быть оптимизированы для различных типов контента и обеспечивать стабильность и управление по отношению к их эффективности в кодировании и передаче мультимедийных данных.

Компонент 185 кодера может выдавать информацию обработки (например, макроблоков) для использования компонентом 190 классификации контента. Например, компонент 185 кодера может вычислять информацию из мультимедийных данных, включающую в себя метрику визуальной чувствительности человека, такую как значение Dcsat, значение нормы контраста, векторы движения (MV), и сумму абсолютных пиксельных разностей (SAD). Компонент 185 кодера может сохранять эту информацию в компоненте 130 памяти, так чтобы она была доступна для извлечения компонентом 190 классификации контента для определения пространственной и временной сложности мультимедийных данных, определения данных текстуры и движения, и затем определения результирующей классификации контента. В другом аспекте компонент 190 классификации контента или другой компонент, такой как процессор 187, вычисляет по меньшей мере часть этой информации из мультимедийных данных.

Процесс декодирования

Устройство 110 декодера содержит компоненты, аналогичные некоторым из компонентов в устройстве 105 кодера, включая в себя компонент 145 интра(внутреннего)декодера, компонент 150 прогнозирующего декодера, компонент 160 памяти, процессор 167, и компонент 180 связи. Устройство 110 декодера принимает закодированные данные, которые были переданы по сети 140 или от внешней памяти 165. Компонент 180 связи содержит логику, используемую для приема (Rx) закодированных данных с помощью сети 140, а также логику для приема закодированных данных от внешней памяти 165. Внешней памятью 165 может быть, например, внешнее ОЗУ или ПЗУ, или удаленный сервер. Компонент 145 интрадекодера используется, чтобы декодировать интракодированные данные. Компонент 150 прогнозирующего декодера используется для декодирования интеркодированных данных. Процессор 167 находится в связи с компонентом 160 памяти и одним или более другими компонентами в устройстве 110 декодера. Процессор 167 может выполнять обработку для любого из других компонентов декодера и может содержать главный процесс декодирования. Компонент 150 прогнозирующего декодера декодирует как P кадры (с прямым и обратным предсказанием), так и B кадры. Те же самые подкомпоненты, используемые для декодирования P кадров, могут использоваться последовательно, чтобы декодировать B кадры со множеством эталонов (опорных кадров). Множество опорных кадров для B кадров могут быть опорными кадрами в прямом и обратном направлении, оба в одном и том же опорном кадре, оба в отдельных опорных кадрах в прямом направлении или оба в опорных кадрах в обратном направлении.

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

Пример кодирования - MPEG

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

Фиг. 2 является диаграммой, иллюстрирующей обычный поток данных MPEG-4.

Простой Конфигурации, который изображает зависимости кадров для группы изображений (ГИ, GOP). ГИ 10 состоит из начального I кадра 12, с последующими несколькими P кадрами 14 с прямым предсказанием. Из-за зависимости P кадров от предыдущего I или P кадра, потеря любого из P кадров 14 может привести к потере информации, которая может быть критической при декодировании других P кадров. Потеря или удаление P кадра может приводить, например, к дрожанию видео или неспособности декодера продолжать декодирование следующего I кадра 16, который маркирует начало следующей ГИ.

P кадры (или любые интеркодированные секции) могут использовать временную избыточность между областью в текущем изображении и областью предсказания с наилучшим соответствием в опорном изображении. Разность между текущей областью и областью предсказания с наилучшим соответствием известна как остаточная ошибка (или ошибка предсказания). Местоположение области предсказания с наилучшим соответствием в опорном кадре может быть закодировано в векторе движения. Процессор 167 может выполнять обработку для любого из других компонентов 110 декодера и может содержать главный процесс декодирования. В некоторых вариантах осуществления процессор 167 может не быть отдельным компонентом, но вместо этого функциональные возможности процессора могут быть включены в один или более других компонентов 110 декодера.

Фиг. 3 является иллюстрацией примера процесса создания P кадра в, например, MPEG-4. Процесс 300 включает в себя текущее изображение 305, составленное из 5×5 макроблоков, где количество макроблоков в этом примере является произвольным. Макроблок является группой связанных пикселей, и в этом примере состоит из 16×16 пикселей. Пиксели могут быть определены 8-битным значением (Y) яркости и двумя 8-битными значениями (Cr и Cb) цветности. В MPEG, компоненты Y, Cr и Cb могут быть сохранены в формате 4:2:0, где компоненты Cr и Cb являются субдискретизированными на 2 в направлениях X и Y. Следовательно, каждый макроблок будет состоять из 256 Y-компонентов, 64 Cr-компонентов и 64 Cb-компонентов.

Макроблок 315 текущего изображения 305 является предсказанным из опорного изображения 310 в отличные моменты времени, чем текущее изображение 305. Поиск проводят в опорном изображении 310, чтобы определить макроблок 320 с наилучшим соответствием, который является самым близким, в смысле значений Y, Cr и Cb, к текущему закодированному макроблоку 315. Способы поиска макроблока 320 с наилучшим соответствием, известные специалистам, включают в себя a) минимизацию SAD (суммы абсолютных пиксельных разностей) между текущим макроблоком 315 и макроблоками опорного изображения 310, b) минимизацию SSD (суммы квадратов пиксельных разностей), и c) минимальную стоимость в смысле искажения скорости передачи в битах, и другие. Местоположение макроблока 320 с наилучшим соответствием в опорном изображении 310 кодируется в векторе 325 движения. Опорное изображение 310 может быть I кадром или P кадром, который декодер может восстановить до создания текущего изображения 305. Макроблок 320 с наилучшим соответствием вычитается из текущего макроблока 315 (вычисляется разность для каждого из компонентов Y, Cr и Cb), приводя к остаточной ошибке 330. Остаточная ошибка 330 кодируется 2D дискретным косинусным преобразованием (ДКП, DCT) 335 и затем квантуется 340.

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

Закодированные квантованные коэффициенты остаточной ошибки 330 вместе с закодированным вектором движения 325 могут быть использованы, чтобы восстановить текущий макроблок 315 в кодере для использования в качестве части опорного кадра для последующей оценки и компенсации движения. Кодер может эмулировать процедуры декодера для этого восстановления P кадра. Эмуляция декодера может приводить к тому, что и кодер и декодер будут работать с одним и тем же опорным изображением. Процесс восстановления, если сделан в кодере для дальнейшего интеркодирования, или в декодере, представлен здесь. Реконструкция (восстановление) P кадра может быть начата после того, как опорный кадр (или часть изображения или кадра, который является опорным) будет восстановлен. Закодированные квантованные коэффициенты подвергаются обратному квантованию 350 и затем обратное 2D DCT, или IDCT (ОДКП), преобразование 355 выполняется, приводя к декодированной или восстановленной остаточной ошибке 360. Закодированный вектор 325 движения используется, чтобы определить местоположение уже восстановленного макроблока 315 с наилучшим соответствием в уже восстановленном опорном изображении 310. Восстановленная остаточная ошибка 360 затем добавляется к восстановленному макроблоку 365 с наилучшим соответствием, чтобы сформировать восстановленный макроблок 370. Восстановленный макроблок 370 может быть сохранен в памяти, отображен независимо или в изображении с другими восстановленными макроблоками, или обработан далее для повышения качества изображения.

Классификация контента мультимедийных данных

Фиг. 4 является блок-схемой компонента 190 классификации контента, проиллюстрированного на фиг. 1. Компонент 190 классификации контента включает в себя компонент 192 сложности, сконфигурированный, чтобы определять пространственную сложность и временную сложность мультимедийных данных, и также ассоциировать значение текстуры с пространственной сложностью и значение движения с временной сложностью. Для кодируемых мультимедийных данных компонент 190 классификации контента извлекает предварительно обработанную информацию, относящуюся к содержанию данных, из памяти 130. Эта информация может включать в себя, например, одно или более значений Dcsat, значения коэффициента контраста, векторы движения (MV), и сумму абсолютных разностей (SAD). В аспектах, где эта информация не определена препроцессором (например, компонентом 185 кодера или процессором 187 на фиг. 1), компонент 190 классификации может включать в себя функциональные возможности для вычисления этой информации.

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

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

Обнаружение изменения сцены

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

Длина ГИ (группы изображений) может быть достаточно большой, чтобы снизить эффективную потерю от больших I кадров, и достаточно короткой, чтобы бороться с рассогласованием между кодером и декодером или ухудшением канала. Кроме того, макроблоки (MB) в P кадрах м