СПОСОБ И УСТРОЙСТВО ДЛЯ ДЕКОДИРОВАНИЯ ЦВЕТНОГО ИЗОБРАЖЕНИЯ
METHOD AND DEVICE FOR COLOUR IMAGE DECODING

Область техники, к которой относится изобретение
Настоящее изобретение, в общем, относится к кодированию и декодированию изображений/видео. В частности, но не только, область техники настоящего изобретения связана с декодированием изображения, пиксельные значения которого принадлежат расширенному динамическому диапазону.
Уровень техники
Настоящий раздел предназначен для того, чтобы ознакомить читателя с различными аспектами области техники, которые могут быть связаны с различными аспектами настоящего изобретения, которые описываются и/или заявляются в формуле изобретения ниже. Считается, что это пояснение должно быть полезным при предоставлении читателю исходной информации для того, чтобы упрощать понимание различных аспектов настоящего изобретения. Соответственно, следует понимать, что данные формулировки должны читаться в этом смысле, а не как допущения предшествующего уровня техники.
Далее, цветное изображение содержит, например, несколько массивов выборок (пиксельных значений) в конкретном формате изображений/видео, который указывает всю информацию относительно пиксельных значений изображения (или видео) и всю информацию, которая может использоваться посредством дисплея и/или любого другого устройства, чтобы визуализировать и/или декодировать изображение (или видео). Цветное изображение содержит, по меньшей мере, один компонент, в форме первого массива выборок, обычно компонент сигнала яркости (или яркости) и, по меньшей мере, один другой компонент, в форме, по меньшей мере, еще одного массива выборок. Альтернативно, эквивалентно, идентичная информация также может быть представлена посредством набора массивов цветовых выборок (цветовых компонентов), такого как традиционное трехцветовое RGB-представление.
Пиксельное значение представлено посредством вектора из n значений, где n является числом компонентов. Каждое значение вектора представлено с числом битов, которое задает максимальный динамический диапазон пиксельных значений.
Изображения со стандартным динамическим диапазоном (SDR-изображения) представляют собой цветные изображения, значения яркости которых представлены с ограниченной динамикой, обычно измеряемой в степени двух или в делениях диафрагмы объектива. SDR-изображения имеют динамику приблизительно в 10 делений диафрагмы объектива, т.е. отношение в 1000 между самыми яркими пикселами и самыми темными пикселами в линейной области, и кодируются с ограниченным числом битов (чаще всего 8 или 10 в HDTV (телевизионных системах высокой четкости) и UHDTV (телевизионных системах сверхвысокой четкости) в нелинейной области, например, посредством использования рекомендации ITU-R BT.709 OEFT (Optico-Electrical-Transfer-Function) (Rec. ITU-R BT.709-5, апрель 2002 года) или рекомендации ITU-R BT.2020 OETF (Rec. ITU-R BT.2020-1, июнь 2014 года), чтобы уменьшать динамику. Это ограниченное нелинейное представление не обеспечивает возможность корректного рендеринга небольших варьирований сигнала, в частности, в диапазонах маленькой и большой яркости. В изображениях с расширенным динамическим диапазоном (HDR-изображениях), динамика сигнала является гораздо более высокой (вплоть до 20 делений диафрагмы объектива, отношение в один миллион между самыми яркими пикселами и самыми темными пикселами), и новое нелинейное представление требуется для того, чтобы поддерживать высокую точность сигнала по всему диапазону. В HDR-изображениях, необработанные данные обычно представляются в формате с плавающей запятой (32-битовом или 16-битовом для каждого компонента, а именно, с плавающей запятой или с полуплавающей запятой), при этом наиболее популярный формат представляет собой формат с полуплавающей запятой openEXR (16-битовый в расчете на RGB-компонент, т.е. 48 битов на пиксел), или в целых числах с длинным представлением, типично, по меньшей мере, в 16 битов.
Цветовая палитра представляет собой определенный полный набор цветов. Наиболее распространенное использование означает набор цветов, которые могут точно представляться в данных обстоятельствах, к примеру, в данном цветовом пространстве или посредством определенного устройства вывода. Цветовая палитра иногда задается посредством основных RGB-цветов, заданных на диаграмме цветности цветового пространства CIE1931, и белой точки.
Например, цветовая палитра задается посредством цветового пространства согласно рекомендации BT.2020 ITU-R RGB для UHDTV. Устаревший стандарт, рекомендация BT.709 ITU-R, задает меньшую цветовую палитру для HDTV. В SDR, динамический диапазон задается официально вплоть до 100 нит (кандел на квадратный метр) для цветового объема, в котором кодируются данные, хотя некоторые технологии отображения могут показывать более яркие пикселы.
Изображения с расширенным динамическим диапазоном (HDR-изображения) представляют собой цветные изображения, значения яркости которых представлены с HDR-динамикой, которая выше динамики SDR-изображения.
HDR-динамика еще не задана посредством стандарта, но можно ожидать динамический диапазон вплоть до нескольких тысяч нит. Например, цветовой HDR-объем задается посредством цветового пространства согласно RGB BT.2020, и значения, представленные в упомянутом цветовом RGB-пространстве, принадлежат динамическому диапазону от 0 до 4000 нит. Другой пример цветового HDR-объема задается посредством цветового пространства согласно RGB BT.2020, и значения, представленные в упомянутом цветовом RGB-пространстве, принадлежат динамическому диапазону от 0 до 1000 нит.
Цветокоррекция изображения (или видео) представляет собой процесс изменения/улучшения цветов изображения (или видео). Обычно, цветокоррекция изображения заключает в себе изменение цветового объема (цветового пространства и/или динамического диапазона) или изменение цветовой палитры относительно этого изображения. Таким образом, две различных цветоскорректированных версии идентичного изображения представляют собой версии этого изображения, значения которых представлены в различных цветовых объемах (или цветовой палитре), либо версии изображения, по меньшей мере, один из цветов которых изменен/улучшен согласно различным цветокоррекциям. Это может заключать в себе пользовательские взаимодействия.
Например, в кинематографическом производстве, изображение и видео захватываются с использованием трехцветовых камер в значения RGB-цвета, состоящие из 3 компонентов (красного цвета, зеленого цвета и синего цвета). Значения RGB-цвета зависят от трехцветовых характеристик (основных цветов) датчика. Первая цветоскорректированная версия захваченного изображения затем получена, чтобы получать кинотеатральный рендеринг (с использованием конкретной кинотеатральной коррекции). Типично, значения первой цветоскорректированной версии захваченного изображения представлены согласно стандартизированному YUV-формату, такому как BT.2020, который задает значения параметров для UHDTV.
Затем художник-колорист, обычно совместно с оператором, осуществляет управление для значений цвета первой цветоскорректированной версии захваченного изображения посредством подстройки/тонкой настройки некоторых значений цвета таким образом, чтобы привносить художественное намерение.
Проблема, которая должна разрешаться, представляет собой распространение сжатого HDR-изображения (или видео) при одновременном распространении ассоциированного SDR-изображения (или видео), представляющего цветоскорректированную версию упомянутого HDR-изображения (или видео).
Тривиальное решение представляет собой одновременную трансляцию как SDR-, так и HDR-изображений (или видео) в инфраструктуре распространения, но недостаток заключается в фактическом увеличении в два раза требуемой полосы пропускания по сравнению с распространением с помощью унаследованной инфраструктуры, адаптированным с возможностью передавать в широковещательном режиме SDR-изображение (или видео), такой как главный профиль HEVC 10 ("High Efficiency Video Coding", SERIES H:: AUDIOVISUAL AND MULTIMEDIA SYSTEMS, Recommendation ITU-T H.265, Telecommunication Standardization Sector of ITU, апрель 2013 года).
Использование унаследованной инфраструктуры распространения представляет собой требование для того, чтобы ускорять появление распространения HDR-изображений (или видео). Кроме того, скорость передачи битов должна минимизироваться при обеспечении хорошего качества SDR- и HDR-версий изображения (или видео).
Кроме того, может обеспечиваться обратная совместимость, т.е. SDR-изображение (или видео) должно быть просматриваемым для пользователей, оснащенных унаследованным декодером и дисплеем, т.е., в частности, должны сохраняться общая воспринимаемая яркость (т.е. темные по сравнению с яркими сценами) и воспринимаемые цвета (например, сохранение оттенков и т.д.).
Другое простое решение заключается в том, чтобы уменьшать динамический диапазон HDR-изображения (или видео) посредством подходящей нелинейной функции, типично до ограниченного числа битов (скажем, 10 битов), и непосредственно сжимать посредством главного профиля HEVC 10. Такая нелинейная функция (кривая) уже существует, к примеру, так называемая PQ EOTF, предложенная посредством Dolby в SMPTE (SMPTE standard: High Dynamic Range Electro-Optical Transfer Function of Mastering Reference Displays, SMPTE ST 2084:2014).
Недостаток этого решения заключается в отсутствии обратной совместимости, т.е. полученная уменьшенная версия изображения (видео) не имеет достаточного визуального качества, чтобы считаться просматриваемой в качестве SDR-изображения (или видео), и производительность сжатия является в некоторой степени плохой.
Настоящее изобретение разработано с учетом вышеизложенного.
Раскрытие изобретения
Далее представлена упрощенное раскрытие изобретения для того, чтобы предоставлять базовое понимание некоторых аспектов изобретения. Это раскрытие не является всесторонним обзором изобретения. Оно не имеет намерения идентифицировать ключевые или критически важные элементы изобретения. Нижеприведенное раскрытие просто представляет некоторые аспекты изобретения в упрощенной форме в качестве вступления к более подробному описанию, предоставленному ниже.
В частности, сторона кодирования и сторона декодирования схемы распространения описываются для кодирования и декодирования изображения или последовательности изображений. Оно содержит, на стороне кодера, преобразование, например, HDR-изображения в SDR-изображение, представленное в формате, совместимом с унаследованным SDR-потоком обработки. К примеру, но не только, формат может представлять собой 8-битовый YUV-формат, выделенный для телевидения высокой четкости (задан посредством стандарта ITU-R Rec BT.709), или 10-битовый YUV-формат, выделенный для телевидения сверхвысокой четкости (задан посредством стандарта ITU-R Rec BT.2020). Он дополнительно содержит кодирование полученного SDR-изображения посредством использования унаследованного кодера SDR-изображений. Например, но не только, кодер может представлять собой стандартный 8-битовый главный профиль H.264/AVC или стандартный 10-битовый главный профиль HEVC 10, например, HEVC (либо любой другой кодек, осуществимый посредством потока обработки). Дополнительно, схема распространения содержит распространение потока битов полученного кодированного SDR-изображения.
На стороне декодера, два сценария являются возможными в зависимости от адресованного пользователя.
В первом сценарии, декодированное SDR-изображение получается из распространяемого потока битов и отображается на устройстве с поддержкой SDR.
Во втором сценарии, декодированное HDR-изображение получается из распространяемого потока битов посредством сначала получения декодированного SDR-изображения и затем применения преобразования из декодированного SDR-изображения в декодированное HDR-изображение.
Преимущественно, преобразование из HDR-изображения в SDR-изображение, выполняемое посредством кодера, является обратимым таким образом, что обратное преобразование из SDR-изображения в HDR-изображение применяется посредством декодера. За счет этого, минимизируется ошибка кодирования декодированного HDR-изображения, относительно HDR-изображения.
Вариант осуществления обратимого HDR-SDR-преобразования описывается далее и основан на трехэтапном процессе, в котором квадратный корень используется в качестве EOTF.
HDR,lin
HDR,lin
HDR,lin
γ
Как показано на фиг. 1, способ 100 кодирования цветного изображения содержит динамическое уменьшение яркости (этап 110), который содержит подэтап 111 получения исходной яркости Y, по меньшей мере, из одного из цветовых компонентов Ec (c=1,2,3) цветного изображения, и подэтап 112 анализа гистограмм, чтобы определять значение Ba модуляции (также называемое значением контрового света) для изображения, которое должно быть кодировано. Различные способы могут использоваться для того, чтобы вычислять значение модуляции, например, но не только, с использованием среднего, медианного, минимального или максимального значения HDR-яркости. Эти операции могут выполняться в линейной области Y HDR-яркости или в нелинейной области, такой как (Y) или Y, где γ<1.
HDR
Цветное изображение рассматривается как имеющее три цветовых компонента, в которых представлены пиксельные значения цветного изображения. Настоящее изобретение, хотя, по меньшей мере, частично поясняется посредством конкретного примера, не ограничено любым цветовым пространством, в котором представляются три компонента, и расширяется на любое цветовое пространство, такое как RGB, CIELUV, XYZ, CIELab и т.д. В качестве примера, Ec означает RGB на чертежах. На подэтапе 113, динамика динамики исходной яркости Y уменьшается, чтобы получать компонент L яркости из исходной яркости Y и значения Ba модуляции посредством применения нелинейной функции, которая зависит от исходной яркости Y и значения Ba модуляции.
HDR
HDR
#
#
#
На втором этапе 120, два компонента C1 и C2 цветности определяются из цветовых компонентов Ec цветного изображения. Для примера, приведенного на фиг. 1, C1 и C2 означают U'V', тогда как Ec означает RGB. На подэтапе 121, промежуточные компоненты Dc (в примере по фиг. 1, Dc означает RBG), получаются посредством взятия квадратного корня цветовых компонентов Ec. Для примера, показанного на фиг. 1, это означает квадратный корень RGB. На следующем подэтапе 122, уменьшенные компоненты Fc ( для примера, показанного на фиг. 1) получаются посредством умножения промежуточных компонентов Dc на общий коэффициент β'' умножения. Коэффициент β''(Ba,L) зависит от компонента L яркости и значения Ba модуляции. На следующем подэтапе 123, компоненты C1 и C2 цветности (U' и V' на фиг. 1) получаются посредством умножения трех уменьшенных компонентов Fc на матрицу, т.е.:
[C1; C2]=M[F1; F2; F3],
где M является матрицей 2×3, которая зависит от палитры цветного изображения.
На третьем этапе 130, коррекция компонента L яркости и компонентов C1, C2 цветности выполняется для того, чтобы получать скорректированный компонент L' яркости и скорректированные компоненты C'1 и C'2 цветности (что означает из U'V' в L'U''V'' на чертежах), Эта коррекция получена посредством преобразования палитры таким образом, что воспринимаемые цвета палитры G1 скорректированных компонентов L', C'1, C'2 соответствуют воспринимаемому цвету палитры G2 компонентов Ec цветного HDR-изображения.
Более точно, в колориметрии и в теории восприятия цвета, цветонасыщенность, сигнал цветности и насыщенность означают воспринимаемую интенсивность конкретного цвета. Цветонасыщенность представляет собой степень разности между цветом и серым. Сигнал цветности представляет собой цветонасыщенность относительно яркости другого цвета, который выглядит белым при аналогичных условиях просмотра. Насыщенность представляет собой цветонасыщенность цвета относительно собственной яркости.
Очень цветонасыщенное стимулирующее воздействие является живым и интенсивным, в то время как менее цветонасыщенное стимулирующее воздействие появляется более приглушенным, ближе к серому цвету. Без цветонасыщенности вообще, цвет является "нейтральным" серым цветом (изображение без цветонасыщенности в любых из своих цветов называется шкалой полутонов). Любой цвет может описываться из его цветонасыщенности (либо сигнала цветности или насыщенности), светлоты (либо яркости) и оттенка.
Определение оттенка и насыщенности цвета зависят от цветового пространства, используемого для того, чтобы представлять упомянутый цвет.
Например, когда цветовое используется CIELUV-пространство, насыщенность задается как отношение между сигналом цветности и яркостью .
Оттенок в таком случае задается следующим образом:
Согласно другому примеру, когда используется цветовое CIELAB-пространство, насыщенность задается как отношение сигнала цветности к яркости:
Оттенок в таком случае задается следующим образом:
Эти уравнения представляют собой обоснованный предиктор насыщенности и оттенка, которые являются согласованными с человеческим восприятием насыщенности и демонстрируют то, что регулирование яркости в цветовом CIELAB-(или CIELUV)-пространстве при поддержании угла a*/b* (или u*/v*) фиксированным влияет на оттенок и в силу этого на восприятие одного цвета. На этапе 150, масштабирование цветовых компонентов Ec на идентичный коэффициент сохраняет этот угол, а за счет этого и оттенок.
Теперь рассмотрим, что цветное HDR-изображение представлено в цветовом CIELUV-пространстве и изображении I2, которое формируется посредством комбинирования между собой компонента L яркости, динамический диапазон которого уменьшается по сравнению с динамическим диапазоном яркости цветного изображения I (этап 130), и двух компонентов U(=C1) и V(=C2) цветности цветового CIELUV-пространства. Цвета изображения I2 в силу этого по-другому воспринимаются человеком, поскольку насыщенность и оттенок цветов изменены. Способ (этап 130) определяет компоненты C'1 и C'2 цветности скорректированного изображения I3 таким образом, чтобы оттенок цветов скорректированного изображения I3 имел наилучшее совпадение с оттенком цветов цветного HDR-изображения.
На подэтапе 131, 132, определяется общий коэффициент β'' умножения, используемый на втором этапе 120. На следующем подэтапе 133, L' формируется из L.
Скорректированные компоненты L', C'1, C'2 получаются из компонента L яркости и компонентов C1, C2 цветности посредством следующих уравнений:
C'1=C1,
C'2=C2,
L'=L-mC'1-nC'2,
где m и n являются двумя вещественными коэффициентами и означают a и b на чертеже. Вещественные коэффициенты зависят от палитры согласно HDR Rec BT.709 и BT.2020. Типичные значения для m и n составляют m≈n в интервале [0,1-0,5].
Согласно разновидности коррекции, значения скорректированного компонента L' яркости всегда ниже значений компонента L яркости:
Это обеспечивает то, что значения скорректированного компонента L' яркости не превышают значения компонента L яркости, и в силу этого обеспечивает то, что цветонасыщенность не возникает. Значение Ba модуляции кодируется в потоке F битов, а также в изображении L'C'1C'2.
Как показано на фиг. 2, схематично иллюстрируется соответствующий способ 200 декодирования цветного изображения из потока битов. Этапы 210, 220 и 230 декодирования могут рассматриваться в качестве обратных этапов относительно соответствующих этапов 110, 120 и 130 кодирования. На этапе 230, скорректированные компоненты L', C'1, C'2 яркости и цветности (см. U'V' на фиг. 2) получаются из потока F битов. На подэтапе, компонент L яркости получается посредством обратной коррекции относительно коррекции, т.е. посредством следующих уравнений:
L=L'+mC'1+nC'2,
(m и n означают a и b, показанные на чертеже).
Согласно разновидности обратной коррекции, значения компонента L яркости всегда выше значений скорректированного компонента L' яркости:
Этот вариант осуществления является преимущественным, поскольку он обеспечивает то, что компонент L яркости не превышает потенциальное значение отсечения, которое обычно используется посредством декодера для того, чтобы задавать пик яркости.
HDR
SDR
-1
На этапе 210, нелинейная функция динамического расширения применяется к яркости L, чтобы формировать первый компонент (Y на фиг. 2 или sqrt(Y) на фиг. 3), который представляет собой яркость с растянутым диапазоном, которая представляет собой обратную функцию относительно функции динамического уменьшения, которая применяется к исходному компоненту яркости, полученному при кодировании цветного изображения, например, Y=f(L).
HDR
r
r,
r
r
r
r
3×3
r
r
HDR
#
#
#
На этапе 220, по меньшей мере, один цветовой компонент Ec (в показанном примере RGB) цветного изображения, которое должно декодироваться, восстанавливается из скорректированных компонентов C'1, C'2 цветности (в показанном примере: U'V') и первого компонента Y (или sqrt(Y)). На подэтапе 221, умножение скорректированных компонентов C'1, C'2 цветности на общий коэффициент β' умножения выполняется для того, чтобы получать промежуточные компоненты цветности (C1C2 см. UV, показанные в примере по фиг. 2, и , см. , показанные на фиг. 3), которые используются на дополнительном подэтапе 222 для получения второго компонента S, т.е. с обращением к системе обозначений компонентов, используемой для примера, показанного на фиг. 2, значения S, определенного посредством . На дополнительном подэтапе 223, R#G#B# восстанавливаются из SUV: [R;G;B]=Mat[S;U;V]. Цветовые компоненты декодированного цветного изображения RGB определяются на следующем подэтапе 224 в качестве квадратов R#G#B#.
-1
Другими словами, способ обеспечивает возможность, например, обратного SDR-HDR-преобразования, которое восстанавливает R#G#B#, представляющий RGB HDR-компоненты, из компонента L SDR-сигнала яркости и двух компонентов UV SDR-сигнала цветности, при этом компонент Y HDR-яркости логически выведен из L, значение T вычисляется в качестве линейной комбинации U², V² и U*V, S вычисляется в качестве квадратного корня Y-T, и R#G#B# затем определяется в качестве произведения матрицы 3×3 и SUV, применяемого к каждому пикселу входного SDR-изображения. Матрица 3×3 представляет собой, например, обратную матрицу относительно матрицы RGB->YUV, заданной в ITU-R BT709/2020, т.е. C=A.
Описанная схема декодирования обеспечивает возможность распространения сжатого HDR-изображения при одновременном распространении ассоциированного SDR-изображения, представляющего цветоскорректированную версию упомянутого HDR-изображения. Тем не менее, декодирование может дополнительно улучшаться, поскольку потери при сжатии могут вводить неточности при декодировании и отображении HDR-изображения, так что численная устойчивость или надежность декодирования не всегда может гарантироваться.
Дополнительное раскрытие сущности имеет целью предоставлять способ декодирования цветного изображения из потока битов, который предоставляет дополнительное повышение надежности. Способ содержит:
- получение конечного компонента яркости посредством линейного комбинирования компонентов яркости и цветности, полученных из потока битов;
- получение первого компонента посредством применения нелинейной функции динамического расширения к упомянутому конечному компоненту яркости, чтобы динамика первого компонента увеличивалась по сравнению с динамикой конечного компонента яркости;
- получение нормализованного коэффициента умножения посредством деления коэффициента умножения, полученного из потока битов, на квадратный корень первого компонента;
- восстановление, по меньшей мере, одного цветового компонента цветного изображения, которое должно декодироваться, из упомянутых компонентов цветности и упомянутого первого компонента посредством следующего:
- получение промежуточных компонентов цветности посредством умножения компонентов цветности на упомянутый нормализованный коэффициент умножения;
- получение, по меньшей мере, одного промежуточного цветового компонента из квадратов упомянутых двух промежуточных компонентов цветности, произведения упомянутых двух промежуточных компонентов цветности и матрицы преобразования цветов; и
- вычисление, по меньшей мере, одного цветового компонента декодированного цветного изображения посредством возведения в квадрат произведения квадратного корня первого компонента на один из упомянутого, по меньшей мере, одного промежуточного цветового компонента.
Это обеспечивает возможность применять нелинейную функцию динамического расширения, которая не обязательно представляет собой обратную функцию относительно соответствующей нелинейной функции динамического уменьшения, которая применяется в ходе кодирования, чтобы применять настраиваемую границу, по меньшей мере, к компоненту яркости, например, чтобы учитывать ограничения, налагаемые посредством обрабатывающих аппаратных средств. Дополнительно, зависимость функции вычисления квадратного корня от первого компонента, сформированного посредством фактически выбранной нелинейной функции динамического расширения, обеспечивает возможность не только адаптировать вычисление второго компонента к введенной границе, но также и оказывать влияние на недопущение незаданного разностного результата, за счет этого обеспечивая повышенную численную устойчивость.
Согласно варианту осуществления, упомянутый, по меньшей мере, один промежуточный цветовой компонент получается посредством следующего:
- получение второго компонента посредством вычисления квадратного корня взвешенной линейной комбинации, по меньшей мере, квадратов упомянутых двух промежуточных компонентов цветности и произведения упомянутых двух промежуточных компонентов цветности; и
- упомянутый, по меньшей мере, один промежуточный цветовой компонент получается посредством умножения упомянутого второго компонента и упомянутых двух промежуточных компонентов цветности на упомянутую матрицу преобразования цветов.
Согласно варианту осуществления, упомянутый, по меньшей мере, один промежуточный цветовой компонент получается посредством следующего:
- вычисление взвешенной линейной комбинации квадратов упомянутых двух промежуточных компонентов цветности и произведения упомянутых двух промежуточных компонентов цветности;
- проверка того, является либо нет взвешенная линейная комбинация положительным или нулевым значением;
- если да:
- получение второго компонента посредством вычисления квадратного корня суммы единичного значения с упомянутой взвешенной линейной комбинацией; и
- упомянутый, по меньшей мере, один промежуточный цветовой компонент получается посредством умножения упомянутого второго компонента и упомянутых двух промежуточных компонентов цветности на упомянутую матрицу преобразования цветов;
- в противном случае:
- задание второго компонента равным нулевому значению;
- деление упомянутых двух промежуточных компонентов цветности на квадратный корень упомянутой взвешенной линейной комбинации; и
- упомянутый, по меньшей мере, один промежуточный цветовой компонент получается посредством умножения упомянутого второго компонента и упомянутых двух промежуточных компонентов цветности после деления на упомянутую матрицу преобразования цветов.
Согласно варианту осуществления, упомянутая нелинейная функция динамического расширения представляет собой обратную функцию относительно функции динамического уменьшения, которая применяется к исходному компоненту яркости, полученному при кодировании цветного изображения, и упомянутое значение, определенное посредством упомянутого первого компонента, равно упомянутому исходному компоненту яркости.
Согласно варианту осуществления, упомянутый нормализованный коэффициент умножения также зависит от значения контрового света, полученного из исходного компонента яркости.
Согласно варианту осуществления, второй компонент определяется с помощью таблицы поиска для более быстрой обработки.
Любые из нижеприведенных вариантов осуществления могут применяться к цветовым пространствам, отличным от RGB или YUV, даже если описаны с примерной ссылкой на них.
В качестве примерного варианта осуществления, способ обратного SDR-HDR-преобразования восстанавливает R#G#B#, представляющий RGB HDR-компоненты, из компонента L SDR-сигнала яркости и двух компонентов UV SDR-сигнала цветности, при этом компонент Y HDR-яркости логически выведен из L, значение T вычисляется в качестве линейной комбинации U², V² и U*V; S по существу вычисляется в качестве квадратного корня Y-T:
i. если T≤Y, то S=sqrt(Y-T),
ii. если T>Y, то U и V умножаются на общий множитель F, и S задается равным нулю.
R#G#B#затем вычисляется в качестве произведения матрицы 3×3 и SUV. Способ применяется к каждому пикселу входного SDR-изображения. Дополнительно, общий множитель F может задаваться равным Y/√T.
В качестве другого примерного варианта осуществления, способ обратного SDR-HDR-преобразования восстанавливает R#G#B#, представляющий RGB HDR-компоненты, из компонента L SDR-сигнала яркости и двух компонентов UV SDR-сигнала цветности, при этом квадратный корень компонента √Y HDR-яркости логически выведен из L, T вычисляется в качестве линейной комбинации U², V² и U*V, и S по существу вычисляется в качестве квадратного корня 1-T:
i. если T≤1, то S=sqrt(1-T),
ii. если T>1, то U и V умножаются на общий множитель F, и S задается равным нулю
затем вычисляется в качестве произведения матрицы 3×3 и SUV. R#G#B# является умножением  на √Y, применяемым к каждому пикселу входного SDR-изображения. Дополнительно, общий множитель F составляет 1/√T. В варианте осуществления, F может применяться одновременно с конечным умножением на 1/√T, т.е. умножением на F/√T вместо этого.
Описанный вариант осуществления обеспечивает возможность простой аппаратной реализации декодера с промежуточными размерами регистров, которые не зависят от пика яркости цветного изображения.
Согласно другим аспектам, данное изобретение относится к устройствам, содержащим процессор, выполненный с возможностью реализовывать вышеописанные способы, компьютерный программный продукт, содержащий инструкции с программным кодом, чтобы выполнять этапы вышеописанных способов, когда эта программа выполняется на компьютере, машиночитаемый носитель, на котором сохранены инструкции для инструктирования процессору выполнять, по меньшей мере, этапы вышеописанных способов, и постоянный носитель данных, переносящий инструкции с программным кодом для выполнения этапов вышеописанных способов, когда упомянутая программа выполняется на вычислительном устройстве.
Конкретный характер изобретения, а также другие цели, преимущества, признаки и варианты использования изобретения должны становиться очевидными из нижеприведенного описания вариантов осуществления, рассматриваемого вместе с прилагаемыми чертежами.
Краткое описание чертежей
На чертежах, проиллюстрирован вариант осуществления настоящего изобретения. Они показывают следующее:
Фиг. 1 схематично показывает схему этапов способа кодирования цветного изображения в соответствии с вариантом осуществления изобретения;
Фиг. 2 схематично показывает схему этапов способа декодирования цветного изображения, по меньшей мере, из одного потока битов в соответствии с вариантом осуществления изобретения;
Фиг. 3 схематично показывает схему этапов способа декодирования цветного изображения, по меньшей мере, из одного потока битов в соответствии с другим вариантом осуществления изобретения;
Фиг. 4 схематично показывает схему этапов способа декодирования цветного изображения, по меньшей мере, из одного потока битов в соответствии с еще одним другим вариантом осуществления изобретения;
Фиг. 5 иллюстрирует возможные решения для пересечений линии и эллипсоида в цветовом R#G#B#-пространстве; и
Фиг. 6 показывает пример архитектуры устройства в соответствии с вариантом осуществления изобретения.
Осуществление изобретения
Далее подробнее описывается настоящее изобретение со ссылкой на прилагаемые чертежи, на которых показаны варианты осуществления изобретения. Тем не менее, данное изобретение может быть осуществлено во множестве альтернативных форм и не должно рассматриваться как ограниченное вариантами осуществления, изложенными в данном документе. Соответственно, хотя изобретение допускает различные модификации и альтернативные формы, его конкретные варианты осуществления показаны в качестве примера на чертежах и подробнее описываются в данном документе. Тем не менее, необходимо понимать, что отсутствует намерение ограничивать изобретение конкретными раскрытыми формами, а наоборот, изобретение должно охватывать все модификации, эквиваленты и альтернативы, попадающие в пределы сущности и объема изобретения, заданные посредством формулы изобретения.
Терминология, используемая в данном документе, служит только для цели описания конкретных вариантов осуществления и не имеет намерение ограничивать изобретение. При использовании в данном документе, формы единственного числа служат для того, чтобы включать в себя также формы множественного числа, если контекст явно не указывает иное. Следует дополнительно понимать, что термины "содержит", "содержащий", "включает в себя" и/или "включающий в себя" при использовании в данном подробном описании задают наличие изложенных признаков, целых чисел, этапов, операций, элементов или компонентов, однако не препятствуют наличию или добавлению одного или более других признаков, целых чисел, этапов, операций, элементов, компонентов или их групп. Кроме того, когда элемент упоминается как "чувствительный" или "соединенный" с другим элементом, он может быть непосредственно чувствительным или соединенным с другим элементом, или могут присутствовать промежуточные элементы. Напротив, когда элемент упоминается как "непосредственно чувствительный" или "непосредственно соединенный" с другим элементом, промежуточные элементы не присутствуют. При использовании в данном документе, термин "и/или" включает в себя все без исключения комбинации одного или более ассоциированных перечисленных элементов и может сокращаться как "/".
Следует понимать, что хотя термины "первый", "второй" и т.д. могут быть использованы в данном документе для того, чтобы описывать различные элементы, эти элементы не должны быть ограничены посредством этих терминов. Эти термины используются только для того, чтобы отличать один элемент от другого. Например, первый элемент может называться вторым элементом, и, аналогично, второй элемент может называться первым элементом без отступления от идей изобретения.
Хотя некоторые схемы включают в себя стрелки на трактах связи, чтобы показывать первичное направление связи, следует понимать, что связь может осуществляться в противоположном направлении относительно проиллюстрированных стрелок.
Некоторые варианты осуществления описываются относительно блок-схем и блок-схем последовательности операций способа, на которых каждый этап представляет схемный элемент, модуль или часть кода, который содержит одну или более выполняемых инструкций для реализации указанной логической функции(й). Также следует отметить, что в других реализациях, функция(и), отмеченная на этапах, может осуществляться в другом случайном порядке. Например, два этапа, показанные друг за другом, фактически могут выполняться практически одновременно, либо этапы иногда могут выполняться в обратном порядке, в зависимости от предусмотренной функциональности.
Ссылка в данном документе на "один вариант осуществления" или "вариант осуществления" означает, что конкретный признак, структура или характеристика, описанная в связи с вариантом осуществления, может быть включена, по меньшей мере, в одну реализацию изобретения. Все вхождения фразы "в одном варианте осуществления" или "согласно варианту осуществления" в различных местах подробного описания не обязательно ссылаются на идентичный вариант осуществления, и при этом отдельные или альтернативные варианты осуществления не обязательно взаимно исключают другие варианты осуществления.
Ссылки с номерами, появляющиеся в формуле изобретения, служат только в качестве иллюстрации и не должны иметь ограничивающего влияния на объем формулы изобретения.
Хотя не описано явно, настоящие варианты осуществления и разновидности могут использоваться в любой комбинации или субкомбинации.
Изобретение описывается как предназначенное для декодирования цветного изображения, но расширяется на декодирование последовательности изображений (видео), поскольку каждое цветное изображение последовательности последовательно декодируется, как описано ниже.
Цветное изображение I рассматривается как имеющее три цветовых компонента, в которых представлены пиксельные значения цветного изображения. Настоящее изобретение не ограничено любым цветовым пространством, в котором представляются три компонента, и расширяется на любое цветовое пространство, такое как RGB, CIELUV, XYZ, CIELab и т.д.
Ссылаясь на фиг. 3, схематично показана схема этапов способа 300 декодирования цветного изображения, по меньшей мере, из одного потока битов в соответствии с вариантом осуществления изобретения. Показанный вариант осуществления фактически представляет собой модификацию способа декодирования, проиллюстрированного на фиг. 2, теперь гарантируя то, что четки пределы всегда доступны для обработанных компонентов яркости и цветности, а именно, . Подробно поясняются только изменения между вариантами осуществления. На этапе 310, нелинейная функция динамического расширения представляет собой квадратный корень обратной функции относительно функции динамического уменьшения, которая применяется к исходному компоненту яркости, полученному при кодировании цветного изображения, что уменьшает верхний предел первого компонента, сформированного на этапе 1, до √Y. Нормализация посредством 1/√Y вводится с последующим модифицированным этапом 320 восстановления цветности и затем ренормализации посредством √Y.
HDR
HDR-яркость Y является линейной комбинацией компонентов Ec. В дальнейшем в этом документе, в качестве примера Ec, он упоминается как RGB.
,
где задается следующее:
r
r
Как следствие, вплоть до некоторых констант, Ec, т.е. RGB в показанном примере, ограничен посредством Y, а Dc, т.е. R#G#B# в показанном примере, ограничен посредством √Y. Кроме того, со стороны кодера получается UV в качестве линейной комбинации R#G#B#, т.е.:
,
Две переменные ограничены посредством R#G#B#, а в силу этого и посредством √Y. Из этого следует, что если вернуться к варианту осуществления, показанному на фиг. 2, в определении S:
,
r
r
Y
r
r
r
r
член под квадратным корнем ограничен посредством Y, а S ограничен посредством √Y. Следовательно, входные переменные UV, промежуточная переменная S и выходные переменные R#G#B# процесса декодирования ограничены посредством √Y. Следовательно, коэффициент β' умножения, используемый в способе декодирования, проиллюстрированном на фиг. 2, заменяется посредством β' в варианте осуществления, показанном на фиг. 3, так что вместо обработки Uи V, обрабатываются U/√Y и V/√Y. Дополнительно, вводится повторное масштабирование вывода обратно посредством √Y.
Y
Другими словами, коэффициент β'(Ba, L) умножения заменяется посредством β'(Ba, L):=β'(Ba, L)/√Y, чтобы получать нормализованные вводы:
и .
В выводе, декодированные  масштабируются обратно посредством умножения на √Y.
Фиг. 3 иллюстрирует способ обратного SDR-HDR-преобразования, который восстанавливает R#G#B#, представляющий RGB HDR-компоненты, из компонента L SDR-сигнала яркости и двух компонентов UV SDR-сигнала цветности, при этом квадратный корень компонента √Y HDR-яркости выведен из L, значение  вычисляется в качестве линейной комбинации U², V² и U*V, второй компонент S вычисляется в качестве квадратного корня разности 1-, и здесь является произведением матрицы 3×3 и SUV и R#G#B# является умножением на √Y, применяемым к каждому пикселу входного SDR-изображения. Кроме того, U и V делятся на √Y.
Ссылаясь теперь на фиг. 4, схематично показана схема этапов способа 400 декодирования цветного изображения, по меньшей мере, из одного потока битов в соответствии с другим вариантом осуществления изобретения. Показанный вариант осуществления фактически представляет собой модификацию способа декодирования, проиллюстрированного на фиг. 3, теперь дополнительно гарантируя то, что если второй компонент, соответствующий , показанному на фиг. 3, приводит к мнимому значению, исключение обрабатывается корректно, например, во избежание видимых искажений отображаемого цвета, ассоциированного с соответствующим пикселом. Подробно поясняются только изменения между вариантами осуществления.
Преобразование, как предполагается, предоставляет L'U'V', которые являются декодируемыми в том смысле, что S не является мнимым. Тем не менее, поскольку L'U'V' сжимается и распаковывается, потери при кодировании могут приводить к входному триплету (L', U'V') таким образом, что  является отрицательным, и  не является вещественным. Одно решение заключается в том, чтобы выполнять пороговую обработку  посредством 1, приводя к . Тем не менее, это уничтожает предел яркости для декодированного RGB. Замена мнимого значения на  является эквивалентной увеличению Y. Например, если получается , увеличение Y в два раза приводит к . Но в этом случае, предел Y для RGB также увеличивается в два раза. Это приводит к возникновению очень ярких пикселов, где  задается равным нулю без дополнительной обработки.
Как показано на этапе 420, следующий процесс дополнительно выполняется для того, чтобы сохранять предел при нахождении решения:
Второй компонент  определяется на отдельных подэтапах. На подэтапе 421, определяется только , т.е. линейная комбинация произведения и квадратных значений двух компонентов цветности. На следующем подэтапе 422, проверяется то, приводит либо нет  к положительному или отрицательному значению. Если , то  является вещественным, и декодирование продолжается для этого  (подэтап 423), что соответствует обработке, показанной на фиг. 3.
Если , то  является мнимым, и обработка продолжается на подэтапе 424, на котором переменные  и  повторно масштабируются, чтобы получать вещественное решение, посредством выполнения следующего:
- задание  и ,
- замена  на  в оставшейся части декодирования,
- задание .
Описанная обработка предоставляет подходящее решение, которое становится очевидным при геометрическом анализе проблемы. Уравнение:
- задает эллипсоид в R#G#B#-пространстве, и
- задает пересечение двух плоскостей, т.е. линию, в идентичном пространстве. Следовательно, решение является пересечением эллипсоида и линии. Это пересечение либо:
- является пустым в случае, если S является мнимым,
- представляет собой одну точку в случае S=0, линия является тангенсом к эллипсоиду,
- представляет собой две точки в случае S>0, и положительное значение должно рассматриваться, поскольку R#G#B# являются положительными по определению.
На фиг. 5, эллипсоид и линия показаны в R#G#B#-пространстве. На фиг. 5, эллипсоид представлен посредством сферы. В случае если отсутствует решение, линия не пересекает сферу (слева). Задание S=0 является эквивалентным увеличению, которое само является эквивалентным надуванию эллипсоида, который имеет √Y в качестве радиуса. Выбранное решение, проиллюстрированное на фиг. 5, заключается в том, чтобы перемещать линию вплоть до точки, в которой она касается эллипсоида (справа). В таком случае, по построению, решение R#G#B#находится на эллипсоиде с радиусом √Y, и предел сохраняется.
На фиг. 1-4, этапы и подэтапы также могут рассматриваться как модули или функциональные блоки, которые могут быть связаны или не связаны с различимыми физическими блоками. Например, эти модули или некоторые из них могут объединяться в уникальном компоненте или схеме либо способствовать функциональностям программного обеспечения. В противоположность этому, некоторые модули потенциально могут состоять из отдельных физических объектов. Устройство, которые являются совместимыми с изобретением, реализуется либо с использованием исключительно аппаратных средств, например, с использованием специализированных аппаратных средств, таких как ASIC, FPGA или VLSI, соответственно, "специализированная интегральная схема", "программируемая пользователем вентильная матрица", "сверхбольшая интегральная схема", либо с использованием нескольких интегрированных электронных компонентов, встроенных в устройство, либо с использованием сочетания аппаратных и программных компонентов.
Фиг. 6 представляет примерную архитектуру устройства 600, которое может быть выполнено с возможностью реализовывать способ, описанный в отношении фиг. 1-4.
Устройство 600 содержит следующие элементы, которые соединены посредством шины 601 данных и адреса:
- микропроцессор 602 (или CPU), который представляет собой, например, DSP (или процессор цифровых сигналов);
- ROM 603 (или постоянное запоминающее устройство);
- RAM 604 (или оперативное запоминающее устройство);
- интерфейс 605 ввода-вывода для передачи и/или приема данных, из приложения; и
- аккумулятор 606.
Согласно разновидности, аккумулятор 606 является внешним для устройства. Каждый из этих элементов по фиг. 6 является известным для специалистов в данной области техники и не раскрывается подробнее. В каждом упомянутом запоминающем устройстве, слово "регистр", используемое в спецификации, может соответствовать области небольшой емкости (несколько битов) или очень большой области (например, всей программы или большому объему принимаемых или декодированных данных). ROM 603 содержит, по меньшей мере, программу и параметры. Алгоритм способов согласно изобретению сохраняется в ROM 1303. При включении CPU 602 выгружает программу в RAM и выполняет соответствующие инструкции.
RAM 604 содержит, в регистре, программу, выполняемую посредством CPU 602 и выгруженную после включения устройства 600, входные данные в регистре, промежуточные данные в различных состояниях способа в регистре и другие переменные, используемые для выполнения способа, в регистре.
Реализации, описанные в данном документе, могут быть реализованы, например, в способе или процессе, устройстве, программе, потоке данных или сигнале. Даже если поясняется только в контексте одной формы реализации (например, поясняется только как способ или устройство), реализация поясненных признаков также может быть реализована в других формах (например, как программа). Устройство может быть реализовано, например, в соответствующих аппаратных средствах, программном обеспечении и микропрограммном обеспечении. Способы могут быть реализованы, например, в таком устройстве, как, например, процессор, который означает устройства обработки в целом, включающие в себя, например, компьютер, микропроцессор, интегральную схему или программируемое логическое устройство. Процессоры также включают в себя устройства связи, такие как, например, компьютеры, сотовые телефоны, портативные/персональные цифровые устройства (PDA) и другие устройства, которые упрощают обмен информацией между конечными пользователями.
Согласно конкретному варианту осуществления кодирования или кодера, цветное изображение I получается из источника. Например, источник принадлежит набору, содержащему:
- локальное запоминающее устройство (603 или 604), например, запоминающее устройство для хранения видеоданных или RAM (или оперативное запоминающее устройство), флэш-память, ROM (или постоянное запоминающее устройство), жесткий диск;
- интерфейс хранения данных, например, интерфейс с устройством хранения данных большой емкости, RAM, флэш-памятью, ROM, оптическим диском или магнитной подложкой;
- интерфейс (605) связи, например, проводной интерфейс (например, шинный интерфейс, глобальный сетевой интерфейс, локальный сетевой интерфейс) или беспроводной интерфейс (к примеру, интерфейс IEEE 802.11 или интерфейс Bluetooth); и
- схему захвата изображений (например, датчик, такой как, например, CCD (или прибор с зарядовой связью) либо CMOS (или комплементарная структура "металл-оксид-полупроводник")).
Согласно различным вариантам осуществления декодирования или декодера, декодированное изображение отправляется в назначение; в частности, назначение принадлежит набору, содержащему:
- локальное запоминающее устройство (603 или 604), например, запоминающее устройство для хранения видеоданных или RAM (или оперативное запоминающее устройство), флэш-память, ROM (или постоянное запоминающее устройство), жесткий диск;
- интерфейс хранения данных, например, интерфейс с устройством хранения данных большой емкости, RAM, флэш-памятью, ROM, оптическим диском или магнитной подложкой;
- интерфейс (605) связи, например, проводной интерфейс (например, шинный интерфейс, глобальный сетевой интерфейс, локальный сетевой интерфейс) или беспроводной интерфейс (к примеру, интерфейс IEEE 802.11 или интерфейс Bluetooth); и
- дисплей.
Согласно различным вариантам осуществления кодирования или кодера, поток BF и/или F битов отправляется в назначение. В качестве примера, один из потока F и BF битов или оба потока F и BF битов сохраняются в локальном или удаленном запоминающем устройстве, например, в запоминающем устройстве (604) для хранения видеоданных или RAM (604), на жестком диске (603). В разновидности, один или оба потока битов отправляются в интерфейс хранения данных, в например, интерфейс с устройством хранения данных большой емкости, флэш-памятью, ROM, оптическим диском или магнитной подложкой, и/или передаются по интерфейсу (605) связи, например, по интерфейсу с линией связи "точка-точка", шиной связи, линией связи "точка-многоточка" или широковещательной сетью.
Согласно различным вариантам осуществления декодирования или декодера, поток BF и/или F битов получается из источника. В качестве примера, поток битов считывается из локального запоминающего устройства, например, запоминающего устройства (604) для хранения видеоданных, RAM (604), ROM (603), флэш-памяти (603) или жесткого диска (603). В разновидности, поток битов принимается из интерфейса хранения данных, например, интерфейса с устройством хранения данных большой емкости, RAM, ROM, флэш-памятью, оптическим диском или магнитной подложкой, и/или принимается из интерфейса (605) связи, например, из интерфейса с линией связи "точка-точка", шиной, линией связи "точка-многоточка" или широковещательной сетью.
Согласно различным вариантам осуществления, устройство 1300, выполненное с возможностью реализовывать способ декодирования, описанный относительно фиг. 1-4, принадлежит набору, содержащему:
- мобильное устройство;
- устройство связи;
- игровое устройство;
- абонентскую приставку;
- телевизор;
- планшет (или планшетный компьютер);
- переносной компьютер;
- дисплей, и
- кристалл декодирования.
Реализации различных процессов и признаков, описанных в данном документе, могут быть осуществлены во множестве различных видов оборудования или приложений. Примеры такого оборудования включают в себя кодер, декодер, постпроцессор, обрабатывающий вывод из декодера, препроцессор, предоставляющий ввод в кодер, видеокодер, видеодекодер, видеокодек, веб-сервер, абонентскую приставку, переносной компьютер, персональный компьютер, сотовый телефон, PDA и любое другое устройство для обработки видео или изображения, либо другие устройства связи. Должно быть очевидным, что оборудование может быть мобильным и даже установленным в мобильном транспортном средстве.
Дополнительно, способы могут реализовываться посредством инструкций, выполняемых посредством процессора, и такие инструкции (и/или значения данных, сформированные посредством реализации) могут сохраняться на машиночитаемом носителе данных. Машиночитаемый носитель данных может принимать форму машиночитаемого программного продукта, осуществленного на одном или более машиночитаемых носителей и имеющего осуществленный машиночитаемый программный код, который выполняется посредством компьютера. Машиночитаемый носитель данных при использовании в данном документе считается постоянным носителем данных с внутренними возможностями сохранять информацию в себе, а также с внутренними возможностями предоставлять извлечение информации из себя. Машиночитаемый носитель данных, например, может представлять собой, но не только, электронную, магнитную, оптическую, электромагнитную, инфракрасную или полупроводниковую систему, устройство (apparatus) или устройство (device) либо любую подходящую комбинацию вышеприведенного. Следует принимать во внимание, что нижеприведенное, при предоставлении более конкретных примеров машиночитаемых носителей данных, к которым могут применяться настоящие принципы, представляет собой просто иллюстративный, а не полный перечень, как должны принимать во внимание специалисты в данной области техники: портативная компьютерная дискета; жесткий диск; постоянное запоминающее устройство (ROM); стираемое программируемое постоянное запоминающее устройство (EPROM или флэш-память); портативное постоянное запоминающее устройство на компакт-дисках (CD-ROM); оптическое устройство хранения данных; магнитное устройство хранения данных; или любая подходящая комбинация вышеприведенного.
Инструкции могут формировать прикладную программу, материально осуществленную на машиночитаемом носителе.
Инструкции, например, могут находиться в аппаратных средствах, микропрограммном обеспечении, программном обеспечении или в комбинации. Инструкции могут содержаться, например, в операционной системе, в отдельном приложении или в комбинации означенного. Следовательно, процессор может характеризоваться, например, в качестве как устройства, выполненного с возможностью осуществлять процесс, так и устройства, которое включает в себя машиночитаемый носитель (к примеру, устройство хранения данных), имеющий инструкции для выполнения процесса. Дополнительно, машиночитаемый носитель может сохранять, в дополнение или вместо инструкций, значения данных, сформированные посредством реализации.
Специалистам данной области техники должно быть очевидным, что реализации также могут формировать множество сигналов, отформатированных с возможностью переносить информацию, которая, например, может сохраняться или передаваться. Информация может включать в себя, например, инструкции для осуществления способа или данные, сформированные посредством одной из описанных реализаций. Например, сигнал может форматироваться с возможностью переносить в качестве данных правила для записи или считывания синтаксиса описанного варианта осуществления или переносить в качестве данных фактические синтаксические значения, записанные посредством описанного варианта осуществления. Этот сигнал, например, может быть отформатирован как электромагнитная волна (к примеру, с использованием радиочастотного участка спектра) или как сигнал в полосе модулирующих частот. Форматирование может включать в себя, например, кодирование потока данных и модуляцию несущей с потоком кодированных данных. Информация, которую переносит сигнал, например, может быть аналоговой или цифровой информацией. Как известно, сигнал может передаваться по множеству различных линий проводной или беспроводной связи. Сигнал может быть сохранен на машиночитаемом носителе.
Описан ряд реализаций. Тем не менее, следует понимать, что могут вноситься различные модификации. Например, элементы различных реализаций могут комбинироваться, дополняться, модифицироваться или удаляться для того, чтобы формировать другие реализации. Дополнительно, специалисты в данной области техники должны понимать, что другие структуры и процессы могут быть использованы вместо раскрытых структур и процессов, и результирующие реализации должны выполнять, по меньшей мере, практически идентичную функцию(и), по меньшей мере, практически идентичным способом(ами), чтобы добиваться, по меньшей мере, практически идентичного результата(ов), что и раскрытые реализации. Соответственно, эти и другие реализации предполагаются посредством этой заявки.